Title: Planar Arrangements of Conic Arcs and their Applications
1Planar Arrangements of Conic Arcs and their
Applications
2Planar Arrangements
Given a collection C of conic arcs (or segments
of conic curves) in the plane, the arrangement of
A(C) is the subdivision of the plane into
vertices, edges and faces induced by the arcs in
C.
3Talk Outline
- High-Level Filtering for Arrangements of Conic
ArcsHow to construct arrangements of conic arcs
robustly.
- Hybrid Motion Planning Coordinating two discs
moving among polygonal obstacles in the plane,
combining exact and probabilistic methods.
- Coordinating a Milling-Cutter Computing the
lower envelope of a collection of line segments
and hyperbolic arcs.
4High-Level Filtering for Arrangements of Conic
Arcs
5Conic Arcs
A bounded conic arc is defined by - its base
conic C rx2 sy2 txy ux vy w 0 -
its source ps , - its target pt .
- The end-points may be specified by the
intersections of C with two other conic curves. - A full ellipse is also considered a conic arc.
6Arrangement Vertices
End-points Given as input.
7Algebraic Numbers
A real number ? is algebraic if for some d there
exist d1 integers ad,,a0 such that ? is a root
of the polynomial p(x) adxd a1x a0
We say that ? has a degree d if for each
polynomial q(x) with integer coefficients such
that q(?)0, p(x) divides q(x).
8The Construction History
- Sub-arc (C, ps, pt)
- The underlying conic.
- Its degree.
- Facing up/down.
- Extra information for circular and hyperbolic
arcs.
- Vertex (x0, y0)
- Type (end-point, vertical tangency,
intersection). - The generating conic(s).
- The background polynomials ?p(x) and ?p(y)
such that ?p(x0) 0 and ?p(y0)0.
9Comparing Intersection Points
10Numerical Precision
According to Loos, let r1,...,rn are the roots of
the polynomial f(x) and s1,...,sm are the roots
of the polynomial g(x), where d is the maximal
degree of f(x) and g(x), and K is a bound on
their coefficients. Then if gcd(f,g) 1, the
following holds min ri sj gt K-d
In our case, since d 4 and K 48M5, then each
pair of vertex coordinates are either equal or at
least 48-4M-20 away from each other. We therefore
need just 2320log2M bits of precision.
11Diamond Operator vs. GCD
Given two polynomial roots of degree d where K
bounds their coefficients, we should use O (d3
logK) bits of precision to compare these roots
using the diamond operator. Using the GCD method
we may use integer arithmetic, where the largest
coefficient we may need to store is O (Sd logK)
bits long, where
The GCD method seems very efficient in practice,
despite the theoretical growth of the
coefficients.
12Experimental Results
13Hybrid Motion PlanningCoordinating Two Discs
Moving among Polygonal Obstacles in the Plane
- Shai Hirsch and
- Dan Halperin
- (WAFR 2002)
14Complete Solution for One Disc
15The Configuration Space
16Configurations for Two Discs
- Let D1 and D2 denote the two disc robots.
- Compute Cfree(1) and Cfree(2), the free
configuration for each robot (disregarding the
other robot).
- Let c1(1),, cm1(1) and c1(2),, cm2(2) be
the decomposition of Cfree(1) and Cfree(2) to
pseudo-discs.
- Let us denote Cijci(1)?cj(2), and Cfree
?i,jCi,j
- Denote Cfree- ?i,jCi,j (ci(1)?D1) ?
(cj(2)?D2) ?
17Hybrid Roadmap Construction
- Construct Cfree(1) and Cfree(2) exactly, and
compute the vertical decompositions c1(1),,
cm1(1) and c1(2),, cm2(2).
- In-cell connection For each cell Cijci(1)?cj(2)
construct its connectivity graph Gij using a
local planner.
- Inter-cell connection For each pair of adjacent
cells Cij and Ckl, connect connected components
of Gij and Gkl.
- Stitching For each pair Vi and Vj of connected
components of the initial roadmap G, try to merge
the two components into a single connected
component.
18Features of HyMP
- Reliance on exact computation wherever possible.
- The explicit representation of Cfree allows us
to provide disconnection proofs.
- Insensitivity to narrow passages (and sometimes
even tight passages).
19Experimental Results
20Coordinating a Milling CutterComputing the
Lower Envelope of Line Segments and Hyperbolic
Arcs
21Motivation
A milling cutter rotating in an environment of
polyhedral surfaces, and should be moved without
touching those surfaces.
22Exact Solution
- Select a plane that contains the symmetry axis of
the rotating cutter.
- Compute the lower envelope of the collection and
check whether it intersects with the cutter.