Лекция 8. Статистическое моделирование

Статистическое моделирование — базовый метод моделирования, заключающийся в том, что модель испытывается множеством случайных сигналов с заданной плотностью вероятности. Целью является статистическое определение выходных результатов. В основе статистического моделирования лежит метод Монте-Карло. Напомним, что имитацию используют тогда, когда другие методы применить невозможно.

Метод Монте-Карло

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

Задача 1. Найти значение интеграла:

Лекция 8. Статистическое моделирование - student2.ru

На рис. 8.1 представлен график функции Лекция 8. Статистическое моделирование - student2.ru . Вычислить значение интеграла этой функции — значит, найти площадь под этим графиком.

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.1. Определение значения интеграла
методом Монте-Карло

Ограничиваем кривую сверху, справа и слева. Случайным образом распределяем точки в прямоугольнике поиска. Обозначим через Лекция 8. Статистическое моделирование - student2.ru количество точек, принятых для испытаний (то есть попавших в прямоугольник, эти точки изображены на рис. 8.1 красным и синим цветом), и через Лекция 8. Статистическое моделирование - student2.ru — количество точек под кривой, то есть попавших в закрашенную площадь под функцией (эти точки изображены на рис. 8.1 красным цветом). Тогда естественно предположить, что количество точек, попавших под кривую по отношению к общему числу точек пропорционально площади под кривой (величине интеграла) по отношению к площади испытуемого прямоугольника. Математически это можно выразить так:

Лекция 8. Статистическое моделирование - student2.ru

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

Фрагмент алгоритма метода Монте-Карло в виде блок-схемы выглядит так, как показано на рис. 8.2.

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.2. Фрагмент алгоритма реализации
метода Монте-Карло

Значения Лекция 8. Статистическое моделирование - student2.ru и Лекция 8. Статистическое моделирование - student2.ru на рис. 8.2 являются равномерно распределенными случайными числами из интервалов Лекция 8. Статистическое моделирование - student2.ru и Лекция 8. Статистическое моделирование - student2.ru соответственно.

Метод Монте-Карло чрезвычайно эффективен, прост, но необходим «хороший» генератор случайных чисел. Вторая проблема применения метода заключается в определении объема выборки, то есть количества точек, необходимых для обеспечения решения с заданной точностью. Эксперименты показывают: чтобы увеличить точность в 10 раз, объем выборки нужно увеличить в 100 раз; то есть точность примерно пропорциональна корню квадратному из объема выборки:

Лекция 8. Статистическое моделирование - student2.ru

Схема использования метода Монте-Карло при исследовании
систем со случайными параметрами

Построив модель системы со случайными параметрами, на ее вход подают входные сигналы от генератора случайных чисел (ГСЧ), как показано на рис. 8.3. ГСЧ устроен так, что он выдает равномерно распределенные случайные числа Лекция 8. Статистическое моделирование - student2.ru из интервала Лекция 8. Статистическое моделирование - student2.ru . Так как одни события могут быть более вероятными, другие — менее вероятными, то равномерно распределенные случайные числа от генератора подают на преобразователь закона случайных чисел (ПЗСЧ), который преобразует их в заданный пользователем закон распределения вероятности, например, в нормальный или экспоненциальный закон. Эти преобразованные случайные числа Лекция 8. Статистическое моделирование - student2.ru подают на вход модели. Модель отрабатывает входной сигнал Лекция 8. Статистическое моделирование - student2.ru по некоторому закону Лекция 8. Статистическое моделирование - student2.ru и получает выходной сигнал Лекция 8. Статистическое моделирование - student2.ru , который также является случайным.

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.3. Общая схема метода статистического моделирования

В блоке накопления статистики (БНСтат) установлены фильтры и счетчики. Фильтр (некоторое логическое условие) определяет по значению Лекция 8. Статистическое моделирование - student2.ru , реализовалось ли в конкретном опыте некоторое событие (выполнилось условие, Лекция 8. Статистическое моделирование - student2.ru ) или нет (условие не выполнилось, Лекция 8. Статистическое моделирование - student2.ru ). Если событие реализовалось, то счетчик события увеличивается на единицу. Если событие не реализовалось, то значение счетчика не меняется. Если требуется следить за несколькими разными типами событий, то для статистического моделирования понадобится несколько фильтров и счетчиков Лекция 8. Статистическое моделирование - student2.ru . Всегда ведется счетчик количества экспериментов — Лекция 8. Статистическое моделирование - student2.ru .

Далее отношение Лекция 8. Статистическое моделирование - student2.ru к Лекция 8. Статистическое моделирование - student2.ru , рассчитываемое в блоке вычисления статистических характеристик (БВСХ) по методу Монте-Карло, дает оценку вероятности Лекция 8. Статистическое моделирование - student2.ru появления события Лекция 8. Статистическое моделирование - student2.ru , то есть указывает на частоту его выпадения в серии из Лекция 8. Статистическое моделирование - student2.ru опытов. Это позволяет сделать выводы о статистических свойствах моделируемого объекта.

Например, событие Лекция 8. Статистическое моделирование - student2.ru совершилось в результате проведенных 200 экспериментов 50 раз. Это означает, согласно методу Монте-Карло, что вероятность совершения события равна: Лекция 8. Статистическое моделирование - student2.ru . Вероятность того, что событие не совершится, равна, соответственно, 1 – 0.25 = 0.75.

Обратите внимание: когда говорят о вероятности, полученной экспериментально, то ее называют частостью; слово вероятность употребляют, когда хотят подчеркнуть, что речь идет о теоретическом понятии.

При большом количестве опытов Лекция 8. Статистическое моделирование - student2.ru частота появления события, полученная экспериментальным путем, стремится к значению теоретической вероятности появления события.

В блоке оценки достоверности (БОД) анализируют степень достоверности статистических экспериментальных данных, снятых с модели (принимая во внимание точность результата Лекция 8. Статистическое моделирование - student2.ru , заданную пользователем) и определяют необходимое для этого количество статистических испытаний. Если колебания значений частоты появления событий относительно теоретической вероятности меньше заданной точности, то экспериментальную частоту принимают в качестве ответа, иначе генерацию случайных входных воздействий продолжают, и процесс моделирования повторяется. При малом числе испытаний результат может оказаться недостоверным. Но чем более испытаний, тем точнее ответ, согласно центральной предельной теореме.

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

Пример 1. Решим простую задачу. Какова вероятность выпадения монеты орлом кверху при падении ее с высоты случайным образом?

Начнем подбрасывать монетку и фиксировать результаты каждого броска (см. табл. 8.1).

Таблица 21.1. Результаты испытаний бросания монеты
Количество опытов Лекция 8. Статистическое моделирование - student2.ru
Значение счетчика выпадения орла Лекция 8. Статистическое моделирование - student2.ru
Значение счетчика выпадения решки Лекция 8. Статистическое моделирование - student2.ru
Частость выпадения орла Лекция 8. Статистическое моделирование - student2.ru 0.33 0.25 0.4 0.5 0.57
Частость выпадения решки Лекция 8. Статистическое моделирование - student2.ru 0.66 0.75 0.6 0.5 0.43

Будем подсчитывать частость выпадения орла как отношение количества случаев выпадения орла к общему числу наблюдений. Посмотрите в табл. 8.1. случаи для Лекция 8. Статистическое моделирование - student2.ru , Лекция 8. Статистическое моделирование - student2.ru , Лекция 8. Статистическое моделирование - student2.ru — сначала значения частости нельзя назвать достоверными. Попробуем построить график зависимости Лекция 8. Статистическое моделирование - student2.ru от Лекция 8. Статистическое моделирование - student2.ru — и посмотрим, как меняется частость выпадения орла в зависимости от количества проведенных опытов. Разумеется, при различных экспериментах будут получаться разные таблицы и, следовательно, разные графики. На рис. 8.4 показан один из вариантов.

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.4. Экспериментальная зависимость частости появления случайного события
от количества наблюдений и ее стремление к теоретической вероятности

Сделаем некоторые выводы.

  1. Видно, что при малых значениях Лекция 8. Статистическое моделирование - student2.ru , например, Лекция 8. Статистическое моделирование - student2.ru , Лекция 8. Статистическое моделирование - student2.ru , Лекция 8. Статистическое моделирование - student2.ru ответу вообще доверять нельзя. Например, Лекция 8. Статистическое моделирование - student2.ru при Лекция 8. Статистическое моделирование - student2.ru , то есть вероятность выпадения орла при одном броске равна нулю! Хотя всем хорошо известно, что это не так. То есть пока мы получили очень грубый ответ. Однако, посмотрите на график: в процессе накопления информации ответ медленно, но верно приближается к правильному (он выделен пунктирной линией). К счастью, в данном конкретном случае правильный ответ нам известен: в идеале, вероятность выпадения орла равна 0.5 (в других, более сложных задачах, ответ нам, конечно, будет неизвестен). Допустим, что ответ нам надо знать с точностью Лекция 8. Статистическое моделирование - student2.ru . Проведем две параллельные линии, отстоящие от правильного ответа 0.5 на расстояние 0.1 (см. рис. 8.4). Ширина образовавшегося коридора будет равна 0.2. Как только кривая Лекция 8. Статистическое моделирование - student2.ru войдет в этот коридор так, что уже никогда его не покинет, можно остановиться и посмотреть, для какого значения Лекция 8. Статистическое моделирование - student2.ru это произошло. Это и есть экспериментально вычисленное критическое значение необходимого количества опытов Лекция 8. Статистическое моделирование - student2.ru для определения ответа с точностью Лекция 8. Статистическое моделирование - student2.ru ; Лекция 8. Статистическое моделирование - student2.ru -окрестность в наших рассуждениях играет роль своеобразной трубки точности. Заметьте, что ответы Лекция 8. Статистическое моделирование - student2.ru , Лекция 8. Статистическое моделирование - student2.ru и так далее уже не меняют сильно своих значений (см. рис. 8.4); по крайней мере, у них не изменяется первая цифра после запятой, которой мы обязаны доверять по условиям задачи.
  2. Причиной такого поведения кривой является действие центральной предельной теоремы. Пока здесь мы сформулируем ее в самом простом варианте «Сумма случайных величин есть величина неслучайная». Мы использовали среднюю величину Лекция 8. Статистическое моделирование - student2.ru , которая несет в себе информацию о сумме опытов, и поэтому постепенно эта величина становится все более достоверной.
  3. Если проделать еще раз этот опыт сначала, то, конечно, его результатом будет другой вид случайной кривой. И ответ будет другим, хотя примерно таким же. Проведем целую серию таких экспериментов (см. рис. 8.5). Такая серия называется ансамблем реализаций. Какому же ответу в итоге следует верить? Ведь они, хоть и являются близкими, все же разнятся. На практике поступают по-разному. Первый вариант — вычислить среднее значение ответов за несколько реализаций (см. табл. 8.2).

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.5. Экспериментально снятый ансамбль случайных зависимостей
частости появления случайного события от количества наблюдений

Мы поставили несколько экспериментов и определяли каждый раз, сколько необходимо было сделать опытов, то есть Лекция 8. Статистическое моделирование - student2.ru . Было проделано 10 экспериментов, результаты которых были сведены в табл. 8.2. По результатам 10-ти экспериментов было вычислено среднее значение Лекция 8. Статистическое моделирование - student2.ru .

Таблица 8.2. Экспериментальные данные необходимого количества бросков монеты для достижения точности Лекция 8. Статистическое моделирование - student2.ru при вычислении вероятности выпадения орла
Опыт Лекция 8. Статистическое моделирование - student2.ru
Среднее Лекция 8. Статистическое моделирование - student2.ru

Таким образом, проведя 10 реализаций разной длины, мы определили, что достаточно в среднем было сделать 1 реализацию длиной в 94 броска монеты.

Еще один важный факт. Внимательно рассмотрите график на рис. 8.5. На нем нарисовано 100 реализаций — 100 красных линий. Отметьте на нем абсциссу Лекция 8. Статистическое моделирование - student2.ru вертикальной чертой. Есть какой-то процент красных линий, которые не успели пересечь Лекция 8. Статистическое моделирование - student2.ru -окрестность, то есть Лекция 8. Статистическое моделирование - student2.ru , и войти в коридор точности до момента Лекция 8. Статистическое моделирование - student2.ru . Обратите внимание, таких линий 5. Это значит, что 95 из 100, то есть 95%, линий достоверно вошли в обозначенный интервал.

Таким образом, проведя 100 реализаций, мы добились примерно 95%-ного доверия к полученной экспериментально величине вероятности выпадения орла, определив ее с точностью 0.1. Для сравнения полученного результата вычислим теоретическое значение Лекция 8. Статистическое моделирование - student2.ru теоретически. Однако для этого придется ввести понятие доверительной вероятности Лекция 8. Статистическое моделирование - student2.ru , которая показывает, насколько мы готовы верить ответу. Например, при Лекция 8. Статистическое моделирование - student2.ru мы готовы верить ответу в 95% случаев из 100. Формула теоретического расчета числа экспериментов имеет вид: Лекция 8. Статистическое моделирование - student2.ru , где Лекция 8. Статистическое моделирование - student2.ru — коэффициент Лапласа, Лекция 8. Статистическое моделирование - student2.ru — вероятность выпадения орла, Лекция 8. Статистическое моделирование - student2.ru — точность (доверительный интервал). В табл. 8.3 показаны значения теоретической величины количества необходимых опытов при разных Лекция 8. Статистическое моделирование - student2.ru (для точности Лекция 8. Статистическое моделирование - student2.ru и вероятности Лекция 8. Статистическое моделирование - student2.ru ).


Таблица 8.3. Теоретический расчет необходимого количества бросков монеты для достижения точности Лекция 8. Статистическое моделирование - student2.ru при вычислении вероятности выпадения орла
Доверительная вероятность Лекция 8. Статистическое моделирование - student2.ru Коэффициент Лапласа Лекция 8. Статистическое моделирование - student2.ru Требуемое число опытов Лекция 8. Статистическое моделирование - student2.ru
0.90 2.72
0.95 3.84
0.99 6.66

Как видите, полученная нами оценка длины реализации, равная 94 опытам очень близка к теоретической, равной 96. Некоторое несовпадение объясняется тем, что, видимо, 10 реализаций недостаточно для точного вычисления Лекция 8. Статистическое моделирование - student2.ru . Если вы решите, что вам нужен результат, которому следует доверять больше, то измените значение доверительной вероятности. Например, теория говорит нам, что если опытов будет 167, то всего 1-2 линии из ансамбля не войдут в предложенную трубку точности. Но имейте в виду, количество экспериментов с ростом точности и достоверности растет очень быстро.

Второй вариант, используемый на практике — провести одну реализацию и увеличить полученное для нее Лекция 8. Статистическое моделирование - student2.ru в 2 раза. Это считают хорошей гарантией точности ответа (см. рис. 8.6).

Лекция 8. Статистическое моделирование - student2.ru

Рис. 21.6. Иллюстрация экспериментального определения Лекция 8. Статистическое моделирование - student2.ru по правилу «умножь на два»

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

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.7. Иллюстрация скорости схождения экспериментально получаемой частости
к теоретической вероятности

Это действительно так получается и теоретически. Если изменять задаваемую точность Лекция 8. Статистическое моделирование - student2.ru и исследовать количество экспериментов, требуемых для обеспечения каждой из них, то получится табл. 8.4.

Таблица 8.4. Теоретическая зависимость количества экспериментов, необходимых для обеспечения заданной точности при Лекция 8. Статистическое моделирование - student2.ru
Точность Лекция 8. Статистическое моделирование - student2.ru Критическое число экспериментов Лекция 8. Статистическое моделирование - student2.ru
0.1
0.01
0.001

Построим по табл. 8.4 график зависимости Лекция 8. Статистическое моделирование - student2.ru (см. рис. 8.8).

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.8. Зависимость числа экспериментов, требуемых для достижения
заданной точности ε при фиксированном Лекция 8. Статистическое моделирование - student2.ru

Итак, рассмотренные графики подтверждают приведенную выше оценку:

Лекция 8. Статистическое моделирование - student2.ru

Заметим, что оценок точности может быть несколько.

Пример 2. Нахождение площади фигуры методом Монте-Карло. Определите методом Монте-Карло площадь пятиугольника с координатами углов (0, 0), (0, 10), (5, 20), (10, 10), (7, 0).

Нарисуем в двухмерных координатах заданный пятиугольник, вписав его в прямоугольник, чья площадь, как нетрудно догадаться, составляет (10 – 0) · (20 – 0) = 200 (см. рис. 8.9).

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.9. Иллюстрация к решению задачи
о площади фигуры методом Монте-Карло

Используем таблицу случайных чисел для генерации пар чисел R, G, равномерно распределенных в интервале от 0 до 1. Число R будет имитировать координату X (0 ≤ X ≤ 10), следовательно, X = 10 · R. Число G будет имитировать координату Y (0 ≤ Y ≤ 20), следовательно, Y = 20 · G. Сгенерируем по 10 чисел R и G и отобразим 10 точек (X; Y) на рис. 8.9 и в табл. 8.5.

Таблица 8.5. Решение задачи методом Монте-Карло
Номер точки R G X Y Точка (X; Y) попала в прямоугольник? Точка (X; Y) попала в пятиугольник?
0.8109 0.3557 8.109 7.114 Да Да
0.0333 0.5370 0.333 10.740 Да Нет
0.1958 0.2748 1.958 5.496 Да Да
0.6982 0.1652 6.982 3.304 Да Да
0.9499 0.1090 9.499 2.180 Да Нет
0.7644 0.2194 7.644 4.388 Да Да
0.8395 0.4510 8.395 9.020 Да Да
0.0415 0.6855 0.415 13.710 Да Нет
0.5997 0.1140 5.997 2.280 Да Да
0.9595 0.9595 9.595 19.190 Да Нет
Всего:

Статистическая гипотеза заключается в том, что количество точек, попавших в контур фигуры, пропорционально площади фигуры: 6:10 = S:200. То есть, по формуле метода Монте-Карло, получаем, что площадь S пятиугольника равна: 200 · 6/10 = 120.

Проследим, как менялась величина S от опыта к опыту (см. табл. 8.6).

Таблица 8.6. Оценка точности ответа
Количество испытаний N Оценка вероятности попадания случайной точки в испытуемую область Оценка площади S методом Монте-Карло
1/1 = 1.00
1/2 = 0.50
2/3 = 0.67
3/4 = 0.75
3/5 = 0.60
4/6 = 0.67
5/7 = 0.71
5/8 = 0.63
6/9 = 0.67
6/10 = 0.60

Поскольку в ответе все еще меняется значение второго разряда, то возможная неточность составляет пока больше 10%. Точность расчета может быть увеличена с ростом числа испытаний (см. рис. 8.10).

Лекция 8. Статистическое моделирование - student2.ru

Рис. 8.10. Иллюстрация процесса сходимости определяемого
экспериментально ответа к теоретическому результату

Наши рекомендации