Методы обратной функция распределения

Материал из Циклопедии
Перейти к навигации Перейти к поиску

Экономичность алгоритмов метода Монте-Карло[править]

Алгоритмы численного (компьютерного) статистического (вероятностного) моделирования (или алгоритмы метода Монте-Карло) находят весьма широкое применение. В этих численных схемах ключевым элементом является многократное применение алгоритмов (формул) вида

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

(последняя запись означает, что при и при ; здесь – стандартные случайные числа, т. е. выборочные значения случайной величины , равномерно распределенной в интервале это выборочное значение реализуется на компьютере с помощью соответствующего генератора – специальной подпрограммы, именуемой в языках программирования как RAND или RANDOM).

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

Метод обратной функции распределения и его обоснование[править]

Стандартным алгоритмом моделирования непрерывной случайной величины является метод обратной функции распределения, основанный на применении формулы

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

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

Элементарные плотности распределения[править]

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

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

ПРИМЕР 1. Рассмотрим случайную величину , распределенную согласно плотности экспоненциального распределения

Эта плотность является элементарной. Действительно, решая уравнение , последовательно получаем

и, наконец,

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

ПРИМЕР 2. Рассмотрим случайную величину , распределенную согласно плотности стандартного гауссовского (нормального) распределения

Эта плотность не является элементарной: в левой части уравнения интеграл не берется аналитически (первообразная не может быть выражена в элементарных функциях).

ПРИМЕР 3. Рассмотрим случайную величину , распределенную согласно плотности, представляющей собой полином

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

Конструирование элементарных плотностей: технология вложенных замен[править]

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

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

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

Рассмотрим новую случайную величину , распределенную согласно плотности

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

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

что дает выписанную выше формулу для .

ПРИМЕР 4. Рассмотрим случайную величину , распределенную согласно плотности экстремального (точнее, минимального) значения, известной из теории порядковых статистик:

Эта элементарная плотность получается из рассмотренной в примере 1 плотности экспоненциального распределения для с помощью замены ; поэтому соответствующая моделирующая формула имеет вид .

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

Трудоемкость формул метода обратной функции распределения. Компьютерная система NMPUD[править]

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

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

Последнее соотношение между трудоемкостями моделирующих формул получено с использованием доступной компьютерной системы NMPUD (Numerical Modelling of Probabilistic Univariate Distributions) – см. https://nmpud.netlify.app, предназначенной для исследования формул метода обратной функции распределения.

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

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

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

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

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

Модификации метода обратной функции распределения. Альтернативные экономичные методы с уравниванием вероятностей[править]

В ряде научных источников упоминается метод обратной функции распределения для дискретных случайных величин с распределением

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

Отметим, что:

– название «метод обратной функции распределения» оправдано только для случая (последнее условие существенно ограничивает сферу применения стандартного метода моделирования дискретной случайной величины);

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

– запись лишь затушевывает простую идеологию приведенного выше стандартного алгоритма.

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

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

В заключение упомянем – в качестве альтернативных трудоемким формулам метода обратной функции распределения – разработанные недавно алгоритмы метода исключения с уравниванием вероятностей – двусторонний алгоритм с кусочно-постоянными мажорантой и минорантой и новый, модифицированный зиккурат-метод, которые имеют относительно малые, одинаковые для большого класса распределений (в том числе, для распределений с элементарными плотностями) времена получения выборочных значений; соответствующие описания и коды приведены в библиотеке компьютерной системы PrEMA (Probability Equalization Modelling Algorithms) – см. https://prema.andronix1.ru.

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

Ме́тод обра́тного преобразова́ния.

См. также[править]

Литература[править]

1. Metropolis N., Ulam S. The Monte Carlo method // Journal of American Statistical Association. 1949. V. 44. No 249. P. 335–341.

2. Бусленко Н. П., Голенко Д. И., Соболь И. М., Срагович В. Г., Шрейдер Ю. А. Метод статистических испытаний (метод Монте-Карло). М.: Физматгиз, 1962.

3. Hammmersley J. M., Handscomb D. C. Monte Carlo Methods. New York: Jonh Wiley and Sons, 1964.

4. Spanier J., Gelbard E. Monte Carlo Principles and Newtron Transport Problems. Addison–Wesley, Reading, 1969.

5. Соболь И. М. Численные методы Монте-Карло. М.: Наука, 1973.

6. Михайлов Г. А. Некоторые вопросы теории методов Монте-Карло. Новосибирск: Наука, 1974.

7. Ермаков С. М. Метод Монте-Карло и смежные вопросы. М.: Наука, 1974.

8. Марчук Г. И., Михайлов Г. А., Назаралиев М. А., Дарбинян Р. А., Каргин Б. А., Елепов Б. С. Метод Монте-Карло в атмосферной оптике. Новосибирск: Наука, 1976.

9. Ермаков С. М., Михайлов Г. А. Статистическое моделирование. М.: Наука, 1982.

10. Kalos M. H., Whitlock P. A. Monte Carlo Methods. New York: Jonh Wiley & Sons, 1986.

11. Михайлов Г. А. Оптимизация весовых методов Монте-Карло. М.: Наука, 1988.

12. Сабельфельд К. К. Методы Монте-Карло в краевых задачах. М.: Наука, 1989.

13. Михайлов Г. А., Войтишек А. В. Численное статистическое моделирование. Методы Монте-Карло. М.: Академия, 2006.

14. Войтишек А. В. Лекции по численным методам Монте-Карло. Новосибирск: НГУ, 2018.

15. Михайлов Г. А., Войтишек А. В. Статистическое моделирование. Методы Монте-Карло. М.: Юрайт, 2025.