Обработка экспериментальных данных. Роганов В.Р - 123 стр.

UptoLike

Рубрика: 

123
N записей, получаем задачукак корректно выбрать из этого массива n
записей, при условии, что
Nn
<
.
Наиболее очевиден подход, когда любая запись выбирается с одной и той
же вероятностью близкой к
Nn /
. Однако, при использовании такого метода в
выборке получается
n записей только в среднем, причем стандартное
отклонение равно
))/(1( Nnn , выборка может оказаться или слишком
большой, или слишком малой для достижения желаемых результатов.
В литературе [Кнут] приводится алгоритм "корректной выборки"
лишенный этого недостатка. Идея такого подходаесли
m записей уже
отобрано, мы должны включить
)1(
+
t -ю запись в выборку с вероятностью
)/()( tNmn
. Эта вероятность выражается именно такой величиной,
поскольку из всех возможных способов выборка
n записей из N таким
образом, что
m из них отбираются из первых t , в точности
tN
mn
mn
tN
mn
tN
=
/
1
1
,
с возможной последующей выборкой
1
+
t
элемента.
Рассмотрим алгоритм выборки чисел из заданной последовательности,
решающий задачу выбора
n
записей из
N
, где
Nn
<
0
. Данный алгоритм
реализует описанный выше метод "корректной выборки":
1.
0=t
,
0=m
2. Выработать псевдослучайное число
U , равномерно
распределенное между нулем и единицей.
3.
If
mnUtN )(
then Включить запись в выборку;
1+= mm
,
1
+
=
tt
else
4.
1+= tt
.
5. Повторить шаги 2-4.
N записей, получаем задачу — как корректно выбрать из этого массива n

записей, при условии, что n < N .

    Наиболее очевиден подход, когда любая запись выбирается с одной и той
же вероятностью близкой к n / N . Однако, при использовании такого метода в
выборке получается n записей только в среднем, причем стандартное
отклонение равно             n(1 − (n / N )) , выборка может оказаться или слишком

большой, или слишком малой для достижения желаемых результатов.

    В литературе [Кнут] приводится алгоритм "корректной выборки"
лишенный этого недостатка. Идея такого подхода — если m записей уже
отобрано, мы должны включить (t + 1) -ю запись в выборку с вероятностью
(n − m) /( N − t ) .   Эта вероятность выражается именно такой величиной,
поскольку из всех возможных способов выборка n записей из N таким
образом, что m из них отбираются из первых t , в точности

⎛ N − t − 1⎞ ⎛ N − t ⎞ n − m
⎜⎜          ⎟⎟ / ⎜⎜   ⎟⎟ =    ,
 ⎝ n − m − 1⎠ ⎝ n − m ⎠ N − t

с возможной последующей выборкой t + 1 элемента.

    Рассмотрим алгоритм выборки чисел из заданной последовательности,
решающий задачу выбора n записей из N , где 0 < n ≤ N . Данный алгоритм
реализует описанный выше метод "корректной выборки":

    1. t = 0 ,         m=0

    2. Выработать             псевдослучайное       число     U,      равномерно
распределенное между нулем и единицей.

    3. If ( N − t )U ≥ n − m then Включить запись в выборку; m = m + 1 , t = t + 1
                                  else

    4. t = t + 1 .

    5. Повторить шаги 2-4.



                                           123