Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on...

30
Executing Programs on Continuous States Prof. Brian Williams Dr. Andreas Hofmann March 9th, 2016 Cognitive Robotics (16.412J / 6.834J) 3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States photo courtesy MIT News 1

Transcript of Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on...

Page 1: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Executing Programs on Continuous States

Prof. Brian Williams Dr. Andreas Hofmann

March 9th, 2016 Cognitive Robotics (16.412J / 6.834J)

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States

photo courtesy MIT News

1

Page 2: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

• How to specify goal-directed motion planning problems as qualitative state plans (QSP).

• How to encode QSP motion planning as a constraint optimization problem.

• How to encode motion policies for under actuated robots using flow tubes.

• How to implement compliant, QSP motion execution by extending dynamic scheduling with flow tube execution.

After lecture you will know how to…

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 2

Page 3: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Today:

• T. Léauté and B. Williams, “Coordinating Agile Systems Through the Model-based Execution of Temporal Plans," Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120.

• A. Hofmann and B. Williams, “Exploiting Spatial and Temporal Flexibility for Plan Execution of Hybrid, Under-Actuated Systems," Proceedings of the Twenty first National Conference on Artificial Intelligence (AAAI-06), Boston, MA, July 2006, pp. 948-955.

Next:

• P. Yu and B. Williams, “Continuously Relaxing Over-constrained Conditional Temporal Problems through Generalized Conflict Learning and Resolution,” Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI-13), Beijing, China, August 2013.

Homework:

• PSet #3 PDDL Modeling, out today, due today, Wed, March 9th.

• Advanced Lecture Sign up: Coming out soon

• Hybrid Estimation problem set: Coming out soon

Assignments

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 3

Page 4: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States

A single “cognitive system” language and executive.

User Kirk

Pike

Sulu Chekov

Goals &

models

in RMPL

Control

Commands

Enterprise

Coordinates and monitors tasks

Plans paths

Sketches mission and assigns tasks

Burton

Plans actions

Bones Diagnoses likely failures

Uhura

Collaboratively resolves goal failures

© source unknown. All rights reserved. This content is excluded from our CreativeCommons license. For more information, see https://ocw.mit.edu/help/faq-fair-use/.

4

Page 5: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Model-based Execution for Hybrid Systems

MBARI Dorado-class AUV:

– 6000m rated

– 20 hour operation

– Multibeam Sonars

– 3+ knots speed

Challenges:

• Long mission duration

• Limited communication

• GPS unavailable

• Uncertainty

– tides and currents

– estimation error 16.412J / 6.834J – L11 Programs on Continuous States 3/9/2016

© MBARI. All rights reserved. This content is excludedfrom our Creative Commons license. For moreinformation, see https://ocw.mit.edu/help/faq-fair-use/.

5

Page 6: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Dynamic Execution of State Plans

Command script

00:00 Go to x1,y1 00:20 Go to x2,y2 00:40 Go to x3,y3 … 04:10 Go to xn,yn

Plant

Commands

Leaute & Williams, AAAI 05

16.412J / 6.834J – L11 Programs on Continuous States 3/9/2016

© MBARI. All rights reserved. This content is excludedfrom our Creative Commons license. For moreinformation, see https://ocw.mit.edu/help/faq-fair-use/.

6

Page 7: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Dynamic Execution of State Plans

Sulu

Model-based Executive

Observations Commands

“Explore mapping region for at least 100s, then explore bloom region for at least 50s, then return to pickup region.

Avoid obstacles at all times” State Plan

Plant

Leaute & Williams, AAAI 05

Optimal

Robust

Dynamics

+ Constraints

16.412J / 6.834J – L11 Programs on Continuous States 3/9/2016

© MBARI. All rights reserved. This content is excludedfrom our Creative Commons license. For moreinformation, see https://ocw.mit.edu/help/faq-fair-use/.

7

Page 8: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Sulu: Dynamic Execution of State Plans

Remain in [safe region]

Remain in [bloom region]

e1 e5 Remain in [mapping region] e2 e3 e4

End in [pickup region]

[50,70] [40,50]

[0,300]

Obstacle 1

Obstacle 2

Mapping Region

Bloom Region

Pickup Region

“Explore bloom region for between 50 and 70 seconds. Afterwards, explore mapping region for between 40s and 50s. End in the pickup region. Avoid obstacles at all times. Complete the mission within 300s”

Approach: Frame as Model-Predictive Control using Mixed Logic or Integer / Linear Programming.

[Leaute & Williams, AAAI 05]

A state plan is a model-based program that is unconditional, timed, and hybrid and provides flexibility in state and time.

16.412J / 6.834J – L11 Programs on Continuous States 3/9/2016 8

Page 9: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Trajectory Planning

Start

position

Goal

position

RRT, Ta

RRT, Tb

Exact

Graph Search Optimization

Sample-based Obstacle 1

Obstacle 2

Goal Region

Risk-bounded Probabilistic

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 9

Page 10: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Outline • Goal-directed Motion Planning (Sulu)

• Compliant, Goal-directed Motion Planning for Under-actuated Robots (Chekov)

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 10

Page 11: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Trajectory Optimization • Plan control trajectory =

constraint optimization

Start

Goal

Ppts

pJp

..

)(min

p: path

P: Set of feasible paths

J: cost function

How do we encode the constraints for goal-directed trajectory optimization?

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 11

Page 12: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Finite Horizon Trajectory Optimization • Formulate as Linear (LP), Mixed Integer (MILP) or Mixed-Logic (MLLP) Program.

)1,1,0(

),1,0(

)1,1,0(

..

),(min

maxmax

goal

start0

1

, ::

Nk

NkNk

ts

J

k

N

kkk

NNNN

uuu

xx

xx

gHx

BuAxx

uuxx

k

11ux 11

Cost function

Dynamics

Spatial constraints

Initial position and velocity

Goal position and velocity

Actuation limits

TkykxkT

kkkkk FFyxyx ,, , ux

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 12

Page 13: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Encoding Spatial Constraints • 2-D Omni-dimensional Holonomic Vehicle in a room

gHx

or

gyx

h nT

nn

4

1

Spatial constraints:

Vehicle must be in the room

Start

Goal

Initial velocity

11 gyx

h T

22 gyx

h T

33 gyx

h T

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 13

Page 14: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

18

Encoding Qualitative State Plans

• Example 1:

Fire

Temporal constraint [lower bound, upper bound]

Sulu [Leaute & Williams, AAAI05]

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 14

Page 15: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Encoding Temporal Constraints

eE eS [LB, UB]

UBeTeTLB SE )()(

ariablesdecision v :)(),( SE eTeT

•Thomas Léauté, "Coordinating Agile Systems through the Model-based Execution of Temporal Plans, " S. M. Thesis, Massachusetts Institute of Technology, August 2005. •Thomas Léauté, Brian Williams, “Coordinating Agile Systems Through the Model-based Execution of Temporal Plans," Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120.

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 15

Page 16: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Encoding “Remain In” Constraints

Remain in [ R ] eE eS

ReTteT kEkS

Nk

k

x)()(0

•Thomas Léauté, "Coordinating Agile Systems through the Model-based Execution of Temporal Plans, " S. M. Thesis, Massachusetts Institute of Technology, August 2005. •Thomas Léauté, Brian Williams, “Coordinating Agile Systems Through the Model-based Execution of Temporal Plans," Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120.

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 16

Page 17: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Encoding “End In” Constraints

End in [ R ] eE eS

k=0

k=N

Útk

t

2£T (eE )£ tk +

t

2

ÙxkÎ R

ì

íï

îï

ü

ýï

þï

Constant

Variable

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 17

Δ Δ−

Page 18: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Encoding “Start In” Constraints

Start in [ R ] eE eS

End in [ R ] eE eS e’

[LB, UB]

[LB, UB] [0, 0]

•Thomas Léauté, "Coordinating Agile Systems through the Model-based Execution of Temporal Plans, " S. M. Thesis, Massachusetts Institute of Technology, August 2005. •Thomas Léauté, Brian Williams, “Coordinating Agile Systems Through the Model-based Execution of Temporal Plans," Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120.

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 18

Page 19: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

How do we plan over long horizons? • Patchwork.

Start

Goal

First N steps

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States

Heuristic Cost to go

19

Page 20: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

How do we handle disturbances? • World uncertain.

Start

Goal

t = 20

Predicted position at t = 20

Plan

Actual path

Actual position at t = 20

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 20

Page 21: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Execution Horizon < Planning Horizon

• 3 seconds later….

Start

Goal

Current position (t = 10)

Plan

Predicted position at t = 20

t = 10

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 21

Page 22: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Execution Horizon < Planning Horizon

• 3 seconds later….

• Position a little bit off from the plan.

Start

Goal

Current position (t = 13)

Plan

Predicted position at t = 20

t = 13

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 22

Page 23: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Execution Horizon < Planning Horizon

• Abandon the plan after t = 13.

Start

Goal

Current position (t = 13)

t = 13

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 23

Page 24: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Model-Predictive, Receding Horizon Control

• Abandon the plan after t = 13.

• Replan for another planning horizon.

• Repeat. Start

Goal

Current position (t = 13)

Predicted position at t = 23

t = 16

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 24

Page 25: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Formulation of Receding Horizon Control

)1,1,0(

),1,0(

)1,1,0(

..

),(min

maxmax

goal

start0

1

, ::

Nk

NkNk

ts

J

k

N

kkk

NNNN

uuu

xx

xx

gHx

BuAxx

uuxx

k

11ux 11

Cost function

Dynamics

Spatial constraints

Initial position and velocity

Goal position and velocity

Thrust limits

TkykxkT

kkkkk FFyxyx ,, , ux

)( Nf x

Cost-to-go function

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 25

Page 26: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Fire-fighting Example: Goal-directed Receding Horizon Control

Operator states goals: “Fires out at Locations 1 & 2 and back to Base within an hour.”

Location 1

Location 2

Executive: • Plans and schedules activities. • Routes and “flies” vehicle to achieve plan.

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 26

Page 27: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

Outline • Goal-directed Motion Planning (Sulu)

• Compliant, Goal-directed Motion Planning for Under-actuated Robots (Chekov)

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 27

Page 28: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

• Motions need to be generated in light of higher level goals.

• For under actuated system, activities and motions couple through state and temporal constraints.

• Compliance is achieved be pre-computing policies for schedules and motions, and by coordinating them in real-time.

Key takeaways

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States 28

Page 29: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

3/9/2016 16.412J / 6.834J – L11 Programs on Continuous States

A single “cognitive system” language and executive.

User Goals &

models

in RMPL Kirk

Pike

Sulu Chekov

Control

Commands

Enterprise

Coordinates and monitors tasks

Plans paths

Sketches mission and assigns tasks

Burton

Plans actions

Bones Diagnoses likely failures

Uhura

Collaboratively resolves goal failures

© source unknown. All rights reserved. This content is excluded from our CreativeCommons license. For more information, see https://ocw.mit.edu/help/faq-fair-use/.

29

Page 30: Executing Programs on Continuous States...Proceedings of the Twentieth National Conference on Artificial Intelligence (AAAI-05), Pittsburgh, PA, July 2005, pp. 114-120. 3/9/2016 16.412J

MIT OpenCourseWarehttps://ocw.mit.edu

16.412J / 6.834J Cognitive RoboticsSpring 2016

For information about citing these materials or our Terms of Use, visit: https://ocw.mit.edu/terms.