institut für softwaretechnologie 1 eca graz, ss 2010 chomp andreas genser - christian hartbauer -...
TRANSCRIPT
Institut für Softwaretechnologie
1
ECA Graz, SS 2010 Chomp
Chomp
Andreas Genser - Christian Hartbauer - Christian Rauer - Manuel Riedl
Sabine Schneider - Max Stricker - Kurt Weingartmann
Enumerative Combinatoric Algorithms
Institut für Softwaretechnologie
2
ECA Graz, SS 2010 Chomp
Inhalt
Spielbeschreibung
Gewinnstrategie
Beobachtete Situationen
Implementierung
Institut für Softwaretechnologie
3
ECA Graz, SS 2010 Chomp
Spielbeschreibung (1)
• Rechteckiges Spielfeld, NxM Felder
• Analogie zu Schokoladentafel: „to chomp“ (abbeißen)
• Eine Ecke vergiftet (zu Beginn definiert)
• Ziel: Gegner dazu bringen, vergiftetes Stück zu nehmen
Institut für Softwaretechnologie
4
ECA Graz, SS 2010 Chomp
Spielbeschreibung (2)
• Abwechselnd Blöcke beliebiger Größe entfernen
• Alle Felder rechts/über ausgewähltem Feld
Institut für Softwaretechnologie
5
ECA Graz, SS 2010 Chomp
Gewinnstrategie
• Annahme: 1. Spieler kann immer gewinnen
• Beweis durch Widerspruch:– Spieler 1 entfernt nur 1 Eck (Losing Move?)– Spieler 2 macht seinen Zug (Winning Move?)– Dann hätte Spieler 1 bereits diesen Zug machen können
– => Spieler 1 hat zu Beginn eine Gewinnstrategie
Institut für Softwaretechnologie
6
ECA Graz, SS 2010 Chomp
Gewinnstrategie
• Annahme: 1. Spieler kann immer gewinnen
• Beweis durch Widerspruch:– Spieler 1 entfernt nur 1 Eck (Losing Move?)– Spieler 2 macht seinen Zug (Winning Move?)– Dann hätte Spieler 1 bereits diesen Zug machen können
– => Spieler 1 hat zu Beginn eine Gewinnstrategie
Optimale Strategie ist bis heute jedoch nicht bekannt
Institut für Softwaretechnologie
7
ECA Graz, SS 2010 Chomp
Beobachtete Situationen
• Einige Winning bzw. Losing Moves bekannt:
– Spielfelder der Dimension 1xN– Spielfelder der Dimension 2xN– Spielfelder der Dimension 3xN– Quadratische Spielfelder NxN
Institut für Softwaretechnologie
8
ECA Graz, SS 2010 Chomp
• Ausgangstellung
• Siegeszug Spieler 1
1xN Spielfelder
Institut für Softwaretechnologie
9
ECA Graz, SS 2010 Chomp
Nur 1 möglicher Siegeszug bei 1xN
• Anderer Spielzug Spieler 1
• Siegeszug Spieler 2
Institut für Softwaretechnologie
10
ECA Graz, SS 2010 Chomp
2xN Spielfelder
• Ausgangstellung
• Siegeszug Spieler 1
Institut für Softwaretechnologie
11
ECA Graz, SS 2010 Chomp
Beweis für Siegeszug 2xN
• Mögliche Spielzüge Spieler 2
Ausgangstellung
Ausgangsstellung
Institut für Softwaretechnologie
12
ECA Graz, SS 2010 Chomp
Nur 1 möglicher Siegeszug bei 2xN
• Anderer Spielzug Spieler 1
• Siegeszug Spieler 2
Institut für Softwaretechnologie
13
ECA Graz, SS 2010 Chomp
• Siegeszug Spieler 1
NxN Spielfelder
• Ausgangsstellung
Institut für Softwaretechnologie
14
ECA Graz, SS 2010 Chomp
Das symmetrische „L“ (1)
Institut für Softwaretechnologie
15
ECA Graz, SS 2010 Chomp
Das symmetrische „L“ (2)
Institut für Softwaretechnologie
16
ECA Graz, SS 2010 Chomp
Das symmetrische „L“ (3)
Institut für Softwaretechnologie
17
ECA Graz, SS 2010 Chomp
Das symmetrische „L“ (4)
Tweedle Dum & Tweedle Dee - Prinzip
Institut für Softwaretechnologie
18
ECA Graz, SS 2010 Chomp
Nur 1 möglicher Siegeszug bei NxN
• Anderer Spielzug • Siegeszug Spieler 2
Institut für Softwaretechnologie
19
ECA Graz, SS 2010 Chomp
Beobachtete Situationen: 3xN
• Keine allgemeine mathematische Methode bekannt:offene Forschungsarbeit
• Analyse: automatisierte Programme
• 2 verschiedene Möglichkeiten...
Institut für Softwaretechnologie
20
ECA Graz, SS 2010 Chomp
Beobachtete Situationen: 3xN
• Möglichkeit 1:Entferne 2xL, mit L maximal
Institut für Softwaretechnologie
21
ECA Graz, SS 2010 Chomp
Beobachtete Situationen: 3xN
• Möglichkeit 2:Entferne 1xL
Institut für Softwaretechnologie
22
ECA Graz, SS 2010 Chomp
Beobachtete Situationen: 3xN
Institut für Softwaretechnologie
23
ECA Graz, SS 2010 Chomp
Implementierung (1)
• Trade-Off: Speicher-Zeit
• 2 Ansätze:
– Speicherkosten: besser bei langgezogenen Spielfeldern
– Zeitkosten: besser bei (annähernd) quadratischen Spielfeldern
Institut für Softwaretechnologie
24
ECA Graz, SS 2010 Chomp
Implementierung (2)
• Codierung:
0 0
1 0 0
1
1 0
1 0 0 0 0 0
1
0 0 1 0 0 1 1 0 1 0 0 0 0 0 1
Institut für Softwaretechnologie
25
ECA Graz, SS 2010 Chomp
Implementierung (3)
• Elemente/Zeile als Code• Codierung:
• Code: (10,5,4,4,2)
Institut für Softwaretechnologie
26
ECA Graz, SS 2010 Chomp
Symmetrie
• Diagonal spiegeln:
Institut für Softwaretechnologie
27
ECA Graz, SS 2010 Chomp
Vielen Dank für die Aufmerksamkeit
Institut für Softwaretechnologie
28
ECA Graz, SS 2010 Chomp
Beispiel
1 2 3 4 5 6 7 8 9 10
FEDCBA