A PolynomialTime Approximation Scheme for

Weighted TSP

z x y

David Karger Philip Klein Michelangelo Grigni

Brown U Emory U Princeton U

Andrzej Woloszyn

Emory U

O

Abstract in n time where is any constant Then

Arora and so on after Mitchell showed that a

Given a planar graph on n no des with costs weights

PTAS also exists for Euclidean TSP ie the subcase

on its edges dene the distance b etween no des i and

in which the p oints lie in and distance is measured

j as the length of the shortest path b etween i and j

using the Euclidean metric This PTAS also achieves

Consider this as an instance of metric TSP For any

O

an approximation ratio in n time More

our algorithm nds a salesman tour of total cost

2

O

recently Arora improved the running time of his

at most times optimal in time n

O

algorithm to O n log n using randomization

We also present a quasip olynomial time algorithm

The PTASs for Euclidean TSP and planargraph

for the Steiner version of this problem

TSP though discovered within a year of each other are

quite dierent Interestingly enough Grigni et al had

Intro duction

conjectured the existence of a PTAS for Euclidean TSP

The TSP has b een a testb ed for virtually every algorith

and suggested one line of attack to design a PTAS for

mic idea in the past few decades Most interesting

the case of a shortestpath metric of a weighted planar

subcases of the problem are NPhard so attention has

graph We note later in the pap er that Euclidean TSP

turned to other notions of a go o d solution An early

can b e viewed as a Steiner subcase of weighted planar

by Christodes achieves an ap

graph TSP

proximation ratio on every instance of metric TSP

2

O

In this pap er we present an n time PTAS

namely one in which the interno de distances form a

scheme for weightedplanargraph TSP Our approxima

metric This algorithm has not b een improved up on

tion scheme starts by extracting a spanner of the input

and a general approximation scheme is unlikely since

graph the spanner preserves distances b etween vertices

metric TSP is MAXSNPhard Nevertheless there

but has a lower sum of edgecosts Then like some pre

has b een recent progress for certain sp ecial classes of

vious results ab out approximation schemes on planar

metrics

unweighted graphs our approximation scheme

Grigni Koutsoupias and Papadimitriou showed

employs a technique for obtaining a hierarchical decom

that if the metric is the shortestpath metric of an

position of the input graph By hierarchical we mean

unweighted planar graph that is all edge costs are

that the decomp osition is done in steps A step parti

one then a polynomial time approximation scheme or

tions every current comp onent into two or more pieces

PTAS exists It achieves an approximation ratio

each of which contains at most a constant fraction of

the vertices of its parent Hence the decomp osition

aroracsprincetonedu Supp orted by NSF CAREER

has O log n levels where n is the numb er of vertices

Award Alfred Sloan Fellowship and Packard Fellowship

The useful asp ect of our decomp osition is that we show

y

Emory Dept of Math Computer Sci Atlanta GA

the existence of a approximate salesman tour

Email micmathcsemoryedu

z

that crosses the b oundary of each region in the decom

MIT Lab oratory for Computer Science Cambridge MA

p osition O log n times This is reminiscent of the

Supp orted by NSF contract CCR and an Alfred

P Sloane Foundation Fellowship

approximation scheme for the unweighted case In

Email kargerlcsmitedu

particular we ensure that after contracting the edges

URL httptheorylcsmite du karg er

that lie on the b oundaries of the regions we obtain a

x

kleincsbrownedu Supp orted by NSF grant CCR

graph where each region is b ounded by O log n ver

and a planar embedded graph G with edgecosts vertex tices can b e used to nd the

weights and faceweights nds a Jordan curve C such optimal tour in this contracted graph We show how to

that lift this tour to a tour in the uncontracted graph without

increasing the cost by much

balance condition the interior and exterior of C have

In Section we also present a quasip olynomial

weight at most of the total weight

time algorithm for the Steiner version of this problem

faceedge condition C uses at most k face edges that is when we want a nearoptimal tour on some given

subset S of the vertices

ordinaryedge condition C uses ordinary edges of total

cost O k times the total cost of al l the ordinary

Denitions and pro cedures

edges

Spanner Our approach requires that the sum

Remark The separating also has the property

of the edgecosts of the graph b e within a constant

that the ordinary edges comprise at most two paths but

factor of the cost of the minimum tour We use the

the algorithm does not use this property

following spanner result due to Althofer Das Dobkin

Joseph and Soares to obtain such a lowcost subgraph

Given a planar emb edded graph G and a separator

of the input graph that also approximately preserves

C satisfying the conditions of Theorem we split

distances

the graph into two or more derived subgraphs called

Theorem For every planar graph G with edge

children as follows

0

costs and every there is a subgraph G with the

First in G we contract the ordinary edges that are

same vertex set such that for every pair of vertices i and

in C giving us a contracted planar emb edded graph

0

0

j in V their distance in G is at most times their

G the ordinaryedge condition ensures that we do not

distance in G Furthermore the sum of costs of edges

contract much cost so we do not dramatically p erturb

0

0

appearing in G is O times the cost of a minimum

the solution Let C b e the contracted version of the

0

spanning tree in G The subgraph G can be found in

separating cycle it has no ordinary edges so the vertices

polynomial time

it contains if removed separate the graph the numb er

of vertices is equal to the numb er of face edges in the

Separating the graph Now we give our separa

separator so the faceedge condition ensures that there

tor theorem which can b e viewed as a generalization of

are not to o many We call these vertices the boundary

Millers simplecycleseparator theorem The pro of of

vertices

the theorem app ears in Section

We dene the interior piece to b e the interior of

0

It is useful to ensure that our separator while not

C together with the b oundary vertices The exterior

a cycle in the original graph do es trace out a Jordan

piece is similarly dened it to o contains the b oundary

curve To capture the resemblance to a cycle we

vertices The interior piece and exterior piece each

use the notion of face edges Face edges are articial

satisfy the following prop erty

edges added to the graph while preserving planarity in

other words the cycle may cross through the interior of

Boundaryvertices prop erty The b ound

some faces Our separator will b e a cycle in the graph

ary vertices lie on the b oundary of a single face

obtained by adding some of these articial edges We

We call the single face a hole b ecause it results from

call it a cycle separator Such a cycle traverses certain

the removal of some of the graph

vertices edges and faces of the graph the rest of the

The connected comp onents of the interior piece and

graph divides into an interior and an exterior

the exterior piece are the children of G Because of the

The separator is supp osed to achieve some sort of

0

balance condition on the separator the interior of C has

balance We sp ecify what is to b e balanced by assigning

vertex weight at most twothirds of the vertex weight of

weights to vertices and faces the separator then has the

G We obtain the following prop erty

prop erty that the sum of weights of vertices and faces

in the interior is only a constant fraction of the sum of

Childweight prop erty Each child has ver

all the weights and similarly for the exterior

tex weight at most a constant fraction of that

We measure the quality of the separator in two

of the parent graph

ways the numb er of face edges it uses and the sum

of costs of the ordinary edges it uses

Because all ordinary edges on the b oundary b etween

Theorem Separator Theorem There the interior and exterior were contracted we obtain the

is an p oly ntime algorithm that given a parameter k following prop erty

edgedisjointness prop erty No edge of G obtain the following lemma

app ears in more than one child

0

Lemma The edges of G that do not appear in G

have total cost at most O P T

Moreover the b oundaryvertices prop erty still

0

Clearly the optimal tour in G has length at most

holds for each child the b oundary vertices that sep

OPT Below we show how to use dynamic programming

arate the child from its siblings all lie on the b oundary

0

to compute the optimal tour for G We then extend

of a single face a hole

this tour back to the original graph as follows We

uncontract the contracted paths and use the classical

A simpler algorithm

doubleMST heuristic on each path to get a tour for

To intro duce our techniques we b egin with a simpler

those vertices of cost at most path length We then

algorithm that runs in quasip olynomial time In the

splice the path tour into the global tour Doing this

following section we will show how to mo dify it to

for all contracted paths raises the tour cost by at most

achieve a p olynomial running time

OPT so the the cost of the nal tour is at most

Our goal is to nd a tour in the input graph that has

OPT the other is taken by the spanner

cost at most times that of the optimal tour Let

subgraph approximation

OPT denote the cost of the optimal tour in the input

graph The rst step of our algorithm is to let G b e a

0

Finding the optimal tour in G in quasip oly

spanner of the input graph that preserves distances up

nomial time Now we describ e how to compute the

to a factor of using Theorem The sum of

optimum salesman tour on the contracted graph We

2 edgecosts of G is O times the cost of a minimum

O log n log log n

show that the running time is n In

spanning tree in the input graph which is in turn at

the next section we use a more careful analysis to show

most OPT The cost of an optimal tour in G is at most

that p olynomial running time can b e achieved

times OPT Our goal is now to nd a tour in G

The recursive decomp osition of G using the cy

whose cost is at most O P T more than the optimal

0

cle separators induces a recursive decomp osition of G

tour

namely the decomp osition obtained by using the con

Next we x the parameter k c log n where

0

tracted versions C of the separators After the con

n is the numb er of vertices in the given graph and c is

tractions the numb er of vertices in a separator is equal

a constant to b e determined We assign weight one to

to the numb er of face edges in the separator So by

every vertex in G

the faceedge condition each separator consists of at

Next we nd a recursive decomp osition of G using

0

most k vertices Consider a subgraph H of G that

the separator algorithm of Theorem we nd a

app ears at level d of the recursive decomp osition It

separator in G determine the children of G nd a

contains at most dk b oundary vertices and they col

separator in each child and determine its children and

0

lectively separate H from the rest of G Note that

so on until each remaining graph has a small numb er

dk O log n b ecause the depth of the decomp osi

of vertices By the childweight prop erty the depth of

0

tion is O log n The optimal tour in G winds in and

the recursion is O log n

out of H via the b oundary vertices The next lemma

Consider the graphs o ccuring at a particular level

guarantees that there is an optimal tour that passes

of the recursive decomp osition By the edgedisjointness

through each b oundary vertex at most most twice

prop erty these graphs are edgedisjoint Hence the sum

of edgecosts over all these graphs is at most the sum

Lemma Patching Lemma Let J be a Jordan

of edgecosts in G For each graph the contracted

curve in the plane Let be a closed curve in the plane

0

edges of the separating cycle used to divide the graph

Then we can modify into another closed curve that

have total cost O k times the sum of edgecosts in

traverses the same points as but such that at every

0 0

that graph Summing over all these graphs the costs

point p where intersects J crosses J at most twice

of edges app earing in all these separators is O k

Pro of First by eliminating crossings we may assume

times the total cost in G ie O O P T k Summing

that do es not selfintersect Then at a p oint of

over all levels of the decomp osition we obtain a b ound

intersection with J the curve alternates going in and

of O OPT log nk on the sum of costs of all edges

out of J We may then reconnect the segments of the

contracted By appropriate choice of the constant c in

curve so that at most two crossings are necessary See

the denition of k we ensure that this b ound is at most

Figure 2

O P T

0 0

Thus the contracted graph G has a simple struc Let G b e the graph obtained from G by contracting

ture it p ossesses a hierarchical decomp osition such that all the primal separator edges in all the separators We

Jordan Curve

and that these b oundary vertices lie on the b oundaries

of only a constant numb er of holes This last fact

Salesman Tour

together with the planarity of an optimal tour allows

O k

us to prove a Catalanlike upp er b ound on the

numb er of subproblems that we must actually consider

at H Putting this together we will have running time

2

O O k O

n n as claimed

The new assignment of weights is actually done dy

namically as we construct the recursive decomp osition

Figure If a planar salesman tour crosses a Jordan

Supp ose we are separating a graph H with total weight

curve more than two times at a b oundary vertex then

w When we nd a separator in H contract its edges

we can clearly reconnect the edges incident to the

and construct its children we create some new b ound

b oundary vertex so that the tour crosses at most twice

ary vertices for the children We assign weight w k to

each new b oundary vertex in a child Since each child

has only k b oundary vertices this adds no more than

each subgraph H arising in the decomp osition is delim

w to a childs total weight We also assign weight

ited by p O log n b oundary vertices and the op

w to the hole in each child on which the b oundary

timum salesman tour enters or leaves H at most twice

vertices lie

via each b oundary vertex

Before additional weight was assigned to b oundary

We use a simple dynamic program to nd the

w The vertices each childs total weight was at most

optimum tour as follows We build a lo okup table for

additional weight increases the childs weight by at most

each subgraph arising in the decomp osition starting

w so the childs weight is now at most w Thus the

from the leaf subgraphs of the decomp osition and

childweight prop erty still holds each childs weight is

working up to larger subgraphs For a subgraph H the

still a constant fraction of its parents

corresp onding table contains an entry for every p ossible

Now consider the hierarchical decomp osition of the

way the tour can pass through H which can b e sp ecied

0

graph G obtained by the contractions Let H b e a

by an ordered list of b oundary vertices through which

subgraph arising in the decomp osition First we b ound

the tour enters and exits H Each b oundary vertex

the numb er of b oundary vertices in H The weight of

can app ear at most twice so the numb er of entries is

every b oundary vertex in H is at least k times the

b ounded by the numb er of ways of ordering at most p

O p

weight of H s parent Since H has weight at most ve

items which is p

sixths that of its parent it must contain at most k

The value of an entry is the minimum cost of

b oundary vertices

a set of paths that realize the corresp onding pairing

Next we show that the b oundary vertices lie on a

while visiting all vertices inside H This value can

constant numb er of holes As the recursive decomp osi

b e calculated from similar tables for the children of

0

tion takes place a cycle separator is found for a sub

H Given the contracted cycle separator C used to

graph and its children are constructed each existing

separate H we enumerate the ways the set of paths

0

hole is either preserved if the cycle separator do es not

could cross C For each we lo ok up the minimumcost

pass through the face or destroyed if the cycle passes

realization within each child and then add these costs

through the face In the former case the hole retains

The minimum over all the ways the paths could cross

0

the weight originally assigned to it when it was formed

C is the desired value

and it app ears in one of the children of the subgraph In

To calculate each entry in H s table thus requires

O p O p

the latter case the b oundary of the hole is broken into

p time and there are p entries to ll for a

O p

two pieces and each piece makes up part of the b ound

total of p time We have to build a table for each

ary of the new hole b eing formed in the children Thus

subgraph in the decomp osition The total time and

2

O O p O log n log log n

in this case the old b oundary vertices which lined the

space required is n p n

b oundary of the old hole now lie on the b oundaries of

the new holes app earing in the children one new hole

A p olynomial algorithm

p er child We preserve the prop erty that all b oundary

We now improve the preceding algorithm to achieve a

vertices lie on the b oundaries of holes

p olynomial running time We mo dify the assignment of

We can now use an argument like that used ab ove

weights used in nding the cycle separators in order

in b ounding the numb er of b oundary vertices Let H

to ensure that for every subgraph H arising in the

b e a subgraph arising in the hierarchical decomp osition

decomp osition the numb er of b oundary vertices in

of the contracted graph Each hole has weight at least

H separating it from the rest of the graph is small

vertices and our earlier analysis b ounds the numb er of

O hk

noncrossing matchings among them by In other

words the numb er of choices for the matching M on

the original set of b oundary vertices is at most

O hk

numb er of nonselfcrossing trees on h p oints

(A) (B)

O h O hk

which is at most h

Figure The order in which a planar tour traverses m

The separator theorem

vertices on the b oundary of a Jordan curve corresp onds

Now we prove Theorem Our pro of uses ideas from

to to balanced arrangements of m pairs of parenthesis

Grigni Koutsoupias and Papadimitriou as well

Each b oundary vertex can contribute two parentheses

as Lipton and Tarjans planar separator theorem

A shows an invalid pairing and B shows a valid

and Millers simple cycle separator theorem The

pairing

p erformance criteria in our case are dierent from those

of Lipton and Tarjan and those of Miller so we must

use these techniques dierently

times the weight of H s parent and H s weight is

By rescaling we can assume without loss of gener

at most vesixths that of its parent so H contains at

ality that all vertex and face weights sum to

most holes

The next lemma is b orrowed with slight mo dica

Better constants can b e obtained by slightly more

tion from Lipton and Tarjan

complicated ways of breaking up the graph and assign

Lemma Lipton and Tarjan Let T be a spanning

ing weights

tree of a planar triangulated graph G with weights on

Enumerating the pairings To nish the descrip

vertices and faces totaling at most Then there is

tion of the algorithm we need to b ound the numb er

an edge not belonging to T such that the interior and

of ways in which an optimum salesman tour could link

exterior of the simple cycle in T e each contain weight

up the at most k b oundary vertices in a subgraph

no more than

Note that we can assume that the optimal tour do es

Furthermore the same result holds even if not every

not cross itself though it can overlap itself and passes

face is triangular as long as each nontriangular face F

through each b oundary vertex at most twice

satises the fol lowing two properties

If in fact all the b oundary vertices were on a single

face then we could nish with a Catalan b ound That

F has weight less than

is supp ose we have a subgraph with a unique hole with

The boundary of F is the unique simple cycle in

m b oundary vertices The p ortion of the tour on the

T e for some edge e

subgraph that is the exterior of the hole consists

of a noncrossing set of paths which matches pairs of

The rst step of the separator algorithm is to

b oundary vertices some more than once but none more

nd the shortestpath tree ro oted at some vertex r

O m

than twice The numb er of such matchings is

In the second step describ ed b elow we extract a

as may b e proven by relating this quantity to Catalan

subgraph of the graph and a corresp onding subgraph

numb ers Figure

of the shortestpath tree we also add some face edges

However instead of a disk we have the subgraph

Finally we apply the lemma of Lipton and Tarjan to

emb edded on a with h O holes in it The

obtain a simple cycle separator

numb er of b oundary vertices on the b oundary of each

hole is O k Again we want an upp er b ound on the

Extracting a subgraph Note that any p ositive

numb er of top ologically distinct ways to emb ed a non

value x determines a partition of the vertices those

crossing matching on this surface

whose distance from r is less than x and those whose

O h O hk

We claim an upp er b ound of h which

distance is at least x For any subset S of the edges of

O k

is in our case since h is constant This is

the graph let f x denote the numb er of edges in S

S

seen as follows Any emb edded matching M is a

that cross this partition

noncrossing multigraph with the holes as its vertices

The multigraph is connected b ecause it represents a Lemma For any subset S of edges and any distances

salesman tour If we the surface along any spanning d d if f x k for every d x d then

S

subtree of this multigraph then the h holes merge into d d Lk where L is the total cost of the edges

a single hole This single hole has O hk b oundary in S

B

Pro of An edge of length can only contribute to f x

S

an of length The lemma follows by simple

for C

averaging 2 C4

C1 C 3

Let S S denote the partition induced by cutting

d d

the shortestpath tree at distance d The separator

algorithm will use the top ology of these partitions Note

there are at most n such partitions as we can

that C2

always take d to b e the distance of some vertex from

the ro ot

S is a The set of edges crossing the partition S

d d

cocycle which means that in the planar the

duals of these edges form a collection of edgedisjoint

simple cycles Moreover we can view the emb edding of

Figure C is the deep est dual cycle containing weight

the planar graph in such a way that the interiors of these

more than Note that C may have high edge

dual cycles contain the no des at distance d or greater

cardinality B is C s deep est ancestor having edge

Let C denote this set of dual cycles Essentially we

d

cardinality less than k It contains weight more than

cho ose as our innite region some face whose b oundary

The dual cycles C C are at the rst level

r

contains the ro ot r

deep er than B such that they have edgecardinality less

As shown in Figure the dual cycles are nested

than k

lies in some cycle of C for d d each cycle of C

d d

1 2

The minimal nontrivial dual cycles each enclose a single

vertex of the primal graph

B the deep est ancestor of C having such a small edge

Dene the depth of a dual cycle in C to b e the

d d

cardinality This contradicts the fact that C s depth

i

maximum d for which the cycle b elongs to C Dene

d

exceeds that of B 2

its edgecardinality to b e the numb er of dual edges

Obtain a graph G from G as follows For each i

comprising it For a collection of such cycles the total

consider the dual cycle C Corresp onding to this dual

edgecardinality is the sum of the edgecardinalities of

i

cycle place a circuit of face edges in G just inside the

the individual cycles ie the total numb er of dual edges

dual cycle where each face edge connects the endp oints

app earing in all of them Dene the weight contained

of a primal edge Then delete all other vertices enclosed

by a dual cycle to b e the sum of weights of vertices and

by this new circuit thus turning the circuit into a face

faces emb edded in the interior of the cycle

Assign the weight of the deleted no des to this face We

Let C denote a deep est dual cycle containing weight

call the new face a leaf face This pro cess is depicted

more than Let B the the deep est ancestor of C

in Figure

whose edgecardinality is less than k See Figure

Note that the circuits are vertexdisjoint b ecause

Let d b e the depth of B Note that B contains weight

B

each one connects vertices within a dierent dual cycle

more than Dene d as

C and the interiors of the C s are disjoint Moreover

i i

by Lemma each leaf face has weight at most

d min fd d C has total edgecardinality k g

B d

The dual cycle B is treated similarly add a circuit

of face edges just outside this dual cycle connecting

and let C C b e the cycles in C that are in the

r

d

together those endp oints of the primal edges lying

interior of B

outside the dual cycle Then delete the other vertices in

The next lemma is a consequence of Lemma

the exterior of the dual cycle These deletions cause the

circuit to b e the b oundary of the innite region which

Lemma d d Lk where L is the total cost of

B

we call the root face The weight assigned to the ro ot

edges in the graph 2

face is the total weight of the exterior vertices deleted

Note that since B contained more than weight the

Lemma For each i C contains weight at most

i

weight of the ro ot face is at most

Pro of Supp ose some dual cycle C contained more

i

than half the weight It would then contain in particular Extracting the spanning tree for the sub

the dual cycle C since more than half of the weight is graph Starting with the shortestpath tree T we ob

contained in C Thus C is an ancestor of C Since C tain a spanning tree T for the subgraph G we have ex

i i

has edgecardinality less than k C is an ancestor of tracted For each vertex that lies inside B and outside i

Cycles at depth d Cycles at depth d' > d nest

inside the cycles at depth d.

Figure This gure shows how cycles nest as distance increases

6

A leaf dual cycle We then delete the other The primal edges crossing We create a circuit of artificial edges vertices inside, and assign the dual cycle, and the primal by tracing along the dual edges. their weight to the new face.

subgraph inside it.

Figure The construction applied to each dual cycle C to obtain a leaf face

i

every C the vertexs parent edge in T is dened to b e no edge connects two vertices from dierent leaf faces

i

the vertexs parent edge in T For each but one of the Thus the cycle separator consists of two paths

vertices in the circuit outside B we take its parent edge of original edges joined by at most k face edges

to b e the face edge connecting it to the next vertex in fewer than k from a leaf face fewer than k from

counterclo ckwise order The one exception is to b e the the ro ot face and p ossibly the nontree edge e By

ro ot of T Lemma each of the paths of original edges has length

We similarly treat the dual cycles C For each we at most Lk Thus the separator has all the promised

i

determine the interior vertex closest to the ro ot and we prop erties

assign that vertexs parent edge to b e its parent edge

in T For each of the other interior vertices we take The Steiner version of planar TSP

its parent edge to b e the face edge connecting it to the

An obvious next problem to study is a Steinertyp e

next vertex in clo ckwise order

weightedplanargraph TSP problem given a weighted

planar graph and a set of terminals which is a subset

Applying Lipton and Tarjans lemma We

of the set of vertices nd a minimumcost circuit that

have obtained a subgraph G and a spanning tree T

visits all the terminals This problem is an obvious

We add more face edges to G to triangulate every face

generalization of the planargraph TSP and it also

except the ro ot and leaf faces just created and we apply

generalizes the Euclidean TSP To see the latter note



Lemma to obtain a cycle separator in T e where e

that given n p oints in on which we desire a salesman



n

is a nontree edge

tour we can draw all line segments b etween them

We claim that the cycle separator uses face edges

and add a new no de at each intersection This gives a

from at most one leaf face To see this note that the face

weighted planar graph on O n vertices the costs on



edges from each leaf face form a terminal path in T no

the edges are the Euclidean lengths in which it suces

real edge has such an edge as an ancestor Furthermore

to nd a minimumcost circuit for the original set of n

since the leaf faces corresp ond to edgedisjoint cocycles

vertices

Most of our techniques generalize to the Steiner the total cost of the edges in P v v is at most

i j

typ e problem except for the spanner result Theo k times the cost of al l edges in OPT

H

rem Thus the existence of a PTAS would follow

Each part of C v v has at most of the

i j

if the following conjecture is true

vertices of H

Conjecture There exists a function f such that

Now we describ e the approximation scheme Let k

given a weighted planar graph G and a subset

b e c log n where c is a constant to b e determined

0

S of vertices there exists an edge G

and n is the numb er of vertices in the input graph

which approximates al l internode distances in S

The approximation scheme makes use of a recursive

0

and furthermore G has total edge weight at most f

algorithm that takes three inputs a subgraph H of

times the minimum Steiner tree weight for S

the input graph G and an ordered set S of edges and

vertices that connect H to the remainder of G The

Even in the absence of a spanner result we can

output is an approximately mincost way of routing the

give a quasip olynomialtime approximation scheme for

tour within H in such a way that it enters and leaves H

the Steiner variant by combining the techniques of this

via the elements of S in the sp ecied order

pap er with that of Aroras original PTAS for Euclidean

The algorithm rst applies the separator algorithm

TSP In each step the algorithm tries a small

to H which yields O n separators sp ecied by a way

p oly n size family of separators one of which is

vertex partition C v v and a set P v v of edges

i j i j

guaranteed to work The approximation scheme runs

p olylog n

forming two paths

in n time

For each

The approximation scheme uses a separator algo

such way partition A I nter ior E xter ior B the al

rithm that identies not one but many separators one

gorithm rst contracts the edges in the corresp onding

of them must b e go o d in a sense to b e describ ed First

0

two paths obtaining two vertices x and y Let H b e

we describ e the algorithm for nding the set of separa

the contracted graph Next the algorithm enumerates

tors for a subgraph H of the input graph

0

orderings S of k subsets of edges within H together

The separator algorithm rst nds a shortestpath

with the vertices x and y For each blo ck of the way

tree of H ro oted at an arbitrary vertex For each vertex

partition the algorithm makes a recursive call to nd a

v in H let dv denote the distance of v from the ro ot

0

subtour within the corresp onding subgraph of H that

Let v v v b e the vertices of H in increasing order

n

0

is consistent with the orderings S and S The subtours

of distance from the ro ot For each pair of vertices

0

of H are combined and then lifted to get a subtour of

v v i j dene H v v to b e the graph obtained

i j i j

H using the same patching scheme as was sketched in

by coalescing v v to a single vertex and deleting

i

the b eginning of Section

v v The coalescing can b e done via edges of the

j n

The b est subtour of H obtained in this way is

shortestpath tree so planarity is preserved

returned Lemma guarantees that one of the choices

Apply Lemma to this graph with articial edges

0

of way partition and choices of S will lead to a go o d

added temp orarily to triangulate every face The result

subtour b eing returned

is a cycle separator consisting of two paths in the

The error analysis again comes down to b ounding

shortestpath tree and a p ossibly articial nontree

the total cost of all edges contracted in the recursive

edge Let P v v b e the set of edges in these paths

i j

calls contributing to the b est tour found The choice of

Let C v v denote the vertexpartition fv v g

i j i

k including the constant c ensures that the total error

Interior Exterior fv v g where Interior and

j n

is at most OPT where OPT is the cost of the optimal

Exterior denote the set of vertices of H v v in the

i j

tour

interior and exterior of the cycle separator Note we

The depth of our recursion is again O log n and

have O n such partitions

O k

we consider n subproblems for every problem so the

The following lemma can b e proved using Lemma

2

O k log n O log n

total running time is n or n Note

that dynamic programming wont help us much with

Lemma Let OPT be the set of those edges of the

H

this algorithm since the size of S may reach O k log n

optimal tour that lie in H and let k There exists

p erhaps a weighting scheme would help again here

a pair v v of vertices such that

i j

the number of edges in OPT having precisely one

H

Op en problems

endpoint in fv v g is at most k

i

We susp ect that there is a p olynomialtime algorithm

the number of edges in OPT having precisely one for the Steiner version of the planar TSP

H

endpoint in fv v g is at most k Another op en problem is to nd a nearly linear time

j n

approximation scheme for the planargraph TSP The

charging argument in strongly uses the geometry

of the plane and do es not seem to apply to the graph

metric case

References

I Althofer G Das D Dobkin D Joseph L Soares

On sparse spanners of weighted graphs Disc Compu

tational Comp Geo 9

S Arora Polynomialtime approximation schemes for

Euclidean TSP and other geometric problems Pro

ceedings of th IEEE Symposium on Foundations of

Computer Science pp

S Arora Nearly linear time approximation schemes

for Euclidean TSP and other geometric problems Pro

ceedings of th IEEE Symposium on Foundations of

Computer Science pp

B Baker Approximation algorithms for NPcomplete

problems on planar graphs JACM 41

Preliminary version in IEEE FOCS

N Christodes Worstcase analysis of a new heuristic

for the traveling salesman problem In JF Traub

editor Symposium on new directions and recent results

in algorithms and complexity page Academic

Press NY

M Grigni E Koutsoupias and C H Papadimitriou

An approximation scheme for planar graph TSP In

Proc IEEE Symposium on Foundations of Computer

Science pp

E L Lawler J K Lenstra A H G Rinno oy Kan

D B Shmoys The traveling salesman problem John

Wiley

R Lipton and R Tarjan A separator theorem for

planar graphs SIAM J Appl Math 36

R Lipton and R Tarjan Applications of a planar

separator theorem SIAM J Comp 9

G Miller Finding small simple cycle separators for

connected planar graphs JCSS 32

J Mitchell Guillotine sub divisions approximate p olyg

onal sub divisions Part I I A simple PTAS for geomet

ric k MST TSP and related problems Preliminary

manuscript April To appear in SIAM J Com

puting

C Papadimitriou and M Yannakakis Optimization

approximation and complexity classes J of Computer

and System Sciences 43 pp

C Papadimitriou and M Yannakakis The traveling

salesman problem with distances one and two Math

ematics of Operations Research 18 pp