+ All Categories
Home > Documents > In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce...

In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce...

Date post: 09-Sep-2020
Category:
Upload: others
View: 3 times
Download: 0 times
Share this document with a friend
182
Research Collection Doctoral Thesis Approximation schemes for geometric problems Author(s): Remy, Jan Magnus Publication Date: 2007 Permanent Link: https://doi.org/10.3929/ethz-a-005397999 Rights / License: In Copyright - Non-Commercial Use Permitted This page was generated automatically upon download from the ETH Zurich Research Collection . For more information please consult the Terms of use . ETH Library
Transcript
Page 1: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Research Collection

Doctoral Thesis

Approximation schemes for geometric problems

Author(s): Remy, Jan Magnus

Publication Date: 2007

Permanent Link: https://doi.org/10.3929/ethz-a-005397999

Rights / License: In Copyright - Non-Commercial Use Permitted

This page was generated automatically upon download from the ETH Zurich Research Collection. For moreinformation please consult the Terms of use.

ETH Library

Page 2: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Diss. ETH No. 17296

Approximation Schemes for

Geometric Problems

A dissertation submitted to the

ETH ZÜRICH

for the degree of

Doktor der Wissenschaften

presented by

Jan Magnus Remy

Diplom-Informatiker, Technische Universität München

born 01.12.1977

citizen of Germany

accepted on the recommendation of

Prof. Dr. Angelika Steger, ETH Zürich (examiner)

Prof. Satish Rao, UC Berkeley (co-examiner)

Prof. Subhash Suri, UC Santa Barbara (co-examiner)

2007

Page 3: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Se/te

ß/ankLeer

Page 4: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Seite Leer /Blank leaf

Page 5: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Seite Leer /

Blank leaf

Page 6: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

V

Abstract

This thesis is devoted to geometric optimization problems of the fol¬

lowing kind: given a sot of points P C Md, we wish to compute a

certain straight-line graph on P with minimum length, such as a short¬

est Steiner tree, a salesman tour or a triangulation. As most of these

problems are A/P-hard and many of them even in the strong sense,

approximation algorithms have attracted considerable attention. One

important breakthrough was made in 1996 when Arora [10, 11] and

Mitchell [93, 94] independently introduced a polynomial time approxi¬

mation scheme (PTAS) for several A/'P-hard geometric problems, includ¬

ing the traveling salesman problem and the Steiner tree problem.

Arora's technique applies to a wide class of problems for which the so-

called Patching Lemma holds. This lemma essentially states that one

can reduce the number of crossings of some solution with a given line

segment without increasing the cost of the solution much. However,

there is a number of popular geometric problems, where it seems unclear

whether a result similar to the Patching Lemma is true. For example,this is the case for ä;-Median, Minimum Weight Triangulation,

Minimum Weight Steiner Triangulation or Bounded-Degree

Minimum Spanning Tree. Nevertheless, for some of these problems

approximation schemes were recently obtained using different methods.

For instance, it is known that a PTAS for ä:-Median [14, 82] and a

quasi-polynomial time approximation scheme (QPTAS) for Bounded-

Degree Minimum Spanning Tree [13] exists. In this thesis we studythe problems listed below. They also seem to resist Arora's technique.

Minimum Weight Triangulation. The Minimum Weicïht Triangula¬

tion problem is to find a triangulation of minimum length for a given

set of points in the Euclidean plane. It was one of the few longstanding

open challenges from the famous list of twelve problems with unknown

complexity status, published by Garey and Johnson [56] in 1979. Very

recently the problem was shown to be AfV-hard by Mulzer and Rote

[99]. In this thesis we present a QPTAS for Minimum Weight Trian¬

gulation.

Page 7: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

VI

Node-weighted Sleiner Trees. Let P denote a set of points in ftfd, and

consider the following variant of the geometric Steiner tree problem: we

pay a penalty of r*s units for every Steiner point we use and we are

charged -k{u) units if the point u P is not included in the tree. The

goal is to minimize the total length of the tree including the penalties.

In dimension 2 we introduce a PTAS for the problem. Moreover, for

arbitrary fixed dimension our techniques still yield a QPTAS.

Vehicle Routing with Allocation. The Vehicle-Routing with Allo¬

cation problem is a generalization of TSP. We do not require that all

points lie on the salesman tour. However, points that lie not on the tour

are allocated, i.e., they are directly connected to the nearest tour point

paying a higher (per-unit) cost. More formally, the input is a set of points

P in &d along with functions a : P —» [0, oo) and ß : P —> [1, oo). A so¬

lution is a subset TCP and a salesman tour tt through T, and we wish

to minimize the total length of the tour including all allocation costs.

The allocation cost for a single point p G P \ T is a(p) + ß(p) d{p, q),where q e T is the nearest point on the tour. We give a PTAS with

complexity O (n\ogd+3nj for this problem. For the Steiner variant of

Vehicle-Routing with Allocation we introduce a PTAS with com¬

plexity 0(nlog^(d'e) n), where £(d,e) = ö{Vd,/e)d~l.

Page 8: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

vu

Résumé

Cette thèse de doctorat étudie des problèmes d'optimisation géométriquede la façon suivante: étant donné un ensemble des points P C -_^d, nous

voulons construire un arbre de Steiner, un cycle pour un voyageur de

commerce, une triangulation ou une autre structure avec une longueur

(ou un poids) minimal. La plupart de ces problèmes sont J\fV~difficiles,et donc nous nous intéressons aux algorithmes d'approximation. En fait,il y a beaucoup de résultats sur des algorithmes d'approximation pour

tels problèmes géométriques. Un progrès important a été fait en 1996

quand Arora [10, 11] et Mitchell [93, 94] ont présenté indépendammentun polynomial time approximation scheme (PTAS) pour les variantes

géométriques du problème du voyageur de commerce, du problème de

l'arbre de Steiner et d'autres problèmes qui sont A^-difficiles.

La technique d'Arora est applicable à bien de problèmes, à condition que

nous puissions prouver un lemine correspondant au Patching Lemma. Ce

lemme affirme essentiellement qu'on peut réduire le nombre des pointsd'intersection d'une solution avec un segment d'une droite sans beau¬

coup hausser le coût de la solution. Mais il y a beaucoup de problèmes

géométriques pour lesquels on ne peut pas certainement dire si un ré¬

sultat correspondant au Patching Lemma soit vrai.

C'est le cas pour les problèmes ^-Median, Minimum Weight Trian¬

gulation, Minimum Wright Steiner Triangulation, Bounded-

Degree Minimum Spanning Tree et d'autres problèmes. Néanmoins,

pour un petit nombre de ces problèmes il y a des approximation schemes,utilisant des méthodes différentes. Ainsi, nous avons un PTAS pour k-

Median [14, 82] et un quasi-polynomial time approximation scheme

(QPTAS) pour Bounded-Degree Minimum Spanning Tree [13].Cette thèse étudie les problèmes suivants qui semblent de s'opposer à

la technique d'Arora.

Minimum Weight Triangulation. Le problème Minimum Weight Tri¬

angulation, c'est de construire une triangulation avec un poids mini¬

mal d'un ensemble des points dans le plan. Ce problème est apparu sur

la liste des douze problèmes avec une complexité incertaine publiée en

Page 9: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

VUl

1979 par Garey et Johnson [56], et il restait irrésolu pour longtemps.Dernièrement Mulzer et Rote [99] ont prouvé que Minimum Weight

Triangulation est AA'P-diflicilo. Ici, nous introduisons un QPTAS

pour Minimum Weight Triangulation.

Node-weighted Steiner Trees. Soit P C ^fd un ensemble des points. Nous

étudions la variante suivante du problème de l'arbre de Steiner: on doit

payer une pénalisation de ti(u) unités si le point u n'est pas inclus dans

l'arbre et chaque point Steiner de l'arbre coûte c$ unités. On souhaite

de construire un arbre avec un poids et une pénalisation minimal. Cette

thèse constitue un PTAS pour ce problème dans le plan. Dans la dimen¬

sion fixée notre technique génère encore un QPTAS.

Vehicle Routing with Allocation. Le problème Vehicle-Routtng with

Allocation est une généralisation du problème du voyageur de com¬

merce. Néanmoins nous n'exigeons pas que tous les points soient inclus

dans le cycle. Au lieu de cela, nous devons joindre les points non-inclus

au prochain point du cycle. Plus précisément, l'input est un ensemble

des points P C Md et des fonctions a : P —> [0, oo) et ß : P —> [1, oo).Une solution est un sous-ensemble T C P avec un cycle ix sur T, et

on minimise le poids du cycle et le coût d'allocation totale. Le coût

d'allocation pour un point p G P\T est a(p) + ß(p) d(p,q), étant

q G T le point le plus proche du cycle. A la suite, nous allons décrire

un PTAS avec la complexité O ( n log" n 1 pour ce problème. De plus,

cette thèse constitue un PTAS avec la complexité ö(nlog^ ,£' n), étant

£(d,e) — OiVd/ey1'1, pour la variante du Vehicle-Routing with

Allocation où la solution peut contenir des points Steiner.

Page 10: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

IX

Acknowledgments

Most notably, I am much obligated to my supervisor Angelika Steger for

giving me the opportunity to join her group. Working with her was an

impressive experience, and particularly she always had valuable advice

whenever I needed some.

The research I did with my collaborative colleagues Stefanie Gerke, Reto

Spöhel, Angelika Steger, Andreas Weißl (all at ETH Zürich), Alexander

Souza (University of Freiburg), Stefan Canzar (LORIA), and Felix Fis¬

cher (University of Munich) was a real pleasure. I owe them hours of

inspiring and fruitful discussions.

I am grateful and proud that with Satish Rao (UC Berkeley) and Sub-

hash Suri (UC Santa Barbara) two leading experts in this field agreed

to co-examine my thesis.

The familiar atmosphere in Angelika's group at ETH made many thingsmuch easier, and I wish to thank my colleagues Nicla Bernasconi, Florian

Jug, Julian Lorenz, Martin Marciniszyn, Konstantinos Panagiotou, and

Justus Schwartz as well as the former group members Joshua Cooper

and Manuel Huber not only for their valuable support but also for their

great company. For all kinds of administrative problems, I could alwayscount on the capable advice of Beate Bernhard, Hans Dubach, Barbara

Heller, and Floris Tschurr. Last but no least, I want to thank Klaus

Holzapfel, my room mate at TU Munich, for supporting me during the

first months as a Ph.D. student.

Finally, I am deeply grateful to my family and Judith for their love and

invaluable support they gave me during the last years.

Zürich, February 2007

Jan Remy

Page 11: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Seite Leer /

Blank leaf

Page 12: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Contents

Chapter 1. Introduction 1

Chapter 2. Geometric Optimization Problems 9

2.1. Geometric Preliminaries and Notation 9

2.2. Models of Computation 10

2.3. Geometric and Combinatorial Optimization 12

2.4. A Tour d'Horizon 13

Chapter 3. Minimum Weight Triangulation 23

3.1. Concepts and Algorithmic Strategy 25

3.2. Preliminaries 27

3.3. The Approximation Scheme 32

3.4. Smooth Hulls 36

3.5. The Smoothing Lemma 60

3.6. On the Choice of Q.0 76

Chapter 4. Node-Weighted Steiner Trees 83

4.1. Outline of the Algorithm 85

4.2. Preliminaries 87

4.3. (s, £)-Maps and Standardized Solutions 91

4.4. The Approximation Scheme 106

4.5. Related Problems 113

Chapter 5. Vehicle Routing with Allocation 115

5.1. Concepts and Outline 117

5.2. Perturbation 118

5.3. Zoom Trees and Portal-Respecting Allocations 119

5.4. Euclidean Spanners and VRAP 132

5.5. An Ö (n log°n)-time Approximation Scheme 137

5.6. Steiner VRAP 147

5.7. Higher Dimensions and Derandomization 154

XI

Page 13: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

xii Contents

Chapter 6. Conclusions 157

Notation 159

Bibliography 161

Curriculum Vitae 169

Page 14: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

CHAPTER 1

Introduction

This thesis is devoted to optimization problems that involve discrete

geometry. Both the input and the solution of such problems are finite

sets of geometric objects like points, lines or regions, but it is not requiredthat the objective function is rational or even integral1. For the sake of

brevity, we refer to such problems as geometric optimization problems,

implicitly presuming their discrete character. In this thesis we introduce

quasi-polynomial and polynomial time approximation schemes for three

such problems.

Geometric optimization problems often have direct applications, as in

practice costs are usually more or less proportional to geometric mea¬

sures, such as distances or areas. One of the most important problemsin this field is nowadays known as Steiner 's problem. Its roots go back

back to the 17th century, when Fermât asked for the shortest way to

connect three points in the Euclidean plane, say x, y and z. Fermât

mentioned this problem in a letter to Galileo's secretary Torricelli who

on his part solved the problem: if none of the angles Zxyz, Zzxy, and

Zyzx is more than 120° then the best way to connect x, y and z induces

in a third point p, called Torricelli point, which is the unique point with

the property that the angle between any two of the line segments xp, yp

and zp is 120°. Otherwise, if some angle is more than 120° the shortest

connection does not include such an artificial point.

A natural question is the generalization of this problem to an arbitrarynumber of points. Indeed, on March the 19th, 1836 the German as¬

tronomer Schumacher wrote to Gauss about difficulties he had experi¬enced in trying to extend Format's problem to four points. He wished to

find a fifth point such that the sum of the distances to these four points is

Indeed, many objective functions involve Euclidean distances and are thus in generaltranscendental.

I

Page 15: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

2 Chapter 1. Introduction

minimum. In his response [57] Gauss pointed out Schmacher's mistakes

but also argued that one should rather look at a different problem:

Ist bei einem Viereck nicht von der stricte« mathematischen

Aufgabe, wie sie oben angesprochen ist, sondern von dem

kürzesten Verbindungssystem die Rede, so werden mehrere

einzelne Fälle von einander unterschieden werden müssen, und

es bildet sich so eine recht interessante mathematische Auf¬

gabe, die mir nicht fremd ist, vielmehr habe ich bei Gelegen¬heit einer Eisenbahnverbindung zwischen Harburg, Bremen,

Hannover, Braunschweig sie in Erwägung genommen [...]

In short, Gauss writes that he has already thought about the short¬

est system connecting the four corners of a quadrilateral, and that he

was motivated by the design of a railway connecting the German cities

Harburg2, Bremen, Hannover and Braunschweig (an early thought of

operations research). Gauss sketched the shortest networks for three

different point configurations in the letter to Schumacher. Figure 1.1

depicts the original sketches of Gauss [57]. In the rightmost figure the

network uses the line segment cd; this was also pointed out by Gauss.

Ftgure 1.1. The sketches of Gauss illustrating the

shortest network connecting the four corners of a quadri¬lateral.

The problem of Fermât has been then misattributed3 to the Swiss math¬

ematician Jakob Steiner (1796-1863) in the book What is mathematics?

Today part of Hamburg.' Jakob Steiner gave a lecture on Fermat's problem in 1837 and wrote an article for

Crella's journal discussing this problem amongst others. However, it is not docu¬

mented that he studied Fermat's problem more intensively [115]. As several other

people considered this problem, it is unclear why Courant and Robins attributed it

just to Steiner.

Page 16: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3

by Gourant and Robins [31, Chapter VII, §5]. For this reason, a more

general form of the problem proposed by Gauss became quite popular

as Steiner 's problem.

Problem 1.1 (Steiner's problem). Given a finite set P of points, what

is the shortest network connecting P?

Note that it means no loss of generality if we require that the network

is cycle-free, since the shortest network connecting a set of points is

always a tree. A tree connecting a set of points is called a Steiner tree

and Problem 1.1 is also known as Minimum Steiner Tree. An alert

reader might have noticed that we posed Problem 1.1 not precisely, as

we did not specify from which space we choose the point set. Indeed

the character and the difficulty of this problem depend on the dimension

and on the metric we consider. For the sake of exposition we assume for

the moment that the input points are in the Euclidean plane.

It is easy to see that Steiner's problem with three points is indeed equiva¬

lent to Fermat's problem. However, as we have learned from the conver¬

sation of Schumacher and Gauss, Steiner's problem in full generality has

a quite different character. An important difference between Fermat's

problem and Problem 1.1 shows up, when we regard both problems as

algorithmic questions. Although it is easy to construct the Torricelli

point for a set of three points, it is not obvious how to solve Steiner's

problem, since it is not clear at all how we can identify the artificial

points, henceforth called Steiner points.

Indeed, on a first sight Steiner's problem is not even a combinatorial

optimization problem, as the space of solutions is not finite. It was

Mclzak [92] who first gave an (finite) algorithm using amongst others

the following observations: i) Every point has degree at most 3, ii)

every Steiner point has degree 3, and in) the line segments incident to

Steiner point meet at an angle of 120°. Those observations made it

possible to formulate Steiner's problem as a combinatorial optimization

problem, as it basically remains to guess the topology of the optimum

tree. Unfortunately, Melzak's algorithm is not efficient, as the number of

arithmetic operations we need grows exponentially with the number of

points. Until today no polynomial time algorithm for Steiner's problemis known and the hope to find such an algorithm was diminished in

1977, when Garey, Graham and Johnson [55] proved that the problemis indeed A/'P-hard.

Page 17: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4 Chapter I. Introduction

This gives rise to the question, whether if is possible to find approximate

solutions in polynomial time. That is, we wish to find a network of lengthat most, say (1 + e) times the length of the optimal Steiner tree for some

e > 0. Garey et al. [55] showed that Steiner's problem is A^'P-hard in the

strong sense; so if we assume that V ^ MP, then Steiner's problem does

not admit & fully-polynomial lime approximation scheme (FPTAS), that

is, an approximation algorithm with time complexity poly(?i, i/e)- Thus

the best we can hope for is a polynomial time approximation schemes

(PTAS), that is, an algorithm with time complexity poly(77) for fixed e.

A seminal result of Arora [11] and independently Mitchell [94] is that

Steiner's problem indeed admits a PTAS.

Steiner's problem is just one example of many similar problems, and in

the literature a number of other geometric optimization problems have

been studied. Some can be solved in polynomial time but most of them

are AT^-hard, often even in the strong sense. In Chapter 2 of this thesis

we survey classical and recent results on selected geometric problems,while the main part of this work introduces approximation schemes for

the three problems below.

Minimum Weight Triangulation. Let P C S%2 denote a set of pointsin the Euclidean plane and let \P\ = n. A triangulation T of P is a

collection of non-intersecting edges or straight-line segments, dividingthe interior of the convex hull of P into triangular regions. The lengthor weight of a triangulation T is defined as

£{T)= Yl <*(«»")»{u,«}éT

i.e., the total length of the triangulation T in the Euclidean metric. In

computational geometry triangulations are important structures, and a

quite natural question is to ask for the triangulation of minimum weight4.

Problem 1.2 (Minimum Weight Triangulation). Given a set of

points P C Bf!2, what is the shortest triangulation of PI

Resolving the complexity of Problem 1.2 has been conceived as one of

the most important topics in computational geometry [96], and so the

problem received quite much attention. In 1979 Garey and Johnson [56]included the problem in their famous list of 12 problems with unknown

complexity However, it remained open for almost three decades. Very

Note that a minimum weight triangulation is not necessarily unique.

Page 18: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5

recently and simultaneously to our work, Mulzer and Rote [99] finally

proved that Minimum Weight Triangulation is AfP-hard.

With A^-hardness at hand, the most intriguing question is about the

approximability of the problem. This has also been the subject of previ¬

ous research. As it turned out, natural triangulations like the Delauny

or the greedy triangulation can be worse than the optimum by a factor

of Q(n) [20]. The best approximation algorithm so-far is due to Lev-

copoulos and Krznaric [89] who proved that a suitable variant of the

greedy algorithm constructs triangulations that exceed the weight of an

optimum triangulation by a factor of at most c, where c — 0(1) is a

(rather large) constant.

Chapter 3 introduces a quasi-polynomial time approximation scheme

(QPTAS) for this problem. A QPTAS computes a (1 +^-approximationin quasi-polynomial time, i.e., in time npo ylos(n).

The existence of a QPTAS for some ytPA'-hard problem n implies that

NV ç DTIME[npolylog(n)] which seems to be widely disbelieved5. There¬

fore, the existence of a QPTAS makes it likely that also a PTAS exists.

This work is joint with Angelika Steger and is published in part in [111].

Node-Weighted Steiner Trees. In Chapter 4 of this thesis we return

to Steiner's problem and study the following variant. Suppose it is not

necessary for our application to include all points into the Steiner tree,

but for every input point p that remains isolated we have to pay a penalty

7r(p). In the literature problems of this type are called prize-collecting

problems. Furthermore, we assume that we pay for each Steiner point

we use eg units. So, the problem we look at is the following.

Problem 1.3 (Node-Weighted Steiner Tree). Let Pc# denote

a set of points, let ti : P —> Q+ and let es G Q+. Compute a subset

K* C P and a Steiner tree ST* connecting K* such that i{ST*) +

Yï,péK* 7r(p) + cs-s('5T*) is minimum, where s(ST*) denotes the number

of Steiner points in ST*.

Note that Problem 1.3 includes Steiner's problem as a special case, as it

suffices to let cs = 0 and iv(p) — oo for all p <s P. Hence, Problem 1.3 is

NV-lmid. Another special case is the minimum spanning tree problem;

we just have to choose Co, = oo and 7r(p) = oo for all p P.

°Indeed, several lower bounds on approximability rely on the assumption that NV

is not a subset of DTIME[ni,olvlü^")] rather than on V / NV.

Page 19: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

6 Chapter 1. Introduction

Like Steiner's problem, Problem 1.3 has applications in network design.

Our model meets the fact that in practice Steiner points are usuallynot for free. This is already obvious for Gauss's application, since in

a railway network every Steiner point models a station (or at least, a

junction) which is costly to built. Similarly, in computer networks ad¬

ditional switches could reduce the cable length of the network but they

are expensive to install. The motivation for prize-collection is mainly to

identify unprofitable points, since the penalties can be seen as a loss of

income we suffer due to clients who are not connected to our network.

So, from a practical point of view, the objective function of Problem 1.3

in fact maximizes the total profit of our network.

In Chapter 4 we introduce a PTAS for this problem. Our algorithmworks not only for the Euclidean metric but also for any Jzfq-metric.Moreover, we extend our method to higher fixed dimension still obtaining

a QPTAS. This work is joint with Angelika Steger and is published in

part in [110]. A full paper is to appear [112].

Vehicle Routing with Allocation. The traveling salesman problem

(TSP) is a well-studied optimization problem. The geometric variant

admits a PTAS [11, 94, 108]. In Chapter 5 we study the following

generalization of this problem. We do not require that all points lie

on the salesman tour. However, points that lie not on the tour are

allocated the nearest tour point, i.e., they are directly connected to this

point paying a higher (per-unit) cost.

Problem 1.4 (Vehicle Routing with Allocation). Given a set

of points P C âêd and functions a : P —> [0, oo) and ß : P —> [l,oo),compute a subset T* Ç P and a salesman tour 7r* through T* such that

the total length of the tour including all allocation costs is minimum.

Here, the allocation cost for a single point p G P\T* is c\(p)+ß(p)-d(p, q),where q G T* is the nearest point on the tour.

Note that Vehicle Routing with Allocation (VRAP) becomes the

ordinary traveling salesman problem by letting ß(p) = oo for all p G P

(in fact ß(p) — 2 suffices). Problem 1.4 is motivated by vehicle routing.

For instance, each point represents a bank and we wish to transport cash

to the banks using an armored vehicle. The vehicle can visit each bank

(which would be a shortest salesman tour) but it might be cheaper to

visit only some of the banks while the staff of the other banks has to

pick up the cash at the visited banks. Although the total distance is

Page 20: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

7

smaller, this way of cash transportation is more risky and needs addi¬

tional insurance (which can be modeled using the functions rv and ß).

We also study a Steiner variant, called Steiner VRAP, of this problem.

Here, we are allowed to include Steiner points in the salesman tour in

order to lower the allocation costs. This problem was recently introduced

as Purchase Cooperative TSP by Armon et al. [9].

Chapter 5 introduces a randomized PTAS for both Vehicle Rout¬

ing with Allocation and Steiner VRAP. A randomized PTAS has

expected approximation ratio (1 + e), or equivalently returns a (1 + e)-

approximation with probability at least 1/2. Our algorithm for VEHI¬

CLE Routing with Allocation has time complexity Ö (nlogrf+3n),whereas that for STEINER VRAP requires Ö (nlog^ ,£> n) time, where

Ç(d,e) — ö(yfd,/e)d~l. The latter algorithm dramatically improves a

result of Armon et al. [9]. This work is joint with Reto Spöhel and

Andreas Weißl, and is published in part in [109].

Page 21: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Seite Leer /

Blank leaf

Page 22: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

CHAPTER 2

Geometric Optimization Problems

This chapter provides deeper insight into the field of geometric opti¬

mization. As we already stated in the introduction, we presume that

geometric optimization problems are of discrete character, that is, both

the input and the output consist of finitely many geometric objects such

as points, lines, hyperplanes and regions, along with the usual set of

real numbers. In this chapter we first introduce the principal geometric

objects we use and fix some notation. Then we discuss which model

of computation is suitable to describe geometric algorithms and we ar¬

gue, why our algorithms can be implemented on a traditional RAM or

a Tiring machine. Thereafter, we briefly discuss the relation between

geometric and combinatorial optimization problems. Finally, we survey

previous results on geometric optimization problems.

2.1. Geometric Preliminaries and Notation

As usual, Md denotes the d-dimensional Euclidean space, i.e., the space

of ti-tuples (xi,...,Xd) G ^d with metric [Yli=^x1)1^2 Instead of

the Euclidean metric, we often consider the more general Jzfq-metric

ÇZjd=iXiy/q. We denote the distance of two points p and q in the

Jzfq-metric by dq (p,q). For the sake of brevity, d(p,q) denotes the Eu¬

clidean distance. The Euclidean length of a line segment e is denoted

bv /(e), whereas the ^-distance between the endpoints is denoted by

£q(e).

This thesis only deals with the following principal geometric objects:

points, lines, line segments and hyperplanes. All other considered objectscan be decomposed into those four principal objects1. A straight-line

graph (SLG) Q on a point set P E Md is a set of pairwise (straight)-line

The importance of this decomposition is due to the machine models we consider.

This is discussed in detail in Section '2.2.

9

Page 23: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

10 Chapter 2. Geometric Optimization Problems

segments or edges with endpoints in P. For example, a Steiner tree is a

SLG on the input points and the Steiner points. For an edge {u,v\ G

G we sometimes denote the corresponding line segment by uv. More

precisely, uv denotes the set of points on the line segment connecting

u and v. Our convention is that a SLG is a set of edges. Only if the

context is not clear, we use the notation E{G) to refer to the edge set

of G- Similarly, P{G) denotes the points of P that are incident to at

least one edge in E(G). By £(G) and (q{G) we denote the total lengthof G in the Euclidean and the Jzfq-metric, respectively. An important

special case of a SLG is a planar straight-line graph (PSLG) which is a

straight-line graph on a point set Pel2 such that all edges are pairwise

non-intersecting. For instance, a triangulation and all its subgraphs are

PSLGs.

As usual, Axyz denotes the triangle with vertices x, y, and z. As a

triangle induces a PSLG, we use the notations E(A) and P(A) to refer

to A's sides and vertices.

The halfspaces of a line (or a hyperplane) H are denoted by H+ and H~,

respectively. Our convention is that halfspaces are always open. We will

not use any kind of global orientation, but instead we will define H+ and

H~ locally by specifying certain points that they contain. For any region

R C <5^2, dR and R denotes its boundary and closure, respectively. We

denote the convex hull of a point set X G t%d by conv(A). Unless stated

otherwise, logn denotes the logarithm of n to base 2.

2.2. Models of Computation

A model of computation specifies the primitives that we can execute as

well as their respective durations. Combinatorial algorithms and data

structures are usually described in the random access machine (RAM)model [5]. The memory cells of a RAM contain integers, which can be

added, multiplied, subtracted, divided, compared, and used as pointers

to other memory cells. All those operations can be accomplished in

constant time2.

However, in the field of computational geometry it is more common to

consider the Real-RAM model [106]. The memory cells of a Real-RAM

Although this assumption is commonly made for the sake of simplicity, it is not

realistic at all and makes it impossible to relate RAMs and Turing machines. A

second definition takes into account that the cost of those operations depends on the

lengths of the numbers involved. We refer the reader to [5] for details.

Page 24: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

2.2. Models of Computation Il

can store not only integers but also arbitrary real numbers, e.g. coor¬

dinates of points. On a Real-RAM we can do arithmetic operations on

and comparisons between real numbers in constant time but conversions

between integers and real numbers are not allowed.

So far, this model of computation is very convenient but not more pow¬

erful than the traditional RAM as long as the input is rational. However,

in computational geometry, we also want to treat decision problems like

the following seemingly simple one.

Problem 2.1. Given x,y,z G âê2 and tGZ+, decide whether Axyz has

perimeter at most t.

At a first glance, this problem seems to be tractable in polynomial time,

as we could simply "measure" the perimeter of the triangle, but to mea¬

sure means to compute roots which are in general transcendental. Thus

it is not clear at all whether we can decide Problem 2.1 on a RAM (or a

Turing machine) in polynomial time. Even more, it is doubtful whether

this problem is in A/"P, since it seems to be impossible to construct ef¬

ficient certificates that involve transcendental numbers. The difficulties

we encounter with geometric decision problems and the class NV are

in fact intentional, as real computers and similarly traditional RAMs

or Turing machines have finite memory and can thus only handle finite

arithmetic. To overcome these difficulties in theory it is common (soalready in [106]) to extend the Real-RAM model such that wo can com¬

pute roots, trigonometric functions, logarithms and powers in constant

time. This model of computation is much more powerful than the tra¬

ditional RAM or Turing machine. Indeed, we can solve Problem 2.1 in

0(1) time on such a Real-RAM. Similarly, the (Euclidean) length of a

minimum spanning tree (cf. Problem 2.8) of a given point set is in gen¬

eral transcendental and we need the Real-RAM to compute this value.

However, as roots are monotone, a RAM is sufficient to compute just

the minimum spanning tree (but not its length).

The aforesaid extensions are also helpful when computing the coordi¬

nates of the Torricelli point which requires trigonometric computations.In addition the Real-RAM model makes it possible to decide whether

certain geometric objects intersect, and if so at which points. For ex¬

ample, we need the Real-RAM to determine at which point (s) two disks

intersect even if the centers' coordinates and the radii arc rational.

The algorithms proposed in this thesis are described in the Real-RAM

model, but we claim that they can be transferred to the traditional RAM

Page 25: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

12 Chapter 2. Geometric Optimization Problems

and also to a Turing machine. This has the following reasons. Firstly,

we consider approximation algorithms instead of exact ones. Generally

speaking, our objective functions are sum of roots and thus wo just need

to approximate the roots appropriately. Indeed, one can easily check

that even the asymptotic complexities of our algorithms arc preserved

on the RAM, as for fixed e > 0 a (1 + ^-approximation to a root can

be computed in 0(1) time. Secondly, our algorithms use no (principal)geometric objects other than lines, line segments, hyperplanes and points

(and compound objects such as polygons) determined by points with ra¬

tional coordinates3. Clearly, rational arithmetic is sufficient to compute

intersections of such objects, and also to decide whether a point is above

or below a given line (segment) or a hyperplane.

Note. The practical problems of finite arithmetic have an absolutely dif¬

ferent character. In fact, the implementation of geometric algorithmslike ours is rather difficult, as in practice we use floating point arith¬

metic with bounded precision, e.g. 52 binary digits for IEEE doubles.

This has the effect that it may be hard to decide whether a given pointlies above some line segment or below. There are several approaches to

overcome such problems. We refer to [91] and the references therein.

2.3. Geometric and Combinatorial Optimization

Combinatorial optimization problems are well-studied algorithmic prob¬

lems and many textbooks are devoted to this subject, e.g. those of

Grötschel, Lovâsz and Schrijver [66], Papadimitriou and Steiglitz [100]and Shrijver [116], The most fundamental way to state a combinatorial

optimization problem is the following: the input is a set t/, a weightfunction uj : U —> R+ and a (in most cases implicitly given) set of sub¬

sets S Ç p(U). We wish to find an element sq £ S which optimizes

In fact, many geometric optimization problems can be formulated as a

combinatorial one. Assume we are given a set of points P C S9d and

wish to compute a set of line segments of minimum total length such

that each point in P is an endpoint of exactly one line segment. It is

easy to see that this problem is indeed the minimum perfect matching

problem in graphs, as P induces a weighted complete graph Kp such

that the weight (or length) £(e) of an edge e = {u, v} is the distance

Here we assume that the input points have rational coordinates, as otherwise we

cannot nse the RAM anyway.

Page 26: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

2.4. A Tour d'Horizon 13

d(u,v) between its endpoinfs in the Euclidean metric. That is, we can

state the geometric variant of the matching problem in the form

Problem 2.2 (Minimum Perfect Matching). Given P C M'\ com¬

pute the shortest perfect matching in Kp.

Similarly two point sets P,Qc $d induce a weighted complete bipartite

graph Kp^q. So, the geometric relative of the bipartite perfect matching

problem in graphs is

Problem 2.3 (Minimum Perfect Bipartite Matching). Given P,

Q C f$d, compute the shortest perfect matching in Kj^q.

One can solve Problem 2.2 and Problem 2.3 in time Ö (n3) using Ed¬

monds' algorithm [100]. However, this method does not exploit the

strong geometrical background of the problems above. So, is it possibleto find faster algorithms for Problem 2.2 and Problem 2.3? The answer

is indeed yes, but the improvement one achieves depends on the dimen¬

sion and the metric of the input as well as on the desired accuracy. The

currently best results can be found in Table 2.1.

Like the matching problem several other geometric optimization prob¬lems are in a complexity theoretic sense easier than their combinatorial

relatives: we have faster algorithms for tractable problems and achieve

better approximations for hard ones.

However, several geometric optimization problems have no straightfor¬ward combinatorial relative. One prominent example is Steiner's prob¬lem. In the way it was stated it is not a combinatorial problem at all,

and in particular it cannot be formulated as a graph problem. We come

back to this in Section 2.4.3.

2.4. A Tour d'Horizon

In the remainder of this chapter we survey recent and classical results

on geometric optimization problems. Given the vast number of different

geometric optimization problems studied so far, it is apparently not pos¬

sible to provide a complete discussion. The problems we have selected

for this survey are either fundamental or are related to the problemsstudied in the main part in this thesis. In the sequel, we also aim to

demonstrate that on the algorithmic side geometry often helps a lot. To

do so we also discuss the combinatorial counterparts of the problemswhenever it makes sense.

Page 27: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Graph

Dim.

Metrie

Approximation

Complexity

Reference

KP

2•=£\1°^1

•}~^oo

exact

C(n

5/2lo

g4n)

[125

]

^2

exact

Ö(n

3/2lo

g5n)

[126

]

%2

(1+

e)Ö

(n/e3lo

g6n)

[127

]

d^1

(1+

e)0

(e3d

/2n3

/2lo

g5/2

n)[1

24]

%2

(1+

e)<9

(nlog°^n)

[11]

&Cq

(1+

ci(9(nlo

g°<W

n)[1

1]

Kp,Q

2£â\,

^2-,

=^oc

exact

C(n5

/2lo

gn)

[125

]

=2\L

)"^oo

exact

Ö{n

2lo

g3n)

[125

]

^2

exact

Ö(n

2+e)

[2]

^2

(1+

e)0(

n3/2

logn

)[1

27]

Table

2.1.Thecurrentlyfastest(a

ppro

xima

tion

)algorithmsforgeometricmatchingproblems.

The

complexitydependson

thedimensionand

themetric

aswell

asonwhetherwewant

an

optimum

solutionorju

stanapproximation.

Page 28: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

2.4. A Tour d'Horizon 15

Most geometric algorithms shaie a certain drawback that is typical for

such problems: they suffer from the so-called curse of dimensionality,that is, their time or space complexities grow at least exponentially with

the dimension. For this reason almost all of the algorithms we give in

the sequel are only polynomial in the plane or some fixed dimension.

2.4.1. Covering and Point Selection. Covering problems are loosely

related to combinatorial optimization problems like Minimum Set Co¬

ver, but they have a strong geometric character. The first problem we

consider is to cover a point set P with unit spheres. We say that a set

of spheres covers a point set P if each point is also contained in at least

one of the spheres.

Problem 2.4 (Covering with Unit Spheres). Given P c S$d1 com¬

pute the minimum number of unit spheres that cover P.

This problem is known to be A/"P-hard in the strong sense [77], so no FP-

TAS exists. However, there is a PTAS for the problem due to Hochbaum

and Maas [71] with complexity double exponential in d. We obtain the

same negative and positive results if we cover the point set with squares

or arbitrary rectangles. The PTAS of Hochbaum and Maas is insofar

interesting, as to the best of our knowledge this is the first application

of randomized dissections of the Euclidean space. This technique was

later extended by Arora [10, 11] and others, and is also heavily used in

this thesis.

Another field of interest is point selection. Selection problems are not

necessarily optimization problems. Indeed, an important selection prob¬lem is Range Searching, where we preprocess the point set such that

we can quickly report or count the points within an arbitrary query

region (see [3] for references). Natural selection problems that involve

optimization are computing the nearest neighbor of a query point or the

closest pair within a point set. More precisely, the former problem is

to preprocess the input points such that we can quickly find the nearest

neighbor for any query point, where we have a certain tradeoff between

preprocessing time and query time. Due to applications in classifica¬

tion, this problem is particularly relevant in high dimension where it

suffers from the curse of dimensionality. For this reason much research

has been done on approximate nearest neighbor queries which can be

answered much faster. We refer the reader to [7, 75, 74] and to the

references therein. The closest-pair problem can be solved in expectedlinear time [63] if the dimension is fixed. A natural generalization is the

Page 29: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

16 Chapter 2. Geometric Optimization Problems

following problem, where we wish to select k points minimizing some

closeness measure.

Problem 2.5 (Subset Selection). Given P C ^d, a k e N, and some

criterion /i : p(X) —> M>o, compute a subset X Ç P of cardinality at

least A; such that fi{X) is minimum.

Such problems were first studied by Aggarwal et al. [4] who introduced

an algorithm finding in Ö (k2n\ogn) time using Ö (kn) space a set of k

points for which the smallest enclosing rectangle has minimum perimeter.

The complexity was improved by Datta et. al [36] to Ö {k'2n + nlogii)time and Ö (n) space. This specific problem has applications in cluster¬

ing and pattern recognition. A number of polynomial time algorithms

[4, 35, 36, 45, 47, 48, 70, 117] exists for various choices of /i, like

for instance the radius of the smallest enclosing disk or the area resp.

perimeter of conv(A). The prize-collecting variant of this type of prob¬lem has been recently studied by Gerke and Remy [58]. In this variation,

we assign profits tt : P —> M>o to the points and ask for the most prof¬itable subset X that maximizes ^2pX ^(p) ~ M^O-

2.4.2. Separation and Clustering. A number of problems fall in this

class, such as finding the shortest polygon separating points colored red

and blue, or computing the "simpliest" polytope separating two nested

polytopes. For the former problem we have a PTAS [13], whereas the

best we know for the latter is a Ö (l)-approximation algorithm [23, 97].An important clustering problem we encounter quite frequently is

Problem 2.6 (Maximum Cut). Given P c S%d, compute a maximum

cut in Kp.

The more general problem to compute a maximum cut in a given metric

input graph admits a PTAS due to Fernandez de la Vega and Kenyon

[51]. A PTAS also exists if one wishes to compute a maximum bisection

instead of a cut [50]. Computing a maximum cut in a non-metric graph is

^4P^-complete [102], and 0.87856-approximation algorithm exists [62].Another problem that received much attention is

PROBLEM 2.7 (/v-Median). Given rcfrf and afceN, determine a set

F C 3?d of k points, called medians, such that the sum of min{d(p, /) :

f E F} over all p E P is minimum.

The first PTAS for this problem is due to Arora et al. [14]. More re¬

cently, Har-Peled and Mazumdar [69, 70] introduced a faster PIAS with

Page 30: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

2.4. A Tour d'Horizon 17

linear complexity for sublinear k. This algorithm also applies to the dis¬

crete version of the problem, where we require F Ç P. For this variant

there is a PTAS with complexity Ö (n log6 j d n) due to Kolliopoulos and

Rao [83]. The algorithm in [69] still suffers from the curse of dimen¬

sionality Newer approximation schemes due to Kumar et al. [84] and

Chen [27] have complexities polynomial in d but exponential in k. A

related problem is Facility Location. Instead of k, we are given a set

Po of candidate locations for medians and for each f E Fq & cost c(f) for

placing a median at /. We wish to compute a F Ç P0 that minimizes

the objective function of Problem 2.7 plus the total cost of the points in

F. The method introduced in [83] applies to this problem. The graph

problems corresponding to /c-Median and Facility Location admit

constant factor approximations. The most recent results and references

can be found in [16, 25, 76].

A solution to Problem 2.7 is essentially a set of stars with centers in P.

The problem becomes much more difficult if we require that the degree

of each of the stars' centers is bounded by some t (which is part of the

input). This problem is called capacitated k-rnedian and the best we

have is a QPTAS [14]. A further variant of ^-Median is the problem/c-Center where we minimize maxpep min/gj? d(p, /), that is, we mini¬

mize the maximum "radius" of a star in the solution. A 2-approximation

algorithm for this problem exists [64], but it is also known that a 1.82-

approximation to this problem is A/"P-hard [49].

2.4.3. Network Design and Routing Problems. Network design

problems are important and extensively studied geometric optimization

problems. One important network design problem is Steiner's problem.In the introduction we already mentioned that this problem admits a

PTAS [11, 94] but no FPTAS unless V - NV [55]. Unlike the (bi¬partite) matching problem, Steiner's problem is not a combinatorial op¬

timization problem. The combinatorial optimization problem which is

conceived to be most related to Steiner's problem is the Steiner tree

problem, in networks. Here, the input is a weighted graph G = (V, P, to)and a subset K ÇV. We wish to compute a minimum weight connected

subgraph of G spanning K. This problem is „4P^-complete [21] but

admits a (1 + ^^-approximation [113]. We refer to Chapter 4 for a de¬

tailed discussion of the literature on Steiner's problem and its relatives.

A fundamental geometric problem similar to Steiner's problem is

Page 31: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

18 Chapter 2. Geometric Optimization Problems

Problem 2.8 (Minimum Spanning Tree). Given P c $d, compute

the shortest connected subgraph Kp.

If P is a set of points in the plane this problem can be solved in time

Ö {n\ogn) time, as the minimum spanning tree is a subgraph of the

Delauny triangulation which can be computed in O (nlogn) time (cf.de Berg et al. [38]). This competes quite well with the current fastest

algorithm for the MST problem in graphs [26, 104].

There arc several generalizations of the MST problem. For instance, the

fc-MST problem is to find a minimum spanning tree that spans at least

k points of the input set. This problem is known to be jVP-hard [52]but admits a PTAS [11, 94]. Also, we have a PTAS for the problemto compute a shortest fc-connected subgraph of KP [32, 33]. A very

challenging variant of the MST problem is

Problem 2.9 (Degree-Restricted Minimum Spanning Tree). Gi¬

ven P C â?d and t > 2, compute the shortest subgraph of Kp with

maximum vertex degree t.

The case t = 2 is equivalent to the traveling salesman problem (Prob¬lem 2.10 below) and thus NV-lmrd in the strong sense. Papadimitriouand Vazirani [101] showed the A/"P-hardness of the case t — 3. The

case t > 5 can be solved in polynomial time [13], whereas the com¬

plexity status of the case d = 4 is still open. The literature describes

several polynomial time approximation algorithm with constant perfor¬

mance ratio (see for instance [24]). More recently, Arora and Chang

[13] introduced a QPTAS for all choices of t. There is not much known

about degree-restricted MSTs in graphs. A series of papers proposes al¬

gorithms optimizing the weight without violating the degree bound too

much, culminating in a result of Goemans [60] : one can find in polyno¬

mial time a tree of maximum degree t + 2 and weight at most that of any

MST with maximum degree t. Let us finally turn to a several problemsthat a related to

Problem 2.10 (Minimum Traveling Salesman). Given P c fMd,

compute the shortest salesman tour in Kp.

This problem and its counterpart in graphs is extensively studied. The

geometric variant was shown to be strongly NV-h&rd by Garey, Graham

and Johnson [54]. This excludes the existence of a FPTAS unless V =

NV. On the positive side, Arora [11] and independently Mitchell [94]introduced such a PTAS for this prestigious problem. The advantage

Page 32: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

2.4. A Tour d'Horizon 19

of Arora's PTAS is that it generalized to any fixed dimension. 'The

currently fastest approximation scheme for this problem is the algorithmof Rao and Smith [108] which has time complexity Ö (n log??) in fixed

dimension. The traveling salesman problem in graphs is not even in

AVX, unless V = NV [17]. If the edge weights satisfy the triangle

inequality then the problem admits 3/2-approximation [30], but is still

„4P.^-complete [103].

Several important variants of Minimum Traveling Salesman have

been considered. One example is NEIGHBORHOOD TSP, where we are

given a set of regions Pi,..., Rn in &d and wish to compute the shortest

tour through all P^. This problem in its full generality is known to be

„4P^f-hard [37, 114]. Very recently Mitchell [95] introduced a PTAS

for this problem for the important case that Pi,..., Rn are fat regions

in the plane. Another variant is the so-called orienteering problem. Here

we wish to maximize the number of input points we can visit with a

salesman path of length at most t. There exists a PTAS due to Chen

and Har-Peled [28] for this problem in dimension 2.

An interesting generalization of TSP is a problem called Cooperative

TSP [9]. This problem has several variants that essentially differ in the

amount of cooperation we allow. In the most basic variant, the salesman

has to meet all clients, but the customers are allowed to move towards

the salesperson and we wish to minimized the total distance traveled

by the salesman and the customers. Armon et al. [9] give a PTAS for

this and some other variants but not for all. Indeed, some of them are

more related to Degree-Restricted Minimum Spanning Tree than

to TSP. Note that Cooperative TSP is quite similar to the problemVehicle Routing with Allocation which we study in Chapter 5.

In fact, there we also improve a main result of [9].

2.4.4. Triangulation Problems. This class of problems is very im¬

portant in computational geometry and related areas such as computer

graphics. A triangulation of a set P C &2 of points in the plane is a

subgraph of Kp that divides the interior of the convex hull of P into

triangular regions. Computing triangulations is not too complex and

indeed the so-called Delauny triangulation can be constructed in time

C(nlogn) [38]. In contrast, the problem Minimum Weight Trian¬

gulation, stated in the introduction as Problem 1.2, turned out to be

quite challenging and it is one of the most studied problems in com¬

putational geometry. Mulzer and Rote [99] recently proved that this

Page 33: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

20 Chapter 2. Geometric Optimization Problems

problem is A/'P-hard - almost three decades after it appeared in the

list of 12 problems with unknown complexity published by Garey and

Johnson [56] in 1979. The proof of Mulzer and Rote also yields that

no FPTAS exists, unless V = NV. The best polynomial time approx¬

imation algorithm we have so far is an Ö (l)-approximation algorithmdue to Levcopoulos and Krznaric [89]. Chapter 3 of this thesis intro¬

duces a QPTAS for this problem, and also surveys further related work.

Unlike Minimum Weight Triangulation, the following problem is

polynomially tractable.

Problem 2.11 (Minimum Maximum Length Triangulation). Gi¬

ven a set of points P C &2, compute the triangulation of P with mini¬

mum maximum edge length.

Edelsbrunner and Tan [43] showed that this problem can be solved in

quadratic time. This is basically achieved by proving that the so-called

relative neighborhood graph [123] is contained in at least one triangu¬lation of minimum maximum edge length. As the relative neighborhood

graph is known to be spanning and connected, one can complete this

triangulation using dynamic programming. If we want to minimize the

maximum angle instead of the maximum edge length, we still have a

Ö (n2logn) time algorithm due to Edelsbrunner et al. [44].

Problem 2.12 (Minimum Steiner Triangulation). Given a set of

points P C M2, select points S C &2 such that the minimum weight

triangulation on P U S has minimum length.

By allowing Steiner points, the weight of the triangulation can decrease.

In particular, there exist instances for which the weight drops by a

factor of fl(n) [46]. It is not known whether this problem is NV~

complete. Eppstein [46] presented an algorithm for Minimum Steiner

Triangulation which computes a 316-approximation in O (nlogn)time. The solution produced by Eppstein's algorithm has Ö (nlogn)Steiner points, and an intriguing open question of algorithmic signifi¬cance is, how many Steiner points we need in the optimum solution or

in a (1 + ^-approximation.

A pseudo-triangulation is a planar graph on the given point set such that

each face is a pseudo-triangle, that is a planar polygon that has exactlythree convex vertices with internal angle less than n.

Problem 2.13 (Minimum Pseudo Triangulation). Given a set of

points P C &2, compute the shortest pseudo triangulation of P.

Page 34: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

2.4. A Tour d'Horizon 21

Like for the preceding problem, the complexity status of Minimum PSEU¬

DO Triangulation is still open. Recently, Gudmundsson and Lev-

copoulos [67] gave a polynomial time 4(1 + 4v/2)-approximation algo¬

rithm. They also proved that the minimum weight pseudo-triangulationof the interior of a simple polygon can be computed in Ö (/t3) time.

Page 35: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Seite Leer /

Blank leaf

Page 36: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

CHAPTER 3

Minimum Weight Triangulation

In this chapter, we introduce a quasi-polynomial time approximation

scheme for Minimum Weigh Triangulation. We start by briefly re¬

viewing the problem statement and by fixing some basic notation. Let

P C f^2 denote a set of points in the Euclidean plane with \P\ — n. A

triangulation T of P is a collection of non-intersecting edges or straight-

line segments, dividing the interior of the convex hull of P into triangular

regions. We throughout consider triangulations as planar straight line

graphs. Frequently, we use the notation A(T) to denote the set of trian¬

gles (or triangular regions) induced by a triangulation T. The length of a

triangulation T is defined as the total length of the used straight-line seg¬

ments in the J^-nietric, i.e., the length of T is £(T) = Y2{u v\<eT ^('u' v)-The Minimum Weight Triangulation problem is to find a triangu¬

lation T* of minimum length for P. Note that T* is not necessarily

unique.

The first appearance of the problem dates back to 1970, when it was

considered by Diippe and Gottschalk [42] in the field of cartographies.In 1975, Shamos and Hoey [119] conjectured that the Delaunay trian¬

gulation has also minimum total length. This has been later disproved

by Lloyd [90]. In 1979 Garey and Johnson [56] included the problemin their famous list of 12 problems with unknown complexity. As in

addition, Minimum Weight Triangulation is conceived as one of

the most important problems in computational geometry [96], it has re¬

ceived much attention over the following years. However, its complexitystatus remained open for almost three decades. Very recently, and inde¬

pendent to our work, Mulzer and Rote [99] finally proved that MINIMUM

Weight Triangulation is NV-k&rd.

Polynomial time algorithms have been found for several special cases

such as triangulating the interior of a simple polygon [59, 81]. More

recently, it was shown that a simple polygon containing k inner points

23

Page 37: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

24 Chapter 3. Minimum Weight Triangulation

can be triangulated optimally in Ö (6A'nrMog n) [72] or Ö ^n3k\kï) time

[65]. Moreover, one can optimally solve in time Ö (rvik+^) instances,

where the input consists of k nested convex polygons [8].

The algorithm in [59, 81] can be used to complete in polynomial time

a triangulation of minimum weight, once we have a subgraph with a

constant number of components of it. This motivated another line of

research asking for such subgraphs. Promising candidates were mutual

nearest neighbors [129], the /3-skeleton [29, 79], and the LMT-skeleton

[19, 39]. Those subgraphs can be shown to be not connected in gen¬

eral (which matches the A^P-hardness of the problem). However, for

most real-world instances the LMT-skeleton is connected or consists of

only few connected components. Conversely, to exclude edges from the

triangulation one can use the so-called diamond test [34, 40].

With A/"P-hardness at hand, the most interesting open question is about

the approximability of the problem. Previous research showed that nat¬

ural triangulations like the Delauny or the greedy triangulation can be

worse then the optimum by a factor of O(n). The excellent survey of

Bern and Eppstein [20] on hard geometric optimization problems con¬

tains several such examples. In 1987 Plaisted and Hong [105] proposed

an algorithm which produces triangulations within a factor of Ö (log n)of an optimum triangulation. Roughly a decade later Levcopoulos and

Krznaric [87, 89] proved that a suitable variant of the greedy algorithmconstructs triangulations that exceed the weight of an optimum trian¬

gulation by a factor of at most c, where c = Ö (1) is a (rather large)constant. That is, we know that Minimum Weight Triangulation

is in the class AVX. Moreover, if the input points are in convex posi¬

tion a (1 + ^-approximation can be computed in time Ö (nlogn) [88].However, it remained open whether there is a (1 4- ^-approximationalgorithm for general point sets.

The seminal papers of Arora [10] and Mitchell [93] have risen the hope

to find a PTAS or a QPTAS for Minimum Weight Triangulation,

too. Indeed, Arora conjectured several times [11, 12, 13, 14] that his

technique may also apply to the related Minimum Weight Steiner

Triangulation problem (Problem 2.12). For various technical reasons

this problem seemed to be more amenable to Arora's techniques then

Minimum Weight Triangulation. However, no such algorithm has

been found till today. Our contribution is the following theorem.

Page 38: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.1. Concepts and Algovithmie Strategy __\

Theorem 3.1. Minimum Weicht Triangulation admits a QPTAS.

The algorithm computes for every e > 0 a (1 + e)-approximation in

n°(lüg8'0 time.

The existence of a QPTAS implies that Minimum Wetgiit Triangu¬

lation is not AVX-\mvd, unless NV Ç DTIME^01^")]. This seems

to be widely disbelieved. Therefore, the existence of a QPTAS can be

seen as a strong indication for the existence of a PTAS. On the other

hand, Mulzer and Rote [99] also showed that it is NV-haxd to approx¬

imate Minimum Weight Triangulation within a relative error of

O (1/n2). This excludes the existence of an FPTAS, unless P = NV.

Hence, a PTAS seems to be the best possible result.

3.1. Concepts and Algorithmic Strategy

In this section we give a high-level overview on our general approach and

the necessary concepts and tools. Assume for the moment that we have

chosen an appropriate square Ù0 which contains all points from P. Wc

construct a subdivision of do, by first cutting 0_o vertically, then cutting

the two resulting rectangles horizontally, then cutting each of the four

resulting squares again vertically, and so on until we obtain squares of

side length at most one. This subdivision can be seen as a tree with

rectangles as nodes (from now on we will use the term 'rectangle' to

denote a rectangle or a square). Given a rectangle 9^ encountered in this

subdivision and a triangulation T for the point set P, there is a natural

way to define the restriction of T to ÇK. Namely, this restriction contains

exactly those edges from T for which both of its endpoints are contained

in *K.

From a very high level, the general approach of our algorithm is to com¬

pute a triangulation T by dynamic programming in bottom-up fashion.

We now explain the key ideas behind this dynamic program. However,

what we outline in the sequel is just meant as general overview and not

yet a quasi-polynomial time algorithm. Later, we will explain how we

can make it more efficient.

- First, for all leafs of the subdivision of 0.o we enumerate all restrictions

of triangulations of P to these leafs.

- Then we recursively compute all restrictions of triangulations of a

rectangle 9H by considering all pairs of restrictions to its two children

9V and W and combining them optimally.

Page 39: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

26 Chapter 3. Minimum Weight Irifingulntion

The main drawback of this approach is that there are far too many

different restrictions of triangulations of P to a rectangle 91 A first

important observation is that within the above approach we actually do

not really need to store all restrictions. Within this bottom-up approach

all we need to know is how such a restriction looks from "outside", that

is which edges of the restriction can still be connected by straight lines

to points outside of 91 This is what we will call the local hull of a

restriction. A precise definition is deferred to Section 3.2.2. There we

will also show properties of local hulls that will allow us to efficiently

implement the recursion step. More precisely, we will show that given

a rectangle ÏH, its two children 9V and 9V', a local hull H for 9^ and

local hulls hi! and hi!' for 91 and 91' together with triangulations of

the interiors of the hulls hi! and hi", we can check in polynomial time

whether the hulls hi! and H" are 'consistent' with hi and, if so, compute

a triangulation of the interior of hi that is an optimum continuation of

the given triangulations for hi' and hi".

Note that, using these ideas the time complexity of the above approach

is reduced polynomially to (a) the number of different local hulls we

have to consider per rectangle and (6) the computation of triangulations

of the interior of the local hulls of the leafs of the subdivision of Ù0-

Let us first consider issue (6). Computing such triangulations optimally

seems difficult, as it is essentially equivalent to the original problem of

computing an optimum triangulation for P. However, as we will see in

Section 3.3, the sizes of leaf rectangles can be made sufficiently small

so that any triangulation of the interior of a given local hull for a leaf

rectangle will suffice to get a (1 + «^-approximation of the optimum

triangulation for the point set P. It thus remains to consider issue

(a). This is more difficult, as it is easy to construct examples for which

there exist exponentially many different local hulls. Our approach will

therefore be as follows. We define a polynomial time algorithm C(0.o, P)

that, given a square £}D and a point set P of size \P\ — n, constructs

for each rectangle 91 of the subdivision of Q_0 a set R~£(9î) of different

local hulls such that |H£(9l)| = 2polylog(n) for all rectangles 91 Then

the scheme which we outlined above will allow us to compute in time

2Poiyiog(n) a triangulation Tc such that

t(Tc) < (1 + e)- min £{T),

where Tc(Ù0, P) denotes the set of all triangulations T such that for all

rectangles 9î the local hull of the restriction of T to d\ is contained in

Page 40: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.2. Preliminaries 27

H/; (91). It remains to be shown that we can define a set of polynomially

many different squares Oz such that for at least one £}, we have

min £(T) < (l + e)-£(T*),TeTc(Q%J>)

where Tv denotes an optimum, triangulation for the given point set P.

As (1 + e)2 < 1 + 3e for all 0 < e < 1, this algorithm therefore produces

a (1 + 3e)-approximation to T*.

This strategy is reflected in the organization of this chapter. In Section

3.2 wc explain the subdivision of Ù0 in more detail. Moreover, we study

fundamental properties of triangulations with respect to this subdivision.

Among others we give a precise definition of the local hull. In Section 3.3

we introduce our QPTAS which is based on the concepts of Section 3.2.

The remainder of the chapter contains the analysis of the algorithm. In

Section 3.4 we define the algorithm C that computes the set of local hulls

(Hcffi))<R and show that their maximum cardinality is bounded quasi-

polynormally in n. In Section 3.5 we prove a technical result required

for the analysis. Finally, we explain in Section 3.6 how to construct a

"good" set of squares £Vs.

3.2. Preliminaries

3.2.1. Rectangles and their Generators. In the following we de¬

note by 0o a square that contains all points from a given point set P.

We recursively construct a subdivision of Ù0 that is similar to an ordi¬

nary quad tree as follows. A given rectangle 91 is subdivided into two

children 91 and ÇK" by a separator C through the barycenter of 91 The

separator is vertical if 91 is a square and horizontal otherwise. We stop

the subdivision if 91 is a square of side length at most 1.

Figure 3.1 illustrates the subdivision of a square 0.o- For definiteness

let us note here, that we will later ensure that we only consider such

squares Q0 for which no point from P is contained on the boundary of

any rectangle 9\ occurring in the subdivision of £}0.

A rectangle 9^ is obtained from £}0 by a sequence of separators, say

C0, • •

•, Ch We call / the level of ft, denoted by lev(îH). The set

ip(m) = {c0,...,c,}

is called the generator of 91 A separator C has level I if it subdivides a

rectangle at level / — 1 into two rectangles at level /. By definition Ù0

has level — 1. The side length |9l| of a rectangle (or square) 91 is the

Page 41: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

28 Chapter 3. Minimum Weight Triangulation

-Ci

-tH

c.

c2

Figure 3.1. The subdivision of 0O where the bound¬

ing box of P is drawn dashed. The generator of the

rectangle ft is (p(ft) = {C0, CL,C2, Cs}.

maximum length of a side of ft. One easily checks inductively that a

rectangle at level / has side length at most |£30|/2^//2^. Observe that, by

construction, the height of this subdivision is thus t := 2[log2 |£201~|.

3.2.2. Local Hulls. We now study the so-called local hull, one of the

key concepts in this chapter. Local hulls are defined for a rectangle ft

with respect to a triangulation T.

Definition 3.2. Let 91 be a rectangle and let T be some triangulation

of a point set P. The local hull hi(ft, T) of ft with respect to T is defined

as the set of edges in T for which both endpoints are contained in ft and

that satisfy in addition at least one of the following two properties: (i)the edge belongs to the convex hull conv(P) of the given point set, or

(ii) the edge is a side of a triangle in T that has its third vertex outside

of ft.

Page 42: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.2. Preliminaries 29

In other words the local hull consists of all edges that lay entirely in ft

and that either belong to conv(P) or are sides of triangles that cross the

boundary of ft. An example is given in Figure 3.2. As a local hull is

defined as a set of edges, we can view it as a planar straight-line graph.

The following lemma shows that, viewed as a planar graph, local hulls

are quite simple objects in which all cycles correspond to faces.

Figure 3.2. The local hull consists of the bold drawn edges.

Lemma 3.3. For all triangulations T and rectangles ft, the local hull

hi(ft,T) has the following property. If C is a cycle in H(ft,T), then C

induces a face in ri(ft7T).

Proof. Let C be an arbitrary cycle in H(ft, T). By definition, all points

of C are contained in 91 As 9^ is convex, this implies that the region

enclosed by C is completely contained in 91

Now consider an edge e of the triangulation T that is contained inside

this region. Clearly, this edge does not belong to conv(P). Similarly,the edge e cannot belong to a triangle of T whose third point is outside

of ft. Therefore e £ U{ft, T).

The interior ofhiift, T) is defined as the union of the interior regions of

all cycles contained in H(ft,T) and is denoted by mt(H(ft,T)). Note

that by the previous lemma, two cycles of ri{ft,T) may overlap in a

Page 43: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

30 Chapter 3. Minimum Weight Triangulation

point, but not in an edge (as this would result in a cycle that contains

this edge in its inteiior region). Hence we know that H(ft,T) can be

written as the union of simple polygons, such that any two of them

overlap in at most one point. Throughout, area (7-^(91, T)) denotes the

closure of int(H(9*,T)).

Note that arca(ri(ft,T)) contains all triangles of T that are entirely

contained in 91. Moreover, note that the local hull need not be con¬

nected (although it is connected in Fig. 3.2). Observe also that we have

7i(no,T)-conv(P).

3.2.3. Border Triangulations. Within the recursive scheme outlined

in Section 3.1 it is essential to understand how local hulls are related

to the local hulls of their descendants. In this section we develop the

necessary background. So let ÎH be a rectangle that is divided by a

separator C into two rectangles ft' and ft". Furthermore, let T denote

a triangulation for the point set P. We consider three different sets.

Namely, the set of triangles within 9^, that cross the cut, that is,

AB{ft,T) :={AG A(T) : (P(A) C ft) A (P(A) n ft! ^ 0)

A(P(A)n9TV(/))}

and from the triangles in Aß {ft, T) the sides that cross the cut and those

that are contained within one of the smaller rectangles. That is, the set

of triangles Aß (ft, T) defines the following sets of edges.

C{ft,T):= (J {eeE(A):enft'^0Aenft"^(H}AGAB(ÏH,T)

and

B{ft,T):= (J {eeE{A):eCft'VeCft"}.

We call B(ft, T) the border of ft with respect to its separator C and

the triangulation T. Similarly, we call C(ft,T) the cut edges of T in

91 Figure 3.3 illustrates these definitions. The following lemma is an

immediate consequence of the definition of the local hulls and the set of

border edges.

Lemma 3.4. For all rectangles ft = ft' U ft", and triangulations T we

have

H(ft',T) = {eeH(ft,T)uB(ft,T):e_ft'}and similarly for hi(ft", T). D

Page 44: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.2. Prelin una ries 31

Figure 3.3. The border triangulation at a separator C,that subdivides ft. The triangles belonging to Ab (ft, T)are drawn shaded; the edges in B(ft, T) are drawn with

bold lines, while those in C(ft, T) are drawn with dashed

bold lines.

Lemma 3.5. Let ft = ft' U ft" and T a triangulation of P and let

R\,... , Rk denote the regions given by

(3.1) mt(hi(ft, T)) \ [area (ri(ft', T)) U area (H(ft", T))].

For all i = 1,... ,k it holds that int(Ri) n P = 0 and that R1 is bounded

by a connected subgraph Wi of T.

In order to better understand the meaning of Lemma 3.5 have another

look at Figure 3.3. In this example we lrnve just two regions Pi and

P2, namely the two regions which are shaded in gray. Note that the

interior of both of these two gray regions does not contain any point

from P. Note also that even though the upper of the two regions seems

to contain a region from int(9l') in its interior (i.e., the small white

triangle), this is actually not true, as this triangle is connected by a bold

line, i.e., an edge from B(ft, T), to the boundary of Ri. Lemma 3.5 says

that this is always the case.

Proof of Lemma 3.5. Let H = H(ft,T), hi! = hi(ft!,T) and hi" =

ri(ft",T). Note that area(7i), area(7i/) and area(7Y//) are triangulated

Page 45: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

32 Chapter 3. Minimum Weight, Triangulation

in T. By definition area(Ti^) and area(?i//) contain all triangles of T

that lie inside ft' and ft", respectively. Thus, each P, is triangulated

with a set of triangles A, that cross C. That is, R% contains no point

from P. Let

Jr= Y. E^-AeA,

Clearly, there is a subgraph W% of Ji that bounds R{. This subgraph

can be obtained by removing all edges from Ji that cross C and belong

to two triangles in Ai (note that such edges cross P,;). Ü

The importance of Lemma 3.5 stems from the fact that a minimum

weight triangulation of the interior of a simple polygon is known to be

computable in cubic time [59, 81] if it contains no points. The algorithmis a straight-forward dynamic program and it is well-known that it can

also be used to triangulate a face of a PSLG. That is, we have

Lemma 3.6. Let Rt denote a region induced by (3.1) bounded by Wi-

The interior ofWi can be triangulated optimally in time Ö ( \Wi\ )

Coming back to the situation of Lemma 3.5 we thus see that if we denote

by 77,(91) = \ft n P\ the number of points in ft then we can find in time

G(n(ft)3) a minimum triangulation for all regions Pi,..., Rk- This fact

is one of the key features of local hulls that we will use in the next

section.

3.3. The Approximation Scheme

In the previous section we defined the local hull of a rectangle with

respect to a fixed triangulation T. The aim of this section is to show that

vice-versa we are also able to compute an (almost) optimal triangulationbased on the knowledge of all local-hulls. For the remainder of this

section we consider an arbitrary but fixed point set P such that \P\ — n.

We assume that the maximum distance between two points of P is at

least sn for some s G N. That is, wre have

max d(p, q) > s n.

Note that this can always be achieved by scaling the point set appropri¬

ately Later we choose s = Ö (ï/e). Let ù0 denote an arbitrary square

of side length at most 6sn that contains all points of P. For definiteness,

we assume that no point from P is contained on the boundary of any

Page 46: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.3. The Approximation Scheme 33

rectangle of the subdivision of Ù0 We show in Section 3.6 how to con¬

struct such a Ûo appropriately. Let H[ft] denote the set of all possible

local hulls of 9^1, that is

(3.2) H[ft] = {hi(ft, T) : T is a triangulation of P} .

The idea behind our algorithm is to compute a triangulation T recur¬

sively in a bottom-up fashion. More precisely, we will recursively com¬

pute for each rectatigle ft and each local hull hi G H[!K] a triangulation

of arca(7i) which we store in an array rf[ft,h{\. Our convention is that

these triangulations contain all edges oîhi. Recall that for ft — 0.o there

exists only one local hull, namely hi = conv(P) and T[0o,conv(P)] will

therefore contain a proper triangulation of the whole point set P. It

remains to specify how we compute the triangulations T[ft, hi}. If ft is

a leaf, we triangulate the interior of hi arbitrarily, e.g. using a greedy

algorithm and store the triangulation in T[ft, hi].

Next assume that 9^ is a rectangle that contains a separator C that

divides ft into two rectangles ft' and ft". The idea is to compute T[ft, hi]

by considering all pairs of local hulls (W,hi") in H[9l] x H[9T]. For a

given pair (hi', hi") we first check whether hi' and hi" are consistent with

hi. Firstly, we check whether the edges of (H' U H") \ hi are contained

in area("H). In other words, we require that hi U hi' U hi" looks from

"outside" as hi. Secondly, we require that the regions obtained by (3.1)

satisfy the properties stated in Lemma 3.5.

Finally, we use Lemma 3.6 in order to compute minimum triangulations

for the regions Pi,..., Rk in polynomial time. Combined with the tri¬

angulations from T[ft, hi'} and T[ft,hi"} this yields a triangulation of

the interior of hi. Let T(hi! ,hi") denote this triangulation. From all tri¬

angulations T(hi',hi") such that (hi',hi") G H[9l] x U[ft"}, we choose

one with minimum length and store it in T[ft,hi}. We claim that byconstruction the triangulations stored in T[ft, hi} satisfy the following

property

Lemma 3.7. For all rectangles ft we have

£(T[ft,hi}) < J2 £(e) + 6n(^)'

where n(ft) denotes the number of points of P in ft and T*(hi) denotes

a minimum triangulation for P that contains hi.

Proof. We argue by reverse induction over the level of the rectangle, that

is, we show that the claim holds for any rectangle at level / — 1 under the

Page 47: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

31 Chapter 3. Minimum Weight Triangulation

assumption that it holds for all rectangles at level /. Firstly, we show

that the claim holds for all rectangles at level t. Then, ft is a leaf and

the claim follows immediately from the fact that any triangulation of

hi contains at most Zn(ft) edges each of which has length at most, 2,

as a leaf rectangle has side length at most 1. Secondly, if ft has level

I < t, the claim holds by induction for its children 91 and ft". Since

H'0 = H(ft',T*(H)) G H[91] and H'i = H(ft",T*(H)) G U[ft"} the

algorithm also enumerates these hulls for ft' and ft" corresponding to

T*(hi). In addition, the regions Pi's are triangulated optimally and we

minimize over all choices for (hi',hi"). By induction, we thus have

£(T[ft, hi}) < £(T[ft', hi'0}) + £(T[ft", H'i]) + £ £(e)c£C(m,T*(H))

< J2 £(e) + 6n(ft') + 6n(ft"),eeT*(H)nm

which suffices, as we clearly have 6n(91) + 6n(ft") = 6n(ft).

For 91 ~ 0O there exists only one local hull, namely hi = conv(P).That is, we have H[no] = {conv(P)}, and every triangulation of

area(conv(P)) corresponds thus to a triangulation of P. Hence,Lemma 3.7 implies ^(P[no,conv(P)]) < £(T*) + 6n. As we did assume

that there are points in P which have distance at least s n, we know

that £(T*) > s n and we hence have

£(T[Ù0,conv(P)]) < (1 + 6/.s) /(T*).

That is, P[Ho, conv(P)] is a (l + e)-approximation, if we choose s > 6/e.

Of course, the time complexity of this algorithm will in general not be

very good, as firstly we have to compute the sets of local hulls H [ft] (andit is a priori not clear how we can do that efficiently) and secondly the

time complexity of the recursion can only be bounded by a polynomialin max?}} |H[9^]| (which might be exponential in 7?,). The key observation

now is the following. We observe that the only point where we used that

the sets H[9^] were defined as in equation (3.2) was within the proof of

Lemma 3.7. If we allow H[ft] to denote arbitrary sets of local hulls, i.e.

if we replace the "—" sign in equation (3.2) by a "Ç" sign everything

goes through as before, except that we have to replace T*(hi) in the

statement of Lemma 3.7 by T^(h{), where T^(hi) denotes a minimum

triangulation of P such that

i) HÇT£(hi) and,

ii) ht(ft,T£(hi)) e B.[ft] for all rectangles 91

Page 48: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.3. The Approximation Scheme 35

In other words: A family of local hulls (H[9i])^ induces a set of triangu¬lations such that each element of this set has the property that the local

hull of every rectangle 9^1 is contained in H[9Vj. Then T^(hi) denotes the

best such triangulation containing hi. In particular, 7j|(conv(P)) is an

optimal triangulation for P amongst all triangulations in this set. We

thus obtain the following theorem.

Theorem 3.8. Let P be a point set and 0.0 be given as stated in the

beginning of this section. Assume furthermore thai C is an algorithmthat computes for P and H0 a family of local hulls CHc[ft])m. such that

niax|H£[ÎH]| = /(n)

for some function f(n) > 1. Then one can compute in O (poly (n) f(n)2)time a triangulation T such that

£(T) < (l + 6/S).*(72),

where T£is a minimum triangulation such that hi{ft,T^) G H/;[91] forall ft. D

In essence, this theorem says that it suffices to choose the family

(H£[9l|)fK such that firstly f(n) is quasi-polynomial and secondly T£is nearly optimal. In fact, the existence of such a family is shown in the

remainder of this chapter. In Section 3.4 we will describe how one can

define an appropriate quasi-polynomial time algorithm L for computing

H£[9l]. Moreover, we show that

max|H£[m]|=n0(logön).

Therefore, the running time of our algorithm is quasi-polynomial in n.

In Section 3.6 we explain how to choose 0.o such that

£(Tc) < (l + 0(l/s))-£(T*).

Combining both results and choosing s — Ö (1/ff) we obtain an (1 + e)~

approximation algorithm with time complexity n°v°e n).

Remark 3.9. If one can show that there exists a family (H£.[9Î])jhwith the aforesaid properties such that f(n) — poly(n) and such that

(H/:[9i])fH can be constructed in polynomial time, then Theorem 3.8

implies the existence of a PTAS.

Page 49: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

36 Chapter 3. Minimum Weight Triangulation

3.4. Smooth Hulls

In this section we construct the algorithm C and show that C computes

H£[9t] in quasi-polynomial time. This requires some preliminary work.

Our strategy is the following. We consider a fixed triangulation T and

rectangle ft. The idea is to extract several features from T which can

be used to describe the local hull of ft up to some level of detail. Based

on these features we construct the local hulls in H£[9S:]. Therefore the

set of features should be comparably small.

First, we define a small sample of the border triangulation. However,this sample turns out to be dense enough such that we only miss very

small triangles. Indeed, this sample provides portions of the local hull

with the exception of small "gaps". Our next goal is then to derive

several properties of these gaps. We show that it is possible to roughlyreconstruct the local hulls within the gaps based only on a small amount

of additional information. This finally yields a set of local hulls for ft

which we call smooth hulls. We choose H/;[9î] as the set of all such

smooth hulls of 91

Throughput, let s — ö (l/e) as defined in the previous section and let t

denote the depth of the subdivision of a square £J0. We also still assume

that |no| < Qsn and thus t — O (logn).

3.4.1. Characteristic Triangles. Our first step is to define a suitable

small sample of the border triangulation. We consider a rectangle 91 that

is subdivided by C into its children ft and ft'. Note that in comparison to

the previous sections we slightly changed the notation. As we will mostlywork with one of the children, it makes the notation more concise if we

call this rectangle 91 Fix any triangulation T and let hi denote the local

hull of ft with respect to T.

Let m = 2rio^('y*)l. We partition both ft and ft' into at most m2 cells

using a regular grid of granularity |9l|/m. Let AI [91] and Af [91] denote

the set of cells in ft and ft', respectively. Wc assume for the moment

that no point of P falls on a boundary of a cell. This will be ensured

later by the choice of Û0- Throughout cj denotes the side length of cells

at level I. One can easily see that q decreases exponentially with l (cf.Proposition 3.39).

Now, consider a tuple (£, ') with £ G M[ft] and £' G Af [91] and let

T(£, <£') := JA g AB(ft, T) : P(A) n £ ± 0 A P(A) n £' ^ $} -

Page 50: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 37

That is, T(£,£') is the set of triangles in Au(9t,T) that have at least

one vertex in each of (T and '. We walk along the line through C from

left to right if C is horizontal and from top to bottom if C is vertical.

From now on we always assume that a separator is oriented in this way.

By Afjrst((t, ') we denote the first triangle of T((£, £') we transverse on

this walk. Similarly, A}dst(£, <£') denotes the last triangle, we transverse.

This is illustrated in Figure 3.4.

C

-I^^^ Ai

^ / £t ^^/ | \ £

::::!^V A ï

^^r<^^

£3 W:!_______ A4^

i f

Figure 3.4. ft is on the right of C. The first and

last triangles are as follows; Ai = Afirst(£, £[), A2 —

AiaatfeCi) - Afirat(e,e'2), A3 - AiMt(e:,^) -

AfirHt(,C:j) and A4 - Alast(e;,^)

Proceeding similarly for all tuples (<£, '), we obtain a set of triangles

Tehar(C,T) := {Afirat(£, £'), Alasl(<£, C) : £ G Af [£*],£' G Af[9l]}

which we call the characteristic triangles of An(C, T). By the definition

of m we immediately obtain

Lemma 3.10. |Tchar(C,T)| = O(log4n).

Proof. The set 7^har(C, T) contains for each pair of cells at most two tri¬

angles. Since there are m2 cells on each side, we have m4 = 24'^°&(st^ =

Ö (log n) pairs. D

Page 51: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

38 Chapter 3. Minimum Weight 'Triangulation

3.4.2. Gaps. Using the same notation as above, we next study funda¬

mental properties of Xviuu. = TC}UU-(C,T). As mentioned above 7^iiai is

in general just some sample of the corresponding border triangulation.

So, we first discuss which portions of the border triangulation are not

contained in Tc\uir.

Let Pcut denote the set of edges that are cut by C and arc sides of

triangles in 7^har or edges of hi. Along C we index the edges in Pcut in

the order in which we transverse them according to the orientation of C

defined above. Let e — Cj and ë ~ ej+i denote two subsequent edgesin Ecui. If both belong to the same triangle in 7^iaI., then the border

triangulation between e and ë is completely described by Tc\mv as it justconsists of this triangle.

Otherwise, the line segment of C bounded by its intersection points with

e and ë is either inside int(T^) or outside. We only miss triangles of the

border triangulation if the line segment is inside of mt(hi). In this case

we say that e and ë defines a gap along C which we denote by V = F(e, ë).The line segment of C which is bounded by e and e is called the window

of Y and denoted by W(T). For example, in Figure 3.4 there is a gap

between the adjacent edges of the triangles A2 and A3.

Between e and ë triangles of Aß (91, T) \ T^har cross the separator C.

Those triangles induce portions <S = S(T,T) and S' — S'(T,T) of

B(ft,T) n ft and B(ft,T) n ft', respectively. Although Tchar providesno edges of S or S', we will derive several properties of both. For the

sake of simplicity we only consider S. Due to symmetry, similar defini¬

tions and statements are straightforward for S'.

Note that there is a region Ri of (3.1) on page 31 such that $ _Wi and

that S is connected. The next lemma states one of the key propertiesof gaps that will subsequently be used to construct the algorithm C

that computes our desired restricted class of local hulls. The lemma

essentially says that while we cannot say anything specific about the

location of gaps (e.g. we cannot guarantee any bound on the number of

points on the missing portions *S and S' nor can we bound their lengths),we nevertheless know that S and Sf are contained within a strip of width

at most 4q (recall that q denotes the side length of a cell £ G M [ft]).

Lemma 3.11. Let V — T(c,ë) denote a gap along C and let S = S(T).Furthermore, let y and y denote the intersection points of C with e and

ë, respectively. There exists a line H with the following properties.

Page 52: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

S.d. Smooth Hulls 39

(1) Either H is orthogonal to C and, contains the barycenter of'W(T)or there are 2 points of P such that H contains those points and

crosses W(T).(2) For all u G P(S) U {y,y} we have d(u,H) < 2q.

(3) Let D denote a line, orthogonal to H that contains y or y such

that, if H JLC the halfspace D~ that contains LI Oft' also contains

either y or y (Fig. 3.5). Then d(u, B) < q for all u G P(S) n B~.

In our proofs we extensively use the existence of lines H and B as givenLemma 3.11. Note that ft C B U B+ if H is orthogonal to C and that

W(r) is contained in B~ otherwise.

.H

Figure 3.5. The choice of the line B.

Before we turn to the proof of Lemma 3.11 we give some intuition whysuch a statement could be true. Let F = F(e,ë), y and y be defined

as above and let p G P(S). As e and ë bound a gap at least one edge

eP — {Pip'} of T \ Pent, incident to p crosses yy. Let p G M [ft] and

£p G Af [91] denote the cells containing p and p', respectively. As the

edges of A/ = Afil.st(ö;p, £p) and A; - Alast(£p, £'p) belong to Pcut, the

Page 53: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

40 Chapter 3. Minimum Weight Triangulation

fact that T is a gap implies that A^ and A/ have to cut C outside of

W(T). In addition, the existence of ep that cuts W(T) implies that A/has to cut C on one side of W(r), while A/ cuts C on the other side of

W(F). Observe also Af and A/ contain edges that have distance at most

\/2q. If we thus choose H as the extension of ep this assures that every

point of S within the "channel" bounded by Af and A/ has distance at

most v2q to H.

The main difficulty of the proof of Lemma 3.11 consists of extendingthis simple argument to points outside of this channel. Essentially, this

is done by choosing p as some sort of extreme point, which allows us

to then argue that in fact there do not exist any points outside of the

channel besides those in p. First, we need two preliminary observations

which wc now state. A line H is called cell-separating if it contains the

left, right, top or bottom boundary of some cell in At[91]. Recall that

wc assumed that no point of P lies on a cell boundary. Hence, we know

that H Pi P = 0 for all cell-separating lines.

Claim 3.12. For every gap T = P(e,ë) the following is true. Let H

denote a cell-separating line orthogonal to C. Moreover, assume there

exist points u G P(S) andv! G P(S') contained in some triangle Axuu' G

Aß (91, T) such that u and u' lie on the same side of H, say u,u' G H+.

Then W(T)_

H+. In particular, W(T) does not cross H.

Proof. Let <£n G M [ft] and 'u G Af[91] denote the cells containing u

resp. u'. Now consider A/ := Afirst(£u,0 and Az := Aiast(£u,0-On the walk along C we first traverse A/, then e, then ë, and finallyA/. Observe that A/ and A/ both contain an edge connecting a pointin (£u with a point in £u. Hence these two edges lie completely in H+,implying that W(Y) Ç PT+. G

Claim 3.13. For every gap Y — T(e,ë) the following is true. Let H

denote a cell-separating line orthogonal to C. Moreover, let u, v G P(S)denote two points such that u G H+ and v G H~. Then H C\ W(T) — 0,i.e., W(T) does not cross H.

Proof. Since S is connected the existence of the two vertices u and v

on different sides of H implies that there exists an edge {x,y} G S

that crosses H. Let x and Cy denote the cells containing x and y,

respectively. Note that this implies that QLX and ,y lie on different sides

of the line, say x C H+ and <ly C H~. By the definition of S wc

know that there exists a triangle Axyz G Aß(9t, T) crossing W(T) such

Page 54: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.1. Smooth Hulls 41

that z G 91. Now observe that regardless whether z G H+ or z G H~

we always have a situation to which Claim 3.12 applies. Hence Vl(r)caunot cross H. D

Proof of Lemma 3.11. First wc fix some notation. Without loss of gen¬

erality, we assume that C is horizontal. For all points u G P(S) let <£udenote the cell that contains u. Furthermore, let eu denote an arbitrarybut fixed edge with endpoint u that crosses W(T) and that belongs to a

triangle in Aß (91, T).

Next we choose a specific point p G P(S) such that the cell <£p satisfies

some extremal property. For each cell £u containing at least one pointfrom P(S) consider the line orthogonal to C through the barycenter of

Cu. Choose p such that the crossing point of the aforesaid line with

C has maximum distance to Il(r). That is, p belongs to the right-or left-most cells. If there are several candidates for p, then wc choose

among all candidates the point p that has maximum distance to C.

Without loss of generality, we henceforth assume that Cp is among the

leftmost cells. Let T and V denote the lines through the upper and right

boundary of £p and assume that <£p C V~ n T~. Note that the choice

of p implies that (V~ PI T~) \ £p contains no point of P(S).

Now consider the edge ep. It has an endvertex in some cell Ç! G At [91].Let Ai = Afirst(£p,£p) and A2 = A\&tit((Ep,'p). Let si and s2 denote

sides of Ai and A2 that have one endpoint in <tp and the other in <£'.

We denote by X\ and x2 the endpoints of s\ and s2 in 91 and by y\ and

7/2 the intersection points of s\ and s2 with C.

Let Q denote the quadrilateral spanned by x\, x2, y y and y2 (Figure 3.6).Moreover, let Z denote the line through both x-\ and x2. By convention

let Z+ denote the halfspace that contains s-\ and s2. Note that the line

segment of C bounded by y\ and y2 contains Vl(r) as si and s2 belong-to Peut, cf. the definition on page 38. Hence, (Z+ U Z) \ Q cannot

contain any point u G P(S), as for such a point its edge eu would need

to intersect S]_ or s2, which is not possible. Observe also that for the

same reason all points u G Z~ n P(S) have the property that the edge

eu must cross the line segment x^x2 that connects x\ and x2.

Now we choose the desired line H. If there is a line orthogonal to C which

separates <£p and <t then we choose H as the line through ep. Otherwise,we choose II orthogonal to C such that H contains the barycentcr of

W(T).

Page 55: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

42 Chapter 3. Minimum Weight Triangulation

C

Figure 3.6

Observe that in the latter case the choice of p implies that all cells

that contain a point from P(S) lie in the same column as the cell £p.Thus, all points u G P(S) have distance at most q from H. Hence, (1)and (2) hold. In addition (3) trivially holds as B~ D ft is empty In the

remainder of the proof we therefore assume that the first case applies.

As the endpoints of ,si and s2 are contained in the same cells <£p and <t'p,we know that the maximum distance between sy and s2 is at most 2q.

As by definition of H all points in Q lie between si and s2l we triviallyhave that all points u G P(S)OQ satisfy d(u, H) < \/2q < 2c/. Since byconstruction {y,y\ C Q, we also have d(y,H) < 2q and d(y,H) < 2q.

So consider a point u 0 Q. As shown above, we know that u G Z~ and

that eu crosses x\x2. If u G p, then d(u, H) < 2q follows as H contains

a point from tp. If not, then ((V~ 0 T~) \ £p) n P(S) = 0 implies that

either u G Z~ D T+ or u G Z~ C\ V^. We will now show that both cases

do not occur. The first case is not possible as we know that eu must

cross X\X2 and C which would imply that eu has to cross T twice. In the

second case Claim 3.13 implies that W(r) lies completely to the left or

completely to the right of V. If it would lie on the left, then this would

contradict the choice of p as we have points of P(S) in V+ and as V is

The constaiita occurring in Lemma 3.11 are not crucial to our analysis. For this

reason wc prefer "nice" constants.

Page 56: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls IS

cell-separating. If it lies on the right, then this implies that eu would

need to cross V twice: once in order to cross x\x2 and a second time in

order to cross V1(F). This yields claims (1) and (2) of Lemma 3.11.

It remains to prove claim (3). Recall that, y is to the left of y. Observe

that the assumption that (£p is among the leftmost cells implies that

y G B.

Let u G P(S) PI B~ be a point that has maximum distance to B (if nosuch point exists, then there is nothing to show). Now we consider three

lines orthogonal to C: the line V that contains the right boundary of

£p, a line Y through y, and a line U through the left boundary of (£u.

Recall that V" denotes the halfspace that contains p and thus also the

point p. With Y+ we denote the half space that contains y, with U+ we

denote the half space that contains u and thus also the cell £u.

Recall that we know that the window W(F) is contained in V+, thus Y

is to the right of V. Recall also that all points from P(S) are contained

in £p U Q. Note that u G B~ implies that u G Y+.

Figure 3.7

Page 57: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

44 Chapter 3. Minimum Weight Triangulation

If U is to the left of Y or U = Y then by considering a horizontal line

through u we observe that d(u,B) < d(u,Y) < d(u,U) < ci, so the

claim of the lemma holds. In the remainder of the proof wc therefore

assume that Y is to the left of U. Note that this implies that y G U~

and p G U~, while u G U+. Hence, Claim 3.13 together with the fact

that y G U~ implies that also y G U~. The arrangement of V, Y, U,and W(Y) is thus as shown in Figure 3.7.

As P(S) cQUÎp, <£p C V~ and u G t/"1 C V{', we have u G Q. Observe

that this implies that s2, the right boundary of Q, has to cut C within

U+. Hence, we know that £'p is contained in U+. Observe that this

implies that ep intersects all three lines V, Y and U. Recall that H is

the line through ep. Denote by H+ the half space that contains y.

Now consider the edge eu. As u is in H+ and eu has to cut W(Y) but

not ep we deduce that the other endpoint of eu is contained in H+ HY+.

Next consider the two cells <tu and <£'u containing the endpoints of eu and

the triangle Afirst(<£u, (£^). Note that (£^ C V+, as F is cell-separatingand 'u n y+ 7^ 0. Applying arguments similar to the ones we just used

for eu to the edge s'u of A[\rsi(^tu, <t'u) that connects a point in <tu to a

point in (£'u, we deduce that s'u has to cut C to the right of H D C. On

the other hand s^ fl C has to be to the left of eu D C, as s'u belongs to

Afirst(£w,^). That is, s'u D C is contained in fl(r). As s^ belongs to

Pcut, this contradicts the fact that Y = Y(e, ë) is a gap.

3.4.3. The Skeleton. So far we have studied properties of a gap with

respect to a given triangulation. Within our algorithmic framework we

need to proceed in the opposite way. We construct a local hull for ft

based on the local hull of the parent and a given set of characteristic

triangles along C. Note that the characteristic triangles do not specifythe local hull completely. So we also need a rule how to fill for each gap

the "missing" part, S of the local hull.

Given a gap Y — Y(e,ë), the most straightforward "guess" for S is a

convex polyline. However, this is not sufficient for our purposes. So

we will provide a set of points K, called a skeleton, that has at most

logarithmic size and is dense enough to describe S reasonably precisely.

By Lemma 3.11 we know that there exists a line H such that the pointson S are enclosed within a very narrow strip around H. However, we

have no information about the behavior of S "along" H. Our approach is

to sample K from S along H in steps of roughly size q. This is explainedin detail in Section 3.5. In this section we first collect some properties

Page 58: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 45

that a skeleton should have. Note that our aim is to define a skeleton

with respect to a given gap Y and the point set P f] ft, but not with

respect to a triangulation.

Let T = r(e, e) denote a gap and let x, x, y, and y be defined as above.

Moreover, let H denote an arbitrarily chosen line such that H is either

the line orthogonal to C through the barycentcr of W(Y) or some line

through two points of P that intersects with Vl(r) in exactly one point.We construct the line B as on page 39, that is, B is orthogonal to H and

contains y or y. Furthermore, we assume that the halfspaces B~ and

B+ are oriented as explained on page 39. Throughout this section Bpdenotes the line parallel to B such that p G Bp if p G B+ and Bp = B

otherwise. The halfspace of Bp containing B~ is denoted by B~. A

skeleton is a subset K of P D ft that satisfies certain properties. In fact,wc will usually view K as a disjoint union of three sets

K = {p}üK+öK-,

where p is a sort of extreme point and K+ and K~~ define the two flanks

of the skeleton, cf. Figure 3.8 on page 47. A set K — {p} i±l K+ l±J K" is

called a skeleton, if it satisfies the following four properties:

(PI) If there are points of K in B~ then p G K is the point in B~ which

has maximum distance to B. Otherwise p has minimum distance

to B.

(P2) xE K+, £ GK, P+HK+ =0 and B± n K~ -0.

(P3) |K+nP"| < 1 and |K"nP-| < 1.

(P4) For all p, q G K+ (p, q G K~), p ^ q we have d(Bp, Bq) > q.

The intuition behind those properties is quite simple. (PI) basicallystates that p is the point in K that is "closest" to Il(r), where closeness

is measured with respect to the hyperplane B. Property (P2) says that

the two endpoints of the edges which define the gap Y have to belong to

K+ respectively K~ and that all other points have to be closer to fl(r),where closeness is again measured with respect to P. In the sections to

come the points in B~~ Oft will always play some special role. Property

(P3) simply says that K+ and K~ both contain at most one such special

point. Finally, property (P4) says that the points in K+ and K~ should

be reasonably scattered along H.

Our next step is to define the notion of a feasible skeleton, which has

the property that it uniquely defines as "standardized" hull segment.In order to characterize a feasible skeleton we first define a polyline

Page 59: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

46 Chapter 3. Minimum Weight 'Triangulation

($~ _ ^^(p^K) that, connects x with x via the points in K. As we

will define S~ as a union of piecewise convex segments we refer to $~

as a convex continuation (of the points in K). Assume that the pointsin K+ U {p} and K~ U {p\ are ordered by increasing distance to Bx

and Bj;, respectively. Henceforth we write p -» q if p,q G K+ U {p}(p,q E K~ U {p}) are consecutive in this order.

We construct S~ piecewise as follows. For p, q E K+, p^q, consider the

(open) region Dpq that is bounded by e, the line segment pq, Bp and Bq.Wc let

S- \p, q] - P(conv((P n Dpq) U {p, q})) \ {p, q}.

By definition, a convex continuation S~[p, q] is a collection of edges on

the point set P that form a non-intersecting path. From a geometrical

point of view, we can consider <S~ [p, q] also as a convex straight-line

polyline in the plane which separates all points of P that lie in the

region Dpq from e. Observe that we add the two points p and q to the

points in the open region Dpq in order to guarantee that the line segment

pq will be one side of the constructed convex hull. If p, q E K~, then

S~[p,q] is defined similarly; we just replace the edge e by the edge ë in

the above definitions.

In the special case q E B~, we have by construction P(S~[p, q]) flB~ =

{q}. Therefore $~ [p, q] does not contain any points (besides q) within the

strip enclosed by B and the line parallel to B through q. Indeed, such

points will be enclosed in the "topmost" convex continuation $~[q,p]which we construct next. Let q -> p where q G K+ U K~. Assume

that q E K+; the case q G K~ is again symmetric. This time we let

Dqp denote the open region bounded by C, e, qp, Bq, the shortest line

segment connectingp to 11(F) and (if q E B~) by S~[p, q], where p E K+

such that p^q. (Recall that if q G B~ then q ^ Bq. We thus need the

segment S^\p, q] in order to guarantee that Dqp is a finite region.) As

before we let

S-[q,p] = P(conv((P fl Dqp) U {q,p})) \ {q,p}.

The convex continuation S~ is defined as the union of these pieces, that

is

S~= (J S~\p,q].p,qeK-:p->q

This definition is illustrated in Figure 3.8. Intuitively, S~ consists of

convex segments that connect two subsequent points in K such that p

Page 60: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 47

can be seen as the "peak" of <5>~. Let po E K+ and qo G K such that

po-fP and qo^p. Observe that

(3.3) S~ : = S~ [po, q0] - S~ [p0, p] U <S~ [p, go]

is a convex polyline, since p is an extreme point (cf. Proposition 3.20).

y W(Y)

Bx

B

Pp4 — B

P3

P2

BPL

Bx

Figure 3.8. S~ restricted to the portion defined byK+ (solid lines). The polygonal region D(S~) is shaded.

Throughout D(S~) denotes the region bounded by «S~, e, ë and W(Y).For a feasible skeleton we require that this region exists (cf. property (P5)below). Note that we view D(S~) as an open region. In particular it

therefore contains no points from P($~). A skeleton K is said to be

feasible if it satisfies the following four properties:

(P5) $~ is neither self-intersecting nor intersects with e or ë.

(P6) The polygonal region D(S~) does not contain points of P.

(P7) Let p, q G K \ {p} such that p -> q. Let Xq and Yq denote the

lines through q that are parallel to C and orthogonal, respectively.Let X~ denote the halfspace of Xq containing W(Y) and let 7; G

X~ fl P(S~[p, q]) such that d(v,Xq) is maximum. If v ^ {p,q}then d(Bv,Bq) > q (Fig. 3.9). Similarly, if W(Y) 0 Yq - 0 the

following is true. Let Y~ denote the halfspace containing W(Y)and let v G Y~ Pi P(S~[p,q]) such that d(v,Yq) is maximum. If

v g {p, q] then d(Bv,Bq) > q.

Page 61: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

48 Chapter 3. Minimum Weight Triangulation

(P8) For all u E P(S~) there is an edge {u,w} connecting u and some

w E W(Y) such that uw C D($~). In specific \u,w} crosses neither

$~ nor e and ë.

Too get some intuition for the last condition observe that whenever we

consider the segment S = S(Y) defined by an underlying triangulation,then every edge of *S is contained in a triangle that crosses W(Y). In

particular, S satisfies property (P8) and we require that <S does so, too.

We close this subsection with the observation that any skeleton contains

at most logarithmically many points.

LEMMA 3.14. For fixed s G N, a skeleton K satisfies |K| = Ö (\ogn).

Proof. The points in K+ have, measured along H, minimum distance

q. Since q = |9t|/m and m — O (logn), K+ contains at most Ö (logn)points. Of course, the same is true for K~. D

y v^(r) y

Q

p

Yq

Figure 3.9. Since v is in X~ and v ^ {p,q}, we have

d(BVlBq) > C[. Yq cuts LF(r), so we have no further

restrictions.

3.4.4. Smooth Hulls and Triangulations. A triangulation T patchesa gap Y smoothly, if and only if there exist hyperplanes H and H' through

Page 62: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 49

W(Y) and feasible skeletons K = K(Y, H) and K' - K'(r, H') such that

S(Y,T) =S~(r,K) and S'(Y,T) = S~(r,K').

Similarly, a local hull of a rectangle ft is called smooth, if all gaps are

patched smoothly and if the hull of its parent 91 is either smooth or

identical to conv(P). Finally, T is said to be smooth with respect to Ù0

if and only if every rectangle has a smooth local hull.

3.4.5. The Algorithm C. Our next goal is to construct a quasi-poly¬

nomial time algorithm C that generates for all ft a set of hulls H/; [ft]such that H/;[9V| contains all smooth hulls of ft.

We initialize H£[£}0] = {conv(P)} and proceed top-down in the sense

of Lemma 3.4. So assume we already have computed H£[9t] and that C

subdivides ft into ft and ft'. We compute H£[9l] as follows.

(1) For each hi E tic[ft] enumerate all crossing-free sets Tc_ar of char¬

acteristic triangles.

(2) For all such choices of hi and Tc\mr, compute all gaps, say Fi,..., Yr.

For each gap T;, choose a line Hi and a feasible skeleton K,;. Enu¬

merate all such choices.

(3) For each such choice [(Pi, Kt ),..., (Hr,Kr)], we compute hi as

follows. Check whether the convex continuations <S~(Ki) are pair-

wise disjoint. If yes, combine them with hi H ft and the sides of

triangles in T^ar that are contained in ft. This yields hi which we

add to H_[ft}.

Note that wc did not show yet that this algorithm produces any output,

as it is not clear whether a feasible skeleton always exist. Indeed, this

will be (implicitly) shown in Section 3.6. Now, wc demonstrate that the

number of local hulls produced by £ is small. The following property of

the algorithm is crucial to our analysis.

LEMMA 3.15. For fixed s G N the number of gaps in step (2) is Ö (log n).

The proof of this lemma is quite elaborate and is therefore deferred to

Section 3.4.6.

Lemma 3.16. H£,[9^] contains all smooth hulls of ft and for fixed s E N;

|H£[£H]| < n°(log8n). Moreover, the family (H._[ft])fR can be computed

in faen°(lüg8").

Page 63: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

50 Chapter 3. Minimum Weight Triangulation

L'roof. By construction of the algorithm £, it is immediate that H£[9l]contains all smooth hulls and that the complexity of C is polynomial in

maxjK |H£[9^]|. According to Lemma 3.15 we have at most Ö (log'?ï)gaps along C. For each gap we have to choose an H and a skeleton K.

Note that there are at most Q) +1 choices for II, as H has to contain two

points from the given point set P or H contains the barycenter of W(Y)and is orthogonal to H

.Once the line is fixed we have at most n0(logn>

different feasible skeletons, as every skeleton contains at most Ö (logn)

points, cf. Lemma 3.14. Thus, we have in total n v °8 n) possibilitiesto chose the lines and feasible skeletons in step (2). Let

hi = max |H£[9ll|.£«:lev(îR)=i

As we enumerate in step (1) all hulls in H£[9v] and all choices of char¬

acteristic triangles, we obtain

hi < hi-i • #(choices of characteristic triangles) • n (og nK

By Lemma 3.10 the border triangulation consists of Ö (log n) triangles

for each of which we have Ö (n3) choices. That is, we have

as / < t — Ö (logn). This completes the proof. D

3.4.6. Bounding the Number of Gaps. We now turn to the proof

of Lemma 3.15. Let C subdivide ft into ft and ft'. Let <p(ft) —

{Cq, ... ,Ci = C} and let Q,0 = ft-i, fto,... fti-i = ft denote the ances¬

tors of 91. So, in particular ft has level /. Note that the definition of

the algorithm C implies that ht G H£[9t] is constructed iteratively over

a sequence of hulls

conv(P) = ft_i — Wo —> —* Ux-2 —> Hi-i = H,

where Hi G H£[9\^]. In order to produce hit from hii-i, the algorithm C

chooses a set of characteristic triangles T^, computes the gaps Gi along

Ci and finally chooses for each Y E Gi & line H and a feasible skeleton K

for which it computes the convex continuation tS~(F,K). For the sake

of brevity, we throughout use <S^(r) = 5^(F,K) to denote the convex

continuation the algorithm computes for the gap Y. Wc obtain

i i

(3.4) Hi Ç conv(P) U \J [j E(A) U |J IJ S~^-

Page 64: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 51

Observe that the number of gaps along C is bounded by |T/| and the

number of intersections of H and C, that is,

(3.5) #(gaps along C) < |Tj| + #(intersections of H and C).

As |Tq| — Ö (log4 n) due to Lemma 3.10, it thus suffices to show that

(3.6) #(intersections of H and C) — O (log n) .

Observe that by using (3.4) for Hi-\ = H it suffices to bound the number

of cuts of C with conv(P) (which is at most 2), the number of cuts of

C with edges in triangles from IjTfc (which is at most 2_~^}._{) |1V| <

l-O (log4 n) = Ö (log5 n) due to Lemma 3.10 and I < t = Ö (logn)), and

the number of cuts of C with edges in <S~(r) for F G Ufc=o ^k' Hcnce7it suffices to show that

i-i

(3.7) |{e G (J (J S~(Y) : e n C / 0 and e G 7Î}| = O (log6 n) .

/c=ore<Gfc

For technical reasons which will become clear later it is convenient to

henceforth consider C as an (infinite) line (with halfspaces C+ and C~)instead of a line segment that subdivides ft. In order to show (3.7) we

need the notion of pseudo-convexity of a gap F G Gk (which is defined

with respect to a separator Ck) with respect to the line C. To define it,

consider a gap F G Gk, 0 < k < I, and let x and x denote the endpoints

ofS~(r).

Observation 3.17. The number of intersections ofS~(T) and C is odd

if and only if C separates x and x.

If C separates x and x then we say that Y (or more precisely <S~(r))is pseudo-convex if C cuts *S^(r) exactly once. If x,x lie on the same

side of C and the window fF(r) lies on the other side of C, then F is

pseudo-convex if C cuts e>^(r) exactly twice. Intuitively speaking, a

pseudo-convex S~(Y) behaves with respect to C like a convex segment.

Note, however, that not all gaps that behave this way are called pseudo-

convex, as T will never be pseudo-convex if C intersects with VF(F) or

if x, x and W(V) are all contained in the same halfspace of C. Havingthis definition at hand we see that it suffices to prove the following two

lemmas in order to conclude that (3.7) holds.

Page 65: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

52 Chapter 3. Minimum Weight Triangulation

Lemma 3.18. In the notation from above we have

\{e G [J [J S~(r) :enCjL 0}| - O (log3 n) .

P A/, O t pS (i'li.do - (tO'l ! V (i.'J,

Lemma 3.19. In the notation from, above we have

i-i

\{e G (J IJ S~(T) : e H C ^ 0 and eE'H}\=0 (log0 n) .

/c=0 TfcGfcrp.s endo-conweaj

Note that in Lemma 3.18 we dropped the requirement that e G H. This

will ease the proof and will also be useful in the proof of Lemma 3.19

where we use Lemma 3.18.

In the remainder of this section we prove Lemma 3.18 and 3.19. We will

assume throughout without loss of generality that C is horizontal and

that C~ denotes the half space above C. Recall that from a geometrical

point of view, we can consider S~{Y) also as a straight-line polygon in

the plane. This view will come in handy a couple of times on the next

pages. In particular, we use S~(Y) D C to denote the set of intersection

points of C and S~(Y). For two points x,y E S~(Y) (not necessarily

belonging to the underlying point set) we denote by «S^fa;, y] the part of

<S~(r) that connects x and y.

For the proof of Lemma 3.18 it is convenient to start with collecting a

few fundamental observations about gaps. In the following let F G G&,0 < k < I, and let <S"" — S~(Y). Furthermore let x and x denote start

and end point of <S~, let K denote the skeleton of Y and let p denote the

extreme point in K. Recall that the notion p -» q means that p in the

immediate predecessor of q (with respect to the points of K).

Proposition 3.20. Letp,q G K\p such that either p^q or bothp^pand q-+p and assume that W(Y) C C-. Then the following is true:

(1) If C separates p and q then \S~[p,q] n C\ E {0,1}.(2) Ifp,qEC+ then \S~\p,q}nC\ E {0,2}.(3) Ifp,qe C~ then \S~[p,q]nC\ = 0.

Proof. (1) and (2) follow immediately from the convexity of <S~[p, q] and

equation (3.3) on page 47. In other words, S~[p,q] is convex and thus

intersects with C never, once or twice depending on the relative positionof p, q and C. So it remains to show (3). Note that there exist (nonecessarily different) maximal regions Rw, Rp and Rq in D(S~) fl C"~

Page 66: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 53

such that W(Y) Ç c)Rw, P £ c)Rp and q E 3Rp. (P8) requires for

both p and q the existence of a line segment that connects the point to

VF(r) and is contained in D(S~). If Rw i« disjoint to Rp or Rq such

a line segment does not exist, as it would cross C twice. Thus we have

Rp = Rq = Rw- In particular there exists a path in D(S^) f) C~ from p

to q. This path has to cross L fl D(S~) for every line L through the line

segment bounded by the two points in S^[p, q] n C (Fig. 3.10). Assume

that claim (3) docs not hold and thus $~ [p, q] crosses C. Then it is

possible to choose L such that L D D(S~) C C+, every path connecting

p and q transverses C+. Hence, we would have Rp 7^ Rq, contradictingthe observation from above. G

Figure 3.10. Every path connecting p and q in D(Srhas to transverse C+ and thus Rp 7^ Rq.

PROPOSITION 3.21. For every point z E $~[x,x] there exists a line seg¬

ment sz c D(S~) which connects z to some point in the window W(Y).

Proof. For points z E P this immediately follows from property (P8).For points z 0 P this follows by considering (P8) for the two points u

and v from P that immediately proceed resp. follow z on S~. D

PROPOSITION 3.22. // VF(r) n C = 0 and Y is not pseudo-convex then

S~OC 7^ 0 implies that there exists apo G K\{p} such that C separates

po and W(Y) and such that C intersects both of S~[x,po] and <S~[po,£]at least once.

Page 67: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

54 Chapter 3. Minimum Weight Triangulation

Proof. Without loss of generality we assume that VF(r) C C~. Startingin x we walk along S^ and denote by a\, a2,... the intersection pointsof S~ with C in the order in which we meet them. Observe that if

x G C~ then S~[a2l ua2l\ Ç C U C+ for all ? > 1, while x E C+

implies that S~[a2l,a2l+i] CCU C+ for all i > 1. We claim that this

observation implies that there exists points n, v G S~ D C such that

$~[u, v] n C — {u, v) and S~[u, v] Ç C U C+. Indeed, this is clearly the

case of if S~ intersects C at least three times as we can cither choose

u — a\ and v = a2 or u = a2 and 7;—

0,3 depending on whether x G C~

or x E C+. If on the other hand <S~ intersects C at most two times then

the assumption that Y is not pseudo-convex implies that <S~ intersects

C exactly twice and that x, x E C~. In this case we can therefore choose

u — ai and v ~ a2.

\ u v /_

V r/ (J

FIGURE 3.11. Sketch to the proof of Proposition 3.22.

IîS~[u,v] contains a point po G K\{p} thenp0 G C+ and the propositionholds by choice of u and v. We now argue that in fact <S~ [77,, 7;] alwayscontains such a point po- Assume not. Let p G K \ {p} such that p is

the last such point preceding u. Similarly, let q G K \ {p} such that

q is the first such point succeeding v, cf. Figure 3.11. Then the non

existence of po implies that P(S~[p,q]) nKÇ {p,q,p}. Note that p->p

and q^p if p G P(S~\p,q\) n K. By (1) and (2) of Proposition 3.20

we thus deduce that S~[p,q] is cut by C at most twice and thus, due to

the existence of u and v, exactly twice. Hence, we know that p,q E C~,which contradicts (3) of Proposition 3.20, which says that in this case

S~ [p, q] and C do not intersect at all. D

Proof of Lemma 3.18. Recall that we assumed that C is horizontal and

that C~ is the halfspace above C. Let

NGfc — {r G Gk : C cuts <S^(r) and Y not pseudo-convex} .

Page 68: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 55

Note that for any Y E NC/,, wc trivially have

|{e G S~(T) : e n C ^ 0}| < 2(|K(r)| - 1),

as for any subsequent p,q E K(r) wc know that S~\j>,q] is convex and

thus \S~[p,q] n C\ < 2. As |K(F)| = O (logn) we thus get

i-\ i-i

\{ee (J |J 5~(r):enC^0}|<C?(logn)-5^|NGfc|.fc=0 recfc ^^0

rnot pseudo-convex

As / < log n it thus suffices to show

|NGfc| = O (logn) for all k G {1,... ,1 - 1}

in order to complete the proof of the lemma. This is what wc will show

now. Fix a,k E {1,... ,1 — 1} arbitrarily. Observe first that NG& contains

at most one Y such that W(Y) n C / 0. (This follows as IF^F) c Cfcand as the W(Y) are pairwise disjoint for different Y in NG&.) That is,

by denoting

ngt; := {r G NGfc : W(Y) Ç C~}

and

NG^ := {r G NGfc : LF(r) Ç C+}

we deduce that |NGfc| < 1 + |NG7"| + |NG^| and by symmetry (notethat we have not yet made any assumptions on the relative positions of

Ck and C) it thus suffices to show that |NG7~| = Ö (logn). In order to

do this we first collect some properties that elements Y G NG^" satisfy.

In the following let Y denote an arbitrary element from NG^. When¬

ever there are no ambiguities, let «S~ — $~(Y) and denote by x and x

the start and endpoint of S~. Furthermore, let H and B denote the

lines associated to Y, let K denote its skeleton and let p denote the

corresponding extreme point in K. By Proposition 3.22 we know that

there exists a point p() G C+ such that C intersects both of S~[x,po]and S~\po,x]. Let z and z denote the corresponding intersection pointswhich are closest to p0. Assume without loss of generality that x and x

were chosen in such a way that z lies to the left of z, cf. Figure 3.12.

We now partition NG^ according to the position of p, namely whether

p lies on S~[x,p0] or on <S~[po, x]. Let

ngt;' := {r g ngt; : f> e s~[x,Po]}

and

nG^:={YENG^:pES~[po,x}}

Page 69: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

56 Chapter 3. Minimum Weight Triangidation

and observe that due to symmetry it suffices to show that \HGk \ —

(9 (log?/). In the sequel we therefore assume that Y E NGfc .Observe

that we may assume without loss of generality that po was chosen in

such a way that S~[po,z] contains no other point from K.

We claim that there is a point v E C~~ on <S~ [po, x] such that d(BIH), Bv) >

Ck To see this consider the first point q G K that is reached by travers¬

ing S^[z,x] from z towards x. If g G C~ then property (P4) guaranteesthat we can take v = q. If on the other hand q G C+ then property (P7)implies that $~[q,po] contains the desired point v; this is true as C is

parallel to either Xpo or Ypo.

Let a and b denote the intersection points of C with BPQ and Bv, respec¬

tively. Note that by the choice of v we have d(a,b) > d(BPo,Bv) > Ck-

Note also that v cannot lie in B~~ as otherwise po would also be con¬

tained in 5" implying that Bv — BPo ~ B which contradicts the fact

that d(Bv,Bpo) > Ck- Hence v E B+ and wc therefore know that Bv is

the hyperplanc parallel to B through v. The hyperplane Bpn on the other

hand either contains po or is shifted slightly towards Bv. We continue

by stating three observations.

Firstly, b is to the right of z. Indeed, let q E K such that q^po. Then

v lies on <S~ [p, q], and the convexity «S~ [p, q] of implies that z G B~.

Secondly, z is to the left of a, i.e., z E Pp~ for the following reasons.

By Proposition 3.21 wc know that po can be connected to W(Y) by a

straight-line segment that lies in D — D(S~). Thus, this straight-linesegment crosses zz and contains neither z nor z. If z E P+0 U B this is

no possible as both p0 and W(Y) are contained in B~() U B. If p0 G B+

we could also deduce that a is to the left of z. However, this is not

necessarily true if p0 G P~, as then BPo — B is shifted towards Bv.

Finally, due to Proposition 3.21 we also know that z and z are both con¬

nected by straight-line segments sz and sz to (not necessarily identical)points in W = W(Y) such that sz and sz are completely contained in

D = D{S~). This is also depicted in Figure 3.12.

Now consider another element Y' E NG^ and let S~\ W', B', p0, z',z', etc. denote the corresponding parameters of Y'. As the regions D

and D' = D(S~') are disjoint it follows that the line-segments sz, sz

belonging to F cannot cross any of the line segments s'z, s~ belongingto r'. As all four lines connect points from C to points on Ck and as

sz n Ck, s~z n Cu E W, while s'z n Ck, s'~ n Ck e W' and as W D W' = 0

we deduce that this crossing-freeness implies that the point z, z, z', z' are

Page 70: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 57

ordered in such a way that cither z and z lie both to the left of z' (andhence of z') or both lie to the right of z'. Note that this in turn impliesthat if z, z lie to the left of z', z! then W lies to the left of W' or below

of W depending on whether Ck is horizontal or vertical.

Assume that z, z, z', z' appear in this order on C from left to right. We

claim that this implies that either the right (upper) endpoints of W and

W have distance at least Ck or that z and z' have distance at least Ck-

To see this observe that, by definition, we know that W Ç B~ Ç B~Q.Hence, either W' C\ P+ = 0 or the right (upper) end points of W and

W behave as claimed due to our assumption that d(BP(),Bv) > Ck- So

assume that W n P+ = 0, that is, W' Ç B~. But then z' cannot be

contained in the line segment of C connecting z with b, as otherwise the

line s'z connecting z' with a point in W' would need to intersect S~[z, v](cf. Figure 3.12) which is not possible due to the disjointness of D and

D'. Thus, the distance between z and z' is at least Ck-

Figure 3.12. Sketch to the proof of Lemma 3.18.

Hence, by traversing all gaps in NGr/ from left to right according to the

position of their point z on C, we know that the right (upper) endpointof their corresponding windows move monotonously to the right (if Ck is

Page 71: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

58 Chapter 3. Minimum Weight Triangulation

horizontal) or upwards (if Ck is vertical) and that we always have a jumpof at least Ck either between the 2-poinfs or between the right (upper)endpoint of the window. As the windows move along the line segment

OfcH^A; a jump of size Ck can take place at most \CkP\9\k\/ck — O (log??-)times. Similarly, the ,2-points move along the line segment C D 91& and

a jump of size Ck can thus take place at most \C f) 9ik\/c-k = O (log77)times. Hence, we have |NG^T | — Ö (logn), which completes the proof of

the lemma. D

It remains to prove Lemma 3.19.

Proof of Lemma 3.19. The main idea behind this proof is to bound the

number of cuts of C with gaps Y for which S~ (Y) is pseudo-convex in

terms of the number of characteristic triangles plus the number of cuts

of C with gaps Y for which «S~(r) is not pseudo-convex. We show this

by induction. Let

i

Ai:={enC:eE{J (J <S~(r) and e G Hi}k=o reGfc

r pseudo-convex

and

i

Bi := {e H C : e G conv(P) U |J E(Tk) U (J S~{Y)}.k=a re<S/o

r not pseudo-convex

Then |A/_i| is the quantity we need to bound. We will show

\Ai\ < 2(z + l)\Bi\ for all -1 < i < I - 1.

Since / < t = Ö (logn) and |Bj-i| = Ö (log5 n) by Lemma 3.10 and

Lemma 3.18, this thus concludes the proof of Lemma 3.19.

By definition, the sets Ai and B% consist of points on the line C. Note

that all points in Ai lie on H% whereas this is not necessarily the case for

points in Bi. This distinction will be used heavily later on.

Assume that the points in B,t are indexed in the order in which they

appear along C from left to right. Moreover, let L,j,(j) C Ai denote the

set of points in A% that lie on the line segment bjbj+i. We will in fact

prove by induction on i that

\Li(j)\ <2(?; + l) foraUj = l,...,|Bi|-l,

Page 72: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.4. Smooth Hulls 59

which clearly implies that, \A,\ < 2(i + 1)|PJ. (Note that all points of

Az are contained in some line segment, as by definition Bz contains the

two intersect,ion points of conv(P) with C.)

The case i — —1 is easily seen to be true, as in this case A_-\ = 0. So

assume the claim holds for some i — 1, 0 < i < I — 2. We show that it

then also holds for i.

Consider a point z' E Ai \ Ai-i that lies on the line segment bjbj+\.We will show that we can either find a point from that Ai-i \ At that,

informally speaking, makes room for z' on the line bjbj+\ or z' is one

of at most two points that will be added to this line segment without

compensation.

Let <S~(r) denote the convex continuation to which z' belongs, where

T = r(e, e) is the corresponding gap along CV Let S~ = S~(Y) with

start and endpoint x E e and x E ë. As Y is pseudo-convex we know

that W(F) and at least one of a: and x are separated by C. Furthermore

we know that if x and x are separated by C then S~(Y) is cut only once,

while if x and x lie on the same side of C then <S~(r) is cut exactly twice.

Hence, we may assume without loss of generality that the intersection

point z of e and C exists and that the line segment z'z contains not other

intersection point, of 5~(F) with C. This is illustrated in Figure 3.13.

As by construction both z' and z lie on dD(S~) and, as we just observed,the line segment z'z contains no other point from dD(S~), we know that

in fact z'z c D(S~). Observe also that, by definition of a gap, we have

that

(3.8) D(S~) Ç int(^_i) Ç ... Ç int(ft-i).

Note that this implies that z'z cannot, contain any point from Ai-\\JBi-\

as such a, point would belong to an edge of some Hk, 1 < k < i — 1,

contradicting (3.8). By the definition of a gap we know that the edgee either belongs to H%-\ or to a characteristic triangle from IV Usingequation (3.4) from page 50 we can thus conclude that z belongs to A{-i

or to Bi. Observe also that z lies on an edge e that defines a gap alongC% and thus does not belong to H%. Thus z cannot belong to Ai.

Summarizing these observations, we see that wc can assign to every

point, z' E Ai\A,..]_ a point cp(z') G (^-i \ Ai) U Bt such that the

line segment z'cp(z') contains no other point from ylt.| U P,_i and is

contained in D(S~) for some gap F along G\. As the regions D(-) are

Page 73: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

60 Chapter 3. Minimum Weight Triangulation

pairwise disjoint for different, gaps along G\, we deduce that this mapping

(J) is fact injective.

G\

C

Hi

Figure 3.13. We leave area (Hi) if we walk from z' to

the left. The next intersection point z is on e. Note that

the window W(r) is drawn diagonally in order to indi¬

cate that the same argument applies regardless whether

Ci is horizontal or vertical.

Now consider a line segment bjbj+i. We need to show that it contains at

most 2(7 + 1) points from Ai. As Bi_

Pi-i the induction assumption

implies that it contains at most 2?; points from A7;-i- Now consider the

points in z' G Ai \ A;„i on b3bj+\ and their images <f>(z'). Observe that

the fact that <f>(z')z' contains no point from Bz implies that the images

4>(z') are also contained within bjbj+\. Hence, we can have at most two

points that are mapped to points in Bim. one to bj and one to bJ+i. All

other point, from A-L \ A.[_ \ are mapped to pairwise different points from

A;_i \ Ai, which compensate for them. Thus, the number of points on

bjbj+i can increase by at most two. This completes the proof of the

lemma. D

3.5. The Smoothing Lemma

Our QPTAS computes an almost optimal smooth triangulation. In order

to show that this also approximates an optimum triangulation, we will

show in the next section how to change a general triangulation into a

smooth triangulation without much increase in length. In this section we

Page 74: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.5. 4hc Smoothing Lemma 61

introduce a technical statement needed for this transformation, the so-

called Smoothing Lemma. Consider a separator C and a gap Y — Y(e,ë)on C. Let

W(T,e,ë) = SuS'u{e,ë}.

Wc call W(T,e,ë) the enclosing walk ofY(e,ë) (cf. Figure 3.14).

LEMMA 3.23 (Smoothing Lemma). Let T denote a triangulation and let

C denote a separator at level I subdividing 91 into 9^ and 9V. Further¬

more, let Y(e,ë) be a gap on C. Then there exist feasible skeletons K

and K7 as well as a triangulation T~ such that

(1) The edges in the symmetric difference T~AT are contained in the

interior ofW = W(T, e, ë). In other words, T and T~ are identical

outside W.

(2) T~ patches Y(e, e) smoothly with respect to K and K'.

(3) £(T~) — i(T) < 18c/ • h. where h denotes the number of edges oft

in the interior ofW.

The remainder of this section is devoted to the proof of this statement.

It consists of several parts. First we show how to sample appropriate

skeletons K and K'. We then show how we can iteratively "shortcut" S

and S' such that we finally obtain S ~ S~ÇK) and S' = S~ÇK).

We start by fixing some notation. As usual we use x~

e C\ 91 and

x — ë n 9Î to denote the endpoints of e and ë that, lie in 9\. Similarly, x'

and x' denote the endpoints in 9V. Recall that Lemma 3.11 guarantees

the existence of lines H and H' such that S and S' are enclosed within

a strip of width 4q around H and H', respectively. The lines B and

B' denote appropriate lines orthogonal to H, cf. page 39. Moreover,

Bp denotes the line parallel to B through p if p G B+, and Bp ~ B

otherwise. The halfspace of B,p containing B~ is denoted by B~ (thisis unique as Bp C B+ U B). Throughout d±(u,v) and d\\(u,v) denote

the distance between u and v measured orthogonal to H and parallel,

respectively. We have

d(u, v) < d± (u, v) + d|| (u, v)

by the triangle inequality.

Recall that every edge in S is a side of at, most two triangles of T that

lie within W and that every edge which crosses W(r) belongs to such a

triangle. We thus get a natural walk along the edges of S, if we traverse

the edges of S in the order in which the corresponding triangles are

Page 75: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

62 Chapter S. Minimum Weight Triangulation

Figure 3.14. The walk S traverses the edges in the

same order as we traverse the corresponding triangles

along C.

encountered if we walk along W(Y) from e to ë. This is illustrated in

Figure 3.14. Observe, this walk can be written as a set of directed edges

(arcs). Henceforth, we slightly abuse notation by assuming that S is

indeed a set of such arcs.

Note that in general S will be a walk (and not a path). That is, some

points can be visited several times. With <S[a;,p] we always denote the

walk on S from x until the first occurrence of p on S. Similarly, *S[x,p]denotes the walk which we obtain by traversing S in opposite direction,

starting in x, until the first occurrence of p.

Proposition 3.24. Let L denote a line parallel to B such that z := eC\L

exists. Let X ~ S 0 L denote the intersection points of S with L and let

Z[) denote the first intersection of S with L if we traverse S starting in

x. Then the line segment zzo contains no other point from X.

A similar statement holds for z := ë fl L and the last intersection point

of L and S, as everything is symmetric if we walk backwards starting at

x (cf. Fig. 3.14).

Proof. Let eZ{) denote the (first) arc on S that contains zq, and let fZodenote an edge that cuts W(Y) and is a side of the triangle correspondingto eZo. Then e, S[x, zq], fZQ, and W(Y) induce some region D. Note that

fZo can be chosen in such a way that the line segment zzq is contained

Page 76: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.5. The Smoothing Lemma 63

within D. In Figure 3.15 the region D is drawn shaded. Hence, any

edge that intersects with L between z and zq also lies within D. As we

traverse the edges of S in the order in which the corresponding triangles

intersect W(Y) such an edge must, precede eZQ on S. Then zq would not

be the first intersection of S with L, contradicting the choice of zq. D

Figure 3.15

3.5.1. Sampling the Skeleton. In this section we show how to sample

K and K'. Observe that by symmetry it suffices to show how to construct

K. First we choose p G P($) such that property (PI) is satisfied with

respect to all points in P(S). Next, we sample points po,p\,... ,Pk

on *S[x,p] that will form K+. By symmetry, the points in K~ can be

constructed with the same procedure by applying it to S[x,p] instead of

*S[;c,p]. (Note that the number k of points that, are sampled is not fixed

in advance. In particular, this number can be different for K+ and K~.)

We start with po := x. Assume we have already constructed po,... ,Pi-

If d\\(pi,p) < 4q, we stop with K+ := {po,... ,Pi}. Otherwise we start

on tS[x',p] at the first occurrence of pi and walk towards p. We stop as

soon as we hit a point q such that d\\(pi,q) > 3q and q E B~. This is

illustrated in Figure 3.16.

Note that pi and q uniquely define S~[pi,q]. We now construct two

points vx and vy as indicated in the description of property (P7). That

is, vx is the point v with respect to Xq, while vy denotes the point v with

Page 77: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

64 Chapter S. Minimum Weight lïiangukition

\p

Bn.Pi

Figure 3.16

respect to Yq. (We set vx and/or vy equal to Pi if the corresponding point

v does not exist.) Assume without loss of generality that d(BVx,Bq) <

d(BVy, Bq). (If this is not the case, then we interchange the role of vx and

vy in the next arguments.) If d(BVx,Bq) < ci then we replace q by vx.

With respect to (the potentially adapted point) q we then check, wmether

vy is still contained in S\pi, q] and, if so, whether d(BVy, Bq) < ci. If both

is the case we replace q by vy. We let pi+\ denote the point q that arises

at the end.

Lemma 3.25. The skeleton K sampled as described above is feasible and

satisfies in addition the following properties:

(Al) KÇP(S).(A2) Ifp E K+ then P(S[x,p\) \ {p} C P+ and similarly ifp G K" then

P(S[x,p])\{p}cB+.(A3) For all p,q G K+ such that p->q all points in P(S[x,q}) \ {q} are

either contained in P+ or satisfy d(u,Bp) < Aci. For p,q E K~ a

similar statement holds with respect to S[x,q],

Intuitively speaking, (A2) says that p G K+ is the first point in B~ U B

on the walk from x to p. In fact, the sampling rule guarantees that (A2)holds (cf. Fig. 3.16). However, we have to prove that, this property

Page 78: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.5. The Smoothing Lemma 65

still holds after a potential replacement of q in the second step of the

sampling procedure.

Proof. We first check that K satisfies properties (PI) - (P8). Properties

(PI), (P2), and (P3) are immediately seen to hold by construction.

(P4): In the procedure for sampling the points in K+ we choose q such

that d\\(pi,q) > 3q. We claim that this implies that d(BPi,Bq) > 3q. If

q E B+ this is obvious, as then d(BPi,Bq) = d\\(pi,q). If g G B~, then

d(q, B) < d(p,B) < c\ (cf. Lemma 3.11). On the other hand we know

that ci|| (pi,p) _ 4c/ (as otherwise the algorithm would have stopped after

constructing p^, hence d(BPi, Bq) > d\\(pi,p)—ci > 3c/. In the procedure

we then iteratively adjust q at most twice. As each adjustment reduces

the distance to p by at most q, we deduce that (P4) holds.

(P5): This is immediate by the definition of «S~(K) and the fact that

we sampled K as points on S = S(Y, T).

(P6): This property is almost obvious by construction: clearly, the region

D(S~) contains no point in B~ 0 B^.+1 by definition of <S~[pi,Pi+i]-

However, we still need to show that the line segment on BPi connecting

e with pi contains no other point from P($). This, however, follows

immediately from Proposition 3.24.

(P7): By construction we ensure that, points violating (P7) with respect

to the originally chosen point q are eliminated. It remains to show that

by adapting q to vx and/or vy no new "violators" are generated. This

can be seen as follows. First observe that for any point v G S~[p%, q] the

polyline <S~ [p.;, v] is identical to the path from p% to v on *S~ [p?;, q]. For

two points y, y' wc say that <S^ [y, y'} is x-monotone if the ^-coordinates of

the points are monotone increasing or monotone decreasing. Moreover,

S~[y,y'] is said to be x-unimodular if there exists z G P(S~[y,y'}) such

that both S~[y,z] and S~[z,y'} are rr-monotone. Similarly, we define

7/-monotone and 7/-unimodular. We claim that for any points y,y' the

curve S~ [y, ?/] is both x-unimodular and 7/-unimodular. If we apply this

claim to S~ \pi, q] we deduce that after changing q to vx, say, the "new"

vx will then be identical to q, and similarly for vy. This proves (P7).

So it remains to show that, S~[y, y'] is unimodular. This can be seen

as follows. Let Y and Y' denote the hyperplanes parallel to B through

y and y', respectively. Note that by construction y and y' are the only

intersection points of S~[y,y'] with Y and Y', respectively. Let y =

qi, , qm = y' denote the points on S~[y,y'], indexed in the order in

which they appear on the walk. Let ?7? denote the unit vector directing

Page 79: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

66 Chapter S. Minimum Weight rVriangulation

from qti to (fo+i. If wc view v^ = (ri,(fi) in polar coordinates, then the

convexity of S~[y, y'] implies that the ip., are monotone. Furthermore,the fact that S~[y, y'] must not cross Y and Y' implies that \<f]_— <Pm-i\ <

TT. Hence, for any vector u the scalar products (v\, Ü),..., (v77l-i,u)

changes sign at most once. As qi = X^i ^j, this implies the claim, if

we set u = ex respectively Ü = ey, where ex (cy) denotes the unit-vector

in x-direction (^-direction).

It thus remains to show that (Al), (A2) and (A3) hold. As in descriptionof the sampling algorithm let q denote the point sampled in the current

iteration. Firstly, (Al) is obvious, as we only add points on S to K.

Clearly, (A2) holds for q G B+. So assume q E B" and that r G

B~~ precedes q on. S. As r 0 K, we have d\\(pi,r) < 3c/. By Lemma

3.11 cJ||(p,r) < ci and thus d\\(pi,p) < 4ci. This causes the sampling-

procedure to stop with pi and thus q $ K. Contradiction.

Hence, (A2) holds for q so it remains to show that it still holds for vx (orsimilarly vy). Observe that we have vx G B U B+ even if q E B~, since

vx lies on S~[pi,q] and all points of S^[pt,q] besides q lie in P+ — B+

(as (A2) holds for q). So in particular vx E BVx C B+. Assume that

there exists an u E P(S[x, vx]), u ^ vx, such that u is the first point on

S[x, vx] in BVx UB~ .Let, tj0 denote the unique intersection point of BVx

and S[x, u]. By choice of vx and the convexity of S~ \p%, q] no intersection

point of S with BVx is between e f) BVu. and vx. This is in particular the

case for ?z0- As vx is also visited by <S it contradicts Proposition 3.24 that

uq is the first intersection of *S and BVx and thus (A2) holds. Finally,

(A3) is immediate as every u E P(S) violating (A3) would be contained

in K by construction of the sampling procedure. D

3.5.2. Smoothable Detours. Let K and K7 denote the feasible skele¬

tons sampled by the algorithm given above. Furthermore, let X denote

the set of edges of the triangulation that cross C within the enclosingwalk W(T, e, ë) of Y, that is,

(3.9) X = (E(T) \ {e, ë}) n (P(S) x P(S')).

Note that X includes neither e nor ë. For the sake of exposition, we

consider only S in the sequel. Throughout it, can be easily checked that

similar definitions and statements can be easily derived for S'. Observe

that, every arc of *S is contained in exactly one of the following subwalks.

S. The subwalk of 5 from the first occurrence of p G K+ and the

last one of q G K~, where p~>p and q^p.

Page 80: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.5. The Smoothing Lemma 67

<S[p,q]. Defined for p,q E K+, p^-q as the subwalk of 5 from the

first occurrence of p to the first occurrence of q. For p, q G K by

considering S in reverse direction.

In other words, we decompose S into S and a family of sets S[p, q].Wc shall see later that, (A2) and Proposition 3.24 imply that, S\jj,q] —

S~[pi<l] If S\PiQ\ 1S convex- rbhe idea behind our proof is to "shortcut"

S[p, q] iteratively such that we obtain S~[p, q] at the end of the process.

Similarly, we proceed for S which we aim to transform into S^. This

motivates the following definition.

Let a, b and c denote three subsequent points on S, i.e., {(a, b), (b, c)} Ç

S. Recall that we assume that, S is directed, so (a, b) and (b, c) denote

arcs rather than edges. We say that (a, b, c) is a detour, if there is at

least one edge in X incident to b that intersects with the line segment

ac that connects a and c. Let X& Ç 1 denote the set of all edges in X

that are incident to b and cross ac.

We call (a, b, c) simple if |X{>| — 1. Moreover, (a, b, c) is called smoothable

if either {(a, b), (b, c)} C S or {(a, b), (b, c)} C S[p, q] for an appropriate

choice of p and q.

Our next goal is to define a measure that allows us to define an order of

preference on smoothable detours. We do this by defining a function cp

that measures the distance of a point x from B. More precisely, for

u G P(S) we let (p(u) — d(u, B) if u G B+ and ip(u) = 0 otherwise.

Analogously, we define ip with respect to B' for all u G P(S').

Lemma 3.26. For all {u,v} G X we have d(u,v) > (p(u) + ip(v).

Proof. The line segment 7^7; can be decomposed in uz and zv, where

z = uvHC. So it remains to show that d(u, z) > <p(u) and d(z, v) > <p(v).This is obvious if u G B~, since then <p(u) = 0. Otherwise B separates

u from W(Y) and thus from z. So the distance between u and B is at

most, the length of uz. For vz we can argue analogously. D

Lemma 3.27. For allu,v G P(S), we have d±(u,v) < 4ci andd^(u,v) <

\<p(u) ~ip(v)\ +c4.

Proof. The bound on d±(u,v) is a straightforward corollary of Lemma

3.11. So it, remains to estimate d\\(u,v). If both points are in B+ then

d\\(u,v) — \(p(u) — <p(v)\. If in contrast both points are in B~ then

d\\(u,v) < ci due to Lemma 3.11. Otherwise we assume w.l.o.g. that

v E B~ and u E B '. Clearly d\\ (u, v) is given by (p(u) plus the the

Page 81: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

68 Chapter 3. Minimum Weight Triangulation

distance of v to B. The latter is by Lemma 3.1 1 at, most, cj. Since in

addition <p(v) = 0, the bound holds.

Proposition 3.28. For every detour (a,b,e)7 ip(b) > mm{ip(a),p(c^)}.

Proof. Assume that ip(b) < mm {p>(a), ip(c)} and thus a, c E B^~. Hence,

Bb separates both a and c from W(Y). This implies that no edge in X

incident, to b crosses ac as otherwise it would cross Bb twice. Contradic¬

tion.

A detour (a, b, c) is said to be ip-convex if tp(b) > max {p>(a), <p(c)}.

Proposition 3.29. A ip-convex detour (a,b,c) is smoothable.

Proof. If a detour (a, b, c) is not smoothable, then b G K+ U K~ and

(a, b) E S[p, b], where p->6 but either

(b,c) E S[b, q], where b^q ^ p, or

- (b,c) ESiib^p.

By (A2) a G B^ and p>(a) > (p(b) contradicting our assumption that

(a,b,c) is not, (^-convex. D

LEMMA 3.30. There exists no smoothable detour if and only if S =

S~(K).

Proof. If there exists a smoothable detour (a, b, c) then either S or some

S[p, q] is not convex. This contradicts the (piecewise) convexity of the

S~(K) and thus S ^ <S~(K). On the other hand, if S / <S~(K) we

claim that either S or some <S[p,g] is not convex. Thus, we have a

detour (a,b,c) which lies entirely on S or some S[p,q]. By definition

(a,b,c) is smoothable.

In order to prove this claim, assume for the sake of contradiction that all

S[p, q] and S are convex. Firstly, consider some S[p, q]. Ifp, q E B+ U B

then (A2) and Proposition 3.24 assure that S[p, q] intersects with Bp and

Bq only in the points p and q, respectively. It thus matches the definition

of «S~[p, q] and we have S[p, q] = S~[p, q\. If g G B~ and thus p G B+

(or vice-versa) then q is by (A2) the first (and only) point on S[p, q] in

B~ and therefore S[p, q] — <S~[p, q]. Thus we have that S[p, q] — S~\p, q]for all S\p,q].

Finally, we consider S. Let p G K+ and q E K~ such that p^p and q^p.

By (A2), we have that, P(S[x,p]) \ {p} C P+ and P(S[x, q]) \ {q} C B+.

Thus Proposition 3.24 assures that *S ~ <S~. D

Page 82: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.5. The Smoothing Lemma 69

3.5.3. The Smoothing Action. A srnoolhrng action is a single step of

the process that transforms S into S~. We choose a smoothable detour

(o, b, c) on S oi S' according to the following ordei of preference.

(1) detours that are simple and c/>convex

(2) </?-convcx detouis

(3) remaining detours

This order will be crucial in the analysis. We hencefoith assume that

{(a, 6), (b,c)} Ç S; the case {(a, b), (b, c)} Ç S' is symmetric. Once the

detour is chosen, we locally modify T such that wc obtain a tiiangulation

T< with

S< = (Su{(a,c)})\{(a,b),(b,c)}.

This is achieved as follows. Let a',c' E P(S') such that Aa6a> and Ahv

are the triangles corresponding to (a,b) and (b,c). That is, the edges

{a, a'} and {c, c'} so to say enclose AV Note that a' — c' in case the

detour is simple. Let Wabc denote the walk that encloses all triangles in

T that are traversed along C between /\aba' ar*d Acbc', including both.

In Figure 3.17 this walk Wabc is indicated by a bold polygon. All the

modifications take place within the area enclosed by Wabc

C

(b)

FIGURE 3.17. If (a, b, c) is not simple, wc identify Wabc

(bold) and modify the triangulation in its interior.

If (a,b,c) is simple we add the edge {a, c} and lemove the unique edgeof Xb- This yields a feasible tiiangulation.

Otherwise, we triangulate the interior of Wabc with a triangulation that,

contains {a,c}. This is achieved as follows. Clearly, S'abc — S' n Wabc is

a subwalk of S'. Obseive furthermore that S']b( visits each of its points

Page 83: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

70 Chapter S. Minimum Weight Triangulation

exactly once, since every point is connected to b. Thns the subwalk

S'abc[u\,u'2] from u[ to u'2 is well-defined.

We choose a point v' among all points having minimum value of tp(-).If this minimum is 0 then we choose v' such that the distance to C is

minimum. Wc triangulate the interior Wabc according to the following

two rules.

(1) The triangulation contains the triangles Aabc and Aavtc.

(2) All triangles but Aabc cross C.

This is illustrated in Figure 3.17 b). One easily checks that this trian¬

gulation is unique.

CLAIM 3.31. The triangulation described above exists.

Proof. We have to assure that each point on S'abc[v', a'] can be connected

to a and each on S'abc[v',c'] to c without generating any intersections.

Due to symmetry it is sufficient to show the latter. In the sequel, the fol¬

lowing two points on S'abc[v', c'] are of interest (cf. Figure 3.18). Firstly,

v" is the first point, on S'ahc[v',c'] in B'+. Note that v" does not, exist if

P($'abc[v',c']) C B' U B'~ and that, v" = v' if ip(v') > 0. Secondly, let

c" be the last point on S'abc[v',c'] in P". As for v" it is possible that

c" — c' (if (p(c') = 0) or that c" does not exist (if ip(v') > 0).

\B'

--"' c

Figure 3.18

Page 84: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.5. The Smoothing Lemma, 71

As (a,b,c) is not simple, the order of preference implies that <S'abc[v', c']must not contain a simple and </>convex detour, as according to Lemma

3.29 every ip-convex detour is smoothable and would thus have been cho¬

sen before considering the detour (a, b, c). Indeed, all detours <S'abc[v', c']are simple, so they must not be (^-convex. We observe that

(i) S'ahc[v', c'] and B intersect, at most once, namely on the edge {c", v"}.

(ii) <p(w') increases monotonously along <S'abc[v",c'].

Along S'abc[v', c"] the (p(-) values are 0. So every detour on S'abc[v', c"] is

smoothable. As otherwise such a detour exists, we have that

(iii) d(C, w') increases monotonously along S'abc[v', c"].

Consider a w' G S'abc[v', c']. We need to show that we can connect

w' to c without crossing S'abc. As {b,w'} E T wc know that w' G

S'abc[v', c'] can be certainly connected to c, if the triangle Abw'c contains

no point of S'abc[a!,c'] other then w'. First, we consider the points on

S'abc[a',w']. Observe that the line extending bw' separates $'abc[a',w']from S'abc[w',c'], as {b,x'} E T for all x' G $'obr. Thus this line also

separates all points on S'abc[a',w'] except for w' from the triangle AbW'C.

For the points on S'abc [w', c'] we argue as follows.

Case A. w' E <Sabc[v', c"]. By (iii) all points on S'abc[w', c"] have distance

at, least d(w',C) to C. On the other hand all points in Abw>c \ {w'}have distance less than d(w',C) to C. Thus no point of S'abc[w',c"]other than w' lies in Abw'C. For the points on S'abc[v",c'] we argue as

follows. Note that this case only applies if c' G B'+. As {c,c'} G T, cc'

crosses W(Y). Since W(Y) C B' U B'~ wc have c G B'~. In particular

Ahw'c \ W} C B'~. From (i) we deduce P(S'abc[v",c']) C B'+ and

therefore no point of S'ahc[v", c'] can lie in Abw>c-

Case B. w' E S'abc[v", c']. Wc can deduce similarly as above that, no

point of S'[iu', c'] is contained in Abw>c, since Abw'c \ {w'} C B'w,, while

(ii) implies that P(S'abc[w', c']) c B' U £'+,. D

By construction of the smoothing action and Claim 3.31 we obtain

Lemma 3.32. A smoothing action returns a triangulation T< suc/i that

|<S< + (S^| = \S + S'\ ~ 1. Moreover, the triangulations T and T< differ

only within Wnbc- O

Page 85: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

72 Chapter S. Minimum Weight Tiiangulation

Lemma 3.33. A smoothing action maintains properties (Al) - (A3).

Proof. The only difference between S and «S< are the three edges (a, b),

(b,c), and (a,c). From this the validity of (A2) and (A3) follow im¬

mediately It thus suffices to show (Al). As by construction either

{(a,6),(6,c)} Ç S or {(a, b), (b,e)} Ç S[p,q] for p, q E K'' U K" and

p^-q, it follows immediately that (Al) holds for all points in K "'" U K~.

It thus remains to show that p belongs to P(tS<).

Note that according to the definition of a smoothable detour this is not

obvious, as the case b — p is formally allowed. First consider the case

p G B+. Then every edge in Xp lies in BT and, by choice of p, can thus

not cut any line segment connecting two points in P(S). That is b — p

is not possible in this case. So assume that p G B~ and let T denote

the line through p parallel to P. Observe that T has to cut one of the

edges e = {x,x'} and e = {x,x7}, as otherwise either x or x would be

a point, in P(S) that is further away from B, contradicting the choice

of p. Assume w.l.o.g. that T cuts ë and let T+ denote the halfspace

containing x. Observe that by the definition of p we know that the

region RT- bounded by T, W(Y) and ë contains no point from P(S).Since all internal angles of a triangle are strictly less then 180°, we know

that p has to be connected in P< to some point v G T" (indeed this is

true for every triangulation). As RT- contains no point, we know that

the edge connecting p to v has to cross C, implying that p G P(S<), as

desired.

We now bound the increase of length due to a sequence of smoothing

actions. In the sequel it is convenient to describe the smoothing action

and the relation between T and T< using the following model.

- Ifp' G P(S'abc[a',v']) then {b,a'} is replaced by {a, c} and {b,c'}is redirected to {c, v'}. Otherwise, {b,c'} is replaced by {a,c} and

{b, a'} is redirected to {c, v'}.- All other edges {b,w'} G X are redirected to {a,w'} if

w'EP(S'abc[v',a'})

and to {c, w'} otherwise.

Let X< be defined analogously to (3.9) with respect, to T<. Furthermore,

let 7 : A< —» X denote the injective function such that {u,u'} is the

redirected edge of ~y({u, u'}). Note that 7"1 is defined for all edges in X

except for {6,0'} (resp. {b, c'}) which is replaced by {a,c\ E' X<.

Page 86: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.5. The Smoothing Lemma 73

Lemma 3.34. A smoothing action assures that

E w^ E ^) + 9q.

ceT.,\X< etT\7(X.J

Proof. Due to symmetry, we only consider the case p' E P(S'abr[a',v']).As T< \XK and T\7(X<) differ only in the two edges {a, c} and {b, a'},it is sufficient to show that d(a,c) — d(b,a') < 9c/. By the triangle

inequality, Lemma 3.26 and Lemma 3.27 wc obtain

d(a, c) — d(b, a') < d\\ (a, c) + d± (a, c) — d(b, a')

< \(p(a) - ip(c)\ - p>(b) + 5q.

If (a,b,c) is (/^-convex then \p>(a) — (p(c)\ — (p(b) < max{(p(a),(p(c)} —

cp(b) < 0 and the claim holds. So assume that (a, b, c) is not, </?-convex.

By order of preference this implies that S contains no (/^-convex detour.

Observe that this implies that </?(•) is monotone decreasing along the

subwalk from x (rcsp. x) to the last visit of p. Choose p G K \ {p} such

that p is the last point from K that precedes (a, b) (a — p is possible)on <S[x,p]. The monotonicity of <p(-) along S implies that

(p(p) > max {(p(a), ip(c)} > (p(b) > min {(p(a), tp(c)} .

By (A3) we have d(b, Bp) < 4ci and thus max {p>(a), <p(c)} < tp(b) + 4q,which proves the claim. D

In essence, the previous lemma bounds the cost of replacements. Next,we study the effect of redirections. What we show is, informally speaking,that the redirection of an edge pushes its endpoints towards p. More

specific, if the endpoint of an edge lies on S[po,qo] it either remains on

S[pQ,qo] or is moved to some S[pi,qi] that, lies on <S between <S[po,go]and p.

To formalize this statement, we first need to specify what the "endpoint"of an edge is. Indeed, we could visit a point u G P(<S) more than once

along the walk. Note that, each such visit is uniquely determined by two

arcs (v,u),(u,w) G S that correspond to triangles A(vn) and A(UjW)-Vice-versa, A(VIi) and A(UjW) and all triangles we transverse between

them along W(Y) determine a unique visit of u (cf. Figure 3.14). In

particular, every edge {u, u'} E X corresponds to a unique visit of u.

Assume henceforth that the points in K+ are indexed by increasingdistance to p, i.e., K+ = {po,Pi,... ,x} such that po -^p and p%f i ->p,

for i > 0. Note that we have ip(pi) < (p(pi+i) for all p%,pl+\ G Kf. The

points in K~ are indexed similarly. For an edge {u, u'} E X let i({'u, u'})

Page 87: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

74 Chapter 3. Minimum Weight rLriangulation

denote the index of a point p, E K U K+ such that

S\Pi({u,u'})'Pi({u,v'})-l]

contains the visit of u on S corresponding to {u,u'}. If no such index

exists then S contains this visit, and we set i({u,u'}) — 0. Note that

i({u,u'}) is unique. Wc define i'({u,u'}) similarly with respect to the

corresponding visit of u'.

Lemma 3.35. The following is true for every smoothing action. For all

{uq,u'q} G X and {ui,u\} G X< such that {iii,^} = 7_1({7io,7i0}), we

have i({uL,u[}) < i({u0,u'Q}) and i'({ui,u[}) < i'({u0, u'0}).

Proof. Assume that p7 G P(<S'abc[a',v']); the case p' G S'abc[c',v'] is sym¬

metric. We argue for all redirections of our smoothing action sepa¬

rately. If {w',b} is redirected to {w',c} (or {77/, o}) we trivially have

i'({w', c}) < i'({w', b}) as the corresponding visit, of w' remains the same.

Moreover, by definition of smoothable we have i({w',c}) < i({w',b})(resp. i({w',a}) < i({w',b})), as all of a, b and c are on the same

S[pi,pi+i] (resp. S). Note that by definition of i({u,u'}) this holds even

if c = pi.

So it remains to argue for {b,c'} which is redirected to {c,v'}. For the

same reasons as above we have i({c, v'}) < i({b, c'}). Let p = Pi'({b,c'})-As p' G S'abc[a',v'], we have v' G P(S'abc[c',p']). As by definition c' E

P(S'\p,p']), we obtain v' E P(S'[p,p']). Hence, i'({c,v'}) < i'({b,c'}).D

Proof of Lemma 3.23. Starting with T wc obtain T~ by iteratively ap¬

plying smoothing actions. That is, we have a sequence of triangulationsT = %),T\,... ,Tr = T~ such that i) Tr+\ is obtained by applying a

smooting action to <Sr or S'r and ii) Sr and S'R contain no smoothable

detour. By Lemma 3.30 and Lemma 3.33, Tr patches Y smoothly and

thus claim (2) holds. Furthermore, by Lemma 3.32 all changes are re¬

stricted to W which proves claim (1). It thus remains to show the bound

of claim (3). This is achieved as follows.

Let Xr be defined analogously to (3.9) with respect to %. Let a : Xr —>

Xq such that,

a({u, u'}) - 7l (72 (• • • (jr({u, u'}) )),

Page 88: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.5. The Smoothing Lemma 75

where jr : Xr —> X, _i is defined such that, 7r({7i,7i/}) is the redirected

edge of \u,u'} in the rth smoothing action. By Lemma 3.34 we obtain

E £^~ E ?(e) + R-9ch

eeTn\Xn &er()\a(XR)

It remains to bound J2eX ^(e)- Let {wfii '41 ^ Xr and {uo,u'0} —

a({iiR,u'R}). We claim that, d(u,R,u'R) < d(uo,u'0) -\- I8ci. In order to

see this let zq denote the intersection point, of W(Y) with {uq,u'q}. Bythe triangle inequality, we have

d(uR, u'R) < d(uR, z0) + d(zo, u'r).

It thus suffices to bound d(uR,zo) — d(uo,zo) and d(u'R,zo) — d(u'0,zo)by 9c/ each. Due to symmetry it is sufficient to bound the former.

Case A. (p(vr) < <p(uq). Then w = Tio^o fl BUR exists and we have

d(uR, z0) < d± (uR, w) + d|| (uR, w) + d(w, z())

< d±(uR,w) + d\\(uR,w) + d(u0,z0).

Note that d\\(uR, w) = 0 if ur E B+. Otherwise, we have c/y (ur, w) < c\

by Lemma 3.11. It remains to bound d±(iiR,w). As usual, y = e n C

and y — ë fl C denote the points bounding 1/F(r). By Lemma 3.11 we

deduce that Ur, uq, y and y are contained within a strip of width 4q

around H. This strip contains also the triangle AUoyy and thus w. That

is, we have dx(uR,w) < Aci and thus d(uR, z0) < <i(7io, ^o) + 5q.

Case B. (p(ur) > (p(uo). By Lemma 3.35 we have

*(Kr,?4}) <i({u0,u'()})and in particular uR E P~, where p = pl({UQ,u'ü})- As (p(uR) > <p(u0),we also have 77o B~. By (A3) we thus have d(uo,Bp) < Aci and thus

<p(p) < (p(ua) +4c/. Hence, (p(ur) < <p(p) < <p(uq) + 4q. By the triangle

inequality and Lemma 3.27 we thus obtain

d(uR,z0) < d\\(uR,u0) + d_(uR,uo) +d(u0,z0)

< \ip(ua) ~ ¥>(«o)| + 5ci + d(u0,z{))

< d(u0,z0) + 9c/.

This completes the proof of the claim that d(u,R, u'R) < d(uo, u'0) + 18qfor all edges {ur,u'R} in Xr and {7i0,7i0} = a({uR,u'R}). We thus get

^(r-)</(T) + P.9C/ + |XjR|-18c/.

Page 89: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

76 Chapter 3. Minimum Weight Triangulation

Together with the observation that /? — |A"o| — P + \Xr\ this completesthe proof of the lemma. D

3.6. On the Choice of QQ

At the end of Section 3.4 we described the algorithm C that works on

a given square Ù0- We then showed that max^ |H£[9v]| —n°\l°ë n).

Recall that T£ was defined in Section 3.3 to be the minimum weight,

triangulation such that H(9i, T£) E H£[£H] for all 9\. It, remains to

be shown that T£ is a good approximation to T*, that is, 1{T_) <

(1 4- e)£(T*). This is in general not the case for arbitrary fixed 0.0-

However, we show in this section that there exists

Q = {ÙuÙ2,-..,Ùk}

such that 72 < (l + e)£{T*) for at least one Ùi E Q, where k = poly(n).In order to comply with the assumptions of the previous sections wc

require that every Ql E Q satisfies the following properties.

- PCO,

maxp,qep d(p, q) > s n.

- |jQx| = 2a, for some a G N s.t. 2a G [Ssn, Qsn].- For all rectangles ÎH in the subdivision, neither the boundary of !*K

nor the boundary of any cell £ G yVf [ÏK] contains a point from P.

Indeed the properties listed here are somewhat stronger than actually

required. In the sequel we show how we can satisfy these requirements

by choosing Q appropriately. First we scale the point set such that

the smallest square containing all points, the so-called bounding box,has side length sn. Then clearly maxP;f/(=p d(p, q) > sn. We assume

without loss of generality that the lower-left, and upper-right corner of

the bounding box have coordinates (0,0) and (sn,sn) respectively. We

grow the bounding box by 1 such that now the upper-right corner has

coordinates (sn + l,sn + 1). Thus the enlarged box has side lengthL = sn + 1.

For a, b E {0,1, 2, •

, L}, let Ù0(a, b) denote the square of side length2a G [3sn, 6sn] and barycenter (a,b) (cf. Figure 3.19). Wc choose

Q = {Q0(a,b) :a,bE {0,1,2,- ,L}}.

For £30(a,6) we construct a subdivision as described in Section 3.2.1.

This subdivision has depth t — let. Regardless of the choice of a and 6,

Page 90: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.6. On the Choice of Q 77

all boundaries of rectangles and cells are contained in the grid lines of a

grid through the origin of granularityno

Now we assure that neither the boundary of any rectangle ty\ in the

subdivision nor the boundary of any cell (£ G M [ÏH] contains a point in

P. This is achieved by slightly shifting the point set.Let

i gand *v =

3 -9

2ny

2ra'

where g is as defined in (3.10), while 1 < i,j < 277 will be specifiedlater. We shift the point set P by 5X and Sy. That is, a point in P with

coordinates (x,y) is shifted to (x + 8X, y + 5y). Note that the shifted

point set P is still contained in the enlarged box of side length P.

Ftgure 3.19. The bounding box (solid), the enlarged

bounding box (dashed) and Q0((i,b) (bold).

Lemma 3.36. There is a choice for 6X and 5y such that the following is

true for all a and b. For all rectangles 9^ in the subdivision of Q0(a,b),no point p G P is contained in the boundary of y\ or in the boundary ofa cell<lEM[W].

Proof. It, suffices to show that there is a choice for Sx and 5y such that

no point in P is contained in one of the aforesaid grid lines. For a fixed

p £ P there is only one among 277 choices of Sx such that p is contained

Page 91: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

78 Chapter S. Minimum Weight Triangulation

in a vertical grid line. Thus the points in P exclude at most n choices

for 5X. As there are 277 such choices, there exists a öx with the required

properties. We argue similarly for 5y. D

Let T*b denote the optimal smooth triangulation with respect to Q0(a, b)for some a,b E {0,1, 2, • •

, P}. The proof of the following key lemma

implies that such a T*b always exists.

Lemma 3.37. Let T* denote a minimum, weight triangulation to P.

There exists a,b E {0,1,..., L} such that £(T*b) < (1 + e)£(T*) forsom,e s — Ö (1/e).

The proof of Lemma 3.37 partially relies on the probabilistic method

and thus the following lemma turns out to be helpful.

Lemma 3.38. If a and b are chosen uniformly at random in {0,1,... ,L}then the subdivision of Q,0(a,b) has the property that

2[l/2\Pr{e G T* is cut by a separator at level 1} < —-—(i(c) + 1).

Li

Proof. Recall that vertical separator have even levels whereas horizontal

ones have odd levels. For the moment we assume that / = 1 mod 2, that,

is, we have an horizontal separator. Let, e — {u, v} G T* be fixed and

let £y(e) — 7/(77) — y(v). Observe that two horizontal separators have the

same level if they ha,ve the same 7/-coordinate. Let, Po,..., Pl denote

horizontal lines such that y (Hi) ~ i. That is, we subdivide the enlarged

bounding box of P into horizontal strips of width 1. Observe that hor¬

izontal separators of the subdivision of Q0(a,b) are either completelyoutside of the bounding box or lie on some Hi. We say that Hi has level

I if there are separators that have level / and 7/-coordinate y(Ht).

The number of Hi having level I is at most 2^-1/2^. As a is uniformlychosen at random from {0,..., L} every Hi has level 0 with probability

1/P. Since the levels of the Hi only depend on a, every Hi is equally

likely to have level /. So the probability that Ht has level / is at most

2^/2J/P. Since e crosses at most |"A/(e)] < £y(e)-\-1 of the Hi, and since

iy(e) < £(e), the probability that e is cut by a horizontal separator of

level I is by Boole's inequality at most

2LJ/2J o^/2J

If I is even then the separator in question is vertical. Due to symmetrywe can argue similarly. D

Page 92: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.6. On the Choice of O. 79

Recall that, by construction, we have t = 2|~log2 |jQ0(a,, b)\~\ = Ö (log 77).

Proposition 3.39. If9\ has level I then a cell <£ G M[9K] has side lengthat most

<3P

Q"

2M/2js/;-

Proof. On page 28, we observed that the side length of a rectangle at,

level / is at most |9H| = |Q0(a,&)|/2L/,2-l < 3P/2^/2J. The cell size is as

claimed, since our grid has granularity |£H|/m, where 777, = 2\]°sst\ > st.

a

Proof of Lemma 3.37. Assume for the moment that a and b are fixed.

Proceeding in top-down fashion through the subdivision of Q_0(a,b) wc

transform T* into some (potentially suboptimal) smooth triangulation

Ta,b- Let T ~T*. At level /, we modify T such that it patches all gaps

occurring at level / smoothly. If we are done, we consider level I + 1.

Assume we are currently at level /. If T patches all gaps occurring at

level I smoothly, there is nothing left to do at level I and we move to level

I + 1. Otherwise, there is a gap Y(e, e) occurring along a separator C at,

level / which is not patched smoothly by T. We use the same notation

as in Section 3.4, that is, we assume that C subdivides 91 into 9\ and

9V. As defined at the beginning of Section 3.5, let W(T, e,ë) denote

enclosing walk of T(e,e). By definition, the interior of the enclosingwalk contains all triangles of Tq(C, T) that occur between e and e. The

Smoothing Lemma (Lemma 3.23) says that we can find a triangulationT~ such that T~ and T differ only within W(T, e, ë) and T~ patches

T(e, ë) smoothly. Moreover, the third statement of the lemma says that

we have a cost of at most 18q for each chord to W we have in T.

By Lemma 3.23 T~ and T differ only in the interior of the enclosingwalk of F(e, ë). Therefore, this modification takes place within the local

hull of the parent and thus T~ still patches all gaps occurring at levels

0,...,/ — 1 smoothly. Moreover, the enclosing walks occurring at, level /

have pairwise disjoint interior and we can consider all gaps occurring at

level / independently We then proceed with T^, that is we let T — T~.

By the disjointness observed above, it is guaranteed that now T patchesall gaps occurring at levels 0,..., / smoothly Hence, we obtain a smooth

triangulation Ta^ if we are done with level t.

It remains to bound the cost of the modifications. For e E T* let lev(e)denote the minimum level of a separator that cuts e. In the transfor¬

mation process given above, e can induce an increase of length of 18q

Page 93: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

80 Chapter 3. Minimum Weight Triangulation

on each level / > lev(e). We now show that for a, b chosen uniformly at

random, the expectation oï f(Tab) —/(T*) is in the order of f(T*)/s. By

linearity of expectation and Proposition 3.39 we obtain

i t

w(Ta,b) -t(T*)] < e EPr{lev(e) = />E18c*eeT* 1^0 k=l

t oo _

j

eÇ'T* 1=0 k=l

per* i=o

for an appropriate constant, c. Clearly, Pr{lev(c) = /} is at most the

probability that e G T* is cut by a separator at level /. Hence,

Pr{lev(e) - 1} < 2l>2(((e) + 1)/L

by Lemma 3.38. That is, wc have

12Z/2 r T

E[*(ra,b) - i(T-)] < £ E—m + l)'¥ßTteeT* 1=0

= - {£{T*) + \T*\) = O (-} i(T*),

where the last equality follows from the well-known fact that |T*| <

3n — 6 and the observation that n < £(T*)/s. So there is a choice of a

and b for which

e(Ta,b)-e(T*) = o(e(T*)/s).

Choosing ,s — Ö (1/e) completes the proof. LI

Finally, we are in position to prove Theorem 3.1. It, suffices to combine

the results stated in this and the previous sections along the strategy,

we already sketched in Section 3.3.

Proof of Theorem 3.1. For fixed £30 wc introduced in Section 3.4 an al¬

gorithm C that computes in time n \ og n> for each rectangle £H in

the subdivision of £}0 a family (H/:[*H])<k of smooth hulls such that

IH/:^]] — 77 v uë n). By Theorem 3.8, it is possible to compute a (1+e)-

approximation to the best smooth tiiangulation T£ in time 77 \og n) for

an appropriate choice of s — O (1/e). Lemma 3.37 states that there ex¬

ists a

Ùo(a, 6) G Q = {Ùo(a, b) : a, b G {0, 1, 2, • • •

, L}}

Page 94: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

3.6. On the Choice of Q0 81

such that l(T*b) < (1 + e)£(T*). So, we have some Q0 E Q such that

^C^c) ^ (f + s)^(T*). For each O0 G Q, wc compute the correspond¬

ing (H/:[9H])^ and run the algorithm of Theorem 3.8. Wc return the

best triangulation. As |Q| = poly(77), the overall complexity remains

n°Kn).'

a

Page 95: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Seite Leer /

Blank leaf

Page 96: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

CHAPTER 4

Node-Weighted Steiner Trees

In this chapter we return to Steiner's problem and study a generalization,called Node-Weighted Steiner Tree. This problem was alreadyintroduced in Chapter 1 as Problem 1.3. Recall that an instance consists

of a set of points P in Rd, a function it : P —> Q+ and a es G Q+.Using a slightly different notation as in Chapter 1, a solution is a subset

V(ST) Ç P and a Steiner tree ST connecting the points in V(ST).Furthermore, let S(ST) denote the Steiner points used by ST. We

minimize

(4.1) val(ST)= J2 dq(u,v)+ E tt(u) + \S(ST)\cs.{u,v}E(ST) ueP-V(ST)

The objective function can be intuitively understood as follows. We

pay for the total length of the tree plus a penalty of c$ units for every

Steiner point we use. Furthermore, we are charged 7v(u) units for every

point u E P which is not included in the tree. Such a model has several

applications. In network design, for instance, additional switches could

reduce the cable length of a computer network but they are expensiveto install.

Let 7v(ST) and cg(<ST) denote the total amount of penalties we pay for

unconnected points and the use of Steiner points, respectively. That is,

(4.1) rewrites to

val(ST) = £q(ST) + 7r(ST) + cs(ST).

Furthermore, ST* denotes throughout this chapter the optimal solution

for the input set P. As it is easy to compute a spanning tree of mini¬

mum length, the main difficulty of Node-Weighted Steiner Tree is

actually to identify the sets V(ST*) and S (ST*).

The problem Node-Weighted Steiner Tree covers several well-

known problems as special cases. If wc choose cs = 0 and 7t(u) = oo

for all u E P then we obtain Steiner's problem. Moreover, by choosing

83

Page 97: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

84 Chapter 4. Node-Weighted Steiner Ti'cos

just eg = 0, our model yields the prize-collecting variant of the Steiner's

problem. If both eg = oo and tt(u) = oo for all u E P then Node-

Weighted Stetner Tree is equivalent to Minimum Spanning Tree.

In this chapter we will prove

Theorem 4.1. For fixed e > 0, there is a polynomial time algorithmwhich computes a (1 + e)-approximation to Node-Weighted Steiner

Tree in the plane.

Furthermore, we discuss variations of the problem and also explain how

our algorithm extends to arbitrary fixed dimension. It, turns out that

then Node-Weighted Steiner Tree still admits a quasi-polynomialtime approximation scheme (QPTAS) in arbitrary fixed dimensions.

Theorem 4.2. For fixed s > 0 and fixed d > 3, there is a quasi-

polynomial time algorithm, which computes a (1 -\- e)-approximation to

Node-Weighted Steiner Tree in arbitrary fixed dimension.

There is a considerable amount of related work. As already mentioned

the geometric Steiner tree problem admits a PTAS [11, 94] and is

strongly A/"P-hard [55]. Thus, from a complexity theoretic point of

view, Theorem 4.1 does not let much room for improvements. Arora

claimed in [12] that there is a QPTAS for the prize collecting variant.

Talwar [121] shows that Arora's method extends to metrics that satisfycertain properties but the complexity of his approximation scheme is

quasi-polynomial.

In Chapter 2 we introduced the Steiner tree problem in networks, and

we mentioned that this problem is known to be ^.PAf-complete [21].Therefore, it does not admit a PTAS unless V — HV. However, there

are many constant-factor approximation algorithms for this problem.The currently best algorithm is by Robins and Zelikovsky [113] and

yields a (1 + -^^approximation. If the input graph is planar then the

Steiner tree problem in networks admits a PTAS [22].

There is also a node-weighted version of the Steiner tree problem in

networks [73, 118], where including a vertex v G' K in the tree induces

a cost of cs(v) E R>o- This is setup quite similar to Node-Weighted

Steiner Tree. It was shown by Klein and Ravi [80] that there is an

approximation algorithm with performance ratio 21n|P| for the node-

weighted version of the Steiner tree problem in networks. In addition,

they proved that this is best possible up to a constant, factor, unless

NV C DTIME[77po'ylüs(")]. A similar setup was considered by Moss

Page 98: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4. /.. Outline of the Algorithm 85

and Rabani [98] who in essence combined the unweighted Steiner tree

problem with packing problems. A 2-approxirnation algorithm for the

prize-collecting variant of the Steiner tree problem in networks is due to

Goemans and Williamson [61].

For an extensive discussion of Steiner's problem and the Steiner tree

problem in networks, the reader is refered to the textbooks of Hwang,Richards and Winter [73] and Prömel and Steger [107].

The remainder of this chapter is organized as follows. We start with the

case d = 2, and outline in Section 4.1 basic principles of our algorithmic

strategy. Section 4.2 and Section 4.3 provide fundamental definitions and

properties of (restriced) optimal solutions of Node-WEIGHTED Steiner

Tree. In Section 4.4 we then present and analyse the polynomial time

approximation scheme. Finally, in Section 4.5 we extend the algorithmto higher dimensions and present further generalizations.

4.1. Outline of the Algorithm

In this section we outline our algorithmic strategy for Node-Wetghted

Steiner Tree in the plane. Wc start by briefly reviewing the main ideas

of Arora's approximation scheme for the geometric Steiner tree problem.Arora subdivides the smallest rectangle enclosing all points recursively

by using a quadtree such that the rectangles of the leaves of the quadtreecontain at most one point. The structure of a Steiner tree ST inside a

rectangle of this quadtree can be described by specifying i) the locations

where edges of ST cross the boundary of the rectangle and ii) how these

locations are connected inside the rectangle. Both parameters define the

configuration of this rectangle.

Given a rectangle and a configuration, Arora's algorithm optimizes lo¬

cally as follows. It computes the best solution for this configuration by

enumerating all configurations of the children of the rectangle and com¬

bining their optimum solutions. As the optimum solutions for rectangles

containing at most one point are easy to compute, the optimum solutions

of all rectangles can be computed bottom-up by dynamic programming.In other words, a look-up table is maintained which contains for each

configuration-rectangle pair the corresponding optimum. The complex¬

ity of this dynamic program depends on the size of this table, i.e., the

size of the quadtree and the number of different configurations per rec¬

tangle. We shall see later that the quadtree has logarithmic height and

contains therefore polynomially many rectangles. In order to reduce the

Page 99: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

86 Chapter 4. Node-Weighted Steiner lYees

number of configurations per rectangle, one has to do some rounding.This is achieved as follows.

Firstly, edges arc only allowed to cross the boundary of a rectangle at one

out of C? (log 77) prespecified locations, the so-called portals. Intuitively,those portals can be seen as auxiliary Steiner points over which we detour

the edges. Secondly, the tree may cross the boundary of a rectangle at

most a constant number of times. In this way one can show that there

exist only polynomially many different, configurations for each rectangleand the dynamic program therefore terminates in polynomial time. On

the other hand, by reducing the number of configurations, the dynamic

program optimizes only over a subclass of all trees. One therefore also

has to show that this subclass contains a tree such that its length differs

only slightly from that of an optimum tree. By using Arora's PatchingLemma and by introducing randomness into the quadtree one can show

that this is indeed the case.

The Patching Lemma states that whenever a Steiner tree ST crosses a

line segment L of length x at least twice we can find a Steiner tree ST'

crossing L only once, such that £q(ST') — £q(ST) < 2x. The proof in

[11] of the Patching Lemma basically uses the construction depicted in

Figure 4.1. Note that this construction adds new Steiner points to the

tree.

*—

—0 o—__

L L

Figure 4.1. Construction proving the PatchingLemma of [11]. The original tree on the left crosses L

several times whereas the new tree on the right crosses L

only once. Note that we have several additional Steiner

points (drawn as rings) in the new tree.

Page 100: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.2. Preliminaries 87

Unfortunately, our problem Node-Weighted Steiner Tree seems

not to fit in Arora's framework, as the fact that each additional Steiner

increases the cost of the tree by eg units makes it hard to imagine that a

solution can always be modified in the style of the Patching Lemma. We

therefore use a completely different, approach to define configurations.

Instead of specifying the locations where the tree edges cross the bound¬

ary of a rectangle, we aim at specifying the structure of the tree within a

rectangle and at specifying at which locations it should be connected to

points outside of the rectangle. Basically, this is achieved by subdividing

the rectangle into Ö (log 77) many cells. A configuration specifies which

cells contain an endpoint of an edge crossing the boundary and specifiesto which component, inside of the rectangle those points belong. In this

way we restrict the number of different locations of end points of edges

crossing the boundary of a rectangle, but not the number of such edges.

4.2. Preliminaries

In the sequel we mainly consider an integral variant, of Node-Weighted

Steiner Tree in the plane. This integral variant is called NWLST (for

node-weighted lattice steiner tree). The difference to Node-Weighted

Steiner Tree is that we require that all input points have odd integral

coordinates and that the side length of the bounding box is L = Ö (n2).That is, we have Pc{l,3,5,...,P— 1} . Similarly, the Steiner points

contained in the solution must also have odd integral coordinates. This

is similar to the notion of well-rounded instances in [11].

Lemma 4.3. If there is a PTAS for NWLST then there is also a PTAS

for Node-Weighted Steiner Tree in the plane.

For the proof of Lemma 4.3 we need an approximation algorithm for

Node-Weighted Steiner Tree in the plane with constant perfor¬

mance ratio. This motivates the following statement.

Lemma 4.4. There is an algorithm which computes in polynomial time

a 3-approximation to ST*.

Proof. By using the algorithm of Goemans and Williamson [61], we

compute a 2-approximation to the optimal prize-collecting spanning tree

on P. Let, A denote the total cost, i.e., length plus penalties, of this

approximation. We claim that,

A_3-Yâl(ST*).

Page 101: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

88 Chapter 4. Node-Weighted Steiner Trees

Let ST' denote the minimum spanning tree on V(ST*) and note that

cs(ST ) = 0. It, was shown by Du and Hwang [41] that for every set of

points P the length of the MST is at most 3/2 the length of the optimal

Steiner tree. Thus, ST' satisfies

val(ST') = £q(ST') + tt(ST') < 1 £q(ST*) + tt(5T*) + cs(ST*)

<^.val(<ST*),since V(ST') = V(ST*) and thus tt(ST') = tt(ST*). Clearly, the

cost of the optimal prize-collecting spanning tree VCT* on P is at

most val (ST'). Since the algorithm described above computes a 2-

approximation to the optimum prize-collecting MST, we obtain

A < 2 val(PCT*) < 2 • val(<ST') < 3 • val(<ST*).

This completes the proof. D

Proof of Lemma 4-3. Note that we can improve every solution to Node-

Weighted Steiner Tree by deleting Steiner points that are either

leaves or have just two neighbors in the tree. Hence, every Steiner tree

which is optimal in this sense contains at most n Steiner points and thus

at most, 2n points. Let A denote the value of the solution obtained by

the approximation algorithm of Lemma 4.4. Furthermore, let M denote

the side length of the bounding box of P. We scale eg, the penalties and

all coordinates by

247i

P=7Ä

and move every point (including the Steiner points) to the nearest, points

with odd integral coordinates. This means that all points lay on a grid

of granularity 2 which we call the 2-grid. We denote this rounded point

set by P'. If more points are moved to a grid point then we treat them

as single point. The penalty associated with this point is the sum of

the penalties of the points moved to this coordinate. The side length

of the bounding box is now L = Mp. By moving the points we may

have increased the length of the optimum solution. However, we move

at most 277 points by at most 4 units. Since we have at most 277 — 1

edges, we obtain

val(ST*') < p val(<ST*) + 877,

Page 102: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.2. Prolin i inaries89

where ST* is the optimal Steiner tree on P'. Assume for the moment,

we have a solution ST for P' such that

(4.2) val (ST') < (1 + e)val(ST*') < (1 + s)(p val(ST*) + 877).

Transforming ST' into a solution ST for P can be achieved by moving

the points back to their original position and by scaling by 1/p. If P'

contains n' points, the length of each of at most 277' — 1 edges in ST'

increases by at most 4 units. Moreover, if points q\,... ,qi- E P were

treated as a single point, we keep q^ in the tree and connect each of

Ç2, • • ,qk to q-\ by an edge of length at, most 4. Thus we have

val(ST) < - (val(ST') + 8(n' - 1) + 4(n - ri)) < - (val(ST') + Sn) .

That is, wc have

val(ST) < - (val(ST') + 8n) < - ((1 + e) (p • val(ST*) + Sn) + 8n)[j p

= (1 + e) val(ST*) + -8n(2 + e)P

= (l + e).val(ST*) + ieA(2 + e)

< (l + 3e + £2)-val(ST*).

If we want a (1 + e') approximation for P, we have to choose e appro¬

priately.

It remains to be shown that we can find a solution ST' satisfying (4.2).

If A > M/n then L < 24n2/s and we are done. Since L = O (n2) for

fixed e, we can simply use the PTAS for NWLST.

Thus assume that A < M/n. Consider a grid of granularity g— 2An2fe

such that the grid lines have even integral coordinates. We call this

grid the (/-grid. Clearly, there are at most, p2/4 — Ö (n4) such grids. We

claim that there exists at least one g-grid such that the (scaled) optimum

solution is completely contained within a box of this grid. Thus, we can

enumerate all g-grids, treat every box in such a (/-grid as a separate

instance, apply the PTAS for NWLST to it, and finally return the best

solution obtained during this process.

It remains to show that such a grid exists. To see this, we choose the

grid uniformly at random. Every edge e of the scaled optimum solution

crosses lines of the 2-grid. One can easily check that the number of lines

crossed is a lower bound for the weight of the scaled optimum (note

that the lines have even coordinates and that £q(e) > f^(e) > £i(e)/2).

Page 103: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

90 Chapter 4. Node-Weighted Steiner Trees

Thus, the optimum solution, scaled by p, intersects at most pA lines of

the 2-grid. On the other hand, the probability that a fixed line of the

2-grid is also used in the (/-grid is at most 2/y. Thus, the probability

that the optimal Steiner tree crosses a line of (/-grid is at most

pA- = -.

9 n

Therefore, there is at least one (/-grid such that the optimum solution is

completely contained within a box of this grid. D

Next, we adapt the concept of shifted quadtrees or shifted dissections

[11, 12] to our purposes. We require that P is a power of 2. If this

is not the case, we simply enlarge the bounding box appropriately. We

choose two integers a and b with a, b E (0,2,..., L — 2}. The vertical line

with ^-coordinate a and the horizontal line with Ty-coordinate b split the

bounding box into four smaller rectangles. We enlarge those rectangles

such that their side length is P. By Ùo we denote the area covered by

the four enlarged rectangles. Note that Q.q is a square of side length

L() = 2L. Wc now subdivide Ùo using an ordinary quad tree until we

obtain squares of size 2x2. We denote the quadtree generated in this

fashion by QTa^ to emphasize that its structure depends on the choice

of a and b.

Throughout we denote vertical dissection lines with even ^-coordinates

by V and horizontal ones with even y-coordinates by H. A vertical line

V with ir-coordinate x has level I with respect to a if there is an odd

(potentially negative) integer i, such that x — a + i • ^. Throughout,

lev(V, a) = I denotes the smallest I for which such an i exists. Similarly,

we define the level of horizontal lines and lev(P, b). The level of a square

Û in the quadtree QTab is defined as follows: The squares in the very

first subdivision have level 0 and a square 0 at level I is subdivided by a

horizontal line H and a vertical line V with lev(P, b) = lev(V, a) = / + 1

into four squares at level / + 1. The level of a square Q is denoted by

lev(n). Let us shortly summarize salient properties of shifted quadtrees.

Observation 4.5. For a shifted quadtree QTaj} the following is true:

(1) The subdivision uses only horizontal and vertical lines that have

even coordinates.

(2) The depth of QTajb is logP =: t.

(3) The side length of a square Û at level I is \0.\ = L/21.

(4) The number of vertical (horizontal) lines in QTa^ at level I is at

most 2l.

Page 104: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.3. (s,t)-Maps and Standardized Solutions 91

Coordinates

2

4

b=6

10

\2[

14

-4 -2 0 a=2 4 8 10

-

-

1

1

• •

T r.- -

f

1

/

*

!

j *

4--j-

-|

1 1 1

r-

" -i ?

- Levelj

Figure 4.2. The shifted quadtree. The dashed lines

indicate the enlarged rectangles at level 0 and the dis¬

section lines within.

Note that t is integral by choice of L. This property will turn out to

be useful in Section 4.3.1. Figure 4.2 illustrates the definitions we made

above as well as Observation 4.5.

4.3. (s,t)-Maps and Standardized Solutions

4.3.1. (6',t)-Maps. From now on, we only consider the problem NW¬

LST. As already mentioned, wc need some subdivision of a square Ù E

QTa,fe into cells. A natural idea would be to use a regular (m x m)-grid.

Indeed, such grids already appear in quasi-polynomial approximation

schemes of [14, 121]. Unfortunately, it will later turn out that we would

have to choose

m— fl(st) — O(log 77)

to obtain a (1 + l/s)-approximation, where s = 0(1/e). Therefore,

this grid has f2(log n) many cells. This is too much, since we later store

Page 105: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

92 Chapter 4. Node-Weighted Steiner Trees

some bits per square and since we require that we have polynomial many

states per square.

This problem is solved by using so-called (s, £)-maps which have only

ö(logn) cells. The intuition behind (s,£)-maps is very simple. In the

PTAS, special care has to be taken for edges that cross boundaries of

squares. Due to complexity, we do not explicitly specify the endpoints

of such edges. Instead, we will argue that it suffices to describe them as

'edges' between cells. This has the effect that our PTAS can only recon¬

struct that the endpoints are somewhere within the cells. However, the

length of the edge varies by at most twice the side length (J^-metric) of

the cells. The definition of (s, t)-maps comes directly from the following

simple observation. We can estimate the endpoints of long edges more

roughly than those of short edges, since we have only to assure that the

absolute error is at most 1/s of the edge's optimal length. Edges that

reach deep into 0 are long and thus we can make the cells inside 0

larger than those which are close to the boundary. The definition of an

(s,t)-map follows exactly this idea. We will ensure that the side length

of a cell £ is at most

f 1 1ï

max < — Ol, -(distance between £ and boundary of 0) >

[st s J

and that the map has O (s2t) cells. In essence, an (s,£)-map can be

regarded as a (st x st)-grid with cell sizes growing to the interior.

Now we define (s,t)-maps more formally. For arbitrary s E N, we define

a function ß : N0 —> N0 as

[LiJ ^'<8*

ß(j) = i2,8s < j < 9s - 1

.

Let m = m(s) = Ss2T. Here r is the smallest integer such that 2r > t,

where t is the depth of the shifted quadtree. Note that, this implies

r < 1 + logt. Therefore, we have Sst < rn < 16st.

We subdivide O in rings, as illustrated in Figure 4.3 for s — l.The jth

ring has width 2/3(^ |0|/m and consists of congruent axis parallel squares

of the same size. We call this subdivision the (s, t)-map and write Af [0].

We have groups of 4s rings of same size. The only exception is the

third group which contains 5s rings. Since we later require that the cells

partition the square, wc assume that the upper and left boundary always

belong to the corresponding neighboring cell if there is any.

Page 106: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.3. (s,t)-Maps and Standardized Solutions 93

Ring No

fft - -t 0 3

.

-4 7

-

-

8

:: 9

-

--

10

--

11

12

13

;-

14

--

15

-

16

.._

- 17

18

Figure 4.3. The upper-left part of an (,s,t)-map with

s = 1. The cell size doubles for each group of rings.

Each group has 4s = 4 rings except the 3rd group which

has 5s — 5 rings.

Let 7 count the number of groups. Since the width of a ring in the

ith group is 2'~"1|0|/m, 7 must satisfy

(5«-4,)2*M+4.f;2i",|ûl777 772 2

'

and thus

7 = log(m/8s) = r < 1 + logt

Note that 7 is integral by definition of r. In the remainder of this section

we state some properties of (s,r.)-maps. In some sense, (s,t)-maps and

grids share salient, properties. However, the number of cells in a m x m

grid is m2 = ö(s2i2) while an (s,t)-map has much fewer cells.

Lemma 4.6. M[Q] contains Ö (s2t) cells.

Proof. In each of the 4s outermost rings, we have less than 4m cells per

ring. Since the size of the cells doubles from group to group, we have at,

Page 107: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

94 Chapter 4. Node-Weighted Steiner Trees

most

_—r< 3G7/-7S = 0 (s2t)

7-1

cells in At[0], where the first term counts the number of the s many

additional rings in the third group.D

Lemma 4.7. Let £ G M[0] have side length C > 2|0|/m and let p E P

be a point which is contained in £. Then the distance ofp to the boundary

of 0 in any J£q-metric is at least 2sC.

Proof. Assume that C — 2/c-i|0|/m for k > 2, i.e. <£ is in the kth group.

Then the minimum distance of p to the boundary of 0 is simply the

orthogonal distance to the nearest, boundary line of 0. This is true for

any Jzfq-metric. In order to obtain a lower bound to this distance, it,

suffices to add up the widths of the rings between £ and its nearest

boundary of 0. This sum is at least

g4s^l = ^3-4.151 > 2*3 = 2*7^—'

m m m m

for ail k > 2. G

Let, 0 be a square at level / and let A4[0] be an (s,£)-map on 0. Fur¬

thermore, let, 0' be a child of 0 in QTajb and let .' be a cell of M[Ù'}.A cell C in M[0] is a parent of <£' if £' n £ / 0, i.e. if the cells overlap.

We write child [(£] for the set of children of <£. The next, lemma states

that the parent-child relation is unambiguous and that all the children

of a cell are contained in the same rectangle of QTa^.

Lemma 4.8. Every cell has a unique pa/rent. Moreover, for each cell

CE M[Q], we have child [C] Ç M[Ù'} for some child 0' of Ù.

Proof. We first show that every cell has a unique parent. Without, loss

of generality, we assume that, 0' is the top left, child of 0. We partition

0' into two regions A and B where the latter is the lower right quarter

of 0''. Region B only contains the 4s innermost rings of Af [0], since

the rings of the 7th group have side length 27_1|0|/m = |0|/16s and

thus 4s rings have width |0|/4. This is also illustrated in Figure 4.4 for

s = 1. Thus, every £ G M [0] is either completely contained in A or in

B. The same is, by definition true for all £ E M[0;]. Note that this

already implies the moreover-part of the lemma.

Page 108: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.3. (s, t)-Maps and Standardized Solutions 95

1,

0'|

0i

II

|Û'|_

2

|Û|4

A i >JZ >

"

---

loi

Figure 4.4. The partition of 0; into regions A and B.

Let p(i) denote the distance of the 7th group from the boundary of 0.

By construction of the (s,t)-map, we have

i-l

and therefore we obtain

,fc-i|Û| .10 i<3

rn 4slui

i > 3

p(i)^(y-1-!)^ 7<3

4s2li|û| i > 3

Note that p(i) does not depend on ,s, as m— 8s2r. Moreover, let 6(i,j)

denote the distance of the jth ring in the 7th group from the boundary

of 0. We have

-i|Û|6(i,j) = p(i) + (j-l)¥

777

Similarly, we define p'(i) and 5'(i, j) for 0'. Note that, the side length of

0' is |0'| = |0|/2.

We first show that every cell of M [0;] in region A has an unique parent

in Af [0]. That is, we need to show that, there exists (i',j') for all (i,j)

such that 5'(i',j') = ö(i,j). If i > 3 then p'(i + 1) = p(i) and thus

S(i,j) = P(i) + (J - 1)2-^ = P(i - 1) + (j - 1)2*^1 = S'(i + 1J).777 2777,

Page 109: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

96 Chapter 4. Node-Wciglitcd Steiner Trees

The case i < 3 can be easily seen from Figure 4.5 which illustrates the

distances to the boundary of 0 of the rings in the first, three groups

of A4 [0] (top) and those of the rings in the first four groups of M [0']

(below) for the case s — 1. Note that choosing s > 1 increases the

granularity, but, the situation remains the same.

M[Q] C

\

M[Ù'\

"CLL

X

*$&

,^

<$

Ji$

Figure 4.5. The rings in the outermost groups of

M[0] (top) and M[Q.'] (below) for the case s = 1. The

additional ring in third groups drawn shaded.

Now we consider region B. We have to show that there exists for all

1 < j < 4s a (i',f) such that

WJ')16s

J-

For fixed 1 < j < 4s choose k E Z such that 4s < j2k < 8s. Note that

k > 1 and k < log(8s) <C r. Let i' = r — k + 1 and observe that due to

r = 0(log log 77,) we may assume without loss of generality that // > 4.

Furthermore, let j' = l + 2T~''+lj—As. Note that the choice of i' implies

that 1 < j < 4s. Now we easily check that

S'ii'J) 4s2z1 P + (/

-

1)T-1M=

(4s + j'-

1)2^XM2m

u ;2m

v J J2m

= (4s + j' -1)¥101

16S21(4. + j'-l)2''—iM = glJ-

16s 16s

as desired. D

4.3.2. Standardized Solutions. In this section, we will consider trees

that enjoy certain structural properties. Roughly speaking, our PTAS

optimizes over all such trees. The main result, of this section is Theorem

Page 110: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.3. (s,t)-Maps and Standardized Solutions 97

4.10 which states that there exists an almost optimal tree having this

structure. Let a and 6 be fixed and let QTa^ denote the corresponding

shifted quadtree with(s, t)-maps on all its squares. Furthermore, let ST

be an arbitrary Steiner tree. An internal component of ST with respect,

to 0 G QTŒib is a connected component in the induced Steiner forest

ST[V(ST)nO]. Let k(0.,ST) count, the number of internal components

of 0. An edge {u,v} G ST is an external edge of 0, if exactly one

endpoint of {77,7;} is contained in 0. Let, S(0.,ST) denote the set of

endpoints (within 0) of external edges. An edge {u, v} G ST has level I

or appears at level I, if I is the least level, where {u,v} is external. The

level of {u,v} is denoted by lev({77,7;}).

Definition 4.9. Let r G N, r > 2. A Steiner tree ST is (r, s)-standardized

with respect to a and b if every square 0 G QTa,b is (r, s)-standardized,

i.e., 0 satisfies

(SI): k(Ù,ST) <r.

(S2): For all £ G M[Q], all points in £(Ü,ST) n £ belong to the

same internal component of 0.

Henceforth we need the following technical concepts. Let S* denote

the set of all Steiner trees which have the same point set as ST*, i.e.,

ST E S* if and only if V(ST) = V(ST*) and S(ST) - S(ST*). For

fixed a and b, we define a transitive relation <] on S* as follows. For

ST, ST' E S* we have ST <\ ST' if and only if there exists a bijection

7 : E(ST) - E(ST') such that lev(e) < lev(7(e)) for all e G E(ST).

We remind the reader that the dissection lines subdividing 0o have level

0, and thus a small lev(e) means that e is cut near to the root.

Theorem 4.10. For all a, b E {0, 2,4,..., L - 2} there exists an (r, s)-

standardized Steiner tree «ST*6 G S* with ST* < ST*a b

such that if a

and b are chosen uniformly at random then

E[val(5T;j6) - val(5T*)] < O (-+ -^ val(5T*).

We need several preliminary lemmas for the proof of Theorem 4.10. We

start with the following simple statement which also appears implicitly

in [11] and [14].

Lemma 4.11. Let a and b be chosen uniformly at random from {0,2,...,

L — 2} and let ST be some fixed Steiner tree. Furthermore, let£C;i denote

Page 111: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

98 Chapter 4. Node-Weighted Steiner Trees

the event that e G ST is an external edge at level I. Then

Pr{^}<—£(?(e).

Proof. Let £' ,denote the event that e crosses a horizontal or vertical

line which has level / in QTa,6- Clearly, we have

Pr{£«,,}=Pr)Û^-UèPrWj}-[j=0 J j=0

If the edge e has length ^(e), it crosses at most, £q(e)/2 horizontal dis¬

section lines and iq(e)/2 vertical ones. Recall, that dissection lines have

even integral coordinates. Therefore, we have P/2 horizontal (vertical)

dissection lines. Since there are 2-7 dissection lines at level j, the proba¬

bility that a fixed dissection line has level j is at most 2J+1 /L. Note that

this only an upper bound, as for instance dissections lines outside the

(scaled) bounding box can never have level 0. Since e crosses at most

£q(e) dissection lines, we obtain

12J 2'+2

3=0

This completes the proof. D

Lemma 4.12. Let a,b G {0, 2,4,..., L - 2} and let ST', ST be Steiner

trees such that ST' <\ ST. Furthermore let xi(ST') and xi(ST) count

the number of edges in ST' and ST, respectively thai are external at

level I. Then

xj,(ST') > Xl(ST)

for allO <l <t.

Proof. Note that every edge which is external at level / is also external

at all levels below /, i.e., at all levels /' with I' > I. Since ST' <\ST, there

is a bijection 7 from E(ST') to E(ST) such that lcv(e') < lev(7(e/)) for

all e! E E(ST'). If 7(e') is external at level /, then e' is also external

at level I. Thus, if 7(e/) contributes to X[(ST) then e' contributes to

xi(ST'). D

Lemma 4.13. For all a, b E {0, 2,4,. ..,L - 2} there exists a Steiner tree

STa^b E S* satisfying (SI) such that ST* <STrhb. Moreover, if a and

b are chosen uniformly at random we have

E{eq(STa,b)-eq(ST*)] < ^=£q(ST*).

Page 112: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.3. (s,t)-Maps and Standardized Solutions 99

Proof. Assume for the moment that a and b are fixed. In the sequel,

we will construct a sequence of Steiner trees STt,STt-i,... ,5T0 such

that STt = ST* and such that STa,b '— STq has the desired properties.

As in Section 4.2, let, H and V denote horizontal and vertical dissection

lines of the shifted ciuadtree. By definition, the dissection lines have

even coordinates. Furthermore, let x(H) and x(V) count how often <ST*

crosses the dissection lines H and V, respectively. One easily checks that

(4-3) £x(#) + £xM<^(ST*),H V

where the sums are taken over all horizontal (vertical) dissection lines of

the shifted quadtree.

We proceed in bottom-up fashion, i.e., we start with STt = ST* and

transform STi into STi-i. In the leaves of QTa,b there is nothing to

do, since every leaf contains at most one point or Steiner point. At level

/ we check for every square whether it satisfies (SI). If this is not the

case, we perform some corrections to the tree. Thereafter every square

at level I will satisfy (SI) and we move to level / — 1.

Whenever we find a square 0 at, the current level, say I, which con¬

tains more than r internal components, we modify its interior as follows.

Let /Ci, ••,/C/c(û,5T)=fc denote the internal components of 0. For every

such component, we choose a representative point ui G K%. We connect

u\,.. .

, Uk by a Hamiltonian path and remove fc — 1 external edges. We

call this modification a reduction operation (Figure 4.6). It is well-known

[78, 120] that the shortest salesman tour through k points in a square of

side length S has length at most S\/k. Thus we can find a Hamiltonian

path which has length at most SVk, where S — L/21 is the side length

of 0. At level I, wc can thus charge to every external edge which we

delete a cost, of

1 Ly/k 2L 2P

Si := — < — <-p-=,

k-1 2l -2lVk,~2lVï

since k > r > 2. Now, (SI) is satisfied in 0 and we proceed similarly for

the remaining squares at level I.

Since the procedure above does not affect the point set of the tree, we

have STa,b S*. Note, that the edges wc add have always greater level

than those we delete. We obtain the bijection 7 : E(ST*) —> E(ST(l)h)

by defining an arbitrary bijection between the deleted external edges and

those added within the square. Thus ST* < STa^.

I

Page 113: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

100 Chapter 4. Node-Weighted Steiner Trees

Figure 4.6. A reduction operation on 0 for r < 3.

Adding a Hamiltonian path (right) of length k allows us

to remove k — 1 external edges and reduces the number

of internal components to 1.

Next, let us bound the expected increase of length due to all reduc¬

tion operations. Let c(H, a, b, I) count how many edges crossing H are

charged and deleted due to a reduction operation at level /. Clearly, we

have c(B,a,b,l) = 0 if Z < lev(H,b). Otherwise, if I > lev(H,b) then

c(H, a, b, I) is independent of b. This can be easily checked as follows.

Recall, that if lev(P, 6) < I then H is present at levels / through t. For

fixed a and b, let S1bdenote the set of squares on level /. Note, that

the boundaries of the squares in Sla bare horizontal and vertical dissec¬

tion lines that have level I or less. Let H denote a horizontal line with

lcv(P,6) = /. Changing b to b' such that lev(P,6') < lev(H,b) does

not affect the dissection at levels I through t, since Slab, = Sla b. Hence,

c(H,a,b',l) = c(H,a,b,l) for all / > lev(H,b). Thus, there exist values

c(H,a, I), such that

c(H, a, b, I) =c(H,a,l) ,1 >lev(H,b)

0 otherwise.

With respect to the random choice of a and b let the random variable

A# = Yli C(H, a, b, I) count the increase of length along a horizontal line

Page 114: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.3. (s,t)-Maps and Standardized Solutions 101

H. The expectation of Ah can be bounded by

a b l=\cv(H,b)V

A-

_JL 9/"

a Z=0

<16

V,, ; —n

P.,.

a /=()

where the last inequality follows from Observation 4.5. Since every edge

is only charged once, we have

t

J2~c(H,a,l)<x(H).1=0

and thus

Proceeding similarly for the vertical lines and by using (4.3) we bound

the total expected increase in length which is at most

*w * ^ (£*(*)+ £xwo

\fr

This completes the proof. G

Proof of Theorem, 4-10. We first show for fixed a and b how to obtain a

tree for which (SI) and (S2) holds. By Lemma 4.13 we obtain a Steiner

tree STa,b which satisfies (SI). Furthermore, we know that STa b G S*

and ST* '«<STû)b.

All we have to do, is to make sure that (S2) holds. Proceeding bottom-

up, we transform STa^b into a standardized tree ST*a b.As in the proof

of Lemma 4.13, let STt denote the tree obtained after processing level

/, that is we start with STt = STa,b and end with ST0 = ST*ab. Let 0

be a square at level /. Consider a cell C G M[0] with side length C. We

have to make sure, that all points in S(H,ST}) n £ belong to the same

internal component of 0. This is achieved as follows.

Page 115: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

102 Chapter 4. Node-Weighted Steiner Trees

Let a, v E <% be two points which are contained in and belong to

different internal components. Furthermore, let, eu and ev be external

edges with endpoints u and v, respectively If adding {77,7;} closes a

cycle which contains eu or eVl we keep {u,v} and remove either eu or ev

whichever lies on the cycle. We call this operation, which is illustrated

in Figure 4.7 a), a replacement of ev. Note, that, lcv({77,t>}) > lev^).

Otherwise, we redirect ev from v to u as illustrated in Figure 4.7 b).

This operation is called redirection of ev. Note, that a redirection does

not change the level of an edge. Proceeding iteratively for all cells and

squares at level /, we obtain STi.

We have to check that replacements and redirections do neither violate

(S2) on levels below / nor (SI) on any level. First, we show that (SI)

is safe. This is quite obvious for the levels below I, since we reduce

the number of internal components in the squares at level /. Consider

a replacement which takes place in a square 0 and let 0' denote any

square containing 0. The current tree induces a forest T' within 0'.

By inserting an edge {u, v} we either close a cycle in T' or connect two

of its components. In the first case the number of components does not

change, since we only remove this cycle by deleting eu or ev, respectively.

In the second case, the edge we delete might be completely contained

in 0' and we obtain a new component. In any case, the number of

components within 0' does not increase.

If we have a redirection in 0 the situation is as follows. By construction,

ev is redirected. Let v' denote the external endpoint of ev. If v' is

not contained in 0' then the number of components within 0' does not

change. Otherwise, ev is contained in 0'. In this case redirecting ev does

not change the number of components within 0', regardless whether u

and 7; are connected within 0' or not. Hence, neither replacements nor

redirections violate (SI) in any square of QTa,b-

Recall, that an edge which is external at, level / is also external at, levels

/ + 1 through t. The replacement operation thus connects two endpoints

of external edges. Since we proceed bottom-up, the cells on lower levels

containing those endpoints are clean in a sense that they already fulfill

(S2). Thus adding this edge will not violate (S2) on any level V > I. In

case of redirections we can argue similarly.

Both replacements and redirections delete one edge, say e, from the

tree and add another edge e'. We call e' the successor of e. For every

Page 116: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.3. (s,t)-Maps and Standardized Solutions 103

e E STU)b we obtain a sequence

(4.4) STa,b 3 e —^ e! —> e" —> -> e0 e ST*ab

of successors. Every arrow stands for a single replacement, or a single

redirection. Observe, that the edge level is monotonically nondecrcas-

ing in this sequence. We denote the bijection which maps e to Cq by

7. Clearly, lev(7(e)) > lev(e) and thus STab <l ST* b.Since <] is tran¬

sitive and ST* < STab, we have «ST* < STab. Clearly, ST*ab E S*,

since we neither added Steiner points nor lost connectedness during the

transformation process.

0/

,t

/

^ i\ )

s

\

V_ J\

\

\

\

0

£

/-" .J

V.

J

J

^U \ev

\ j

(a)

""

(b)

Ftgure 4.7. Sketch for the proof of Theorem 4.10. If

{77,7;} closes a cycle which contains eu or ev, then we

can add {7/, 7;} to the tree an delete eu or ev instead (a).

Otherwise, 77, and 7; are not connected over eu and ev.

In this case we redirect ev to u (b).

Finally, we bound the expected increase of length due to this transfor¬

mation process if a and b are chosen at random. Recall, that for every

edge e G STa^b there is an edge sequence as given in (4.4). This sequence

can be rewritten as a sequence a(e) = (<ti, ..., <7fc) of redirections and re¬

placements. One can easily check that a% is a redirection if % < k. In

particular, a(e) contains at most one replacement which is then 07-. If

Page 117: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

104 Chapter 4. Node-Weighted Steiner Trees

o~k is a replacement, then the total cost of o(e) is bounded by the length

of the edge we insert. This length is at most the length of the diagonal

of the cell in which the new edge was placed.

Otherwise, if o^. is a redirection, an upper bound can be obtained as

follows. For every endpoint, of e = {u,v}, we obtain a sequence of

redirections a(u) — (oj,..., <rj|! ) and a(v) — (a",..., cr£ ), respectively.

Recall, that by Lemma 4.8 every cell £ at level I has a unique parent (£'

at level l-l. Thus, £0 <£' / 0 implies £ Ç £'. If e = {u, v] is redirected

in £ to {u',v} and again in (£' to {u",i;} then £' contains both u and

u", since u' G £ n <£'. Thus every cell where a redirection of e occurs

contains the corresponding original endpoint, i.e., u and v, respectively.

Thus, the total cost of cr(77,) can be bounded by the diagonal length of

the cell where crj£ takes place, since this cell also includes the original

endpoint u. The increase of length due to a(e) can now be bounded as

follows. Let <rj£u and a], occur in cells £u and v, respectively.

Assume without loss of generality, that <£u has greater side length. Then

clearly, the cost of a(e) is bounded by twice the diagonal length of u.

We partition E(STa^b) into Pont and Pin. A cell which belongs to the

first 4s rings of M[Q] is called an outer cell. All other cells arc inner

cells. If <7fc is a replacement, then e G Eout if and only if the new edge is

contained in an outer cell. Otherwise, if &k is a redirection then e G EOVLi

if and only if Cu (and thus also £v) is an outer cell. Note, that E-m and

Pout are random variables as they are defined with respect, to ST0)b,

which depends on the choice of a and b. The random variables Aout and

Ain count the increase of length due to Pout and Pjn, respectively.

First, we consider Eout. In this case it is convenient to estimate the

error just roughly. As the side length of a square at level / is L/21 (cf.

Observation 4.5), we deduce that the length of the diagonal of an outer

cell in every J^-metric is at level / at most

(4.5) 5t = -2l~l.rn

We charge at level / a cost of at most Si to e G Eout if we apply a

replacement to e. Otherwise, if we apply a redirection we have a cost, of

at most Ôi per endpoint. Hence, we may assume that we charge at most

20} to e. That is we obtain the following rough upper bound:

t

(4-6) Aout<J2^i-x,(STa,b),

Page 118: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.3. (s,t)-Maps and Standardized Solutions___

J05

where the random variable xi(STa^) counts the number edges in STnj?that, are external at level I. Together with ST* < STa,b, Lemma 4.12

yields xi(STa_b) < xj(ST*). Thus we obtain

(4.7) E[x,,(STa,b)} < E[.t/(«ST*)] = ]T Pr{£e,j}.e.eE(ST*)

Thus by using Lemma 4.11 and m = m(s) > Sst, combining (4.6) and

(4.7) yields

t

E[Aout]<£ Y, Pr{^,i}2«5z1=0 eeR(ST"<)

eeE(ST*) 1=0

eeE(ST*) 1=0

For e G Pin the situation is as follows. Observe, that by Lemma 4.7

the diagonal of an inner cell is less than its distance from the boundary

of the enclosing square. Thus the length of the tree decreases if the

last operation in a(e) is a replacement. Otherwise, let £u denote the

largest cell in which a redirection takes place. By the considerations we

made above, the total increase of length due to a(e) is at most twice the

diagonal length of £u. By Lemma 4.7 we know that this diagonal length

is at most £q(e)/s. That is, we have

Ah,<j2^M< E *M<leq{STaJ)).s s s

Finally, we bound the total expected increase of length, i.e.,

E[£q(ST) - £q(ST*)}.

First, we estimate the expectation of A := ^(<ST*jb) — £q(STa^)- By

linearity of expectation and Lemma 4.13, we have

E[A]=E[Aout]+E[Ain]

<-£q(ST*) + -E[£q(STa,b)}

4 /2 16 \<-iq(ST*)+(- + -^=) £q(ST*),

s V s s \ r )

Page 119: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

106 Chapter 4. Node-Weighted Steiner Trees

and hence again using Lemma 4.13.

E[£q(ST*aib) -fq(ST*)] <E[A]+ntq(STa,b)-£q(ST*)}

(S 16 8 A n ,^*N

\ s s \Jr yjr J

Observe that <ST*b= «ST0 spans the same points and Steiner points as

*ST*. Hence, we can bound val(<ST* b) as claimed.

4.4. The Approximation Scheme

Although (r, s)-standardized trees have nice properties, we do not sec an

approach to compute an optimal one in polynomial time. Instead, our

PTAS computes an almost optimal (r, s)-standardized tree. For fixed

a and b, consider the optimal standardized Steiner tree ST*ab and two

squares 0U and 01; at level /. Assume that the two squares have a

common parent 0. Let e = {u, v} be an edge that is contained within 0

but has one endpoint in Ùu and the other in Ùv, i.e, e appears at level

/. There are cells £u and v containing the endpoints of e in Qu and

Qv, respectively. The tree <ST*bhas the following structural property.

All edges which appear at level / and have an endpoint in <LU connect

to the same internal component of Ow. The points in Cu which belong

to this component are from a structural point of view equivalent, since

instead of connecting v to u we can connect v to any other of those points

without adding a cycle or losing connectivity. Although the length of

such an edge may be greater than £q(e), the absolute error is at most

twice the side length of u. Of course, the same is true for <£v. Therefore,

the distance between the centers of <£u and <£„ is a good estimation to

the length of e.

Under the assumption that this estimation suffices, it is quite obvious

that the following information is sufficient to describe a standardized

Steiner tree within 0. Firstly, we specify in which cells we have endpoints

of external edges. Intuitively speaking, such cells, later called portals,

represent the component to which all external edges should be connected.

Secondly, we encode which cells represent the same internal component

of 0. This motivates the following strategy for our PTAS. In a first phase

we compute the "optimal" structure of our solution. This structure is

described by edges between centers of cells and wc minimize the total

Page 120: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.4. The Approximation Scheme 107

length of the ccll-to-cell edges wc use. In a second phase, those cell-to-ccll

edges are replaced by "real" edges.

4.4.1. Square Configuration. We describe the encoding in more de¬

tail. Let 0 be a square in QT„> The configuration C(0) of Q is with

respect to the irregular map M [O] and is given by the following param¬

eters.

(1) For every cell £ we store a bit p(£) which indicates whether £ is a

portal cell.

(2) For every cell £ we store a bit a(<£) which indicates whether <£ is

an anchor cell. We require, that every anchor cell is also a portal

cell, i.e., a(£) ^> p(£).(3) A partition Z of the portal cells of 0 into at most r sets.

The anchor bit is not required to encode the interior of a square but nec¬

essary to guarantee that our PTAS returns a connected tree. Intuitively

speaking, p(<£) indicates an obligation to connect, to £ on some larger

square. In this context the anchor bit, indicates that this obligation is

handed over to the next larger square.

Lemma 4.14. The number of configurations for 0 is at most 2 \s l °s 7>.

Proof. By Lemma 4.6, Af [0] contains at most Ö (s2t) cells. We store

two bits per cell, /?(<£) and a(£). Furthermore, the partition of the portal

cells into at most r components can be encoded as a r-coloring of the

cells. Altogether, we have

/"2o(s20^2 . 2°(s2tlogr) = O (2°(s2tlo&r)]

configurations per rectangle.

The configuration, where no bit, is set is called the empty configuration.

We write C(Ù) = Q. The configuration of QTa,b, denoted by C(QTa,b)is a set which contains tuples (0,C(0)) representing the configurations

of all the squares in QTa,b including Oo-

4.4.2. The Algorithm: First Phase. For every square 0 and every

configuration C(0), we compute a value T[0, C(0)] which can be seen as

an almost tight, upper bound to the cost of the optimal subtree within 0

which has the structural properties specified by C(0). Hence, P[0o,O]is an upper bound to val («ST* b). Since val(«ST*)b) is a good upper

Page 121: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

108 Chapter 1. Node-Weighted Steiner Trees

bound to val(<ST*), it suffices to quantify the gap between vi\\(ST*lb)and T[Qo,0]- This will be done in Section 4,4.4.

If 0 is a leaf of QTa,b then we have exactly one cell Co which contains a

point with odd integral coordinates. This point need not be contained in

P. First we check whether p(£) = 0 for all £ G Af [0]-{£o}- If this is not,

the case, we store T[0, C(0)] — oo. Otherwise, we determine the penalty

we pay in 0. We have three cases. If p(<£o) = 1 and P n Co = 0 then

we place a Steiner point, into Co and set, P[0,C(0)] — cs. If p(£o) — 0

and P n Co = {u} then we store T[0,C(0)] — ir(u). In all other cases,

T[0,C(0)] = O.

If 0 is an internal node of QTa,b we proceed as follows. Assume that

0 has level I and let 0i, ...,04 denote its children. We enumerate all

combinations of configurations for 0i,...,04- Let C(0i), ...,C(04) be

such a choice of configurations. For every square 0^, C(0Z) defines a

partition Z(Ùi) of the portal cells in Qt into at most r classes. We now

construct a (not necessarily unique) forest Z(Ql) with the portal cells of

Qi as vertices such that Z(Ùi) has the property that two portal cells Ci

and £2 belong to the same connected component of Z{Ù.i) if and only if

they are in the same partition of Z(ti,i).

For the sake of brevity, we use Z' = [J^ Z(Ùi). Let C be a portal

cell and let C G child [<£]. If a(<£') = 1 then we say that ' is an hook

cell of C. Recall, that Z' is a graph on the portal cells of the children

of 0. A choice of configurations C(0i),... ,C(04) is admissible for a

configuration C(0) if each of the following conditions holds.

(CI): Every portal cell in 0 has at least one hook cell.

(C2): The parent in 0 of every anchor cell in some 0^ is a portal

cell, unless 0 = 0o-

(C3): All hook cells of a portal cell in 0 belong to the same connected

component of Z'.

Furthermore, there exists a graph V on the portal cells of [Ji 0i which

has the following properties.

(C4): T> uses only edges which cross the dissection lines that divide

0 into its children.

(C5): Every connected component of V U Z' contains at least one

anchor cell, unless 0 = 0o-

Page 122: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.4. The Approximation Scheme 109

(C6): Two portal cells Ci and £2 of 0 belong to the same partition

class of Z(Q) if and only if their hook cells belong to the same

connected component of V U Z'.

Remark 4.15. The relaxations of (C2) and (C5) are necessary to com¬

pute P[Oo,0]- ^s the configuration O cl°es n°t contain any portal

cell at all, there would otherwise be no admissible configuration of the

children.

The length of an edge in V is the distance of the centers of the por¬

tal cells which it connects in the ^-metric. Let tq(V) denote the to¬

tal length of P. If there is no combination which is admissible, we

store oo in P[0,C(0)]. Otherwise, we choose admissible configurations

C(0i),..., C(04) and a graph V such that

4

(4.8) J>[0z,C(0,)] + ^(P) + Y, [C(£i) + C(£2)}

is minimal, where C(Cj ) and C(£2) denote the side length of the portal

cells Ci and £2, respectively. In essence, the third part (the sum over

all edges in V) of the formula above is necessary to bound the deviation

in length from the optimal standardized solution. This will later be

explained in more detail.

Given C(0i), • • ,C(04), we can use the following simple algorithm to

compute the graph V for which

4,(2>)+ E [C(Ci) + C(£2)]{Ci,£2)6-0

is minimal. Let JC\,... ,Kk denote components of the Z'. Let, B denote

a complete weighted graph on KL\,... ,Kk- If hZh and Kj belong to the

same square, then u;(/Cz,/C7) = 00 due to (C4). Otherwise,

(4.9) u^JCj)^ min {dq (Cl,c2) + C(c,) + C(c2)} ,

ci<EV(Ki),c2£V{)Cj)

where dq (ci,c2) denotes the distance between the centers of c{ and c2.

To compute V, it suffices to compute minimum spanning forest on B

subject to (C5) and (C6). Due to (SI) we have at most r internal

components in each 0^ and thus k < 4r, i.e., the graph B has Ar vertices.

As there are less than (4r)4r spanning forests on B (cf. [6]), we can find

V by enumeration in time Ö ((4r)4r).It is quite obvious that we can find the configurations C*(0i ),... ,C*(Ù4)that minimize (4.8) by exhaustive search. Let Pq denote the optimal

Page 123: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

110 Chapter 4. Node-Weighted Steiner rLrees

graph V corresponding to *(). We compute P[0o,O] hy using a dy¬

namic programming approach. If we proceed bottom-up, it suffices to

read the P[0,,C(0,)] from the lookup table. We obtain P[0O, O] which

corresponds to some configuration C(QT(hb) that we have computed im¬

plicitly. One can easily check, that the running time of this dynamic

program is

f2o(bHiugr)\5 . 0 ((4r)4r) . poly(n) = 2°(bHx^r) O ((4r)4r) • poly(ra)

= o((4r)4rn°(',2lo8r)).

4.4.3. The Algorithm: Second Phase. Note that the first phase

of our algorithm can be easily modified such that it not only returns

T[0o,O] but also a configuration for QTa^ corresponding to P[0O,O]as well as a collection of graphs

D(P) := {V*0 : O G QTaib} •

Intuitively speaking, this collection specifies which of the components

are connected in which square. Even more, the edges to be used are

roughly described by edges between centers of cells. During the second

phase of our approximation scheme, wc construct a Steiner tree ST from

D(P). This time, we proceed in top-down fashion. Let ST — 0. For

some square 0 at level I, wc consider the graph T>^. Let c be some edge

in Vq which connects (the centers) of two cells Ci and C2. By recursively

following the hook cells of both Ci and C2 we determine points u-\ and u2

which serve as endpoints. In other words, starting at portal cell Ci we

choose one of its hook cells, then we choose an hook cell of this anchor

cell, and so on. Thus, we go to lower and lower levels in QTa^ until wc

reach a leaf. In a leaf, we find by construction a point in P or Steiner

point which we choose as u\. We proceed similarly for C2, add the edge

{ui, u2} to <ST and mark c as done. As u\ and 772 arc within £i and C2,

(4.8) implies

Lemma 4.16. £q(ST) < P[0o,O]- D

In addition, we have to prove that <ST is a Steiner tree on V(ST) U

S(ST), that, is, <ST is cycle free and connected and spans all points in

V(ST)GS(ST).

Lemma 4.17. ST is a Steiner tree on V(ST) U S(ST).

Page 124: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.4. The Approximation Scheme 111

Proof. From conditions (CI) and (C3) we obtain the following simpleobservation. Assume we follow recursively all the hook cells of some

portal cell C in a square 0 - not, just, one path as in the second phase of

PTAS. Then the points we reach belong to the same internal component

of 0. We say that the portal cell C represents those points. Thus, in

the second phase of our PTAS, we may choose any of the points that

are represented by C. Now, one can easily check that ST is cycle free.

It remains to show, that «ST is connected.

By (C3), (C5) and (C6) it is clear, that for every square 0 the points

represented by two portal cells C and C in 0 belong to the same internal

component of 0 if C and £' belong to the same connected component

of Z(Q). We say that C and £' represent this component. Finally, the

conditions (C2), (C5) and (C6) make sure that «ST is connected. Assume

ST is just a Steiner forest and let /C be a connected component in ST.

Let / be the highest level where K was represented by some portal cell

C. If a(C) = 1 then by (C2) its parent is portal cell. Otherwise, by

(C5) we would have connected K to some other component of «ST which

is by condition (C5) represented by some anchor cell. Thus, K is also

represented at level / — 1 which is a contradiction. D

Note, that, ST may in general be self-intersecting. It is well-known, that

the length of a Steiner tree which intersects can be improved by replacing

crossing edges. We can thus improve our solution in a last step.

4.4.4. Analysis. From Theorem 4.10, we obtain the following state¬

ment which yields together with Lemma 4.16 the approximation ratio of

our algorithm.

Theorem 4.18. There are a,b G {0, 2,4 ...,P - 2} such that

T[Qo, O] < <9 (l + i+ 4=) val(<$T*).

Proof For a random choice of a and 6, Theorem 4.10 guarantees that,

there is a standardized Steiner tree STa bsuch that

(4.10) E[val(ST*ab) - val(«ST*)] = O ( - + ) val(«ST*),

V(ST*ab) = V(ST*), S(ST*]b) = S(ST*) and «ST* « ST*hb. Wc later

construct a configuration of QTa^ from «ST*hwhich proves that

(4.11) E[P[0O,O] " val(«ST;,)] < ^val(«ST*) + ^ E[val(«ST;,

Page 125: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

112 Chapter 4. Node-Weighted Steiner Trees

Thus, we deduce from (4.10) that

E[P[0o,O]-val(5T; A] < -val(«ST*) + -ö (l + - + ^-\ val («ST* )1 '

s s \ s s/r J

= og + -J=)val(«ST*).Therefore both E[T[0U7 0]-val(«ST^6)] and E [val(ST*a 5) -val(5T*)]are at most Ö (1/s + 1/y/r) val(«ST*), and we finally have

E[T[0o, O] " val(«ST*)] = O Q + -L) val(«ST*).

Hence, there are a, 6 G {0, 2,4,..., L — 2} such that

T[0o, 0}<ofl + -s+^=) val(«ST*).

It remains to construct a configuration of QTa,b from «ST*bwhich proves

(4.11). Again, we proceed in bottom-up fashion. In the leaves of QTQjbwe set the portal-bits of those cells which contain a point of y («ST* b) U

S(STa b). Then we move to level t — 1. Let 0 be a square at level I.

Assume there is a cell C G A4 [0] which contains a set <#(C) of endpointsof external edges. Since edges which are external at level I are also

external at levels I + 1 through t, all children of C which contain points

of S are already portal cells. We set the anchor-bit of all those portal

cells and set p(<L) = 1. Then clearly, both (Cl) and (C2) hold. Note

that we can derive the partition Z from the internal components of 0.

As STa bis standardized, we deduce that (C3) holds.

Let P(0) denote the edges which appear at level / + 1 and have both

endpoints in 0. All those edges cross at, least one of the dissection lines

which subdivide 0 into its children. We construct T> from P(0). Let

{u\,U'z] G E(0) and let Ci and C2 denote the cells in the children of 0

which contain u\ and u2, respectively We add the edge connecting £i

and C2 to V.

Recall that the length of edges in T> is defined to be the distance between

the cells' centers. This distance may be longer than {7ii,772}, but the

absolute difference is at most C\ + C2, where Ci and C2 denote the side

length of Ci and C2, respectively. In addition, we have to pay G\-\-C2 for

the third part of the sum in (4.8). Thus, this edge contributes at most

dq (u{,u2) + 2Ci + 2(?2 to P[0, 0]. Proceeding similarly for all edges in

P(0), we obtain V which clearly satisfies (C4) through (C6).

Page 126: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

4.5. Related Problems 113

Let A = |P[0,O] - ^(«ST* 6)| denote the total cost of this procedure.

As in the proof of'theorem 4.10, we will split A into Ain and Aout such

that A — Ain + Aout. In order to bound AOU|, we use «ST* <d ST*b to

charge the increase of length to edges of the optimum. Let 6i be defined

as in (4.5). Thus we have to charge a cost of at most 2<5/ per endpoint.

The remainder of this proof mimics that, of Theorem 4.10. Finally, we

have

t

E[Aollt]<£ ]T Pr{£e,j}4c5jZ=0 e£E(ST*)

* E ECw|^-<e&E(ST*) 1=0

* E i1iw = U,{ST').eE(ST*) 1=0

For all other edges, we simply have

eeE_'

eSTlib

by Lemma 4.7, and thus also

E[Ain]<-E[^(«ST;,)].

We obtain (4.11) due to A = A;n + Aout. This completes the proof. D

Finally, using Theorem 4.10 and Lemma 4.16 one immediately obtains

the following statement.

Corollary 4.19. £q(ST) < O (l + £ + ^) val(«ST*).

Proof of Theorem J{.1. Recall, that the first phase of our PTAS has com¬

plexity n vs ogrJ whereas the running time of the second phase is

clearly polynomial. Now, choosing s — ö(l/e) and r = Ö (l/e2) com¬

pletes the proof. D

4.5. Related Problems

A natural question is, whether there is also an approximation scheme

in higher fixed dimension. Indeed, a (s, t)-map generalizes to dimension

d_

3 but, the number of cells is f2(td_1). However, we can still construct

Page 127: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

114 Chapter 4. Node-Weighted Steiner Trees

a quasi-polynomial time approximation scheme. Instead of using (s, /;)-

maps it is more convenient to place a (i-dimensional grid of granularity

Ö (e\Q\/t) on each cube 0 in the tree. The remaining parts of our proofs

have straight-forward equivalents, so we obtain a QPTAS for NODE-

Weighted Steiner Tree in arbitrary fixed dimension. Indeed, the

whole analysis simplifies a lot if we use regular grids.

Our approach also extends to other tree problems. For example, assume

that the input contains an additional point, set .% restricting locations

for Steiner points, i.e., every solution should satisfy S(ST) Ç ,9%. Even

if we assign (potential different) costs to the locations in y\y, the prob¬

lem still admits a PTAS which can be obtained by slightly modifying

our algorithm. This is insofar surprising, as the corresponding network

problem is not likely to be in JKPX [80].

Page 128: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

CHAPTER 5

Vehicle Routing with Allocation

This chapter is devoted to Vehicle Routing with Allocation (VR¬

AP). We briefly review the problem statement from Chapter 1. Let

P C 3$d denote a set of points, and let penalty functions a : P —> [0, oo)and ß : P —> [l,oo) be given. A solution to VRAP is a subset of

tour points TCP and a tour ir through T. Each allocation point

p E A :— P\T is allocated to the nearest tour point q G T at a cost of

cv(p) + ß(p) d(p, q). We wish to minimize the length of the tour plus the

total allocation cost, i.e., we minimize

(5.1) val(P, tt) = Y. d& «) + S ("W + £W£d^ qn

Throughout, let T* Ç P and 7r* denote an optimal choice for T and tt,

i.e., val(T*,7T*) is minimum.

VRAP is motivated by vehicle routing. For instance, each point rep¬

resents a bank and we wish to transport cash to the banks using an

armored vehicle. The vehicle can visit each bank (which would be a

shortest salesman tour), but it might be cheaper to visit only some of

the banks while the staff of the other banks have to pick up the cash

at the visited banks. Although the total distance is smaller, this way of

cash transportation is more risky and needs additional insurance (whichcan be modeled using the functions a and ß).

Observe that VRAP becomes the well-known Euclidean traveling sales¬

man problem (TSP) if we have ß(p) > 2 for all p E P, as by the triangle

inequality it is then always cheaper to include a given point on the tour

than to allocate it. So, our problem includes TSP as a special case and

we thus know that VRAP is A/'P-hard, even in the strong sense (see

[54]). Therefore approximation algorithms are of interest. In this chap¬

ter we focus on finding a randomized PTAS that is an algorithm with

115

Page 129: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

116 Chapter 5. Vehicle Routing with Allocation

expected performance ratio (1 + e), or cquivalently returns with prob¬

ability at least 1/2 a (1 + 2e) approximation. Our first main result,

is a randomized nearly-linear time approximation scheme for VRAP in

dimension 2.

THEOREM 5.1. For d — 2, there is a randomized PTAS for VRAP with

time complexity O (n log° n).

Moreover, we study the problem Steiner VRAP where we are allowed

to include additional points on the tour and allocate to reduce the cost.

A solution (T, S, tt) to Steiner VRAP consists of point sets TCP and

S C &d along with a salesman tour tt through T l±l £. With A := P\Tas before, wc wish to find T*, S* and tt* minimizing

(5.2) val* (T, S,tt)= J] d(p, q) + J] (a(p) + ß(p) min, d(p, q)\ .

In this chapter, we also provide a randomized nearly-linear time approx¬

imation scheme for Steiner VRAP in dimension 2.

Theorem 5.2. For d — 2, there is a randomized PTAS for Steiner

VRAP with time complexity Ö (nlog ^l'£>n

Theorem 5.2 dramatically improves a recent result of Armon et al [9]

stating the existant of (randomized) PTAS with complexity Ö (n^1^)for a problem called Purchase Cooperative TSP. This problem is

indeed a special case of Steiner VRAP with a(p) = 0 and ß(p) = 1

for all points p G P. However, the algorithm in [9] seems to extend to

Steiner VRAP as long as ß(p) = ß(q) for all p,q E P. Furthermore,

we show that our algorithms extend to any fixed dimension d > 3.

Theorem 5.3. In any fixed dimension d, there is a randomized PTAS

for VRAP with time complexity Ö ( n log n

Theorem 5.4. In any fixed dimension d, there is a randomized PTAS for

Steiner VRAP with time complexity Ö f nlog^d'e) n), where Ç(d,e) =

0(V~d/e] d-i

We shall also see, that both algorithms can be easily derandomized, in

creasing their complexity to Ö ( nd+l log+3 n) and Ö (nd+1 log

respectively

(<*,*)„

Page 130: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.1. Concepts and Outline 117

There is some literature related to VRAP and Steiner VRAP. First

of all recall that Euclidean TSP admits a PTAS [11, 94], even one with

complexity Ö (nlogn) [108]. The problem VRAP itself was introduced

in 1996 by Beasley and Nascimento [18] as a network problem, i.e.,

instead of points in the plane we have a weighted graph as input,. In

more recent literature, the network version of the problem is often called

Median Cycle or Ring Star (cf. [85] [86]. More references can be

found in [128]. Applications of VRAP in bookmobile routing [53] or

grass-mower scheduling [122] have been reported.

As mentioned above, a related problem called Purchase Cooperative

TSP was recently studied by Armon et al [9] in both the network and

geometric setup. Using methods of Arora [11], they proposed a PTAS

with complexity Ö (n°^/^) for this problem. In addition, they studied

several variants of the problem. As those variants are unrelated to VRAP

and Steiner VRAP, we refer to [9] for details.

5.1. Concepts and Outline

In this chapter we use several methods from the literature. To prove

Theorem 5.1 we combine the adaptive dissection technique due to Kol-

liopoulos and Rao [82] with dynamic programming on r-vapid graphs by

Rao and Smith [108]. Like in the previous chapters wc still proceed by

dynamic programming. The main idea is to let our algorithm estimate

the tour costs and allocation costs in two different ways. Firstly, we use

the adaptive dissection technique to estimate allocation costs. To do

so, we replace the quadtree by what we call a zoom tree. This dissec¬

tion tree adapts to a given solution by zooming directly in the region

where the tour points are, potentially skipping many levels in between.

Our dynamic program identifies the tour points basically by guessing the

corresponding zoom tree.

Secondly, to estimate the tour length, we transfer ideas presented in [108]for Euclidean TSP from the quadtree setting to the zoom tree setting.

The advantage over the quadtree based method of the previous chapters

is that, we consider only constantly many configurations per rectangle.

In order to prove Theorem 5.2, we make use of a relatively simple geo¬

metric observation and employ standard quadtree techniques developed

in [11] and [14].

This chapter is organized as follows. In Section 5.2 we show that it is

sufficient to consider instances with input points that lie on a

Page 131: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

118 Chapter 5. Vehicle Routing with Allocation

Ö (n/e) x Ö (n/e) integer grid. In Section 5.3 we introduce the concepts

of zoom trees and portal-respecting distances, following Kolliopoulos and

R.ao [82]. In Section 5.4, we adapt the notion of r-vapid graphs due to

Rao and Smith [108] to our purposes. In Section 5.5 we describe and an¬

alyze our PTAS for VRAP, and in Section 5.6 we outline how to improve

the PTAS for Steiner VRAP proposed by Armon et a/. [9]. Finally,

Section 5.7 discusses the generalization to higher dimensions and explain

how our algorithms can be derandomized.

5.2. Perturbation

In this section we argue that we may restrict our attention to instances in

which the input points have odd integral coordinates and the sidelength

of the bounding box is a power of 2 and order of n/e. We start with a

simple but (throughout this chapter) important observation: every input

point p with ß(p) > 2 is in every optimal solution a tour point, due to the

triangle inequality. With this fact at hand, we can prove the following

statement.

Lemma 5.5. To prove Theorem 5.1 it suffices to consider only instances

with PC {1,3,5, ...,P-1}2; where L = 2T for the smallest r such that

2T > AOn/e.

Proof. First, observe that we may assume w.l.o.g. that P Ç [0, C]2 for an

appropriate C, and that there exist points (Q,yi) G P and (C,y2) E P.

Moreover, rescaling the coordinates by any factor does not change the

structure of an optimal solution to P. Hence, for any P > 0 we may

assume that PC [0, P]2, and that any solution for P has cost at least L.

Now fix P as in the lemma, and construct a point set P' from P by

moving every point in P to the closest point with odd integer coordinates.

Let (P*,7T*) denote an optimal solution for P and (T,tt) an optimal

solution for the modified point set P'. As the distance between a point

in P and its copy in P' is at most 2, all distances increase at most by

4. Moreover, since in the optimal solution only points p with ß(p) < 2

are allocated, the cost increases by at most 4 per tour edge and 8 per

allocation edge. In total, val(P*,7r*) increases at most by Sn since the

number of edges in (T*,tt*) is at most n. Thus, we have

val(T,7r) <val(P*,7r*) + 8n.

Page 132: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.3. Zoom Trees and Portal-Respecting Allocations 119

Similarly, we can easily transform an optimal solution (7", tt') for P' into

a solution (I\tt) for P such that

val(T,7f) <val(r',7r')-r8rc.

Applying a PTAS with e' — e/2 to the shifted instance P', we obtain a

solution (T',tt') satisfying

val(T', tt') < (1 + e/2) val(P, tt) .

Assuming that e < 1, it, follows for the corresponding solution (T,tt) of

the original problem P that

val(f, 5f) < (1 + e/2) (val(T*, tt*) + 8n) + 8n

< (l + £/2)val(P*,7r*) + 20n

< (l + e)val(P*,7r*),

where the last inequality holds due to val(P*,7r*) > L > AOn/e. As the

perturbation described above can be accomplished in linear time, the

existence of a randomized Ö (n log5 n) time PTAS for shifted instances

implies Theorem 5.1. O

We henceforth assume that P Ç {1, 3,..., L - l}2, where T = O (n/e)is a power of two. Those assumptions will be crucial to the proofs.

5.3. Zoom Trees and Portal-Respecting Allocations

In this section we mainly simplify concepts appearing in [82], defining a

certain distance measure between an allocated point p and the set of tour

points P. This distance measure is defined with respect to a dissection

tree, called a zoom tree, which adapts to a given solution to VRAP. The

main result of this section is that in expectation, this distance measure

approximates the real allocation costs quite closely.

5.3.1. Concepts and Results. For fixed a, b E {0, 2,..., L - 2}, let

Ga,b(i) denote a grid of granularity 2l with origin (a,b), i.e., the ver¬

tical and horizontal grid lines have coordinates {a + j2l : j G Z} and

{bJrj2i : j E Z}, respectively. Let i0 denote the smallest integer such

that L = 2*° > AQn/e, and let Ù0 := (a, b) + [-L, L]2 denote the square

of sidelength 2P with center (a,b). Note that P C Û0- As usual, let |ÏK|denote the sidelength of a rectangle 91 C M2.

Page 133: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

120 Chapter 5. Vehicle Routing with Allocation

For 1 < 7 < io, a rectangle 91 is said to be i-allowable if and only if if

satisfies the following properties.

- 91 lies in Ho and is bounded by lines of Ga,b(l)-- If i > 2 then 7 • 2i < |91| < 7 2l+v.

If i = 1 then |91| < 7 • 27+1 = 28.

We say that i is the level of 91. Note that, |91| = 0(2'). 91 is said to be

allowable if there exists an i, 1 < i < io, such that 91 is 7-allowable.

Observation 5.6. The aspect ratio of an allowable rectangle is bounded

by 14, and the (non-empty) intersection of two allowable rectangles is an

allowable rectangle.

Moreover, we have the following Lemma, which will be useful when ar¬

guing about running times.

Lemma 5.7. The following holds.

(i) There are O (n log n) allowable rectangles that contain at least one

point of P.

(ii) There are Ö (nlog2 n) pairs of allowable rectangles (91', 91) such

that 91' contains at least one point of P and 91' C 91.

Proof. For a fixed i, any point of the n input points is contained in a con¬

stant number of i-allowable rectangles, as such rectangles are bounded

by lines of Ga,b(i) and have bounded aspect, ratio. Thus (i) follows from

the fact that i < logP — O (logn). By the same argument, if 91' contains

at least one point there are Ö (log n) allowable rectangles 91 containing

91'. As there are Ö (nlogn) choices for 91', (ii) follows. D

Next, we introduce a dissection tree that adapts to a given solution to

VRAP. The idea is to subdivide Ù0 recursively by alternately splitting

the current rectangle and zooming into the "area of interest". We call

such a subdivision a zoom tree. In principle, a zoom tree ZTa^ is defined

with respect to a, b and any fixed subset TCP. However, in this section,

as well as in the other analytical parts of this chapter, we only consider

the zoom tree corresponding to the set 71* Ç P of tour points in the

optimal solution (of course, the actual algorithm does not know this set

in advance and will have to guess T*, and therefore also the structure

of the zoom tree considered here). The root of ZTa,b is £50, and the

nodes of ZTa,b are the allowable rectangles recursively obtained from

the following parent-child relations (see Fig. 5.1 for an illustration).

Page 134: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.3. Zoom Trees and Portal-Respecting Allocations 121

For every rectangle in ZTU..._we either say that it is split or that, it

is zoomed, depending on how it is obtained from its parent. In other

words, we split zoomed rectangles and zoom into split ones, as splittingand zooming occurs alternately in ZTa^. This will now be explained in

detail.

cP

_____

». yk

W\

7

91'

c

°N91"

Y Y""^_---"~' 1 ~~~~—o

° \

FIGURE 5.1. If the rectangle 91 is zoomed, we subdivide

it into two children 91' and 91" (left). Otherwise, if 91

is split, its child 91' is a small allowable rectangle that

contains all points on the salesman tour (right).

If an z-allowable rectangle 91 G ZTajb is zoomed, we obtain its two chil¬

dren 91' and 91" by cutting 91 parallel to its shorter side along the line of

GŒ;b(i) that minimizes |arca(91') — area (91") | (that is, we aim to nearlybisect 91). If this cut is not unique we prefer the leftmost (bottommost)one. We call the line C along which we split 91 the cutting line. It is

easily seen that the two rectangles we obtain are j-allowable for some

j G {i — 2, i — 1, i}. 91' and 91" are split rectangles (as they are obtained

by splitting 91).

A split rectangle 91 has only one child 91', which is constructed as follows:

consider the minimal rectangle B containing all points in 91 fl T*. (Wewill see that a split rectangle always contains a tour point, cf. Lemma

5.15.) Choose 91 as the allowable rectangle with smallest circumference

such that d(<991, dB) > |P|/4. If this does not uniquely define 9% choose

the left- and bottommost candidate. Let 91' := 91D91. As the intersection

of two allowable rectangles, the resulting rectangle 91' is allowable. 91'

is a zoomed rectangle.

We stop the subdivision process at 91 if either 91 is 1-allowable or if 91

contains at most one point of P. Such rectangles become leaves of ZT(hb.

Page 135: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

122 Chapter 5. Vehicle R.outing with Allocation

Wc define 0O to be split, such that the first dissection step is a zoom

step. For an allocation point p G P\T* and a tourpoint q G P*, we say

that the rectangle 91 G ZTU)b separates p and q if and only if it is the

rectangle in ZTa^ closest, to the root such that

- either 91 is split and p G 91 and q 0 91,

or 91 is zoomed and p 0 91 and q E 91 (sic!).

One easily checks that this uniquely defines 91.

In the sequel, we will introduce the concept of portal-respecting alloca¬

tions. For a given (allowable) rectangle 91, wc place a point on each

corner and rn — 1 equidistant points subdividing each side. We call these

points portals and denote by Gaiioc = Gaiioc(91) the set, of portals on

991. The portal-respecting distance d$\(p, q) between p G 91 and q ^ 91 is

defined as

dm(p,q):= min d(p, g) + d(g,q).geGaUm («)

In other words, we detour the line segment pq over the nearest portalon Ö91. The next lemma gives an easy bound on the difference between

the Euclidean distance and the portal-respecting distance with respect

to some rectangle 91.

LEMMA 5.8. For any rectangle 91 and points p G 91 and q ^ 91, we have

I91Idx(p,q) -d(p,q) <

.

m

Proof. Let x E 991 denote the point where the straight line from p to q

crosses the border of 91, and let g E Gaiioc(91) denote the portal which is

closest to x. As the portals are equidistant, wc have d(x,g) < |91|/(2m).By the triangle inequality, we can bound the portal-respecting distance

by

d(p, g) + d(g, q) + 2d(x, g) < d(p, q) + \M\/m.

This completes the proof. D

The portal-respecting distance dzTa b(p, q) between p E P\T* and q E T*

is the portal-respecting distance w.r.t. the rectangle 91 G ZTa,b that sep¬

arates p and q. The main result of this section is the next lemma, which

appears in similar form already in [82]. It, asserts that a constant num¬

ber m of portals per rectangle suffices to guarantee that in expectation,the portal-respecting distances are good estimates for the real distances.

Here we denote by dzra b(p/T*) the infimum over all portal respecting

distances dZTa,b(p,Q), (/ G T*.

Page 136: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.3. Zoom Trees and Portal-Respecting Allocations 123

Lemma 5.9. For given e > 0, there exists m — 777(e) such that for every

allocation point p G P \T* and for a and b uniformly at random from

{0,2,... ,L — 2}, we have

E[dzTa,b(p,T*)] <(l + e)d(P}T*).

In fact, our proof yields the following more general statement, which may

seem strange at the moment but will be needed in Section 5.5. Essen¬

tially it states that Lemma 5.9 still holds if an arbitrary constant factor

is inserted in Lemma 5.8. We will need this because our algorithm intro¬

duces several other errors of order Ö (|91|/m) when estimating allocation

costs.

Lemma 5.10. Let d.Jf(p,q) be any distance measure which overestimates

the Euclidean distance from a given allocation point p to a given tour

point q by an absolute error of order Ö (|91|/rn) for the rectangle 91 sep¬

arating p and q. Then for given e > 0, there exists m = m(e) such

that for every allocation point p G P \ P* and for a and b uniformly at

random from {0, 2,..., L — 2], we have

E[d*(p,T*)}<(l+e)d(p,T*).

The remainder of this section is devoted to the proof of Lemma 5.9.

5.3.2. Proof of Lemma 5.9. It suffices to prove that for a fixed allo¬

cation point p, the random variable

Ap:^dZTa,b(p,T*)-d(p,T*)

satisfies

(5.3) E[AP] = 0(logm/m)d(p,T*).

Lemma 5.9 then follows by choosing 777 appropriately.

For ease of readability, the proof is divided into three parts. We start by

collecting a couple of simple but useful geometrical facts about dissection

trees and portal-respecting allocations. We proceed by defining events

used in a, rather lengthy case distinction, and proving some technical

statements about the probabilities involved. Finally, we put everything

together in the main part of the proof, the actual case distinction.

5.3.2.1. Geometrical Facts. As outlined above, we proceed with some

geometric observations. Wc start with a very simple fact, about, how

good the dissection along z-allowablc lines in split steps approximates an

exact bisection.

Page 137: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

124 Chapter 5. Vehicle Routing with Allocation

Lemma 5.11. Let 91 denote a zoomed rectangle of level i > 2, and assume

that 91 is split along the line C into its two children. The distance between

C and any shorter side o/91 is at least (3/7)|91|.

Proof. The line C cutting 91 exactly in half has distance |91|/2 from any

shortest side of 91 but does not belong to Ga,b(i) in general. However,

there is always a line C on Ga^(i) within distance 2l/2 of C. Thus, C

is at least at distance

2 2~

2 14 71 '

from any shorter side of 91.

From Lemma 5.11, we immediately obtain the next technical observa¬

tion.

Lemma 5.12. Let 91i and 9I2 be two zoomed rectangles such that 9I2 is

a descendant o/91i. Let C\ || C2 denote the cutting lines splitting 91i

and ^2, respectively. Then we have |9l2|_

(7/3)d(C\, C2).

Proof. Clearly, C\ is as least as far from C2 as any shorter side of 912 is.

Hence, by Lemma 5.11 we have

d(Ci,c2)>5|jn2|,

which implies the claim. D

The next two statements are concerned with the geometric properties of

zoom steps.

Lemma 5.13. Let 91 denote a zoomed rectangle of level i > 2. Then each

side o/91 has a tour point within distance at most (11/28) |91|.

Proof. Let 91o denote the parent of 91. Recall the construction of 91: we

consider the minimal rectangle B that contains 91o H P* and choose 91

as the smallest allowable rectangle containing B such that, d(dd\,dB) >

\B\/A. Then 91 = 91o D 91. By construction, every side of B contains at

least one tour point. If 91 is i-allowable we thus have a tour point within

distance at most |P|/4 + 2* < |91|/4 + |91|/7 - (11/28)|91| of each side

of 91. D

Lemma 5.14. Let p be an allocation point and q a tour point, and assume

that 91 G ZT*b

is a zoomed rectangle of level i > 2 separating p and q.

Then we have |91| < lAd(p,q).

Page 138: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.3. Zoom Trees and Portal-Respecting Allocations 125

Proof. We use the same notation as in the proof of Lemma 5.13. Let

j > i > 2 denote the level of 91. As we assumed that 91 is the (first,!)

rectangle separating p and q, the point q is in 91(j \91 and thus not in 91.

As on the other hand q G P, we have d(p,q) > |P|/4. By construction,

the corresponding sides of 91 and B are within distance at most |P|/4+2J.Hence, we obtain

|£K| < (6/4)|P| + 2 • 2J < 6d(p, q) + (2/7)|<K|,

and thus |91| < |^| < 7/5 • 6d(p, q) < lAd(p, q). D

In combination, Lemma 5.11 and Lemma 5.13 yield the following obser¬

vation about the structure of ZTaib-

Lemma 5.15. Every rectangle of ZTa^ contains at least one point ofT*.In particular, the zoom step is well-defined.

Proof. Since we stop the subdivision at 1-allowable rectangles, the parent

91o of any split rectangle has at least level 2. By Lemma 5.13, there is a

tour point within distance (ll/28)|91o| of all sides of 9V Since by Lemma

5.11 the line C cutting 910 has distance at least (3/7)|910| > (11/28)|910|from the shorter sides of 91o, it follows that every split rectangle contains

a tour point. Therefore, the zoom step is well-defined, and it, follows that

also every zoomed rectangle contains at least one tour point.

5.3.2.2. Events and Probabilities. Let q ET* denote the tour point clos¬

est to p, i.e., p is allocated to q in the optimal solution. In the sequel, we

use the notation x := d(p,q) and let the random variable I denote the

level of the rectangle 91 separating p and q. Thus we have |91| = 0(2J).As the structure of the zoom tree ZTa^ changes with the choice of a and

b, we have to distinguish several cases. Clearly, as long as I < logir + c

for some constant c, Lemma 5.8 immediately guarantees that

1911Ap < d^(p, q) - d{p, q) < ^ = O (x/m) .

This already settles the case for the event

£o :={/<logx + 2}.

Formally, we have

(5.4) E[ Ap | £Q] Pr{£0} = O (x/m).

For the rest of this proof, we focus on the event £q. Note that we have

/ > logo: + 2 > 2 in this case, and thus the geometrical lemmas of

Page 139: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

126 Chapter 5. Vehicle Routing with Allocation

the previous section arc applicable to 91 and its ancestors. The next,

statement is crucial to our analysis and is illustrated in Figure 5.2.

Lemma 5.16. If £o occurs then 91 is split and the following is true. Let C

denote the cutting line separating p from q, let S denote the line through

p parallel to C, and lei S~ denote the halfspace not containing q and

C. Then S~ contains at least one tour point and we have I > log y — 57where y :— d(p,r) denotes the distance to the closest such tour point r.

Proof. If 91 is zoomed, we have by Lemma 5.14 that 7 • 21 < |91| < lAx,

i.e., / < logx + 1, contradicting the assumption that So occurred. Hence

91 is split. Without loss of generality, we assume that C is vertical, and

that (/ is to the right of p. We argue by contradiction. If the point r exists

but i" < log y — 5, we have that |91| < 7y 2~4 < y/2, which implies that

there is no tour point inside 91 and to the left of p. If r does not exist,

this is clear anyway. Either way, we arrive at the following contradiction.

By Lemma 5.13, p is within distance (11/28) |91| of the left border of 91.

Since the cutting line C has distance at least (3/7)|91| from the left border

by Lemma 5.11, we obtain that x > (3/7 - 11/28)|SH|_= |91|/28 > 27/4,i.e., I < log.-r + 2, contradicting the assumption that £q occurred. D

C

91

pX

q

s

Figure 5.2. Sketch to Lemma 5.16.

In the remainder of this proof, we stick to the notations r for the closest

tour point to p on the "other side" than q, and y — d(p, r) lor its distance

from p. Recall that 91 and / denote the rectangle separating p and

q and its level, respectively. Analogously, let 91' denote the rectangle

Page 140: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.3. Zoom Trees and Portal-Respecting Allocations 127

separating p and r, and J its level. By C we denote the cutting line

separating p and q (which coincides with one of the sides of 91), and byG" analogously the cutting line separating p and r (if 91' is split).

Note that in this setup, both p and q (and thus x) are fixed, but r (andthus y) as well as 91 and 91' (and thus / and J) are indeed random vari-

ables with respect, to the random choice of (a, b) E {0, 2,... ,L — 2] .

Observe that r is fixed once we have the orientation of C. Indeed, let

Sv Q So denote the event that C is vertical, and let rv denote the corre¬

sponding value of the point r. Analogously, let Sh_

£o denote the event

that C is horizontal, and let r^ denote the corresponding value of r. In

the sequel, we assume that £v occurs and assume in addition that q is

to the right and r = rv to the left of p. The other cases are symmetric.Note that y = d(p,rv) =: yv is fixed on Sv. More specific, we consider

the two main events

Sa '— Sv n {The zoom tree ZTa,b separates first, p and rv, then p and q},

£b := Sv fl {The zoom tree ZTa^b separates first p and q, then p and rv}

and also the events

Si '.= Sv n {91' is zoomed}

52 '— £v H {91' is split, C and C' are parallel}

53 :— Sv fl {91' is split, C and C' are orthogonal}.

Note that ZTa^b cannot, separate p from both q and r simultaneously,as q is separated from p by a vertical cutting line to the right of p, and

r is to the left of p. Wc throughout use the notations Sai '— Sa H S\,

Pr_4i {...} = Pr{... | SA1\, EA1 [...]= E[.. . | SA1), and so on.

For any two points pi,p2 G P and 1 < i < io, let V(pip2, i) and hi(p\P2, i)denote the events that the line segment pip2 is cut by a vertical, respec¬

tively horizontal, ?-allowable line.

To calculate Px{V(pq, i)}, we observe that the line segment pq is cut

by at most x/2 + 1 vertical lines of the grid Go,o(l)- For each of these

lines, the probability that it is in Ga,b(i) is 2~^"ih As p and q have odd

integer coordinates, we have x > 2 and thus

Pr{V(pq,i)} < (x/2 + 1) • 2~^~^ - Ö (x/2l) .

It follows that

Pr{/ = i}< Pr{V(pq,i)UH(pq,i)} - O (x/21)

Page 141: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

128 Chapter 5. Vehicle Routing with Allocation

and by summing up also

(5.5) Pr{I > 7} = Ö (x/21) .

Wc will mostly use these bounds in the form

(5.6) Pr{/ = 11 £}Pi{S} = Pi{{! = i}n£} = 0 (x/21) ,

and

(5.7) Pr{ / > i | S] Pr{S] = O (x/2i) ,

for some event S. By analogous arguments one obtains for any S_

Sv

that,

Pr{J = j\S}Pr{S} = 0(yv/2i).

The events {/ = i\ and {J = j} arc not independent. However, condi¬

tioning on S's, i.e., C and C being orthogonal, they can be shown to

behave as if they were independent: we can bound them by V(pq, i)and hi(prv,j), respectively, which arc independent in the unconditioned

probability space. Formally, we have for any event S Ç S3 that

Pi{I = i,J = j\ £}Px{£) _Pv{V(pq,i)r\ht(prv,j)\ £}Pr{S}

<Vr{V(pq,i)C\H(prv,j)}

= Pr{V(pq,i)}Pr{H(prv, j)} ,

and thus we obtain

(5.8) Pr{I = i,J=j\ £}Pr{£} - Ö (xyv/2l+J) .

5.3.2.3. Case Distinction. We now consider the subcases of the case that

So occurs one by one. Recall that by Lemma 5.16, we have I > logy — 5

in all these cases. By (5.5), this implies in particular that

(5.9) Pr{Sv} = 0(x/yv).

Case A. ZT(ljb separates first p and rv, then p and q. This is the

easier case, as we can always let p be allocated to q and work with the

bound

(5.10) Ap < dm(p,q)-d(p,q) < \m\/m

guaranteed by Lemma 5.8. We have to consider several subcases which

are illustrated in Figure 5.3.

Case Al. 91' is zoomed. This case cannot occur, as 91' then contains byconstruction both rv and q, and thus also separates p from q. However,

Page 142: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.3. Zoom Trees and Portal-Respecting Allocations 129

we assumed that So occurred, which by Lemma 5.16 in particular implies

that, p and q are separated by a split, rectangle.

Case A2. 91' is split, C and C are parallel. As the two cutting lines

are parallel and within distance at most x + yv < 2yv, wc obtain by

Lemma 5.12 that |91| - C(yv). Therefore, by (5.10), Ap is at most

ö(yv/m), and we have with (5.9) that,

(5.11) EA2 [Ap] Pr{£_42} = O (yv/rn) O (x/yv) = Ö (x/m).

91'

91 Q

V

(a) (b)

Figure 5.3. Sketches of the situation we have in case

A2 (a) and case A3 (b). Note that p, q and rv are fixed,

but 91 and 91' depend on the choice of a and b.

Case A3. 91' is split, C and C are orthogonal. Here we have no guar¬

antee that |91| = 0(yv). Due to 91' D 91 and Lemma 5.16, we have

J > I > logyv — 5. Hence, we obtain with (5.8) that E_43 [Ap] Pr{SAz}equals

j

J2 J2 Ea* [ap iI =*>J = fl Pta* u = *>J=ftmw3>logyv-5 i=\logyv-5]

= _Z E 0(V/m)-0(xyy[¥+i)j>logyv-5 i^\\ogyv-5]

= O (x/m) ]T (?' - logyv + 6) • O (yv/V) ,

j>logyv-5

'

P

91

Page 143: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

130 Chapter 5. Vehicle Routing with Allocation

and hence we have

(5.12) EA-J[Ap]Pi{eA3} = ö(x/m]

Case B. ZTa^ separates first p and q, then p and rv. Our strategyis to let p be allocated to rv instead of q if the portal-respecting distance

to q becomes too large. By Lemma 5.8, we have

(5.13)Ap < min {dft(p,q) -d(p,q),dw(p,rv)}

< min{|91|/m, yv + |91'|/m} .

Recall that |91| = 6(2;) and |91'| - 6(2J). Again we have three sub¬

cases.

91

p

91'

rv,'''

(a)

91

Q91'

(b)

Figure 5.4. Sketches of the situation we have in case

BI (a) and case B2 (b). Case B3 is similar to B2; onlythe orientation of the line separating p and rv is hori¬

zontal.

Case BI. 91' is zoomed. By Lemma 5.14 we have that |91'| — ü(yv),as 91' is zoomed and separates p and rv (if 91' has level 1, this is clear

anyway). We deduce from (5.13) that,

Ap<xxim{0(2I/m),0(yv)}

Page 144: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.3. Zoom Trees and Portal-Respecting Allocations 131

and with (5.6) and (5.7) we thus obtain that, E^i [A]Pr{£yi} equals

[log (m yv) J

J2 EW1 [A | / = i] PiBi {I - i}Pi{Sm}

+ Em [A | I>]og(myv)]PTB1{I>\og(myv)}Pi{Sm}

[log(7ny.„)J

= ^2 O (2*/m) O (x/T) + O (yv) O (x/(myv))i—\logyv-5]

= O (logm) O (x/m) + O (x/m),

and thus wc obtain

(5.14) Em [A] Pr{£B1} - O (x log m/m).

Case B2. 91' is split, C and C are parallel. Similarly to Case A2, we

obtain from Lemma 5.12 that |91'| = Ö (yv), and it follows with the same

calculation as in Case BI that

(5.15) EB2 [Ap]Pr{£B2} = O (x log m/m).

Case B3. 91' is split, C and C are orthogonal. In this case, wc have no

guarantee that |9V| = 0(yv). To the contrary: as the line prv is inside

the parent 910 of 91', we have that yv < 2|910| < 6|91'| < 6 • 13 • 2J (cf.Lemma 5.11) and, therefore, J > logyv — 7.

Thus, we have I > J > logyv — 7 and obtain from (5.13) that

Ap <min{0(21/7n),0(2J)}.

Page 145: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

132 Chapter 5. Vehicle Routing with Allocation

Wc obtain with (5.6) and (5.8), that Ebs [Ap] Pt{Sb3} equals

Llog(7ny.L,)J

Y, EB3 [Ap\ I=l] PiB3 {/ - i] Pr{SD3}

i=\logyv-7]

i

+ _Z Y, ^B3l^p\I = hJ = j]-PTB3{I = i,J=j}

i>\og(myv) j= [log yv -7]

Pr{5n3}i

= O (x log m/m) + J] J] O (2j) Ö (xyv/2l+j)i>lug(myv) j=[lugyv—7~\

= ö(x log m/m) + ö(x) ^ (i - log yv + 8) • Ö (yv/2l)i>log(myv)

= Ö (x log m/m) + C? (.t) • Ö (log m/m),

where the first, sum is computed exactly as in the previous cases, using

only the bound Ap = Ö (27/m). Hence, we finally obtain

(5.16) Eß3 [Ap]Prb5B3} = O (a; log m/m).

With the law of total probability we obtain from (5.4), (5.11), (5.12),(5.14), (5.15), and (5.16) that

E[AP] = O (x log m/m),

and Lemma 5.9 follows choosing m appropriately.

5.4. Euclidean Spanners and VRAP

The results in this section extend work by Rao and Smith [108] to our

zoom tree setting. Basically, we show that, we can quickly compute a

straight-line graph (SLG) S' on a superset of P which has few "rele¬

vant" crossings with each of the allowable rectangles introduced in the

previous section, and such that there exists an expected nearly-optimaltour through S'. This will allow us to quickly find such a tour by dy¬namic programming.

5.4.1. Concepts and Results. In the sequel it, is of advantage to look

at a solution (T, tt) from a slightly different viewpoint. Recall that

Ùo has sidelength 2P — Ö (n) and its center at (a,b), where a,b E

{0, 2,... ,L — 2} uniformly at random. For any connected straight-line

Page 146: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.4. Euclidean Spanners and VRAP 133

graph (SLG) Q on a vertex set P' D P, we denote the induced shortest

path metric by dg (,). For a given solution (P, tt), let

(5.17) valg (P, tt) = Y, ds(P> Ç) + _Z ("M + /%) mm(i(p, (/) J .

Note that only the length of the tour is measured in the shortest path

metric. Every solution to VRAP gives rise to a closed walk W — )A^(T, tt)formed by the shortest paths between subsequent tour points. In princi¬

ple this walk may include non-tourpoints, but in order to minimize (5.17)it is always better to 'pick up' such points and include them in P. Thus

a solution minimizing (5.17) can be described as a walk W through Q,where by definition the tourpoints are exactly the points T\y := T fl W

on the walk, and the remaining points Ayy := P \ P>v are allocated.

Denoting the entire length of the walk W by £(W) we can rewrite (5.17)as

(5.18) vale (W) = £(W) + V ( a(p) + ß(p) min d(p, q)) .

peAwv /

Note that an edge contributes ,s times to £(W) if we traverse it s times

on the walk. In the sequel, we denote the optimization problem (5.18)

by VRAP (ç;).

We say that a crossing of an edge e of a SLG G and a rectangle 91 is

relevant if e intersects 591 and exactly one endpoint of e is within 91.

The graph Q is said to be r-sparse if any allowable rectangle 91 has at

most r relevant crossings with edges of Q. Note that it, depends on the

choice of a and b whether a fixed SLG G is r-sparse or not. The main

result of this section is the next lemma.

Lemma 5.17. LetT* denote the set of tour points of the optimal solution

to VRAP. For given e > 0, there exists r = r(e) such that for all choices

of a,b E {0, 2,..., L — 2}, one can compute in Ö (nlog2 n) time a point

set S and an r-sparse SLG <S' on the point set P' = P W S satisfying the

following: If a and b are chosen uniformly at random, the shortest walk

W* on S' visiting all points of T* has expected length

E[£(W*)}< J2 d(p,q) + eval{T*,Tr*).{p,q}evr*

Moreover, W* uses no edge of S' more than twice.

Page 147: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

134 Chapter 5. Vehicle R.outiug with Allocation

Since T\y*_

T'f', the allocation costs in vais' (VV ) do not exceed those

in val(7,!|!,7T*), and thus Lemma 5.17 immediately implies that

E[val6v (W*)] <(l + e) val(P*, tt*) .

Together with vel(T*,ir*) < val5/ (W), it follows that W* induces an

expected nearly-optimal solution to VRAP. The rest of this section is

devoted to the proof of Lemma 5.17.

5.4.2. Proof of Lemma 5.17. In order to prove this statement, we

need to review two important concepts. Firstly, a SLG S on P is a

(1 + e)-spanner if for all p,q E P we have ds(p,q) < (1 + e) • d(p,q).Gudmundsson et al. [68] proved that for every point set P there exists

a (1 + e)-spanner S with ?(S) < C(e) ((MST), where MST denotes

the minimum spanning tree on P. They also show that such a spanner

has Ö (n) edges and can be constructed in Ö (n log n) time,where the

O-notation is hiding constants depending on e.

Secondly, consider the quadtree QTa^b obtained by dividing Oo into four

equal-sized squares and recursively repeating this division process until

the squares have sidelength 2 (and therefore contain at most input point).It is easy to see that this tree has 0(n2) squares. Wc call QTa^ a shifted

quadtree or a shifted, dissection, as Oo depends on (a, b) and is thus shifted

relatively to the point set, P. An alert reader might have noticed that

we already encountered shifted quadtrees in Section 4.2 of Chapter 4.

Observe that we have the following relation between the grid Ga$(i) of

Section 5.3.1 and QTay. if the levels of QTa,b are numbered bottom-upsuch that level 1 contains the leaves of QTŒjb-, the grid Gaj,(i) dissects

Oo into sciuares of level i.

Usually, one stops the division process at squares which contain at most

one point, of P. For our purposes however, we truncate the quadtree

slightly differently: consider the Ö (nlogn) allowable rectangles con¬

taining at least one point from P, and divide each 7-allowable rectangleinto at most 132 = 169 squares of level i. Now consider the truncated

quadtree QT° b consisting of these Ö (n log n) squares and all their an¬

cestors. As each square has Ö (logn) ancestors, QT°b has Ö (nlog n)squares. A SLG Q is said to be r-vapid with respect to the (truncated)quadtree QT° b

if every square O in QT° bhas at most r relevant cross¬

ings with Ç.

A paper of Arya et al. [15] claiming this result prior to [68] is incorrect.

Page 148: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.1. Euclidean Spanners and VRAP 135

Lemma 5.18. For all choices of a,b E {0, 2,..., L — 2}, any Ç that is

r-vapid w.r.t. QT°b is 169r-sparse.

Proof. Assume that 91 is i-allowable. 91 is the union of at most 132 = 169

level i squares of QT°b, and any relevant crossing of G with 91 is also

relevant with respect to one of these squares. Thus Q is 169r-sparse if it,

is r-vapid w.r.t. QT°b.

The concept of shifted dissections and that of r-vapidness were intro¬

duced in [11] and [108], respectively.

Proof of Lemma 5.17. First, we compute in Ö (nlogn) time a (1 4- e)-

spanncr on P of total length

(5.19) ^(<S) <C(e)-£(MST),

using the algorithm of Gudmundsson et al. [68].

Let >Vi = YV(T*,tt*) denote the walk on S induced by the optimalsolution (P*,7T*). Since S is a (1 + e)-spanner, we have

(5.20) *(Wi)<(l + e)- J_] *<?)< J2 d(p,q) + e-val(T*,7T*).{p,q}e-7T {p,q}£-K

Let, r := c-C(e)/e, for the constant C(e) from (5.19) and a suitably largeconstant c > 0. We transform S into a graph <S' which is r0-vapid w.r.t.

QT°b for ro := r/169. Lemma 5.18 then states that S' is r-sparse. To

obtain S' we proceed along the lines of Rao and Smith [108], addingartificial points S to S such that the resulting spanner S' is indeed a

SLG on a point set P' - P t+J S_

P.

We proceed bottom-up through QT°b and transform S into S' by a

secjuence of local modifications. Let O denote a square in QT° bwhere

we encounter more then ro relevant crossings. Then at, least one side

of O has more then t*o/4 — 1 relevant crossings. At each such side we

modify the SLG according to Figure 5.5 (sec [108] for details). At the

same time, we detour the walk Wi over the single new edge that crosses

the side of O. The artificial points we add are within small constant

distance of <90, such that the edges we "patch in" at different levels

overlap. Thus, at most one new crossing per side of an already patched

square is created by patching operations at higher levels of QT°b .In

[108] it was shown that

(5.21) E[e(S')-£(S)} = 0(l/r)£(S),

Page 149: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

136 Chapter 5. Vehicle Routing with Allocation

where the expectation is with respect to the random choice of a and

b. Note that, an edge c of S has only relevant crossings with at most

Ö (log77) squares of QT°b. Since S contains Ö (n) edges, the total time

we need for the modifications according to Figure 5.5 is Ö (nlogn). As

we have to consider all the Ö (77 log2 n) squares in QT°b, the total time

required by the bottom-up procedure described above is Ö (n log n).

FIGURE 5.5. Illustration to the proof of Lemma 5.17.

We obtain a graph S' which is ro-vapid and thus r-sparse, as well as a

walk W2 on S'. Observe that ^(VV^) — ^(Wi) is bounded by the sum

of the detours which is exactly the length of the new edges weightedwith their multiplicity in W2. In order to bound these multiplicities, we

further modify W2 as follows. Consider the rnultigraph #2 on vertex set

T\±iS whose edge set is given by the edges of W2 with their corresponding

multiplicity. Since W2 is a closed walk, #2 is Eulerian. We replace all

edges of odd multiplicity by a single edge, and all edges of even non-zero

multiplicity by two edges. It is easy to see that the rnultigraph W3_

W2

we obtain is still Eulerian, and that any Eulerian tour through F3 is a

closed walk W3 in S'. This argument shows that any shortest salesman

tour in any graph uses no edge more than twice.

As W3 traverses every edge at, most twice, wc have

£(W3)~i(m)<2-(£(S')-l(S)),

and consequently

Page 150: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.5. An Ö (/T. log'' n)-time Approximation Scheme^

137

E[t(m) - e(Wi)\ < 2 E[£(S') - P(S)}

{r=l) 0(l/r)£(S)

i5<} 0(l/r)-C(e)-£(MST)

<eval(P*,7r*),

where the last inequality follows from r = c C(e)/s with c chosen large

enough and the fact that £(MST) is a lower bound for val(P*,7r*).Hence, it follows from (5.20) that

W(m)] <^(>Vi)+£-val(P*,7r*) < Y_ d(p,q) + 2£-val(T*,7r*),

{p.q}<En

and adapting e appropriately completes the proof. D

5.5. An Ö (n log5 n)-time Approximation Scheme

We now introduce a PTAS for VRAP. Lemma 5.17 plays a crucial role

in our approach. In principle, our PTAS chooses a and 6 at random,

computes S' and then tries to find an optimal solution Wo to VRAP(<S')by dynamic programming, guessing T — P(Wq), and the corresponding

zoom tree ZTa^ in the process. By Lemma 5.17 we know that this

approach should yield an expected nearly-optimal solution to the original

problem VRAP. (Note that Wq does not necessarily equal W*, as in

Lemma 5.17 we only minimized the tour length and ignored allocation

costs.)

This approach needs several extra twists to achieve the desired runningtime. Most notably, we estimate the allocation costs by the portal-

respecting distances. This means that we will not necessarily find Wq,but an optimal solution to a slightly modified problem. However, since

by Lemma 5.9 the portal-respecting distances are good estimates for

the real distances in expectation, we can keep the expected total error

caused by this small. Moreover, it would be too time-consuming to

allocate all points individually, as the same point is considered in many

different steps of the dynamic program. We overcome this difficulty by

partitioning the points that need to be allocated in some step into a small

number of classes and assigning all points of a class to the same tour

point. The errors introduced by this are in the same order of magnitudeas the errors inherent, to the idea, of portal-respecting allocations. Lastly,

Page 151: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

138 Chapter 5. Vehicle Routing with Allocation

to avoid costly shortest path computations we shortcut between vertices

of S' whenever this does not spoil the sparseness properties of S'. One

can think of these shortcuts as additional edges that are added to S'. In

fact, this causes no problems, as it only decreases the length of the tour

the algorithm will output, and docs not change the allocation costs.

5.5.1. Dynamic Programming. Throughout this section, consider

m = 777,(e) fixed according to Lemma 5.10 (for an as yet, unspecifieddistance measure d* that will emerge in the course of this section) and

Lemma 5.17. For any allowable rectangle 91 containing at, least, one point

from P, let Gaiioc — <2alloc (91) denote the set of the 4m portals on <991

as in Section 5.3, and let Ecrosfi denote the set of edges (line segments)of S' crossing the boundary of 91 such that one endpoint, is contained in

91. As S' is r-sparse, we have |PCross| < f~ r(e). A configuration C for

91 is given by

(1) a collection 5con of pairs from ECTUSS, where each element appears

at most twice,

(2) functions C_n : G_ioc -> {1,..., 2m, oo} and (out : Ganoc ~* {1,...,

7777, co}, and

(3) a bit a G {split, zoomed}.

Since m and r are constant, the total number of configurations for 91

is bounded by a constant, depending only on the desired approximation

ratio e.

A configuration C describes a subproblem, i.e., a local problem for 91

which is interpreted as follows. Firstly, the pairs in ,Scon determine which

of the edges in Ecross must be connected by walks inside 91. As the walk

W* might visit edges of the spanner twice (cf. Lemma 5.17), we allow

5con to contain duplicates. Secondly, the functions (_ and Cout describe

the distance from a given portal to the next point on the tour inside

resp. outside of 91. More precisely, for every g E Ganoc, the distance

from g to the next point on the salesman tour inside 91 is within dis¬

tance (\^i\/m)Ç[-n(g). Analogously, the distance to the next point on the

salesman tour outside of 91 is encoded by £Out(o0- We shall see below

that it is sufficient to encode the distances up to 7|91| only.

We ask for a best possible local solution for a given configuration C.

More precisely, we try to minimize the length of all tour edges that lie

completely inside 91 plus the allocation costs for all non-tour points in 91

(regardless of whether they are allocated to a tour point inside or outside

Page 152: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.5. An O (71 log0 n)-time Approximation Scheme 139

91), subject to the constraints and guarantees given by C. As we do not

know the zoom tree corresponding to the optimal solution in advance,

we cannot proceed by a top-down divide and conquer approach along the

zoom tree. Instead, we proceed bottom-up by dynamic programming,

in a much larger structure which can be seen as the union of the zoom

trees for all possible choices of T Ç P. By dynamic programming, we

calculate close upper bounds P[91,C] for the optimal solutions to these

local optimization problems. The bit a indicates whether we look at 91

as a split, or as a zoomed rectangle in a zoom tree, and thus how our

dynamic program calculates P[91, C] from the values previously found for

smaller rectangles.

It is crucial that we consider only the Ö (n log n) allowable rectangles 91

containing at least one point of P. We topologically sort those rectangles

w.r.t. the partial order given by normal set inclusion, and process them in

this order, going through all possible configurations for each rectangle.Let 91 and C denote the rectangle and the configuration we currentlyconsider. Wc now distinguish two cases: if 91 is 1-allowable or \P D 911 =

1 (case A), we find T[91, C] by exhaustive search. Otherwise, we calculate

P[91, C] by dynamic programming from previously found values in one

of two possible ways (case B), as specified by a.

Case A. 91 is 1-allowable or \P n 91| — 1. Note that this means that 91 is

a leaf in any zoom tree it, is contained in. Also note that an 1-allowable

rectangle contains at most 132 — 169 input points from P. This allows

us to proceed in brute force fashion.

Let 91 and C be given. First we choose from P D 91 the points that lie

on the salesman paths inside 91. Let To Ç P n 91 denote this point set.

Since we know that points p with ß(p) > 2 are visited by the optimalsolution P* (and therefore also by the walk W* from Lemma 5.17), we

always include such points in P0. Also, by definition of the zoom step

it is clear that To should not be empty if a = zoomed. The points in

Aq :— (P n 91) \ To need to be allocated to some tour point either inside

or outside of 91. We have 0(1) choices of Tq. For every such choice, we

check whether it, satisfies the restrictions given by Ç-m, i.e., whether the

distance from every portal g 6 (?aiioc to To is bounded by (|91|/m)Cin(p)-If this is not the case, we reject this choice of Po- If ah possible choices

of Pq are rejected, we reject C and set P[91, C] — 00.

Next, we compute optimal walks visiting exactly the points in Po subjectto the constraints given by 5con. We do not require these walks to use

Page 153: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

140 Chapter 5. Vehicle Routing with Allocation

edges öl S', but calculate them on the complete graph induced by the (atmost 169) points in 7b and the (at most r) endpoints of the edges from

Scou (if these points are not adjacent in S', we add the needed edges to

S' as shortcuts). This can be done in constant time.

Moreover, we estimate for each p E A0 its allocation cost. It is trivial to

compute the distances to points in To- On the other side, C guarantees

that the nearest tour point outside 91 has portal respecting distance at

most

(5.22) min \d(p,g) + ^(ont(g) \

by definition of CoutQ?)- So we decide for every point p E Ao whether it

is cheaper to allocate it to a point inside or a point outside 91 (indeeda portal). As we have Am portals and at most 169 points, this can be

done in time 0(1).

The total cost, for this choice of Po is the total length of all edges on the

salesman paths that are entirely in 91, plus the total allocation cost for all

points in Ao calculated as explained above. Note that this overestimates

the allocation cost for points which are allocated to tour points outside

91. We identify the choice of Po minimizing this cost and store the

corresponding value in P[91, C]. Thus we can compute P[91,C] in Ö (1)time.

Case B. Otherwise. In this case wc in particular have no upper bound

on the number of input points inside 91. Thus it is not longer possible to

compute 7,[91,C] using brute force search. As we process the rectanglesin ascending order, wc may assume that we already have the values

T[9\',C] for all allowable rectangles 91' C 91 and for all configurationsC to 91'.

Case BI. a — zoomed. We split 91 into two allowable rectangles 91'

and 91" according to the properties of zoom trees (cf. Section 5.3).By Lemma 5.15, we know that both rectangles should contain at least

one point of P. If this is not the case, wc set P[91, C] = oo for all

configurations for 91 with a ~ zoomed.

Enumerate all choices (C ,C") of pairs of configurations for 91' and 91"

with a' — u" — split. For each choice, check whether it is consistent in

itself and compatible with C, i.e., whether a set of salesman paths sat¬

isfying 5COI1 can be obtained by joining salesman paths satisfying S'(:ou

Page 154: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.5. An O (nlog' n)-time Approximation Scheme 141

and S"un, and whether the functions Cm) Cm'Cout guarantee that the re¬

quirements on the position of the tour points given by the functions

Cm, Conti Cout aro satisfied. That is, we have to check the equations

(5.23) ^Cmto) > min j^min {%,(/) + ^CmQ/)} ,

min \d{g19,,) + —CiM,)\)

for the port,als g G Cra]ioc on ^91, and

(5.24) J—kout(p') > min i min i d(g',g) + LÄcout(g) I,

for the portals g' E G^lloc on -^' an<^ analogously for g" E G"lloc on

For all pairs of configurations which remain, compute P[91', C']+T[91", Cand add the total length of the edges in S'con f) S'c'on, which arc exactlythe tour edges with one endpoint in 91' and the other in 91". A given

edge may be counted twice in this calculation which is in line with our

definition of Scon. Choose the pair (C,C") which minimizes this sum,

and write its value to P[91, C]. Note that all computations can be ac¬

complished in 0(1) time.

Case B2. a = split. We enumerate all allowable rectangles 91' C 91

containing at least one point from P and all points p E P 0 91 with

ß(p) > 2. For any such rectangle 91', we consider all configurations C

with a' — zoomed that are compatible with C in the same sense as in

case BI. For the allocations, wc have to check whether the equations

(5.25) leinte) > g/mjn L(g,g') + ^CmQ/)} , V(? G GaIloc

and

I91'l f 1911 15-26) ^CoutM> min \d(g',g) + ^Coutfo) ,

V.r/ G_locill fffctT „.n,» (^ 777 J

Page 155: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

142 Chapter 5. Vehicle Routing with Allocation

are satisfied. For a given choice of 91' and C, the total cost, for 91 is

7'[91'.C/] plus the additional tour costs plus the additional allocation

cost. Recall that by definition of the zoom step, there are no four points

in 1R \ 91'.

To compute the additional tour cost, we enumerate all possible ways

to connect the edges in Scon U S'con such that one obtains exactly the

salesman paths required by »S'con. Note that a salesman path through 91

may enter and leave 91' several times. We add the total length of the

edges in S'con \ 5t.on (as before twice if necessary), plus the Euclidean

distances between corresponding end points of edge pairs in Scon U S'con

(as before, this corresponds to introducing shortcut edges into S'). As

there are Ö (r) edges in Scoxl and S[.an, we can find the "connection

pattern" which minimizes this cost, in constant time.

Computing the additional allocation cost is somewhat tricky. We need

to allocate all input points in 91 \ 91'. As we do not have a bound on

the number of such points, doing this for each point separately, i.e.,

calculating

(5.27)

Ef( I91|

(a(p) + ß(p)-mini min {d(p,g) + —Cout(p)},v l qgG-aiioc rn

PePn(9V\9V)

91'Imin {d(p,g')+l—^CnÂ9,)}\

ytu nlit s

alloc

exactly, would be prohibitively expensive. However, as we shall show in a

moment, we can quickly approximate these allocation costs close enoughfor our purposes. This is basically achieved by subdividing 91 \ 91' into

cells and assigning all points in a cell to the same portal.

LEMMA 5.19. 077e can preprocess P in Ö {nlogn) time such that one can

calculate in Ö (log1 n) time for any pair of allowable rectangles 91' C 91

an upper bound Cauoc on Ca_/oc which is tight up to a relative error of

C(l/m) and an absolute error of Ö (fc(|91|/m) + k'(\9\'\ /m,)), where k

and k' denote the number of points for which the minimum in (5.27) is

attained by a portal o/Gaiioo respectively G"a]luc.

We choose the configuration C' which minimizes the accumulated cost

and store the total cost in P[91,C].

Page 156: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.5. An ö (nlog'J n)-timc Approximation Scheme 143

Proof of Lemma 5.19. We subdivide 91\9V into rectangular rings Ai,. .

.,

At- The outer boundary of ring A% is at distance

<i, = |91'|(l + l/m)':

from 91', whereas the inner boundary is at distance d.b-i (or 0 if i = 1),i.e., the inner boundary of A. is indeed the outer boundary of A____. This

is illustrated in Figure 5.6. The cells are constructed by subdividing each

ring Ai into Ö(7772) equally-sized cells. Note that the sidelength \<£\ of a

cell (£ in ring Ai is Ö (di/rn).

- -

--—

"" "

... .._- ""

- - - it II1.. -

jAsrnrn.

- -

-

•' mi

-

-"

- --

--

FIGURE 5.6. Subdivision of 91 \ 91' into cells. First we

subdivide 91 \ 91' into rings of geometrically increasingradius. Then, we subdivide each ring into 0(m2) cells.

We have t — Ö (log(|91|/|91'|)) — Ö (logn) many rings, and therefore

also Ö (logn) many cells. By orthogonal semigroup range searching (see[1, 3] for references), we compute for each cell <t the values

«(£):= y, QW and ^£):= E wpePn pePn

This can be accomplished in Ö (log n) time per cell and requires pre¬

processing the points in Ö (n log n) time before the start of the dynamic

program.

Page 157: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

144 Chapter 5. Vehicle Routing with Allocation

Recall that the idea is to assign all input points within a cell to the same

portal. With the values rv(£) and /?((£) at hand, we can calculate

C_\0, :=V (a(<r)+/3(C)-min{ min {d(c(q,g) + \£\ + ^(out(g)}.— V I 9Crrtnt)f. 777,

min {d(c((T);(/') + |e:| + ^Ciu(^)}iJ alloc

in time proportional to the number of cells, i.e., ö(logn). Here c(C)denotes the center of <£.

It remains to show that this is a good upper bound on Cauoc. Clearly, we

have d(c, g) — |<£| < d(p, g) < d(c, g)+\£\ for a cell with center c, p E

and any portal g. It follows that Ca__oc < Cai]oc, and that for every point

p E £flP we overestimate its allocation cost by at most 2ß(p)\<£\ < 4|<£|

(recall that points with ß(p) > 2 are in 91' and therefore not considered

here.)

The largest cells in our subdivision have sidelength |(£| = Ö(|91|/m).Therefore, the absolute error per point is bounded by O (|91|/m), which

already suffices for points that are allocated to portals of Gaiioc- For

points which are allocated to portals of G;iûloc, we distinguish two cases.

If £ belongs to ring A__, we have |<£| — 0(|91'|/m). Otherwise, we obtain

with d(p,g) > d7„i that \C\ = Ö (di-i/m) — Ö (d(p,g)/m). Summing-

up these pointwisc error guarantees yields that Canoc indeed approxi¬

mates Caiioc as claimed. D

At the end of the dynamic program, we obtain a value PfOo^O] f°r

do — (a, b) + [—L, L}2 and the configuration O wrth S'con — 0, Cin(p) =

Cout(p) = oo for all portals g E GranÜC(Oo), and a = split.

5.5.2. Analysis. We prove time complexity and correctness separately,

starting with the former.

Proof of Theorem 5.1 (Complexity). Preprocessing the points as required

by Lemma 5.19 and computing the r-sparse SLG S' guaranteed byLemma 5.17 takes time Ö (nlog2 n). In the dynamic program, by

Lemma 5.7(i), cases A and BI apply Ö (nlogn) times and can be com¬

puted in time O (1). By Lemma 5.7(h), case B2 applies to O (nlog2 n)pairs of rectangles, and can be computed in time Ö (log n) due to

Lemma 5.19. This yields an overall complexity of Ö (nlog0 n).

Page 158: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.5. An ö (n log5 77) -time Approximation Scheine 145

It, remains to argue why our algorithm produces a nearly-optimal solu¬

tion. In order to check this we need the following statement.

Lemma 5.20. The value T[Uo,0] calculated by the dynamic program

satisfies

E[r[Ûu}01]<(l+e)val(r*,7r*)-

Proof of Lemma 5.20. Let Z'Ta^ denote the zoom tree to P* as in Sec¬

tion 5.3, and let W* denote the shortest walk on S' visiting all points

of T* as in Lemma 5.17. Recall that ZTa,b stops the subdivision at, a

rectangle 91' if either 91' is 1-allowable or contains at most one point of

P, and that every rectangle ZTa,b contains a point from P* by Lemma

5.15. For all rectangles of ZTa^i we now specify configurations C* that

are compatible with each other (and therefore considered by the dynamic

program), and result in the claimed bound for E[P[Uu,0]]-

Firstly, set for all rectangles a* appropriately, i.e., a* — zoomed if 91 is

zoomed in ZTa^ and a* = split, otherwise. Furthermore, choose S*on

according to W*.

Secondly, specify the functions Qn as follows. For leaves 91' of ZTa^ set

them as small as possible such that still d(T* r\9\',g) < (\d\'\/m)Çul(g),and propagate these restrictions up the zoom tree such that (5.23) and

(5.25) hold. Due to the integrality of C*n, this introduces absolute errors

of order Ö (2l/m) for rectangles at, level i. These errors sum up as a

geometric series along the zoom tree, resulting in a total absolute error

of Ö (|91|/m) for the portals on 991.

Finally, set Cout to °° on portals of Ùq, and use (5.24) and (5.26) to

calculate Cout f°r a^ rectangles top-down along the zoom tree. Note

that finite values are introduced due to (5.24) by the values C^ wc just

calculated. As these errors are propagated down the zoom tree, the total

absolute error for portals on a rectangle 91 is not necessarily Ö (|91|/m).However, observe that for every portal g 6 c7aiioc on 9^R and every tour

point q G 71* we have

(5-28) —Cut(g) < d(g, q) + 0 (\m\/m),

777 v /

where 91 is the rectangle separating the points in 91 from q (providedthe right hand side is at most 7|91|).

As the Cout"functions only encode distances up to 7|91|, some of these

might be set to 00 even if there are tour points outside of 91. However,

our PTAS does not require that we encode longer distances. This is

Page 159: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

146 Chapter 5. Vehicle Routing with Allocation

easily checked as follows. Whenever we allocate a point p E P D 91 we

arc either in case A or in case B2 of the dynamic program. If 91 is split,

its sibling contains at least, one tour point, say q (cf. Lemma 5.15). Let

910 denote the parent, of 91, and note that d(g,q) < 2|91n| < 6|91| for

every portal g E G_ioc on 991 (cf. Lemma 5.11). As g is in the sibling

of 91, we know that 91 separates q from the points in 91. Thus, the right

hand side of (5.28) and consequently also the left hand side of (5.28)is at most, 7|91|. Therefore, our encoding suffices in this case. If 91 is

zoomed, we are in case A and can allocate any point p E 91 (exactly!)to a tourpoint inside 91, which has distance at, most 2|91| from p. This

shows that it suffices to encode Cout only up to 7m.

The inaccuracy in the encoding of distances is one of three sources of

error in the calculation of allocation costs. The second one is the error

inherent to the concept of portal-respecting allocations (cf. Lemma 5.8),and the third one is introduced by Lemma 5.19. In the calculation of the

distance of a given point ptoa (nearby) tourpoint q E T*,these errors

sum to an absolute error of Ö (|91|/m) for the rectangle ÏH separating

p and q, and a relative error of Ö (1/rn) which is easily bounded by e

choosing m large enough. By Lemma 5.10, it follows that the absolute

errors result in an expected relative error of e. In total, the expected

allocation cost our algorithm calculates is at most (1 + e)2 times the

allocation cost in (77*,7r*).

Moreover, the tour's length (implicitly) calculated in P[:Qo,0] is deter-

ministically bounded by £(W*), which in expectation overestimates the

tour cost of the optimum by at most e • val(P*, ir*) due to Lemma 5.17.

Adapting e, the claim follows by linearity of expectation. D

Proof of Theorem 5.1 (Correctness). Let <S*_

S' denote the graph ob¬

tained by inserting the "shortcut edges" the dynamic program used in

cases A and B2 into S'. Our PTAS outputs a walk W on S* and a

number P[0O?O]- Since we overestimated the allocation costs in the

dynamic program, P[Oo, O] is an upper bound on vais* (W). Moreover,

the solution (T, ir) to VRAP induced by W has the same allocation costs

as W but possibly shorter tour length, since it, is not restricted to S*.

Therefore, we have

val(P,7r) < vais- (W) < P[Oo,0],

and the claim follows from Lemma 5.20. D

Page 160: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.6. Steiner VRAP 147

5.6. Steiner VRAP

In this section wc show Theorem 5.2, introducing a PTAS with nearly-

linear time complexity for SteinER VRAP.

Recall that a solution (T,S,tt) to Steiner VRAP is determined by

point sets TCP and S C R2, and a salesman tour tt through T\üS. Wc

wish to find a solution (P*, S*, tt") such that val* (P*, ,9*, 7r*) is minimum

(see also (5.2) on page 116).

In the sequel, it is crucial that wc may restrict to instances in which

the input points have odd integral coordinates and the sidelength of

the bounding box is O (n/e) and a power of 2. This is easily checked

using the arguments given in Section 5.2 for VRAP. Indeed, wc have

at most 77 Steiner points in the optimal solution, so we have to perturb

the endpoints of at most 2n — 1 edges. Thus, the only difference to

Lemma 5.5 is that we have P = 2T for the smallest L > 80n/e. Note

that in contrast to Lemma 4.3 of Chapter 4, we here only shift the input

points not the Steiner points.

5.6.1. A Patching Lemma for Steiner VRAP. The PTAS for Pur¬

chase Cooperative TSP proposed in [9] proceeds by dynamic pro¬

gramming in a shifted quadtree QTa,b, quite similar to Arora's PTAS

for TSP [11] which we sketched in Section 4.1 of Chapter 4. As the

authors of [9] do not give an equivalent, to the Patching Lemma [11],their algorithm has complexity Ö (n0^1/^). The key observation that

allows us to improve on this is the following:

Lemma 5.21. Let (T, S, ir) denote a solution to Steiner VRAP crossing

a fixed line segment L of length x five or more times. Then there exists

a solution (T,S',tv') with S Ç S' crossing L not m,ore than four times

satisfying val* (P, S', tt') < val* (T, S, tt) + c • x for some constant c.

Proof. If two or more allocation edges cross L such that they allocate a

point to the left to a tour point to the right, we proceed as depicted in

Figure 5.7. Observe that the value of the new solution exceeds that of

the old one by at most 2x, as we add tour segments of total length at

most 2x along P and replace the allocation segments to the right of L

by two tour segments which have the length of the shortest allocation

segment being replaced. The second operation only decreases the cost

due to ß(p) > 1 for all p E P.

Page 161: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

148 Chapter 5. Vehicle Routing with Allocation

--

^

-——

Figure 5.7. Illustration to the proof of Lemma 5.21.

Analogously, we proceed if two or more allocation edges cross L from

right to left. After these operations, there remains at most one allocation

edge per direction, and the value of the modified solution is increased by

at most Ax. Note that the modified salesman tour tt visits a point set

P l+J S' which consists of all points of the original tour tt plus some newly

added Steiner points.

Now, we apply Lemma 3 of [11] to the salesman tour tt. This lemma

claims that if a salesman tour tt crosses L three times or more, there

exists a salesman tour tt' visiting the same points as tt but crossing P at

most, twice, satisfying £(tt') — £(tt) < g x for some constant g.

Thus, replacing tt by a new tour tt' through Pl±l5", we obtain a modified

solution (T, S',tt') such that the total number of crossings is at most

four and

val* (P, S', tt') < val* (T, S, tt) + g x + 4 x.

This completes the proof.

Below we describe a dynamic program working on a quadtree. This

algorithm considers only solutions that cross each square's boundary

only r ~ Ö (l/e) times. With Lemma 5.21 at, hand we can show that we

indeed expect to obtain a (1 + ^-approximation.

5.6.2. The Approximation Scheme. We now describe our

0(nlog0(1/e)n)-timc randomized PTAS for Steiner VRAP. Wc bor¬

row techniques appearing in [11] and [14]. As all input points have odd

Page 162: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.6. Steiner VRAP 149

integral coordinates and the sidelength of the bounding box is a power of

two of order n/e, the concept of shifted quadtrees presented Section 4.2

is amendable to Steiner VRAP. Note that Observation 4.5 still holds,

although wc have L = Ö (^n2/e) in Section 4.2. In particular the depth of

shifted quadtree QL\hh is t = logP = O (logn) for constant, e. (which we

henceforth assume). For our analysis, the reader also needs to recall the

definitions \ev(V,a) and lev(P, b) for vertical and horizontal dissection

lines H and V, respectively.

We proceed by dynamic programming in such a shifted quadtree QPa,6-

However, we here need to truncate QTihb at squares that contain only

one input point. It is well-known [38] that, such a truncated quadtree has

size O (nlogn), as we have n points with spread Ö (n). For convenience,

we also include all siblings of these squares, such that every non-leaf of

QTaib has exactly four children. Note that this does not increase the

complexity of QTa,b significantly

Our PTAS computes a solution that crosses the boundary of each square

of QTa:b at most r = Ö (1/e) times. Moreover, we place m = Ö (log n/e)

equally spaced portals around every square 0 G QTa,b and require sim¬

ilarly to [11] that the tour crosses 6-0 only at portals. Therefore the

portals play the role of 'auxiliary' Steiner points, and removing them in

the end clearly improves the found solution. Furthermore, we estimate

the distance to the nearest point (or Steiner point) on the tour similarly

as in Section 5.5 for the PTAS for VRAP. The main differences are that

we encode information only at the r "interesting" portals, and that we

do not work on a zoom tree but (similar to [14]) on a truncated quadtree.

A configuration C for a square 0 E QTa,b is given by

(1) up to r portals where the tour crosses the boundary of 0, and

information how those portals are connected within 0,

(2) up to r portals that are used for allocations, and for each of these

portals a value Cin G {1, ...,2m,oo} or Cout G {1, ...,5m,oo}, and

(3) a bit a E {allocate, recurse}.

As in Section 5.5, the values Cin and Cout specify the distances to the

next tour or Steiner point inside resp. outside 0 with a precision of

|0|/m. However, we here encode distances only at the at most r portals

that we need. There are m2r many ways to specify the 2r portals we

use. Moreover, there Ö (rn)r ways to choose the r values Cin and Cout,

and Ö (rr) ways to specify how the portals are connected within 0 by

Page 163: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

150 Chapter 5. Vehicle Routing with Allocation

the salesman paths. Since m = ö(logn,/e) and r — 0(1/e), the total

number of configurations for a given square 0 G QTa,b is C(log ^)-

The dynamic program works similar to those proposed in Section 5.5

and in the previous chapters. We try to find good solutions to the local

optimization problems posed by the configurations C for the squares

0 G QTa,b, calculating values P[0,C] which are close approximations of

the sum of the total length of all tour segments inside 0 and the fullallocation costs of all allocation points in 0. The bit a indicates how

these values are calculated. The interpretation of a ~ allocate is that

0 contains no tour segment. In particular, the tour does not cross the

boundary of 0, and all input points in 0 are allocation points. In that

case we calculate P[0,C] directly, using the portal-respecting distances

as estimates for the real distances as before. If a — rccurse, we calculate

P[0,C] recursively, using the values found for its four children (unless 0is a leaf of QTrti*>). In total, we distinguish three cases, depending on a

and the number of points 0 contains.

Case Al. a — allocate. As in Section 5.5, wc estimate the allocation

cost for each point using the function Cout- (Recall that a = allocate

means that, 0 contains no tour segment, so we can only allocate to the

outside of 0.) Since we only recurse as long as there are tour segments

in the square at, hand, wc know that one of the siblings of 0 contains a

tour segment, which is at distance at most 4|0| from any portal on 0.

Therefore, our encoding of the distances suffices. As we only consider

solutions that cross each square at, most r times, we know that 0 contains

at most r points. Hence, one application of case Al requires constant

time.

Case A2. o — recurse and |P n 0| < 1. This means that 0 is a leaf of

QT(l;b. If 0 contains a point p G P, we guess whether it is a tour point

or not. Also, we guess the coordinates of the Steiner points on a m x m

grid subdividing 0. As we minimize the length of the salesman path,it makes no sense at, all to introduce more than one Steiner point per

allocation. Therefore, it suffices to guess the locations of at most r + 1

Steiner points, at most r for the Cin's and possibly one for p. For each

such choice, we check whether the restrictions given by the functions Cinare satisfied, and calculate optimal salesman paths on the tour portals,Steiner points, and possibly p (if we guessed it to be a tour point). If

Page 164: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.6. Steiner VRAP 151

we guessed p to be an allocation point, we allocate it, as usual either to

a Steiner point inside 0 or to an allocation portal on 0.

We keep the choice of Steiner points minimizing the total cost and write

its value to P[0,C]. There are at most m2(r+1^ choices for the location

of the Steiner points, and for every such choice, all calculations can be

done in constant, time. Therefore, case A2 takes time ö(log * '£' n) to

compute whenever it occurs.

Case B. a — recurse and |Pn0| > 2. This is a divide-and-conquer step

quite similar to case BI in Section 5.5.1. Wc split the square into its four

children, go through all quadruples of configurations which comply with

each other and C, and minimize the sum of the four values T[Qi,Ci],For C fixed, there are (0(log ^' £> n))4 choices for the configurationsof its children, and for every such choice all calculations can be done

in constant time. Hence case BI takes time Oilog' '£> n) to compute

whenever it occurs.

5.6.3. Analysis. We immediately see that the complexity of our dy¬

namic program is (9(nlog ^'£' n). On the other hand, the approxima¬tion ratio can be bounded by constructing a configuration C* like in

Section 5.5. We start with an optimal solution (P*,5*,tt*) to Steiner

VRAP, pass through the tree, and set for all squares a* appropriately.Then we proceed in bottom-up fashion through QTa,b- On each level we

go through all squares. Let 0 denote the square we currently consider.

Whenever case A2 would apply to 0, we shift the Steiner points to the

next coordinate of the m x m grid subdividing 0. This increases the

cost, of the solution by at most |0|/m per Steiner point. In either case,

if a side of 0 is crossed more than r/4 times by the current solution we

apply Lemma 5.21 reducing the number of crossings to 4 by increasingthe cost of the solution by at most 2|0|. Moreover, we make sure that

the salesman tour crosses the boundary of 0 only at portals. This is

achieved by detouring the salesman tour over the portals in (90. Note

that this increases the tour's length by at most |0|/(2m) per crossing.

Similarly, we proceed for the allocation edges. This however is only done

for the sake of analysis, namely to easily identify the portals at which

we have to encode information. Indeed, we call the portals used by (de-toured) allocation edges active and set the values C*n for all active portals

just as in Section 5.5. However, the minimum in (5.23) is taken over all

active portals on the three (instead of just one) siblings of 0. Finally, we

Page 165: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

152 Chapter 5. Vehicle Routing with Allocation

proceed top-down through QTajb and set, the Cout f°r a^ active portals

similarly as in Section 5.5. Here, the minimum in (5.24) is taken over all

active portals on the three siblings of 0. It is easily checked that (5.28)on page 145 still holds.

Our PTAS identifies the squares' configurations constructed above or

better ones. Hence, we can bound the approximation ratio of our algo¬

rithm by bounding the errors induced in the construction given above.

The idea behind our analysis is to charge these errors to the crossings of

the optimum (T*,S*,tt*) with the dissection lines of QTa:b- We basically

have four types of errors.

Firstly, we increase the length of the solution by 2|0| by applying

Lemma 5.21. On the other hand, we destroy each time at least r cross¬

ings of the solution with a certain dissection line of QTa^b.

Secondly, detouring the salesman path to the next portal on <90 in¬

creases its length by at most |0|/(2m). This error is charged to the

corresponding crossing.

Thirdly, we shift the Steiner points to the next coordinate of 777 x m grid

subdividing 0 which induces an error of |0|/m per point. Recall that

we only shift Steiner points if we have at most one input point p in the

0. As we started with an optimal solution, the following is true. Each

Steiner points is incident to at least on allocation edge, and at most one

Steiner point is used to allocate a point with 0, namely p. If a Steiner

point is incident to an allocation edge e crossing <90, we charge the

aforesaid error to e. Otherwise, we charge this error to a crossing of the

salesman tour with 90. Note that, such a crossing exists (as otherwise

0 will not contain Steiner points), and that, such an error is charged at

most once (as 0 contains no input point but p).

Finally, the error due to the estimation using Cout f°r an allocation edge e

in the optimum solution is O (P/2/o), where Iq is the minimum level of a

dissection line in QTa^ that intersects with e. This error can be bounded

from above by charging an error of Ö (L/21) for every dissection line V

or H with / = lev(V, a) or I = lev(H, b) that is crossed by e.

With those observations at hand we can bound the approximation ratio

as follows. First, note that (4.3) on page 99 also holds for Steiner

VRAP, as ß(p) > 1 for all p E P. Hence, we have

(5.29) _Zx(H) + Y_X(V) < val* (P*,S*,tt*) ,

H V

Page 166: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.6. Steiner VRAP 153

where x(P/) and x(V) count how often the optimum crosses the dissec¬

tion lines H and V, respectively. Let c(H,a,b,l) count how often we

applied Lemma 5.21 at level / along H. Like in the proof of Lemma 4.13

we can check that there exist values c(H,a,l), such that,

fc(H,a,l) ,l>lev(H,b)c(H,a,b,l) = <

.

I 0,otherwise.

Similarly, we define values c(V, b, I) for vertical dissection lines. More¬

over, observe that an application of Lemma 5.21 along a horizontal (ver¬

tical) line H (V) reduces the number of crossings by at least r/4 — 4,

that is, we have

(5.30) J2~c{H,a,l) < ^- and £g(V;6,J) < jS-1^0

'1=0

'

Let P, S, tt denote the solution found by our PTAS and let

A := val* (T, S, tt) - val* (T*, S*,tt*).

The PTAS finds configurations for the squares that are at least as good as

the C*s, and thus A is at most the total error induced by the construction

of the C*s given above. Observe that we can group the four types of errors

we discussed above as follows.

For each application of Lemma 5.21 to a square at, level I we have

a cost OÎ2L/21.- For a suitable constant g, we charge an error of at most gL/(m2l)

to every crossing of the optimum with a horizontal or vertical dis¬

section line H resp. V such that / > lev(P, b) resp. / > lev(P, b).

Therefore the error can be bounded separately for each dissection line.

However, it is convenient in the sequel to consider horizontal and vertical

dissection lines separately. That is, we bound A}loriz and Avort such that

A < Ahoriz + Avcrt

Page 167: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

154 Chapter 5. Vehicle Routing with Allocation

We start with Ahor_z. With the observation from above at, hand, it is

easy to see that,

E[Allorij < ^EEE t (f^.o + éW)a b H /=lcv(H,6)

V J

a H 1=0

• (^.«.o+â***')As \{b : lev(PT,b) < l}\ < 2l due to Observation 4.5, we obtain

E[Ahoriz] < ^EÇè(2M(H>°>') + ^(ff))< ^EE(^)+^^xW)

where the next to last inequality follows from (5.30). Similarly we bound

E[Avert]. Finally, using (5.29) we deduce that

E[A] < Ahoriz + Avcrt

<- t^**32) (?*->&<*>)- (l+e)-val#(r*,5*,7r*),

for r = Ö (l/e) and m — O (t/e) = Ö (logn). This completes the proofof Theorem 5.2.

5.7. Higher Dimensions and Derandomization

It is easily checked that our PTAS for VRAP extends to higher dimen¬

sions with small modifications. The running time increases to

ö(n logd+3 n), as the range searching in Lemma 5.19 takes time 0(log n)

per cell in dimension d [3]. One can also extend our PTAS for Steiner

VRAP to higher dimensions. The cirtical part ist Lemma 5.21 which

extends similarly as Lemma 3 in [11] to any dimension d. This gives

a PTAS with complexity of ö(nlog^'e) n) with £(d,e) = ö(Vd/e)d~l.

Page 168: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

5.7. Higher Dimensions and Dcrandomization 155

Lastly, our algorithms can be trivially dcrandomized by enumerating all

Ö (nd) choices for the initial random shift of the zoom, respectively quadtree.

Page 169: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Seite Leer /

Blank leaf

Page 170: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

CHAPTER 6

Conclusions

In this thesis we introduced a QPTAS for Minimum Weight Triangu¬

lation, a PTAS for Node-Weighted Steiner Tree and a random¬

ized PTAS with nearly linear time complexity for Vehicle Routing

with Allocation. Our algorithms overcome limitations of previous

techniques, as we do not require a statement similar to the PatchingLemma [11] for our problems. Indeed, it is unclear whether such a state¬

ment is even true for any of the three problems. As we did not propose

some sort of unified approach and as our methods differ from problemto problem, we close this work by discussing the broader applicability of

our algorithms as well as their limitations.

The most natural aim of future research on Minimum Weight Trian¬

gulation is to prove the existence of a PTAS. This would be even the

best possible result, as the recent hardness result of Mulzer and Rote

[99] excludes a FPTAS unless P = J\fV. Extending our techniques to

Minimum Steiner Triangulation seems to be promising but unfor¬

tunately there might be relevant local hulls that include Steiner points.To overcome this problem one might want to show that it is sufficient

to consider local hulls containing only few Steiner points at prescribedlocations. A similar question asking for an upper bound to the number

of Steiner points in a (1 + ^-approximation is discussed in [12].

Our PTAS for Node-Weighted Steiner Tree contributes new tech¬

niques that, as we think, can also be applied to other geometric problemsthat involve trees or tree-like structures. As the concept of (s,£)-mapsdoes not extend to higher fixed dimensions, future research should not

only aim to improve the complexity of the PTAS in the plane but, also

consider NODE-WEIGHTED STEINER TREE (or a similar problem) in

dimension 3 or higher.

For Vehicle Routing with Allocation wc were able to show not

only the existence of a PTAS but also that, a (1 + ^-approximation can

157

Page 171: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

158 Chapter 6. Conclusions

be obtained in nearly-linear time using randomization. Thus there is not

too much room for improvements. A future research challenge, however,

would be to prove a similar result for the prize-collecting variant to

which our methods do not extend. A related and more fundamental

open question is whether the prize-collecting variant of geometric TSP

admits a PTAS with complexity Ö [ n log - 'n ).

Page 172: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Notation

N, No natural numbers, natural numbers with 0

Qi Q>0 rational numbers, non-negative rational numbers

R, M>o real numbers, non-negative real numbers

Z, Z>o integers, non-negative integers

logn, Inn logarithms of n to base 2 and e, respectively

p(A) power set of set A

Pr{£} probabilty of event £

Pr{£ | £'} probabilty of event £ conditioned on £'

E[X] expectation of the random variable X

E[X | £] expectation of the random variable X conditioned on £

OR. boundary of the region Ft 10

R closure of the region R 10

conv(A") convex hull of point set X 10

d(p, q) Euclidean distance of the points p and q 9

dq (p, q) .5fq-distancc of the points p and q 9

Md (i-dimensional Euclidean space 9

A(T) set of triangles induced by the triangulation T 23

H+, H~ open halfspaces of a hyperplane H 10

Kp induced graph of the point set P 12

Kp^Q induced bipartite graph of the point sets P and Q 13

£q(e) ^-length of the line segment e 9

£(e) Euclidean length of the line segment e 9

iq(Q) ^-length of the SLG 0 10

159

Page 173: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

160 Notation

£(Ç) Kuclidean length of the SLG Ç 10

Sâq .^-metric, i.e., (J2'Li ^)l/q 9

P{G) points of P that are incident to at least one edge in the SLG G 10

lüR] side length of a rectangle (or square) ÜK 28

uv straight-line segment bounded by the points u and v 10

^xyz triangle with vertices x, y, and z 10

Page 174: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Bibliography

[l] P. K. Agarwal. Range searching. In J. E. Goodman and J. O'Rourke, editors,

Ha,ndbook of Discrete a,nd, Computational Geometry. CRC Press, Boca Raton,

FL, 2nd edition, 2004.

[2] P. K. Agarwal, A. Efrat, and M. Sharir. Vertical decomposition of shallow

levels in 3-dimensional arrangements and its applications. SIAM Journal on

Computing, 28(3):912-953, 1999.

[3] P. K. Agarwal and J. Erickson. Geometric range searching and its relatives. In

B. Chazelle, J. E. Goodman, and R. Pollack, editors, Ad,va,nces in Discrete and

Computational Geometry, volume 223 of Contemporary Mathematics, pages

1—56. American Mathematical Socienty, Providence, Rl, 1999.

[4] A. Aggarwal, H. Imai, N. Katoh, and S. Suri. Finding k points with minimum

diameter and related problems. Journal of Algorithms, 12(1):38—56, 1991.

[5] A. V. Aho, J. E. Hopcroft, and J. D. oilman. The Design and Analysis of

Computer Algorithms. Addison-Wesley, Reading, MA, 1974.

[6] M. Aigner and G. M. Ziegler. Proofs from the book. Springer, 3rd edition, 2004.

[7] N. Ailon and B. Chazelle. Approximate nearest neighbors and the fast johnson-lindenstrauss transform. In Proceedings of the 38ih Annual ACM Symposium

on Theory of Computing, pages 557—563, 2006.

[8] E. Anagnostou and D. G. Corneil. Polynomial-time instances of the minimum

weight triangulation problem. Computational Geometry: Theory and Applica¬

tions, 3:247-259, 1993.

[9] A. Armon, A. Avidor, and O. Schwartz. Cooperative TSP. In Proceedings ofthe 14th Annual Fjuropean Symposium on Algorithms, pages 40-51, 2006.

[10] S. Arora. Polynomial time approximation schemes for Euclidean TSP and other

geometric problems. In Proceedings of the 37th Annual Symposium, on Foun¬

dations of Computer Science, pages 2-11, 1996.

[11] S. Arora. Polynomial time approximation schemes for Euclidean traveling sales¬

man and other geometric problems. Journal of the ACM, 45(5):753-782, 1998.

[12] S. Arora. Approximation schemes for NP-hard geometric optimization prob¬lems: A survey. Mathematical Programming, Series B, 97:43-69, 2003.

[13] S. Arora and K. Chang. Approximation schemes for degree-restricted MST and

red-blue separation problems. Algorithmica, 40(3): 189-210, 2004.

[14] S. Arora, P. Raghavan, and S. Rao. Approximation schemes for Euclidean k-

medians and related problems. In Proceedings of the 30th Annual ACM Sym¬

posium on Theory of Computing, pages 1.06-113, 1998.

161

Page 175: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

162 Bibliography

[15] S. Arya, G. Das, D. M. Mount, J. S. Salowe, and M. Sinid. Euclidean spanners.

Short, thin, and lanky. In Proceedings of the 27th annual ACM Symposium on

Theory of Computing, pages 489—498, 1995.

[16] V. Arya, N. Garg, R. Khandekar, A. Meyerson, K. Munagala, and V. Pan¬

dit. Local search heuristics for fc-mcdian and facility location problems. SIAM

Journal on Computing, 33(3):544-562, 2004.

[17] G. Ausiello, P. Crescenzi, G. Gambosi, V. Kann, A. Marchetti-Spaccamcla,

and M. Protasi. Complexity and, Approximation: Combinatorial Optimization

Problems and Their Approximability Properties. Springer, 1999.

[18] J. E. Beasley and E. Nascimento. The vehicle routing allocation problem: a

unifying framework. TOP, 4:65-86, 1996.

[19] P. Belleville, J. M. Keil, M. McAllister, and J. Snoeyink. On computing edgesthat are in all minimum-weight triangulations. In Proceedings of the 12th An¬

nual Symposium on Computational Geometry, pages V7-V8, 1996.

[20] M. Bern and D. Eppstcin. Approximation algorithms for geometric problems. In

D. Hochbaum, editor, Approximation Algorithms for NP-ha,rd Problems. PWS

Publishing, Boston, MA, 1997.

[21] M. Bern and P. Plassmann. The Steiner tree problem with edge length 1 and

2. Information Processing Letters, 32:171-176, 1989.

[22] G. Borradaile, C. Kenyon-Mathieu, and P. N. Klein. A polynomial-time approx¬

imation scheme for steiner tree in planar graphs. In Proceedings of the 18th An¬

nual ACM-SIAM Symposium on Discrete Algorithms, pages 1285-1294, 2007.

[23] H. Bronnimann and M. T. Goodrich. Almost optimal set covers in finite VG-

dimension. Discrete & Computational Geometry, 14(4):463-479, 1995.

[24] T. M. Chan. Euclidean bounded-degree spanning tree ratios. In Proceedings of

the 19th ACM Symposium on Computational Geometry, pages 11-19, 2003.

[25] M. Charikar and S. Guha. Improved combinatorial algorithms for the facility

location and fc-median problems. In Proceedings of the 40th Annual Symposium

on Foundations of Computer Science, pages 378—388, 1999.

[26] B. Chazelle. A minimum spanning tree algorithm with inverse-ackermann type

complexity. Journal of the ACM, 47(6): 1028-1047, 2000.

[27] K. Chen. On fc-median clustering in high dimensions. In Proceedings of the

17Ih Annual ACM-SIAM Symposium on Discrete Algorithms, pages 1177-

1185, 2006.

[28] K. Chen and S. Har-Peled. The orienteering problem in the plane revisited. In

Proceedings of the 22nd A CM Symposium on Computational Geometry, pages

247-254, 2006.

[29] S.-W. Cheng and Y.-F. Xu. Approaching the largest beta-skeleton within a

minimum weight triangulation. In Proceedings of the 12th Annual Symposium,

071 Computational Geometry, pages 196-203, 1996.

[30] N. Christofides. Worst-case analysis of a new heuristic for the traveling salesman

problem. Technical report, Grad School of Industrial Administration, OMU,

1976.

[31] R. Courant and H. Robbins. What is Mathematics? Oxford University Press,

1941.

Page 176: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Bibliography 163

[32

[33;

[34:

[as:

[36

[37

[38

[39

[40

[41

[42

[43:

[44:

[45

[46

[47

[48

[49

A. Czumaj and A. Lingas. A polynomial time approximation scheme for eu-

clidean minimum cost A:-connectivity. In Proceedings of the 25th Annual Inter¬

national Colloquium on Automata, Languages and Progra.mm.ing, pages 682-

694, 1998.

A. Czumaj and A. Lingas. Fast approximation schemes for euclidean multi-

connectivity problems. In Proceedings of the 27th Annual International Collo¬

quium on Automata, Languages and Programming, pages 856—868, 2000.

G. Das and D. Joseph. Which triangulations approximate the complete graph?,in Optimal Algorithms, International Symposium, Varna, Bulgaria, pages 168-

192, 1989.

S. Das, P. P. Goswami, and S. C. Nandy. Smallest k point enclosing rectangleof arbitrary orientation. In Proceedings of the 16th Canadian Conference on

Computa,tional Geometry, pages 116- 119, 2004.

A. Datta, H.-P. Lenhof, G. Schwarz, and M. H. M. Smid. Static and dynamic

algorithms for fc-point clustering problems. Journal of Algorithms, 19(3):474—

503, 1995.

M. de Berg, J. Gudmundsson, M. J. Katz, C. Levcopoulos, M. H. Overmars,

and A. F. van der Stappen. TSP with neighborhoods of varying size. Journal

of Algorithms, 57(l):22-36, 2005.

M. dc Berg, M. van Krevald, M. Overmars, and O. Schwarzkopf. Computational

Geometry - Algorithms and Applications. Springer, 2nd edition, 2000.

M. Dickerson, J. M. Keil, and M. H. Montague. A large subgraph of the min¬

imum weight triangulation. Discrete & Computational Geometry, 18(3):289—

304, 1997.

R. L. Drysdale, S. A. McElfresh, and J. Snoeyink. On exclusion regions for

optimal triangulations. Discrete Applied Mathematics, 109(1-2):49 65, 2001.

D. Z. Du and F. K. Hwang. A proof of Gilbert-Pollack's conjecture on the

Steiner ratio. Algorithmica, 7:121-135, 1992.

R. D. Düppe and H. J. Gottschalk. Automatische Interpolation von Isolinien bei

willkürlichen Stützpunken. Allgemeine Vermessungs-Nachrichten, 77:423 -426,1970.

H. Edelsbrunner and T. S. Tan. A quadratic time algorithm for the minmax

length triangulation. SIAM Journal on Computing, 22(3):527-551, 1993.

H. Edelsbrunner, T. S. Tan, and R. Waupotitsch. An 0(n2 log 7?,) time algorithmfor the minmax angle tiiangulation. SIAM Journal on Scientific Computing,

13(4):994-1008, 1992.

A. Efrat, M. Sharir, and A. Ziv. Computing the smallest k-enclosing circle and

related problems. Computational Geometry: Theory and Applications, 4:119—

1136, 1994.

D. Eppstein. Approximating the minimum weight Steiner triangulation. Dis¬

crete & Computational Geometry, 11:163 191, 1994.

D. Eppstein and J. Erikson. Iterated nearest neighbors and finding minimal

polytopes. Discrete & Computational Geometry, 11:321 350, 1994.

D. Eppstein, M. Overmars, G. Rote, and G. Woeginger. Finding minimum area

k-gons. Discrete & Computational Geometry, 7(l):45-58, 1992.

T. Feder and D. Greene. Optimal algorithms for approximate clustering. In

Proceedings of the 10th Annual ACM Symposium on Theory of Computing,

pages 434-444, 1988.

Page 177: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

164 Bibliography

W. Fernandez de la Vega,, M. Karpinski, and C. Kenyon. A polynomial time

approximation scheme for metric MIN-BISECTION. In Electronic Colloquiumon Computational Complexity, 2002.

W. Fernandez de la Vega, and C. Kenyon. A randomized approximation scheme

for metric MAX-CUT. Journal of Computer and System Sciences, 63:531-541,2001.

M. Fischetti, H. Harnacher, K. Joernstcn, and F. Maffioli. k -cardinality trees:

Complexity and polyhedral structure. Networks, 24:11-21, 1994.

L. R. Foulds, S. W. Wallace, J. Wilson, and L. Sagvolden. Bookmobile routingand scheduling in Buskerud County, Norway. In Proceeding of the 36th Annual

Conference of the Operational Research Society of New Zealand, pages 67-77,2001.

M. Garey, R. Graham, and D. Johnson. Some NP-complete geometric problems.In Proceedings of the 8th Annual ACM Symposium on Theory of Computing,

pages 10-22, 1976.

M. Garey, R. Graham, and D. Johnson. The complexity of computing Steiner

minimal trees. SIAM Journal on Applied Mathematics, 32:835-859, 1977.

M. R. Garey and D. S. Johnson. Computers and Intractability - A Guide to

the Theory of NP-Completness. Freeman and Company, New York, NY, 1979.

C. F. Gauss and H. C. Schumacher. Briefwechsel, volume 2. Edited by C. A.

F. Peters, Altona, 1860 - 1865. Reprinted by Olms, Hildesheim, 1975.

S. Gerke and J. Remy. Prize-collecting point sets, submitted, 2007.

P. Gilbert. New results on planar triangulations. Master's thesis, University of

Illinois, 1979.

M. X. Goemans. Minimum bounded degree spanning trees. In Proceedings ofthe 47th Annual IEEE Symposium on Foundations of Computer Science, pages

273-282, 2006.

M. X. Goemans and D. P. Williamson. A general approximation techniquefor constrained forest problems. SIAM Journal on Computing, 24(2):296-317,1995.

M. X. Goemans and D. P. Williamson. Improved approximation algorithmsfor maximum cut and satisfiability problems using semidefinite programming.Journal of the ACM, 42(6):1115-1145, 1995.

M. J. Golin, R. Raman, C. Schwarz, and M. H. M. Smid. Simple randomized

algorithms for closest pair problems. Nordic Journal of Computing, 2(l):3-27,1995.

T. F. Gonzalez. Clustering to minimize the maximum intercluster distance.

Theoretical Computer Science, 38:293-306, 1985.

M. Grantson, C. Borgelt, and C. Levcopoulos. Minimum weight triangulation

by cutting out triangles. In Proceeding of the 16th Annual International Sym¬posium on Algorithms and Computation, pages 984-994, 2005.

M. Grötschel, L. Lovâsz, and A. Schrijver. Geometric Algorithms and Combi¬

natorial Optimization. Springer, New York, NY, 2nd edition, 1993.

J. Gudmundsson and C. Levcopoulos. Minimum weight pseudo-triangulations.In Proceedings of the 20th European Workshop on Computational Geometry,2004.

Page 178: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Bibliography 165

[68

[69

[70

[71

[72

[73

[74

[75

[76

[77

[78

[79:

[80

[81

[82

[83:

[84

[85

[86

J. Gudmundsson, C. Levcopoulos, and G. Narasimhau. Improved greedy algo¬

rithms for constructing sparse geometric spanners. In Proceedings of the 7th

Scandinavian Workshop on Algorithm Theory, pages 163-174, 2000.

S. Har-Peled and S. Mazumdar. On coresets for k-mcans and k-median cluster¬

ing. In Proceedings of the 36th Annual ACM Symposium on Theory of Com¬

puting, pages 291 300, 2004.

S. Har-Peled and S. Mazumdar. Fast algorithms for computing the smallest

k-enclosing circle. Algorithmic^,, 41(3):147- 157, 2005.

D. S. Hochbaum and W. Maass. Approximation schemes for covering and pack¬

ing problems in image processing and VLSI. Journal of the ACM, 32(1): 130-

136, 1985.

M. Hoffmann and Y. Okamoto. The minimum weight triangulation problemwith few inner points. In Proceedings of the 1st Internation Workshop on Pa¬

rameterized and Exact Computation, pages 200-212, 2004.

F. K. Hwang, D. Richards, and P. Winter. The Steiner rIYee Problem, volume 53

of Annals of Discrete Mathematics. North-Holland, 1995.

P. Indyk. Nearest neighbors in high-dimensional spaces. In J. E. Goodman and

J. O'Rourke, editors, Handbook of Discrete and Computational Geometry. CRC

Press, Boca Raton, FL, 2nd edition, 2004.

P. Indyk and R. Motwani. Approximate nearest neighbors: Towards removingthe curse of dimensionality. In Proceedings of the 30th Annual ACM Symposium

on Theory of Computing, pages 604-613, 1998.

K. Jain and V. V. Vazirani. Approximation algorithms for metric facility lo¬

cation and A;-median problems using the primal-dual schema and Lagrangianrelaxation. Journal of the ACM, 48(2):274-296, 2001.

D. S. Johnson. The NP-completeness column: An ongoing guide. Journal of

Algorithms, 3(2): 182-195, 1982.

II. Karloff. How long can a Euclidean Traveling Salesman Tour be? SIAM

Journal on Discrete Mathematics, 2(l):91-99, 1989.

J. M. Keil. Computing a subgraph of the minimum weight triangulation. Com¬

putational Geometry: Theory and Applications, 4:18—26, 1994.

P. Klein and R. Ravi. A nearly best-possible approximation algorithm for node-

weighted Steiner trees. Journal of Algorithms, 19:104-115, 1995.

G. Klincsek. Minimal triangulations of polygonal domains. Annals of Discrete

Mathemathics, 9:121-123, 1980.

S. Kolliopoulos and S. Rao. A nearly linear-time approximation scheme for

the cuclidean fc-mcdian problem. In Proceedings of the 7th Annual European

Symposium on Algorithms, pages 378—389, 1999.

S. Kolliopoulos and S. Rao. A nearly-linear time approximation scheme for the

Euclidean /c-median problem. SIAM Journal on Computing, to appear.

A. Kumar, Y. Sabharwal, and S. Sen. Linear time algorithms for clustering

problems in any dimensions. In Proceedings of the 32nd International Collo¬

quium on Automata, Languages and Programming, 2005.

M. Labbé, G. Laporte, I. R. Martin, and J. J. S. Gonzalez. The ring star

problem: Polyhedral analysis and exact algorithm. Networks, 43(3): 177-189,2004.

M. Labbé, G. Laporte, I. R. Martin, and J. J. S. Gonzalez. Local median cyclesin networks. European Journal of Operations Research, 160(2):457-470, 2005.

Page 179: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

166 Bibliography

C. Levcopoulos and D. Krznaric. Quasi-greedy triangulations approximating

the minimum weight triangulation. In Proceedings of the 7th Annual ACM-

SIAM Symposium, on Discrete Algorithms, pages 392—401, 1996.

C. Levcopoulos and D. Krznaric. A near-optimal heuristic for minimum weight

triangulation of convex polytops. In Proceedings of the 8th Annual ACM-SIAM

Symposium on Discrete Algorithms, pages 519-527, 1997.

C. Levcopoulos and D. Krznaric. Quasi-greedy triangulations approximating

the minimum weight triangulation. Journal of Algorithms, 27:303-338, 1998.

E. Lloyd. On triangulations of a set of points in the plane. In Proceedings of

the 18th Annual IEEE Symposium on Foundations of Computer Science, pages

228-240, 1977.

K. Mehlhorn, R. Osbild, and M. Sagraloff. Reliable and efficient computational

geometry via controlled perturbation. In Proceedings of the 33nd International

Colloquium, on Automata, Languages and Programming, pages 299—310, 2006.

Z. Melzak. On the problem of Steiner. Canadian Mathematical Bulletin, 4:143-

148, 1961.

J. S. B. Mitchell. Guillotine subdivisions approximate polygonal subdivisions:

A simple new method for the geometric k-MST problem. In Proceedings of the

7th Annual ACM-SIAM Symposium on Discrete Algorithms, pages 402 408,1996.

J. S. B. Mitchell. Guillotine subdivisions approximate polygonal subdivisions:

A simple polynomial-time approximation scheme for geometric TSP, fc-MST

and related problems. SIAM Journal on Computing, 28(4): 1298-1309, 1999.

J. S. B. Mitchell. A PTAS for TSP with neighborhoods among fat regions in the

plane. In Proceedings of the 18th Annual ACM-SIAM Symposium on Discrete

Algorithms, pages 11 18, 2007.

J. S. B. Mitchell and J. O'Rourke. Computational geometry column 42.

SIGACT News, 32(3):63-72, 2001.

J. S. B. Mitchell and S. Suri. Separation and approximation of polyhedral ob¬

jects. In Proceedings of the third Annual ACM-SIAM Symposium on Discrete

algorithms, pages 296-306, 1992.

A. Moss and Y. Rabani. Approximation algorithms for constrained node

weighted Steiner tree problems. In Proceedings of the 33rd Annual ACM Sym¬

posium, on Theory of Computing, pages 373-382, 2001.

W. Mulzer and G. Rote. Minimum weight triangulation is NP-hard. In Pro¬

ceedings of the 22nd Annual ACM Symposium on Computational Geometry,

pages 1-10, 2006.

C. Papadimitriou and K. Stciglitz. Combinatorial Optimization. Prentice-Hall,

Englewood Cliffs, NJ, 1982.

C. H. Papadimitriou and U. V. Vazirani. On two geometric problems related

to the traveling salesman problem. Journal of Algorithms, 5:231-246, 1984.

C. H. Papadimitriou and M. Yannakakis. Optimization, approximation, and

complexity classes. Journal of Computer and System Sciences, 43(3):425—440,1991.

C. H. Papadimitriou and M. Yannakakis. The traveling salesman problem with

distances one and two. Mathematics of Operations Research, 18:1-11, 1993.

S. Pettie and V. Ramachandran. An optimal minimum spanning tree algorithm.Journal of the ACM, 49(l):16-34, 2002.

Page 180: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Bibliography 167

[105] D. A. Plaisted and J. Hong. A heuristic triangulation algorithm. Journal of

Algorithms, 8:465 437, 1987.

[106] F. P. Preparata and M. I. Shamos. Computational Geometry: An introduction.

Springer, New York, NY, 1985.

[107] H. J. Prömcl and A. Steger. The Steiner Tree Problem — A Tour through

Graphs, Algorithms, and Complexity. Advanced Lectures in Mathematics.

Vieweg Verlag, 2002.

[108] S. B. Rao and W. D. Smith. Approximating geometrical graphs via 'spanners'and 'banyans'. In Proceedings of the 30th Annual ACM Symposium on Theory

of Computing, pages 106-113, 1998.

[109] J. Remy, R. Spöhel, and A. Weißt On Euclidean vehicle routing with allocation.

In Proceedings of the 10th Workshop on Algorithms and Data Structures, 2007.

[110] J. Remy and A. Steger. Approximation schemes for node-weighted geometric

Steiner tree problems. In Proceedings of the 8th Workshop on Approximation

Algorithms for Combinatorial Optimization Problems, pages 221-232, 2005.

[Ill] J. Remy and A. Steger. A quasi-polynomial time approximation scheme for

minimum weight triangulation. In Proceedings of the 38lh Annual ACM Sym¬

posium on Theory of Computing, pages 316-325, 2006.

[112] J. Remy and A. Steger. Approximation schemes for node-weighted geometricSteiner tree problems. Algorithmica, to appear.

[113] G. Robins and A. Zelikovsky. Improved Steiner tree approximation in graphs. In

Proceedings of the 11th annual ACM-SIAM symposium on Discrete algorithms,

pages 770-779, 2000.

[114] S. Safra and O. Schwartz. On the complexity of approximating TSP with neigh¬borhoods and related problems. In Proceedings of the 11th Annual European

Symposium on Algorithms, pages 446-458, 2003.

[115] P. Schreiber. Zur Geschichte des sog. Steiner-Weber-Problems. In Wis¬

senschaftliche Zeitschrift der Ernst-Moritz-Arndt-Universität Greifswald,Mathematisch-naturwissenschaftliche Reihe (35), pages 53-58, 1986.

[116] A. Schrijver. Combinatorial Optimization. Springer, New York, 2003.

[117] M. Segal and K. Kedem. Enclosing k points in the smallest axis parallel rec¬

tangle. Information Processing Letters, 65(2):95 99, 1998.

[118] A. Segev. The node-weighted Steiner tree problem. Networks, 17(1):1-17, 1987.

[119] M. I. Shamos and D. J. Hoey. Closest-point problems. In Proceedings of the

16th Annual, IEEE Symposium on Foundations of Computer Science, pages

151-162, 1975.

[120] J. Supowit, D. A. Plaisted, and E. M. Reingold. The traveling salesman prob¬lem and minimum matching in the unit square. SIAM Journal on Computing,

I2(I):144-156, 1983.

[121] K. Talwar. Bypassing the embedding: algorithms for low dimensional metrics.

In Proceedings of the 36th A nnual ACM Symposium on Theory of Computing,

pages 281 290, 2004.

[122] J. Tipping. Scheduling and routing grass mowers around Christchurch. In Pro¬

ceeding of the 37th Annual Conference of the Operational Research Society ofNew Zealand, 2002.

[123] G. T. Toussaint. The relative neighbourhood graph of a finite planar set. Pat¬

tern Recognition, 12:261--368, 1980.

Page 181: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

IÖS Bibliography

[124] P. M. Vaidya. Approximate minimum weight matching on points in k-

dimcnsional space. Algorithmica, 4:569-583, 1989.

[125] P. M. Vaidya. Geometry helps in matching. SIAM Journal on Computing,

18(6):1201-1225, 1989.

[126] K. R. Varadarajan. A devide-and-conqucr algorithm for min-cost perfect match¬

ing in the plane. In Proceedings of the 39th Annual Symposium on Foundations

of Computer Science, pages 320 331, 1998.

[127] K. R. Varadarajan and P. K. Agarwal. Approximation algorithms for bipartiteand non-bipartite matching in the plane. In Proceedings of the 10th Annual

ACM Symposium on Discrete Algorithms, pages 805 -814, 1999.

[128] L. Vogt, G. A. Poojari, and J. E. Beasley. A tabu search algorithm for the

single vehicle routing allocation problem. Journal of the Operational Research

Society, to appear.

[129] B. T. Yang, Y. F. Xu, and Z. Y. You. A chain decomposition algorithm for the

proof of a property on minimum weight triangulations. In Proceedings of the

5th International Symposium on Algorithms and Computation, pages 423-427,

1994.

Page 182: In Copyright - Non-Commercial Use Permitted Rights ......avec la complexité O(nlog" 1 pour ce problème. Deplus, cette thèse constitue unPTAS avec la complexité ö(nlog^,£' n),

Curriculum Vitae

Jan Remyborn on December 1, 1977 in Rosenheim, Germany

1988 - 1997 Gymnasium in Wasserburg a. Inn, Germany

Degree: Abitur

1997 - 1998 Civilian Service at BKH Gabersee, Germany

1998 - 2003 Studies of Computer Science at TU München, Germany

Degree: Diplom-Informatiker

2003 Ph.D. student at TU München, Germany

since Nov. 2003 Ph.D. student at ETH Zurich, Switzerland


Recommended