Chefeat.ru

Здоровое питание

Преобразование бокса мюллера c++, преобразование бокса мюллера, преобразование бокса мюллера python, преобразование бокса мюллера вывод

21-06-2024

Преобразование Бокса — Мюллера — метод моделирования стандартных нормально распределённых случайных величин. Имеет два варианта. Метод является точным, в отличие, например, от методов основывающихся на центральной предельной теореме.

Метод был опубликован в 1958 году Джорджем Боксом и Мервином Мюллером.

Первый вариант

Пусть и  — независимые случайные величины, равномерно распределённые на интервале (0, 1]. Вычислим и по формулам

Тогда и будут независимы и распределены нормально с математическим ожиданием 0 и дисперсией 1. При реализации на компьютере обычно быстрее не вычислять обе тригонометрические функции — и  — а рассчитать одну из них через другую. Ещё лучше воспользоваться вместо этого вторым вариантом преобразования Бокса — Мюллера.

Второй вариант

Пусть и  — независимые случайные величины, равномерно распределённые на отрезке [−1, 1]. Вычислим . Если окажется, что или , то значения и следует «выбросить» и сгенерировать заново. Как только выполнится условие , по формулам

и

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

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

Переход к общему нормальному распределению

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

Это уже не является частью преобразования Бокса — Мюллера, но позволяет завершить генерацию нормальной случайной величины.

Преобразование бокса мюллера c++, преобразование бокса мюллера, преобразование бокса мюллера python, преобразование бокса мюллера вывод.

Чемпионат мира по настольному теннису, В помощь радиолюбителю, Файл:Invincible class battlecruiser midle section.svg, Файл:Peace riding in a triumphal chariot Bosio Carrousel - 2012-05-28.jpg.

© 2014–2023 chefeat.ru, Россия, Челябинск, ул. Речная 27, +7 (351) 365-27-13