Berechnung von Potenzialheuristiken basierend auf Pattern

Werbung
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Berechnung von Potenzialheuristiken basierend
auf Pattern-Datenbanken
Andreas Ferenczi
Universität Basel
[email protected]
30. Januar 2017
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Überblick
Einführung
Planungsaufgaben
Pattern-Datenbanken
Potenzialheuristiken
Greedy Algorithmus
Algorithmus
Beispiel
Algebraischer Algorithmus
Grundlagen
Algorithmus
Beispiel
Experimente
Anzahl Iterationen des Greedy Algorithmus
Pattern Generatoren
Vergleich mit der FF-Heuristik
Schlussfolgerungen
Qualität der Heuristik
Weiterführende Arbeit
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Einführung
Gebiet
I
Künstliche Intelligenz
I
Handlungsplanung
I
Heuristikbasierte Zustandsraumsuche
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Einführung
Gebiet
I
Künstliche Intelligenz
I
Handlungsplanung
I
Heuristikbasierte Zustandsraumsuche
Konkrete Aufgabe
I
Potenzialheuristik
I
Pattern-Datenbanken
I
Implementation in Fast-Downward
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Planungsaufgaben
Planungsaufgaben
Zustandsvektor
Ein Zustandsvektor ist ein Vektor, der aus allen relevanten
Variablen eines Systems besteht.
Zustandsraum
Ein Zustandsraum kann als der Vektorraum der Zustandsvektoren
verstanden werden.
Planungsaufgabe
Eine Planungsaufgabe definiert sich über einen Zustandsraum,
Aktionen, einen Initialzustand und Zielzuständen. Die Aufgabe
besteht darin eine Folge von Aktionen zu finden, die den
Initialzustand in einen Zielzustand überführt.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Planungsaufgaben
Beispiel
I
Karren: links (L) oder rechts (R)
I
Kiste: links (L), rechts (R) oder auf dem Karren (K)
Zustandsraum:
R,L
R,K
R,R
L,L
L,K
L,R
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Planungsaufgaben
Beispiel Suche
R,L
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Planungsaufgaben
Beispiel Suche
R,L
L,L
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Planungsaufgaben
Beispiel Suche
R,L
L,L
R,L
Potenzialheuristiken aus Pattern-Datenbanken
L,K
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Planungsaufgaben
Beispiel Suche
R,L
L,L
R,L
L,K
L,L
Potenzialheuristiken aus Pattern-Datenbanken
R,K
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Planungsaufgaben
Beispiel Suche
R,L
L,L
R,L
L,K
L,L
R,K
L,K
Potenzialheuristiken aus Pattern-Datenbanken
R,R
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Planungsaufgaben
Beispiel Suche
R,L
L,L
R,L
L,K
L,L
R,K
L,K
Potenzialheuristiken aus Pattern-Datenbanken
R,R
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Pattern-Datenbanken
Pattern-Datenbanken
Pattern-Datenbank
Eine Pattern-Datenbank ist eine Vereinfachung eines
Zustandsraumes, die man mittels einer Projektion auf einen
Unterraum erhält.
Pattern
Man bezeichnet als Pattern der Pattern-Datenbank die Menge der
Variablen des Unterraumes, auf den projiziert wird.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Pattern-Datenbanken
Beispiel
R,L
R,K
R,R
L,L
L,K
L,R
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Potenzialheuristiken
Potenzialheuristiken
Fakten
Fakten sind Variablen-Werte-Paare. Ein Fakt wird als wahr
betrachtet, genau dann wenn die Variable den gegebenen Wert hat.
Potenzialheuristik
Eine Potenzialheuristik ist eine Funktion, die aus dem
Zustandsraum auf reelle, positive Zahlen, sowie Unendlich abbildet
(S → R+
0 ∪ ∞). Hierbei wird eine Menge Fakten definiert und zu
jedem ein sog. Potenzial bestimmt. Die Funktion berechnet sich
schliesslich als Summe der Potenziale, deren Fakten wahr sind.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Potenzialheuristiken
Konkrete Aufgabe
I
Die Fehlerquadrate zwischen h-Werten einer Sammlung von
Pattern-Datenbanken und einer Potenzialheuristik minimieren
I
Verschiedene Pattern-Generatoren und Konfigurationen
ausprobieren und allenfalls modifizieren
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Algorithmus
Greedy Algorithmus
Die Zahl x, die die Summe der Fehlerquadrate zu einer Menge von
Zahlen
{xi |i ∈ N; i ≤ n} minimiert, ist deren Durchschnitt
1 Pn
i=1 xi .
n
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Algorithmus
Greedy Algorithmus
Die Zahl x, die die Summe der Fehlerquadrate zu einer Menge von
Zahlen
{xi |i ∈ N; i ≤ n} minimiert, ist deren Durchschnitt
1 Pn
i=1 xi .
n
I
Grundidee: Kleinste Fehlerquadrate iterativ annähern
I
Vorgehen: Potenziale einzeln korrigieren während alle
anderen Potenziale als gegeben betrachtet werden
I
Iteration: Immer das Potenzial korrigieren, welches die
grösste Korrektur benötigt
Die Korrektur eines einzelnen Potenzials wird hierbei als ein
Iterationsschritt betrachtet.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
Gegeben seien folgende
Pattern-Datenbanken:
v0 \v1
0
1
0
0
1
1
1
3
2
2
2
v1 \v2
0
1
2
0
0
1
3
1
0
3
3
2
0
2
5
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
v0 \v1
0
1
v1 \v2
0
1
2
0
0
1
0
0
1
3
1
1
3
1
0
3
3
2
2
2
2
0
2
5
Potenzialheuristiken aus Pattern-Datenbanken
Durchschnitte der
Differenzen:
v0
v0
v1
v1
v1
v2
v2
v2
= 0:
= 1:
= 0:
= 1:
= 2:
= 0:
= 1:
= 2:
1
2
1
5
2
3
1
2
2
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
v0 \v1
0
1
v1 \v2
0
1
2
0
0
1
0
0
1
3
1
1
3
1
0
3
3
2
2
2
2
0
2
5
Potenzialheuristiken aus Pattern-Datenbanken
v0
v0
v1
v1
v1
v2
v2
v2
= 0:
= 1:
= 0:
= 1:
= 2:
= 0:
= 1:
= 2:
1
2
1
5
2
3
1
2
2
Potenzialvektor:
 
0
0
 
0
 
0

p~ = 
3
 
0
 
0
0
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
2. Iterationsschritt:
v0 \v1
0
1
0
0
1
1
1
3
2
-1
-1
v1 \v2
0
1
2
0
0
1
0
1
0
3
0
2
0
2
2
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
2. Iterationsschritt:
v0 \v1
0
1
v1 \v2
0
1
2
0
0
1
0
0
1
0
1
1
3
1
0
3
0
2
-1
-1
2
0
2
2
Potenzialheuristiken aus Pattern-Datenbanken
v0
v0
v1
v1
v1
v2
v2
v2
= 0:
= 1:
= 0:
= 1:
= 2:
= 0:
= 1:
= 2:
0
1
1
5
2
0
0
1
1
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
2. Iterationsschritt:
v0 \v1
0
1
v1 \v2
0
1
2
0
0
1
0
0
1
0
1
1
3
1
0
3
0
2
-1
-1
2
0
2
2
Potenzialheuristiken aus Pattern-Datenbanken
v0
v0
v1
v1
v1
v2
v2
v2
= 0:
= 1:
= 0:
= 1:
= 2:
= 0:
= 1:
= 2:
0
1
1
5
2
0
0
1
1
 
0
0
 
0
 
2

p~ = 
3
 
0
 
0
0
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
3. Iterationsschritt:
v0 \v1
0
1
0
0
1
v1 \v2
0
1
2
0
0
-1
0
1
-1
1
2
-1
-1
1
0
1
0
2
0
0
2
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
3. Iterationsschritt:
v0 \v1
0
1
v1 \v2
0
1
2
0
0
1
0
0
-1
0
1
-1
1
1
0
1
0
2
-1
-1
2
0
0
2
Potenzialheuristiken aus Pattern-Datenbanken
v0 = 0:
− 23
v0 = 1:
v1 = 0:
1
3
1
5
v1 = 1:
0
v1 = 2:
0
v2 = 0:
− 32
v2 = 1:
1
3
1
3
v2 = 2:
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
3. Iterationsschritt:
v0 \v1
0
1
v1 \v2
0
1
2
0
0
1
0
0
-1
0
1
-1
1
1
0
1
0
2
-1
-1
2
0
0
2
Potenzialheuristiken aus Pattern-Datenbanken
v0 = 0:
− 23
v0 = 1:
v1 = 0:
1
3
1
5
v1 = 1:
0
v1 = 2:
0
v2 = 0:
− 32
v2 = 1:
1
3
1
3
v2 = 2:
 2
−3
 0 
 
 0 
 
 2 

p~ = 
 3 
 
 0 
 
 0 
0
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
4. Iterationsschritt:
v0 \v1
0
1
v1 \v2
0
1
2
0
1
− 13
1
2
3
1
0
0
-1
0
1
0
1
0
2
− 13
-1
2
0
0
2
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
4. Iterationsschritt:
v0 \v1
0
1
0
1
− 13
1
2
3
1
2
− 13
-1
v0 = 0:
0
v0 = 1:
1
3
1
3
2
15
2
15
− 32
1
3
1
3
v1 = 0:
v1 = 1:
v1 \v2
0
1
2
0
0
-1
0
1
0
1
0
2
0
0
2
Potenzialheuristiken aus Pattern-Datenbanken
v1 = 2:
v2 = 0:
v2 = 1:
v2 = 2:
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
4. Iterationsschritt:
v0 \v1
0
1
0
1
− 13
1
2
3
1
2
− 13
-1
v0 = 0:
0
v0 = 1:
1
3
1
3
2
15
2
15
− 32
1
3
1
3
v1 = 0:
v1 = 1:
v1 \v2
0
1
2
0
0
-1
0
1
0
1
0
2
0
0
2
Potenzialheuristiken aus Pattern-Datenbanken
v1 = 2:
v2 = 0:
v2 = 1:
v2 = 2:

− 23
 0 
 
 0 
 
 2 

p~ = 
 3 
 
− 2 
 3
 0 
0

Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Grundlagen
Algebraischer Algorithmus - Grundlagen
Matrix der Potenzialfunktion
Sei p~ der Vektor der Potenziale und ~h der Vektor mit den
h-Werten, so gibt es eine Matrix A mit: A~
p = ~h.
Einträge der Matrix
Die Zeilen dieser Matrix entsprechen hierbei Zuständen und sie
enthalten dort eine 1, wo das Zugehörige Fakt wahr ist und eine 0
sonst.
Reduktion auf eine Pattern-Datenbank
Es macht Sinn p~ und A auf Spalten und Zeilen zu reduzieren, die
für die PDb relevant sind. Dieser Vektor bzw. diese Matrix wird
hier mit p~pdb bzw. Apdb bezeichnet.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Grundlagen
Kleinste Fehlerquadrate für eine Pattern-Datenbank
Kleinste Fehlerquadrate
Die Lösung für kleinste Fehlerqudrate einer Matrix-Gleichung
A~x = ~b berechnet sich als Lösung der Gleichung A> A~x = A> ~b.
Gleichung für eine Pattern-Datenbank
Für eine einzelne Pattern-Datenbank muss demnach die Lösung
~
~pdb = A>
der Gleichung A>
pdb Apdb p
pdb hpdb berechnet werden. Hierbei
bezeichnet ~hpdb den Vektor der h-Werte aus der
Pattern-Datenbank.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Algorithmus
Algebraischer Algorithmus
I
I
Grundidee: Die Lösung gemäss kleinster Fehlerquadrate für
jede Pattern-Datenbank algebraisch berechnen
Vorgehen: A> Apdb sowie A> ~hpdb (direkt) berechnen und
pdb
pdb
dann den Durchschnitt der Lösungen aller Gleichungen
~pdb = A>~hpdb als Potenziale festlegen
A>
pdb Apdb p
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Algorithmus
Die Matrix A>
pdb Apdb
I
Die Einträge von A>
pdb Apdb sind die Skalarprodukte der
Spaltenvektoren von Apdb .
I
Somit sind die Einträge die Anzahl abstrakter Zustände, in
denen die zugehörigen Fakten wahr sind.
I
Die Anzahl abstrakter Zuständen
einer Pattern-Datenbank n
Q
berechnet sich über n = vi ∈P |dom(vi )|.
I
Für jede Variable vi kann immer nur genau ein Fakt wahr sein.
n
abstrakte Zustände in denen ein
Es gibt immer ni = |dom(v
i )|
Fakt von vi gilt.
I
Für zwei Variablen vi , vj wird dies: ni,j =
Potenzialheuristiken aus Pattern-Datenbanken
ni
|dom(vj )| .
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Algorithmus
Die Matrix A>
pdb Apdb
Somit hat die Matrix A>
pdb Apdb Blockgestalt. Die Diagonalblöcke
Bi,i gehören zu je einer Variablen vi und sehen wie folgt aus:
Bi,i = E · ni
Nicht-Diagonalblöcke Bi,j gehören zu den Variablen vi sowie vj und
alle ihre Einträge sind gleich ni,j .
Bi,j = [ni,j ]
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
Sei P = {v0 , v1 } das Pattern einer Pattern-Datenbank.
|dom(v0 )| = 2 und |dom(v1 )| = 3. So gilt:



1 0 1 0 0
3 0 1 1
0 1 1 0 0


0 3 1 1
1 0 0 1 0 >



Apdb = 
0 1 0 1 0 ; Apdb Apdb = 1 1 2 0


1 1 0 2
1 0 0 0 1
1 1 0 0
0 1 0 0 1
Potenzialheuristiken aus Pattern-Datenbanken
Seien

1
1

0

0
2
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
~pdb = A>~hpdb
Die Lösung von A>
pdb Apdb p
Die Lösung einer Matrixgleichung kann mittels Gauss-Algorithmus
bestimmt werden.
Gauss-Algorithmus:
I
Rechenaufwand der Ordnung O(N 3 ), wobei N die Anzahl
Zeilen bzw. Spalten der Matrix ist
I
Separation kann Abhilfe schaffen
I
Im Fall der Matrix A>
pdb Apdb ist eine solche Separation möglich
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Separation der Diagonalblöcke
I
Alle Zeilen eines beliebigen Zeilenblocks addieren
I
Es entsteht stets dieselbe Zeile ~z , mit ni im i-ten Spaltenblock
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Separation der Diagonalblöcke
I
Alle Zeilen eines beliebigen Zeilenblocks addieren
I
Es entsteht stets dieselbe Zeile ~z , mit ni im i-ten Spaltenblock
I
Alle anderen Zeilen eines i-ten Zeilenblocks mit |dom(vi )|
multiplizieren
I
Es entsteht eine Zeile, die bis auf die Einträge des
Diagonalblocks mit ~z identisch ist.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Separation der Diagonalblöcke
I
Alle Zeilen eines beliebigen Zeilenblocks addieren
I
Es entsteht stets dieselbe Zeile ~z , mit ni im i-ten Spaltenblock
I
Alle anderen Zeilen eines i-ten Zeilenblocks mit |dom(vi )|
multiplizieren
I
Es entsteht eine Zeile, die bis auf die Einträge des
Diagonalblocks mit ~z identisch ist.
I
Damit lassen sich alle Diagonalblöcke, bis auf einen, aus dem
Gleichungssystem separieren.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
Sei P = {v0 , v1 , v2 } das Pattern einer Pattern-Datenbank. Seien
|dom(v0 )| = 2, |dom(v1 )| = 3 und |dom(v2 )| = 3. So ist:
9
0

3

3
=
3

3
3
3

A>
pdb Apdb
0
9
3
3
3
3
3
3
3
3
6
0
0
2
2
2
3
3
0
6
0
2
2
2
Potenzialheuristiken aus Pattern-Datenbanken
3
3
0
0
6
2
2
2
3
3
2
2
2
6
0
0
3
3
2
2
2
0
6
0


9
3
3
9


2
3


2
3
→
2
9


0
3

3
0
6
9
0
9
3
3
9
3
3
9
3
6
6
0
6
2
2
6
3
6
0
6
6
2
2
6
3
6
0
0
6
2
2
6
3
6
2
2
6
6
0
6
3
6
2
2
6
0
6
6

3
6

2

2
→
6

0
0
6
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
9
9

3

3

9

3
3
9

0
9
3
3
9
3
3
9
3
6
6
0
6
2
2
6
3
6
0
6
6
2
2
6
3
6
0
0
6
2
2
6
3
6
2
2
6
6
0
6
3
6
2
2
6
0
6
6
Potenzialheuristiken aus Pattern-Datenbanken


3
18
6
9


2
9


2
9
→
6
9


0
9
9
0
6
9
0
9
9
9
9
9
9
9
6
6
18
0
6
6
6
6
6
6
0
18
6
6
6
6
6
6
0
0
6
6
6
6
6
6
6
6
6
18
0
6
6
6
6
6
6
0
18
6

6
6

6

6
→
6

0
0
6
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
18 0
6
9
6
9

9 18
9

9
0
9

9
6
9

9
6
9
9
9
6
9
9
6

9 −9
0
0
0
0

0
12
0

0
−6
0

0
0
0

0
0
0
0
0
0
9
9
6

6
6
0
18
6
6
6
6
0
0
−6
12
0
0
0
6
6
6
0
0
6
6
6
6

6
6
6
6
6
6

6
6
6

6
6
6
→
6
6
6

18
0
0
0
18 0
6
6
6

0
0
0
0
0
0
0
0 

−6
0
0
0 

−6
0
0
0 
→
0
0
0
0 

0
12 −6 −6
0
−6 12 −6
6
6
6
6
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Beispiel
Beispiel
9
0

0

0

0

0
0
9

−9
0
0
0
0
0
0
9
0
0
12
−6
0
0
0
6
0
0
−6
12
0
0
0
6
0
0
−6
−6
0
0
0
6
Potenzialheuristiken aus Pattern-Datenbanken
0
0
0
0
0
12
−6
6
0
0
0
0
0
−6
12
6

0

0 
9

0 
0


0 
0
→
0 
0

0
−6
−6
9
6
0
12
−6
0
0
6
0
−6
12
0
0
6
0
0
0
12
−6
6
0
0
0
−6
12
6

0
0 

0 

−6
−6
6
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Überblick über die Experimente
Experimente wurden auf einer Satisficing-Suite der
Fast-Downward-Benchmarks durchgeführt.
Fragestellungen
I
Qualität der Heuristik des Greedy-Algorithmus in
Abhängigkeit der Anzahl Iterationen
I
Eignung verschiedener Pattern-Generatoren
I
Vergleich mit der FF-Heuristik
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Anzahl Iterationen des Greedy Algorithmus
Anzahl Iterationen des Greedy Algorithmus
I
Meist eine Zunahme der Qualität mit mehr Iterationen
I
In einzelnen Problemklassen jedoch sinkt die Qualität
signifikant ab einer gewissen Anzahl Iterationen
I
Verschiebung dieses Punktes zu mehr Iterationen bei
komplexeren Problemen
I
Inkohärenter Verlauf der Qualität über die Komplexität der
Probleme
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Anzahl Iterationen des Greedy Algorithmus
Anzahl Iterationen des Greedy Algorithmus
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Anzahl Iterationen des Greedy Algorithmus
Anzahl Iterationen des Greedy Algorithmus
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Pattern Generatoren
Vergleich von Pattern-Generatoren
Pattern-Generator
Algorithmus
Summe
Potenzialheuristiken aus Pattern-Datenbanken
Coverage
Systematic
Greedy Algebraic
908
721
Hillclimbing
Greedy Algebraic
476
579
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Vergleich mit der FF-Heuristik
Vergleich mit der FF-Heuristik
Konfiguration
Coverage - Total
Coverage
Greedy-best Algebraic-best
908
721
FF
1115
I
FF-Heuristik stärker als die hier entwickelten Heuristiken
I
Greedy-Algorithmus stärker als der algebraische
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Qualität der Heuristik
Schlussfolgerungen
I
Greedy-Algorithmus mit Fehlertoleranz steuern
I
Teils Unterschiede in der Qualität der Information
I
Hillclimbing mit algebraischem Algorithmus
I
Systematic mit Greedy-Algorithmus
I
Noch einiges Verbesserungspotenzial vorhanden
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Weiterführende Arbeit
Weiterführende Arbeit
I
Gewichtung der abstrakten Zustände bzw. der Patterns
I
Statistische Analyse der h-Werte der Pattern-Datenbanken
I
Handhabe von Dead-Ends
I
Ergründen weshalb mit weniger Iterationen teils bessere
Resultate erzielt werden können
I
Andere Heuristiken als Grundlage für eine Potenzialheuristik
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Weiterführende Arbeit
Literaturverzeichnis
S. Edelkamp.
Planning with pattern databases.
In A. Cesta and D. Borrajo, editors, Proceedings of the Sixth European Conference on Planning (ECP
2001), pages 84–90. AAAI Press, 2001.
P. Haslum, A. Botea, M. Helmert, B. Bonet, and S. Koenig.
Domain-independent construction of pattern database heuristics for cost-optimal planning.
In Proceedings of the Twenty-Second AAAI Conference on Artificial Intelligence (AAAI 2007), pages
1007–1012. AAAI Press, 2007.
M. Helmert.
The fast downward planning system.
Journal of Artifcial Intelligence Research, 26:191–246, 2009.
F. Pommerening, M. Helmert, G. Röger, and J. Seipp.
From non-negative to general operator cost partitioning.
In Proceedings of the Twenty-Ninth AAAI Conference on Artificial Intelligence (AAAI 2015), pages
3335–3341. AAAI Press, 2015.
F. Pommerening, G. Röger, and M. Helmert.
Getting the most out of pattern databases for classical planning.
In F. Rossi, editor, Proceedings of the 23rd International Joint Conference on Artificial Intelligence (IJCAI
2013), pages 2357–2364, 2013.
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Einführung
Greedy Algorithmus
Algebraischer Algorithmus
Experimente
Schlussfolgerungen
Weiterführende Arbeit
Fragen
Potenzialheuristiken aus Pattern-Datenbanken
Universität Basel
Herunterladen