580 likes | 883 Views
Distance Trisector curve and Voronoi diagram with neutral zone. Takeshi Tokuyama (Tohoku U) joint work with Tetsuo Asano (JAIST) and Jiri Matousek (Charles U). Grand Challenge of NHC project. Throw right on Computational Barriers Identifying barriers (something looking impossible )
E N D
Distance Trisector curve and Voronoi diagram with neutral zone Takeshi Tokuyama (Tohoku U) joint work with Tetsuo Asano (JAIST) and Jiri Matousek (Charles U)
Grand Challenge of NHC project • Throw right on Computational Barriers • Identifying barriers (something looking impossible) • Breaking/proving/avoiding barriers • Making properties of barriers clearer • Well-known barriers in TCS • Computability • P vs NP, NP vs PSPACE etc • Approximation hardness, approximation ratio • Randomness (P vs PP, primarity checking, Yao’s minmax principle) • Lower bounds for online algorithms • Cryptographic barriers (Discrete log etc) • Hopefully, find some more new barriers, because they will help progress of TCS
Classical barriers in math history Let no one ignorant of Mathematics enter here. (plato) • Incomputable geometric/arithmetic problems • Compute diagonal length of a unit square • Find a cube of volume 2 • Dilemma of Pythagoreans • Draw a circle with the unit area • It is easier to square the circle than to get round a mathematician.August de Morgan • Draw regular n-gon • Trisect a given angle
Progress in math history God created the integers, all else is the work of man.( Leopold Kronecker ) • Necessity is the mother of invention. • Diagonal length computation • Cube with volume 2 • Unit area circle Transcendental number π • Draw regular n-gon • Trisect a given angle • Irrational numbers • Radicals “Solvability”of algebraic equations Complex numbers, Groups, Elliptic functions Inventing tools to measure what we cannot directly measure. Same in CS: NP-complete theory, Proof checking,….
Tool to resolve a small but curious barrier. Story of this talk • In a computational geometric problem , we find a simple and natural geometric tool named distance trisector curve. • A new transcendental curve?? • Some initial results have been obtained • Existence and uniqueness of the trisector curves • An algorithm to compute it. • Use of the trisector curves. • A new possibility in computational geometry • Relaxed “computability” of geometric problems.
Voronoi diagram • Subdivision of plane (space) into cells • S = {p1,p2,…pn} points in the plane • V(pi) = { x : d(x, pi) < d(x, pj) for all j ≠ i} • Voronoi cell: dominating region of pi • Great geometric structure with many applications • Mesh generation , Graphics, • Simulating economic/political equilibrium • Simulating biological cells / crystallization • Efficient algorithm : O( n log n) time • Many variants: VD of lines/discs/regions, higher dimension, non-Euclidean metric, power diagrams.
Voronoi diagram is easy • Drawn by using “perpendicular bisectors” • Anciently known how to draw the bisector • Tool to bisect an angle • Can be drawn by using rational arithmetic • It is trivial that a Voronoi diagram is in the arrangement of bisectors (size is polynomial) • Naïve polynomial time algorithm • Only need to speed up the computation • Known variants are also mathematically conventional
Motivation from nature • We often see beautiful patterns with “objects” and “neutral zone” in natural structures • Can we have a variation of Voronoi diagram to draw such a picture?
Voronoi diagram with neutral zone • Classical Voronoi diagram: Partition the plane (space) into domination regions of input points. • Idea: Partition the space (plane) into domination regions and a neutral zone • There may be many mathematical formulations • We adopt a natural formulation
Definition of N-Voronoi diagram • S = {p1,p2,…pn} points in the plane • NV(pi) = { x : d(x, pi) < d(x, y) for every y ∈NV(pj) for j ≠i} y x
Questions • Bisector ?? • Distance trisector curves: • Known or unknown? • As easy as angle trisection? Ruler, Compass, and red-ink (Archimedes)
Distance trisector • Different from Apollonius’s circle • Natural and simple definition (see next slide) • Surprisingly, seems to be a new curve 2 1 Apollonius’s circle
Distance Trisector Curves Equally-spaced curves CP and CQ: for any point p on CP, dist(p, P) = dist(p, CQ) and for any point q on CQ, dist(q, Q) = dist(q, CP). where dist(p, C) is the distance from p to a point on C that is closest to p. Q P Q P
Note: Drawing curves was not easy. Only possible after revealing some theoretical results y=x+1 y=-x+1 Q(-1,0) P(1,0)
Observation: Each point X on CP is the intersection of the normal line of CQ at its partner point X’ and the perpendicular bisector of X’P Corollary. If we exactly determine CP at a small neighbor of P, we can determine whole CP normal line to the curve CQ X bisector of segment X’P We have a system of differential equation X’ Q(-1,0) P(1,0)
Implication • No point beyond the tangent point A can be a partner point of a point of NV(P) A Indeed, it suffices to compute CP for x<5.65 tangent line from P to the curve CQ Q(-1,0) P(1,0)
Nice nature of the curve • Convex and smooth (revealed to be analytic) • Satisfies a system of differential equations • Specialists did not know how to solve it • It suffices to compute in the range [0, 5.65] • Important curves satisfy this • sin (x) [0, 2π], log x [1,10] • Problems: Existence, uniqueness, computation
Existence and uniqueness • P=(0,1), Q = (0,-1) • y=f1(x) is x-axis (bisector of PQ) • y = g1(x) :bisector parabola of P and x-axis • y=fj(x): bisector curve of P and y=-gj-1(x) • y=gj(x):bisector curve of P and y= -fj(x) Lemma. The trisecting curve CP must be above f j (x) and below gj(x)
y=gi(x) P = (0,1) y=fi(x) y= -fi(x) (0, -1) y= -gi-1(x)
Lemma: The series fj(x) and gj(x) converges to continuous functions F(x) and G(x),respectively Theorem (Existence and Uniqueness) . G(x) ≡ F(x), and y= F(x) gives the trisector curve CP y=G(x) y=F(x)
Computation of F(x) • Given a value of x >0 , compute F(x) to any precision (error is smaller than given ε) Theorem. We can compute F(x) to the accuracy εin O( log ((1+x) /ε)) time
t(x): x-value of the nearest point from (x, F(x)) P = (0,1) y=F(x) t2(x) t(x) x z y= -F(x) (0, -1)
Backward computation to have (x, F(x)) P = (0,1) y=F(x) t2(x) t(x) x z y= -F(x) (0, -1)
Idea for computing F(x) • If -t(x) is the x-value of the partner point, t(x) < βxfor a constant • We can compute the Taylor expansion of F(x) and t(x) around zero to any precision. • F(x) and t(x) are computable if x < h for a small h. • F(x) and x are computable from t(x), t(t(x)), F(t(x)), and F(t(t(x))). • Guess z = tk(x) < h, compute F(z) and F(t(z)), and recursively compute ti(x) for i=k, k-1, k-2, …, 0 • Determine correct value of z via binary search
Formulas to compute F(x) • x = Φ(t(x), t(t(x)),F(t(x)), F(t(t(x))) • F(x) = ψ(t(x), t(t(x)),F(t(x)), F(t(t(x))) • Φ(x,y,u,w) = x + y(x2+(1+u)2)/2Q(x,y,u,w) • ψ(x,y,u,w) = (2xyu +(1+u)(1+x2-u2)) /2Q(x,y,u,w) • Q(x,y,u,w) = (1+u)(1+v)-xy The above mentioned: STOC06,to appear
N-Voronoi diagram on many points Now we have trisector curves. Can we draw N-Voronoi diagram of more than two points by using them??
What happens if the third point is given Insertion of a new point
Basic properties • Boundary curve of NV(pi) is the bisector between pi and (the union of) boundary curves of other regions • Each region is convex and nonempty • It may happen that there is no unbounded region (different from an ordinary Voronoi diagram)
Voronoi edges • Definition: If p is a boundary point on NV(pi) and q is its nearest point among other region boundaries, we call q the partner point of p. • Definition: The boundary of NV(pi) is decomposed into curve segments each of which consists of points whose partner points are in a same region. The connected components are called Voronoi edges.
Combinatorial complexity • Theorem. Number of Voronoi edges is O(n) in an N-Voronoi diagram on n points. Proof: Rays towards nearest enemy’s-boundary do not cross each other (cheating a little) reduced to the linearity of number of edges in a planar graph +Davenport-Schinzel sequence argument.
Questions • N-Voronoi diagram always exists? • Yes • Unique for a given point set? • Yes • Efficient algorithm exist? • Yes, if we are given some oracles • Really efficient in practice? • No……
Existence Given a set of regions R1,R2,…Rn such that Rj contains pj, consider an operator F F(R1, R2, … Rn) = (Q1, Q2, … Qn ) where Qj = { x: d(x, pj) < d(x, y) for ∀y ∈ ∪ i ≠j Ri } Theorem. F has at least one fixed point From Schauder-Kakutani’s fixed point theorem Corollary. N-Voronoi diagram is given as a fixed point of F
Note: Fixed point theorem Brower(1910),Schauder(1930),Kakutani(1941) Z: Banach space, K: Compact convex subset of Z (nonempty) F: K K continuous map Then, F has a fixed point • Z: space of n-tupple of convex regions (R1,R2,..Rn) • We need to introduce norm, and define convexity etc… • Continuous dimensional space (Shauder-Kakutani’s version)
Uniquness • Fixed point theorem does not assure uniqueness. • Uniqueness is given in a constructive fashion • Crystallization algorithm: • Growing radius of disks • Analogous to the space-sweep algorithm for computing a (classical) Voronoi diagram as a lower envelope of parabolic cylinders.
Curves in a N-Vonoroi diagram Property 1: N-Voronoi diagram is a subset of an arrangement of curves in a curve family F • F consists of : • Distance trisectors of pairs of input points are in F. • Bisector curves of an input point and a curve (or point) C in F. • Intersection points of curves in F. Property 2: The number of applications of bisector operations is finite to obtain F
Analysis of crystallization algorithm • For planar case, the algorithm shows uniqueness of N-Voronoi diagram • Number of “structural changes” is O(n) • Terminates in finite steps if we can draw • bisector curve of a point and given point • distance trisector curve • Terminates in polynomial time if we assume that we can draw an “generalized” trisector curve