• Keine Ergebnisse gefunden

B2.1Introduction PlanningandOptimization B2.1IntroductionB2.2ProgressionB2.3RegressionB2.4RegressionforSTRIPSTasksB2.5Summary PlanningandOptimization ContentofthisCourse

N/A
N/A
Protected

Academic year: 2022

Aktie "B2.1Introduction PlanningandOptimization B2.1IntroductionB2.2ProgressionB2.3RegressionB2.4RegressionforSTRIPSTasksB2.5Summary PlanningandOptimization ContentofthisCourse"

Copied!
8
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Planning and Optimization

B2. Progression and Regression Search

Malte Helmert and Thomas Keller

Universit¨ at Basel

October 2, 2019

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 1 / 32

Planning and Optimization

October 2, 2019 — B2. Progression and Regression Search

B2.1 Introduction B2.2 Progression B2.3 Regression

B2.4 Regression for STRIPS Tasks B2.5 Summary

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 2 / 32

Content of this Course

Planning

Classical

Foundations Logic Heuristics Constraints

Probabilistic

Explicit MDPs

B2. Progression and Regression Search Introduction

B2.1 Introduction

(2)

B2. Progression and Regression Search Introduction

Search Direction

Search direction

I one dimension for classifying search algorithms

I forward search from initial state to goal based on progression I backward search from goal to initial state based on regression I bidirectional search

In this chapter we look into progression and regression planning.

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 5 / 32

B2. Progression and Regression Search Introduction

Reminder: Interface for Heuristic Search Algorithms

Abstract Interface Needed for Heuristic Search Algorithms I init() returns initial state

I is goal(s ) tests if s is a goal state

I succ(s ) returns all pairs ha, s 0 i with s − → a s 0 I cost(a) returns cost of action a

I h(s) returns heuristic value for state s

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 6 / 32

B2. Progression and Regression Search Progression

B2.2 Progression

B2. Progression and Regression Search Progression

Planning by Forward Search: Progression

Progression: Computing the successor state s J o K of a state s with respect to an operator o.

Progression planners find solutions by forward search:

I start from initial state

I iteratively pick a previously generated state and progress it through an operator, generating a new state

I solution found when a goal state generated

pro: very easy and efficient to implement

(3)

B2. Progression and Regression Search Progression

Search Space for Progression

Search Space for Progression

search space for progression in a planning task Π = hV , I , O, γi (search states are world states s of Π;

actions of search space are operators o ∈ O) I init() returns I

I is goal(s) tests if s | = γ

I succ(s ) returns all pairs ho, s J o K i

where o ∈ O and o is applicable in s I cost(o ) returns cost(o) as defined in Π

I h(s ) estimates cost from s to γ ( Parts C–F)

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 9 / 32

B2. Progression and Regression Search Progression

Progression Planning Example

Example of a progression search

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 10 / 32

B2. Progression and Regression Search Progression

Progression Planning Example

Example of a progression search

B2. Progression and Regression Search Progression

Progression Planning Example

Example of a progression search

(4)

B2. Progression and Regression Search Progression

Progression Planning Example

Example of a progression search

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 13 / 32

B2. Progression and Regression Search Progression

Progression Planning Example

Example of a progression search

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 14 / 32

B2. Progression and Regression Search Progression

Progression Planning Example

Example of a progression search

B2. Progression and Regression Search Progression

Progression Planning Example

Example of a progression search

(5)

B2. Progression and Regression Search Regression

B2.3 Regression

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 17 / 32

B2. Progression and Regression Search Regression

Forward Search vs. Backward Search

Searching planning tasks in forward vs. backward direction is not symmetric:

I forward search starts from a single initial state;

backward search starts from a set of goal states

I when applying an operator o in a state s in forward direction, there is a unique successor state s 0 ;

if we just applied operator o and ended up in state s 0 , there can be several possible predecessor states s

in most natural representation for backward search in planning, each search state corresponds to a set of world states

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 18 / 32

B2. Progression and Regression Search Regression

Planning by Backward Search: Regression

Regression: Computing the possible predecessor states regr(S 0 , o) of a set of states S 0 (“subgoal”) given the last operator o

that was applied.

formal definition in next chapter

Regression planners find solutions by backward search:

I start from set of goal states

I iteratively pick a previously generated subgoal (state set) and regress it through an operator, generating a new subgoal I solution found when a generated subgoal includes initial state pro: can handle many states simultaneously

B2. Progression and Regression Search Regression

Search Space Representation in Regression Planners

identify state sets with logical formulas (again):

I each search state corresponds to a set of world states (“subgoal”)

I each search state is represented by a logical formula:

ϕ represents {s ∈ S | s | = ϕ}

I many basic search operations like detecting duplicates

are NP-complete or coNP-complete

(6)

B2. Progression and Regression Search Regression

Search Space for Regression

Search Space for Regression

search space for regression in a planning task Π = hV , I, O , γi (search states are formulas ϕ describing sets of world states;

actions of search space are operators o ∈ O)

I init() returns γ

I is goal(ϕ) tests if I | = ϕ

I succ(ϕ) returns all pairs ho, regr(ϕ, o)i

where o ∈ O and regr(ϕ, o) is defined I cost(o ) returns cost(o) as defined in Π

I h(ϕ) estimates cost from I to ϕ ( Parts C–F)

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 21 / 32

B2. Progression and Regression Search Regression

Regression Planning Example (Depth-first Search)

γ ϕ 1

ϕ 1 = regr(γ, −→) ϕ 2

ϕ 2 = regr(ϕ 1 , −→) ϕ 3 ϕ 3 = regr(ϕ 2 , −→), I | = ϕ 3

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 22 / 32

B2. Progression and Regression Search Regression

Regression Planning Example (Depth-first Search)

γ

ϕ 1

ϕ 1 = regr(γ, −→) ϕ 2

ϕ 2 = regr(ϕ 1 , −→) ϕ 3 ϕ 3 = regr(ϕ 2 , −→), I | = ϕ 3

B2. Progression and Regression Search Regression

Regression Planning Example (Depth-first Search)

γ ϕ 1

ϕ 1 = regr(γ, −→)

ϕ 2 ϕ 2 = regr(ϕ 1 , −→)

ϕ 3

ϕ 3 = regr(ϕ 2 , −→), I | = ϕ 3

(7)

B2. Progression and Regression Search Regression

Regression Planning Example (Depth-first Search)

γ ϕ 1

ϕ 1 = regr(γ, −→) ϕ 2

ϕ 2 = regr(ϕ 1 , −→)

ϕ 3 ϕ 3 = regr(ϕ 2 , −→), I | = ϕ 3

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 25 / 32

B2. Progression and Regression Search Regression

Regression Planning Example (Depth-first Search)

γ ϕ 1

ϕ 1 = regr(γ, −→) ϕ 2

ϕ 2 = regr(ϕ 1 , −→) ϕ 3 ϕ 3 = regr(ϕ 2 , −→), I | = ϕ 3

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 26 / 32

B2. Progression and Regression Search Regression for STRIPS Tasks

B2.4 Regression for STRIPS Tasks

B2. Progression and Regression Search Regression for STRIPS Tasks

Regression for STRIPS Planning Tasks

Regression for STRIPS planning tasks is much simpler than the general case:

I Consider subgoal ϕ that is conjunction of atoms a 1 ∧ · · · ∧ a n (e.g., the original goal γ of the planning task).

I First step: Choose an operator o that deletes no a i . I Second step: Remove any atoms added by o from ϕ.

I Third step: Conjoin pre(o) to ϕ.

Outcome of this is regression of ϕ w.r.t. o.

It is again a conjunction of atoms.

optimization: only consider operators adding at least one a i

(8)

B2. Progression and Regression Search Regression for STRIPS Tasks

STRIPS Regression

Definition (STRIPS Regression)

Let ϕ = ϕ 1 ∧ · · · ∧ ϕ n be a conjunction of atoms, and let o be a STRIPS operator which adds the atoms a 1 , . . . , a k and deletes the atoms d 1 , . . . , d l .

The STRIPS regression of ϕ with respect to o is sregr(ϕ, o) :=

( ⊥ if ϕ i = d j for some i, j

pre(o) ∧ V ({ϕ 1 , . . . , ϕ n } \ {a 1 , . . . , a k }) else Note: sregr(ϕ, o ) is again a conjunction of atoms, or ⊥.

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 29 / 32

B2. Progression and Regression Search Regression for STRIPS Tasks

Does this Capture the Idea of Regression?

For our definition to capture the concept of regression, it must have the following property:

Regression Property

For all sets of states described by a conjunction of atoms ϕ, all states s and all STRIPS operators o,

s | = sregr(ϕ, o) iff s J o K | = ϕ.

This is indeed true. We do not prove it now because we prove this property for general regression (not just STRIPS) later.

M. Helmert, T. Keller (Universit¨at Basel) Planning and Optimization October 2, 2019 30 / 32

B2. Progression and Regression Search Summary

B2.5 Summary

B2. Progression and Regression Search Summary

Summary

I Progression search proceeds forward from the initial state.

I In progression search, the search space is identical to the state space of the planning task.

I Regression search proceeds backwards from the goal.

I Each search state corresponds to a set of world states, for example represented by a formula.

I Regression is simple for STRIPS operators.

I The theory for general regression is more complex.

This is the topic of the following chapters.

Referenzen

ÄHNLICHE DOKUMENTE

I Propositional planning tasks compactly represent transition systems and are suitable as inputs for planning algorithms. I They are based on concepts from propositional logic,

A6.2 Positive Normal Form A6.3 Example and Discussion A6.4 STRIPS..

A7.3 FDR Planning Tasks A7.4 FDR Task Semantics A7.5 SAS + Planning Tasks A7.6 Summary.. Keller (Universit¨ at Basel) Planning and Optimization October 8, 2018 2

I backward search from goal to initial state based on regression?. I

forward search from initial state to goal based on progression backward search from goal to initial state based on regression bidirectional searcho. Today we will look into

Keller (Universit¨ at Basel) Planning and Optimization November 21, 2018 2 / 25G. Content of

DR-MDPs with finite state set are always cyclic ⇒ acyclic policy evaluation not applicable But: existence of goal state not required for iterative policy evaluation albeit traces

I Single-outcome determinizations: important parts of state space can become unreachable ⇒ poor policy or unsolvable. I All-outcomes determinization: