научная статья по теме ФИЗИКА В МОНТЕ-КАРЛО Физика

Текст научной статьи на тему «ФИЗИКА В МОНТЕ-КАРЛО»

Физика в Монте-Карло ~

О сколько нам открытий чудных Готовят просвещенья дух ^

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

А.С.Пушкин

Е.З.Мейлихов

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

Само княжество Монако имеет площадь всего 185 га и спокойно могло бы разместиться на территории ВДНХ. В этом государстве постоянно проживает чуть более 32 тыс. человек, но только каждый пятый из них является монегаском — подданным княжества. Остальные в основном граждане Франции (40%) и Италии (20%).

Существует шесть способов получения подданства Монако:

1. Иметь хотя бы одного мо-накского родителя.

2. Родиться в Монако от неизвестных (монакским властям) родителей.

3. Выйти замуж за монегас-ка. (Взять в жены подданную Монако иностранец может исключительно во имя любви: по закону иностранный супруг подданной Монако не может претендовать на получение подданства.)

© Мейлихов Е.З., 2008

Евгений Залманович Мейлихов, доктор физико-математических наук, главный научный сотрудник Института молекулярной физики Российского научного центра «Курчатовский институт». Область научных интересов — физика твердого

4. Добиться усыновления монакскими подданными и прожить в княжестве 10 лет.

5. Прожить в Монако 10 лет после достижения 21 года и отказаться от своего прежнего гражданства.

6. Очень понравиться принцу, поскольку тот может даровать подданство по своему желанию.

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

Пасьянс Улама

Заслуга изобретения метода Монте-Карло принадлежит польскому математику Станиславу Уламу, эмигрировавшему перед второй мировой войной в США и работавшему там в рамках известного Манхэттенского проекта. Вот как он сам пишет об этом [1]: «Идея, названная впоследствии методом Монте-Карло, возникла у меня в 1946 г., когда во время болезни я играл в пасьянс. Чтобы вычислить вероятность успешного исхода в пасьянсе (или какой-нибудь другой игре, в которой мастерство игрока не играет роли), нужно просчитать все варианты, число которых настолько велико, что оценить их все просто не представляется возможным. Однако, как я заметил, получить представление об этой вероятности можно гораздо проще — раскладывая карты и отмечая долю успешных результатов.

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

приближенное решение задачи. Все, что для этого Задача Бюффона

£ 3*

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

Улам вовсе не изобрел метод статистических испытаний. Он и раньше применялся для решения различных задач с использованием таких «физических» генераторов случайных чисел, как бросание костей или вытягивание карты из колоды. Использовались и другие способы. Так, У.С.Госсетт, публиковавшийся под псевдонимом «Студент» (Student), в 1908 г. использовал параметры большого и среднего пальцев 3000 преступников для генерации двух коррелированных нормальных распределений.

Достижение Улама состояло в том, что он осознал возможность использования только что появившихся компьютеров для автоматизации таких испытаний. Это превращало математический курьез в формальный метод, пригодный для решения широкого круга задач. Само же название метода, напоминающее о простейшем способе генерации случайных чисел — рулетке, придумал коллега Улама Николас Метрополис. В 1949 г. он вместе с Уламом опубликовал статью, которая так и называлась — «Метод Монте-Карло» [2].

В сентябре 1985 г. в Лос-Аламосе проходила конференция, приуроченная к 70-летию Н.Метро-полиса. Одним из докладчиков был его давний друг и коллега профессор Херб Андерсон, который закончил свою речь «юбилейной поэмой»* [3]:

Я помню чудесное времечко, Ник, Когда Монте-Карло лишь только возник, И мы по утрам кENIAC'у бежали, Программные коды в него загружали.

Но вот Монте-Карло не «пашет» никак, И это заставило строить MANIAC. Он всем нам казался чудесной игрушкой, И это отмечено было пирушкой.

Собрались, я помню, все наши друзья, Их всех перечислить, конечно, нельзя. Там были Туркевич и Теллер, и Гамов, И много других всем известных титанов.

Тогда нас связала единая цель — В MANIAC'ову душу построить тоннель. Зеленый росток на поверхность пробился — Вот так Монте-Карло на свет появился.

* Перевод автора. ENIAC (Electronic Numerical Integrator And

Computer) и MANIAC (Mathematical Analyzer, Numerical Integrator, And Computer ) — «имена» первых компьютеров в Лос-Аламосе.

Идею метода Монте-Карло обычно иллюстрируют задачей Бюффона об игле. Задолго до формулировки самого метода (еще в 1777 г.) граф Жорж Луи Леклерк де Бюффон исследовал следующую проблему (см. рис.1). Игла длиной l случайно падает на плоскость, которая разграфлена параллельными линиями, расположенными на расстоянии d > l друг от друга. Какова вероятность, что игла пересечет одну из них ?

Положение «нижнего» конца иглы определяется двумя случайными, независящими друг от друга величинами — его расстоянием A до ближайшей «верхней» прямой и углом 8 наклона иглы. Расстояние A с равной вероятностью принимает любое значение от 0 до d, а угол 8 с равной вероятностью заключен в пределах от 0 до п. Соответственно, вероятность того, что величина A заключена в пределах от A до A + dA, а величина 8 заключена при этом в пределах от 8 до 8 + d8, равна (dA/d)•(d8/п) = dA•d8/пd. Игла пересечет «верхнюю» прямую, если A < lб1п8. Поэтому вероятность такого пересечения равна**

w

п /sine

= 1 1

e=0a=0

dA-de nd

2/

n d'

(1)

Лаплас заметил, что этот «ответ» приводит к забавному (хотя и трудоемкому) методу определения числа п. Представим, что мы провели опыт Бюффона п раз и при этом число «удачных» случаев (когда игла пересекла линию) оказалось равным т. Тогда т ~ т/п, и значит,

n

m

(2)

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

** Напомним, что интегральное исчисление было разработано еще в XVII в.

Рис.1. Схема опыта Бюффона.

Опыты Фокса

Много свободного времени было в 1876 г. у героя гражданской войны в США капитана О.С.Фок-са, долго лечившегося в госпитале от полученных в сражениях ран. В таблице даны результаты трех его экспериментов (в двух последних он перед каждым броском иглы поворачивал плоскость).

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

В третьем эксперименте Фокс использовал иглу, длина которой настолько превышала расстояние между параллельными линиями, что она могла пересечь сразу три из них. Заметим, что формула (2) справедлива и в этом случае, поскольку число пересечений m (при заданном числе попыток и неизменном расстоянии между прямыми линиями) пропорционально длине иглы, а значит отношение l/m, фигурирующее в (2), от длины иглы не зависит. Зато число учитываемых событий — пересечений — существенно возрастает (в рассматриваемом случае — почти в четыре раза). Совершив всего 590 бросков, Фокс насчитал аж 939 пересечений. Потому, затратив примерно столько же усилий, что и в первых двух опытах, он получил более точное значение числа п. Вообще, погрешность о метода Монте-Карло тем меньше, чем больше число испытаний п:

(3)

уп

Рассмотрим чуть подробнее, как можно использовать метод Монте-Карло для вычисления определенного интеграла

X2

I = 1 ^х^х (4)

Xl

функции f(x). Вычислить значение интеграла этой функции — значит найти площадь S под соответствующим ей графиком (см. рис.2).

Пх)

Рис.2. Определение значения интеграла методом Монте-Карло.

Заключаем кривую в прямоугольник площадью So и случайным образом «разбрасываем» внутри него n точек. Пусть под кривой оказалось m из них. Естественно предположить, что доля m/n точек, попавших под кривую, должна быть примерно равна отношению площадей S/So, т.е. I ~ (m/n)S. Точность вычисления интеграла при этом тем выше, чем больше число n исходных случайных точек.

На практике для вычисления одномерных интегралов вида (4) метод Монте-Карло, конечно, не применяют: для этого есть более точные методы — так называемые квадратурные формулы. Однако при переходе к многократным интегралам положение меняется: квадратурные формулы становятся очень сложными и требуют громадного объема вычислений, а метод Монте-Карло остается прежним. Единственное изменение состоит в том, что при вычислении N-кратного интеграла точки случайным образом распределяются не по двумерной площади, а внутри (N + 1)-мерного объема. При этом оказывается, что при одинаковом количестве операций метод Монте-Карло дает гораздо более точное значение кратного интеграла, чем ква

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком