Алгоритм Ванга и Ландау , предложенный Фугао Вангом и Дэвидом П. Ландау , [1] представляет собой метод Монте-Карло , предназначенный для оценки плотности состояний системы. Метод выполняет немарковское случайное блуждание для построения плотности состояний, быстро посещая весь доступный энергетический спектр. Алгоритм Ванга и Ландау — важный метод получения плотности состояний, необходимой для выполнения мультиканонического моделирования .
Алгоритм Ванга – Ландау можно применить к любой системе, которая характеризуется функцией стоимости (или энергии). Например, его применяли для решения числовых интегралов [2] и сворачивания белков. [3] [4] Выборка Ванга – Ландау связана с алгоритмом метадинамики . [5]
Алгоритм Ванга и Ландау используется для получения оценки плотности состояний системы, характеризуемой функцией стоимости. Он использует немарковский случайный процесс , который асимптотически сходится к мультиканоническому ансамблю . [1] (То есть к алгоритму Метрополиса – Гастингса с распределением выборки, обратным плотности состояний) Основным следствием является то, что такое распределение выборки приводит к моделированию, в котором энергетические барьеры невидимы. Это означает, что алгоритм посещает все доступные состояния (благоприятные и менее благоприятные) гораздо быстрее, чем алгоритм Метрополиса. [6]
Рассмотрим систему, определенную в фазовом пространстве , и функцию стоимости E (например, энергию), ограниченную спектром , которому соответствует плотность состояний , которую необходимо оценить. Оценщик есть . _ Поскольку алгоритм Ванга и Ландау работает в дискретных спектрах, [1] спектр делится на N дискретных значений с разницей между ними , таких что
Учитывая этот дискретный спектр, алгоритм инициализируется следующим образом:
Затем алгоритм выполняет мультиканоническое ансамблевое моделирование: [1] случайное блуждание Метрополиса – Гастингса в фазовом пространстве системы с распределением вероятностей, заданным и вероятностью предложения нового состояния, заданной распределением вероятностей . Сохраняется гистограмма посещенных энергий. Как и в алгоритме Метрополиса–Гастингса, выполняется этап принятия предложения и заключается в (см. обзор алгоритма Метрополиса–Гастингса ):
После каждого шага принятия предложения система переходит к некоторому значению , увеличивается на единицу и выполняется следующее обновление:
Это решающий шаг алгоритма, и именно он делает алгоритм Ванга и Ландау немарковским: теперь случайный процесс зависит от истории процесса. Следовательно, в следующий раз, когда государству с такой же энергией поступит предложение , оно, скорее всего, будет отклонено; в этом смысле алгоритм заставляет систему одинаково посещать весь спектр. [1] В результате гистограмма становится все более плоской. Однако эта неравномерность зависит от того, насколько хорошо вычисленная энтропия приближена к точной энтропии, которая, естественно, зависит от значения f. [7] Чтобы все лучше и лучше аппроксимировать точную энтропию (и, следовательно, плоскостность гистограммы), f уменьшается после M шагов принятия предложения:
Позже было показано, что обновление f путем постоянного деления на два может привести к ошибкам насыщения. [7] Небольшая модификация метода Ванга и Ландау, позволяющая избежать этой проблемы, заключается в использовании коэффициента f , пропорционального , где пропорционально количеству шагов моделирования. [7]
Мы хотим получить DOS для потенциала гармонического осциллятора .
Аналитический DOS определяется выражением:
выполнив последний интеграл, получим
В общем, DOS для многомерного гармонического осциллятора будет задаваться некоторой степенью E , показатель степени будет функцией размерности системы.
Следовательно, мы можем использовать простой потенциал гармонического осциллятора для проверки точности алгоритма Ванга – Ландау, поскольку мы уже знаем аналитическую форму плотности состояний. Поэтому мы сравниваем оценку плотности состояний, полученную алгоритмом Ванга–Ландау, с .
Ниже приведен пример кода алгоритма Ванга-Ландау на Python , где мы предполагаем, что используется симметричное распределение предложений g:
Код рассматривает «систему», которая является базовой изучаемой системой.
текущаяЭнергия = система . Случайная конфигурация () # Случайная начальная конфигурацияв то время как f > эпсилон : система . OfferConfiguration () # Предлагается предлагаемая конфигурация предложенная Энергия = система . предложенная энергия () # Вычисленная энергия предлагаемой конфигурации if random () < exp ( entropy [ currentEnergy ] - entropy [ предложенная энергия ]): # Если принято, обновите энергию и систему: currentEnergy = предложенная энергетическая система . AcceptProposeConfiguration () else : # Если система отклонена . отклонить предложенную конфигурацию () H [ currentEnergy ] += 1 энтропия [ currentEnergy ] += f if isFlat ( H ): # isFlat проверяет, является ли гистограмма плоской (например, плоскостность 95%) H [:] = 0 f *= 0,5 # Уточняем параметр f
Молекулярная динамика (МД) обычно предпочтительнее метода Монте-Карло (МК), поэтому желательно иметь алгоритм МД, включающий основную идею WL для выборки с плоской энергией. Этот алгоритм — статистическая температурная молекулярная динамика (STMD), разработанный [8] Джагилом Кимом и др. в Бостонском университете.
Важный первый шаг был сделан с помощью алгоритма статистической температуры Монте-Карло (STMC). WLMC требует значительного увеличения количества энергетических ячеек в зависимости от размера системы, что вызвано непосредственной работой с плотностью состояний. STMC сосредоточен на интенсивной величине, статистической температуре, где E - потенциальная энергия. В сочетании с соотношением , где мы установили , правило WL для обновления плотности состояний дает правило для обновления дискретизированной статистической температуры,
где где - размер элемента энергии и обозначает текущую оценку. Мы определяем f как в [1] коэффициент >1, который умножает оценку DOS для i-го интервала энергии, когда система посещает энергию в этом интервале.
Подробности приведены в Ref. [8] При первоначальном предположении для и диапазоне, ограниченном между и , моделирование происходит так же, как в WLMC, со значительными численными различиями. Интерполяция дает континуальное выражение оценки после интегрирования ее обратного значения, что позволяет использовать более крупные элементы разрешения по энергии, чем в WL. При оценке вероятности принятия в пределах одного и того же энергетического интервала доступны разные значения . Когда колебания гистограммы составляют менее 20% от среднего значения, значение уменьшается в соответствии с .
STMC сравнивали с WL для модели Изинга и жидкости Леннарда-Джонса. При увеличении размера энергетического бункера STMC получает те же результаты в значительном диапазоне, в то время как производительность WL быстро ухудшается. STMD может использовать меньшие начальные значения для более быстрой сходимости. В целом, STMC требуется меньше шагов для получения результатов того же качества.
Теперь рассмотрим основной результат — STMD. Он основан на наблюдении, что в стандартном МД-моделировании при температуре с силами, полученными из потенциальной энергии , где обозначает все положения, вес выборки для конфигурации равен . Более того, если силы получены из функции , вес выборки равен .
Для плоской выборки энергии пусть эффективный потенциал будет энтропийной молекулярной динамикой. Тогда вес . Поскольку плотность состояний равна , их произведение дает плоскую выборку энергии.
Силы рассчитываются как
где обозначает обычную силу, полученную из потенциальной энергии. Масштабирование обычных сил с помощью коэффициента дает плоскую выборку энергии.
STMD начинается с обычного алгоритма MD при константе и V. Силы масштабируются, как указано, а статистическая температура обновляется на каждом временном шаге с использованием той же процедуры, что и в STMC. Поскольку симуляция сходится к выборке плоской энергии, текущая оценка сходится к истинному значению . Технические детали, включая меры по ускорению конвергенции, описаны в [8] и. [9]
В STMD температура называется кинетической, так как она контролирует скорости как обычно, но не входит в конфигурационную выборку, что необычно. Таким образом, STMD может исследовать низкие энергии с помощью быстрых частиц. Любое каноническое среднее значение можно рассчитать с помощью повторного взвешивания, но статистическую температуру можно получить сразу же, без дополнительного анализа. Это чрезвычайно ценно для изучения фазовых переходов. В конечных наносистемах имеется особенность, соответствующая каждому «субфазовому переходу». Для достаточно сильного перехода равновеликая конструкция на S-петле дает температуру перехода.
STMD был усовершенствован группой BU [9] и применен ими и другими к нескольким системам. Д. Стелтер признавал, что, несмотря на наш упор на работу с интенсивными объемами, она является обширной. Однако это трудоемкий процесс, и процедура, основанная на неравномерности гистограммы, заменяется сокращением пополам через каждое фиксированное количество временных шагов. Это простое изменение делает STMD полностью интенсивным и существенно повышает производительность больших систем. [9] Кроме того, конечное значение интенсивности является константой, определяющей величину ошибки в конвергентной системе и не зависящей от размера системы. STMD реализован в LAMMPS как исправление stmd.
STMD особенно полезен для фазовых переходов. Информацию о равновесии невозможно получить с помощью канонического моделирования, поскольку для возникновения перехода необходимо переохлаждение или перегрев. Однако прогон STMD позволяет получить плоскую выборку энергии с естественным развитием нагрева и охлаждения, не попадая в состояние низкой или высокой энергии. Совсем недавно он был применен к переходу жидкость/гель [9] в наночастицах, обернутых липидами.
Обмен репликами STMD [10] также был представлен группой BU.