+ All Categories
Home > Documents > Continuous Configuration Spaces

Continuous Configuration Spaces

Date post: 29-Sep-2015
Category:
Upload: elias-j
View: 228 times
Download: 3 times
Share this document with a friend
Description:
Continuous Configuration Spaces
23
Rheinische Friedrich-Wilhelms-Universit ¨ at Bonn Institut f¨ ur Informatik I Philipp Serafin Seminar report: Continuous configuration spaces March 31, 2012 Seminararbeit im Wintersemester 2011
Transcript
  • Rheinische Friedrich-Wilhelms-Universitat BonnInstitut fur Informatik I

    Philipp Serafin

    Seminar report:Continuous

    configuration spaces

    March 31, 2012

    Seminararbeit im Wintersemester 2011

  • Abstract

    This seminar report describes a mathematical tool set with whichplanning problems can be solved even if the surrounding world can-not be dissected into countably many discrete states.

    The particular focus will be on motion planning problems, such asmoving a particularly shaped robot through an environment or chang-ing the configuration of a robot arm that can only be moved in a limitednumber of ways.

    The report is based on chapter 4, The configuration space of thebook Planning Algorithms by Stephen LaValle [LaValle, 2006].

    Contents

    1 Motivational example: Piano movers problem 31.1 Discrete formulation . . . . . . . . . . . . . . . . . . . . . . . 31.2 Goal for continuous formulation . . . . . . . . . . . . . . . . . 3

    2 Road map 4

    3 Representation of world and agent 43.1 Semi-algebraic primitives . . . . . . . . . . . . . . . . . . . . 43.2 Transformations of geometric models . . . . . . . . . . . . . . 4

    4 Mathematical concepts 54.1 Topological spaces . . . . . . . . . . . . . . . . . . . . . . . . 54.2 Boundary points . . . . . . . . . . . . . . . . . . . . . . . . . 6

    4.2.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . . 64.3 Connected sets . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    4.3.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . . 74.4 Continuous functions . . . . . . . . . . . . . . . . . . . . . . . 7

    4.4.1 Continuous functions and connected sets . . . . . . . . 74.5 Homeomorphisms . . . . . . . . . . . . . . . . . . . . . . . . . 8

    4.5.1 Existence of homeomorphisms as equivalence relation 84.5.2 Examples of homeomorphisms: . . . . . . . . . . . . . 8

    4.6 Methods of deriving topological spaces . . . . . . . . . . . . . 94.6.1 Subspace topology . . . . . . . . . . . . . . . . . . . . 94.6.2 Product topology . . . . . . . . . . . . . . . . . . . . . 104.6.3 Identification . . . . . . . . . . . . . . . . . . . . . . . 10

    4.7 Manifolds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    5 Configuration spaces 115.1 2D rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115.2 3D rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125.3 Translation and Rotation . . . . . . . . . . . . . . . . . . . . 135.4 Chains of bodies . . . . . . . . . . . . . . . . . . . . . . . . . 13

    1

  • 6 Obstacles 136.1 General definition . . . . . . . . . . . . . . . . . . . . . . . . . 146.2 2D Translation . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    6.2.1 Minkowski Sum and convex polygons . . . . . . . . . . 146.2.2 Trivial algorithm for Minkowski sum . . . . . . . . . . 156.2.3 Star Algorithm . . . . . . . . . . . . . . . . . . . . . . 156.2.4 Correctness of Star Algorithm . . . . . . . . . . . . . . 166.2.5 Run time of Star Algorithm . . . . . . . . . . . . . . . 19

    6.3 2D Translation and Rotation . . . . . . . . . . . . . . . . . . 196.4 3D Translation . . . . . . . . . . . . . . . . . . . . . . . . . . 206.5 Generalization to nonconvex polyhedra . . . . . . . . . . . . . 20

    7 Paths 207.0.1 Path-connected . . . . . . . . . . . . . . . . . . . . . . 21

    8 Conclusion 21

    2

  • 1 Motivational example: Piano movers problem

    1.1 Discrete formulation

    Consider the problem of moving a piano throughout the rooms of a crampedflat. One could try and model the piano movers problem as a discreteplanning problem, resulting in a Tetris-like puzzle game:

    Consider as the world space a two-dimensional grid of tiles where certaintiles are marked as obstacles. At each point in time, the agent occupies anumber of non-obstacle tiles.

    Available actions of the agent are:

    Move a tile up, left, right or down rotate 90 clockwise or counter-clockwiseAs a discrete planning problem, this scenario would be formulated in a

    state transition graph.If one considers the agent rigid, i.e. an action moves all occupied tiles

    into a common direction, then a state would be a 3-tuple:

    The X- and Y offset of the tiles occupied by the agent; The current orientation (0, 90, 180, 270)

    Each edge in the graph corresponds to an action performed in a certainstate. Certain transitions might not be valid, e.g. if the agent would passthrough obstacles during a 90 turn. Certain states might not be reachableat all, e.g. states in which the agent would occupy obstacle tiles. States ofsuch invalid transitions are not connected with edges.

    The challenges of planning in a discrete case like this would be:

    Given representations of world space, agent and actions, derive thestate transition graph.

    Given a start and destination state, find a path through the statetransition graph.

    1.2 Goal for continuous formulation

    The discrete formulation of the piano movers problem leaves a lot to bedesired. It would be desirable to use more flexible shapes and move andturn the agent by arbitrary degrees. The solution is to use a different modelfor the state space that contains a continuum of states.

    Requirements for such a space are:

    Some representation of the states than an agent can assume.

    3

  • Some representation of the constraints that govern which transitionsbetween states are valid. Those restrictions might arise from propertiesof the agent itself or from interactions between agent and world.

    Some notion of a path between a start and a goal state in the statespace.

    However, because we have now uncountably infinitely many states, wecannot represent the transitions between states as edges in a graph anymore.The resulting continuous state space will be called a configuration space.

    2 Road map

    We will first show how a non-discrete agent and world can be modeled usinggeometric primitives. Then we will introduce the basic mathematical con-cepts to define states. Next, we will show how agents and obstacles modeledgeometrically in a world space can be represented in a continuous statespace. Finally we will show how paths between states can be represented.

    3 Representation of world and agent

    We will use R2 and R3 as basic world spaces.

    3.1 Semi-algebraic primitives

    A way to concisely and efficiently model geometric regions in Rn are semi-algebraic primitives.

    For a given polynomial function f : Rn R, let a primitive H := {x Rn : f(x) 0}.

    If f is linear, then the primitive describes a half-plane in R2 or half-spacein R3:

    Consider f(x, y) := ax + by + c. a, b and c define a line in R2. Sincef(x, y) = 0 exactly for all points that lie on that line and f(x, y) < 0 exactlyfor all points that are on one side of the line, the primitive defines a half-plane.

    The intersection of k such sufficiently oriented half-planes yields an l-sided convex polygon, where l k. Unions of such convex polygons canyield non-convex polygons.

    In both 2D and 3D cases, polynomials of higher order can be used for fto yield shapes other than polygons and polyhedrons.

    3.2 Transformations of geometric models

    Semi-algebraic models may be used to describe both the agent as well asobstacles in the world. The placement of the agent in the world is described

    4

  • by applying a coordinate transformation to the agents model. (The initialstate of the agent is represented as the identity transformation) We assumethe agent can change its angle and position. Therefore its state in the worldis defined by a homogeneous transformation.

    In R2, every point of the agents region is transformed by a matrix

    R(, xt, yt) :=

    cos sin xtsin cos yt0 0 1

    To apply the transformation, each point of (x, y) R2 is represented by

    a vector

    xy1

    .In R3, rotations around all three axes are possible. Therefore the corre-

    sponding transformation has six parameters.In addition to rigid models, agents may also be modeled as chains or trees

    of links that are connected to their predecessor via joints. Then the stateof the agent is represented as a transformation for each joint that maps thecoordinate system of the next link to the coordinates of the previous link.This is called a kinematic chain.

    4 Mathematical concepts

    To use the above definitions, the state space must have a corresponding statefor each possible homogeneous transformation. However the state spaceshould also reflect that, e.g. to change from one orientation to another, theagent must assume all orientations in between - the path through the statespace must be continuous.

    However, even if the state space would only represent orientation, itcould not be a single interval, since the path would wrap around whenthe agent performs a full turn. Therefore the state space will be modeled asa manifold and use a more general definition of continuity.

    4.1 Topological spaces

    Let X be a set and V 2X a collection of subsets of X. X is called atopological space with topology V iff it satisfies the following axioms:

    The union of any number of sets in V even infinitely many, is in V . The intersection of finitely many sets in V is in V . X and are in V .

    5

  • All sets in V are called open sets.The complement of an open set is called a closed set. This implies

    that some sets, like X and are both open and closed and other sets canbe neither open nor closed.

    4.2 Boundary points

    Given the collection of open sets of a topological space, the elements orpoints of sets in that space can be characterized.

    Given a set U X, where(X,W ) is a topological space, A point u U is an interior point of U , if there exists an open set

    that contains u and lies completely in U .

    u is called an exterior point of U if there exists an open set con-taining u that lies completely outside U .

    If neither open set exists, u is called a Boundary point of U .Boundary and interior points are also called limit points.

    4.2.1 Example

    Consider R as a topological space with the open sets defined as all openintervals (a; a+) for all a R, > 0 and all unions and finite intersectionsof them. (This is called standard topology of Rn.)

    Consider the intervals (0; 1) and [0; 1]. x1 = 0.5 is an interior point ofboth of them as the open set (0; 1) contains x1 and also lies completely in[0; 1].

    x2 = 2 is an exterior point of both sets as it is contained in the open set(1.5; 2.5) that lies completely outside of both (0; 1) and [0; 1].

    Finding any open set like this is not possible for x3 = 1. Regardlessof how small an open interval around x3 would be chosen, parts of theinterval would always lie inside of (0; 1), respectively [0; 1] and parts wouldlie outside. Therefore x3 is a boundary point of (0; 1) and [0; 1], even thoughit is contained in [0; 1] and not contained in (0; 1).

    4.3 Connected sets

    One property that distinguishes different topological spaces is the notion ofconnectedness. This is related (though not identical) with the question if apath that connects two elements of a topological space can be found.

    A set S of a topological space is connected, if for all non-empty, disjointsubsets A,B, such that AB = , AB = S, one set contains a limit pointof the other. Informally speaking, this means, there is no point betweenA and B that does not belong to S. (Though there are connected sets thatcannot be visualized like this)

    6

  • 4.3.1 Example

    If one cuts the interval [0; 1] into two sub-intervals at a point a, the resultare two sets of the form [0; a), [a; 1] or [0; a], (a; 1]. As seen in the previousexample, a is a boundary point of all four sets. Therefore, one of the setsalways contains the limit point of the other.

    4.4 Continuous functions

    Using the notion of open sets, continuous functions can be defined for arbi-trary topological spaces:

    Let (X,V ), (Y,W ) be two topological spaces. Let f : X Y be afunction. For any B Y , the preimage of B is f1(B) := {x X : f(x) B}.

    f is continuous iff f1(O) V for every open set O W .Note how the continuity of f depends on the way the open sets of X and

    Y are defined.

    4.4.1 Continuous functions and connected sets

    It can be proven that continuous functions map connected sets to connectedsets:

    Let f : X Y a continuous function between two topological spaces.Let S X be connected. Then f(S) is connected.

    Proof: Assume that f(S) is cut into non-empty, disjoint subsets A,B,such that A B = , A B = f(S). If f(S) is connected, either A or Bmust contain a limit point of the other.

    Consider the preimages:

    f1(A) = {x X : f(x) A}f1(B) = {x X : f(x) B}

    As A and B are disjoint and f can map any value only to either A or B,f1(A) and f1(B) must be non-empty and disjoint, too.

    As S f1(A) f1(B) and S is connected, either f1(A) or f1(B)must contain a limit point of the other.

    Assume that b f1(A) is a limit point of f1(B). According to thedefinition of limit points, this implies, that:6 O X, O open, such that b O, f1(B) O = (*).Now assume that f(b) is not a limit point of B.As b f1(A), it is implied that f(b) A, f(b) / B. Then there must

    exist some open set O Y , such that f(b) O, O B = .However, that would imply that f1(O)f1(B) = , that b f1(O)

    and that f1(O) is open since f is continuous.

    7

  • That would mean, that f1(O) is exactly the set O that cannot existaccording to (*), which is a contradiction.

    Therefore, O cannot exist either and f(b) must be a limit point of B.As f(b) A, f(S) = A B must be connected.

    4.5 Homeomorphisms

    To describe the properties of configuration spaces, it will be useful to intro-duce a way to compare different topological spaces with each other.

    The equivalence relation of homeomorphisms lets one categorize topo-logical spaces into equivalence classes. Spaces in the same equivalence classshare many properties and can in many ways be considered the same.

    Let f : X Y be a bijective function between topological spaces (X,V )and (Y,W ).

    If both f and f1 are continuous, f is called a homeomorphism and(X,V ) and (Y,W ) are called homeomorph to each other.

    4.5.1 Existence of homeomorphisms as equivalence relation

    Let = be a relation between two topological spaces, such that X = Y there exists a homeomorphism between X and Y .

    Then = is an equivalence relation:

    = is reflexive: The Id function is an homeomorphism that maps eachtopological space to itself.

    = is symmetric: Because of the bijectivity of f , if f is an homeomor-phism that maps X to Y , f1 is an homeomorphism that maps Y toX.

    = is transitive: Let f be an homeomorphism between X and Y andg be an homeomorphism between Y and Z. Because the chaining offunctions keeps both bijectivity and continuity, f g is a homeomor-phism between X and Z.

    4.5.2 Examples of homeomorphisms:

    Consider X = [0; 1] and Y = [1; 2], where the open sets are all openintervals, all half-open intervals around the endpoints and all unionsand finite intersections of them. Then X and Y are homeomorph.

    Proof: Consider f : X Y, f(x) := 3x 1.The open intervals (a; b) of X will be mapped (f(a); f(b)) in Y .

    Because 0 a < 1, there will be f(0) f(a) < f(1) 1 f(a)


Recommended