logo
Лекции!

Тема 3. Метод Монте – Карло.

Метод Монте-Карло как разновидность имитационного моделирования. Датой рож­дения метода Монте-Карло принято считать 1949 г., когда появилась статья под названием «The Monte Carlo method». Создателями этого метода считают амери­канских математиков Дж. Неймана и С. Улама. В СССР первые статьи о методе Монте-Карло были опублико­ваны в 1955—1956гг.

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

Само название «Монте-Карло» происходит от города Монте-Карло в княжестве Монако, знаменитого своим игорным домом.

Идея метода чрезвычайно проста и состоит она в следующем. Вместо того, чтобы описывать процесс с помощью аналитического аппарата (дифференциальных или алгебраических уравнений), производится «розыгрыш» случайного явления с помощью специально организованной процедуры, включающей в себя случайность и дающей случайный результат. В действительности конкретное осуществление случайного процесса складывается каждый раз по-иному; так же и в результате статистического моделирования мы получаем каждый раз новую, отличную от других реализацию исследуемого процесса. Что она может нам дать? Сама по себе ничего, так же как, скажем, один случай излечения больного с помощью какого-либо лекарства. Другое дело, если таких реализаций получено много. Это множество реализаций можно использовать как некий искусственно полученный статистический материал, который может быть обработан обычными методами математической статистики. После такой обработки могут быть получены любые интересующие нас характеристики: вероятности событий, математические ожидания и дисперсии случайных величин и т. д. При моделировании случайных явлений методом Монте-Карло мы пользуемся самой случайностью как аппаратом исследования, заставляем ее «работать на нас».

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

В сущности, методом Монте-Карло может быть решена любая вероятностная задача, но оправданным он становится только тогда, когда процедура розыгрыша проще, а не сложнее аналитического расчета. Приведем пример, когда метод Монте-Карло возможен, но крайне неразумен. Пусть, например, по какой-то цели производится три независимых выстрела, из которых каждый попадает в цель с вероятностью 1/2. Требуется найти вероятность хотя бы одного попадания. Элементарный расчет дает нам вероятность хотя бы одного попадания равной 1 — (1/2)3 = 7/8. Ту же задачу можно решить и «розыгрышем», статистическим моделированием. Вместо «трех выстрелов» будем бросать «три монеты», считая, скажем, герб—за попадание, решку — за «промах». Опыт считается «удачным», если хотя бы на одной из монет выпадет герб. Произведем очень-очень много опытов, подсчитаем общее количество «удач» и разделим на число N произведенных опытов. Таким образом, мы получим частоту события, а она при большом числе опытов близка к вероятности. Ну, что же? Применить такой прием мог бы разве человек, вовсе не знающий теории вероятностей, тем не менее, в принципе, он возможен.

Метод Монте-Карло- это численный метод решения математических задач при помощи моделирования случайных величин.

Две особенности метода Монте-Карло.

Первая особенность метода - простая структура вычислительного алгоритма.

Вторая особенность метода - погрешность вычислений, как правило, пропорциональна D/N2, где D - некоторая постоянная, N - число испытаний. Отсюда видно, что для того, чтобы уменьшить погрешность в 10 раз (иначе говоря, чтобы получить в ответе еще один верный десятичный знак), нужно увеличить N (т. е. объем работы) в 100 раз.

Ясно, что добиться высокой точности таким путем невозможно. Поэтому обычно говорят, что метод Монте-Карло особенно эффективен при решении тех задач, в которых результат нужен с небольшой точностью (5-10%). Способ применения метода Монте-Карло по идее довольно прост. Чтобы получить искусственную случайную выборку из совокупности величин, описываемой некоторой функцией распределения вероятностей, следует:

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

2.С помощью генератора случайных чисел выбрать случайное десятичное число в пределах от 0 до 1 (с требуемым числом разрядов).

3. Провести горизонтальную прямую от точки на оси ординат соответствующей выбранному случайному числу, до пересечения с кривой распределения вероятностей.

4.Опустить из этой точки пересечения перпендикуляр на ось абсцисс.

5.Записать полученное значение х. Далее оно принимается как выборочное значение.

б.Повторить шаги 2-5 для всех требуемых случайных переменных, следуя тому порядку, в котором они были записаны. Общий смысл легко понять с помощью простого примера: количество звонков на телефонную станцию в течение 1 минуты соответствует следующему распределению:

Кол - во звонков Вероятность Кумулятивная вероятность О 0,10 0,10

1 0,40 0,50

2 0,30 0,80

3 0,15 0,95

4 0,05 1,00

Предположим, что мы хотим провести мысленный эксперимент для пяти периодов времени.

Построим график распределения кумулятивной вероятности. С помощью генератора случайных чисел получим пять чисел, каждое из которых используем для определения количества звонков в данном интервале времени.

Период времени Случайное число Количество звонков

1 0,09 О

2 0,54 2

3 0,42 1

4 0,86 3

5 0,23 1

Взяв еще несколько таких выборок, можно убедиться в том, что если используемые числа действительно распределены равномерно, то каждое из значений исследуемой величины будет появляться с такой же частотой, как ирреальном мире», и мы получим результаты, типичные для поведения исследуемой системы.

В задачах исследования операций метод Монте-Карло применяется в трех основных ролях:

  1. при моделировании сложных, комплексных операций, где

присутствует много взаимодействующих случайных факторов;

  1. при проверке применимости более простых, аналитических методов и выяснении условий их применимости;

в целях выработки поправок к аналитическим формулам типа «эмпирических формул» в технике.