Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
On Soft Foundations for Geometric Computation
Chee Yap
Courant Institute, NYU
26th Fall Workshop on Computational GeometryOct 27-28, 2016
1 / 32
Overview
I. Introduction
II. Roots
III. Motion Planning
IV. Conclusion
2 / 32
Next...
I. Introduction
II. Roots
III. Motion planning
IV. Conclusion
[Start] [End]
3 / 32
I
I. Introduction
4 / 32
Trouble with Computational Models
Ancient Greek Geometry
5 / 32
Trouble with Computational Models
Ancient Greek Geometry
– Ruler and Compass Model
5 / 32
Trouble with Computational Models
Ancient Greek Geometry
– Ruler and Compass Model
Logic of Computing
5 / 32
Trouble with Computational Models
Ancient Greek Geometry
– Ruler and Compass Model
Logic of Computing
– Turing Machine Model (Church’s Thesis)
5 / 32
Trouble with Computational Models
Ancient Greek Geometry
– Ruler and Compass Model
Logic of Computing
– Turing Machine Model (Church’s Thesis)
Geometric Computing
5 / 32
Trouble with Computational Models
Ancient Greek Geometry
– Ruler and Compass Model
Logic of Computing
– Turing Machine Model (Church’s Thesis)
Geometric Computing
– Real RAM model
5 / 32
Trouble with Computational Models
Ancient Greek Geometry
– Ruler and Compass Model
Logic of Computing
– Turing Machine Model (Church’s Thesis)
Geometric Computing
– Real RAM model (not Church Equivalent!)
... the trouble begins
5 / 32
The Numerical Nonrobustness Phenomenon
The trouble according to Numerical Analysts
6 / 32
The Numerical Nonrobustness Phenomenon
The trouble according to Numerical Analysts
– “Pitfalls of Numerical F.P. Computation”
6 / 32
The Numerical Nonrobustness Phenomenon
The trouble according to Numerical Analysts
– “Pitfalls of Numerical F.P. Computation”
The trouble according to Computational Geometers
6 / 32
The Numerical Nonrobustness Phenomenon
The trouble according to Numerical Analysts
The trouble according to Computational Geometers
– (crash, loop, inconsistency, etc)
– Geometric/topological roots
– “Bugbear” [Sedgewick], “Unsolvable problem” [Forrest]
6 / 32
The Numerical Nonrobustness Phenomenon
The trouble according to Numerical Analysts
The trouble according to Computational Geometers
Computational Geometry attacks (1980-2000)
6 / 32
The Numerical Nonrobustness Phenomenon
The trouble according to Numerical Analysts
The trouble according to Computational Geometers
Computational Geometry attacks (1980-2000)
– Many approaches: E.g., what is a Line?
pixelSet [graphics], polyLine [Hobby,Yao],
fatLine [Guibas], consistency [Fortune,Hopcroft],
bounded equations [Suigahara]
6 / 32
The Numerical Nonrobustness Phenomenon
The trouble according to Numerical Analysts
The trouble according to Computational Geometers
Computational Geometry attacks (1980-2000)
... but what about Exact Computation?
6 / 32
Exact Geometric Computation (EGC)
The EGC prescription
7 / 32
Exact Geometric Computation (EGC)
The EGC prescription
– Ensure all branches are error-free Rx
(The “Take Home Message”)
– Be exact, but only where needed!
7 / 32
Exact Geometric Computation (EGC)
The EGC prescription
– Ensure all branches are error-free Rx
7 / 32
Exact Geometric Computation (EGC)
The EGC prescription
– Ensure all branches are error-free Rx
Most general/successful solution
– So numerical approximations are allowed
– suffices to have an EGC number type
– Libraries: Core Library, LEDA, CGAL
7 / 32
Exact Geometric Computation (EGC)
The EGC prescription
– Ensure all branches are error-free Rx
Most general/successful solution
... therein lies the seed of our next challenge
7 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
8 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
– E.g., transcendental functions (log,sin,exp, . . .)
– The Zero Problem (Numerical Halting Problem!)
8 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
EGC may be too inefficient
8 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
EGC may be too inefficient
– E.g., Euclidean shortest path is exponential inbit-complexity
8 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
EGC may be too inefficient
EGC requires full degeneracy analysis
8 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
EGC may be too inefficient
EGC requires full degeneracy analysis
– Vor diagram of polyhedral objects (Open Problem!)
8 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
EGC may be too inefficient
EGC requires full degeneracy analysis
Exact computation is unnecessary/inappropriate
8 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
EGC may be too inefficient
EGC requires full degeneracy analysis
Exact computation is unnecessary/inappropriate
– E.g., robot motion planning, Wireless problems
– No physical system is accurate to > 8 digits !
8 / 32
Barriers to EGC
EGC algorithms may not be Turing computable
EGC may be too inefficient
EGC requires full degeneracy analysis
Exact computation is unnecessary/inappropriate
...beyond EGC?
8 / 32
Towards Soft Alternative Models
...but which?
9 / 32
Towards Soft Alternative Models
...but which? – let us look at examples!
9 / 32
Towards Soft Alternative Models
...but which? – let us look at examples!
Subdivision Algorithms!!
A. Algebraic Problems – F(x) ∈ R[x] or C[x]
9 / 32
Towards Soft Alternative Models
...but which? – let us look at examples!
Subdivision Algorithms!!
A. Algebraic Problems – F(x) ∈ R[x] or C[x]
A.1 Root isolation and clustering
– [ISSAC’06,’09,’11,’12,’16, SNC’11, CiE’13]
A.2 Meshing (Isotopic approximation of surfaces)
– [ISSAC’08,SoCG’09,’12, SPM’12, ICMS’14]
9 / 32
Towards Soft Alternative Models
...but which? – let us look at examples!
Subdivision Algorithms!!
A. Algebraic Problems – F(x) ∈ R[x] or C[x]
B. Combinatorial Problems – polyhededral set Ω⊆ Rd
9 / 32
Towards Soft Alternative Models
...but which? – let us look at examples!
Subdivision Algorithms!!
A. Algebraic Problems – F(x) ∈ R[x] or C[x]
B. Combinatorial Problems – polyhededral set Ω⊆ Rd
B.1 Robot motion planning
– [SoCG’13, WAFR’14, FAW’15]
B.2 Voronoi diagrams
– [ISVD’13, SGP’16]
9 / 32
Towards Soft Alternative Models
...but which? – let us look at examples!
Subdivision Algorithms!!
A. Algebraic Problems – F(x) ∈ R[x] or C[x]
B. Combinatorial Problems – polyhededral set Ω⊆ Rd
WHAT TO LOOK OUT FOR:
– Avoiding the Zero Problem (What is this?)
– Replacing Algebraic Techniques by Numerical Ones
– Soft Concepts (What is this?) (i.e., numerical, but relative
to “hard” or Algebraic notions)
9 / 32
Next...
I. Introduction
II. Roots
III. Motion planning
IV. Conclusion
[Start] [End]
10 / 32
II
II. Roots
“The history of the zero recognition problem is somewhat confused bythe fact that many people do not recognize it as a problem at all.”
— DANIEL RICHARDSON (1996)
“Eventually, the topic [...of proving non-zeroness...] takes over thewhole subject [...of Transcendental Number Theory...]”
— DAVID MASSER (2000)
11 / 32
Introduction
Zero-dimensional geometry:
Fundamental Theorem of Algebra (FTA)
Every complex polynomial of degree n
has exactly n complex roots, counted with multiplicity
12 / 32
Introduction
Zero-dimensional geometry:
Fundamental Theorem of Algebra (FTA)
Every complex polynomial of degree n
has exactly n complex roots, counted with multiplicity
Real roots:
12 / 32
Introduction
Zero-dimensional geometry:
Fundamental Theorem of Algebra (FTA)
Every complex polynomial of degree n
has exactly n complex roots, counted with multiplicity
Complex roots:
12 / 32
Introduction
Numerical Analyst’s view:
– compute an ε-disc for each root
Computer Algebra’s view: (exact computation)
– Root Isolation: first compute disjoint discs
– Root Refinement: then make discs ε-small
12 / 32
Introduction
Numerical Analyst’s view:
– compute an ε-disc for each root
Computer Algebra’s view: (exact computation)
– Root Isolation: first compute disjoint discs
– Root Refinement: then make discs ε-small(focus)
12 / 32
Classical History of FTA
Root Finding
has roots (no pun intended) in antiquity (Babylonians)
Associated with most of the “pantheon” of mathematiciansI Descartes, Newton, d’Alembert, Euler, Lagrange,
I Laplace, Gauss, Fourier, Sturm, Weierstrass,
I Vincent, Obreshkorff, Ostrowski, Brouwer, Weyl, Henrici, ...
– Weierstrass (1891) (basis of Durand-Kerner-Aberth)
– Weyl (1924) (subdivision approach)
13 / 32
Modern History of FTA
Modern FTA research can be dated to 1981
14 / 32
Modern History of FTA
Modern FTA research can be dated to 1981
* Arnold Schonhage (1982):
FTA in Terms of Computational Complexity
– Unpublished
* Steve Smale (1981):
FTA and Complexity Theory
– Bulletin (N.S.) of the AMS.
14 / 32
Modern History of FTA
Modern FTA research can be dated to 1981
– Smale and Schonhage
Each paper initiated a line of research, active to this day!
14 / 32
Modern History of FTA
Modern FTA research can be dated to 1981
– Smale and Schonhage
Each paper initiated a line of research, active to this day!
Terminology:
– Benchmark Problem : isolate all roots of integer polynomial
– Near-Optimal Bound : O(n2L) for Benchmark problem
(where n=degree, L=coefficient bitsize)
– Global vs. Local root isolation
14 / 32
Modern History of FTA
Modern FTA research can be dated to 1981
– Smale and Schonhage
Each paper initiated a line of research, active to this day!
Terminology:
The Schonhage-Pan Near-Optimal Bound was known for 25 years
– But never implemented.
“Our algorithms are quite involved, ... implementation would require a
non-trivial work, incorporating numerous known implementation
techniques and tricks.” – [Pan 2002]
– Basically, we cannot implement a Real RAM algorithm
(like many algorithms of CG)
14 / 32
Modern History of FTA
So, WHAT is implemented in computer algebra systems?
– Subdivision algorithms! (Sturm, Descartes, Eval, ...)
– lagged behind the theoretical best bounds
– recent progress in complexity of subdivision
(tree-size & bit complexity)
14 / 32
EVAL for Real Roots
Algorithm Real Roots of f (x) in I = [a,b]
Start with Q = IWhile Q 6= /0
Remove J from QIf 0 /∈ f (J) discard JElif 0 /∈ f ′(J) output JElif bisect J and put into Q
15 / 32
EVAL for Real Roots
– I call this the EVAL algorithm
– Simple and easy to implement
– Applicable even for analytic f
– Catch: simple roots only (HINT: it is numerical)
15 / 32
EVAL for Real Roots
How good is it?
– Depends on how you implement the predicates!
Exclusion, C0(J) : 0 /∈ f (J)
Inclusion, C1(J) : 0 /∈ f ′(J)
– Remark: numerical heuristics might skip Inclusion test
(e.g., Yakoubsohn 2005)
15 / 32
EVAL for Real Roots
How good is it?
– Depends on how you implement the predicates!
Exclusion, C0(J) : 0 /∈ f (J)
Inclusion, C1(J) : 0 /∈ f ′(J)
– Remark: numerical heuristics might skip Inclusion test
(e.g., Yakoubsohn 2005)
THEOREM [Sharma-Y, ISSAC 2012]
If f (J) is implemented in “centered form” then
EVAL tree size is O(n(L + r + logn) for Benchmark Problem
15 / 32
EVAL for Real Roots
THEOREM [Sharma-Y, ISSAC 2012]
If f (J) is implemented in “centered form” then
EVAL tree size is O(n(L + r + logn) for Benchmark Problem
Optimal for L≥ n (matching Sturm!)
– Else, incomparable with [Burr-Krahmer 2012] or [Sagraloff-Y 2011]
– Analysis based on Continuous Amortization
TAKE AWAY: Numerical Methods may be surprisingly good if done right
15 / 32
EVAL for Real Roots
Bit complexity was tougher story:
– lagged behind by factor of O(n)
– breakthrough in Descartes method [Sagraloff 2012]
15 / 32
Near-Optimal Subdivision for Complex Roots
THEOREM [Ruben-Sagraloff-Sharma-Y, 2015]
There is a subdivision algorithm with near-optimal bit
complexity O(n2(L + n)) for Benchmark Problem.
– independent of Schonhage’s Circle Splitting method
– local method
– implementable (explicit error bounds)
16 / 32
Near-Optimal Subdivision for Complex Roots
SOFT INGREDIENTS:
16 / 32
Near-Optimal Subdivision for Complex Roots
SOFT INGREDIENTS:
Soft comparison E : F
Outcomes: E > F or E < F or 12 < |E/F |< 2
16 / 32
Near-Optimal Subdivision for Complex Roots
SOFT INGREDIENTS:
Soft comparison E : F
Pellet Test (1881)
Let ∆ = Disc(r ,m) and k = 0, . . . ,n.
Tk (∆) :∣∣∣fk (m)
∣∣∣rm > ∑i 6=k
∣∣∣fi(m)∣∣∣r i
implies #(∆) = k .
WHAT conclusion if the test fails?
16 / 32
Near-Optimal Subdivision for Complex Roots
SOFT INGREDIENTS:
Soft comparison E : F
Soft Converse to Pellet:
THEOREM [Ruben-Sagraloff-Sharma-Y]
If k = #(∆ = #(Kn4∆) then Tk (∆) holds
16 / 32
Near-Optimal Subdivision for Complex Roots
SOFT INGREDIENTS:
Soft comparison E : F
Soft Converse to Pellet:
THEOREM [Ruben-Sagraloff-Sharma-Y]
If k = #(∆ = #(Kn4∆) then Tk (∆) holds
– Tools: Graeffe and Newton iterations
– Newton-Bisection technique (Sagraloff-Abbot)
– Planned implementation
16 / 32
Payoffs of Soft Approach
Adaptive complexity bounds
based on local geometric parameters
instead of global synthetic parameters
17 / 32
Payoffs of Soft Approach
Beyond the Benchmark Problem
Analytic Roots [CiE 2013]
Polynomials in C[z] [ISSAC 2016]
Key Issue:
how to avoid the Zero Problem?
17 / 32
Payoffs of Soft Approach
The ε-Root Clustering Problem
Must output multiplicity per disc
This avoids the Zero problem,
but arbitrariness of clusters?
17 / 32
Payoffs of Soft Approach
On Natural Clusters
Natural clusters are disjoint or has inclusion relation
– at most 2n natural clusters, forming a tree!
– NOW: we can address analytic roots, bit-stream polynomials,etc
17 / 32
Next...
I. Introduction
II. Roots
III. Motion planning
IV. Conclusion
[Start] [End]
18 / 32
III
III. Motion planning
19 / 32
Motion Planning
Youtube video from SoCG’2016.
20 / 32
Motion Planning
Youtube video from SoCG’2016.
20 / 32
Introduction
Modern Robots
Sci-Fi robot (Karel Capek, 1921)
Industrial robot (1980s)
21 / 32
Introduction
Domestic robot (2000s):
21 / 32
Introduction
Fun robots (Drones – 2010s):
21 / 32
Introduction
Basic Motion Planning Problem :
How do you move from A to B, avoiding obstacles?
Assuming you have a map and know your location
21 / 32
Introduction
Basic Motion Planning Problem :
How do you move from A to B, avoiding obstacles?
Assuming you have a map and know your location
(safest)
(smoothest)
(fastest)
A B
Robot R0 is fixed; input is (A,B,map)
21 / 32
Introduction
Kinematics only! (a.k.a. “path planning”)
What we leave out:
Dynamics, non-holonomic constraints, optimality, SLAM
Why? Partly because of lack of softness
21 / 32
3 Approaches
3 Approaches to Path Planning
Basic Problem in Robotics for over 40 years
We mention 3 basic approaches:
22 / 32
3 Approaches
(I) Subdivision Approach
“A subdivision algorithm in configuration
space for findpath with rotation”
— Brooks and Lozano-Perez (8th IJCAI, 1983)
22 / 32
3 Approaches
(I) Subdivision Approach
(II) Exact Approach
“On the piano mover’s problem: II.
General techniques for computing topological
properties of real algebraic manifolds”
— Schwartz and Sharir (Advances Appl.Math., 1983)
22 / 32
3 Approaches
(I) Subdivision Approach
(II) Exact Approach
(III) Sampling Approach (PRM)
“Probabilistic roadmaps for path planning in
high-dimensional configuration spaces”
— Kavraki, Svestka, Latombe, and Overmars
(IEEE Trans. Robotics and Automation, 1996)
22 / 32
3 Approaches
State-of-Art today (challenges):
(I) Subdivision ApproachI still popular
I Cannot scale beyond medium DOF’s (4 or 5 DOF’s)
(II) Exact ApproachI connectivity of semi-algebraic sets
I Not practical beyond 3DOF
(III) Sampling Approach (PRM)I dominated the field in the last 2 decades
I Very weak guarantees
I Grapples with the narrow passage problem
22 / 32
3 Approaches
Our goal:
reconsider the foundations for subdivision method
22 / 32
Subdivision
Subdivision Approach
What do we subdivide?
Configuration space Cspace = Cspace(R0)
E.g.,
Cspace = R2 (Disc)
Cspace = SE(3) = R3×SO(2) (Rigid planar robot)
Cspace = R3×SO(3) (Rigid spatial robot)
Cspace = R2×T 2 (2-link robot)
23 / 32
Subdivision
Classify every box B ⊆ Cspace as
FREE (GREEN),
STUCK (RED),
MIXED (YELLOW),
ε-small (GREY).
What is B when Cspace is non-Euclidean?
23 / 32
Subdivision
Classify every box B ⊆ Cspace as
FREE (GREEN),
STUCK (RED),
MIXED (YELLOW),
ε-small (GREY).
What is B when Cspace is non-Euclidean?
Youtube video from SoCG’2016.
23 / 32
Resolution Exactness
3 Notions of Correctness:
Exact Approach:
(Path) If there is a path, must output one
(NoPath) If there is no path, must output NO-PATH
24 / 32
Resolution Exactness
3 Notions of Correctness:
Exact Approach:
Subdivision Approach: “Resolution Complete”
(εPath) If there is a path,
must return one if resolution ε is fine enough
24 / 32
Resolution Exactness
3 Notions of Correctness:
Exact Approach:
Subdivision Approach:
Sampling Approach: “Probabilistic Complete”
(PPath) If there is a path,
must “probably” return one if enough samples N are taken
24 / 32
Resolution Exactness
What is wrong with Exactness?
Exactness does not make sense for roboticsI Sensors, environments, actuators, robot dimensions are all approximate
I Physical constants are known to 8 digits
Zero problem, efficiency, degeneracy
Non-adaptive
24 / 32
Resolution Exactness
What is wrong with Resolution/Probabilistic Completeness?
They are silent about the “NoPath” case!
This leads to a Halting Problem
disguised as the Narrow Passage Problem
(the central problem of Sampling Approach for 20 years)
24 / 32
Resolution Exactness
Given a resolution parameter, ε > 0.
How to use it?
Conventional answer:
(εPath) If there is a path of clearance ε ,
must return one
(εNoPath) If there is no path of clearance ε ,
must return NO-PATH
No improvement over exact approach!
“exact planning with ε-fattened robot or obstacles”
“No soft enough”
24 / 32
Resolution Exactness
Our solution [Wang-Chang-Y, SoCG’2013]:
a planner is resolution-exact
if it has a constant K > 1 such that
(εPath) If there is a path of clearance K ε ,
will return one
(εNoPath) If there is no path of clearance ε/K ,
will return NO-PATH
24 / 32
Resolution Exactness
What does the output tell us?
Contra-positive view:
If planner returns NO-PATH,
then the optimal clearance is < K ε
If planner returns a path,
then the optimal clearance is > ε/K
Indeterminacy (!!) when optimal clearance lies in gap (ε/K ,K ε)
Big Payoff: we escaped the Zero Problem
24 / 32
Searching
Subdivision Search
How to exploit resolution-exactness?
Subdivision (of course)!
25 / 32
Searching
Soft Subdivision Search (SSS):
While Q is non-empty:
if (Find(Box(α)) = Find(Box(β )) return PATH.
B← Q.getNext()
Expand(B) into children
Classify new boxes as FREE, STUCK, MIXED.
FREE-boxes are put into a union-find
structure, and unioned with neighbors
MIXED-boxes are put in Qε-small boxes discarded
Return NO-PATH
25 / 32
Searching
Plug-and-play Framework:
3 data structures
Subdivision tree
Priority Queue Q
Union-Find Data Structure D
3 subroutines
Q.getNext()
Expand(B)
Classify(B)
25 / 32
Softness
Subdivision Search + Soft Predicates
The classification C(B) could be done exactly
In fact, all authors seems to assume this!
This does not exploit the full power of subdivision
The new ingredient is... softness
26 / 32
Softness
Exact classification: C(B) ∈ FREE,STUCK,MIXED:
Soft Classification: C(B) ∈ FREE,STUCK,MIXED:
(1) Conservative
C(B) 6= MIXED implies C(B) = C(B)
(2) Convergent
p = limi→∞ Bi implies C(p) = limi→∞ C(B)
Call C a soft version of C.
26 / 32
Softness
Compared to “PRM Framework”:
C(B) ≡ Collision Detector
Adjacency ≡ Connect(u,v)
26 / 32
Softness
Power of SSS (shared with PRM, not Exact Approach):
– Flexible (plug-n-play subroutines)
– Easy to extend/generalize (fattened robot/obstacles)
– Adaptive complexity (cf. exact methods)
– One basic algorithmic framework
(cf. Machine Learning “field with ONE algorithm”)
26 / 32
Softness
Design of Soft Predicates
Can be implemented using only numerical approximations
Our technique is based on feature sets
LaValle calls it
“opening up the blackbox of collision detection”
26 / 32
Softness
Search Strategy
– Has no impact on correctness for us
– In PRM, all the effort is done here
Split Strategy
– T/R Splitting
– Critical for the success of our 2-Link Robot
26 / 32
Subdivision in SO(3)
Subdivision in SO(3)
ISSUE : How to do subdivision in non-Euclidean Space?
IDEA : borrow idea of charts from differential geometry
Consider SO(3) or SO3
3×3 real orthogonal matrices with determinant 1
27 / 32
Subdivision in SO(3)
Can view SO3 as unit quaternions
q = (a,b,c,d) = a + ib + jc + kd
where
i2 = j2 = k2 = ijk =−1
Unit means N(q) := a2 + b2 + c2 + d1 = 1
27 / 32
Subdivision in SO(3)
The 3-Sphere S3 ⊆ R4
Thus S3/∼ is a model of SO3
where q ∼−q
Consider the 4-cube I4 ⊆ R4 where
where I = [−1,1] W
O
Y
ZX
27 / 32
Subdivision in SO(3)
ZX
W
(a) Cw
O
Y
O
Y
ZX
W
O
Y
ZX
W
O
Y
Z
W
X
(c) Cz (d) Cy
(b) Cx
The boundary ∂ I4
is composed of eight 3-cubes
27 / 32
Subdivision in SO(3)
Represent SO3 as the union of four 3-cubes:
Cw = cube defined by corners O,X ,Y ,Z ,−
Cx = cube defined by corners O,−,Y ,Z ,W
Cy = cube defined by corners O,X ,−,Z ,W
Cz = cube defined by corners O,X ,Y ,−,W
Let H3 := Cw ∪Cx ∪Cy ∪Cz be the cubic hemisphererepresentation of SO3, with suitable identifications
27 / 32
Subdivision in SO(3)
Use language of chart/atlas of differential geometry:
Each Ci ⊆ H3 has a chart
µi : Ci → SO(3)
where µi(q) = q/‖q‖.
The set µi : i = w ,x ,y ,z is a subdivision atlas of SO(3)
The transition map between these charts are trivial.
Get global homeomorphism µ : H3→ SO(3) afteridentifications.
UPSHOT: can now do subdivision on the domain of each chart µi .
27 / 32
SSS theory
What Makes SSS Work? SSS Theory
The trick in axiomatization is not be too general
(to avoid general nonsense),
but enough to capture useful applications with interestingproperties.
28 / 32
SSS theory
The Abstract View:
Replace Cspace by a metric space (X ,dX )
Replace Cfree by an open subset Y ⊆ X .
We write X = XT ×XR
where XT is translational, Euclidean
XR is rotational, non-Euclidean, compact
28 / 32
SSS theory
Obstacles live in physical space Rk (k = 2,3)
ISSUE: relate dX (·, ·) to the separation in Rk
Footprint function : Fprint : Cspace→ 2Rk
where Fprint(γ) = physical space occupied by the robot
Fix the obstacle set Ω⊆ Rk .
Clearance function : C` : Cspace→ R≥0
is defined as
Sep(Fprint(γ),Ω).
28 / 32
SSS theory
Subdivision in X :
test cells : full-dimensional compact convex polytopes in Rd
Let X be a set of test cells,
and Expand(B) : X → 2 X return a (nondeterministic)subdivision of B.
E.g., X is the set of simplices,
and Expand(B) returns a bisection at some edge of B.
28 / 32
SSS theory
Cover XR by a subdivision atlas , µ1, . . . ,µt
µi : Bi → Xi (homeomorphism)
X1, . . . ,Xt is a subdivision of XR
Atlas is good if it has a chart constant C0 > 0
if (∀q,q′ ∈ Bi )
1/C0 ≤ dX (µ(q),µ(q′))‖q−q′‖ ≤ C0
28 / 32
SSS theory
So far: no discussion of rate of convergence of C(B)
We need it for “resolution exactness”
Define: C(B) is σ - effective (σ > 1) if
C(B) = FREE implies C(B/σ) = FREE.
28 / 32
SSS theory
THEOREM: SSS is resolution-exact under these five axioms:
I (A0: softness) C is a σ -effective soft version of CI (A1: expansion) There is D0 > 2 such that Expand returns a
subdivision of size ≤ D0, each cell with at most D0 vertices andratio `(B)/w(B)≤ D0.
I (A2: Lipschitz) There is L0 > 0 such that for all γ,γ ′ ∈ Y ,|C`(γ)−C`(γ ′)|< L0dX (γ,γ ′).
I (A3: Good Atlas) The subdivision atlas has an atlas constantC0 ≥ 1.
I (A4: Translational Cell) There is a constant K0 > 0 such that ifB ∈ X is free, then the inner center c0 = c0(B) has clearanceC`(c0)≥ K0r0(B).
28 / 32
SSS theory
Remarks:
Constants in these axioms:
σ ,D0,C0,L0,K0.
The resolution-exact constant is
K := C0D0ε(1 + σ)L0.
Proof is quite involved because of axiom (A4).
28 / 32
Next...
I. Introduction
II. Roots
III. Motion planning
IV. Conclusion
[Start] [End]
29 / 32
IV
IV. Conclusion
30 / 32
Conclusion
Recap:
– we wanted an alternative to Real RAM
– plan was to look at concrete examples
i.e., Root Isolation and Motion Planning
“Saw that soft solutions are superior to hard ones”
31 / 32
Conclusion
Recap:
Recall:
A. Algebraic Problems – F(x) ∈ R[x] or C[x]
A.1 Root isolation and clustering
– [ISSAC’06,’09,’11,’12,’16, SNC’11, CiE’13]
A.2 Meshing (Isotopic approximation of surfaces)
– [ISSAC’08,SoCG’09,’12, SPM’12, ICMS’14]
31 / 32
Conclusion
Recap:
Recall:
A. Algebraic Problems
B. Combinatorial Problems – polyhededral set Ω⊆ Rd
B.1 Robot motion planning
– [SoCG’13, WAFR’14, FAW’15]
B.2 Voronoi diagrams
– [ISVD’13, SGP’16]
31 / 32
Conclusion
Recap:
Recall:
A. Algebraic Problems
B. Combinatorial Problems
Upshot:
– main algorithmic paradigm is subdivision/iteration
– what emerges is a numerical computation model
Quote from Nick Trefethan in ICMS 2014...
31 / 32
Conclusion
Recap:
Recall:
Upshot:
Outlook:
– Scope of computational geometry vastly broadened
– Some unsolvable problems is now in play
– Produces implementable and practical algorithms
– New algorithms for old CG problems
– Numerical CG is wide open (esp. complexity analysis)
31 / 32
Thanks for Listening!
“Algebra is generous,she often gives more than is asked of her.”
— JEAN LE ROND D’ALEMBERT (1717-83)
“To Generalize is to be an Idiot. To Particularize is the AloneDistinction of Merit – General Knowledges are those Knowledges that
Idiots possess.”
— William Blake (1757 – 1827)
Annotations to Sir Joshua Reynolds’s Discourses, pp. xvii – xcviii
32 / 32