16.2.   АЛГОРИТМ МЕТРОПОЛИСА

Как можно промоделировать систему N частиц, находящихся в объеме V прн постоянной температуре Т ? Поскольку мы умеем генерировать только ограниченное число m из полного числа М конфигураций, то можно надеяться получить оценку среднего значения <А> из выражений

где Es и As обозначают полную энергию и значение физической величины А в конфигурации s. Напрашивается простейшая процедура Монте-Карло, состоящая в том, что генерируется случайная конфигурация, вычисляются Es, As и произведение Ajexp (-&EJ и подсчнтывается соответствующий вклад этой конфигурации в суммы (16.5). Однако каждая такая конфигурация была бы, по-видимому, очень маловероятна и поэтому давала бы малый вклад в сумму. Вместо этого, как мы увидели в целом ряде задач, нужно пользоваться методом существенной выборки и генерировать конфигурации в соответствии с функцией распределения вероятностей тг^. Поскольку усреднение будет проводиться по m конфигурациям смещенной выборки, мы для исключения этого смещения должны взвешивать каждую конфигурацию с множителем l/ns-

Внимательный анализ формулы (16.6) убедит вас в том, что в качестве v.s целесообразно выбрать само распределение Больцмана, т.е.

В результате такого выбора тг^ величину <А> можно записать в виде

Выбор ns в виде (16.7) предложен Метрополисом и др. (см. список литературы).

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

Формируем начальную конфигурацию.

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

Вычисляем АЕ, т.е. изменение энергии системы, обусловленное произведенным пробным изменением конфигурации.

Если АЕ меньше или равно нулю, то принимаем новую конфигурацию и переходим к шагу 7.

Если АЕ положительно, вычисляем «вероятность перехода» W = = exp(-LE/kBT).

Генерируем  случайное число  г  в  интервале  (0, 1).

Если г £ W, то новую конфигурацию принимаем, в противном случае сохраняем предыдущую конфигурацию.

Определяем значения требуемых физических величин.

Повторяем шаги 1—7 для получения достаточного числа конфигураций или «испытаний».

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

Описанные выше шаги можно интерпретировать как случайное блужда-ние. Будем считать различные конфигурации «точками», снабженнымипорядковыми номерами i = 1, 2, 3    и рассмотрим случайное блуж-дание по этим точкам. Шаги 2 —6 дают условную вероятность того, чтов «момент времени» t +1 прохожий будет находиться в точке i приусловии, что в момент времени / он был в точке /. Поскольку нужновычислять только отношение P(i)/P(i), нормировать P(i) на единицунет необходимости. Заметим, что конфигурации генерируются с вероят-ностью, пропорциональной требуемой вероятности, и поэтому все сред-ние   превращаются   в  арифметические  средние,   как   в   формуле (16.8).

Поскольку, однако, коэффициент пропорциональности неизвестен, то оценить этим способом сумму по состояниям Z невозможно.

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

Хотя мы выбираем а качестве тг$ распределение Больцмана, возможныи   другие   варианты,    например   тг^ = ш exp     Принятие другого

распределения, т.е. с не постоянным значением w , в некоторых задачах оказывается полезным (см. список литературы). Кроме того, указанный выше выбор вероятности перехода W не является единственным приводящим к распределению Больцмана в асимптотическом пределе. Можно показать, что единственное требование заключается в том, чтобы W удовлетворяло принципу «детального равновесия»:

где W(l —»2) — вероятность перехода в единицу времени системы из конфигурации 1 в конфигурацию 2.