100 likes | 124 Views
Explore motion planning concepts like open sets, closed sets, and continuous functions. Understand the Configuration Space and tackle basic motion planning problems.
E N D
Basic Topology Definitions • Open set / closed set • Boundary point / interior point / closure • Continuous function • Parametric curve • Trajectory • Connected set • Topological mapping (homeomorphism)
Basic Motion Planning Problem • A – a single rigid object (robot) moving in a Euclidean space W (workspace) with no kinematical constraints • Bi – fixed rigid objects (obstacles) distributed in W • Given an initial and a goal position and orientation of A in W, generate a path specifying a continuous sequence of positions and orientations of A avoiding contact with the Bi’s, starting at the initial position and orientation, and terminating at the goal position and orientation. Report failure if no such path exists.
Configuration Space • Configuration: 2D: q = (x,y,θ) ∈R² 3D: q = (x,y,z, θ1, θ2, θ3) ∈R³ • C-obstacle CBi = {q ∈C : A(q) ⋂Bi ≠⊘ } a closed subset of C • Free C-space Cfree = C – ⋃int(CBi ) an open subset of C
Properties • CBiincludes obstacleBi (i=1..n ) • A andBi (i=1..n ) are both polygons => CBi polygon • A andBi (i=1..n ) are both convex => CBi is convex • Vertices of CBi are (for the example picture): dkj = bj– rk, (k=1..4 , j=1..3 )
Definitions: • Free space configuration – any configuration in free space Cfree. • Free path between two free configurations qinit and qgoal is a continuous map τ : [0,1]→Cfree, with τ(0) = qinit and τ(1) = qgoal. • Two configurations belong to the same connected component of Cfreeiff they are connected by a free path.
Semi-free path between two configurations qinit and qgoal is a continuous map τ : [0,1]→ cl(Cfree), with τ(0) = qinit and τ(1) = qgoal. • Contact space is the subset of C made of configurations at which A touches one or several obstacles without overlapping any. • Valid space – the union of free space and contact space; the set of configurations achievable by A when we accept contacts between A and obstacles.
A valid path between two configurations qinit and qgoal in Cvalid is a continuous map τ : [0,1]→Cvalid , with τ(0) = qinit and τ(1) = qgoal • A contact path between two configurations qinit and qgoal in Ccontact is a continuous map τ : [0,1]→Ccontact , with τ(0) = qinit and τ(1) = qgoal