Top Banner
Seminar über Algorithmen Sokoban ist PSPACE- vollständig
76

Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Apr 05, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Seminar über Algorithmen

Sokoban ist PSPACE-vollständig

Page 2: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Inhalt

Einführung in Sokoban Vorstellen des Sokoban-Problems Das Sokoban-Problem ist PSPACE-

vollständig, via– Sokoban-Problem liegt in PSPACE– Sokoban-Problem ist PSPACE-schwer

Page 3: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban

Das Spielfeld besteht aus: Pusher

Page 4: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban

Das Spielfeld besteht aus: Pusher Kisten

Page 5: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban

Das Spielfeld besteht aus: Pusher Kisten Kistenzielfeldern

Page 6: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban

Das Spielfeld besteht aus: Pusher Kisten Kistenzielfeldern Feldern

Page 7: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban

Das Spielfeld besteht aus: Pusher Kisten Kistenzielfeldern Feldern Wänden

Page 8: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Mögliche Pusher-Bewegungen

Page 9: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Mögliche Pusher-Bewegungen

Nach oben

Page 10: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Mögliche Pusher-Bewegungen

Nach oben Nach unten

Page 11: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Mögliche Pusher-Bewegungen

Nach oben Nach unten Nach links

Page 12: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Mögliche Pusher-Bewegungen

Nach oben Nach unten Nach links Nach rechts

Page 13: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Pushen

Genau eine Kiste kann in Bewegungs-richtung verschoben werden

Page 14: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Pushen

Genau eine Kiste kann in Bewegungs-richtung verschoben werden

Das neue Feld der Kiste muß frei sein

Page 15: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Ziel des Spiels

Jede Kiste muß auf ein Kistenzielfeld gebracht werden

Page 16: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Ziel des Spiels

Jede Kiste muß auf ein Kistenzielfeld gebracht werden

Page 17: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban-Problem

Ist eine Konfiguration lösbar? Ja, da eine Folge von Pusher-Bewegungen

existiert, die zu einer Lösung führt. Nein, da ein Argument für die Unlösbarkeit

existiert.

Page 18: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Beispielargument für einen unlösbaren Fall

Die Kiste kann nicht mehr bewegt werden und steht auf keinem Zielfeld

Page 19: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Beispielargument für einen unlösbaren Fall

Die Kiste kann bewegt werden, aber nicht mehr auf ein Zielfeld

Page 20: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Beispielargument für einen unlösbaren Fall

Beide Kiste können nicht mehr bewegt werden. Die linke ist auf keinem Zielfeld

Page 21: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban liegt in NSPACE(n)

Nicht-deterministische Turing-Maschine rät Zug um Zug

Es gibt keine Lösung falls nach Schritten keine Lösung gefunden ist

Benötigt linearen Platzbedarf für die Konfiguration

k

nkn *)(

Page 22: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban liegt in PSPACE

Savitch´s theorem:

Daraus folgt:

Also: Sokoban liegt in PSPACE

))(())((

:gilt )(mit :Funktion jedeFür 2 nfSPACEnfNSPACE

nnfNNf

PSPACEnSPACEnNSPACE )()( 2

Page 23: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Sokoban ist PSPACE-schwer

Reduktion vom Entscheidungsproblem für Turing-Maschinen mit linear beschränktem Band

Page 24: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Reduktion

Turing-Maschine mit Wort → Sokoban Rätsel

Turing-Maschine akzeptiert Wort

Sokoban-Rätsel ist lösbar

Page 25: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Einbahnstraße

Page 26: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Einbahnstraße

Der Weg von A nach B

Page 27: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Einbahnstraße

Der Weg von A nach B Das Bauteil ist

wieder im Ausgangszustand

Kiste ist auf Zielfeld

Page 28: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Einbahnstraße

Felder, an denen die Kiste nie stehen darf

Kiste ist im Bauteil gefangen und keine andere kommt zum Zielfeld

Page 29: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Einbahnstraße

Kein Weg führt von B nach A in einer Lösung

Page 30: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Einbahnstraße

Kein Weg führt von B nach A in einer Lösung

Page 31: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Einbahnstraße

Kein Weg führt von B nach A in einer Lösung

Page 32: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Heimkehrer

Page 33: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Heimkehrer

Felder, an denen keine Kisten stehen dürfen– Rosa ist durch die

jeweils andere Kiste blockiert

Keine Kiste kann hinein bzw. heraus

Page 34: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Heimkehrer

Die Blockierung des rosanen Feldes ist durch die Verschiebung aufgehoben

Page 35: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Heimkehrer

Pusher am Ziel B Kisten sind nicht

auf Zielfeldern

Page 36: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Heimkehrer

Page 37: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Heimkehrer

Das Bauteil ist wieder im Ausgangszustand

Kisten befinden sich auf den Zielfeldern

Page 38: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Page 39: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Zugang zum Mittelteil über– Eingang A ist

blockiert

Page 40: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Zugang zum Mittelteil über– Eingang A ist

blockiert– B ist Ausgang

Page 41: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Zugang über Heimkehrer

Page 42: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Verlassen über B nicht möglich– Heimkehrer

enthält offene Kisten

– Alle Zugänge zum Mittelteil blockiert

Page 43: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Öffnen der Blockierung

von A

Page 44: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Verlassen des Mittelteils nur durch R

Page 45: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Eingang A nicht mehr blockiert

Page 46: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Page 47: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Page 48: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Durchlauf-Zurücksetzer

Jede Kiste ist auf Zielfeld

Das Bauteil ist wieder im Ausgangs-zustand

Page 49: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Überführung

Pfade existieren nur von:

– A zu A´ bzw. A´ zu A– B zu B´ bzw. B´ zu B

Alle Kisten sind initial und nach Durchlauf auf Zielfeldern

Page 50: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Kreuzung

Verbindung von Pfaden

Page 51: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Zelleinheit

Repräsentiert eine Zelle des Turing-Maschinen-Bands

Beinhaltet das Steuerwerk der Turing-Maschine

Page 52: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 53: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 54: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Endlicher Automat

Page 55: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 56: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 57: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 58: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 59: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 60: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 61: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 62: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Heimkehrer beim Bandsymbol

Page 63: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Heimkehrer

Nur der Rückweg des gelesen Buchstabens ist offen

Page 64: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 65: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 66: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 67: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 68: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 69: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Simulation

Page 70: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Simulation

Probleme:

1. Die Turing-Maschine akzeptiert bevor alle Zelleinheiten gelesen sind.

2. Die Turing-Maschine liest jeden Buchstaben, akzeptiert aber nicht.

Page 71: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.
Page 72: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Simulation

Page 73: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Die entscheidende Kiste

Page 74: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Reduktionskosten

Konstruktion einer Zelleinheit– pro Bandbuchstabe und Zustand werden konstant viele

Bauteile (ohne Überführungen) benötigt– Es gibt maximal Überführungen

Die Zelleinheit läßt sich in Zeit konstruieren

n Kopien werden modifziert und verbunden, in O(n) Zeit

Reduktion ist polynomiell

))*(( 2zbO

)( 2nO

Page 75: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Quellen

Joseph C. Culberson: Sokoban is PSPACE-complete

Dorit Dor und Uri Zwick: Sokoban and other motion planning problems

Sokoban für Windows http://sourceforge.net/projects/sokobanyasc/

Sokoban Seite der University of Alberta http://www.cs.ualberta.ca/~games/Sokoban/

Page 76: Seminar über Algorithmen Sokoban ist PSPACE- vollständig.

Exponentielle Lösung