Методи Монте-Карло: приборкання випадковості для розв'язання детермінованих задач

Кидайте достатньо дротиків у мішень навмання, порахуйте, скільки з них потрапило всередину кола порівняно з квадратом — і ви зможете оцінити π. Ця абсурдно проста ідея — що випадкова вибірка розкриває детерміновані істини — лежить в основі методів Монте-Карло, які застосовуються всюди: від проєктування атомної бомби до управління ризиками хедж-фондів.

Оцінка π за допомогою випадкових точок

Класична демонстрація методу Монте-Карло починається з геометрії. Розгляньмо одиничне коло — радіус 1, з центром у початку координат — вписане в квадрат 2×2. Площа кола дорівнює π·r² = π. Площа квадрата дорівнює 4. Їхнє відношення точно дорівнює π/4.

Тепер згенеруймо N випадкових точок, рівномірно розподілених по квадрату, з координатами (x, y), де і x, і y змінюються від −1 до 1. Для кожної точки перевіримо, чи виконується x² + y² ≤ 1. Якщо так, точка потрапляє всередину кола; назвемо кількість таких точок M. Тоді:

π ≈ 4 × M / N

При 1000 точок можна отримати π ≈ 3.1 — грубо, але впізнавано. При 1 мільйоні точок зазвичай досягається приблизно 3.141 — точність до трьох десяткових знаків. Похибка оцінки Монте-Карло масштабується як 1/√N: щоб отримати ще один додатковий десятковий знак точності, потрібно у 100 разів більше вибірок. Ця повільна збіжність — плата за простоту.

Вражає в цьому не ефективність — існують значно швидші способи обчислити π — а сам принцип, який цей метод демонструє: випадкова вибірка може видобувати точну математичну інформацію з геометрії, ймовірності та фізики однаково.

Інтегрування у високих вимірностях

Традиційні методи чисельного інтегрування, такі як метод трапецій чи метод Сімпсона, працюють, розміщуючи сітку точок обчислення по всій області інтегрування. В одному вимірі N точок дають похибку, що зазвичай масштабується як 1/N² або краще. Але тут є фатальна проблема: у d вимірах сітка з N точками на вісь потребує Nd обчислень загалом.

Для d = 10 вимірів зі 100 точками на вісь це 1020 обчислень — далеко за межами можливостей будь-якого комп'ютера. Для d = 100 необхідна кількість вузлів сітки астрономічно перевищує кількість атомів у видимому Всесвіті. Це прокляття розмірності.

Інтегрування методом Монте-Карло не піддається цьому прокляттю. Ви просто вибираєте N випадкових точок у d-вимірній області й усереднюєте значення підінтегральної функції. Похибка завжди становить 1/√N, незалежно від кількості вимірів. Монте-Карло стає відносно ефективнішим за будь-який ґратковий метод у міру зростання розмірності, тому цей метод домінує в таких галузях, як:

Витоки в Мангеттенському проєкті

Назву «Монте-Карло» запропонували Станіслав Улам і Джон фон Нейман у 1940-х роках на честь відомого казино-району в Монако — натяк на центральну роль випадковості. Приводом послужив Мангеттенський проєкт, а конкретна задача полягала в дифузії нейтронів у ділильному матеріалі.

Коли нейтрон проходить крізь уран чи плутоній, він проходить через складний ланцюг подій розсіювання, поглинання й поділу, ймовірності яких залежать від властивостей матеріалу та енергії нейтрона. Записати аналітичні рівняння, що відстежують усі можливі траєкторії, неможливо. Але симулювати випадковий шлях одного нейтрона просто — а симуляція мільйонів таких нейтронів статистично відтворює сукупну поведінку ланцюгової реакції.

Енріко Фермі насправді виконував ментальні розрахунки Монте-Карло навіть раніше, використовуючи свою знамениту здатність оцінювати перерізи нейтронних взаємодій за аналогією та подумковою рандомізацією. Але саме Улам формалізував метод, одужуючи від хвороби й граючи в пасьянс — розмірковуючи, яку частку партій можна виграти, не розігруючи їх до кінця.

Фон Нейман одразу побачив застосовність до нейтронних задач і, що вирішально, зрозумів, що щойно побудований комп'ютер ENIAC може механічно виконувати такі симуляції. Перші серйозні розрахунки Монте-Карло виконали на ENIAC у 1947 році, і з того часу метод є незамінним у ядерній фізиці, розробці озброєнь та реакторній інженерії.

Метод Монте-Карло на основі ланцюгів Маркова

Глибша проблема виникає, коли потрібно виконати вибірку з розподілу ймовірностей, який неможливо безпосередньо обернути чи нормалізувати. Це поширена ситуація в баєсівській статистиці, де апостеріорний розподіл параметрів моделі може бути ненормалізованою густиною високої розмірності, пропорційною добутку правдоподібності та апріорного розподілу.

Метод Монте-Карло на основі ланцюгів Маркова (MCMC) розв'язує цю проблему, будуючи ланцюг Маркова — послідовність випадкових станів, де кожен стан залежить лише від попереднього, — стаціонарний розподіл якого дорівнює цільовому розподілу. Після періоду «розігріву» (burn-in), протягом якого ланцюг досягає рівноваги, послідовні стани ланцюга є (корельованими) вибірками з цільового розподілу.

Основоположний алгоритм — Метрополіса-Гастінгса (1953, розширений у 1970):

  1. Почати зі стану x.
  2. Запропонувати новий стан x' із пропозиційного розподілу q(x'|x).
  3. Обчислити коефіцієнт прийняття α = [p(x') · q(x|x')] / [p(x) · q(x'|x)], де p — цільова густина.
  4. Прийняти x' з імовірністю min(1, α); інакше залишитися в стані x.
  5. Повторити.

Геніальність цього алгоритму в тому, що нормувальна константа p скорочується у відношенні α — потрібно оцінювати лише ненормалізовану густину. MCMC сьогодні є центральним для баєсівського висновування, передбачення структури білків та симуляції моделі Ізінга в статистичній фізиці, де пряма вибірка з розподілу Больцмана неможлива.

🚶 Подивіться на випадкові блукання в дії: Випадкове блукання — найпростіший процес MCMC — кожен крок є випадковим рухом у новому напрямку. Дослідіть симуляцію випадкового блукання, щоб побачити, як випадкові шляхи досліджують простір, — саме так семплери MCMC орієнтуються в ландшафтах ймовірностей високої розмірності.

Монте-Карло у фінансах

Модель Блека-Шоулза припускає, що ціни акцій рухаються за геометричним броунівським рухом — чистою аналітичною моделлю із замкненою формулою ціноутворення опціонів. Реальні фінансові портфелі набагато складніші: десятки корельованих активів, волатильність, що сама коливається (стохастична волатильність), стрибкоподібні процеси, виплати, залежні від траєкторії, і регуляторні обмеження.

Симуляція Монте-Карло природно справляється з усім цим. Симулюйте тисячі чи мільйони можливих траєкторій ринку протягом строку дії опціону, обчисліть виплату при закінченні терміну для кожного сценарію, дисконтуйте до сьогодення й усередніть. Результат — справедлива вартість опціону за припущеннями вашої моделі.

Цей підхід також живить розрахунки вартості під ризиком (Value at Risk, VaR): симулюйте вартість портфеля за тисячами можливих ринкових сценаріїв на горизонті в один чи десять днів і повідомте рівень збитку, який перевищується лише в 1% (або 5%) сценаріїв. Після фінансової кризи 2008 року більш складні системи стрес-тестування розширили цей підхід на сотні макроекономічних сценаріїв — по суті, масштабний Монте-Карло над просторами економічних станів.

Закон великих чисел і межі похибки

Збіжність методу Монте-Карло гарантується законом великих чисел: зі зростанням N вибіркове середнє майже напевно збігається до істинного середнього. Центральна гранична теорема дає більше інформації: розподіл вибіркового середнього наближено є нормальним, зі стандартним відхиленням σ/√N, де σ — стандартне відхилення величини, що вибирається.

Це дає точну, обчислювану межу похибки — на відміну від багатьох детермінованих чисельних методів, де аналіз похибки вимагає припущень про гладкість. Похибку методу Монте-Карло завжди можна оцінити, запустивши симуляцію кілька разів і виміривши мінливість результатів.

Для зменшення дисперсії й прискорення збіжності практики використовують такі техніки:

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

Часті запитання

Що таке метод Монте-Карло?

Методи Монте-Карло — це обчислювальні алгоритми, що використовують випадкову вибірку для отримання числових результатів. Вони розв'язують задачі, які можуть бути детермінованими за своєю природою, але надто складні для аналітичного розв'язання — шляхом генерації великої кількості випадкових вибірок та агрегування статистичних результатів. Назва походить від казино Монте-Карло в Монако, її запропонував фізик Станіслав Улам у 1940-х роках.

Як метод Монте-Карло оцінює число пі?

Щоб оцінити π: випадково згенеруйте точки (x, y), рівномірно розподілені в одиничному квадраті. Порахуйте, скільки з них потрапляють усередину чверті кола (x² + y² ≤ 1). Відношення кількості точок усередині до загальної кількості точок наближає π/4, тож π ≈ 4 × (точки всередині) / (загальна кількість точок). При 1 мільйоні випадкових точок точність сягає приблизно трьох десяткових знаків. Більша кількість точок покращує точність пропорційно 1/√N.

Що таке техніка інтегрування Монте-Карло?

Інтегрування методом Монте-Карло оцінює значення визначеного інтеграла шляхом випадкової вибірки підінтегральної функції. Для функції f(x) на відрізку [a,b]: вибираємо N випадкових значень x, обчислюємо f(x) для кожного, усереднюємо результати й множимо на (b-a). Оцінка збігається зі швидкістю O(1/√N) незалежно від розмірності — що робить метод особливо потужним для інтегралів високої розмірності, де ґраткові методи не працюють.

Для чого симуляція Монте-Карло використовується у фінансах?

У фінансах Монте-Карло симулює можливі майбутні траєкторії цін активів, відсоткових ставок або економічних змінних. Застосування включають: ціноутворення опціонів (особливо для опціонів, залежних від траєкторії, таких як азійські чи бар'єрні опціони), розрахунок вартості під ризиком (VaR), стрес-тестування портфелів, оцінку іпотечних цінних паперів та моделювання зобов'язань пенсійних фондів. Банки прораховують мільйони сценаріїв для оцінки розподілів ризику.

Що таке зменшення дисперсії в методах Монте-Карло?

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

Що таке алгоритм Метрополіса-Гастінгса?

Метрополіс-Гастінгс — це алгоритм Монте-Карло на основі ланцюгів Маркова (MCMC), що виконує вибірку зі складних розподілів ймовірностей, які неможливо вибрати безпосередньо. Він пропонує випадкові кроки і приймає їх з ймовірністю, пропорційною цільовому розподілу. З часом стаціонарний розподіл ланцюга збігається з бажаним розподілом. Це фундаментальний алгоритм у баєсівській статистиці, статистичній фізиці та машинному навчанні.

Що таке пошук по дереву методом Монте-Карло (MCTS)?

Пошук по дереву методом Монте-Карло — це алгоритм ухвалення рішень у ігрових деревах. Він будує дерево пошуку, повторюючи такі кроки: вибір перспективного вузла, його розгортання, симуляція випадкового програвання партії до кінця, а потім зворотне поширення результату. MCTS уможливив перемогу AlphaGo над людськими чемпіонами з гри го і використовується в багатьох застосуваннях для ігор і планування, де вичерпний пошук неможливий.

Наскільки точні методи Монте-Карло?

Точність методу Монте-Карло масштабується як 1/√N — учетверення кількості вибірок удвічі зменшує похибку. Ця швидкість збіжності повільніша за багато чисельних методів для задач низької розмірності, але переважає у високих вимірностях (>4–5). Методи квазі-Монте-Карло з послідовностями низької розбіжності можуть досягати збіжності O(1/N). Для практичних застосувань мільйони вибірок зазвичай дають достатню точність.

Що таке вибірка за важливістю?

Вибірка за важливістю — це техніка зменшення дисперсії, коли вибірки беруться з пропозиційного розподілу, що надає перевагу найважливішим (найбільш внесним) областям області інтегрування, а потім результати переважуються, щоб врахувати зміщення вибірки. Якщо пропозиційний розподіл близько відповідає формі підінтегральної функції, дисперсію можна зменшити на порядки величини порівняно з рівномірною вибіркою.

Які обмеження мають методи Монте-Карло?

Обмеження методів Монте-Карло включають: повільну збіжність O(1/√N), що вимагає багато вибірок для високої точності, «прокляття розмірності» при проєктуванні хороших пропозиційних розподілів у високих вимірностях, чутливість до якості псевдовипадкових чисел, послідовні кореляції в методах MCMC, що вимагають розігріву та проріджування, а також обчислювальну вартість, коли обчислення кожної вибірки дороге (як у масштабних фізичних симуляціях).