Delphi | Сети | ПК | Маршрутизаторы | Моделирование | Протоколы | Экспертные системы | Удаленный доступ | Доменные имена
Аплеты | SQL | Надежность | Задачи | Информационные процессы | JAVA | Отказы изделия | Расчет надежности показателей | Инфсис

Статистическое моделирование систем на ЭВМ

Три способа получения случайных чисел

Табличный. Предположим, что мы осуществили N независимых опытов, в результате которых получили N случайных цифр e1…eN . Записав эти цифры в порядке появления в таблицу, получим таблицу случайных цифр. Способ употребления такой таблицы очень прост. Если в ходе расчета нам потребуется случайная цифра e, то мы можем взять любую цифру es из этой таблицы. Если нам понадобится случайное число g, то мы можем взять из таблицы n очередных цифр и считать, что g=0.es…es+n-1. Выбирать цифры из такой таблицы в случайном порядке не обязательно. Их можно выбирать подряд. Но, конечно, можно начинать с любого места, читать в любом направлении, использовать любой заранее заданный алгоритм выбора, не зависящий от конкретных значений цифр таблицы. Однако следует отметить, что все это относится к идеальной таблице. На практике существуют объективные трудности.

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

В настоящее время таблицы случайных цифр используются при расчетах вручную.

(См. таблицу случайных цифр в Posobie.doc).

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

Можно представить себе счетчик, который подсчитывает количество n флуктуаций напряжения шумящего прибора, превышающих заданный уровень E0 за фиксированное время Dt (рис. 1). Проще устроить счетчик, который выдавал бы число n (mod 2), т.е. 0 при четном n и 1 при нечетном. Если вероятности появления 0 и 1 в таком процессе равны между собой, то можно считать, что устройство вырабатывает случайную последовательность двоичных цифр.

Если вероятность появления 0 отлична от половины P(0)=p¹0.5, то можно ввести какую-нибудь схему стабилизации вероятности. Например, можно группировать цифры парами и выдавать 0 при получении пары 01 и 1 – при получении пары 10, а пары 00 и 11 просто опускать. Тогда P(01)=p(1-p)=P(10).

Обычно датчики случайных чисел содержат m генераторов описанного типа, работающих независимо, так что датчиком выдается приближенное случайное число g=0.a1…am , записанное в форме m-разрядной двоичной дроби. Для случайных чисел отведена специальная ячейка в накопителе, и скорость генерирования их столь велика, что на каждом такте работы ЭВМ в этой ячейке получается новое случайное число. Но датчики имеют свои недостатки. Во-первых, числа, выработанные датчиком, нельзя воспроизвести, это затрудняет контроль расчетов. Во-вторых, приходится содержать и эксплуатировать дополнительное устройство, которое требует ухода и регулярной проверки “качества” вырабатываемых чисел с помощью специальных тестов.

Основные области применения датчиков - системы автоматического регулирования и аналоговые вычислительные машины, а не методы Монте-Карло.

Псевдослучайные числа (алгоритмический способ). Мы видели, что пригодность случайных чисел определяется, в конечном счете, не процессом их получения, а тем, удовлетворяют ли они некоторым принятым тестам. Но в таком случае совершенно безразлично, как эти числа получены, они могут быть даже сосчитаны по какой-нибудь формуле, лишь бы они удовлетворяли тестам! (См. Posobie.doc, лаб. р. №1, электронный вариант, или Методические указания).


Математический анализ, лекции по физике Компьютерные сети