Санкт-Петербургский государственный политехнический университет
Институт компьютерных наук и технологий
[toc]
ПОЛУЧЕНИЕ БАЗОВОЙ ПОСЛЕДОВАТЕЛЬНОСТИ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ
И ТЕСТОВЫЕ ПРОВЕРКИ ЕГО РАБОТЫ
ЦЕЛЬ РАБОТЫ:
1.Получение на ЭВМ с помощью программного датчика
базовой последовательности псевдослучайных чисел,
имеющих равномерное распределение.
2.Освоение методов статистической оценки полученного
распределения: вычисление эмпирических значений
для математического ожидания и дисперсии.
3.Освоение методов оценки статистики связи: вычисление
значений автокорреляционной функции и построение
коррелограммы.
4.Освоение методов графического представления законов
распределения: построение функции плотности
распределения и интегральной функции распределения.
1.МЕТОДИЧЕСКИЕ УКАЗАНИЯ
1.1.СТАТИСТИКИ РАСПРЕДЕЛЕНИЯ И СВЯЗИ
1.1.1.Статистики распределения
Предположим, что с помощью программного датчика получены
псевдослучайные числа u[1],u[2],...u[n], имеющие равномерный характер распределения. Можно поставить задачу простейшей оценки качества полученного датчика путем вычисления так называемых эмпирических точечных оценок распределения, в частности, математического ожидания и дисперсии, и сравнения полученных результатов с известными теоретическими значениями.
Математическое ожидание по результатам наблюдений (эмпирическое среднее), вычисляется по формуле
@M@ = (u[1] + u[2] + ... + u[n])/n,
где @M@ - математическое ожидание по результатам
наблюдений;
u[1],u[2],...,u[n] - псевдослучайные величины, вырабатываемые
датчиком случайных чисел;
n - число испытаний.
К числу точечных оценок также относятся дисперсия и среднее
квадратическое отклонение, характеризующие степень рассеивания
полученных значений случайной величины относительно центра.
Эмпирическая дисперсия @D@ и эмпирическое среднее квадратическое отклонение @S@ вычисляются по формулам
@D@={(u[1]-@M@)**2 +(u[2]-@M@)**2 + ... +(u[n]-@M@)**2}/n,
@S@ = sqrt(@D@),
где @D@ - эмпирическая дисперсия;
@S@ - эмпирическое среднее квадратическое
отклонение;
u[1],u[2],...,u[n] - псевдослучайные величины, вырабатываемые
датчиком случайных чисел.
1.1.2.Статистика связи
В лабораторной работе для оценки степени связанности
псевдослучайных чисел предлагается воспользоваться корреляционной (или "автокорреляционной") функцией K(f), которая представляет собой последовательность коэффициентов корреляции, зависящих от величины сдвига f, как от аргумента:
n-f
Е ( u[i] - @M@ )( u[i+f] - @M@ )
i=1
K[f] = ───────────────────────────────────
n
Е ( u[i] - @M@ )**2
i=1
где K[f] - коэффициент корреляции (f=1,2,...,n);
@M@ - математическое ожидание по результатам наблюдений;
u[1],u[2],...,u[n] - псевдослучайные величины, вырабатываемые
датчиком случайных чисел;
n - число испытаний.
В ходе выполнения лабораторной работы полезно получить
коррелограмму. Все значения K(f) должны лежать в интервале
(-1,+1).
K(f) │
+1 ├─ ── ── ── ── ── ── ── ── ──
│ │ │
├─ ─ ─ ─ │ ─ ─ ─ ─ ─ │ ─ │─ ─ +-1.96*sqrt(n)
│ │ │ │
├──┴──┬──┴───┴───┴───┴───┴────────>
│ 1 │ 3 4 5 6 7 f
├ ─ ─ └ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
│
-1 ├─ ── ── ── ── ── ── ── ── ── ──
│
2.ПОРЯДОК ПРОВЕДЕНИЯ РАБОТЫ И ОФОРМЛЕНИЕ ОТЧЕТА
В состав исследования, проводимого в лабораторной работе,
входят:
1.Получение псевдослучайной последовательности,
имеющей равномерный характер на интервале [0,1],
с помощью программного датчика случайных чисел.
2.Вычисление эмпирических значений математического
ожидания и дисперсии полученной последовательности
псевдослучайных чисел; сравнение полученных результатов с соответствующими теоретическими значениями.
3.Вычисление значений автокорреляционной функции и
построение коррелограммы.
4.Графическое представление законов распределения:
построение эмпирической функции плотности
распределения и эмпирической интегральной
функции распределения; сравнение с соответствующими
теоретическими кривыми.
В качестве базового датчика псевдослучайных чисел предлагается использовать стандартную функцию языка СИ int RAND(),прототип которой находится в файле заголовков <stdio.h>:
u = RAND()/RAND_MAX,
где u - псевдослучайное число, равномерно распределенное в
интервале [0,1] (от английского "uniform");
RAND_MAX - библиотечная константа.
Датчик псевдослучайных чисел pекомендуется проверить на
выборке, объемом n >= 10**4 обращений. Результаты пpовеpки
следует оформить в виде таблицы, пpиведенной ниже:
╔══════╤════════╤═════════════╤═════════════╤═════════════╗
║ │ Оценка │ RAND │Теоретическое│ Отклонение ║
║ n │ распр. │(эксперимент)│ значение │ ║
╠══════╪════════╪═════════════╪═════════════╪═════════════╣
║ 10 │ @M@ │ │ 0.5 │ ║
║ │ @D@ │ │ 0.08333 │ ║
║ 100 │ @M@ │ │ 0.5 │ ║
║ │ @D@ │ │ 0.08333 │ ║
║ 1000 │ @M@ │ │ 0.5 │ ║
║ │ @D@ │ │ 0.08333 │ ║
║10000 │ @M@ │ │ 0.5 │ ║
║ │ @D@ │ │ 0.08333 │ ║
╚══════╧════════╧═════════════╧═════════════╧═════════════╝
К очередному занятию должен быть оформлен отчет о проделан-
ной работе и изучено руководство к следующей лабораторной работе.
Отчет представляет собой тексты программ и результаты моделирования псевдослучайных чисел с помощью стандартного датчика RAND(), а также выводы о дальнейшей возможности его использования в качестве базового для получения случайных величин с заданными законами распределения.
ЛИТЕРАТУРА
1.Шрейдер Ю.А. Метод статистических испытаний
(метод Монте-Карло). М., 1962.
2.Ермаков С.М. Метод Монте-Карло и смежные вопросы.,
М., 1975.
3.Sidney J.Yakovitz, Computional probability and
simulation, Univ.of Arizona,1973.
4.Ch.Walck.Random number generation.//University of
Stocholm, Instituie of pfisics, 1987, N15.
5.Tuckwell H.C. Elementary applicatoins of probability
theory, NY, 1988.