Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория телетрафика учебник.doc
Скачиваний:
86
Добавлен:
22.11.2019
Размер:
2.39 Mб
Скачать

7.2. Моделирование случайных величин

Метод Монте-Карло. Моделирование случайных процессов, в том числе и систем массового обслуживания, осуществляется с помощью моделирования случайных величин, подчиняющихся различным распределениям: равномерному, показательному, нормальному и др. Для получения таких случайных величин используется случайная величина X, равномерно распределенная на отрезке [0,1], из которой различными преобразованиями получают случайную величину, подчиняющуюся требуемому закону распределения.

Случайная величина X называется равномерно распределенной на отрезке [0,1], если ее плотность f() на этом отрезке постоянна и равна единице:

Функция распределения такой случайной величины X имеет значения

П лотность f() и функция распределения F() случайной величины X, равномерно распределенной на отрезке [0,1], показаны на рис. 7.1.

Случайную величину X, равномерно распределенную на отрезке [0,1], можно получить из дискретной случайной величины, равновероятно принимающей значения 0 и 1. Действительно, двоичная дробь Х=0, a–1a–2..., где a–1a–2... есть последовательность независимыхслучайных величин, каждая из которых с вероятностью 1/2 принимает значение 0 и с вероятностью1/2 – единицу, представляет случайную величину, равновероятно распределенную на отрезке [0, 1].

Для того чтобы промежутки между соседними значениями равномерно распределенной случайной величины X стремились к нулю, необходимо иметь бесконечную последовательность независимых случайных величин {ai, i= –1, –2, ...}, равновероятно принимающих значения 0 и 1. На практике непрерывно распределенная случайная величина моделируется приближенно. При этом может быть обеспечена сколь угодно высокая точность за счет выбора числа k двоичных разрядов в ЭВМ, определяющих двоичную дробь 0, a-1a-2...a-k. Таким образом, вместо непрерывной случайной величины, равномерно распределенной на отрезке [0,1], моделируется дискретная случайная величина, равновероятно принимающая значения 0, 1/2k, 2/2k, ..., 2k–1/2k с промежутками между соседними значениями 1/2k.

Представим отрезок [0,1] линией, образующей окружность. Тогда случайная величина X, равномерно распределенная на отрезке [0,1], окажется равномерно распределенной по длине окружности. Получаем аналогию с игрой в рулетку. В связи с этим разнообразные модели равномерно распределенной случайной величины часто называют рулеткой, а метод статистических испытаний получил название метода Монте-Карло (по названию курорта в княжестве Монако на берегу Средиземного моря, в игорных домах которого распространена игра в рулетку).

Случайные величины X, равномерно распределенные на отрезке [0,1], можно получить тремя способами: 1) используя таблицы случайных чисел; 2) с помощью генераторов (датчиков) случайных чисел; 3) программным путем с помощью ЭВМ (псевдослучайные числа).

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

На универсальных ЭВМ используется много различных алгоритмов получения псевдослучайных последовательностей чисел, равномерно распределенных на интервале [0,1]. В них предусматривается сдвиг исходного числа на несколько разрядов влево, затем сдвиг исходного числа на несколько разрядов вправо, сложение двух новых чисел, взятие какой-либо части нового числа и другие арифметические и логические операции для получения следующего случайного числа, равномерно распределенного на отрезке [0,1].

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

Принцип моделирования непрерывной случайной величины, распределенной по любому закону. Возможность моделирования случайной величины X, равномерно распределенной на отрезке [0,1], позволяет моделировать и непрерывную случайную величину 3, распределенную по любому закону F()=p(<). Функция распределения случайной величины  монотонно возрастает от 0 до 1. Можно показать, что значения случайной величины , распределенной по любому закону в интервале [а, b) с плотностью f(), определяется из уравнения

Для каждой реализации величины X решается последнее уравнение относительно , т. е. определяется реализация величины .

П роцедура получения случайной величины  по некоторой реализации величины X показана на рис. 7.2, на котором приведена функция распределения F( случайной величины . Для каждой конкретной реализации равномерно распределенной случайной величины X прямая f()= пересекает кривую функции распределения только в одной точке, абсцисса которой  и определяет значение  в этой реализации.

Покажем принцип моделирования случайной величины , равномерно распределенной в интервале [а, b), и случайной величины , распределенной по показательному закону.

Равномерно распределенная в интервале [а, b) случайная величина  имеет в этом интервале постоянную плотность, равную

Используя в процессе моделирования каждую реализацию случайной величины X и преобразование (7.5), получаем последовательность случайных величин , равномерно распределенных в интервале [а, b).

Случайная величина , распределенная в интервале [0, ) по показательному закону с параметром , имеет плотность распределения

Таким образом, в процессе моделирования на основе многократной реализации случайной величины X и преобразования (7.6) получаем последовательность случайных величин  распределенных по показательному закону с заданным параметром .

Умение моделировать непрерывные случайные величины  дает возможность моделировать и любой поток вызовов, заданный последовательностью функций распределения промежутков между вызовами. Так, при моделировании простейшего потока вызовов последовательность случайных величин zi можно получить, используя преобразование (7.6).