+ All Categories
Home > Documents > Robotics: Modelling, Planning and Control

Robotics: Modelling, Planning and Control

Date post: 06-May-2015
Category:
Upload: cody-ray
View: 1,677 times
Download: 1 times
Share this document with a friend
66
Introduction Planning Techniques Application to Robot Manipulators Robotics: Modelling, Planning and Control Chapter 12 Summary Cody A. Ray February 6, 2011 1 / 66
Transcript
Page 1: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Robotics: Modelling, Planning and ControlChapter 12 Summary

Cody A. Ray

February 6, 2011

1 / 66

Page 2: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

IntroductionMotion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Planning TechniquesRetractionCell DecompositionProbabilistic PlanningArtificial Potential

Application to Robot Manipulators

2 / 66

Page 3: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Building on Previous Work

I Chaps. 4 and 7 present trajectory planning methods formanipulators and mobile robots, respectively

I Chap. 12 removes assumption of empty workspaceI Goal: avoid collision with obstacles – both static structures

and other moving objects

3 / 66

Page 4: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Planning Examples

I Manipulator in robotized cell must avoid collision with staticobjects and other manipulators

I Mobile robot carrying baggage in airport navigates amongobstacles that may be fixed (fittings, conveyor belts) or mobile(passengers, workers)

I Motion planning amounts to deciding which path to follow toexecute transfer task from initial to final posture withoutcolliding with obstacles

4 / 66

Page 5: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Autonomous Planning

I High-level task description provided by the user and ageometric characterization of the workspace

I Workspace characterizationI made available entirely in advance, off-line planningI gathered by the robot itself during the motion by means of

on-board sensors, on-line planningI Developing automatic methods for motion planning is very

difficult, and is still an active topic of research

5 / 66

Page 6: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

12.1 Canonical Problem

I Consider a robot B, which may consist of a single rigid body(mobile robot) or a kinematic chain whose base is either fixed(standard manipulator) or mobile (mobile robot with trailersor mobile manipulator).

I Robot moves in Euclidean space W = RN , with N = 2 or 3,called workspace.

I Let O1, . . . ,Op be the obstacles, i.e., fixed rigid objects in W.I Assume that both the geometry of B, O1, . . . ,Op and the

pose of O1, . . . ,Op in W are known.I Suppose that B is free-flying, that is, the robot is not subject

to any kinematic constraint.

6 / 66

Page 7: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Canonical Problem Statement

I The motion planning problem is the followingI given an initial and a final posture of B in W, find if exists a

path, i.e., a continuous sequence of postures, that drives therobot between the two postures while avoiding collisions(including contacts) between B and the obstacles O1, . . . ,Op;report a failure if such a path does not exist.

7 / 66

Page 8: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Special Cases

I Robot is a single body moving in R2 is also known as thepiano movers’ problem

I The generalized movers’ problem is canonical for single-bodyrobot moving in R3

8 / 66

Page 9: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

12.2 Configuration Space

I Representing the robot as a mobile point in an appropriatespace, where the images of the workspace obstacles are alsoreported. To this end, it is natural to refer to the generalizedcoordinates of the mechanical system, whose value identifiesthe configuration of the robot. This associates to eachposture of the latter a point in the configuration space, i.e.,the set of all the configurations that the robot can assume.

9 / 66

Page 10: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Configuration

I Consider a system Br of r rigid bodies and assume that all theelements of Br can reach any position in space. In order tofind uniquely the position of all the points of the system, it isnecessary to assign a vector xxx = [x1 . . . xp]T of 6r = pparameters, termed configuration. These parameters aretermed Lagrange or generalized coordinates of theunconstrained system Br , and p determines the number ofdegrees of freedom (DOFs).

10 / 66

Page 11: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Configuration Space Examples

I The configuration of a polygonal mobile robot in W = R2 isdescribed by the position of a representative point on thebody (e.g., a vertex) and by the orientation of the polygon,both expressed with respect to a fixed reference frame. Theconfiguration space C is R2 × SO(2), with dimension n = 3.

I For a polyhedral mobile robot in W = R3, the configurationspace C is R3 × SO(3), whose dimension is n = 6.

I For fixed-base planar manipulator with n revolute joints, theconfiguration space is subset of (R2 × SO(2))n. Dimension ofC equals the dimension of (R2 × SO(2))n minus the numberof constraints due to the presence of joints, i.e., 3n − 2n = n.In fact, in a planar kinematic chain, each joint imposes twoholonomic constraints on the following body.

11 / 66

Page 12: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Configuration Space Examples (cont’d)

I For a fixed-base spatial manipulator with n revolute joints, theconfiguration space is a subset of (R3 × SO(3))n. Since inthis case each joint imposes five constraints on the followingbody, the dimension of C is 6n − 5n = n.

I For a unicycle-like vehicle with a trailer in R2, configurationspace is subset of (R2 × SO(2))× (R2 × SO(2)). If the traileris connected to the unicycle by revolute joint, configuration ofthe robot can be described by the position and orientation ofthe unicycle and the orientation of the trailer. The dimensionof C is therefore n = 4.

12 / 66

Page 13: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.1Consider a 2R manipulator (planar with two revolute joints)

Figure: (2.14.) Two-link planar arm

13 / 66

Page 14: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.1

The configuration space has dimension 2, and may be locallyrepresented by R2, or more precisely by its subset

Q = {q = (q1, q2) : q1 ∈ [0, 2π), q2 ∈ [0, 2π)}.

This guarantees that the representation is injective, i.e., that asingle value of q exists for each manipulator posture. However, thisrepresentation is not topologically correct: for example, theconfigurations denoted as qA and qB in Fig. 12.1, left, whichcorrespond to manipulator postures that are ‘close’ in theworkspace W, appear to be ‘far’ in Q.

14 / 66

Page 15: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.1

Figure: (12.1.) The configuration space of a 2R manipulator; left: alocally valid representation as a subset of R2, right: a topologicallycorrect representation as a two-dimensional torus

15 / 66

Page 16: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.1

I To take this into account, one should ‘fold’ the square Q ontoitself (so as to make opposite sides meet) in sequence alongits two axes. This procedure generates a ring, properly calledtorus, which can be visualized as a two-dimensional surfaceimmersed in R3 as in Fig. 12.1, right. The correct expressionof this space is SO(2)× SO(2).

I As we can see, even in simple examples, the geometricstructure of the configuration space is in general morecomplex than that of a Euclidean space.

16 / 66

Page 17: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

12.2.1 Distance in configuration space C

I Given a configuration qqq, let B(qqq) be the subset of theworkspace W occupied by the robot B, and p(qqq) be theposition in W of a point p on B. Intuition suggests that thedistance between two configurations qqq1 and qqq2 should go tozero when the two regions B(qqq1) and B(qqq2) tend to coincide.

d1(qqq1,qqq2) = maxp∈B||p(qqq1)− p(qqq2)|| (12.1)

I In other words, the distance between two configurations in Cis the maximum displacement in they induce on a point, asthe point moves all over the robot.

17 / 66

Page 18: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Distance in configuration space C (cont’d)

I However, the use of d1(qqq) is cumbersome. We often choosethe simple Euclidean norm as the configuration space distance.

d2(qqq1,qqq2) = ||p(qqq1)− p(qqq2)|| (12.2)

I This is only appropriate when C is a Euclidean space. FromExample 12.1, it’s easy to realize that, unlike d1(qqqA,qqqB), theEuclidean norm d2(qqqA,qqqB) does not represent correctly thedistance on the torus.

18 / 66

Page 19: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

12.2.2 Build the ‘images’ of obstacles in C

I Given an obstacle Oi (i = 1, . . . , p) in W, its image inconfiguration space C is called C-obstacle and is defined as

COi = {qqq ∈ C : B(qqq) ∩ Oi 6= ∅}. (12.3)

I In other words, COi is the subset of configurations that causea collision (including simple contacts) between the robot Band the obstacle Oi in the workspace.

19 / 66

Page 20: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Build the ‘images’ of obstacles in C (cont’d)

I The union of all C-obstacles

CO =p⋃

i=1COi (12.4)

defines the C-obstacle region, while its complement

Cfree = C − CO = {qqq ∈ C : B(qqq) ∩( p⋃

i=1Oi

)= ∅} (12.5)

is the free configuration space, that is, the subset of robotconfigurations that do not cause collision with the obstacles.A path in configuration space is called free if it is entirelycontained in Cfree .

20 / 66

Page 21: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Build the ‘images’ of obstacles in C (cont’d)

I Although C is a connected space – given two arbitraryconfiguration there exists a path that joins them – the freeconfiguration space Cfree may not be connected because ofocclusions due to C-obstacles. Note also that the assumptionof free-flying robot in the canonical problem means that therobot can follow any path in the free configuration space Cfree .

21 / 66

Page 22: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Compact Canonical Motion Planning Problem

I Assume the initial and final posture of the robot B in W aremapped to corresponding configurations in C, respectivelycalled start configuration qqqs and goal configuration qqqg .Planning a collision-free motion for the robot means thengenerating a safe path between qqqs and qqqg if they belong tothe same connected component of Cfree , and reporting afailure otherwise.

22 / 66

Page 23: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.2

I Consider the case of a point robot B. In this case, theconfiguration of the robot is described by the coordinates ofpoint B in the workspace W = RN and the configurationspace C is a copy of W. Similarly, the C-obstacles are copiesof the obstacles in W.

23 / 66

Page 24: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.3Configuration of spherical robot in W = RN can be described byits center point; orientation is irrelevant. C is copy of W, butC-obstacles aren’t copies of obstacles in W; growing procedure:

Figure: (12.2.) C-obstacles for a circular robot in R2; left: the robot B,an obstacle Oi and the growing procedure for building C-obstacles, right:the configuration space C and the C-obstacle COi

24 / 66

Page 25: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.4Configuration of polyhedral robot that’s free to translate with fixedorientation in RN described by representative point (e.g., a vertex).C is copy of W, C-obstacles obtained through growing procedure.

Figure: (12.3.) C-obstacles for a polygonal robot translating in R2; left:the robot B, an obstacle Oi and the growing procedure for buildingC-obstacles, right: the configuration space C and the C-obstacle COi

25 / 66

Page 26: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.5

I Polyhedral robot that can translate and rotate in RN hashigher dimensional C.

I Ex. if W = R2, C is represented as point (e.g., a vertex) andangular coordinate θ w.r.t fixed frame, or R2 × SO(2).

I Repeat growing procedure for each possible θ. The C-obstacleCOi is the volume generated by ‘stacking’ (in the direction ofthe θ axis) all the constant-orientation slices thus obtained.

26 / 66

Page 27: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.6

I Robot manipulator B with rigid links B1, . . . ,Bn connected byjoints, there are two kinds of C-obstacles:

I collision between body Bi and obstacle OjI self-collisions, i.e., interference between two links Bi and Bj of

the kinematic chain.I To obtain the boundary of the C-obstacle COi , we must

identify through appropriate inverse kinematics computationsall configurations that bring one or more links of themanipulator B in contact with Oi .

I Fig 12.4 shows C-obstacles for 2R manipulator in two cases(no self-collisions). Simple-shaped obstacles in W, complexC-obstacles profile. (C is a torus shown as R2 for simplicity.)

27 / 66

Page 28: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Motion PlanningCanonical ProblemConfiguration SpaceExamples of Obstacles

Example 12.6 (cont’d)

Figure: (12.4.) C-obstacles for a wire-frame 2R manipulator in twodifferent cases; left: the robot and the obstacles in W = R2, right: theconfiguration space C and the C -obstacle region CO.

28 / 66

Page 29: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.3 Planning via Retraction

Represent free configuration space as a roadmap R ⊂ Cfree , i.e.,network of paths describing the connectivity of Cfree . The solutionof a particular instance of a motion planning problem is thenobtained by connecting (retracting) to the roadmap the startconfiguration qqqs and the goal configuration qqqg , and finding a pathon R between the two connection points.

29 / 66

Page 30: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Planning via Retraction (cont’d)

I Assume Cfree is subset of C = R2 and is polygonal, i.e., itsboundary is entirely made of line segments, implying that theC-obstacle region is itself a polygonal subset of C.

I The clearance of each configuration qqq in Cfree is

γ(qqq) = minsss∈∂Cfree

||qqq − sss||, (12.6)

where ∂Cfree is the boundary of Cfree . The clearance γ(qqq)represents the minimum Euclidean distance between theconfiguration qqq and the C-obstacle region.

30 / 66

Page 31: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Planning via Retraction (cont’d)

I Set of points on boundary of Cfree that are neighbors of qqq:

N(qqq) = {sss ∈ ∂Cfree : ||qqq − sss|| = γ(qqq)}, (12.7)

i.e., points on ∂Cfree determine the value of clearance for qqq.I With these definitions, the Voronoi diagram of Cfree is the

locus of its configurations having more than one neighbour:

V(Cfree) = {qqq ∈ Cfree : card(N(qqq)) > 1}. (12.8)

31 / 66

Page 32: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Voronoi Diagrams

Figure: (12.5.) An example of Voronoi diagram and the solution of aparticular instance of the planning problem, obtained by retracting qqqs andqqqg on the diagram. The solution path from qqqs to qqqg consists of the twodashed segments and the thick portion of the diagram joining them

32 / 66

Page 33: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Voronoi Diagrams (cont’d)

I V(Cfree) can be considered a graph having elementary arcs ofthe diagram as arcs and endpoints of arcs as nodes.

I Voronoi diagrams locally maximize clearance, and aretherefore a natural choice as a roadmap of Cfree for planningmotions characterized by a healthy safety margin with respectto the possibility of collisions.

33 / 66

Page 34: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Figure 12.6A retraction procedure must be defined to connect a configurationin Cfree to the diagram. (Using V(Cfree) as a roadmap.)

Figure: (12.6.) The retraction procedure for connecting a genericconfiguration qqq in Cfree to V(Cfree)

34 / 66

Page 35: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Steps for Motion Planning via Retraction

1. Build the generalized Voronoi diagram V(Cfree).2. Compute the retractions rrr(qqqs) and rrr(qqqg ) on V(Cfree).3. Search V(Cfree) for a sequence of consecutive arcs such that

rrr(qqqs) belongs to the first and rrr(qqqg ) to the last.4. If the search is successful, replace the first arc of the sequence

with its subarc originating in rrr(qqqs) and the last arc of thesequence with its subarc terminating in rrr(qqqg ), and provide asoutput the path consisting of the line segment joining qqqs torrr(qqqs), the modified arc sequence, and the line segment joiningqqqg to rrr(qqqg ); otherwise, report a failure.

35 / 66

Page 36: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.4 Cell Decomposition

I Assume Cfree can be decomposed in simply-shaped regions,called cells, with the following characteristics:

I ‘easy’ to compute collision-free path that joins twoconfigurations belonging to the same cell.

I ‘easy’ to generate collision-free path between adjacent cells.I Generate connectivity graph from the cell decomposition,

where nodes represent cells and arcs represent adjacency.I Different motion planning methods based on type of cell; we

explore exact and approximate cell decomposition.

36 / 66

Page 37: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.4.1 Exact Cell Decomposition

I Cfree partitioned as set of cells whose union gives exactly CfreeI convex polygonal cells guarantee the line segments joining two

configurations in the same cell lies entirely in the cell itself,and therefore in Cfree .

I travel safely between adjacent cells by passing through themidpoint of the segment constituting their common boundary

37 / 66

Page 38: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Exact Cell Decomposition (cont’d)

Figure: (12.7.) An example of trapezoidal decomposition via the sweepline algorithm (above) and the associated connectivity graph (below).Also shown is the solution of a particular planning problem (cs = c3 andcg = c20), both as a channel in Cfree and as a path on the graph

38 / 66

Page 39: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Exact Cell Decomposition (cont’d)

1. Compute a convex polygonal (e.g., trapezoidal)decomposition of Cfree .

2. Build the associated connectivity graph C .3. Search C for a channel, i.e., a sequence of adjacent cells from

cs to cg .4. If a channel has been found, extract and provide as output a

collision-free path from qqqs to qqqg ; otherwise, report a failure.

39 / 66

Page 40: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.4.2 Approximate Cell Decomposition

I Disjoint cells of predefined shape (e.g., rectangle for C = R2).I The union of all cells approximates Cfree .I Trade-off between approximation accuracy and decomposition

efficiency: recursive algorithm starts with coarse grid whoseresolution is locally increased to adapt to Cfree ’s geometry.

I The associated connectivity graph is searched for a channel,from which a solution path can be extracted.

40 / 66

Page 41: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Approximate Cell Decomposition (cont’d)

Figure: (12.8.) An example of motion planning via approximate celldecomposition; left: the assigned problem, right: the solution as a freechannel (thick line)

41 / 66

Page 42: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.5 Probabilistic Planning

I Determine a finite set of collision-free configurations thatadequately represent the connectivity of Cfree , and use theseconfigurations to build a roadmap.

I Choose at each iteration a sample configuration and check if itentails a collision between the robot and workspace obstacles.

I Discard samples with collisions. Else, add to current roadmapand connect if possible to other stored configurations.

I Sample configurations chosen according to some probabilitydistribution. Two planners of this type are discussed.

42 / 66

Page 43: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.5.1 Probabilistic Roadmap (PRM)

I First, generate a random sample qqqrand of the configurationspace using a uniform probability distribution in C.

I Test qqqrand for collision; if safe, try to connect through localpaths to sufficiently ‘near’ configurations already in roadmap.

I ‘Nearness’ usually defined on basis of Euclidean distance in CI Local path between qqqrand and qqqnear usually selected as

rectilinear in C, chosen by local planner procedureI Sample path at sufficient resolution; test samples for collision

I Stop after a maximum number of iterations or the number ofconnected components becomes smaller than threshold.

I Connect qqqs and qqqg to the same connected component of thePRM by free local paths to find solution.

43 / 66

Page 44: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Probabilistic Roadmap (cont’d)

Figure: (12.9.) A PRM in a two-dimensional configuration space (left)and its use for solving a particular planning problem (right)

44 / 66

Page 45: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.5.2 Bidirectional Rapidly-exploring Random Tree (RRT)

I Single-query methods quickly solve specific problem instanceI An exhaustive Cfree connectivity roadmap is not generated.I Incremental expansion of RRT (T ) using simple randomized

procedure at each iterationI Generate a random configuration qqqrand according to uniform

probability distribution in CI Configuration qqqnear in T closest to qqqrand , and new candidate

qqqnew produced on segment joining qqqnear to qqqrand at apredefined distance δ from qqqnear .

I Collision check on qqqnew and segment from qqqnear to qqqnew ; ifboth in Cfree , T is expanded by incorporating qqqnew and thesegment connecting it to qqqnear .

I qqqrand is not added, only indicates direction of expansion

45 / 66

Page 46: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Bidirectional RRT (cont’d)

I Speedup: use two trees Ts , Tg , respectively rooted at qqqs , qqqgI At each iteration, both trees expanded as previously describedI After set number iterations, try to connect the two trees

I Generate qqqnew as expansion of Ts , try to connect Tg to qqqnewI qqqnew acts as qqqrand for Tg with variable step-size–not constant δI If collision-free segment, done! else, add free portion to Tg , Tg

and Ts exchange roles and connection attempt is repeatedI If not successful after set number iterations, conclude trees are

still far apart and resume the expansion phase

46 / 66

Page 47: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Bidirectional RRT (cont’d)

Figure: (12.10.) The bidirectional RRT method in a two-dimensionalconfiguration space, left: the randomized mechanism for expanding atree, right: the extension procedure for connecting the two trees

47 / 66

Page 48: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Extension to nonholonomic robots

I Adapt RRT to nonholonomic robots – not free-flyingI Ex. robot with unicycle kinematics, rectilinear paths in

configuration space are not admissible in general.I General approach: use motion primitives, admissible local

paths in C, each produced by specific choice of velocity inputsin kinematic model. Admissible paths are concatenation ofmotion primitives. Velocity inputs follow for unicycle robot:

υ = υ ω = {−ω, 0, ω} t ∈ [0,∆], (12.9)

resulting in three admissible local paths: first and third areleft/right turn while second is rectilinear

48 / 66

Page 49: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Bidirectional RRT for a unicycle robot

Figure: (12.11.) RRT-based motion planning for a unicycle; left: a set ofmotion primitives, right: an example of RRTs

49 / 66

Page 50: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.6 Artificial Potential

I Previous methods are off-line, requiring a priori knowledge ofgeometry and pose of obstacles in workspace

I On-line planning uses partial information on the workspacegathered during the motion

I Robot (point in C) moves under influence of potential field UI U is superposition of attractive potential to the goal and

repulsive potential from C-obstacle region.I Artificial force generated by U at each configuration qqq is the

negative gradient −∇U(qqq) of the potential, indicating themost promising direction of local motion

50 / 66

Page 51: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.6.1 Attractive Potential

I Guide robot to goal qqqg using a paraboloid with vertex in qqqg

Ua1(qqq) =12kaeeeT (qqq)eee(qqq) =

12ka||eee(qqq)||2, (12.10)

with ka > 0 and eee = qqqg −qqq is the ‘error’ vector w.r.t the goal.(Always positive and global minimum at goal, where it is zero)

I Resulting attractive force is

fff a1(qqq) = −∇Ua1(qqq) = kaeee(qqq) (12.11)

I Alternatively, conical attractive potential and resulting force

Ua2(qqq) = ka||eee(qqq)|| fff a2(qqq) = kaeee(qqq)

||eee(qqq)||(12.12; 12.13)

51 / 66

Page 52: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Attractive Potential (cont’d)

Figure: (12.12.) The shape of the paraboloidic attractive potential Ua1(left) and of the conical attractive potential Ua2 (right) in the caseC = R2, for ka = 1

52 / 66

Page 53: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.6.2 Repulsive Potential

I Prevents collisions with obstacles as robot moves underinfluence of attractive force fff a

I Assume C-obstacle region partitioned as convex componentsCOi , i = 1, . . . , p.

Ur ,i (qqq) =

{ kr,iγ

(1

ηi (qqq) −1η0,i

)γif ηi (qqq) ≤ η0,i

0 if ηi (qqq) > η0,i(12.14)

where kr ,i > 0, ηi (qqq) = minq′∈COi ||qqq − qqq′|| is the distance ofqqq from COi , η0,i is range of influence of COi and γ = 2, 3, . . .

53 / 66

Page 54: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Repulsive Potential (cont’d)

I The repulsive force resulting from Ur ,i is

fff r ,i (qqq) = −∇Ur ,i (qqq)

=

kr,iη2

i (qqq)

(1

ηi (qqq) −1η0,i

)γ−1∇ηi (qqq) if ηi (qqq) ≤ η0,i

0 if ηi (qqq) > η0,i(12.15)

I The aggregate repulsive potential is

Ur (qqq) =p∑

i=1Ur ,i (qqq). (12.16)

54 / 66

Page 55: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Repulsive Potential (cont’d)

Figure: (12.13.) The equipotential contours of the repulsive potential Urin the range of influence of a polygonal C-obstacle in C = R2, for kr = 1and γ = 2

55 / 66

Page 56: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.6.3 Total Potential

I Total potential Ut is superposition of attractive and aggregaterepulsive potentials:

Ut(qqq) = Ua(qqq) + Ur (qqq). (12.17)

I This results in the force field

fff t(qqq) = −∇Ut(qqq) = fff a(qqq) +p∑

i=1fff r ,i (qqq) (12.18)

56 / 66

Page 57: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Total Potential (cont’d)

Figure: (12.14.) The total potential in C = R2 obtained by superpositionof a hyperboloidic attractive potential and a repulsive potential for arectangular C-obstacle: left: the equipotential contours, right: theresulting force field

57 / 66

Page 58: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.6.4 Planning TechniquesThree collision-free motion planning approaches using Ut and fff t :

1. Consider fff t(qqq) as a vector of generalized forces that induce amotion of the robot in accordance with its dynamic model.

τττ = fff t(qqq) (12.19)

2. The second method regards the robot as a unit point massmoving under the influence of fff t(qqq), as in

qqq = fff t(qqq) (12.20)

3. The third possibility is to interpret the force field fff t(qqq) as adesired velocity for the robot, by letting

qqq = fff t(qqq) (12.21)

58 / 66

Page 59: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Planning Techniques (cont’d)

I (12.19) directly represents control inputs for the robot. Itgenerates smoother paths because reactions to presence ofobstacles are naturally ‘filtered’ through the robot dynamics.

I (12.20) requires the solution of the inverse dynamics problem(to compute the generalized forces τττ).

I (12.21) can be used on-line in a kinematic control scheme. Itexecutes the motion corrections faster, and may be consideredsafer. Further, it guarantees the asymptotic stability of qqqg(the robot reaches the goal with zero velocity).

59 / 66

Page 60: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Planning Techniques (cont’d)

I Commonly, numerical integration of (12.21) via Euler method:

qqqk+1 = qqqk + Tfff t(qqqk) (12.22)

where qqqk and qqqk+1 represent the current and next robotconfiguration, and T is integration step. (Gradient method forminimizing Ut(qqq), aka the method of steepest descent).

I Local minima can ‘trap’ generated paths from reaching theirgoal (methods are not complete in general).

I Grid-discretized steepest descent using best-first search isresolution complete but exponential in dimension of C

I Improve: bound ‘basin filling’ iterations before random walk

60 / 66

Page 61: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

12.6.5 Navigation Functions

I Best-first search (basic or randomized) solve the local minimaproblem, but may generate inefficient paths

I Navigation functions: artificial potentials with no local minimaI This property already holds if the C-obstacles are spheresI Could approximate-by-excess all C-obstacles with spheresI Could use differentiable homeomorphism to map C-obstacles

to collection of spheres, generate classic total potential intransformed space, and map back to original space.

I Could use harmonic functions, solutions of particulardifferential equation describing physical process of heattransmission or fluid dynamics

61 / 66

Page 62: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

RetractionCell DecompositionProbabilistic PlanningArtificial Potential

Navigation Functions (cont’d)

Figure: (12.15.) An example of numerical navigation function in a simpletwo-dimensional gridmap using 1-adjacency. Cells in gray denote aparticular solution path obtained by following from the start (cell 12) thesteepest descent of the potential on the gridmap

62 / 66

Page 63: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

12.7 The Robot Manipulator Case

I High computational complexity due to high dimension of C(typically n ≥ 4) and rotational DOFs (revolute joints).

I Reduce the dimension of C approximating by excess robot size(e.g, replace wrist/end-effector in six-DOF anthropomorphicmanipulator with the volume their joint ‘sweeps’.)

I Shape of C-obstacles is complex due to rotational DOFs andnonlinearity of inverse kinematics (recall Fig. 12.4).

I Non-polyhedral shape doesn’t allow application of methodspresented in Secs. 12.3 and 12.4.

63 / 66

Page 64: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

The Robot Manipulator Case (cont’d)

I The most convenient choice for off-line planning isprobabilistic methods, due to high-dimensional configurationspaces. (Computation of C-obstacles is not required).

I For on-line planning, use method from artificial potentials.I To avoid computation of C-obstacles and plan in reduced

dimensional space, the potential is directly built in workspaceW rather than C, and acts on manipulator control points set.

I A point representing end-effector (assigned goal of motionplanning problem) and at least one point for each link body.

I Use attractive-repulsive field for end-effector, and repulsivefield for other control points distributed on manipulator links.

64 / 66

Page 65: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

The Robot Manipulator Case (cont’d)

I Let p1, . . . , pP−1 represent body control points and pP theend-effector control point

1. impose the generalized forces from combined action of variousforce fields on control points in W, according to

τττ = −P−1∑i=1

JJJTi (qqq)∇Ur (pppi )− JJJT

P (qqq)∇Ut(pppp) (12.23)

where JJJ i (qqq), i = 1, . . . ,P, denotes the Jacobian of the directkinematics function associated with the control point ppp(qqq).

2. Alternatively, we could feed these as joint velocities qqq ratherthan forces τττ (12.24).

I These options correspond to (12.19) and (12.21), inheritingthe same characteristics.

65 / 66

Page 66: Robotics: Modelling, Planning and Control

IntroductionPlanning Techniques

Application to Robot Manipulators

Example of Artificial Potentials

Figure: (12.16.) Examples of motion planning via artificial potentialsacting on control points for a planar 3R manipulator; left: planning issuccessful and leads to a collision-free motion between the start S andthe goal G , right: a failure is reported because the manipulator is stuckat a force equilibrium

66 / 66


Recommended