Получение ряда равномерно распределенных псевдослучайных чисел с использованием ЭВМ

Автор работы: Пользователь скрыл имя, 07 Июня 2013 в 14:40, курсовая работа

Краткое описание

Данная работа посвящена моделированию нормально распределенных случайных величин.
Нормальный закон распределения встречается в природе весьма часто, поэтому для него разработаны отдельные эффективные методы моделирования. Формула распределения вероятности значений случайной величины x по нормальному закону имеет вид:
Как видно, нормальное распределение имеет два параметра: математическое ожидание mx и среднеквадратичное отклонение σx величины x от этого математического ожидания.

Вложенные файлы: 1 файл

Kursovaya_rabota.doc

— 194.00 Кб (Скачать файл)

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И  НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное  бюджетное образовательное учреждение

высшего профессионального  образования

«ТЮМЕНСКИЙ  ГОСУДАРСТВЕННЫЙ НЕФТЕГАЗОВЫЙ УНИВЕРСИТЕТ»

Филиал ТюмГНГУ  в г. Новом Уренгое

 

Курсовая работа

Дисциплина: МОДЕЛИРОВАНИЕ СИСТЕМ

Получение ряда равномерно распределенных псевдослучайных чисел с использованием ЭВМ.

 

 

Специальность:

«Автоматизация технологических  процессов и производств»

 

 

 

 

 

 

Выполнил:  
студент 3 курса

группы АТП-10-1

Ефимов.А.Ю.

Проверила:

к.т.н., доцент Бруслова О. В.

 

 

 

 

 

Новый Уренгой – 2013

Содержание:

 

 

Введение

Данная работа посвящена моделированию нормально распределенных случайных величин.

Нормальный закон распределения  встречается в природе весьма часто, поэтому для него разработаны отдельные эффективные методы моделирования. Формула распределения вероятности значений случайной величины x по нормальному закону имеет вид:

Как видно, нормальное распределение  имеет два параметра: математическое ожидание mи среднеквадратичное отклонение σвеличины x от этого математического ожидания.

x — случайная величина;

y(x) — вероятность принятия случайной величиной значения x;

m— математическое ожидание;

σ— среднее квадратичное отклонение.



Нормализованным нормальным распределением называется такое нормальное распределение, у которого m= 0 и σ= 1. Из нормализованного распределения можно получить любое другое нормальное распределение с заданными mи σпо формуле: z = m+ x · σx.

Рассматривая последнюю формулу, воспользуемся формулами компьютерной графики: операция масштабирования выражается в математической модели через умножение (это соответствует изменению разброса величины, растягиванию геометрического образа), операция смещения выражается через сложение (это соответствует изменению значения наиболее вероятной величины, смещению геометрического образа).

Функция нормального распределения  имеет вид колокола. На рис.1 показано нормализованное нормальное распределение.


Рис.1 Графический вид нормального закона 
распределения случайной величины х с параметрами 
m= 0 и σ= 1 (распределение нормализовано)


График на рис.1 показывает, что в области –σ < x < σ на графике сосредоточено 68% площади распределения, в области –2σ < x < 2σ на графике сосредоточено 95.4% площади распределения, в области –3σ < x < 3σ на графике сосредоточено 99.7% площади распределения («правило трех сигм»).  

  1. Основные понятия и определения теории псевдослучайных чисел.

    1. Псевдослучайное число

Псевдослучайные числа с распределением, отличным от равномерного, легко получить как функцию f от равномерно распределенных случайных величин. 

Псевдослучайные числа, полученные при помощи генератора случайных чисел, должны быть статистически независимыми и воспроизводимыми. Алгоритмы псевдослучайных чисел представляют собой рекуррентные соотношения. 

Равномерно распределенные псевдослучайные  числа приведены в таблицах приложений. 

Четырехзначные псевдослучайные числа слишком быстро начинают повторяться и склонны к обнулению. Обычно работают с десятизначными числами.

Последовательность псевдослучайных чисел преобразуют в формат экрана дисплея и выводят в виде изображения. Если при рассмотрении такого изображения на нем не обнаруживаются заметные структуры, то псевдослучайные числа вполне можно считать независимыми.

Последовательность псевдослучайных чисел генерируется из затравочного одномерного массива целых чисел. 

Последовательности псевдослучайных чисел, полученные на ЭВМ с помощью выражений являются периодическими. 

Получение псевдослучайных чисел осуществляется методом Холтоим, который состоит в следующем: будем получать псевдослучайные числа РР ( i) рекуррентно по i; здесь Г - основание системы счисления, какое-либо простое число; 

Использование псевдослучайных чисел при моделировании различных операций очень удобно. Во-первых, число команд, необходимых для написания программы, невелико, и программа занимает минимальный объем памяти. В-третьих, такую последовательность достаточно проверить на равномерность один раз, чтобы использовать ее с полной уверенностью. 

Качество псевдослучайных чисел сильно зависит от выбора величины А: это число в двоичной записи должно иметь достаточно случайный вид, хотя его последний разряд следует брать единицей. Величина у0 слабо влияет на качество последовательности, но было отмечено, что некоторые значения оказываются неудачными. 

Для генерации псевдослучайных чисел используются специальные подпрограммы. 

Применив датчик псевдослучайных чисел, равномерно распределенных на отрезке ( 0 1), получим внутри гиперкуба варьируемых параметров случайные точки, равномерно заполняющие объем. 

Возможность использования псевдослучайных чисел вместо случайных определяется в результате проверки их специальными тестами. Однако реализация проверки случайности чисел на основе их двоичного представления достаточно сложна. 

Такого количества псевдослучайных чисел для каждого процессора с избытком хватает для вычислительных потребностей. 

Любой генератор псевдослучайных чисел может дать лишь конечное множество целых случайных чисел, после которого последовательность начинает повторяться. Период, или длина последовательности, Р зависит от вычислительной машины и от выбранного модуля, а статистические свойства полученной последовательности зависят от выбора начального значения и множителя. Таким образом, выбирать а, Хо и m следует так, чтобы обеспечить максимальный период и минимальную корреляцию между генерируемыми числами. Правильный выбор модуля не зависит от системы счисления, используемой в данной ЭВМ. 

Подпрограммы  выработки псевдослучайных чисел, являющихся реализацией вектора Е, практически имеются в математическом обеспечении любых ЭВМ. 

Для проверки псевдослучайных чисел применяются и такие тесты, как тест серий, покер-тест и др. Они отражают сложные свойства случайных последовательностей, которые трудно использовать для обоснования точности расчетов по методу Монте-Карло. 

Алгоритм  генерации псевдослучайных чисел в GPSS World основан на мультипликативно-конгруэнтном алгоритме Лемера с максимальным периодом. Алгоритм генерирует псевдослучайное число в открытом интервале от 0 до 2147483647 и до самоповторения генерирует 2147483646 уникальных псевдослучайных чисел. Дополнительно используется шаг перемешивания. 

Оператор  Ф1 формирует псевдослучайные числа, имеющие равномерное распределение в отрезке [0,1] в соответствии с выбранным алгоритмом их получения. Вначале оператор Pz передает управление следующему за ним оператору Ф3, осуществляющему формирование случайных значений действительного контролируемого размера изделия Li в соответствии с его законом распределения. 

С помощью  датчика псевдослучайных чисел, равномерно распределенных в интервале ( О, 1), получили случайное число. Па этому числу в таблице, задающей закон распределения времени восстановления пучка, выбираем одно из чисел закона распределения. К значению времени, полученному из общего для исех лучков закона распределения времени восстановления, прибавляется время, необходимое в среднем на восстановление данного пучка. Полученный результат складывается со значением в этот момент Часы 2 и записывается в Будильник 2 соответствующего пучка. 

Этот способ генерации псевдослучайных чисел достаточно прост и легко может быть реализован в компьютере. 

Затем из таблицы псевдослучайных чисел выбирается первое число. Если оно оказывается меньше 0 5, то второй перепад располагается с задержкой Т, а третий перепад - с задержкой 2Т от первого. В том случае, если первое случайное число больше или равно 0 5, то второй перепад располагается с задержкой IT от первого. После этого из таблицы извлекается второе случайное число и весь процесс повторяется. 

 Любая последовательность псевдослучайных чисел периодична. 

В связи  с псевдослучайными числами возникает следующий вопрос. В каком смысле их можно считать случайными, если они получены с помощью детерминированных ( неслучайных) алгоритмов. 

Меньшая потребность  в псевдослучайных числах для расчета обобщенных угловых коэффициентов излучения положительно сказывается на точности получаемых результатов и облегчает решение задач лучистого теплообмена с учетом реальных спектральных радиационных характеристик ограничивающих поверхностей. 

Существует  много алгоритмов генерирования псевдослучайных чисел, причем одним из наиболее часто используемых является метод степенных вычетов.

Начнем с ряда псевдослучайных чисел, содержащего 5 000 значений (нормально распределенных с нулевым средним и стандартным отклонением равным единице), которые дважды перемешиваются. Мы вычисляем значения R / S для всех п., которые являются ровно делимыми на 5 000; то есть каждое значение R / Sn будет всегда включать начальное и конечное значение полного временного ряда. Среднее этих R / Sn - ожидаемое значение E (R / Sn) для системы гауссовых случайных чисел. 

Применяют несколько алгоритмов получения псевдослучайных чисел. 

Имеются формулы  для генерирования псевдослучайных чисел. Для того чтобы убедиться псевдослучайные это числа или нет, можно вычислить энтропию, основанную на частотах появления отдельных чисел. Поскольку генераторы псевдослучайных чисел достаточно хорошо имитируют случайные числа, окажется, что каждое следующее число является для нас полной неожиданностью. Если, однако, нам известна структура формулы, используемой для порождения таблицы, то после нескольких шагов мы сможем точно предсказать последующие числа, и никакой неожиданности не будет. Таким образом, оценка энтропии источника зависит от принятой модели. 

Для увеличения интервала апериодичности псевдослучайных чисел используется метод возмущения основного алгоритма. Суть его заключается в следующем. 

Строго  говоря, закономерность псевдослучайных чисел должна быть незаметна по отношению к требуемому частному применению. Поэтому в несложных или удачно сформулированных задачах можно использовать последовательности не очень хорошего качества, но при этом необходимы специальные проверки. 

Рассмотрим  коротко способ получения псевдослучайных чисел с различными распределениями вероятностей. Для получения таких чисел существует несколько алгоритмов. 

Для получения  равномерно и нормально распределенных псевдослучайных чисел на ЕС ЭВМ можно использовать соответственно подпрограммы RANDU и GAUSS, записанные на языке ФОРТРАН. На получение одного числа затрачивается 0 00001 с. Отрезок апериодичности составляет 229 чисел. На получение одного числа затрачивается порядка 0 0005 с, а отрезок апериодичности - 109 чисел. 

Обычно  для этой цели используются псевдослучайные числа, однако статистические свойства таких последовательностей должны контролироваться. 

Сейчас в большинстве исследований используются псевдослучайные числа как наиболее удобные. Их недостатком, однако, является то, что они не настоящие случайные числа и поэтому пользователю необходимо быть осторожным при их применении и всякий раз выяснять, какие требования предъявлялись при построении рассматриваемого генератора псевдослучайных чисел. Это заставляет некоторых исследователей пользоваться настоящими случайными числами, получаемыми с помощью неудобных датчиков, основанных на физических процессах. 

Обычно для этой цели используются псевдослучайные числа, однако статистические свойства таких последовательностей должны контролироваться. При вычислении многомерных интегралов нужно анализировать и величину относительной погрешности, не допуская ее чрезмерного возрастания. 

Функция rand генерирует на самом деле псевдослучайные числа. При вызове rand генерируется последовательность чисел, которые выглядят случайными. Однако эта последовательность повторяется при каждом новом выполнении программы. Когда программа будет тщательно отлажена, можно модифицировать ее для генерации различных последовательностей случайных чисел для каждого выполнения. 

В программе процесс генерации псевдослучайных чисел по отношению к известным методам генерации упрощен. Напомним, что в основе этих методов лежит метод статистических испытаний, или метод Монте-Карло, применение которого обосновывается предельными теоремами теории вероятностей. 

Использование арифметических схем для  порождения псевдослучайных чисел возникло около 30 лет назад и описано в 1946 г. был предложен известный метод середин квадратов, в котором очередное число последовательности получается так: предыдущее число возводится в квадрат и в полученном результате берутся средние цифры. 

Использование последовательностей псевдослучайных чисел, резко отличающихся по вероятностным оценкам от идеальной последовательности равномерно распределенных случайных чисел, может существенно увеличить время решения оптимальной задача методом случайного поиска. 

Информация о работе Получение ряда равномерно распределенных псевдослучайных чисел с использованием ЭВМ