Eine Problematik des ,,monotonen'' CFTP-Algorithmus, der in den
Abschnitten 3.5.3 und 3.5.4 diskutiert
worden ist, besteht darin, dass
sämtliche Innovationen
gespeichert werden müssen, wobei die in
(95) definierte ,,monotone'' CFTP-Kopplungszeit ist
mit
Deshalb schlug David Wilson im Jahre 2000 die folgende
Modifikation des CFTP-Algorithmus mit dem Ziel vor, den
erforderlichen Speicherbedarf weiter zu verringern.
Die Hauptidee der Modifikation besteht darin, die in den
Abschnitten 3.5.2 - 3.5.4 betrachtete
Rückwärtskopplung
mit Hilfe einer Folge von unabhängigen und identisch verteilten
,,Vorwärts-Simulationsblöcken'' darzustellen, wobei
die (potentiellen) ,,Startzeitpunkte''
der
Markov-Kette
auch zufällig gewählt werden können.
Dabei seien die Innovationen-Folgen
mit Wahrscheinlichkeit
identisch,
d.h., es wird lediglich eine Folge
von unabhängigen
und gleichverteilten Zufallsvariablen betrachtet und
gesetzt.
Außerdem wird vorausgesetzt, dass die in (87) und
(90)
definierten Markov-Ketten
bzw.
so beschaffen sind,
dass die (Vorwärts- bzw. Rückwärts-) Kopplungszeiten
bzw.
jeweils mit Wahrscheinlichkeit endlich sind.
Wir betrachten nun Vorwärts-Simulationsblöcke mit der (zunächst
deterministischen) Länge für ein :
Für beliebige bzw.
sei
und
Außerdem betrachten wir für jedes das Ereignis
wobei die Blocklänge so gewählt sei, dass
(105)
Bei Start mit ist die Read-Once-Modifikation des
CFTP-Algorithmus dann gegeben durch:
Simuliere
über
und
für
.
Setze und . Falls das Ereignis eingetreten
ist, fahre fort in Schritt 3, anderenfalls kehre zu Schritt
1 zurück.
Wiederhole die Schritte 1 und 2 bis das Ereignis
für ein
eintritt und gib den
Wert von
für ein beliebiges
als Realisierung gemäß
aus.
Beispiel
Für Zustände betrachten wir die (irreduzible und
aperiodische) Übergangsmatrix
Für die Blocklänge und für die -gleichverteilten
Pseudozufallszahlen
ergibt sich dabei der folgende Simulationslauf:
Abbildung 7:
Read-Once-Algorithmus
Beachte
Weil die Simulationsblöcke und damit auch die Ereignisse
unabhängig sind und weil
gilt,
liefern die ersten Vorwärts-Simulationsblöcke des oben
beschriebenen Algorithmus, wenn sie in umgekehrter Reihenfolge
betrachtet werden, insbesondere das in Abschnitt 3.5.2
diskutierte Coupling-from-the-Past.
Hieraus ergibt sich, dass
für jedes
.
Der letzte, d.h. der
-te Vorwärts-Simulationsblock
dient lediglich zur Definition einer Stoppregel.
Die Read-Once-Modifikation des CFTP-Algorithmus terminiert mit
Wahrscheinlichkeit ,
wenn die Bedingung (105) erfüllt ist, d.h., wenn
.
Für isotone Update-Funktionen gilt dies, falls , wobei
eine natürliche Zahl mit