Proof-Planning. Übersicht Einleitung Proof-Planning Bridge-Taktiken Repräsentation des Gegenspiels...
-
Upload
ekkehardt-kempfer -
Category
Documents
-
view
105 -
download
0
Transcript of Proof-Planning. Übersicht Einleitung Proof-Planning Bridge-Taktiken Repräsentation des Gegenspiels...
Proof-Planning
Übersicht
Einleitung
Proof-Planning
Bridge-Taktiken
Repräsentation des Gegenspiels
Planungsalgorithmus
Suchen mit Histories
Einleitung
• Aspekte des FINESSE-Systems bezüglich Proof-Planning
– Verwenden von Taktiken
– Weitere Features :
• vereinfachte Repräsentation
• History-Mechanismus
=> Effizienzsteigerung
Proof-Planning
• entwickelt von der Mathematical Reasoning Group in Edinburgh
• versuchten Theoreme via Regeln in Teilprobleme zu zerlegen und so auf Axiome zurückzuführen
• für jedes Bridge-Spiel erhält man analogen Baum– Regeln entsprechen Bridge-Taktiken
– Erreichen der Axiome analog zu ‚alle Karten gespielt‘ bzw. ‚keine Taktik anwendbar‘
and and
and and
Axiom
Axiom
AxiomAxiom
AxiomAxiom
Theorem
Regeln/Formeln
Teilprobleme
Blatt
Blatt
Blatt Blatt
Blatt Blatt
Spielzustand
Gespielte Karten des Alleinspielers
Gegenspiel
Bridge-Taktiken
• Grundoperation ist das Spielen einer einzelnen Karte
• Sehr viele Kartenkombinationen in einem Stich möglich
• Ziel: Reduzierung des Spielbaums durch Beschränkung auf eine Menge von allgemeinen Bridge-Taktiken
• Betrachte Einfarb-Probleme ohne Trumpf aus Sicht des Alleinspielers (Süd)
Kassieren
• Klein zu einer hohen Karte oder diese selbst ausspielen
N
W
S
O
x
A
N
W
S
O
K D
A x x
N
W
S
O
D B
A K
Schneiden
• Literatur: viele verschiedene Arten des Schneidens
• aber: 4 Typen des Schneidens genügen für alle Beispiele
• Schnittkarte: eine Karte, mit der man einen Stich machen möchte, obwohl der Gegner noch eine höhere hat
• Deckkarte: eine hohe Karte
Schneiden (1)
• Schnittkarte und mind. eine Deckkarte in einer Hand
• es wird klein von der anderen Hand ausgespielt
N
W
S
O
A D
x
Schneiden (2)
• Schnittkarte wird ausgespielt
• Deckkarte in der Hand gegenüber
• Schnittkarte kommt mind. aus 2er-Sequenz
N
W
S
O
K 4 2
A B 10
N
W
S
O
A K 9 4
B 10 2
N
W
S
O
A K 4 2
B 6 3
Schneiden (3)
• keine Deckkarte erforderlich
• es wird klein zur Schnittkarte gespielt
N
W
S
O
K D 2
8 5 3
Schneiden (4)
• einzelne Schnittkarte wird ausgespielt, um anschließend eine Situation vom Typ 1 oder 2 zu schaffen
• wichtig: nicht äquivalent zu zwei Schnitten der Typen 1-3
N
W
S
O
K 5 4
A B 9
N
W
S
O
K 9 8
A B 3
Ducken
• beide Hände spielen in einem Stich eine kleine Karte
• im ersten Beispiel : Hoffnung auf single König bei Ost (eine von 28 Möglichkeiten)
N
W
S
O
A D x
x x
N
W
S
O
A D 7 5 4 2
6 3
Top-Sequenzen
• es wird in jedem Stich eine Karte der Sequenz gelegt
• Sequenz in einer Hand oder auf beide Hände verteilt
N
W
S
O
K D B
9 5 2
N
W
S
O
D 8 3
K B 5
N
W
S
O
B 10 7 3
D 9 4 2
Repräsentation des Gegenspiels
• Beispiel:
• n = Anzahl der Karten in Gegnerhand
• fehlende Karten (n = 7): A K B 8 7 6 3
• mögliche Spielkombinationen s : n(n-1) + 2n = n(n+1)
• hier : s = 56
N
W
S
O
D 10 9
5 4 2
Sequenzen
• Karten einer Sequenz werden als äquivalent angesehen
• n1 = Anzahl Sequenzen der Länge 1
• n2 = Anzahl Sequenzen mit größerer Länge
• mögliche Spielkombinationen s :
• n2(n1+n2) + n1(n1+n2-1) + 2(n1+n2) = (n1+n2+2)(n1+n2) - n1
• hier : s = 22
Kritische Karten
• höhere, entscheidende Karten der Gegner, die eventuell einen Stich machen
• restliche Karten werden als klein betrachtet
• Im vorigen Beispiel– Sequenz der Länge 2 : A K
– Sequenz der Länge 1 : B
– Sequenz der Länge 4 : 8 7 6 3
• damit : s = 14
Planungsalgorithmus
• sucht in jedem Spielzustand nach passenden Taktiken
• konstruiert einen Baum von Taktiken
• mehrere Taktiken zur Auswahl => Ordnen nach Heuristiken
• Im FINESSE-System sind Taktiken repräsentiert durch– finesse (Type, Player, Card, Suit)
– cash (Card, Suit)
– duck (Suit)
– sequence (Card, Suit)
• Taktiken anwendbar, wenn Vorbedingungen erfüllt sind
• Beispiel : Typ-1-Schneiden
• mind. ein Verlierer
• A und B in gleicher Hand
• kleine Karte gegenüber von A B
• nicht bekannt, dass West chicane
N
W
S
O
A B 7
4 2
Suchen mit Histories
• Zustände im Spielbaum, die mehrfach auftreten, brauchen nicht mehrfach untersucht werden
• gleiche Zustände befinden sich immer auf derselben Ebene
• Einführung einer History-Liste auf jeder Ebene :
– Suchergebnis bzw. Plan eines Zustands wird in entsprechender Liste abgelegt
• Implementation mittels Hash-Tabellen
Bis zu welcher Ebene sind Histories sinnvoll ?
• Branching-Faktor b, Ebene i
• kein doppelter Zustand bis zur Ebene i führt zu 1+2+...+(bi-1) = ½(bi-1)bi ~ b2i/2 Vergleichen
• Tiefe des Baums d
• durchschnittliche Kosten für einem Zustand m (bei FINESSE 15 mal so groß wie ein Vergleich)
• Anteil der doppelt vorkommenden Zustände auf i-ten Ebene αi (bei FINESSE ungefähr 1/30)
• Einsparung für einen in History-Liste gefundenen Zustand ist m bd-i
• Einsparung bis zur i-ten Ebene : αi bi m bd-i = αi m bd
αi m bd > b2i/2
2 αi m bd > b2i
ln(2 αi m) + d ln(b) > 2i ln(b)
d ln(b) > 2i ln(b)
d/2 > i
• Also : Histories lohnen in der oberen Hälfte des Spielbaums