spock kirk’s real tpn planner

Post on 19-Mar-2016

53 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Spock Kirk’s real TPN Planner. Jonathan Kennell. Traditional Model-based Programming. New Model-based Programming. Mission Planning Spock. Mission Planning Ex. Europa. Scientist. Model-based Executive Kirk. Model-based Executive Ex. Titan. Robot. Planner Requirements. Optimal - PowerPoint PPT Presentation

TRANSCRIPT

SpockKirk’s real TPN Planner

Jonathan Kennell

Mission PlanningSpock

Model-based ExecutiveKirk

Traditional Model-based Programming

Mission PlanningEx. Europa

Model-based ExecutiveEx. Titan

Scientist

Robot

New Model-based Programming

Planner Requirements

Optimal Robots are expensive – non-optimal technology

cannot be trusted

Flexible Time-bounds Planners that use an idealized representation of

time are not robust when applied to real-world problems

Rich Activity Representation Vehicle models require expressive language

Existing Technology

Task-decomposition Planners i.e. SHOP2, present-day Kirk Not optimal

(don’t actually solve planning problem)

Plan-graph-based Planners i.e. Graphplan, LPGP Not optimal over metrics other than makespan Can’t handle flexible time-bounds

Local-search Planners i.e. LPG Not optimal

Our Solution - Spock Representation - Complete

Based on Temporal Plan Networks Inherits from

Constraint programming i.e. TCC, HCC

Simple temporal networks Supports optimality, temporal flexibility, and rich activities

Algorithm – Work Ongoing Needs to be fast

Could be a challenge, since optimality and expressiveness usually come at a cost of speed

Needs to be optimal (systematic) Future work

Incorporate relaxed plan cost heuristic Use conflicts to focus search Adapt for solving via SAT-solver (i.e. Blackbox)

The Big Idea…

Plan by building a TPN The TPN satisfies the

control program by adding in primitive activities

Key issues TPN should be

consistent Should explore

systematically

What is a TPN?

3

6

4 5[405,486]

Ask(PATH1=OK)

1 2

7Ask(PATH2=OK)

8

[405,486]

[450,540]

Ask(PROCEED)

11

9 10

[0,54]

12

13

[0,2]

[0,]

[0,] [0,]

14 15

Tell(PATH1=OK)

[450,450]16 17

Tell(PROCEED)

[200,200]

s e[500,800]

[10,10] [0,]

Group Traverse

Group Traverse Group Wait

Group Transmit

Science Target

Enforcing Consistency

Temporal Consistency Structure based on STN Use STN temporal consistency checks between

iterations Incremental temporal consistency checker would be

useful… thanks I-hsiang

Inserted

Enforcing Consistency Symbolic Consistency

Objective Want to make sure all Asks are supported Want to make sure no Tells conflict

Solution Only insert asks when satisfying tell exists When inserting ask, add ordering arcs that ensure support Only insert Tells when existing tells do not conflict Add ordering arcs between mutex tells

Tell F = true

Ask F = trueTell F = false

Enabled

Not Enabled

Enablement

A node is enabled whenAll predecessors have been insertedAny Asks that follow this node can be

matched with active TellsAny Tells that follow this node are

consistent with the active Tells

Enforcing Systematic Search

AB

C

B

C

A CA

B

(A V B V C)…

Enforcing Systematic Search

(A V B V C)…A Not A

B Not B

C Not C C Not C

B Not B

C Not C C Not C

That’s Search-tastic!

Spock’s Systematic Search

• Same idea…

• Each node is either inserted, or “blocked”

• “Blocked” nodes can never be inserted via the “blocked” enabling set

Example Problemmainstart A 0 +INF (:tell A = true)start B 0 +INFB C 0 +INF (:ask B = true)

activity 1start mid1 0 10 (:ask A = true)mid1 mid2 0 0 mid2 end 2 4 (:tell B = true) (:tell A = false)

start

C

A

B

Tell A = true

Ask B = true[0,+INF]

[0,+INF][0,+INF]

start mid1 mid2 endAsk A = true[0,10] [0,0] [2,4]

Tell B = trueTell A = false

Control Program

Primitive Activity

Initialization

start

C

A

B

Tell A = true

Ask B = true[0,+INF]

[0,+INF] [0,+INF]

Control Program

start mid1

mid2 end

Ask A = true[0,10]

[0,0]

[2,4]

Tell B = trueTell A = false

Primitive Activity

Step 1

Step 2

Step 3

Step 4

Step 5

Step 6

Step 7

Step 8

Complete Plan

Rich Activities

Spock’s TPN Control Program and Primitive Activities are super-flexible

PDDL+ Operators can be mapped in their entirety into TPNs

PDDL+:

Start preconditions AStart effects BInvariant conditions CInvariant effects DEnd preconditions EEnd effects FDuration G

[0,0] [0,0]Ask A Ask C Ask E

Tell B

Tell D

Tell F

[G,G]

[0,+INF]

[0,+INF]

Future Work…

Make Fast Algorithm Incorporate relaxed plan cost heuristicUse conflicts to focus searchAdapt for solving via SAT-solver (i.e.

Blackbox)

Problem…Detecting symmetryDetecting no progress

The End

top related