Метод монте карло относится к методам моделирования. Связь стохастических процессов и дифференциальных уравнений

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

Что такое моделирование по методу Монте-Карло?
Моделирование по методу Монте-Карло представляет собой автоматизированную математическую методику, предназначенную для учета риска в процессе количественного анализа и принятия решений. Эта методика применяется профессионалами в разных областях, таких как финансы, управление проектами, энергетика, производство, проектирование, НИОКР, страхование, нефтегазовая отрасль, транспорт и охрана окружающей среды.

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

Впервые этим методом воспользовалась ученые, занимавшиеся разработкой атомной бомбы; его назвали в честь Монте-Карло - курорта в Монако, известного своими казино. Получив распространение в годы Второй мировой войны, метод Монте-Карло стал применяться для моделирования всевозможных физических и теоретических систем.

Посмотреть отзывы
Даглас Хаббард
Hubbard Decision Research
Время : 00:35 сек

«Моделирование по методу Монте-Карло — единственный способ выполнить анализ ответственных решений в условиях неопределенности»

Джон Чжао
Suncor Energy
Время : 02:36 мин

«Проведение моделирования по методу Монте-Карло при оценке капитальных затрат стало [в Suncor] обязательным требованием для любых крупных проектов»

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

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

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

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

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

Треугольное распределение. Пользователь определяет минимальное, наиболее вероятное и максимальное значения. Наибольшую вероятность имеют значения, расположенные возле точки максимальной вероятности. В число переменных, которые могут быть описаны треугольным распределением, входят продажи за минувший период в единицу времени и уровни запасов материальных оборотных средств.

PERT-распределение. Пользователь определяет минимальное, наиболее вероятное и максимальное значения — так же, как при треугольном распределении. Наибольшую вероятность имеют значения, расположенные возле точки максимальной вероятности. Однако величины в диапазоне между наиболее вероятным и предельными значениями проявляются с большей вероятностью, чем при треугольном распределении, то есть отсутствует акцент на предельных значениях. Пример использования PERT-распределения — описание продолжительности выполнения задачи в рамках модели управления проектом.

Дискретное распределение. Пользователь определяет конкретные значения из числа возможных, а также вероятность получения каждого из них. Примером может служить результат судебного процесса: 20% вероятность положительного решения, 30% вероятность отрицательного решения, 40% вероятность соглашения сторон и 10% вероятность аннулирования судебного процесса.

При моделировании по методу Монте-Карло значения выбираются случайным образом из исходных распределений вероятности. Каждая выборка значений называется итерацией; полученный из выборки результат фиксируется. В процессе моделирования такая процедура выполняется сотни или тысячи раз, а итогом становится распределение вероятностей возможных последствий. Таким образом, моделирование по методу Монте-Карло дает гораздо более полное представление о возможных событиях. Оно позволяет судить не только о том, что может произойти, но и о том, какова вероятность такого исхода.

Моделирование по методу Монте-Карло имеет ряд преимуществ по сравнению с детерминистским анализом, или анализом « по точечным оценкам»:

  • Вероятностные результаты. Результаты демонстрируют не только возможные события, но и вероятность их наступления.
  • Графическое представление результатов. Характер данных, получаемых при использовании метода Монте-Карло, позволяет создавать графики различных последствий, а также вероятностей их наступления. Это важно при передаче результатов другим заинтересованным лицам.
  • Анализ чувствительности. За редким исключением детерминистский анализ затрудняет определение того, какая из переменных в наибольшей степени влияет на результаты. При проведении моделирования по методу Монте-Карло несложно увидеть, какие исходные данные оказывают наибольшее воздействие на конечные результаты.
  • Анализ сценариев. В детерминистских моделях очень сложно моделировать различные сочетания величин для различных исходных значений, и, следовательно, оценить воздействие по-настоящему отличающихся сценариев. Применяя метод Монте-Карло, аналитики могут точно определить, какие исходные данные приводят к тем или иным значениям, и проследить наступление определенных последствий. Это очень важно для проведения дальнейшего анализа.
  • Корреляция исходных данных. Метод Монте-Карло позволяет моделировать взаимозависимые отношения между исходными переменными. Для получения достоверных сведений необходимо представлять себе, в каких случаях при увеличении некоторых факторов соответствующим образом возрастают или снижаются другие.

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

Продукты Palisade для моделирования
по методу Монте-Карло
Появление приложений, предназначенных для работы с электронными таблицами на персональных компьютерах, открыло перед специалистами широкие возможности для использования метода Монте-Карло при проведении анализа в повседневной деятельности. Microsoft Excel относится к числу наиболее распространенных аналитических инструментов для электронных таблиц, а программа представляет собой основной плагин Palisade для Excel, позволяющий выполнять моделирование по методу Монте-Карло. Впервые программа @RISK была представлена для Lotus 1-2-3 на базе операционной системы DOS в 1987 году и благодаря точности расчетов, гибкости моделирования и простоте использования сразу же заслужила превосходную репутацию. Появление Microsoft Project привело к созданию другого логического приложения для применения метода Монте-Карло. Его основная задача заключалась в анализе неопределенностей и рисков, связанных с управлением крупными проектами.

Глава 2. Примеры использования метода Монте-Карло 8

2.1 Простейший пример использования метода Монте-Карло 8

2.2 Вычисление числа Пи методом Монте-Карло 8

2.2.1 Постановка задачи для нахождения числа Пи методом Монте-Карло 10

2.2.2 Листинг программы для нахождения числа Пи методом Монте-Карло 10

2.3 Решение задачи аналитически и методом Монте-Карло 12

Глава 3. Генерация случайных чисел 17

Заключение 20

Список литературы 21

Введение

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

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

Глава 1. Предыстория и определение метода Монте-Карло

Создателями метода статистических испытаний (метода Монте-Карло) считают американских математиков Д. Неймана и С. Улама. В 1944 году, в связи с работами по созданию атомной бомбы Нейман предложил широко использовать аппарат теории вероятностей для решения прикладных задач с помощью ЭВМ. Первая работа, где этот вопрос систематически излагался, принадлежит Метрополису и Уламу.

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

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

Классические численные методы дают приближенную схему решения задачи, связанную, обычно с разбиением пространства на строго определенные клетки и заменой интегрирования суммированием и дифференцирования – конечными разностями.

Основными недостатками аналитических методов являются:

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

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

    Невозможность расчета физического процесса, вероятностное описание которого известно, но выражение в виде уравнения крайне затруднительно.

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

    Они чрезвычайно громоздки. Объем промежуточной информации трудно вместить даже в память современного компьютера.

    Оценка погрешности решения представляет намного более трудную процедуру, чем сам процесс решения. Зачастую она просто невозможна.

Метод статистических испытаний свободен от всех этих недостатков.

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

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

Итак, сущность метода Монте-Карло состоит в следующем: требуется найти значение а некоторой изучаемой величины. Для этого выбирают такую случайную величинуX , математическое ожидание которой равно а:

М(Х)= A .

Практически же поступают так: производят N испытаний, в результате которых получают N возможных значений X, вычисляют их среднее арифметическое и принимают его в качестве оценки (приближенного значения) A искомого числа A .

Как правило, составляется программа для осуществления одного случайного испытания. Погрешность вычислений, как правило, пропорциональна , где D – некоторая постоянная.

Это значит, что N должно быть велико, поэтому метод существенно опирается на возможности ЭВМ. Ясно, что добиться таким путем высокой точности невозможно. Это один из недостатков метода. Во многих задачах удается значительно увеличить точность, выбрав способ расчета, которому соответствует значительно меньшее D .

Поскольку метод Монте-Карло требует проведения большого числа испытаний, его часто называют методом статистических испытаний. Теория этого метода указывает, как наиболее целесообразно выбрать случайную величину X, как найти ее возможные значения.

Отыскание возможных значений случайной величины Х (моделирование) называют «разыгрыванием случайной величины».

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

В отличие от аналитических методов, ищущих решение в виде ряда по собственным функциям, методы Монте-Карло ищут решения в виде статистических сумм. Для их применения достаточно описания вероятностного процесса и не обязательна его формулировка в виде интегрального уравнения; оценка погрешности чрезвычайно проста, их точность слабо зависит от размерности пространства.

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

Преимущество метода Монте-Карло состоит в том, что он способен “сработать” там, где не справляются другие методы.

Аналитические методы исследования позволяют существенно уменьшить погрешность метода Монте-Карло и могут поднять его до уровня получения качественных закономерностей. Синтез аналитических и статистических методов может свести D к очень малой величине, следовательно, уменьшить погрешность.

Приведем примеры задач, решаемых методом Монте-Карло:

      расчет системы массового обслуживания;

      расчет качества и надежности изделий;

      теория передачи сообщений;

      вычисление определенного интеграла;

      задачи вычислительной математики;

      задачи нейтронной физики и другие.

Глава 2. Примеры использования метода Монте-Карло

2.1 Простейший пример использования метода Монте-Карло

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

Рисунок 1. Площадь фигуры приближенно равна, отношению числа точек попавших в фигуру к числу всех точек.

2.2 Вычисление числа Пи методом Монте-Карло

Попробуем построить метод Монте-Карло для решения задачи о вычислении числа Пи. Для этого рассмотрим четверть круга единичного радиуса (рис. 2). Площадь круга равна
, очевидно, площадь четверти круга равна:

.

Зная, что радиус круга равен 1, получим:



X


Рисунок 2. Нахождение числа Пи методом Монте-Карло.

Площадь же всего единичного квадрата OABC равна 1. Будем случайным образом выбирать точки внутри квадрата OABC . Координаты точек должны быть,
и
. Теперь подсчитаем количество точек таких, что
, т.е. те точки, которые попадают внутрь круга.

Пусть всего было испытано N точек, и из них M попало в круг. Рассмотрим отношение количества точек, попавших в круг, к общему количеству точек (M /N ). Очевидно, что чем больше случайных точек мы испытаем, тем это отношение будет ближе к отношению площадей четверти круга и квадрата. Таким образом, имеем, что, для достаточно больших N , верно равенство:

.

Из полученного равенства:

.

Итак, мы построили метод Монте-Карло для вычисления числа Пи. Опять перед нами стоит вопрос о том, какое именно количество точек N нужно испытать для того, чтобы получить Пи с предсказуемой точностью? Вопрос о точности вычислений с помощью методов Монте-Карло рассматривается в традиционных курсах теории вероятностей, и мы не будем останавливаться на нем подробно. Можно отметить лишь, что точность вычислений очень сильно зависит от качества используемого генератора псевдослучайных чисел. Другими словами, точность тем выше, чем более равномерно случайные точки распределяются по единичному квадрату.

2.2.1 Постановка задачи для нахождения числа Пи методом Монте-Карло

Для проверки формулы , была написана программа в среде программирования Турбо Паскаль. В программе нужно ввести число K – количество испытаний и число N – количество испытываемых точек. Для координат точек (X, Y) используется генератор случайных чисел. Результаты всех испытаний усредняются.

2.2.2 Листинг программы для нахождения числа Пи методом Монте-Карло

K, {количество испытаний}

N, {количество точек}

i, j: word; {для циклов}

s, {сумма всех Пи}

P: real; {среднеарифметическое значение Пи}

{функция возвращает число Пи}

FUNCTION raschet: real;

x, y: word; {координаты точек}

M: word; {число точек попавших в окружность}

for i:=1 to N do

x:=random(2); {x, y – случайные числа}

if sqr(x)+sqr(y)<=1 then inc(M); {точка с координатами x, y попала в круг}

raschet:=4*M/N; {из формулы }

write("Введите количество испытаний: ");

write("Введите количество испытываемых точек: ");

for j:=1 to K do s:=s+raschet;

writeln("Число Пи, рассчитанное методом Монте-Карло равно:");

writeln("Точное число Пи равно:");

writeln(Pi:1:6);

Итак, с помощью этой программы была проверена верность формулы . В результате получилось число Пи равное: 3.000808 , при количестве испытаний 500 раз с количеством точек 5000. Точное число Пи равно: 3.141593 .

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

2.3 Решение задачи аналитически и методом Монте-Карло

Рассмотрим задачу:

Система контроля качества продукции состоит из трех приборов. Вероятность безотказной работы каждого из них в течение времени Т равна 5/6. Приборы выходят из строя независимо друг от друга. При отказе хотя бы одного прибора вся система перестает работать. Найти вероятность
того, что система откажет за время Т.

Аналитическое решение.

Событие А – выход из строя хотя бы одного из трех приборов за время Т и событие – ни один из трех приборов не выйдет из строя за время Т, противоположные. Вероятность
– искомая вероятность. Отсюда:

Теперь решим задачу методом Монте-Карло.

Напомним, что при использовании данного метода возможны два подхода: либо непосредственно проводят эксперименты, либо имитируют их другими экспериментами, имеющими с исходными одинаковую вероятностную структуру. В условиях данной задачи «натуральный» эксперимент – наблюдение за работой системы в течение времени Т. Многократное повторение этого эксперимента может оказаться трудноосуществимым или просто невозможным. Заменим этот эксперимент другим.

Для определения того, выйдет или не выйдет из строя за время Т отдельный прибор, будем подбрасывать игральную кость. Если выпадет одно очко, то будем считать, что прибор вышел из строя; если два, три, четыре, пять, шесть очков, то будем считать, что прибор работал безотказно. Вероятность того, что выпадет одно очко, так же как и вероятность выхода прибора из строя, равна 1/6, а вероятность того, что выпадет любое другое число очков, как и вероятность безотказной работы прибора, равна 5/6.

Чтобы определить, откажет или нет вся система за время Т, будем подбрасывать три игральные кости. Если хотя бы на одной из трех костей выпадет одно очко, то это будет означать, что система отказала.

Повторим испытание, состоящее в подбрасывании трех игральных костей, много раз подряд и найдем отношение числа M – отказов системы к общему числу N – проведенных испытаний. Вероятность отказа будет равна:

.

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

Данная программа рассчитана на любые подобные задачи. В конце расчетов программа выдает два ответа. Первый – полученный методом Монте-Карло по формуле . Второй – полученный аналитическим методом по формуле .

В программе нужно ввести: B – количество приборов; вероятность в виде дроби; N – количество проведенных опытов.

B, {количество приборов}

S, D: byte; {вероятность P(A)=S/D}

N, {количество опытов}

i, j, {для циклов}

summa: word; {суммарное число отказов}

P_M, P_A: real; {полученная вероятность}

{функция возвращает количество отказов за одно испытание}

FUNCTION otkaz: word;

for i:=1 to B do

R:=random(D+1)+1; {случайное число >=1 и <=D}

if R<=D-S then inc(o); {выпал "отказ"}

write("Введите количество приборов: ");

writeln("Введите вероятность безотказной работы (в виде дроби):");

write(" числитель – ");

write(" знаменатель – ");

readln(D); {т.е. P=S/D}

write("Введите количество опытов: ");

{расчет методом Монте-Карло}

for j:=1 to N do summa:=summa+otkaz;

{расчет аналитическим методом}

for i:=1 to B-1 do P_A:=P_A*S/D; {возведение в степень}

writeln("* * * Ответ * * *");

writeln("Методом Монте-Карло: ", P_M:1:6);

writeln("Аналитическим методом: ", P_A:1:6);

Итак, проверив формулу с помощью своей программы со значениями: количество приборов – 3; вероятность безотказной работы ; количество опытов – 50000, я получил два ответа. Решение задачи методом Монте-Карло – 0.429420 . Решение задачи аналитическим методом – 0.421296 . Отсюда вывод – вероятность, полученная разными методами сходна.

Глава 3. Генерация случайных чисел

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

Итак, дадим определение этих чисел. Обозначим через R непрерывную случайную величину, распределенную равномерно в интервале (0, 1).

Случайными числами называют возможные значения r j непрерывной случайной величины R, распределенной равномерно в интервале (0, 1).

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

Случайная величина R’ обладает свойством: вероятность попадания ее в любой интервал, принадлежащий интервалу (0; 1) равна длине этого интервала.

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

Исчерпание этой последовательности при большом числе циклов Монте-Карло или размере системы снижает ее фактический размер до:

N – размер системы (количество частиц);

P период последовательности псевдослучайных чисел;

k – количество случайных чисел, используемых для определения состояния одной частицы;

n – суммарное количество циклов Монте-Карло, необходимое для стабилизации системы и расчета ее характеристик.

Например, при моделировании системы Изинга, состоящей из 2000 частиц требуется, как правило, не менее 500 циклов МК, т.е. необходимо не менее 10 5 случайных чисел. Если используемый генератор является 16-ти разрядным и не может произвести последовательность, состоящую из более чем 2 16 (65536) псевдослучайных чисел, то фактический размер системы по формуле будет порядка 1000 частиц.

С играми ситуация еще более трагическая: например, колода из 52 карт может быть упорядочена 52! способами. Это примерно 8e67 или 2 226 . Значит для того, чтобы в процессе игры мог возникнуть любой расклад, создателю полноценной карточной игры типа «21» необходим 256 разрядный генератор случайных чисел. Если колода состоит из 36 карт, то соответствующие числа равны 4e41 и 2 138 , т.е. без суперкомпьютера опять не обойдешься. В карточной игре «преферанс» количество вариантов раздач равно 32!/10! или 2 96 , что тоже не мало. Несмотря на несравнимость этих чисел с реальными возможностями 32-х разрядного процессора, необходимо, конечно, использовать его возможности максимально, ведь только так можно приблизиться к разнообразию реальности.

Заключение

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

Задачи, решаемые методом Монте-Карло: расчет системы массового обслуживания; расчет качества и надежности изделий; теория передачи сообщений; вычисление определенного интеграла; задачи вычислительной математики; задачи нейтронной физики; моделирования дискретных и непрерывных случайных величин; моделирования случайных процессов и полей; вычисления многомерных интегралов и другие.

Список литературы

    И.М.Соболь «Метод Монте-Карло», М., 1985

    Интернет-ресурс «Предыстория и определение метода Монте-Карло» /GIS/Learning/Monte-Carlo_2/Page01.htm

    /~gene/probset/prob13.koi8.html

    Интернет-ресурс «Метод Монте-Карло» /Exponenta_Ru/educat/systemat/boziev/13.asp.htm

    Интернет-ресурс «Вундеркинд» /2001/leto/stend/Vynderkind.htm

    Интернет-ресурс «Метод Монте-Карло» /docs/TViMS/NP/lekziitv/lekziya17.htm

Документ

Предыдущих главах настоящей работы. Такая модификация позволила сделать метод Монте -Карло более... 78 до 0,95. Пример одной из таких связей... точками (при использовании метода Монте -Карло ). Основным недостатком первого метода является недостаточная...

  • Потапов виктор николаевич разработка радиометрических систем и методов полевых и дистанционных измерений радиоактивного загрязнения

    Автореферат диссертации

    ... использованием метода Монте -Карло для условий реальной геометрии спектрометрического измерения. Метод Монте -Карло ... расчетов. Глава III. Спектрометрические методы определения... разделе 4.2 приведены примеры использования прибора при измерениях...

  • Глава 11 эконометрические информационные технологии

    Документ

    Итоговой процедуры можно рассчитать (см. примеры в главе 13). В результате итоговую процедуру нельзя... использовании метода сценариев (см. главу 12). При имитационном моделировании часто используется метод статистических испытаний (Монте -Карло ...

  • Энциклопедичный YouTube

      1 / 5

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

      ✪ Дмитрий Казаков - Кварки

      ✪ [Коллоквиум]: Блеск и нищета математических методов в прикладных исследованиях

      ✪ Лекция 1: Погрешности вычислений

      ✪ Елена Браун - Миф о Ричарде lll

      Субтитры

    История

    Алгоритм Бюффона для определения числа Пи

    Число бросаний Число пересечений Длина иглы Расстояние между прямыми Вращение Значение Пи Ошибка
    Первая попытка 500 236 3 4 отсутствует 3.1780 +3,6⋅10 -2
    Вторая попытка 530 253 3 4 присутствует 3.1423 +7,0⋅10 -4
    Третья попытка 590 939 5 2 присутствует 3.1416 +4,7⋅10 -5

    Комментарии:

    Связь стохастических процессов и дифференциальных уравнений

    Создание математического аппарата стохастических методов началось в конце XIX века. В 1899 году лорд Релей показал, что одномерное случайное блуждание на бесконечной решётке может давать приближенное решение одного из видов параболического дифференциального уравнения . Андрей Николаевич Колмогоров в 1931 году дал большой толчок развитию стохастических подходов к решению различных математических задач, поскольку он сумел доказать, что цепи Маркова связаны с некоторыми интегро-дифференциальными уравнениями . В 1933 году Иван Георгиевич Петровский показал, что случайное блуждание , образующее Марковскую цепь , асимптотически связано с решением эллиптического дифференциального уравнения в частных производных . После этих открытий стало понятно, что стохастические процессы можно описывать дифференциальными уравнениями и, соответственно, исследовать при помощи хорошо на тот момент разработанных математических методов решения этих уравнений.

    Рождение метода Монте-Карло в Лос-Аламосе

    Идея была развита Уламом, который, раскладывая пасьянсы во время выздоровления после болезни, задался вопросом, какова вероятность того, что пасьянс сложится. Вместо того, чтобы использовать обычные для подобных задач соображения комбинаторики , Улам предположил, что можно просто поставить эксперимент большое число раз и, подсчитав число удачных исходов, оценить вероятность. Он же предложил использовать компьютеры для расчётов методом Монте-Карло.

    Появление первых электронных компьютеров , которые могли с большой скоростью генерировать псевдослучайные числа , резко расширило круг задач, для решения которых стохастический подход оказался более эффективным, чем другие математические методы. После этого произошёл большой прорыв, и метод Монте-Карло применялся во многих задачах, однако его использование не всегда было оправдано из-за большого количества вычислений, необходимых для получения ответа с заданной точностью.

    Годом рождения метода Монте-Карло считается 1949 год , когда в свет выходит статья Метрополиса и Улама «Метод Монте-Карло». Название метода происходит от названия коммуны в княжестве Монако , широко известного своими многочисленными казино , поскольку именно рулетка является одним из самых широко известных генераторов случайных чисел . Станислав Улам пишет в своей автобиографии «Приключения математика», что название было предложено Николасом Метрополисом в честь его дяди, который был азартным игроком.

    Дальнейшее развитие и современность

    Интегрирование методом Монте-Карло

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

    Для определения этой площади можно воспользоваться одним из обычных численных методов интегрирования : разбить отрезок на подотрезки, подсчитать площадь под графиком функции на каждом из них и сложить. Предположим, что для функции, представленной на рисунке 2, достаточно разбиения на 25 отрезков и, следовательно, вычисления 25 значений функции. Представим теперь, мы имеем дело с n {\displaystyle n} -мерной функцией. Тогда нам необходимо 25 n {\displaystyle 25^{n}} отрезков и столько же вычислений значения функции. При размерности функции больше 10 задача становится огромной. Поскольку пространства большой размерности встречаются, в частности, в задачах теории струн , а также многих других физических задачах, где имеются системы со многими степенями свободы, необходимо иметь метод решения, вычислительная сложность которого бы не столь сильно зависела от размерности. Именно таким свойством обладает метод Монте-Карло.

    Обычный алгоритм Монте-Карло интегрирования

    Предположим, требуется вычислить определённый интеграл ∫ a b f (x) d x {\displaystyle \int \limits _{a}^{b}f(x)\,dx}

    Рассмотрим случайную величину u {\displaystyle u} , равномерно распределённую на отрезке интегрирования . Тогда также будет случайной величиной, причём её математическое ожидание выражается как
    E f (u) = ∫ a b f (x) φ (x) d x {\displaystyle \mathbb {E} f(u)=\int \limits _{a}^{b}f(x)\varphi (x)\,dx} , где φ (x) {\displaystyle \varphi (x)} - плотность распределения случайной величины u {\displaystyle u} , равная 1 b − a {\displaystyle {\frac {1}{b-a}}} на участке [ a , b ] {\displaystyle } .

    Таким образом, искомый интеграл выражается как
    ∫ a b f (x) d x = (b − a) E f (u) {\displaystyle \int \limits _{a}^{b}f(x)\,dx=(b-a)\mathbb {E} f(u)} .

    Но математическое ожидание случайной величины f (u) {\displaystyle f(u)} можно легко оценить, смоделировав эту случайную величину и посчитав выборочное среднее.

    Итак, бросаем N {\displaystyle N} точек, равномерно распределённых на [ a , b ] {\displaystyle } , для каждой точки u i {\displaystyle u_{i}} вычисляем f (u i) {\displaystyle f(u_{i})} . Затем вычисляем выборочное среднее: 1 N ∑ i = 1 N f (u i) {\displaystyle {\frac {1}{N}}\sum _{i=1}^{N}f(u_{i})} .

    В итоге получаем оценку интеграла: ∫ a b f (x) d x ≈ b − a N ∑ i = 1 N f (u i) {\displaystyle \int \limits _{a}^{b}f(x)\,dx\approx {\frac {b-a}{N}}\sum _{i=1}^{N}f(u_{i})}

    Точность оценки зависит только от количества точек N {\displaystyle N} .

    Этот метод имеет и геометрическую интерпретацию. Он очень похож на описанный выше детерминистический метод, с той разницей, что вместо равномерного разделения области интегрирования на маленькие интервалы и суммирования площадей получившихся «столбиков» мы забрасываем область интегрирования случайными точками, на каждой из которых строим такой же «столбик», определяя его ширину как b − a N {\displaystyle {\frac {b-a}{N}}} , и суммируем их площади.

    Геометрический алгоритм Монте-Карло интегрирования

    Для определения площади под графиком функции можно использовать следующий стохастический алгоритм:

    Для малого числа измерений интегрируемой функции производительность Монте-Карло интегрирования гораздо ниже, чем производительность детерминированных методов. Тем не менее, в некоторых случаях, когда функция задана неявно, а необходимо определить область, заданную в виде сложных неравенств, стохастический метод может оказаться более предпочтительным.

    Использование выборки по значимости

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

    Оптимизация

    Различные вариации метода Монте-Карло можно использовать для решения задач оптимизации. Например, алгоритм имитации отжига .

    Применение в физике

    Компьютерное моделирование играет в современной физике важную роль и метод Монте-Карло является одним из самых распространённых во многих областях от квантовой физики до физики твёрдого тела, физики плазмы и астрофизики.

    Алгоритм Метрополиса

    Традиционно метод Монте-Карло применялся для определения различных физических параметров систем, находящихся в состоянии термодинамического равновесия. Предположим, что имеется набор возможных состояний физической системы S {\displaystyle S} . Для определения среднего значения A ¯ {\displaystyle {\overline {A}}} некоторой величины A {\displaystyle A} необходимо рассчитать A ¯ = ∑ S A (S) P (S) {\displaystyle {\overline {A}}=\sum _{S}A(S)P(S)} , где суммирование производится по всем состояниям S {\displaystyle S} из W (S) {\displaystyle W(S)} , P (S) {\displaystyle P(S)} - вероятность состояния S {\displaystyle S} .

    Динамическая (кинетическая) формулировка

    Прямое моделирование методом Монте-Карло

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

    Примеры прямого моделирования методом Монте-Карло:

    • Моделирование облучения твёрдых тел ионами в приближении бинарных столкновений.
    • Прямое Монте-Карло моделирование разреженных газов.
    • Большинство кинетических Монте-Карло моделей относятся к числу прямых (в частности, исследование молекулярно-пучковой эпитаксии).

    Квантовый метод Монте-Карло

    Квантовый метод Монте-Карло широко применяется для исследования сложных молекул и твёрдых тел. Это название объединяет несколько разных методов. Первый из них это вариационный метод Монте-Карло, который по сути является численным интегрированием многомерных интегралов, возникающих при решении уравнения Шрёдингера . Для решения задачи, в которой участвует 1000 электронов, необходимо взятие 3000-мерных интегралов, и при решении таких задач метод Монте-Карло имеет огромное преимущество в производительности по сравнению с другими численными методами интегрирования . Другая разновидность метода Монте-Карло - это диффузионный метод Монте-Карло.

    Лекция 5.

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

    Тема 3. Процессы массового обслуживания в экономических системах

    1. Вводные замечания. 1

    2. Общая схема метода Монте-Карло. 2

    3. Пример расчета системы массового обслуживания методом Монте-Карло. 4

    Контрольные вопросы.. 5

    1. Вводные замечания

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

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

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


    Возникновение идеи использования случайных явлений в области приближенных вычислений принято относить к 1878 г., когда появилась работа Холла об определении чисел p с помощью случайных бросаний иглы на разграфленную параллельными линиями бумагу. Существо дела заключается в том, чтобы экспериментально воспроизвести событие, вероятность которого выражается через число p, и приближенно оценить эту вероятность.

    Отечественные работы по методу Монте-Карло появились в гг. За два десятилетия накопилась обширная библиография по методу Монте-Карло, которая насчитывает более 2000 названий. При этом даже беглый просмотр названий работ позволяет сделать вывод о применимости методы Монте-Карло для решения прикладных задач из большого числа областей науки и техники.

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

    Метод Монте-Карло оказал и продолжает оказывать существенное влияние на развитие метода вычислительной математики (например, развитие методов численного интегрирования) и при решении многих задач успешно сочетается с другими вычислительными методами и дополняет их. Его применение оправдано в первую очередь в тех задачах, которые допускают теоретико-вероятностное описание. Это объясняется как естественностью получения ответа с некоторой заданной вероятностью в задачах с вероятным содержанием, так и существенным упрощением процедуры решения. Трудность решения той или иной задачи на ЭВМ определятся в значительной мере трудностью переложения ее на «язык» машины. Создание языков автоматического программирования существенно упростило один из этапов этой работы. Наиболее сложными этапами поэтому в настоящее время являются: математическое описание исследуемого явления, необходимые упрощения задачи, выбор подходящего численного метода, исследование его погрешности и запись алгоритма. В тех случаях, когда имеется теоретико-вероятностное описание задачи, использование метода Монте-Карло может существенно упростить упомянутые промежуточные этапы. Впрочем, как будет следовать из дальнейшего, во многих случаях полезно и для задач строго детерминированных строить вероятностную модель (рандомизовать исходную задачу) с тем, чтобы далее использовать метод Монте-Карло.

    2. Общая схема метода Монте-Карло

    Предположим, что нам требуется вычислить некоторую неизвестную величину m, и мы хотим сделать это, рассматривая случайную величину такую, что ее математическое ожидание М, = m. Пусть при этом дисперсия данной случайной величины D = b.

    Рассмотрим N случайных независимых величин,,…, распределения которых совпадают с распределением рассматриваемой случайной величины ξ..gif" width="247" height="48">

    Последнее соотношение можно переписать в виде

    Полученная формула дает метод расчета т и оценку погрешности этого метода.

    Сущность применения метода Монте-Карло заключается в определении результатов на основании статистики, полу чаемой к моменту принятия некоторого решения.

    Например. Пусть Е1 и Е2 - две единственно возможные реализации некоторого случайного процесса, причем p1 - - вероятность исхода Е1, а р2 = 1 – p1 - вероятность исхода Е2. Чтобы определить, какое из двух событий, e1 или Е2, имеет место в данном случае, возьмем в интервале между 0 и 1 случайное число и, равномерно распределенное в интервале (0, 1), и произведем испытание. Исход Е1 будет иметь место, если , а исход Е2 - в противном случае.

    Таким образом, достоверность результатов, получаемых при использовании метода Монте-Карло, решающим образом определяется качеством генератора случайных чисел.

    Для получения случайных чисел на ЭВМ используются способы генерирования, которые обычно основаны на много кратном повторении некоторой операции. Полученной таким образом последовательности более соответствует название псевдослучайных чисел, поскольку генерируемая последовательность является периодичной и, начиная с некоторого момента, числа начнут повторяться. Это следует из того, что в коде ЭВМ можно записать лишь конечное число различных чисел. Следовательно, в конце концов одно из генерируемых чисел γ1, совпадет с одним из предыдущих членов последовательности γL. А поскольку генерация осуществляется по формуле вида


    γк+1 = F(γk),

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

    Использование равномерно распределенных случайных чисел составляет основу моделирования с помощью метода Монте-Карло. Можно сказать, что если некоторая случайная величина была определена с помощью метода Монте-Карло, то для ее вычисления использовалась последовательность равномерно распределенных случайных чисел.

    Равномерно распределенные случайные числа заключены в интервале от 0 до 1 и выбираются случайным образом в соответствии с функцией распределения

    F(x) = Рr{Х< х} = х, .

    При этом распределении одинаково правдоподобно по явление любых значений случайной величины в интервале (0, 1). Здесь Рг{Х< х} - вероятность того, что случайная величина X примет значение меньше х.

    Основным методом получения случайных чисел является их генерация по модулю. Пусть m, a, с, х0 - целые числа, такие, что m > х0 и а, с, х0 > 0. Псевдослучайное число хi из последовательности {хi} получается с помощью рекуррентного соотношения

    xi = а xi-1 + с (mod m).

    Стохастические характеристики генерируемых чисел решающим образом зависят от выбора m, а и с. Их неудачный выбор приводит к ошибочным результатам при моделировании методом Монте-Карло.

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

    Большинство компьютеров и программных оболочек содержат генератор случайных чисел. Однако большинство статистических тестов показывает коррелированность между получаемыми случайными числами.

    Существует быстрый тест, с помощью которого необходимо проверять каждый генератор. Качество генератора случайных чисел можно продемонстрировать, заполняя полностью d-мерную решетку (например, двух - или трехмерную). Хороший генератор должен заполнить все пространство гиперкуба.

    Другой приближенный способ проверки равномерности распределения N случайных чисел хi состоит в вычислении их математического ожидания и дисперсии. Согласно этому критерию, для равномерного распределения должны выполняться условия

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

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

    В начале программы целой переменной X присваивается некоторое значение Х0. Затем случайные числа генерируются по правилу

    X = (аХ + с) mod m. (1)

    Выбор параметров следует осуществлять, пользуясь следующими основными принципами.

    1. Начальное число Х0 можно выбрать произвольно. Если программа используется несколько раз и каждый раз требуются различные источники случайных чисел, можно, например, присвоить Х0 значение X, полученное последним на предыдущем прогоне.

    2.Число m должно быть большим, например, 230 (поскольку именно это число определяет период генерируемой псевдослучайной последовательности).

    3.Если m - степень двойки, выбирают а таким, чтобы a mod8 = 5. Если m - степень десяти, выбирают а таким, чтобы a mod10 = 21. Такой выбор гарантирует, что генератор случайных чисел будет вырабатывать все m возможных значений, прежде чем они начнут повторяться.

    4.Множитель а предпочтительнее выбирать лежащим между 0.01m и 0.99m, и его двоичные или десятичные цифры не должны иметь простую регулярную структуру. Множитель должен пройти спектральный критерий и, желательно, еще несколько критериев.

    5.Если a - хороший множитель, значение с не существен но, за исключением того, что с не должно иметь общего множителя с m, если m - размер компьютерного слова. Можно, например, выбрать с = 1 или с = а.

    6. Можно генерировать не больше m/1000 случайных чисел. После этого должна использоваться новая схема, например, новый множитель а .

    Перечисленные правила, главным образом, относятся к машинному языку программирования. Для языка программирования высокого уровня, например С++, часто используют другой вариант (1): выбирается простое число m, близкое к наибольшему легко вычисляемому целому числу, значение а полагается равным первообразному корню из m, а с берется равным нулю. Например, можно принять a = 48271 и т =

    3. Пример расчета системы массового обслуживания методом Монте-Карло

    Рассмотрим простейшую систему массового обслуживания (СМО), которая состоит из n линий (иначе называемых каналами или пунктами обслуживания). В случайные моменты времени в систему поступают заявки. Каждая заявка поступает на линию № 1. Если в момент поступления за явки Тк эта линия свободна, заявка обслуживается время t3 (время занятости линии). Если линия занята, заявка мгновенно передается на линию № 2 и т. д. Если все n линий в данный момент заняты, то система выдает отказ.

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

    Для подобных систем практически единственным методом расчета является метод Монте-Карло.

    https://pandia.ru/text/78/241/images/image013_34.gif" width="373" height="257">

    Для получения случайных чисел на ЭВМ используются алгоритмы, поэтому такие последовательности, являющиеся по сути детерминированными, называются псевдослучайными. ЭВМ оперирует n-разрядными числами, поэтому на ЭВМ вместо непрерывной совокупности равномерных случайных чисел интервала (0,1) используют дискретную последовательность 2n случайных чисел того же интервала - закон распределения такой дискретной последовательности называется квазиравномерны распределением.

    Требования к идеальному генератору случайных чисел:

    1. Последовательность должна состоять из квазиравномерно распределенных чисел.

    2. Числа должны быть независимыми.

    3. Последовательности случайных чисел должны быть воспроизводимыми.

    4. Последовательности должны иметь неповторяющиеся числа.

    5. Последовательности должны получаться с минимальными затратами вычислительных ресурсов.

    Наибольшее применение в практике моделирования на ЭВМ для генерации последовательностей псевдослучайных числе находят алгоритмы вида:

    представляющие собой реккурентные соотношения первого порядка.

    Например. x0 = 0,2152 , (x0)2=0, x1 = 0,6311 , (x1)2=0, x2=0,8287 и т. д.

    Недостаток подобных методов - наличие коррелляции между числами последовательности, а иногда случайность вообще отсутствует, например:

    x0 = 0,4500 , (x0)2=0, x1 = 0,2500 , (x1)2=0, x2=0,2500 и т. д.

    Широкое применение получили конгруэнтные процедуры генерации псевдослучайных последовательностей.

    Два целых числа a и b конгруэнтны (сравнимы) по модулю m, где m - целое число, тогда и только тогда, когда существует такое целое число k, что a-b=km.

    1984º4 (mod 10), 5008º8 (mod 103).

    Большинство конгруэнтных процедур генерации случайных чисел основаны на следующей формуле:

    где - неотрицательные целые числа.

    По целым числам последовательности {Xi} можно построить последовательность {xi}={Xi/M} рациональных чисел из единичного интервала (0,1).

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

    Методы улучшения качества последовательностей случайных чисел:

    1. Использование рекуррентных формул порядка r:

    Но применение этого способа приводит к увеличению затрат вычислительных ресурсов на получение чисел.

    2. Метод возмущений:

    .

    5. Моделирование случайных воздействий на системы

    1. Необходимо реализовать случайное событие А, наступающее с заданной вероятностью p. Определим А как событие, состоящее в том, что выбранное значение xi равномерно распределенной на интервале (0,1) случайной величины удовлетворяет неравенству:

    Тогда вероятность события А будет https://pandia.ru/text/78/241/images/image019_31.gif" width="103" height="25">,

    Процедура моделирования испытаний в этом случае состоит в последовательном сравнении случайных чисел xi со значениями lr. Если условие выполняется, исходом испытания оказывается событие Аm.

    3. Рассмотрим независимые события А и В с вероятностями наступления рА и рВ. Возможными исходами совместных испытаний в этом случае будут события АВ, с вероятностями рАрВ, (1-рА)рВ, рА(1-рВ), (1-рА)(1-рВ). Для моделирования совместных испытаний можно использовать два варианта процедуры:

    Последовательное выполнение процедуры, рассмотренной в п.1.

    Определение одного из исходов АВ, по жребию с соответствующими вероятностями, т. е. процедура, рассмотренная в п.2.

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

    4. События А и В являются зависимыми и наступают с вероятностями pА и pВ. Обозначим через pА(В) условную вероятность наступления события В при условии, что событие А произошло.

    Контрольные вопросы

    1) Как можно определить метод Монте-Карло?

    2) Практическое значение метода Монте-Карло.

    3) Общая схема метода Монте-Карло.

    4) Пример расчета системы массового обслуживания методом Монте-Карло.

    5) Способы генерации случайных чисел.

    6) Каковы требования к идеальному генератору случайных чисел?

    7) Методы улучшения качества последовательностей случайных чисел.

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

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

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

    Область применения

    Метод Монте-Карло является способом оценки влияния неопределенности оценки параметров системы в широком диапазоне ситуаций. Метод обычно используют для оценки диапазона изменения результатов и относительной частоты значений в этом диапазоне для количественных величин, таких как стоимость, продолжительность, производительность, спрос и др. Моделирование методом Монте-Карло может быть использовано для двух различных целей:

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

    Метод Монте-Карло может быть применен для оценки неопределенности финансовых прогнозов, результатов инвестиционных проектов, при прогнозировании стоимости и графика выполнения проекта, нарушений бизнес-процесса и замены персонала.

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

    Входные данные

    Входными данными для моделирования методом Монте-Карло являются хорошо проработанная модель системы, информация о типе входных данных, источниках неопределенности и требуемых выходных данных. Входные данные и соответствующую им неопределенность рассматривают в виде случайных переменных с соответствующими распределениями. Часто для этих целей используют равномерные, треугольные, нормальные и логарифмически нормальные распределения.

    Процесс моделирования

    Процесс включает следующие этапы:

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

    Выходные данные

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

    Метод Монте-Карло обычно используют для оценки распределения входных или выходных результатов или характеристик распределения, в том числе для оценки:

    • вероятности установленных состояний;
    • значений выходных величин, для которых установлены границы, соответствующие некоторому уровню доверия, которые не должны быть нарушены.

    Анализ взаимосвязи входных и выходных величин может выявить относительное значение факторов работы системы и идентифицировать способы снижения неопределенности выходных величин.

    Преимущества

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

    Недостатки

    • Точность решений зависит от количества итераций, которые могут быть выполнены (этот недостаток становится менее значимым с увеличением быстродействия компьютера).
    • Метод предполагает, что неопределенность данных можно описать известным распределением.
    • Большие и сложные модели могут представлять трудности для специалистов по моделированию и затруднять вовлечение заинтересованных сторон.
    • Метод не может адекватно моделировать события с очень высокой или очень низкой вероятностью появления, что ограничивает его применение при анализе риска.

    Стандарты

    • МЭК 61649 Критерии согласия, доверительные интервалы и нижние доверительные границы для распределения Вейбулла
    • Руководство ИСО/МЭК 98-3:2008 Неопределенность измерения. Часть 3. Руководство по выражению неопределенности измерения
    Загрузка...
    Top