Имитация — это попытка дублировать особенности, внешний вид и характеристики реальной системы. Идея имитации реализуется в:
1) математическом описании реальной ситуации;
2) изучении ее свойств и особенностей;
3) формировании выводов и принятии решений, связанных с воздействием на эту ситуацию и основанных на результатах имитации.
Важно, что реальная система не подвергается воздействию до тех пор, пока преимущества или недостатки тех или иных управленческих решений не будут оценены с помощью модели этой системы.
Имитация с помощью метода Монте-Карло (метода статистических испытаний)
Метод состоит из четырех этапов.
1. Построение математической модели системы, описывающей зависимость моделируемых характеристик от значений стохастических переменных.
2. Установление распределения вероятностей для стохастических переменных.
3. Установление интервала случайных чисел для каждой стохастической переменной, генерация случайных чисел, имитация поведения системы путем многих попыток и получение оценки моделируемой характеристики системы.
|
|
4. Оценка точности результата.
Дадим развернутое описание этих этапов.
Этап
Стохастическая имитационная модель (ИМ) некоторой реальной системы может быть представлена как динамическая система, которая под воздействием внешних случайных входных сигналов (входные переменные) изменяет свое состояние (случайные переменные состояния), что, в свою очередь, приводит к изменению выходных сигналов (выходные переменные):
Si+1=F(Si, Ii+1),
Ui = R(Si)
где: F, R — векторы-функции;
Ii,Ui,Si — векторы соответственно входных, выходных переменных и переменных состояния системы в тактовый момент моделирования i.
ИМ — это экспериментальная модель системы, в которой ис кусственно воспроизводятся случайности, имеющие место в реальной системе. Она представляет собой совокупность математических соотношений, между входными, выходными переменными и переменными состояния в сочетании с алгоритмической реализацией некоторых зависимостей.
В имитационном моделировании динамических процессов существует два основных подхода. Первый заключается в том, что весь период моделирования разбивается на равные промежутки времени (такты моделирования), анализ состояния системы, а также значений выходных переменных производится через одинаковые промежутки времени. При этом возникает проблема выбора «правильной» продолжительности такта. Кроме того, не исключается появление тактов, в которых состоя системы по сравнению с предыдущим не изменилось. При втором подходе продолжительность такта моделирования не фиксируется, а определяется моментом наступления одного из «существенных» событий. Например, при моделировании производственного процесса на предприятии такими событиями могут быть освобождение или начало загрузки станка, поступление на обработку детали, невыход на работу станочника, исчерпание запаса необходимых комплектующих деталей на складе и др. Именно второй подход чаще всего используется на практике и поддерживается современными языками моделирования.
|
|
Этап
Случайные величины, используемые в ИМ, могут быть дискретными или непрерывными. В первом случае необходимо знать их распределения, во втором — плотности распределений. Эти зависимости могут быть определены в результате специальных исследований или заданы в качестве гипотезы. Точность модели, при прочих равных условиях, зависит от того, насколько точно заданы указанные распределения (плотности распределений).
Этап
Моделирование случайных величин при компьютерных имитационных экспериментах производится с помощью датчика псевдослучайных чисел, предоставляемого любым современным языком программирования. Обычно это датчик случайных чисел с равномерным распределением на интервале [0,1]. Если известны вероятности наступления событий, то, используя такой датчик, можно отвечать на вопросы типа «Какое из N возможных событий произошло?» или «Какое значение приняла случайная величина?».
Предположим, что в ИМ используется случайная переменная X, принимающая дискретные значения xn …, xn с вероятностями соответственно p1, …,pn (). Получение некоторой реализации этой переменной в модели производится следующим образом. Строится функция распределения случайной величины X. Указанная функция определяется по формуле F(x) = в которой суммирование проводится по всем индексам, для которых хк < х. С помощью датчика случайных чисел получают случайное число и из отрезка [0,1]. Из равномерности распределения получаемых случайных чисел следует, что вероятность получения случайного числа из произвольного интервала, включенного в [0,1], равна длине этого интервала. Поэтому вероятность реализации X = хк равна вероятности падания полученного от датчика случайного числа и в произвольный интервал в [0,1] длиной рк. Таким образом, можно утверждать, что если очередное число и датчика удовлетворяет неравенствам 0 < и ≤ р1, то имеет место реализация X = х1; в случае рх < и ≤ р1 + р2— реализация X = х2 и т.д. В общем случае
к = 2,…, N, если , то X=xk
Заметим, что границы указанных неравенств совпадают со значениями построенной выше функцией распределения F(x). Однако удобнее иметь дело не с дробными значениями границ интервалов, в которые попадают случайные значения и, а с целочисленными значениями, тем более, что с помощью датчиков случайных чисел можно генерировать числа из любого диапазона. Чтобы получить целые значения границ интервале достаточно умножить все рк на 10d, где d— целое, минимальное значение которого равно максимальной точности (максимальному числу знаков после десятичной точки) чисел рк, к = 1, …,N. Например, если {рк} = {0,3; 0,153; 0,5; 0,047}, то минимальное значение d равно 3 (все рк нужно умножить на 1000). Taким образом, 10d определяет длину интервала значений рассматриваемой случайной переменной в ИМ.
Этап
Точность статистических оценок параметров реальной системы зависит от числа наблюдений (объема выборки). Погрешности в оценках обусловлены как статистическим характера самой модели, так и влиянием начальных данных (начали состояния имитационной системы), возможной автокорреляцией последовательных значений некоторого параметра в процессе моделирования. Очевидно, что с увеличением числа испытаний точность моделирования должна увеличиваться. Ввиду того, увеличение объема выборки связано с ростом затрат на моделирование, важно уметь определять минимальное число испытаний, необходимое для достижения заданной точности оценки заданной вероятностью.
|
|
Широкое распространение получили два метода статистических испытаний. Один из них предполагает проведение достаточно большого числа Т последовательных наблюдений в течение одного прогона модели (одного сеанса имитирования). Другой метод заключается в реализации т независимых прогонов модели, т.е. в m-кратном повторении одного и того же цикла имитирования. При этом если мы хотим получить в сумме Т наблюдений, в течение каждого прогона можно делать по (допустим, что полученное число — целое) наблюдений. Оба подхода приводят примерно к одинаковым результатам.
Пусть значения yt, t= 1,..., Т представляют собой результаты Т последовательных измерений значений случайной величины у во время одного и того же сеанса имитирования. Среднее по времени значение ЕT(у) определяется выражением:
Обозначим через μ математическое ожидание случайной величины у. Тогда для достаточно большого Г получаем Ет{у) ≈ μ.
Если известна дисперсия D(y) случайной величины у, то дисперсия D(ET[y]) среднего значения ЕT[у] может быть оценена по формуле:
Оценка точности математического ожидания случайной величины, полученного методом Монте-Карло, определяется на основе следующего общего подхода.
Предположим, что z — характеристика, которая должна быть определена (вероятность события, математическое ожидание, дисперсия и т.п.), а ζ — ее значение, уточняемое по мере накопления данных, остающееся случайным вследствие ограниченности числа T проведенных наблюдений. В этих условиях можно говорить о вероятности p(| z - ζ | < ε) поотношению к интересующей нас характеристике. Здесь | z - ζ | представляет собой погрешность в оценке z, a ε — некоторый допустимый ее предел. Из неравенства Чебышева следует
Из этого неравенства следует DT( ζ ) < (1 - р)ε2, откуда при заданных р и ε и при известной зависимости DT( ζ) можно найти предельно необходимое Т.
|
|
Известно, что истинная дисперсия выборочного распределения для расчетного среднего обратно пропорциональна суммарному числу наблюдений Т, т.е. DT(ζ) = , где d не зависит от Т.
Обычно в начале имитационного процесса необходимое число наблюдений определить не удается, поскольку d неизвестно. Поэтому, как правило, эксперимент проводят в два этапа На первом этапе выбирается относительно небольшое число испытаний; в результате моделирования определяется величина d. Затем можно рассчитать какое число дополнительных наблюдений нужно провести, чтобы достигнуть необходимой точности. Предельное число наблюдений Т0 определяется формулой
Пример ситуации, требующей имитационного моделирования.
Моделирование объема спроса на автомашины
Наблюдения за объемом продаж автомобилей в салоне «Логоваз» в течение 200 дней показало, что величина спроса изменяется от 0 до 5 автомобилей в день. Частота реализации значений стохастической переменной приведена во втором столбце таблицы. Требуется построить модель, позволяющую имитировать значение величины спроса.
Стохастическая переменная (величина спроса) | Частота реализации значений | Вероятность реализации | Значение функции распределения | Интервалы случайных чисел |
10/200 = 0,05 | 0,50 | 01—05 | ||
20/200 = 0,1 | 0,15 | 06—15 | ||
40/200 = 0,2 | 0,35 | 16—25 | ||
60/200 =0,3 | 0,65 | 36—65 | ||
40/200 = 0,2 | 0,85 | 66—85 | ||
30/200 = 0,15 | 1,00 | 86—00 |
Построим функцию распределения величины спроса и интервалы случайных чисел для значений стохастической переменной. Соответствующие значения указаны в четвертом и пятой столбцах таблицы.