Presentation is loading. Please wait.

Presentation is loading. Please wait.

Motion Planning Motion Planning. 1.What is the motion planning problem? 2.What is the fundamental question in motion planning problem? 3.What is the basic.

Similar presentations


Presentation on theme: "Motion Planning Motion Planning. 1.What is the motion planning problem? 2.What is the fundamental question in motion planning problem? 3.What is the basic."— Presentation transcript:

1 Motion Planning Motion Planning

2 1.What is the motion planning problem? 2.What is the fundamental question in motion planning problem? 3.What is the basic problem formulation? 4.Configuration Space. 5.Formalism for Configuration Space. 6.What is a Path? 7.Extensions to the Basic Motion Planning Probem 8.Examples of Applications of Motion Planning 9.Examples of Practical Algorithms: Bug 2. 10.Examples : Probabilistic Roadmaps. 154 slides

3 What is the motion planning problem?

4

5

6 Motion Planning for a robotic arm

7 Motion Planning for a mobile robot

8 Motion planning in a real world

9 Motion Planning for a Humanoid Robot with Many Degrees of Freedom in real world environment

10 Motion Planning for unusual robots, reconfigurable robots

11 Motion Planning in Medical and Chemical Applications

12 Is It Easy?

13 What is the fundamental question in motion planning?

14 Goal of Motion Planning Compute motion strategies, e.g.: –geometric paths –time-parameterized trajectories –sequence of sensor-based motion commands To achieve high-level goals, e.g.: –go to A without colliding with obstacles –assemble product P –build map of environment E –find object O

15 Fundamental Question Are two given points connected by a path? Valid region Forbidden region

16 Fundamental Question Are two given points connected by a path? Valid region Forbidden region E.g.: ▪Collision with obstacle ▪Lack of visibility of an object ▪Lack of stability

17 What is the formulation of the basic problem of path finding ?

18 Basic Problem of Path planning Statement: Compute a collision-free path for a rigid or articulated object (the robot) among static obstacles Inputs: –Geometry of robot and obstacles –Kinematics of robot (degrees of freedom) –Initial and goal robot configurations (placements) Output: –Continuous sequence of collision-free robot configurations connecting the initial and goal configurations

19 Examples with Rigid Object  Ladder problem Piano-mover problem 

20 Example with Articulated Object

21 Configuration Space

22 Tool: Configuration Space

23 Compare! Valid region Forbidden region

24 Tool: Configuration Space Problems: Geometric complexity Space dimensionality

25 Formalism for Configuration Space

26 Notation for Configuration Space

27 Point Robot in Configuration space

28 Point robot in Three-Dimensional Configuration space

29 Translation and rotation of a robot

30 Example of simple configuration space for a robot with 2DOF in planar space

31 Representation of points in configuration space

32 In presence of obstacles, where the robot can actually move?

33

34

35

36

37 Free Space

38 Think of R as a robot and P as an obstacle

39 Robot that can translate and rotate in 2D space gives another dimension to the problem

40 C-obstacle in Three-Dimensional Space This is twisted

41 Can we stay in 2D? x

42 x

43 But is it good?

44 Too conservative

45 What is a Path?

46 Path is a very general concept considered from the point of view of computational geometry, time and search

47 Tool: Configuration Space (C-Space C)

48 q=(q 1,…,q n ) Configuration Space q1q1q1q1 q2q2q2q2 q3q3q3q3 qnqnqnqn In real problems configuration space is highly dimensional

49 Definition of Robot Configuration configuration fixed A robot configuration is a specification of the positions of all robot points relative to a fixed coordinate system “vector” Usually a configuration is expressed as a “vector” of position/orientation parameters

50 reference point Rigid Robot Example 3-parameter representation: q = (x,y,  ) In a 3-D workspace q would be of the form (x,y,z,  ) x y  robot reference direction workspace Like you need six-dimensional space to describe the airplane in the air

51 Articulated Robot Example q1q1q1q1 q2q2q2q2 q = (q 1,q 2,…,q 10 )

52 Protein example

53 What is the Configuration Space of a Robot? Space of all its possible configurations topology Cartesian But the topology of this space is usually not that of a Cartesian space C = S 1 x S 1

54 Configuration Space of a Robot Space of all its possible configurations But the topology of this space is usually not that of a Cartesian space C = S 1 x S 1

55 Configuration Space of a Robot Space of all its possible configurations But the topology of this space is usually not that of a Cartesian space C = S 1 x S 1 But here looks like a cartesian space Like a torus

56 What is a Topology of the Configuration Space? q1q1q1q1 q2q2q2q2 (S1) 7 xR 3 R R R S1 S1 is rotation R is linear motion

57 Structure of Configuration Space Structure of Configuration Space is a manifold For each point q, there is a 1-to-1 map between a neighborhood of q and a Cartesian space R n, where n is the dimension of C This map is a local coordinate system called a chart. C can always be covered by a finite number of charts. Such a set is called an atlas

58 Example Every point of a sphere but one can be mapped to a plane

59 reference point Case of a Planar Rigid Robot 3-parameter representation: q = (x,y,  ) with   [0,2  ). Two charts are needed Other representation: q = (x,y,cos ,sin  )  c-space is a 3-D cylinder R 2 x S 1 embedded in a 4-D space x y  robot reference direction workspace

60 Rigid Robot in 3-D Workspace q = (x,y,z,  ) Other representation: q = (x,y,z,r 11,r 12,…,r 33 ) where r 11, r 12, …, r 33 are the elements of rotation matrix R: r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 with: –r i1 2 +r i2 2 +r i3 2 = 1 –r i1 r j1 + r i2 r 2j + r i3 r j3 = 0 –det(R) = +1 The c-space is a 6-D space (manifold) embedded in a 12-D Cartesian space. It is denoted by R 3 xSO(3)

61 Parameterization of SO(3) EulerEuler angles: (  quaternionUnit quaternion: (cos  /2, n 1 sin  /2, n 2 sin  /2, n 3 sin  /2) x yz x yz x y z  x yz 1  2  3  4

62 Metric in Configuration Space map A metric or distance function d in C is a map d: (q 1,q 2 )  C 2  d(q 1,q 2 ) > 0 such that: –d(q 1,q 2 ) = 0 if and only if q 1 = q 2 –d(q 1,q 2 ) = d (q 2,q 1 ) –d(q 1,q 2 ) < d(q 1,q 3 ) + d(q 3,q 2 ) The general concept of metric or “distance” in some kind of space

63 Metric in Configuration Space Example: Robot A and point x of A –x(q): location of x in the workspace when A is at configuration q –A distance d in C is defined by: d(q,q’) = max x  A ||x(q)-x(q’)|| where ||a - b|| denotes the Euclidean distance between points a and b in the workspace

64 Specific Examples in R 2 x S 1 q = (x,y,  ), q ’ = (x ’,y ’,  ’ ) with   ’  [0,2  )  = min{ |  ’ |, 2  |  ’ | } d(q,q ’ ) = sqrt[(x-x ’ ) 2 + (y-y ’ ) 2 +  2 ]  d(q,q ’ ) = sqrt[(x-x ’ ) 2 + (y-y ’ ) 2 + (  ) 2 ] where  is the maximal distance between the reference point and a robot point ’’’’  

65 What is a Path?  A path in C is a piece of continuous curve connecting two configurations q and q’:  : s  [0,1]   (s)  C  s’  s  d(  (s),  (s’))  0 q 1 q 3 q 0 q n q 4 q 2  (s)

66 Other Possible Constraints on Path  Finite length, smoothness, curvature, etc…  A trajectory is a path parameterized by time:  : t  [0,T]   (t)  C q 1 q 3 q 0 q n q 4 q 2  (s)

67 Obstacles in C-Space

68 q qnull intersection A configuration q is collision-free, or free, if the robot placed at q has null intersection with the obstacles in the workspace The free space F is the set of free configurations robot collides A C-obstacle is the set of configurations where the robot collides with a given workspace obstacle without overlap A configuration is semi-free if the robot at this configuration touches obstacles without overlap

69 Disc Robot in 2-D Workspace Touches obstacle without overlap B CB

70 Rigid Robot Translating in 2-D CB = B A = {b-a | a  A, b  B} a1 b1 b1-a1

71 Rigid Robot Translating in 2-D CB = B A = {b-a | a  A, b  B} a1 b1 b1-a1

72 Linear-Time Computation of C-Obstacle in 2-D (convex polygons) O(n+m)

73 Rigid Robot Translating and Rotating in 2-D   =  /2  =0 Now configuration space has 3 dimensions

74 C-Obstacle for Articulated Robot Two degrees of freedom

75 DEFINITIONS OF : Free and Semi-Free Paths  A free path lies entirely in the free space F  A semi-free path lies entirely in the semi-free space

76 Remark on Free-Space Topology 1.The robot and the obstacles are modeled as closed subsets, meaning that they contain their boundaries 2.One can show that the C-obstacles are closed subsets of the configuration space C as well 3.Consequently, the free space F is an open subset of C. 1.Hence, each free configuration is the center of a ball of non- zero radius entirely contained in F 4.The semi-free space is a closed subset of C. 1.Its boundary is a superset of the boundary of F

77 The semi-free space is a closed subset of C. Its boundary is a superset of the boundary of F obstacle Free space semi-free space

78

79 Notion of Homotopic Paths Two paths with the same endpoints are homotopic if one can be continuously deformed into the other R x S 1 example:  1 and  2 are homotopic  1 and  3 are not homotopic In this example, infinity of homotopy classes q q’   

80 Connectedness of C-Space 1.C is connected if every two configurations can be connected by a path 2.C is simply-connected if any two paths connecting the same endpoints are homotopic Examples: R 2 or R 3 3.Otherwise C is multiply-connected Examples: S 1 and SO(3) are multiply- connected: - In S 1, infinity of homotopy classes - In SO(3), only two homotopy classes

81 Extensions to Basic Motion Planning Problem

82 Some Extensions of Basic Problem 1.Moving obstacles 2.Multiple robots 3.Movable objects 4.Assembly planning 5.Goal is to acquire information by sensing 1.Model building 2.Object finding/tracking 3.Inspection 6.Nonholonomic constraints 7.Dynamic constraints 8.Stability constraints 1.Optimal planning 2.Uncertainty in model, control and sensing 3.Exploiting task mechanics (sensorless motions, under- actualted systems) 4.Physical models and deformable objects 5.Integration of planning and control 6.Integration with higher-level planning

83 Aerospace Robotics Lab Robot air bearing gas tank air thrusters obstacles robot

84 Total duration : 40 sec Two concurrent planning goals: Reach the goal Reach a safe region

85 Autonomous Helicopter [Feron] (MIT)

86 Assembly Planning

87 Map Building Where to move next?

88 Target Finding The guard guards the building attacked by terrorists. What he sees is colored yellow

89 Target Tracking

90 Planning for Nonholonomic Robots

91 Under-Actuated Systems video [Lynch] (Northwestern)

92 Planning with Uncertainty in Sensing and Control I G W1W1W1W1 W2W2W2W2

93 I G W1W1W1W1 W2W2W2W2

94 I G W1W1W1W1 W2W2W2W2

95 Motion Planning for Deformable Objects [Kavraki] (Rice)

96 Examples of Applications of Motion Planning

97 Examples of Applications 1.Manufacturing: 1.Robot programming 2.Robot placement 3.Design of part feeders 2.Design for manufacturing and servicing 3.Design of pipe layouts and cable harnesses 4.Autonomous mobile robots planetary exploration, surveillance, military scouting 1.Graphic animation of “digital actors” for video games, movies, and webpages 2.Virtual walkthru 3.Medical surgery planning 4.Generation of plausible molecule motions, e.g., docking and folding motions 5.Building code verification

98 Robot Programming

99 Robot Placement

100 Design for Manufacturing/Servicing General Electric General Motors

101 Assembly Planning and Design of Manufacturing Systems

102 Part Feeding

103

104 Cable Harness/ Pipe design

105 Humanoid Robot [Kuffner and Inoue, 2000] (U. Tokyo)

106 Modular Reconfigurable Robots Xerox, Parc Casal and Yim, 1999

107

108 Military Scouting and Planet Exploration [CMU, NASA]

109 Digital Actors 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)

110 Motion Planning for Digital Actors Manipulation Sensory-based locomotion

111 Navigation Through Virtual Environments [Cheng-Chin U., UNC, Utrecht U.] video

112 Building Code Verification

113 Radiosurgical Planning Cross-firing at a tumor while sparing healthy critical tissue

114 Study of the Motion of Bio-Molecules Protein folding Ligand binding

115 Practical Applications in Projects  Present a coherent framework for motion planning problems  Emphasis of “practical” algorithms with some guarantees of performance over “theoretical” or purely “heuristic” algorithms

116 Framework Continuous representation (configuration space and related spaces + constraints) Discretization (random sampling, criticality-based decomposition) Graph searching (blind, best-first, A*)

117 Practical Algorithms (1/2) A complete motion planner always returns a solution plan when one exists and indicates that no such plan exists otherwise. Most motion planning problems are hard, meaning that complete planners take exponential time in # of degrees of freedom, objects, etc.

118 Practical Algorithms (2/2) Theoretical algorithms strive for completeness and minimal worst-case complexity. Difficult to implement and not robust. Heuristic algorithms strive for efficiency in commonly encountered situations. Usually no performance guarantee.  Weaker completeness  Simplifying assumptions  Exponential algorithms that work in practice

119 Programming Project Navigate in virtual environment Simulate legged robot Inspection of structures Search and escape

120 Sources Davi Geiger Jean-Claude Latombe


Download ppt "Motion Planning Motion Planning. 1.What is the motion planning problem? 2.What is the fundamental question in motion planning problem? 3.What is the basic."

Similar presentations


Ads by Google