• Keine Ergebnisse gefunden

Planning and Optimization D3. Pattern Databases: Introduction Gabriele R¨oger and Thomas Keller

N/A
N/A
Protected

Academic year: 2022

Aktie "Planning and Optimization D3. Pattern Databases: Introduction Gabriele R¨oger and Thomas Keller"

Copied!
8
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Planning and Optimization

D3. Pattern Databases: Introduction

Gabriele R¨oger and Thomas Keller

Universit¨at Basel

October 31, 2018

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 1 / 30

Planning and Optimization

October 31, 2018 — D3. Pattern Databases: Introduction

D3.1 Projections and Pattern Database Heuristics D3.2 Implementing PDBs: Precomputation

D3.3 Implementing PDBs: Lookup D3.4 Summary

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 2 / 30

Content of this Course

Planning

Classical

Tasks Progression/

Regression Complexity Heuristics

Probabilistic

MDPs Uninformed Search

Heuristic Search Monte-Carlo

Methods

Content of this Course: Heuristics

Heuristics

Delete Relaxation

Abstraction

Abstractions in General

Pattern Databases

Merge &

Shrink Landmarks

Potential Heuristics

Cost Partitioning

(2)

D3. Pattern Databases: Introduction Projections and Pattern Database Heuristics

D3.1 Projections and Pattern Database Heuristics

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 5 / 30

D3. Pattern Databases: Introduction Projections and Pattern Database Heuristics

Pattern Database Heuristics

I The most commonly used abstraction heuristics in search and planning arepattern database (PDB) heuristics.

I PDB heuristics were originally introduced for the 15-puzzle(Culberson & Schaeffer, 1996) and for Rubik’s cube(Korf, 1997).

I The first use for domain-independent planning is due to Edelkamp (2001).

I Since then, much research has focused on the theoretical properties of pattern databases, how to use pattern databases more effectively, how to find good patterns, etc.

I Pattern databases are a very active research area

both in planning and in (domain-specific) heuristic search.

I For many search problems, pattern databases are the most effective admissible heuristicscurrently known.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 6 / 30

D3. Pattern Databases: Introduction Projections and Pattern Database Heuristics

Pattern Database Heuristics Informally

Pattern Databases: Informally

A pattern database heuristic for a planning task is an abstraction heuristic where

I some aspects of the task are represented in the abstraction with perfect precision, while

I all other aspects of the task arenot represented at all.

This is achieved byprojecting the task onto those variables that describe the aspects that are represented.

D3. Pattern Databases: Introduction Projections and Pattern Database Heuristics

Example: Transition System

LRR LLL

LLR

LRL

ALR

ALL

BLL

BRL

ARL

ARR

BRR

BLR

RRR RRL

RLR

RLL

Logistics problem with one package, two trucks, two locations:

I state variablepackage: {L,R,A,B}

(3)

Example: Projection (1)

Abstraction induced by π{package}:

LRR LLL

LLR

LRL LRR

LLR

LRL LLL

ALR ARL

ALL ARR

ALR ARL

ARR ALL

BLL

BRL

BRR

BLR BLL BRR

BLR BRL

RRR RRL

RLR

RLLRLL RRL

RLR RRR

h{package}(LRR) = 2

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 9 / 30

Example: Projection (2)

Abstraction induced byπ{package,truck A}:

LRR

LRL LRR

LRL LLL LLRLLR

LLL

ALR

ALL ALR

ALL

ARL

ARR ARL

ARR

BRR

BLL BLR

BRL

BLL BLR

BRL BRR

RRR RRLRRL

RRR

RLR

RLLRLL

RLR

h{package,truck A}(LRR) = 2

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 10 / 30

D3. Pattern Databases: Introduction Projections and Pattern Database Heuristics

Projections

Formally, pattern database heuristics are abstraction heuristics induced by a particular class of abstractions called projections.

Definition (Projection)

Let Π be an FDR planning task with variables V and states S.

Let P ⊆V, and letS0 be the set of states overP. Theprojection πP :S →S0 is defined as πP(s) :=s|P, where s|P(v) :=s(v) for allv ∈P.

We call P the patternof the projectionπP.

In other words,πP maps two statess1 ands2 to the same abstract state iff they agree on all variables inP.

D3. Pattern Databases: Introduction Projections and Pattern Database Heuristics

Pattern Database Heuristics

Abstraction heuristics based on projections are called pattern database(PDB) heuristics.

Definition (Pattern Database Heuristic)

The abstraction heuristic induced byπP is called apattern database heuristicor PDB heuristic.

We writehP as a shorthand forhπP.

Why are they calledpattern database heuristics?

I Heuristic values for PDB heuristics are traditionally stored in a 1-dimensional table (array) called a pattern database(PDB).

Hence the name “PDB heuristic”.

(4)

D3. Pattern Databases: Introduction Projections and Pattern Database Heuristics

Pattern Databases: Chapter Overview

In the following, we will discuss:

I how to implementPDB heuristics this chapter

I how to effectively make use ofmultiple PDB heuristics Chapter D4

I how to find good patternsfor PDB heuristics Chapter D5

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 13 / 30

D3. Pattern Databases: Introduction Projections and Pattern Database Heuristics

Pattern Database Implementation

Assume we are given a pattern P for a planning task Π.

How do we implementhP?

1 In a precomputationstep, we compute a graph representation for the abstraction T(Π)πP and compute the abstract goal distance for each abstract state.

2 During search, we use the precomputed abstract goal distances in a lookupstep.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 14 / 30

D3. Pattern Databases: Introduction Implementing PDBs: Precomputation

D3.2 Implementing PDBs:

Precomputation

D3. Pattern Databases: Introduction Implementing PDBs: Precomputation

Precomputation Step

Let Π be a planning task andP a pattern.

LetT =T(Π) andT0 =TπP.

I We want to compute a graph representation of T0.

I T0 is defined through an abstraction ofT.

I For example, each concrete transition induces an abstract transition.

I However, we cannot computeT0 by iterating over all transitions of T.

I This would take time Ω(kT k).

I This is prohibitively long (so long that we could solve the task using uniform-cost search or similar techniques).

I Hence, we need a way of computingT0 in time which is polynomial only inkΠkandkT0k.

(5)

Syntactic Projections

Definition (Syntactic Projection)

Let Π =hV,I,O, γi be an FDR planning task, and let P ⊆V be a subset of its variables.

Thesyntactic projection Π|P of Π toP is the FDR planning task hP,I|P,{o|P |o∈O}, γ|Pi, where

I ϕ|P for formulaϕis defined as the formula obtained fromϕ by replacing all atoms (v =d) with v ∈/ P by >, and

I o|P for operatoro is defined by replacing all formulasϕ occurring in the precondition or effect conditions of o with ϕ|P and all atomic effects (v :=d) withv ∈/P with the empty effect>.

Put simply, Π|P throws away all information not pertaining to variables inP.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 17 / 30

Trivially Inapplicable Operators

Definition (Trivially Inapplicable Operator)

An operatoro of a SAS+ task is called trivially inapplicableif

I pre(o) contains the atoms (v =d) and (v =d0) for some variablev and valuesd 6=d0, or

I eff(o) contains the effects (v :=d) and (v :=d0) for some variablev and valuesd 6=d0.

Notes:

I Trivially inapplicable operators are never applicable and can thus be safely omitted from the task.

I Trivially inapplicable operators can be detected in linear time.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 18 / 30

D3. Pattern Databases: Introduction Implementing PDBs: Precomputation

Trivially Unsolvable SAS

+

Tasks

Definition (Trivially Unsolvable)

A SAS+ task Π =hV,I,O, γi is calledtrivially unsolvable if γ contains the atoms (v =d) and (v =d0)

for some variable v and valuesd 6=d0. Notes:

I Trivially unsolvable SAS+ tasks have no goal states and are hence unsolvable.

I Trivially unsolvable SAS+ tasks can be detected in linear time.

D3. Pattern Databases: Introduction Implementing PDBs: Precomputation

Equivalence Theorem for Syntactic Projections

Theorem (Syntactic Projections vs. Projections)

LetΠ be a SAS+ task that is not trivially unsolvable and has no trivially inapplicable operators, and let P be a pattern for Π.

ThenT(Π|P)∼ TG (Π)πP. Proof.

exercises

(6)

D3. Pattern Databases: Introduction Implementing PDBs: Precomputation

PDB Computation

Using the equivalence theorem, we can compute pattern databases for (not trivially unsolvable) SAS+ tasks Π and patterns P:

Computing Pattern Databases def compute-PDB(Π, P):

Remove trivially inapplicable operators from Π.

Compute Π0:= Π|P. ComputeT0 :=T(Π0).

Perform a backward uniform-cost search from the goal states ofT0 to compute all abstract goal distances.

PDB:= a table containing all goal distances in T0 returnPDB

The algorithm runs in polynomial time and space in terms of kΠk+|PDB|.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 21 / 30

D3. Pattern Databases: Introduction Implementing PDBs: Precomputation

Generalizations of the Equivalence Theorem

I The restrictions to SAS+tasks and to tasks

without trivially inapplicable operators are necessary.

I We can slightly generalize the result if we allow general negation-free formulas, but still forbid conditional effects.

I In that case, the weighted graph ofT(Π)πP is isomorphic to a subgraph of the weighted graph ofT(Π|P).

I This means that we can useT(Π|P) to derive an admissible estimate ofhP.

I With conditional effects, not even this weaker result holds.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 22 / 30

D3. Pattern Databases: Introduction Implementing PDBs: Precomputation

Going Beyond SAS

+

Tasks

I Most practical implementations of PDB heuristics are limited to SAS+ tasks (or modest generalizations).

I One way to avoid the issues with general FDR tasks is to convert them to equivalent SAS+ tasks.

I However, most direct conversions can exponentially increase the task size in the worst case.

We will only consider SAS+ tasks in the chapters dealing with pattern databases.

D3. Pattern Databases: Introduction Implementing PDBs: Lookup

D3.3 Implementing PDBs: Lookup

(7)

Lookup Step: Overview

I During search, the PDB is the only piece of information necessary to representhP. (It is not necessary to store the abstract transition system itself at this point.)

I Hence, the space requirements for PDBs during search are linear in the number of abstract statesS0:

there is one table entry for each abstract state.

I During search,hP(s) is computed by mapping

πP(s) to a natural number in the range{0, . . . ,|S0| −1}

using aperfect hash function, then looking up the table entry for this number.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 25 / 30

Lookup Step: Algorithm

LetP ={v1, . . . ,vk} be the pattern.

I We assume that all variable domains are natural numbers counted from 0, i.e., dom(v) ={0,1, . . . ,|dom(v)| −1}.

I For alli ∈ {1, . . . ,k}, we precomputeNi :=Qi−1

j=1|dom(vj)|.

Then we can look up heuristic values as follows:

Computing Pattern Database Heuristics def PDB-heuristic(s):

index := Pk

i=1Nis(vi) return PDB[index]

I This is a very fastoperation: it can be performed in O(k).

I For comparison, most relaxation heuristics need time O(kΠk) per state.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 26 / 30

D3. Pattern Databases: Introduction Implementing PDBs: Lookup

Lookup Step: Example (1)

Abstraction induced by π{package,truck A}:

LRR

LRL LRR

LRL LLL LLRLLR

LLL

ALR

ALL ALR

ALL

ARL

ARR ARL

ARR

BRR

BLL BLR

BRL

BLL BLR

BRL BRR

RRR RRLRRL

RRR

RLR

RLLRLL

RLR

D3. Pattern Databases: Introduction Implementing PDBs: Lookup

Lookup Step: Example (2)

I P ={v1,v2}with v1 =package,v2 =truck A.

I dom(v1) ={L,R,A,B} ≈ {0,1,2,3}

I dom(v2) ={L,R} ≈ {0,1}

N1=Q0

j=1|dom(vj)|= 1,N2 =Q1

j=1|dom(vj)|= 4 index(s) = 1·s(package) + 4·s(truck A)

Pattern database:

abstract state LL RL AL BL LR RR AR BR

index 0 1 2 3 4 5 6 7

value 2 0 2 1 2 0 1 1

(8)

D3. Pattern Databases: Introduction Summary

D3.4 Summary

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 29 / 30

D3. Pattern Databases: Introduction Summary

Summary

I Pattern database (PDB) heuristics are abstraction heuristics based onprojection to a subset of variables.

I For SAS+ tasks, they can easily be implemented via syntactic projectionsof the task representation.

I PDBs arelookup tablesthat store heuristic values, indexed byperfect hash values for projected states.

I PDB values can be looked up very fast, in time O(k) for a projection tok variables.

G. R¨oger, T. Keller (Universit¨at Basel) Planning and Optimization October 31, 2018 30 / 30

Referenzen

ÄHNLICHE DOKUMENTE

a) Ich und/oder Mitglieder der Bietergemeinschaft und/oder Subunternehmer verfüge(n) bereits jetzt über das gesamte in der Leistungsbeschreibung geforderte Personal. Wenn „NEIN“. b)

I The canonical heuristic function is the best possible additive/maximizing combination for a given pattern collection given this additivity criterion. Pattern Databases:

Additivity & the Canonical Heuristic Dominated Additive Sets Redundant Patterns Summary.. Content of

D5.1 Pattern Selection as Local Search D5.2 Search Neighbourhood.. D5.3 Literature

estimating search effort under the resulting heuristic using a model for predicting search effort (Haslum et al., 2007) sampling states in the state space and counting how many of

Ziel ist es, dass ihr während des Abspielens des Filmes gleichzeitig die Stimme nachmachen könnt.“.. Auftrag für

Cohendet, 1997; Danish Agency for Science Technology and Innovation, 2008; Hertzfeld, 2002; Prognos AG, 2008). Face-to-face interviews were held in this evaluation with twenty key

Evaluation, Treatment, and Prevention of Vitamin D Deficiency: an Endocrine Society Clinical Practice Guideline.. The Journal of Clinical Endocrinology &