Если некоторые входные или базисные переменные объекта моделирования носят случайный характер, то помимо стандартных задач анализа, целью моделирования является определение статистических характеристик выходных характеристик объекта: плотности распределения параметров, математических ожиданий, среднеквадратических отклонений (дисперсий) и т. п., а также вероятности тех или иных событий.
Наибольшее распространение получили вероятностные методы статистического анализа – аналитический и численный, основанный на применение метода Монте-Карло (метод статистических испытаний)
Аналитический метод состоит в поиске аппроксимирующей функции для функции распределения: f(х)=Fi(vi,t).Этот метод обладает сравнительно невысокой точностью и значительной трудоемкостью.
В методе Монте-Карло данные о моделируемых событиях вырабатываются искусственно путем использования генератора равномерно распределенной в промежутке [0,1] случайной величины xR в сочетании с интегральной функцией распределения вероятностей для исследуемого процесса. В результате использования метода получается серия частных значений случайных величин, статистическая обработка которых позволяет получить сведения о характеристиках. Чем больше реализаций случайного процесса (прогонов), тем точнее результат анализа. Так, при оценке, например, математического ожидания (МО) случайной величины, каждая новая реализация случайного процесса дает новое значение, изменяющее значение МО. После первой реализации имеется единственное значение случайной величины x1, и МО равно этому значению . После второй реализации МО рассчитывается как среднее двух случайных величин:
.
После третьей реализации:
,
и так далее. В пределе для произвольного числа реализаций n случайного процесса имеем:
.
(5)
Из формулы (5) следует, что каждое новое значение случайной величины оказывает все меньшее влияние на МО. Следовательно, с увеличением числа реализаций случайного процесса точность моделирования по МО возрастает, и в пределе, при числе реализации, стремящихся к бесконечности, МО, рассчитанное по экспериментальным модельным реализациям случайного процесса, будет стремиться к реальному МО.
Для оценки вероятности наступления некоторого события в моделируемой системе, используется известное из теории вероятностей положение, согласно которому, если некоторое случайное событие А наступает как следствие какого-либо из nА событий при общем числе n возможных событий (несовместимых и равновероятных), то частота наступления события А при увеличении числа испытаний стремиться к вероятности:
при условии существования данного предела.
В методе Монте-Карло для реализации генератора с заданной функцией распределения используют источник случайных чисел с равномерным распределением в интервале (0,1). Равномерным называют такое распределение, при котором каждое из чисел избранного интервала имеет одинаковую вероятность появления. Искусственную случайную выборку из совокупности величин, описываемой некоторой функцией распределения вероятностей, получают в следующем порядке:
1) строят график или таблицу функции распределения на основе ряда чисел, отражающего исследуемые события или процессы, откладывая по оси x значения случайной переменной, а по оси y – значения вероятностей;
2) выбирают случайное число с помощью генератора случайных чисел в пределах от 0 до 1 (с требуемым числом разрядов);
3) строят линию, параллельную оси х, от значения выбранного случайного числа до пересечения с кривой распределения вероятностей и, затем, от полученной точки линию, параллельную оси у, до пересечения с осью х, получая выборочное значение случайной величины по заданному типу распределения.
Рассмотрим пример использования метода Монте-Карло для дискретного распределения вероятностей. Пусть вероятность одновременного обращения к серверу определенного количества удаленных клиентов в каждый 10-ти минутный интервал времени соответствует распределению, заданному в таблице 3.
Таблица 3
Число клиентов
Вероятность
0,2
0,25
0,3
0,15
0,1
Суммарная вероятность
0,2
0,45
0,75
0,9
Построим график распределения вероятностей (см. рис. 10-а). Проведем мысленный эксперимент для 5 интервалов времени. Выберем пять случайных чисел, каждое из которых используем для определения числа клиентов, одновременно обращающихся к серверу, в каждый из 10-ти минутных интервалов. Так, если первое случайное число равно 0,38, то в результате «прогона» получаем значение числа клиентов, равное 1 (см. рис. 10-а). Результаты эксперимента приведены в таблице 4.
Таблица 4
Интервал времени
Случайное число
0,38
0,01
0,41
0,81
0,32
Число клиентов
Рассмотрев большое количество выборок, нетрудно убедиться, что каждое из значений числа клиентов в процессе данного эксперимента будет появляться с относительной частотой, равной заданной вероятности.
В примере использованы дискретные значения вероятностей. Если распределение вероятностей непрерывное, способ применения метода остаётся без изменений, но кривая распределения будет не ступенчатой, а плавной (см. рис. 10-б). В любом случае, если случайная величина х может иметь только положительные значения, и задана плотностью распределения f(x), то:
(6)
Если возможно аналитическое вычисление интеграла в формуле (6), то для определения х можно получить уравнение. Например, для экспоненциального распределения f(x)=le-lx, следовательно:
Однако, величина (1-xR), распределена точно так же, как xR, поэтому можно для розыгрыша случайных чисел xЕ, распределенных по экспоненциальному закону, использовать формулу [2, 6, 16-18]:
ПРИМЕРЫ моделирования с использованием метода Монте-Карло других неравномерных распределений – см. Лабораторную работу №4
Метод Монте-Карло может быть использован и для решения некоторых детерминированных задач: например, приближенного вычисления интеграла вида:
Геометрически такой интеграл равен площади фигуры, ограниченной графиком функции f(x), приведенным на рис. 11.
Распределим случайным образом точки в прямоугольнике поиска (см. рис. 11). Обозначим через N1 количество точек, попавших в прямоугольник, и через N2 – количество точек под кривой, т. е. попавших в заштрихованную площадь под функцией (эти точки изображены на рис. 11 закрашенными). Количество точек, попавших под кривую по отношению к общему числу точек пропорционально площади под кривой (величине интеграла) S по отношению к площади испытуемого прямоугольника:
Вычисление S будет тем более точным, чем большее число точек будет использовано.