<<
>>

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

Как уже отмечалось ранее, имитационное моделирование ЭИС, как правило, предполагает необходимость учета различных случайных факторов — событий, величин, векторов (систем случайных величин), процессов.

В основе всех методов и приемов моделирования названных случайных факторов лежит использование случайных чисел, равномерно распределенных на интервале [0; 1].

До появления ЭВМ в качестве генераторов случайных чисел применяли механические устройства — колесо рулетки, специальные игральные кости и устройства, которые перемешивали фишки с номерами, вытаскиваемые вручную по одной.

По мере роста объемов применения случайных чисел для ускорения их моделирования стали обращаться к помощи элек-тронных устройств.

Самым известным из таких устройств был электронный импульсный генератор, управляемый источником шума, разработанный широко известной фирмой RAND Corporation. Фирмой в 1955 г. была выпущена книга, содержащая миллион случайных чисел, сформированных этим генератором, а также случайные числа в записи на магнитной ленте.
Использовались и другие подобные генераторы — например, основанные на преобразовании естественного случайного шума при радиоактивном распаде. Все эти генераторы обладают двумя недостатками:

¦ невозможно повторно получить одну и ту же после-довательность случайных чисел, что бывает необходимо при экспериментах с имитационной моделью;

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

В принципе, можно заранее ввести полученные таким образом случайные числа в память машины и обращаться к ним по мере необходимости, что сопряжено с понятными негативными обстоятельствами — большим (причем неоправданным) расходом ресурсов ЭВМ и затратой времени на обмен данными между долгосрочной и оперативной памятью (особенно существенно для ’’больших” имитационных моделей).

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

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

Программные генераторы ПСЧ должны удовлетворять следующим требованиям:

¦ ПСЧ должны быть равномерно распределены на интервале [0; 1] и независимы, т. е. случайные последовательности должны быть некоррелированы;

¦ цикл генератора должен иметь возможно большую длину,

¦ последовательность ПСЧ должна быть воспроизводима;

¦ генератор должен быть быстродействующим;

¦ генератор должен занимать малый объем памяти.

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

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

Это обстоятельство иллюстрируется рис. 3.3.1, на котором представлены результаты генерации последовательности из ста ПСЧ при следующих исходных данных: число знаков т = 4; корни последовательности а) Х0 = 2152; б) Х0 = 2153; в) Х0 = 3789; г) Х0 = 3500.

Из анализа рисунка видно, что при Х0 = 2152 уже с 78-го члена последовательности все ПСЧ принимают нулевые значения; при Х0 = 2153, начиная с 36-го значения, последовательность перестает быть случайной; при Х0 = 3789 первые 100 членов последовательности можно использовать в качестве ПСЧ (дальнейшее поведение последовательности ПСЧ требует дополнительных исследований); при Х0 = 3500 (2500; 4500 и т. д.) нулевые значения?

принимают все ПСЧ. Иными словами, метод срединных квад-ратов не позволяет по начальному значению оценить каче-ство последовательности ПСЧ, в частности ее период.

Мультипликативный метод

Как следует из формулы, для генерации последователь-ности ПСЧ необходимо задать начальное значение (корень) последовательности, множитель и модуль, причем период (длина) последовательности Р зависит от разрядности ЭВМ и выбранного модуля, а статистические свойства — от выб-ранного начального значения и множителя. Таким образом, следует выбирать перечисленные величины так, чтобы по возможности максимизировать длину последовательности и минимизировать корреляцию между генерируемыми ПСЧ. В специальной литературе приводятся рекомендации по выбору значений параметров метода, использование которых обес-печивает (гарантирует) получение определенного количества ПСЧ с требуемыми статистическими свойствами (отметим, что данное замечание можно отнести ко всем конгруэнтным методам).

Аддитивный метод

Очевидно, что для инициализации генератора, постро-енного по этому методу, необходимо помимо модуля т задать два исходных члена последовательности. При Х0 = 0; Х1 = 1 последовательность превращается в ряд Фибоначчи.

Смешанный метод

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

?

?

?

Разработано множество модификаций перечисленных конгруэнтных методов, обладающих определенными преиму-ществами при решении конкретных практических задач, а также рекомендаций по выбору того или иного метода [48]. Для весьма широкого круга задач вполне удовлетворитель-ными оказываются типовые генераторы ПСЧ, разработанные, как правило, на основе смешанного метода и входящие в состав стандартного общего программного обеспечения боль-шинства ЭВМ. Специальным образом генерацию ПСЧ органи-зуют либо для особо масштабных имитационных исследо-ваний, либо при повышенных требованиях к точности ими-тации реального процесса (объекта).

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

<< | >>
Источник: В. Б. Уткин. Информационные системы в экономике. 2008

Еще по теме Технология моделирования случайных факторов. Генерация псевдослучайных чисел:

  1. Моделирование случайных событий
  2. Моделирование случайных величин
  3. Моделирование случайных векторов
  4. Технология моделирования информационных систем
  5. В. П. Романов. Информационные технологии моделирования финансовых рынков, 2010
  6. Технология и факторы производства.
  7. Основы организации имитационного моделирования. Этапы имитационного моделирования
  8. Языки моделирования
  9. Методы моделирования систем
  10. Моделирование кредитного риска
  11. Мобильность факторов в теории соотношения факторов производства
  12. Мультиагентные системы моделирования финансовых рынков
  13. Закон малых чисел
  14. Закон больших чисел, моменты, корреляция