20
1 9/9/2014 S. Joo ([email protected]) 1 CS 4649/7649 Robot Intelligence: Planning Sungmoon Joo School of Interactive Computing College of Computing Georgia Institute of Technology Efficient Planning, PDDL *Slides based on Dr. Mike Stilman’s lecture slides 9/9/2014 S. Joo ([email protected]) 2 Course Info. Course Website: joosm.github.io/RIP2014 Course Wiki: github.com/RIP2014/RIP2014Wiki/wiki - add your contact info, start grouping/filling in project ideas, etc. HW#1, due Sept. 29

Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

1

9/9/2014S. Joo ([email protected]) 1

CS 4649/7649Robot Intelligence: Planning

Sungmoon Joo

School of Interactive Computing

College of Computing

Georgia Institute of Technology

Efficient Planning, PDDL

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAA

*Slides based on Dr. Mike Stilman’s lecture slides

9/9/2014S. Joo ([email protected]) 2

Course Info.

• Course Website: joosm.github.io/RIP2014 • Course Wiki: github.com/RIP2014/RIP2014Wiki/wiki

- add your contact info, start grouping/filling in project ideas, etc.• HW#1, due Sept. 29

Page 2: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

2

9/9/2014S. Joo ([email protected]) 3

Efficiency in Planning

9/9/2014S. Joo ([email protected]) 4

Properties of Heuristics: h(s)

• Is A* with Admissible h(s) optimal?

Page 3: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

3

9/9/2014S. Joo ([email protected]) 5

Heuristics in Planning

9/9/2014S. Joo ([email protected]) 6

Heuristics in Planning

Page 4: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

4

9/9/2014S. Joo ([email protected]) 7

Domain Independent Heuristics

9/9/2014S. Joo ([email protected]) 8

HSP (Bonet & Geffner 1997)

Page 5: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

5

9/9/2014S. Joo ([email protected]) 9

Computing Costs of Literals

9/9/2014S. Joo ([email protected]) 10

HSP Progression Heuristic

Page 6: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

6

9/9/2014S. Joo ([email protected]) 11

HSP Heuristics

H0

- Cost of action is sum of precondition costs

- Informed, but not admissible

H1

- Cost of Action is maximum over costs of preconditions- Admissible, but not very informed

H2

- Solve for pairs of literals- Take maximum cost over all pairs- Informed, and claimed to be admissible

9/9/2014S. Joo ([email protected]) 12

H0

Page 7: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

7

9/9/2014S. Joo ([email protected]) 13

H1

9/9/2014S. Joo ([email protected]) 14

H2

Page 8: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

8

9/9/2014S. Joo ([email protected]) 15

FF (Hoffman 2000)

Refines HSP Heuristics

9/9/2014S. Joo ([email protected]) 16

FF Heuristic

Page 9: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

9

9/9/2014S. Joo ([email protected]) 17

FF Heuristic

9/9/2014S. Joo ([email protected]) 18

FF Heuristic

Page 10: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

10

9/9/2014S. Joo ([email protected]) 19

FF Heuristic

9/9/2014S. Joo ([email protected]) 20

FF vs. HSP

and admissible

Page 11: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

11

9/9/2014S. Joo ([email protected]) 21

FF vs. HSP

9/9/2014S. Joo ([email protected]) 22

Plan Space Planning?

(reduces branching factor)

(Which subgoal(or threat) should be worked on?)

Page 12: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

12

9/9/2014S. Joo ([email protected]) 23

The Long Road

9/9/2014S. Joo ([email protected]) 24

Propositional Satisfiability: Since 1960s

Page 13: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

13

9/9/2014S. Joo ([email protected]) 25

Planning As Satisfiability

9/9/2014S. Joo ([email protected]) 26

Encoding Plans as SAT

Page 14: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

14

9/9/2014S. Joo ([email protected]) 27

Encoding Plans as SAT

only one action occurs at each time point

describe the predicate that are not affected by the actions

9/9/2014S. Joo ([email protected]) 28

Encoding Plans as SAT

Page 15: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

15

9/9/2014S. Joo ([email protected]) 29

Solving SAT

9/9/2014S. Joo ([email protected]) 30

The Last Classical Story

Page 16: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

16

9/9/2014S. Joo ([email protected]) 31

The Last Classical Story

9/9/2014S. Joo ([email protected]) 32

Who Won in 2008? FF/HSP Strike Back!

Page 17: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

17

9/9/2014S. Joo ([email protected]) 33

Who Won in 2011?

• Sequential Track: Winner - LAMA 2011Runner up - Stone Soup

9/9/2014S. Joo ([email protected]) 34

Who Won in 2014?

67 planners in total from 66 people from 14 countries: Australia, Canada,Czech Republic, Finland, France, Germany, Iran, Israel, New Zealand,Spain, Switzerland, UK, Venezuela, and USA

*China(X), India(X), Italy(X)

• Sequential Optimal track: Winner - SymBA*-2, SymBA*-1

Runner up – cGamer• Sequential Multi-core track: Winner - ArvandHerd

Runner up – IBaCoP• Sequential Satisficing track: Winner – IBaCoP2

Runner up - Mercury• Agile track: Winner – YAHSP3

Runner up – Madagascar-pC• Temporal track: Winner – YAHSP3-MT

Runner up – Temporal Fast Downward

Page 18: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

18

9/9/2014S. Joo ([email protected]) 35

Summary

9/9/2014S. Joo ([email protected]) 36

PDDL = Planning Domain Definition Language

PDDL

• Components of a PDDL planning task:

-Objects: Things in the world- Predicates: Object properties- Initial state: The state of the world that we start in- Goal specification: Things that we want to be true- Actions/Operators: Ways of changing the state of the world

Page 19: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

19

9/9/2014S. Joo ([email protected]) 37

How to use PDDL for planning problems?

PDDL

• Two files

- A domain file: predicates and actions- A problem file: objects, initial state and goal specification

(define (domain hanoi-domain)

(:requirements :equality)

(:predicates (disk ?x) (smaller ?x ?y) (on ?x ?y) (clear ?x))

(:action move-disk

:parameters (?disk ?below-disk ?new-below-disk)

:precondition (and (disk ?disk)

(smaller ?disk ?new-below-disk)

(not (= ?new-below-disk ?below-disk))

(not (= ?new-below-disk ?disk))

(not (= ?below-disk ?disk))

(on ?disk ?below-disk)

(clear ?disk)

(clear ?new-below-disk))

:effect (and (clear ?below-disk)

(on ?disk ?new-below-disk)

(not (on ?disk ?below-disk))

(not (clear ?new-below-disk)))))

9/9/2014S. Joo ([email protected]) 38

How to use PDDL for planning problems?

PDDL

• Two files

- A domain file: predicates and actions- A problem file: objects, initial state and goal specification

(define (problem hanoi-problem)(:domain hanoi-domain)(:objects p1 p2 p3 d1 d2 d3)(:init (smaller d1 p1) (smaller d2 p1) (smaller d3 p1)

(smaller d1 p2) (smaller d2 p2) (smaller d3 p2) (smaller d1 p3) (smaller d2 p3) (smaller d3 p3) (smaller d1 d2) (smaller d1 d3) (smaller d2 d3) (clear p1) (clear p2) (clear d1) (disk d1) (disk d2) (disk d3) (on d1 d2) (on d2 d3) (on d3 p3))(:goal (and (on d1 d2) (on d2 d3) (on d3 p1))))

Page 20: Efficient Planning, PDDL - GitHub Pages · HSP Heuristics H 0 - Cost of action is sum of precondition costs - Informed, but not admissible H 1 - Cost of Action is maximum over costs

20

9/9/2014S. Joo ([email protected]) 39

PDDL

• Domain description

(define (domain hanoi-domain)

(:requirements :equality)

(:predicates (disk ?x) (smaller ?x ?y) (on ?x ?y) (clear ?x))

(:action move-disk

:parameters (?disk ?below-disk ?new-below-disk)

:precondition (and (disk ?disk)

(smaller ?disk ?new-below-disk)

(not (= ?new-below-disk ?below-disk))

(not (= ?new-below-disk ?disk))

(not (= ?below-disk ?disk))

(on ?disk ?below-disk)

(clear ?disk)

(clear ?new-below-disk))

:effect (and (clear ?below-disk)

(on ?disk ?new-below-disk)

(not (on ?disk ?below-disk))

(not (clear ?new-below-disk)))))

Domain name

PredicatesActions

*Requirement flags allow a planner to quickly tell if it is likely to be able to hangle the domain

*Action effects can include universal quantifiers(i.e. forall), conditionals (e.g. when)

Requirements

9/9/2014S. Joo ([email protected]) 40

PDDL

• Problem descriptionProblem name

Objects

Initial state

(define (problem hanoi-problem)(:domain hanoi-domain)(:objects p1 p2 p3 d1 d2 d3)(:init (smaller d1 p1) (smaller d2 p1) (smaller

d3 p1) (smaller d1 p2) (smaller d2 p2) (smaller d3 p2) (smaller d1 p3) (smaller d2 p3) (smaller d3 p3) (smaller d1 d2) (smaller d1 d3) (smaller d2 d3) (clear p1) (clear p2) (clear d1) (disk d1) (disk d2) (disk d3) (on d1 d2) (on d2 d3) (on d3 p3))

(:goal (and (on d1 d2) (on d2 d3) (on d3 p1))))

Goal specification

*domain must match the corresponding domain name

Domain