Umdrehen von mehr als einem Spin in Metropolis Monte Carlo Algorithmen

In Gittersystemen wie dem Ising-Modell oder Spingläsern funktioniert die Standard-Monte-Carlo-Simulation mit dem Metropolis-Algorithmus, indem sie einen einzelnen Spin-Flip vorschlägt und dann den Vorschlag mit der durch den Algorithmus selbst gegebenen Wahrscheinlichkeit annimmt oder ablehnt.

Ich würde gerne wissen, ob sich etwas ändert, wenn sich der Vorschlag von einem einzelnen Spin-Flip zu einer Gruppe von Spins ändert (bei jedem Schritt zufällig und unabhängig ausgewählt, aber in der Anzahl festgelegt).

Mit anderen Worten, angenommen, wir schlagen einen Flip von N Drehungen vor. Dann messen wir die neue Energie und verwenden dann die Standard-Metropolis-Wahl für die Abnahme.

  1. Ändert sich dadurch die Gleichgewichtswahrscheinlichkeitsverteilung?
  2. Wenn (1) ja ist, wird der Algorithmus dadurch schneller?
Siehe Swendsen-Wang- und Wolff-Cluster-Flip-Algorithmen.
Nach dem, was ich von den beiden Algorithmen bekomme, unterscheiden sie sich stark von dem in der Frage. Sollte ich davon ausgehen, dass der Metropolis-Algorithmus daher nicht so verallgemeinert werden kann?

Antworten (1)

Die kurzen Antworten auf Ihre Frage sind

  1. Nein, der von Ihnen beschriebene Algorithmus ändert die Gleichgewichtsverteilung nicht und ist daher korrekt. Natürlich müssen Sie darauf achten, die Flipping Spins unabhängig und zufällig zu wählen, wie Sie sagen. Der entscheidende Punkt ist, dass die Wahrscheinlichkeit für die Auswahl des Rückwärts-Probezugs dieselbe ist wie die Wahrscheinlichkeit für die Auswahl des Vorwärts-Probezugs, um ein detailliertes Gleichgewicht zu erreichen. Aber es ist ein gültiges Beispiel für eine Metropolis-Methode.
  2. Ich denke, du meinst "wenn (1) nein ist ... ", nicht "wenn (1) ja ist ... ". Das heißt, wenn die Methode gültig ist .... Im Allgemeinen wird der grobe Multi-Spin-Flip nicht schneller sein: Die Gesamtenergieänderung, die in der Metropolis-Formel erscheint, wird in den meisten Fällen größer sein, und Probezüge werden häufiger abgelehnt. Also tun wir das eher nicht.

Die beiden im Kommentar von JamalS erwähnten Cluster-Bewegungsalgorithmen sind clevere Methoden, um Cluster von Spins für einen Test-Flip zu konstruieren, der unter Umständen schneller sein wird, insbesondere in der Nähe des kritischen Punkts. Sie sind komplizierter als die von Ihnen diskutierte Methode: Die Cluster sind verbundene Sätze benachbarter Spins, die auf probabilistische Weise konstruiert werden.