Автор работы: Пользователь скрыл имя, 07 Июня 2013 в 14:40, курсовая работа
Данная работа посвящена моделированию нормально распределенных случайных величин.
Нормальный закон распределения встречается в природе весьма часто, поэтому для него разработаны отдельные эффективные методы моделирования. Формула распределения вероятности значений случайной величины x по нормальному закону имеет вид:
Как видно, нормальное распределение имеет два параметра: математическое ожидание mx и среднеквадратичное отклонение σx величины x от этого математического ожидания.
Эту последовательность чаще называют
последовательностью псевдослуч
Существуют и другие способы получения псевдослучайных чисел.
Если разрядность псевдослучайных чисел выбрана малой, то это может сказаться на степени приближения псевдослучайной последовательности к случайной.
Использование последовательностей псевдослуч
При моделировании систем на ЭВМ программная имитация случайных воздействий любой сложности сводится к генерированию некоторых стандартных (базовых) процессов и к их последующему функциональному преобразованию. Таким базовым процессом является последовательность чисел {хi} = х0, х1, ¼, хN, представляющих собой реализации независимых, равномерно распределенных на интервале ( 0, 1 ) случайных величин { ei } = e0, e1, ¼, eN. Но на ЭВМ невозможно получить идеальную последовательность случайных чисел потому, что на ней можно оперировать только с конечным множеством чисел. Кроме того, для получения значений х случайной величины e используются формулы ( алгоритмы ). Поэтому такие последовательности, являющиеся по своей сути детерминированными, называются псевдослучайными.
Наибольшее применение в практике моделирования на ЭВМ для генерации последовательностей псевдослучайных чисел находят алгоритмы вида
хi+1 = F (хi),
представляющие собой рекуррентные соотношения первого порядка, для которых начальное число х0 и постоянные параметры заданы.
Пусть имеется 2n-разрядное число, меньшее 1
хi = 0, a1 a2 ¼ a2n.
Возведем его в квадрат
хi2 = 0, b1 b2 ¼ b4n,
а затем отберем средние 2n разрядов, которые и будут являться очередным числом псевдослучайной последовательности
хi+1 = 0, bn+1 bn+2 ¼ b3n.
Этому методу соответствует рекуррентное соотношение
хi+1 = D [ 10-2n Ц [ 103n хi2 ] ],
где D [ × ] и Ц [ × ] означают соответственно дробную и целую часть числа в квадратных скобках.
Недостаток метода - наличие корреляции между числами последовательности, а в ряде случаев случайность вообще может отсутствовать. Кроме того, при не-которых i* может наблюдаться вырождение последовательности, т.е. хi = 0 при
i ³ i*.
Метод является модификацией метода серединных квадратов и состоит в том, что два 2n-значных числа перемножаются и средние 2n цифр этого произведения принимаются в качестве следующего числа последовательности. Таким образом, если
хi-1 = 0, a1 a2 ¼ a2n,
хi = 0, b1 b2 ¼ b2n,
то для получения числа хi+1 необходимо перемножить хi-1 и хi
хi-1 × хi = 0, c1 c2 ¼ c4n,
а затем отобрать средние 2n цифр этого произведения
хi+1 = 0, cn+1 cn+2 ¼ c3n.
Данному методу соответствует рекуррентное соотношение
хi+1 = D [ 10-2n Ц [ 103n хi × хi-1 ] ]
при заданных двух начальных числах х0 и х1.
Несмотря на то, что данный метод также имеет тенденцию к вырождению, но обеспечивает лучшее качество псевдослучайных чисел, чем у чисел, полученных с помощью метода серединных квадратов.
Широкое применение для получения последовательностей псевдослучайных равномерно распределенных чисел получили конгруэнтные процедуры генерации, которые могут быть реализованы мультипликативным либо смешанным методом. Конгруэнтные процедуры являются чисто детерминированными, т.к. описываются в виде рекуррентного соотношения, когда функция имеет вид
где Хi, l, m, M - неотрицательные целые числа.
Раскрывая получим
Если задано начальное значение Х0, множитель l и аддитивная константа m, то однозначно определяет последовательность целых чисел { Хi }, составленную из остатков от деления на М, членов последовательности
{ li×Х0 + m ( li - 1 ) / ( l - 1 )}.
Таким образом, для любого i ³ 1 справедливо неравенство Хi < M. По целым числам последовательности { Хi } можно построить последовательность { хi } = { Хi / M } рациональных чисел из единичного интервала ( 0, 1 ).
Мультипликативный метод задает последовательность неотрицательных целых чисел {Хi}, не превосходящих М, по формуле
т.е. это частный случай при m = 0.
Для машинной реализации наиболее удобна версия М = pg, где p - число цифр в системе счисления, принятой в ЭВМ, а g - число бит в машинном слове.
Алгоритм построения последовательности для двоичной машины М = 2g сводится к выполнению следующих операций:
В настоящее время библиотеки стандартных программ ЭВМ для вычисления последовательностей, равномерно распределенных случайных чисел основаны на конгруэнтных процедурах. Последовательность, полученная по мультипликативному методу, хорошо удовлетворяет статистическим критериям проверки качества.
Методы проверки качества псевдослучайных чисел делятся на три группы:
Первые два метода основываются на статистических критериях согласия, из которых наиболее употребительным является статистический критерий согласия ( Пирсона ).
Пусть имеется h - случайная величина, о законе распределения которой выдвигается некоторая гипотеза, Х - множество возможных значений h. Разобьем Х на m попарно непересекающихся множеств Х1, Х2, ¼ ,Хm, таких, что
P { hÎХj } = pj > 0 при j = 1, 2, ¼, m,
p1 + p2 + ¼ pm = P { hÎХ } = 1.
Выберем N независимых значений h1, h2, ¼ ,hN и обозначим через количество значений hÎХj. Очевидно, что математическое ожидание равно Npj, т.е. М [ ] = Npj.
В качестве меры отклонения
всех
При достаточно большом N величина хорошо подчиняется закону распределения с ( m - 1) степенью свободы:
P {
где - плотность распределения с ( m - 1) степенью свободы.
С помощью формулы при заданном уровне значимости b ( обычно b = 0.95 ) можно определить нижнюю и верхнюю границы области возможного принятия гипотезы ( доверительного интервала ). Для этого нужно решить соответственно следующие уравнения:
P {
P {
где g = 1 - b, r = m - 1.