Upload
mariele-bonk
View
103
Download
0
Embed Size (px)
Citation preview
Einführung in die Informatik I
Prof. Dr. Bernd SchmidtLehrstuhl für Operations Research und Systemtheorie, Universität Passau
Planung
Planung
Planung
Planung
Planung
Planung
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 2
Gliederung
1. Einführung: Probleme
2. Definitionen: Zustand
Plan
3. Suchstrategien: Breitensuche
Tiefensuche
Uniform Cost Suche
Greedy- Suche
A*- Suche
4. Planung: Bedingungsabhängige Aktionen
Verbotene Zustände
5. Anwendung: Beispiel Ziege, Kohlkopf und Wolf
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 3
Gliederung
1. Einführung: Probleme
2. Definitionen: Zustand
Plan
3. Suchstrategien: Breitensuche
Tiefensuche
Uniform Cost Suche
Greedy- Suche
A*- Suche
4. Planung: Bedingungsabhängige Aktionen
Verbotene Zustände
5. Anwendung: Beispiel Ziege, Kohlkopf und Wolf
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 4
Einführung Labyrinth
Aufgabe: finde einen Weg von einem gegebenen Startpunkt zu einem Ausgang
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 5
Einführung Aktionsrepertoire und Strategie: Labyrinth
Die Knoten sind Punkte, an denen sich der Agent zu bestimmten Zeitpunkten befindet.
An jedem Knoten stehen dem Agenten unterschiedliche Handlungsoptionen zur Verfügung.
Mögliche Aktionen:
gehe
Strategie:
versuche
1: links
2: vorwärts
3: zurück
4: rechts
vorwärts
rechtslinks
zurück
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 6
Einführung Labyrinth
1. Versuch:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 7
Einführung Labyrinth
2. Versuch:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 8
Einführung Labyrinth
3. Versuch:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 9
Einführung Ziege, Kohlkopf und Wolf
Aufgabe:
- Fährmann muss Ziege, Kohlkopf und Wolf von einem Ufer zum anderen transportieren
Regeln:- Fähre: Fährmann + ein Passagier
- bleiben Ziege und Kohlkopf an einem Ufer zurück, so wird der Kohlkopf gefressen
- bleiben Wolf und Ziege an einem Ufer zurück, so wird die Ziege gefressen
Notation:
- Fährmann fährt alleine nach oben:
- Wolf und Fährmann fahren nach unten:
F▲
WF▼
Wolf:
Ziege:
Kohlkopf:
Z
K
W
Bewegung der Fähre: ▲, ▼
Beispiele:
Fährmann: F
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 10
Einführung Ziege, Kohlkopf und Wolf
1. Versuch:
ZF▼Notation:
ZF▼1:
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 11
Einführung Ziege, Kohlkopf und Wolf
1. Versuch:
Notation: F▲
1:
2:F▲
ZF▼
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 12
Einführung Ziege, Kohlkopf und Wolf
1. Versuch:
Notation: KF▼
1:
2:F▲
ZF▼
3:KF▼
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 13
Einführung Ziege, Kohlkopf und Wolf
1. Versuch:
Notation: F▲
1:
2:F▲
ZF▼
3:KF▼
4:F▲
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 14
Einführung Ziege, Kohlkopf und Wolf
2. Versuch:
ZF▼Notation:
ZF▼1:
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 15
Einführung Ziege, Kohlkopf und Wolf
2. Versuch:
Notation: F▲
1:
2:F▲
ZF▼
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 16
Einführung Ziege, Kohlkopf und Wolf
2. Versuch:
Notation: KF▼
1:
2:F▲
ZF▼
3:KF▼
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 17
Einführung Ziege, Kohlkopf und Wolf
2. Versuch:
Notation: ZF▲
1:
2:F▲
ZF▼
3:KF▼
4:ZF▲
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 18
Einführung Ziege, Kohlkopf und Wolf
2. Versuch:
Notation: WF▼
1:
2:F▲
ZF▼
3:KF▼
4:ZF▲
5:WF▼
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 19
Einführung Ziege, Kohlkopf und Wolf
2. Versuch:
Notation: F▲
1:
2:F▲
ZF▼
3:KF▼
4:ZF▲
5:WF▼
6:F▲
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 20
Einführung Ziege, Kohlkopf und Wolf
2. Versuch:
Notation: ZF▼
1:
2:F▲
ZF▼
3:KF▼
4:ZF▲
5:WF▼
6:F▲
7:ZF▼
Aktionsfolge:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 21
Einführung Ziege, Kohlkopf und Wolf
A Z1
Z5
Z4
Z3
Z2
Z6 E
ZF▼ F▲ KF▼
ZF▲
WF▼ F▲ ZF▼
Plan
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 22
Gliederung
1. Einführung: Probleme
2. Definitionen: Zustand
Plan
3. Suchstrategien: Breitensuche
Tiefensuche
Uniform Cost Suche
Greedy- Suche
A*- Suche
4. Planung: Bedingungsabhängige Aktionen
Verbotene Zustände
5. Anwendung: Beispiel Ziege, Kohlkopf und Wolf
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 23
Ein Plan ist eine Abfolge von Aktionen, die einen Anfangszustand A durch Ausführung von Aktionen über Zwischenzustände Z in einen Endzustand E überführt.
A E
Definitionen Plan
Ein Zustand ist eine Menge von Zustandsvariablen.
Z A
Ex1=e1
x2=e2 .
..xn=en
Im Endzustand besitzen alle Zustandsvariablen den richtigen Wert.
x1= a1
x2= z1
...
xn= an
x1= z1
xn= zn
x2= a1
...
Anfangszustand
Zwischenzustand
Endzustand
Zustand der Umwelt vor Beginn der Abarbeitung des Plans
Zustand der nach Erreichen des Ziels eingenommen werden soll
ZF▼ F▲
KF▼
ZF▲ WF▼ F▲ ZF▼
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 24
Gliederung
1. Einführung: Probleme
2. Definitionen: Zustand
Plan
3. Suchstrategien: Breitensuche
Tiefensuche
Uniform Cost Suche
Greedy- Suche
A*- Suche
4. Planung: Bedingungsabhängige Aktionen
Verbotene Zustände
5. Anwendung: Beispiel Ziege, Kohlkopf und Wolf
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 25
Bewertungskriterien
- Vollständigkeit
Wird eine Lösung garantiert gefunden, wenn es eine gibt?
- Zeitkomplexität
Innerhalb welcher Schranken bewegt sich die Dauer zur Ermittlung eines Ergebnisses?
- Speicherkomplexität
Innerhalb welcher Schranken bewegt sich der Verbrauch an Speicherplatz?
- Optimalität (bzgl. der Pfadkosten)
Wird eine beste Lösung gefunden, wenn eine existiert?
Suchstrategien Bewertungskriterien
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 26
Suchstrategien Klassifikation
Klassifikation von Suchstrategien
- blinde Suche:
- Breitensuche
- Tiefensuche
- Uniform Cost Suche
- Tiefenbeschränkte Suche
- Informierte Suche:
- Greedy Suche
- A*- Suche
kein Wissen über die Richtung zum Ziel vorhanden
Zielrichtung ist bekannt, Verarbeitung in heuristischer Funktion
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 27
Suchstrategien Datenstrukturen
Datenstrukturen für Suchbäume
Knoten {
Zustand // Zustand, der dem Knoten entspricht
Mutterknoten // Verweis auf den erzeugenden Konten
Operator // erzeugender Operator
Tiefe
Pfadkosten // aufsummiert, beginnend am Anfangszustand
}
Kanten = Übergänge zwischen den Knoten
= Zustände
= Aktionen
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 28
Suchstrategien Netz aus Knoten und Kanten
Arad
Zerind
Oradea
Sibiu
Riminicu V.Timisoara
Lugoj
Mehadia
Fagaras
Pitesti
Dobreta
Craiova
UrziceniBucharest
Giurgiu
Hirsova
Vasuli
Iasi
Neamt
Eforie
KantenKnoten
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 29
Suchstrategien Wegsuche in Rumänien
Zerind
Sibiu
Timisoara
Arad
Oradea
Riminicu V.
Fagaras
Arad
ZerindSibiuTimisoara
Expandieren des Anfangszustandes:
Wie gelangt man zum Strassennetz?
Expandieren!
Alle möglichen Aktionen
ausführen, die von einem
Zustand aus ausführbar sind.
Beispiel:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 30
Suchstrategien Blinde Suche: Wegsuche in Rumänien
Zerind
Sibiu
Timisoara
Arad
Oradea
Riminicu V.
Fagaras
Arad
ZerindSibiuTimisoara
Expandieren des Anfangszustandes:
Bewertung + Auswahl: Welcher Knoten soll als nächster expandiert werden?
Blinde Suche: alle drei Knoten sind gleichberechtigt
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 31
Suchstrategien Informierte Suche: Wegsuche in Rumänien
Zerind
Sibiu
Timisoara
Arad
Oradea
Riminicu V.
Fagaras
Arad
ZerindSibiuTimisoara
Expandieren des Anfangszustandes:
Bewertung + Auswahl: Welcher Knoten soll als nächster expandiert werden?
Informierte Suche: Zusatzinformation wird verarbeitet:
z.B. Sibiu liegt in Richtung Bucharest, daher Sibiu zuerst expandieren
N
S
OW
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 32
Suchstrategien Queue
Organisation der Daten
Eine Queue ist eine Warteschlange für zu expandierende Knoten.
Suchstrategien unterscheiden sich durch…
- …den Mechanismus, der die Reihenfolge zu expandierender Knoten festlegt
- …den Mechanismus, der entscheidet, an welcher Stelle die noch zu
expandierenden Knoten in die Queue eingereiht werden.
Queue
expandieren
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 33
Suchstrategien Queue
Organisation der Queue
- Wird ein Knoten expandiert, so werden die Tochterknoten am Ende der
Queue angehängt.
- Der expandierte Knoten wird aus der Queue entfernt.
- Die Queue wächst am hinteren Ende.
Queue
expandieren
d d d d+1 d+1
Tiefe d
Tiefe d+1
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 34
Suchstrategien Beispiel Breitensuche
Breitensuche: in einer Ebene werden die Knoten von links nach rechts aufgefüllt
1 2 3
4 5 6
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 35
Suchstrategien Breitensuche: Wegsuche in Rumänien
Arad
Zerind
Oradea
Sibiu
Riminicu V.Timisoara
Lugoj
Mehadia
Fagaras
Pitesti
Dobreta
Craiova
UrziceniBucharest
Giurgiu
Hirsova
Vasuli
Iasi
Neamt
Eforie
Aufgabe: finde einen Weg von Arad nach Bucharest
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 36
Suchstrategien Breitensuche: Wegsuche in Rumänien
Arad
ZerindSibiuTimisoara
QueueArad
1. Anfangsknoten mit Anfangszustand Arad
2. Nach der Expansion von Arad
Arad
QueueSibiu ZerindTimisoara
3. Nach der Expansion von Timisoara
ZerindSibiuTimisoara
AradQueue
Lugoj
Sibiu Zerind Lugoj
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 37
Suchstrategien Beispiel Tiefensuche
1 2 3 4 5
Tiefensuche: alle Knoten eines Pfades werden bis zur maximalen Tiefe expandiert
6 7 8
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 38
Suchstrategien Tiefensuche: Wegsuche in Rumänien
Arad
Timisoara
QueueArad
1. Anfangsknoten mit Anfangszustand Arad
2. Nach der Expansion von Arad
Arad
QueueTimisoara
3. Nach der Expansion von Timisoara
Timisoara
AradQueue
Lugoj
Lugoj
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 39
Suchstrategien Uniform Cost Suche
Uniform Cost Suche (Blinde Suche)
- Modifizierte Breitensuche
- Einführung von Pfadkosten direkter Verbindungen durch Pfadkostenmatrix
- Knoten mit den geringsten Pfadkosten werden zuerst expandiert
Arad Zerind Sibiu Timisoara ...
Arad 0 75 140 118 ...
Zerind 75 0 - - ...
Sibiu 140 - 0 - ...
Timisoara 118 - - 0 ...
... ... ... ... ... 0
Zusatzinformation: Pfadkostenmatrix
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 40
Suchstrategien Uniform Cost Suche
Organisation der Queue
- Neu generierte Knoten werden derart eingefügt, dass die Knoten bezüglich
ihrer Pfadkosten aufsteigend sortiert sind.
expandieren
75 118 140
2
118 140 75
146
Queue
Zerind Sibiu Timisoara
Oradea
146
Timisoara Sibiu OradeaZerind
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 41
Suchstrategien Uniform Cost Suche: Wegsuche in Rumänien
Uniform Cost Suche
Arad QueueArad
QueueSibiuZerind Timisoara
Arad
Zerind 75Sibiu 140Timisoara 118
QueueSibiuTimisoara
Arad
Zerind 75Sibiu 140Timisoara 118
Oradea 146
Oradea
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 42
Suchstrategien Uniform Cost Suche
Uniform Cost Suche
Arad
Zerind 75Sibiu 140Timisoara 118
QueueSibiu Lugoj
Oradea 146
Oradea
Lugoj 229
Arad
Zerind 75Sibiu 140Timisoara 118
QueueRiminicu V. Lugoj
Oradea 146
Oradea
Lugoj 229 Riminicu V. 220 Fagaras 239
Fagaras
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 43
Suchstrategien Greedy Suche
Greedy Suche
- Informierte Suche
- Bewertungsfunktion: Heuristik h: Knoten Int
ermittelt die (geschätzte) Entfernung eines Knotens (= Zustand)
zum Ziel
Expandieren von Knoten
- Expandiert wird der Knoten, dem die geringste geschätzte Entfernung zum Ziel
zugeschrieben wird.
Eigenschaften
- Nicht vollständig
- Nicht optimal
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 44
Suchstrategien Greedy Suche
Greedy Suche
Arad 366 QueueArad
QueueSibiu ZerindTimisoara
QueueZerindTimisoara
Arad
Zerind 374Sibiu 253Timisoara 329
Oradea
Arad
Zerind 374Sibiu 253Timisoara 329
Oradea 380 Arad 366Fagaras 178Riminicu V. 193
Fagaras Riminicu V. Arad
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 45
Suchstrategien A*- Suche
A*- Suche
- Kombination von Uniform Cost Suche und Greedy Suche
- Bewertung der Knoten: Heuristik h(n) = f(n) + g(n)
- Dabei: f(n) = Summe der Strassenkilometer (Arad Ortn) (Uniform Cost Suche)g(n) = Luftliniendistanz (Ortn Bucharest) (Greedy- Suche)
Eigenschaften
- Vollständig.
- Optimal.
Organisation der Queue
- Neu generierte Knoten werden derart eingefügt, dass die Knoten bezüglich
ihrer Pfadkosten aufsteigend sortiert sind- Analog zur Uniform Cost Suche, Greedy- Suche
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 46
Suchstrategien A*- Suche
A*- Suche 0 Arad 366
366
QueueArad
QueueSibiu ZerindTimisoara
Arad
75 Zerind 374
449
140 Sibiu 253
393
118 Timisoara 329
447
QueueZerindTimisoara Oradea
146 Oradea 380
526
239 Fagaras 178
417
220 Riminicu V. 193
413
FagarasRiminicu V. Arad
280 Arad 366
646
Arad
75 Zerind 374
449
140 Sibiu 253
393
118 Timisoara 329
447
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 47
Gliederung
1. Einführung: Probleme
2. Definitionen: Zustand
Plan
3. Suchstrategien: Breitensuche
Tiefensuche
Uniform Cost Suche
Greedy- Suche
A*- Suche
4. Planung: Bedingungsabhängige Aktionen
Verbotene Zustände
5. Anwendung: Beispiel Ziege, Kohlkopf und Wolf
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 48
Planung Zusammenschau
• Anfangszustand A, Endzustand E• Zustandsmenge Z• Aktionsmenge O
• Einschränkungen– Bedingungsabhängige Aktionen– Verbotene Zustände
…a1 an
A E
Ein Plan ist eine Abfolge von Aktionen, die einen Anfangszustand durch Ausführung von Aktionen in einen Endzustand überführt.
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 49
Planung Einschränkungen
Einschränkungen
Verbotene Zustände- Dürfen durch Ausführung von Aktionen zu keiner Zeit eingenommen werden
A Z1 Z4Z3Z2ZF▼ F▲ KF▼ F▲
Verbotener Zustand:
Fährmann lässt Ziege und
Kohlkopf am selben Ufer zurück
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 50
Planung Einschränkungen
Bedingungsabhängige Aktionen
- Dürfen nur ausgeführt werden, wenn alle Vorbedingungen erfüllt sind, die
an die Aktion gebunden sind.
Einschränkungen
Notation
Boot obenBedingung(en):
(Fähre runter)
Bedingungen werden an Aktion gebunden
F▼
Boot oben
F▼Aktion: (Fähre runter)
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 51
Planung Breitensuche: Beispiel
Beispiel: arithmetische Umformung
A = 1
B = 2
C = 3
…
Aktionsmenge O:
A = 10
B = 5
C = 6
Startzustand Zielzustand
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Verbotene Zustände:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 52
Planung Breitensuche: Beispiel
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 53
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 4
B = 3
C = 4
A > 0
A=A+3
B=B+1
C=C+1
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 54
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 55
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 56
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 6
B = 6
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
C > 3
A=A+2
B=B+3
C=C
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 57
A = 6
B = 6
C = 4
Planung Breitensuche: Verbotene Zustände
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
Verbotener Zustand
C > 3
A=A+2
B=B+3
C=C
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 58
A = 6
B = 6
C = 4
Planung Breitensuche: Verbotene Zustände
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
Verbotener Zustand
C > 3
A=A+2
B=B+3
C=C
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 59
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A > 0
A=A+3
B=B+1
C=C+1
A = 6
B = 2
C = 5
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 60
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A > 0
A=A+3
B=B+1
C=C+1
A = 6
B = 2
C = 5
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
A = 5
B = 0
C = 5
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 61
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A > 0
A=A+3
B=B+1
C=C+1
A = 6
B = 2
C = 5
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 5
B = 4
C = 4
A = 5
B = 0
C = 5
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 62
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A > 0
A=A+3
B=B+1
C=C+1
A = 6
B = 2
C = 5
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 5
B = 4
C = 4
A = 5
B = 0
C = 5
A = 9
B = 7
C = 5
C >3
A=A+2
B=B+3
C=C
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 63
Planung Breitensuche: Verbotene Zustände
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A > 0
A=A+3
B=B+1
C=C+1
A = 6
B = 2
C = 5
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 5
B = 4
C = 4
A = 5
B = 0
C = 5
A = 9
B = 7
C = 5
C >3
A=A+2
B=B+3
C=C Verbotener Zustand
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 64
Planung Breitensuche: Verbotene Zustände
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A > 0
A=A+3
B=B+1
C=C+1
A = 6
B = 2
C = 5
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 5
B = 4
C = 4
A = 5
B = 0
C = 5
A = 9
B = 7
C = 5
C >3
A=A+2
B=B+3
C=C Verbotener Zustand
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 65
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A > 0
A=A+3
B=B+1
C=C+1
A = 6
B = 2
C = 5
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 5
B = 4
C = 4
A = 5
B = 0
C = 5
A = 10
B = 5
C = 6
A > 0
A=A+3
B=B+1
C=C+1
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 66
Planung Breitensuche: Bedingungsabhängige Aktionen
Beispiel: arithmetische UmformungA = 1
B = 2
C = 3
A = 4
B = 3
C = 4
A = 3
B = 1
C = 4
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
Aktionsauswahl:A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B- 1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A > 0
A=A+3
B=B+1
C=C+1
A = 6
B = 2
C = 5
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
B < 3
A=A+2
B=B-1
C=C+1
C > 3
A=A+2
B=B+3
C=C
A = 5
B = 4
C = 4
A = 5
B = 0
C = 5
A = 10
B = 5
C = 6
A > 0
A=A+3
B=B+1
C=C+1
Zielzustand erreicht
Verbotene Zustände:
A = 6
B = 6
C = 4
A = 9
B = 7
C = 5
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 67
Gliederung
1. Einführung: Probleme
2. Definitionen: Zustand
Plan
3. Suchstrategien: Breitensuche
Tiefensuche
Uniform Cost Suche
Greedy- Suche
A*- Suche
4. Planung: Bedingungsabhängige Aktionen
Verbotene Zustände
5. Anwendung: Beispiel Ziege, Kohlkopf und Wolf
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 68
Anwendung Ziege, Kohlkopf und Wolf
Notation:
Wolf:
Ziege:
Kohlkopf:
Z
K
W
Bewegung der Fähre: ▲, ▼
Startzustand:Z = oK = oW = oF = o
Erinnerung: Weder Ziege und Kohlkopf, noch Ziege und Wolf dürfen vom Fährmann am selben Ufer zurückgelassen werden!
Fährmann: F
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 69
Anwendung Ziege, Kohlkopf und Wolf
Modellierung der Zustände
Z K W FZ K W FZ K F WZ K W FZ W F KZ W K FZ F K WZ K W F
K W F ZK W Z FK F Z WK Z W F
W F Z KW Z K F
F Z K WZ K W F
Ôben o Unten u
Zustände:
Start-Zustand
End-Zustand
Z = oK = oW = oF = o
Z = uK = uW = uF = u
Z = oK = uW = uF = o
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 70
Anwendung Ziege, Kohlkopf und Wolf
Notation: F▲
1:
2:F▲
ZF▼
Aktionsfolge:
Zustand:Z = uK = oW = oF = u
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 71
Anwendung Ziege, Kohlkopf und Wolf
Einschränkungen
Verbotene Zustände:
Z = oK = oW = oF = u
Z = oK = uW = oF = u
Z = oK = oW = uF = u
Z = uK = uW = oF = o
Z = uK = oW = uF = o
Alle an einem Ufer, ohne Fährmann
Ziege und Wolf oben, Fährmann unten
Ziege und Wolf unten, Fährmann oben
Ziege und Kohlkopf oben, Fährmann unten
Ziege und Kohlkopf unten, Fährmann oben
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 72
Anwendung Ziege, Kohlkopf und Wolf
Einschränkungen
Bedingungsabhängige Aktionen:
F▲
Fu
F ▼
Fo
W F▼
FoWo
Soll sich der Fährmann nach oben bewegen, so muss sich die Fähre zuerst unten befinden…
...ebenso in die umgekehrte Richtung...
... soll er dabei einen Passagier transportieren, so muss sich dieser am selben Ufer wie die Fähre befinden...
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 73
Anwendung Ziege, Kohlkopf und Wolf
Zustandsübergang
Z = uK = oW = oF = o
Z = uK = uW = oF = u
KF▼
FoKo
- Fährmann transportiert den Kohlkopf von oben nach unten
unter Einhaltung aller Bedingungen:
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 74
Anwendung Breitensuche: Ziege, Kohlkopf und Wolf
Suchbaum Z = oK = oW = oF = o
Z = oK = oW = oF = u
Z = uK = oW = oF = u
Z = oK = uW = oF = u
Z = oK = oW = uF = u
F▼
ZF▼ KF▼
WF▼
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 75
Anwendung Breitensuche
Suchbaum Z = oK = oW = oF = o
Z = oK = oW = oF = u
Z = uK = oW = oF = u
Z = oK = uW = oF = u
Z = oK = oW = uF = u
F▼
ZF▼ KF▼
WF▼
Verbotene Zustände
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 76
Anwendung Breitensuche
Suchbaum Z = oK = oW = oF = o
Z = oK = oW = oF = u
Z = uK = oW = oF = u
Z = oK = uW = oF = u
Z = oK = oW = uF = u
F▼
ZF▼ KF▼
WF▼
Verbotene Zustände
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 77
Anwendung Breitensuche
Suchbaum Z = oK = oW = oF = o
Z = uK = oW = oF = u
ZF▼
ZF▲ F▲
Z = oK = oW = oF = o
Z = uK = oW = oF = o
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 78
Anwendung Breitensuche
Suchbaum Z = oK = oW = oF = o
Z = uK = oW = oF = u
ZF▼
ZF▲ F▲
Z = oK = oW = oF = o
Z = uK = oW = oF = o
Dieser Zustand ist identisch mit dem Anfangszustand.
Ein Zustand, der bereits einmal expandiert wurde, muss nicht nochmals expandiert werden.
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 79
Anwendung Breitensuche
Suchbaum Z = oK = oW = oF = o
Z = uK = oW = oF = u
ZF▼
ZF▲ F▲
Z = oK = oW = oF = o
Z = uK = oW = oF = o
Dieser Zustand ist identisch mit dem Anfangszustand.
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 80
Anwendung Breitensuche
Suchbaum
Z = uK = oW = oF = o
Z = uK = uW = oF = u
Z = uK = oW = uF = u
KF▼
F▼
WF▼Z = uK = oW = oF = u
Z = oK = oW = oF = o
Z = uK = oW = oF = u
ZF▼
F▲
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 81
Anwendung Breitensuche
Suchbaum
Z = uK = oW = oF = o
Z = uK = uW = oF = u
Z = uK = oW = uF = u
KF▼
F▼
WF▼Z = uK = oW = oF = u
Dieser Zustand wurde bereits expandiert
Z = oK = oW = oF = o
Z = uK = oW = oF = u
ZF▼
F▲
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 82
Anwendung Breitensuche
Suchbaum Z = uK = oW = oF = o
Z = uK = uW = oF = u
Z = uK = oW = uF = u
KF▼
F▼
WF▼Z = uK = oW = oF = u
Dieser Zustand wurde bereits expandiert
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 83
Anwendung Breitensuche
Suchbaum Z = uK = oW = oF = o
Z = uK = uW = oF = u
Z = uK = oW = uF = u
KF▼ WF▼
Z = uK = uW = oF = o
Z = uK = oW = oF = o
Z = oK = uW = oF = o
F▲
ZF▲
KF▲
Bereits expandierter Zustand
Verbotener Zustand
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 84
Anwendung Breitensuche
Suchbaum Z = uK = oW = oF = o
Z = uK = uW = oF = u
Z = uK = oW = uF = u
KF▼ WF▼
Z = uK = uW = oF = o
Z = uK = oW = oF = o
Z = oK = uW = oF = o
Z = uK = oW = uF = o
Z = uK = oW = oF = o
Z = oK = oW = uF = o
F▲
ZF▲
KF▲ F▲
ZF▲
WF▲
Bereits expandierter Zustand
Verbotener Zustand
Bereits expandierter Zustand
Verbotener Zustand
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 85
Anwendung Breitensuche
Suchbaum Z = uK = oW = oF = o
Z = uK = uW = oF = u
Z = uK = oW = uF = u
KF▼ WF▼
Z = uK = uW = oF = o
Z = uK = oW = oF = o
Z = oK = uW = oF = o
Z = uK = oW = uF = o
Z = uK = oW = oF = o
Z = oK = oW = uF = o
F▲
ZF▲
KF▲ F▲
ZF▲
WF▲
Bereits expandierter Zustand
Verbotener Zustand
Verbotener Zustand
Bereits expandierter Zustand
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 86
Anwendung Breitensuche
Lösung Z = oK = oW = oF = o
Z = uK = oW = oF = u
ZF▼
F▲
Z = uK = oW = oF = o
Z = uK = uW = oF = u
Z = uK = oW = uF = u
Z = oK = uW = oF = o
Z = oK = oW = uF = o
Z = oK = uW = uF = u
Z = oK = uW = uF = u
Z = oK = uW = uF = o
Z = oK = uW = uF = o
Z = uK = uW = uF = u
F▲
WF▼ZF▼
KF▼
ZF▲
ZF▼
F▲
ZF▼
ZF▲
WF▼
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 87
Anwendung Breitensuche
Die entstehenden Pläne
Z = oK = oW = oF = o
Z = uK = oW = oF = u
ZF▼ F▲
Z = uK = oW = oF = o
Z = uK = oW = uF = u
ZF▲WF▼
Z = oK = oW = uF = o
Z = oK = uW = uF = u
Z = oK = uW = uF = o
F▲KF▼ ZF▼
Z = uK = uW = uF = u
Z = oK = oW = oF = o
Z = uK = oW = oF = u
ZF▼ F▲
Z = uK = oW = oF = o
Z = uK = uW = oF = u
ZF▲ZF▼
Z = oK = uW = oF = o
Z = oK = uW = uF = u
Z = oK = uW = uF = o
F▲WF▼ ZF▼
Z = uK = uW = uF = u
Lehrstuhl für Operations Research und Systemtheorie Planung Folie 88
Zusammenfassung
Z0 Z1 Z6 EFZ▼ F▲ FZ▼
…
Definitionen:
Zustände, Aktionen, Pläne
Zerind
Sibiu
Timisoara
Arad
Oradea
Riminicu V.
Fagaras
N
S
OW
Suchstrategien:
Breitensuche, Tiefensuche, Uniform Cost, Greedy- Suche, A*- Suche
A = 6
B = 6
C = 4
A = 4
B = 3
C = 4
Verbotener Zustand
C > 3
A=A+2
B=B+3
C=C
A = 7
B = 4
C = 5
A > 0
A=A+3
B=B+1
C=C+1
Planung:
Bedingungsabhängige Aktionen, verbotene Zustände
Anwendung:
Das Ziege- Kohlkopf- Wolf- Problem mit Breitensuche