A Software Component for Plan Management in Robotics
Sylvain Joyeux
Thèse préparée au LAAS/CNRS
A Software Component for Plan Management in Robotics Sylvain Joyeux - - PowerPoint PPT Presentation
A Software Component for Plan Management in Robotics Sylvain Joyeux Thse prpare au LAAS/CNRS 6 December, 2007 1. Introduction Autonomous robotic systems A Software Component for Plan Management in Robotics Sylvain Joyeux
Thèse préparée au LAAS/CNRS
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 3 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 3 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 4 / 75
modular integration of diverse data processing services integration of decision-making
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 4 / 75
modular integration of diverse data processing services integration of decision-making
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 5 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 5 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 6 / 75
Robot Hardware Environment Decision layer Functional layer Commands Information Commands Information
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 6 / 75
Robot Hardware Environment Decision layer Functional layer Information Information
Multiple decision making tools There’s decision−making in here too !
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 7 / 75
Integration of decision-making
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 7 / 75
Integration of decision-making
⇒ split big problems into smaller ones
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 7 / 75
Integration of decision-making
⇒ split big problems into smaller ones
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 8 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 9 / 75
Execution of plan libraries
⇒ transformation planning
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 10 / 75
Plan-based control of multi-robot systems
⇒ rich set of task relations ⇒ designed for scheduling
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 11 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 12 / 75
1
as planner-agnostic as possible
⇒ representation based on actions, not state
aimed at supervision, not planning
⇒ represents from high-level actions to low-level ones ⇒ rich situation representation
designed with multi-robot in mind
Plan
instances
graphs Models
models application code application code
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 12 / 75
1
2
execution of the said plan
⇒ in particular, representation of errors and of their recovery process
adaptation as it is being executed
⇒ dynamic plans
Models Controller Executive
Plan
application code Modifies application code Other robots Functional layer User
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 12 / 75
1
2
3
planning-execution conflict resolution
Plan Models
Decision Control
Plan Generation Tools
Planning Tools Executive
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 13 / 75
1
2
3
4
5
6
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 14 / 75
⇒ must manage a complex set of functions ⇒ “big enough” plan sizes to test the execution scalability
⇒ model fit to control multiple robots ⇒ building joint plans ⇒ joint plan execution
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 15 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 16 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 17 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 18 / 75
"Algeco", here at LAAS Esperce airfield Caylus, military training ground RF emergency brakes
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction
Context Thesis focus Existing approaches Our approach Scenario
Model Execution Adaptation Results Conclusion 19 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 21 / 75
⇒ tasks The robot has already reached a given point, and is now moving towards another. It will update its map in the future.
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 21 / 75
⇒ tasks
⇒ task graphs how an activity influences another What impact the terrain mapping has on the movement ?
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 21 / 75
⇒ tasks
⇒ task graphs how an activity influences another constraints on the activities Is it allowed for the localization to stop ?
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 21 / 75
⇒ tasks
⇒ task graphs how an activity influences another constraints on the activities
⇒ events The localization has already started. The movement has just blocked.
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 21 / 75
⇒ tasks
⇒ task graphs how an activity influences another constraints on the activities
⇒ events
⇒ event graphs When the mapping is started and the path is computed, the robot can start moving
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 22 / 75
▼♦✈❡❚♦✭①✱ ②✮ P♦♠✿✿▲♦❝❛❧✐③❛t✐♦♥✭✮ ▼❛♣❩♦♥❡✭①❴st❛rt✱ ②❴st❛rt✱ ①❴❢✐♥❛❧✱ ②❴❢✐♥❛❧✮ ❚r❛❝❦P❛t❤✭♣❛t❤✮
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 22 / 75
⇒ allows to represent equivalence between activities
P3D::MoveTo (x, y, yaw) NDD::MoveTo (x, y, yaw) Nav::MoveTo (x, y, yaw) MoveTo(x, y, yaw) TraversabilityMapping Bitmap::Mapping RemoteMapping Roby::Task()
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 22 / 75
⇒ partially instantiated activities ⇒ activities from abstract models
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 23 / 75
Bmap::Mapping Pom::Localization P3d::TrackPath Nav::Path Nav::PathPlanning Nav::MoveTo(x, y, yaw) Nav::MoveTo(x, y, yaw) Nav::Runner Pom::Runner depends_on executed_by PlanningTask planned_by
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 24 / 75
Bmap::TravMapping POM::Localization P3d::TrackPath Nav::Path Nav::MoveTo(to: C) Nav::PathPlanning RegionsOfInterest RemoteMapping DataTransfer
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 25 / 75
Example: perception on the Dala rover
when does a perception should start/stop ? when are the maps updated ? . . .
Bitmap::Mapping Dtm::Mapping PlanningLoop PlanningLoop Bitmap::Perception Dtm::Perception Dtm::Perception Bitmap::Perception
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 26 / 75
A representation of milestones during execution
⇒ the robot moved more than x meters ⇒ timeout of 5 seconds ⇒ . . .
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 26 / 75
A representation of milestones during execution
⇒ the robot moved more than x meters ⇒ timeout of 5 seconds ⇒ tasks are composed of events
success stop failed aborted start MoveTo(x, y, yaw) blocked
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 26 / 75
A representation of milestones during execution
⇒ the robot moved more than x meters ⇒ timeout of 5 seconds ⇒ tasks are composed of events
⇒ start an activity/stop it ⇒ update the map ⇒ . . .
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 27 / 75
Dtm::Perception success stop Stereopixel::Perception success start start
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 27 / 75
Dtm::FuseDtm success start stop Dtm::Perception success stop Stereopixel::Perception success stop start start
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 28 / 75
Dtm::FuseDtm success start stop Dtm::Perception success stop Stereopixel::Perception success stop Dtm::FillP3dPoster success stop start start start
? ? ? ? ?
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 29 / 75
Dtm::FuseDtm success start stop Dtm::Perception success stop Stereopixel::Perception success stop Dtm::FillP3dPoster success stop start start start
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 29 / 75
Dtm::Mapping updated_data PlanningLoop loop_success Dtm::Perception success stop Dtm::FillP3dPoster success stop start start
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 30 / 75
⇒ generic structures built with the standard model
⇒ in this case, represent a delta in position, heading
The loop construct
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model
Overview Activities Execution flow
Execution Adaptation Results Conclusion 31 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 33 / 75
⇒ synchronous model ⇒ global propagation algorithm
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 33 / 75
⇒ synchronous model ⇒ global propagation algorithm
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 34 / 75
direct relation to one’s own plan
⇒ there is a relation between a local task and the remote task
an explicit subscription mechanism
⇒ a plan manager can explicitly ask another to send updates about its tasks
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 35 / 75
Live data from Caylus 25/10
Nav::PathPlanning ZoneMapping::Export Nav::RegionsOfInterest Bitmap::Perception PlanningLoop Genom::Bitmap::Mapping Pom::Localization Dtm::Mapping MapPath PlanningLoop UAVMapping::MapAlongPath TransferSink TransferSource
Nav::PathPlanning Nav::RegionsOfInterest Bitmap::Perception PlanningLoop Genom::Bitmap::Mapping Pom::Localization Dtm::Mapping UAVMapping::MapAlongPath TransferSink TransferSource Nav::MoveTo Nav::Path P3d::Track Rflex::TrackSpeedStart P3d::TrackPath
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 36 / 75
⇒ example: plan building tools
⇒ lack of synchronization in the plan
TransferSource push TransferSink pull failed 1
2
⇒ ❚r❛♥s❢❡r❙✐♥❦ fails in the meantime
3
⇒ ❙②♥❝❤r♦♥✐③❛t✐♦♥❊rr♦r on common parent
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 37 / 75
a type a fault point
⇒ to define what’s allowed and what is not
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 38 / 75
success stop failed aborted start MoveTo(x, y, yaw) blocked
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 38 / 75
success stop failed aborted start MoveTo(x, y, yaw) blocked
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 39 / 75
The link between events and task relations
Dtm::Perception success stop start Stereopixel::Perception success start
depends_on
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 39 / 75
The link between events and task relations
Dtm::FuseDtm success start stop Stereopixel::Perception failed stop start Dtm::Perception success stop start
depends_on
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 40 / 75
1
2
3
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 41 / 75
Rflex::TrackSpeedStart failed stop poster_not_updated Rflex::TrackSpeedStart start P3d::PathTracking
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 42 / 75
⇒ plan repair
⇒ the error is inhibited
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 43 / 75
1
2
3
⇒ real error
+
1 Video ❜r❛❦❡s❴♦♥ on Rflex
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 44 / 75
is not handled by a repair_with relation has no associated plan repair
Bitmap::Perception PlanningLoop Genom::Bitmap::Mapping Dtm::Mapping P3d::Track Rflex::TrackSpeedStart P3d::TrackPath Nav::PathPlanning Nav::Path Nav::MoveTo Pom::Localization failed stop
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 45 / 75
Bitmap::Perception PlanningLoop Dtm::Mapping P3d::Track Rflex::TrackSpeedStart P3d::TrackPath Nav::PathPlanning Nav::Path Nav::MoveTo Genom::Bitmap::Mapping Pom::Localization
1
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 45 / 75
Bitmap::Perception Dtm::Mapping P3d::Track Rflex::TrackSpeedStart P3d::TrackPath Nav::PathPlanning Nav::Path Nav::MoveTo Pom::Localization PlanningLoop
2
Genom::Bitmap::Mapping
1
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 45 / 75
Bitmap::Perception Dtm::Mapping P3d::Track Rflex::TrackSpeedStart P3d::TrackPath Pom::Localization PlanningLoop Genom::Bitmap::Mapping Nav::Path Nav::MoveTo Nav::PathPlanning
1 2 3 4 5
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 46 / 75
not used by any missions not meaningful in the robot-robot interaction
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution
Multi-robot Errors GC
Adaptation Results Conclusion 47 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 49 / 75
execution flow determination of errors garbage collection . . .
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 49 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 49 / 75
planning is a complex task communication latency in multi-robot
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 49 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 50 / 75
from the plan as it is being executed into the new plan
structure
roles subscription . . .
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 51 / 75
Live data from Caylus 25/10
RemoteTrvMapping::Planning start Bitmap::Mapping Services::RemoteTraversabilityMapping
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 51 / 75
Live data from Caylus 25/10
Nav::PathPlanning PlanningLoop Dtm::Mapping Pom::Localization RemoteTrvMapping::Planning Bitmap::Mapping Services::RemoteTraversabilityMapping
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 52 / 75
Live data from Caylus 25/10
Bitmap::Mapping Services::RemoteTraversabilityMapping
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 53 / 75
Live data from Caylus 25/10
Bitmap::Mapping Services::RemoteTraversabilityMapping Nav::RegionsOfInterest Nav::PathPlanning
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 54 / 75
Live data from Caylus 25/10
Bitmap::Mapping Services::RemoteTraversabilityMapping MapPath TransferSource Nav::RegionsOfInterest PlanningLoop TransferSink PlanningLoop Nav::PathPlanning UAVMapping::MapAlongPath
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 55 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 56 / 75
Pom::Localization Rflex::TrackSpeedStart
P3d::TrackPath Pom::Localization
PlanningTask Nav::MoveTo
Rflex::TrackSpeedStart
P3d::TrackPath PlanningTask
Rflex::TrackSpeedStart Nav::MoveTo PlanningTask P3d::TrackPath
Main Plan
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 57 / 75
Rflex::TrackSpeedStart
P3d::TrackPath Pom::Localization
PlanningTask Nav::MoveTo
Rflex::TrackSpeedStart
P3d::TrackPath PlanningTask
Rflex::TrackSpeedStart Nav::MoveTo PlanningTask P3d::TrackPath
failed stop
Main Plan
Pom::Localization
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 58 / 75
Decision Control Marks the transaction as invalid Sends the conflict to the planner Planner
Interaction w/ decision control Plan generation
Pom::Localization Rflex::TrackSpeedStart P3d::TrackPath Pom::Localization PlanningTask Nav::MoveTo P3d::TrackPath PlanningTask Nav::MoveTo PlanningTask P3d::TrackPath failed stopConflict
Change the transaction or discard it
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 59 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation
Transactions Conflicts
Results Conclusion 60 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 62 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 63 / 75
Rough terrain navigation
Camera Stereo Dtm Difmap Bitmap Nav P3D Sick Aspect NDD
Path planning Flat terrain navigation Locomotion
GPS POM
Localization
IMU Gyro Rflex
Elevation mapping
P3d::Runner Pom::Localization Nav::Runner Camera::Runner Difmap::Runner Bitmap::Runner VirtualTask PlanningLoop Rflex::BrakesOnFailureHandler Nav::Path Bitmap::Mapping Rflex::TrackSpeedStart Nav::PathPlanning Sequence Dtm::FuseDtm Dtm::Perception PlanningTask P3d::SetGoalParamsControl PlanningTask P3d::ReadDemP3dPoster PlanningLoop PlanningTask P3d::Track PlanningLoop Stereopixel::Perception Camera::OneShot Dtm::FillP3dPoster P3d::TrackPath Bitmap::Perception Dtm::Mapping Sequence Nav::MoveTo PlanningTask Bitmap::FuseMap start Stereopixel::Compute Difmap::Difmap Nav::ComputePath PlanningTask Bitmap::Perception Stereopixel::Compute Dtm::FuseDtm Difmap::Difmap Bitmap::UpdateRegionMap PlanningTask Stereopixel::Perception Camera::OneShot PlanningTask Bitmap::SetPosterNamesControl success stop start Dtm::FillP3dPoster PlanningTask stop success Task Dtm::Perception Bitmap::UpdateRegionMap Bitmap::FuseMap Bitmap::SetPosterNamesControl AndGeneratorRoby plan GenoM functional layer
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 64 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 64 / 75
50 100 150 200 250 300 5 10 15 20 25 30 count of cycles events emitted
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 64 / 75
50 100 150 200 5 10 15 20 count of cycles events called
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 64 / 75
10 20 30 40 50 1 2 3 4 5 count of cycles events called
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 65 / 75
Roby plan GenoM functional layer
Rough terrain navigation Camera Stereo Dtm Difmap Bitmap Nav P3D Sick Aspect NDD Path planning Flat terrain navigation Locomotion GPS POM Localization IMU Gyro Rflex Elevation mappingRoby plan
Nav::PathPlanning ZoneMapping::Export Nav::RegionsOfInterest Bitmap::Perception PlanningLoop Genom::Bitmap::Mapping Pom::Localization Dtm::Mapping MapPath PlanningLoop UAVMapping::MapAlongPath TransferSink TransferSourceRessac Server
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 66 / 75
Camera Stereo Dtm Difmap Bitmap Nav P3D Sick Aspect NDD GPS POM IMU Gyro Rflex
A priori DEM file Pocosim simulation engine Gazebo world/sensor simulation
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 67 / 75
Video
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion 68 / 75
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion
Contributions Future Work
70 / 75
1
with separated activity and temporal structures task graphs adapted to multi-robot systems
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion
Contributions Future Work
70 / 75
1
2
able to handle the specificities of the plan model rich error handling procedures multi-robot plan execution
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion
Contributions Future Work
70 / 75
1
2
3
adaptation of the notion of transaction from DBs usable as whiteboard in multi-robot context
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion
Contributions Future Work
71 / 75
1
explicit representation of time integration of temporal constraint networks integration of a causal model: state projection
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion
Contributions Future Work
71 / 75
1
2
integration of real planners from diverse plan models using state projection
plan ahead-of-time forestall faults related to changes in the projection integration of repair capabilities
definition of loose planner-planner interaction protocols
⇒ plan merging
integration of multi-robot cooperation protocols
A Software Component for Plan Management in Robotics Sylvain Joyeux
Introduction Model Execution Adaptation Results Conclusion
Contributions Future Work
71 / 75
1
2
3
formalization of the approach
⇒ prove equivalence between our model and others ⇒ represent execution properties in a formal model
getting it used by more than one person
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 73 / 75
PlanningTask(i+1) start stop success LoopActivity(i) success stop start Return
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 73 / 75
PlanningTask(i+1) start stop success PlanningTask(i+2) start success stop LoopActivity(i+1) start success stop LoopActivity(i) success stop start
& Return
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 73 / 75
PlanningTask(i+1) start stop success LoopActivity(i) success stop start
&
LoopActivity(i+1) start success stop PlanningTask(i+2) start success stop Return
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 73 / 75
PlanningTask(i+1) start stop success LoopActivity(i) success stop start
& ||
Delayed event
LoopActivity(i+1) start success stop PlanningTask(i+2) start success stop
& Return
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 73 / 75
PlanningTask(i+1) start stop success LoopActivity(i) success stop start
& ||
LoopActivity(i+1) start success stop PlanningTask(i+2) start success stop
& & Return
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 74 / 75
Task PlanningTask PlanningLoop loop_start Dtm::Mapping Dtm::Perception AndGenerator UntilGenerator PosDeltaEvent OrGenerator Return
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 74 / 75
Task PlanningTask PlanningLoop loop_success loop_end Dtm::Mapping updated_data Dtm::Perception stop success AndGenerator Return
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 74 / 75
Task PlanningTask start PlanningTask stop success PlanningLoop loop_start Dtm::Perception start Dtm::Mapping AndGenerator AndGenerator Return
A Software Component for Plan Management in Robotics Sylvain Joyeux
Appendix 75 / 75
Nav::MoveTo Sequence P3d::Track blocked stop failed P3d::Track failed interrupted stop P3d::TrackPath failed blocked stop FilterGenerator