motion planning:
DESCRIPTION
Motion Planning:. A Journey of Robots, Digital Actors, Molecules and Other Artifacts Jean-Claude Latombe Computer Science Department Stanford University. My Research Interests. Autonomous agents that sense, plan, and act in real and/or virtual worlds - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/1.jpg)
Motion Planning:Motion Planning:A Journey of Robots, Digital Actors, Molecules and A Journey of Robots, Digital Actors, Molecules and
Other ArtifactsOther Artifacts
Jean-Claude LatombeJean-Claude Latombe
Computer Science DepartmentComputer Science Department
Stanford UniversityStanford University
![Page 2: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/2.jpg)
My Research InterestsMy Research Interests
Autonomous agents that sense, plan, and act in real and/or virtual worlds
Algorithms and systems for representing, capturing, planning, controlling, and rendering motions of physical objects
Applications:
– Manufacturing– Mobile robots – Computational biology– Computer-assisted surgery– Digital actors
![Page 3: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/3.jpg)
Goal of Motion PlanningGoal of Motion Planning
Compute Compute motion strategiesmotion strategies, e.g.:, e.g.:– geometric paths geometric paths – time-parameterized trajectoriestime-parameterized trajectories– sequence of sensor-based motion commandssequence of sensor-based motion commands
To achieve To achieve high-level goals, high-level goals, e.g.:e.g.:– go to A without colliding with obstaclesgo to A without colliding with obstacles– assemble product Passemble product P– build map of environment Ebuild map of environment E– find object Ofind object O
![Page 4: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/4.jpg)
Goal of Motion PlanningGoal of Motion Planning
Compute Compute motion strategiesmotion strategies, e.g.:, e.g.:– geometric paths geometric paths – time-parameterized trajectoriestime-parameterized trajectories– sequence of sensor-based motion commandssequence of sensor-based motion commands
To achieve To achieve high-level goals, high-level goals, e.g.:e.g.:– go to A without colliding with obstaclesgo to A without colliding with obstacles– assemble product Passemble product P– build map of environment Ebuild map of environment E– find object Ofind object O
![Page 5: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/5.jpg)
Goal of Motion PlanningGoal of Motion Planning
Compute Compute motion strategiesmotion strategies, e.g.:, e.g.:– geometric paths geometric paths – time-parameterized trajectoriestime-parameterized trajectories– sequence of sensor-based motion commandssequence of sensor-based motion commands
To achieve To achieve high-level goals, high-level goals, e.g.:e.g.:– go to A without colliding with obstaclesgo to A without colliding with obstacles– assemble product Passemble product P– build map of environment Ebuild map of environment E– find object Ofind object O
![Page 6: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/6.jpg)
ExamplesExamples
![Page 7: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/7.jpg)
Is It Easy?Is It Easy?
![Page 8: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/8.jpg)
Basic ProblemBasic Problem
Statement:Statement: Compute a collision-free path for a rigid or Compute a collision-free path for a rigid or articulated object (the robot) among static obstaclesarticulated object (the robot) among static obstacles
Inputs:Inputs:– Geometry of robot and obstaclesGeometry of robot and obstacles– Kinematics of robot (degrees of freedom)Kinematics of robot (degrees of freedom)– Initial and goal robot configurations (placements)Initial and goal robot configurations (placements)
Outputs:Outputs:– Continuous sequence of collision-free robot configurations Continuous sequence of collision-free robot configurations
connecting the initial and goal configurationsconnecting the initial and goal configurations
![Page 9: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/9.jpg)
Example with Rigid ObjectExample with Rigid Object
![Page 10: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/10.jpg)
Example with Articulated ObjectExample with Articulated Object
![Page 11: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/11.jpg)
Extensions to the Basic ProblemExtensions to the Basic Problem
Moving obstaclesMoving obstacles Multiple robotsMultiple robots Movable objectsMovable objects Deformable objectsDeformable objects Goal is to gather data by Goal is to gather data by
sensingsensing
Nonholonomic constraintsNonholonomic constraints Dynamic constraintsDynamic constraints Optimal planningOptimal planning Uncertainty in control and Uncertainty in control and
sensingsensing
![Page 12: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/12.jpg)
Application: Design for ManufacturingApplication: Design for Manufacturing
General ElectricGeneral Electric General MotorsGeneral Motors
General MotorsGeneral Motors
![Page 13: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/13.jpg)
Application: Robot Programming and PlacementApplication: Robot Programming and Placement
David Hsu’s PhDDavid Hsu’s PhD
![Page 14: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/14.jpg)
Application: Checking Building CodeApplication: Checking Building Code
Charles Han’s PhDCharles Han’s PhD
![Page 15: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/15.jpg)
Application: Generation of Instruction SheetsApplication: Generation of Instruction Sheets
![Page 16: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/16.jpg)
Application: Model Construction by Mobile Application: Model Construction by Mobile RobotRobot
Hector Gonzalez’s PhDHector Gonzalez’s PhD
![Page 17: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/17.jpg)
Application: Graphic Animation of Digital ActorsApplication: Graphic Animation of Digital Actors
James Kuffner’s PhDJames Kuffner’s PhD
![Page 18: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/18.jpg)
Application: Computer-Assisted Surgical PlanningApplication: Computer-Assisted Surgical Planning
Rhea Tombropoulos’s PhDRhea Tombropoulos’s PhD
Joel Brown’s PhDJoel Brown’s PhD
![Page 19: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/19.jpg)
Application: Prediction of Molecular MotionsApplication: Prediction of Molecular Motions
Amit Singh’s PhDAmit Singh’s PhD
![Page 20: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/20.jpg)
Motion in Configuration Space Motion in Configuration Space
q2
q1
q3
q0
qn
q4
Q(t)
)(
)()(
0
tq
tqtQ
n
Tt ,0
Parts DOFL 19 68H 51 118
![Page 21: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/21.jpg)
Disc Robot in 2-D WorkspaceDisc Robot in 2-D Workspace
![Page 22: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/22.jpg)
Rigid Robot Translating in 2-DRigid Robot Translating in 2-D
CB = B A = {b - a | a in A, b in B}CB = B A = {b - a | a in A, b in B}
![Page 23: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/23.jpg)
Rigid Robot Translating and Rotating in 2-DRigid Robot Translating and Rotating in 2-D
![Page 24: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/24.jpg)
C-Obstacle for Articulated RobotC-Obstacle for Articulated Robot
![Page 25: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/25.jpg)
Other Representation ConceptsOther Representation Concepts
State space (configuration x velocity)State space (configuration x velocity) Configuration/state x time spaceConfiguration/state x time space Composite configuration/state spacesComposite configuration/state spaces Stability regions in configuration/state spacesStability regions in configuration/state spaces Visibility regions in configuration/state spacesVisibility regions in configuration/state spaces Etc …Etc …
![Page 26: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/26.jpg)
Motion Planning as a Computational ProblemMotion Planning as a Computational Problem
Goal: Goal: Compute the connectivity of a space (e.g., the Compute the connectivity of a space (e.g., the collision-free subset of configuration space)collision-free subset of configuration space)
High computational complexity: High computational complexity: Typically requires time exponential in an input Typically requires time exponential in an input parameter, e.g., the number of degrees of freedom, the parameter, e.g., the number of degrees of freedom, the number of moving obstacles, …number of moving obstacles, …
Two main algorithmic approaches:Two main algorithmic approaches:– Planning by random samplingPlanning by random sampling– Planning by computing criticalitiesPlanning by computing criticalities
![Page 27: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/27.jpg)
Motion Planning as a Computational ProblemMotion Planning as a Computational Problem
Goal: Characterize the connectivity of a space (e.g., Goal: Characterize the connectivity of a space (e.g., the collision-free subset of configuration space)the collision-free subset of configuration space)
High computational complexity: Requires time High computational complexity: Requires time exponential in number of degrees of freedom, or exponential in number of degrees of freedom, or number of moving obstacles, or etc…number of moving obstacles, or etc…
Two main algorithmic approaches:Two main algorithmic approaches:
– Planning by random samplingPlanning by random sampling– Planning by extracting criticalitiesPlanning by extracting criticalities
![Page 28: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/28.jpg)
Motion Planning as a Computational ProblemMotion Planning as a Computational Problem
Goal: Characterize the connectivity of a space (e.g., Goal: Characterize the connectivity of a space (e.g., the collision-free subset of configuration space)the collision-free subset of configuration space)
High computational complexity: Requires time High computational complexity: Requires time exponential in number of degrees of freedom, or exponential in number of degrees of freedom, or number of moving obstacles, or etc…number of moving obstacles, or etc…
Two main algorithmic approaches:Two main algorithmic approaches:
– Planning by random samplingPlanning by random sampling– Planning by extracting criticalitiesPlanning by extracting criticalities
![Page 29: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/29.jpg)
Principle of Randomized PlanningPrinciple of Randomized Planning
free space
qqbb
qqgg
milestone
[Kavraki, Svetska, Latombe,Overmars, 95][Kavraki, Svetska, Latombe,Overmars, 95]
(Probabilistic Roadmap)(Probabilistic Roadmap)
![Page 30: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/30.jpg)
Why Does it Work?Why Does it Work?[Kavraki, Latombe, Motwani, Raghavan, 95]
![Page 31: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/31.jpg)
In Theory, a PRM Planner …In Theory, a PRM Planner …
Is Is probabilistically completeprobabilistically complete, i.e., whenever a , i.e., whenever a solution exists, the probability that it finds one solution exists, the probability that it finds one tends toward 1 as the number N of milestones tends toward 1 as the number N of milestones increasesincreases
Under rather general hypotheses, the rate of Under rather general hypotheses, the rate of convergence is exponential in the number N of convergence is exponential in the number N of milestones, i.e.:milestones, i.e.:
Prob[failure] ~ exp(-N)Prob[failure] ~ exp(-N)
![Page 32: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/32.jpg)
In practice, PRM Planners …In practice, PRM Planners …
Are fastAre fast Deal effectively with many-dof robotsDeal effectively with many-dof robots Are easy to implementAre easy to implement Have solved complex problemsHave solved complex problems
![Page 33: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/33.jpg)
![Page 34: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/34.jpg)
Example 1: Planning of Manipulation MotionsExample 1: Planning of Manipulation MotionsReachReach
GrabGrab
TransferTransfer
ReleaseRelease
ReturnReturn
![Page 35: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/35.jpg)
Example 1: Planning of Manipulation MotionsExample 1: Planning of Manipulation Motions
![Page 36: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/36.jpg)
Example 2: Air-Cushioned RobotExample 2: Air-Cushioned Robot
air bearingair bearing
gaz tankgaz tank
air thrustersair thrustersobstacles
robotrobot
(Aerospace Robotics Lab)(Aerospace Robotics Lab)
![Page 37: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/37.jpg)
Total duration : 40 secTotal duration : 40 sec
![Page 38: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/38.jpg)
Example 3: Radiosurgical PlanningExample 3: Radiosurgical Planning
Cyberknife (Neurosurgery Dept., Stanford, Cyberknife (Neurosurgery Dept., Stanford, Accuray) Accuray)
![Page 39: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/39.jpg)
Surgeon Specifies Dose ConstraintsSurgeon Specifies Dose Constraints
Critical
Tumor
Fall-off of Dose Around the Tumor
Dose to theTumor Region
Dose to the Critical Region
Fall-off of Dosein the Critical Region
![Page 40: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/40.jpg)
Beam Selection AlgorithmBeam Selection Algorithm Place points uniformly at random on the Place points uniformly at random on the
surface of the tumorsurface of the tumor Pick beam orientations at random at Pick beam orientations at random at
these pointsthese points
![Page 41: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/41.jpg)
Beam Selection AlgorithmBeam Selection Algorithm Place points uniformly at random on the Place points uniformly at random on the
surface of the tumorsurface of the tumor Pick beam orientations at random at Pick beam orientations at random at
these pointsthese points
![Page 42: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/42.jpg)
Compute Beam WeightsCompute Beam Weights
• 2000 < Tumor < 22002000 < B2 + B4 < 22002000 < B4 < 22002000 < B3 + B4 < 22002000 < B3 < 22002000 < B1 + B3 + B4 < 22002000 < B1 + B4 < 22002000 < B1 + B2 + B4 < 22002000 < B1 < 22002000 < B1 + B2 < 2200
• 0 < Critical < 5000 < B2 < 500
T
C
B1
B2
B3B4
T
![Page 43: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/43.jpg)
Sample CaseSample Case
Linac plan80% Isodose surface
CARABEAMER’s plan80% Isodose surface
![Page 44: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/44.jpg)
Sample CaseSample Case
50% Isodose Surface
80% Isodose Surface
Linac plan CARABEAMER’s plan
![Page 45: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/45.jpg)
Example 4: Indoor Map Building by RobotExample 4: Indoor Map Building by Robot
![Page 46: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/46.jpg)
Next-Best View StrategyNext-Best View Strategy
![Page 47: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/47.jpg)
Computing Next Sensing PositionComputing Next Sensing Position Sample the free edges of the visited region at random. For each sample point, compute the subset of visited region from which this point is visible and sample this Sample the free edges of the visited region at random. For each sample point, compute the subset of visited region from which this point is visible and sample this
subset at random. subset at random. >> Set of candidate positions >> Set of candidate positions qq
Select “best” candidate Select “best” candidate qq based on following criteria: based on following criteria:– overlap of visible environment edges (to ensure reliable alignment)overlap of visible environment edges (to ensure reliable alignment)– amount of potential new space visible from amount of potential new space visible from qq– length of path to go to length of path to go to qq
![Page 48: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/48.jpg)
Map Construction ExampleMap Construction Example
1122
44 66
![Page 49: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/49.jpg)
Robotics Lab MapRobotics Lab Map
45m45m
![Page 50: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/50.jpg)
Example 5: Digital Actor with Vision SensingExample 5: Digital Actor with Vision Sensing
![Page 51: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/51.jpg)
Example 5: Digital Actor with Vision SensingExample 5: Digital Actor with Vision Sensing
![Page 52: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/52.jpg)
Example 6: Predicting Molecule Docking MotionsExample 6: Predicting Molecule Docking Motions
![Page 53: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/53.jpg)
Future Work: Minimally Invasive Surgey Future Work: Minimally Invasive Surgey Amidst Soft Tissue StructuresAmidst Soft Tissue Structures
![Page 54: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/54.jpg)
Future Work: Autonomous Interactive CharactersFuture Work: Autonomous Interactive Characters
A Bug’s Life (Pixar/Disney) Toy Story (Pixar/Disney)
Tomb Raider 3 (Eidos Interactive) Final Fantasy VIII (SquareOne)The Legend of Zelda (Nintendo)
Antz (Dreamworks)
![Page 55: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/55.jpg)
Future Work: Protein FoldingFuture Work: Protein Folding
![Page 56: Motion Planning:](https://reader036.vdocument.in/reader036/viewer/2022081507/56815e18550346895dcc76ef/html5/thumbnails/56.jpg)
Summary/ConclusionSummary/Conclusion Over the last decade there has been considerable progress Over the last decade there has been considerable progress
in motion planning techniques and their applicationin motion planning techniques and their application While motion planning originated in robotics, the areas While motion planning originated in robotics, the areas
of application are now very diverse: product design, of application are now very diverse: product design, manufacturing, graphic animation, video games, biology, manufacturing, graphic animation, video games, biology, etc…etc…
There are orders of magnitude more processors There are orders of magnitude more processors embedded in physical devices (cars, planes, surgical embedded in physical devices (cars, planes, surgical instruments, etc) than desktop computers, and the gap is instruments, etc) than desktop computers, and the gap is still growing. The interest in modeling and computing the still growing. The interest in modeling and computing the motion of physical objects will continue to grow.motion of physical objects will continue to grow.