The Traveling Salesperson Problem (TSP) is commonly regarded as one of the most important problems in combinatorial optimization. In TSP, a salesperson wishes to find a tour that visits a set of clients the shortest way possible. It is very natural to consider metrical TSP, that is, to assume that the clients are located in a metrical space. While Christofides’ famous algorithm then attains an approximation factor of , the problem is APX-hard even under this assumption . This lower bound and the paramount importance of the problem has motivated the study of more specialized cases, in particular Euclidean TSP (ETSP), that is, metrical TSP where the metrical space is Euclidean. ETSP admits a Polynomial Time Approximation Scheme (PTAS), a -approximation polynomial time algorithm for any fixed , which we know from the celebrated results of Arora  and Mitchell . These results have subsequently been improved and generalized [4, 5, 27].
A very natural generalization of metrical TSP is motivated by clients that are not static (as in TSP) but willing to move in order to meet the salesperson. In the Traveling Salesperson Problem with Neighborhoods (TSPN), first studied by Arkin and Hassin in the Euclidean setting , we are given a set of reasonably represented (possibly disconnected) regions. The task is to compute a minimum-length tour that visits these regions, that is, the tour has to contain at least one point from every region. In contrast to regular TSP, the problem is already APX-hard in the Euclidean plane, even for neighborhoods of relatively low complexity [12, 17]. Whereas the problem did receive considerable attention and a common focus was identifying natural conditions on the input that admit a PTAS, the answers that were found are arguably not yet satisfactory. For instance, it is not known whether the special case of disjoint connected neighborhoods in the plane is APX-hard [24, 30]. On the other hand, there has been a line of work [7, 9, 10, 15, 24] that has led up to a PTAS for “fat” regions in the plane  and a restricted version of such regions (“weakly disjoint”) in general doubling metrics . Here, a region is called fat if the radii of the largest ball included in the region and the smallest ball containing the region are within a constant factor of each other.
In this paper, we focus on the fundamental case in which all regions are hyperplanes (in Euclidean space of fixed dimension ) and give a PTAS, improving upon a -approximation . Not only is the problem itself considered “particularly intriguing”  and has its complexity status been repeatedly posed as an open problem over the past 15 years [15, 16, 24, 30]. It also seems plausible that studying this problem, which is somewhat complementary to the much-better understood case of fat regions, will add techniques to the toolbox for TSPN that may lead towards understanding which cases are tractable in an approximation sense. Indeed, our techniques are novel and quite general: We define a certain type of polytopes of bounded complexity and, using a new sparsification technique, we show that one of them represents the optimal solution well enough. To compute a close approximation to that polytope, we boost the computational power of an LP by enumerating certain crucial properties of the polytope. It is thinkable that especially our sparsification technique has applications beyond TSPN, e.g., in data compression.
Further Related Work.
In contrast to regular TSP, TSPN is already APX-hard in the Euclidean plane . For some cases in the Euclidean plane, there is even no polynomial-time -approximation (unless P NP), for instance, the case where each region is an arbitrary set of (non-connected) points  (Group TSP). The problem remains APX-hard when there are exactly two points in each region  or the regions are line segments of similar lengths .
Positive results for TSPN in the Euclidean plane were obtained in the seminal paper of Arkin and Hassin , who gave -approximation algorithms for various cases of bounded neighborhoods, including translates of convex regions and parallel unit segments. The only known approximation algorithm for general bounded neighborhoods (polygons) in the plane is an -approximation . Partly in more general metrics, -approximation algorithms and approximation schemes were obtained for other special cases of bounded regions, which are disjoint, fat, or of comparable sizes [6, 7, 10, 15, 24, 25].
We review results for the case of unbounded neighborhoods, such as lines or planes. For lines in the plane, the problem can be solved exactly in time by a reduction to the watchman route problem  and using existing algorithms for the latter problem [8, 13, 20, 29]. A -approximation is possible in linear time . This result uses that the smallest rectangle enclosing the optimal tour is already a good approximation. By a straightforward reduction from ETSP in the plane, the problem becomes NP-hard if we consider lines in three dimensions. For the case of lines in three dimensions, only a recent -approximation algorithm by Dumitrescu and Tóth  is known. They tackle the problem by reducing it to a group Steiner tree instance on a geometric graph, to which a solution already gives a -approximation. Then they apply a known approximation algorithm for group Steiner tree. If neighborhoods are planes in 3D, or hyperplanes in higher constant dimensions, it is even open whether the problem is NP-hard. Only one known approximation result has been obtained so far: The linear-time algorithm of Dumitrescu and Tóth  finds, for any constant dimension and any constant , a -approximation of the optimal tour. Their algorithm generalizes the ideas used for the two-dimensional case . Via a low-dimensional LP, they find a -approximation of the smallest box enclosing the optimal tour. Then they output a Hamiltonian cycle on the vertices of the box as a solution. They observe that any tour visiting all the vertices of the box is a feasible solution and that the size of the box is similar to the length of the optimal tour. This allows them to relate the length of their solution to the length of the optimal tour. For the three-dimensional case and a sufficiently small , their algorithm gives a -approximation.
Observe that all of the above approximation results hold – with a loss of a factor of – also for the TSP path problem where the goal is to find a shortest path visiting all regions (without arbitrary start and end points). For the case of lines in the plane, there is a -approximation linear-time algorithm .
For improving the results on hyperplane neighborhoods, a repeatedly expressed belief is the following: If we identify the smallest convex region intersecting all hyperplanes, scale it up by a polynomial factor to a region , then contains the optimal tour. Interestingly, Dumitrescu and Tóth  refute this belief by giving an example where no -approximate tour exists within such a region , for a small enough constant . This result makes it unlikely that first narrowing down the search space to a bounded region (such as the box computed in the -approximation by Dumitrescu and Tóth ) and then applying local methods is a viable approach to obtaining a PTAS. Indeed, the technique that we present in this paper is much more global.
Our Contribution and Techniques.
The main result of this paper is a PTAS for TSP with hyperplane neighborhoods in fixed dimensions. This is a significant step towards settling the complexity status of the problem, which had been posed as an open problem several times over the past 15 years [15, 16, 24, 30].
For every fixed and , there is a -approximation algorithm for TSP with hyperplane neighborhoods in that runs in strongly polynomial time.
Our technique is based on the observation that the optimal tour can be viewed as the shortest tour visiting all the vertices of a certain polytope , the convex hull of . So, in order to approximate the optimal tour, one may also think about finding a convex polytope with a short and feasible tour on its vertices. In this light, the -approximation by Dumitrescu and Tóth , which, by using an LP, finds a cuboid with minimum perimeter intersecting all input hyperplanes, can be viewed as a very crude approximation of . Note that forcing the polytope to intersect all hyperplanes makes each tour on its vertices feasible.
The approach we take here can be viewed as an extension of this idea. Namely, we also use an LP (with many variables) to find bounded-complexity polytopes intersecting all input hyperplanes. However, the extension to a -approximation raises three main challenges:
In order to get a -approximation, the complexity of the polytope increases to an arbitrarily high level as . We need to come up with a suitable definition of complexity.
As the complexity of the polytope increases, we need to handle more and more complicated combinatorics, which makes writing an LP significantly more difficult. For instance, the expression of the objective for the LP becomes more challenging
More careful arguments are necessary when comparing the solution of the LP to the optimum solution.
In this paper, we overcome all three challenges by introducing several novel ideas, many of which can be of independent interest. First, we impose the bounded complexity of the considered polytopes by only allowing facets that are parallel to any one of hyperplanes. We define these hyperplanes as those going through the points of a grid of a certain granularity, which is connected to how we overcome the third challenge.
The idea of the LP that finds a polytope of bounded complexity in this sense is to keep a variable for each of the half-spaces corresponding to the
hyperplanes that shifts the half-space along its normal vector. The polytope is then the intersection of all shifted half-spaces. When the polytope is a cuboid, as is the case in, one has the advantage that, independently of the values of the shift variables, the combinatorics of the cuboid stays the same (as long as the cuboid has strictly positive volume). This makes it easy to write the vertex coordinates as LP variables and, for each input hyperplane, to select a separated pair of vertices that are on different sides of the hyperplane if and only if the cuboid intersects the hyperplane.
We note that these properties do not hold if we try to have a closer approximation of . Indeed, consider a regular pyramid (i.e., a pyramid where the base is a square) and imagine a parallel shift towards the outside of any lateral face of it. This will introduce an extra vertex to pyramid and turn it into a more general polytope. We note that, in general and in contrast to the cuboid case, the vertex-facet incidence graph changes depending on the values of the shift variable. This makes it impossible to write the vertex coordinates as variables of a single LP. Our idea is to guess which vertices are relevant and which facets they are incident to, that is, we enumerate all such configurations and write an LP with respective vertex variables for each such configuration. Now, since the facets are parallel to fixed hyperplanes, we can use the configuration to compute a separated pair of vertices and write as LP constraints that the polytope intersects all input hyperplanes. Strictly speaking, we also include configurations that do not correspond to convex polytopes, but they do no harm as they only widen our search space.
As the objective of the LP, ideally, we would use the length of the shortest tour on the vertices. Clearly, this objective is highly non-linear. To approximate this function, we make use of more guessing. First, we guess the order in which the vertices are visited, which makes it easy to write the length of the tour in -norm or -norm. Since we do not want to lose a factor of in comparison to the -norm, we additionally guess the rough direction the tour takes between consecutive vertices. This allows us to write the approximate -distance as a linear function.
The third challenge is overcome by turning , the convex hull of an optimum tour , into one of the polytopes in our search space without increasing the length of the shortest tour on the vertices by more than a factor. One way of getting a polytope in our search space “similar” to is the following: Take a hypercube that includes and subdivide it into a grid. Now, for each vertex , take all vertices of the grid cell containing , and take the convex hull of all these points to obtain , which is obtained in our search space by the way we choose the hyperplanes.
However, in order to satisfactorily bound the length of the shortest tour on the vertices of with respect to , we need to have only few vertices. For instance, if had vertices, we could choose the granularity of the grid to be small enough so that we could transform into a tour of the vertices of by making it longer by only the additive length of at each vertex. Since in general we cannot bound the number of vertices of , we first transform into an intermediate polytope that has vertices, and only then, do we apply the above construction to obtain . This is where the following structural result, which is likely to have more general applications, is used.
For a general polytope, we show how to select many of its vertices such that if we scale the convex hull of these selected vertices by a factor , with respect to some carefully chosen center, the scaled convex hull contains the original polytope. The proof utilizes properties of the maximum inscribed hyper-ellipsoid, due to John  (see also the refinement due to Ball  that we use in this paper). This result comes in handy, because we can scale in the same way to obtain a tour of the vertices of of length .
We note that our techniques easily extend to the path version of the problem in which the tour need not be closed.
Overview of this Paper.
In Section 2, we introduce some notation that we use throughout the paper and make some preliminary observations. In Section 3, we describe an algorithm that computes a -approximation of the shortest TSP tour that satisfies certain conditions. Then, in Section 4, we show that the shortest TSP tour that satisfies these conditions is again a -approximation of the overall shortest TSP tour. Finally, in Section 5, we discuss remaining open problems and the implication of our work for the TSPN path problem with hyperplanes.
We give a more detailed overview in the following:
Section 3 describes the polynomial-time algorithm for finding a -approximation among the set of solutions that are tours of vertices of polytopes that are constructed from some constant-size set of hyperplanes .
In the algorithm, we enumerate configurations , permutations , and directional vectors . Here, describes the structure of the polytope, describes the order in which the vertices of the polytope are visited, and is used to compute the length of the tour of the vertices of the polytope. We give a more detailed overview in Subsection 3.1.
For each combination of enumerated values, we construct an LP of which the solution is a feasible tour (if a solution exists). To this end, in Subsection 3.2, Lemma 6, 7, and 8 describe that each feasible LP solution is a feasible tour and each feasible tour corresponds to a feasible LP solution (for some LP).
In Subsection 3.3, we prove that the tour length can be described as a linear objective function that is a most a factor of away from the true tour length. Therefore, the solutions found from the LPs can be compared to find the shortest one.
In Section 4 we prove that the convex hull of the optimal tour can be approximated by a polytope that can be constructed from a constant-size (for constant and ) set of hyperplanes, , defined in Definition 10. That is, Lemma 11 says that the tour of this polytope is a -approximation of the optimal tour.
Theorem 12 shows that, for any given convex polytope , we can pick a center and constantly many vertices of , such that, if we expand these vertices from by a factor , the convex hull of the result contains . The proof for Theorem 12 uses geometric properties that hold for any convex polytope which we establish in Lemma 14 and Lemma 15.
Combining the results from Sections 3 and 4 shows that we can find a constant-size (for constant and ) set of hyperplanes such that the shortest tour that is a tour of the vertices of a polytope constructed from that set, is a -approximation of the optimal tour, and that we can approximate such a tour within a factor in polynomial time (for constant and ). This implies Theorem 1.
Throughout this paper, we fix a dimension and restrict ourselves to the Euclidean space . The input of TSPN for hyperplanes consists of a set of hyperplanes. Every hyperplane is given by integers , where not all scalars are , and an integer , and it contains all points that satisfy . A tour is a closed polyline and is called feasible or a feasible solution if it visits every hyperplane of , that is, if it contains a point in every hyperplane of . A tour is optimal or an optimal solution if it is a feasible tour of minimum length. The goal is to find an optimal tour. Given , we call any such optimal tour Opt or . The length of a tour , is given by .
Let be a set of hyperplanes. We denote by the set of hyperplanes that precisely contains, for each hyperplane in , the parallel hyperplane that goes through the origin. Further, is the set of half-spaces that precisely contains, for each hyperplane in , the two half-spaces and bordered by . Similarly, for any halfspace , we denote by the hyperplane bordering . Consider a set that precisely contains, for each half-space in , a half-space parallel to , that is, is a translate of . The intersection of all these half-spaces is a (possibly unbounded) polyhedron. In the set , we collect all bounded polyhedra (that is, polytopes) for some as above. For a polyhedron , denotes the set of its vertices. A tour of a point set is a closed polyline that contains every point of . Throughout this paper, let denote any shortest tour of , and denote the convex hull of . For a tour , denotes the convex hull of the tour. An expansion or scaling of a point set centered at a point with scaling factor is the set of points . A fully-dimensional polytope is a bounded and fully-dimensional polyhedron, i.e., a polyhedron that is bounded and contains a -dimensional ball of strictly positive radius. Similarly, a set of hyperplanes is non-trivial, if contains a fully-dimensional polytope. Unless otherwise specified, we use hyperplane, hypercube, etc. to refer to the corresponding objects in the -dimensional space.
Let be an optimal tour for and suppose that we know the polytope . By the following lemma it suffices to find an optimal tour for the vertices of .
Let be any convex polytope. Every tour of is a feasible solution to if and only if intersects every hyperplane of .
Let be a convex polytope that intersects every hyperplane of , and be any tour on the vertices of . Consider any hyperplane of . If it contains any vertex of , it is visited by . If it does not contain any vertex of , it must intersect the interior of and separate at least one pair of vertices of . Hence, any path connecting that pair must intersect , thus, the tour visits in this case as well.
For the only-if part, assume that there exists a hyperplane such that does not intersect . Since by convexity any tour on the vertices of is contained in , no tour can visit . ∎
Any optimal tour of is also an optimal tour of .
3 Our Algorithm
In this section, we show the following lemma.
Let . Given a non-trivial set of hyperplanes, there is an algorithm that computes in time strongly polynomial in the size of a feasible tour with length
for all feasible tours for which there exists with .
3.1 Overview of the algorithm
Consider now a non-trivial set of hyperplanes . In order to approximate the shortest feasible tour on the vertices of any from , we first enumerate a few objects that correspond to properties of and (see Lemma 2). The first of these objects is a configuration:
A configuration with base set is a set such that for all , , , and is a single point. Moreover, there is no pair with such that or .
Note that, since all the hyperplanes in pass through the origin, the point for each is actually the origin.
We enumerate the following objects:
A configuration with the base set .
A permutation of (or the corresponding set of vertices).
A sequence of unit vectors that express the rough direction of the edge connecting the corresponding vertices. The vectors are defined such that there are choices for each .
Since , there are only many combinations that need to be enumerated. Note that each vertex of is, by definition of , the intersection of at least hyperplanes parallel to those in . Hence, each vertex of corresponds to one subset such that and is a single point. Further, none of these sets is contained in another. Consequently, corresponds to at least one configuration that we enumerate. Further, there is some order of the elements in that corresponds to the order in which visits , and there is a vector such that, for all , is roughly the direction of the segment between the vertices that correspond to and , respectively. We also say respects under .
For each of the many enumerated combinations , we write an LP that has size polynomial in and many variables. Each convex polytope in that corresponds to the configuration and respects under , if such a polytope exists, corresponds to some solution to the LP. This is a feasible solution for the TSPN problem with input instance if and only if the convex polytope intersects all input hyperplanes in (see also Lemma 2). The objective value is up to times the length of the tour that visits in the order given by . We make sure that, even though the search space includes more solutions than those corresponding to the aforementioned convex polytopes, the tour found by any of the LPs is feasible (note that some LPs may not return any tour). That is, in order to find the desired optimal solution to the LP that corresponds to , we can simply take the shortest tour that was output over all of the many LPs as the optimal solution. Note that, since our objective function is only approximate, our solution may (strictly) not come from the LP that corresponds to .
Next, we describe the construction of the LPs in more detail. The LP maintains shift variables, each of which shifts a different half-space in along its respective normal vector. We also write the coordinates of the vertices that correspond to the different elements of as LP variables. We refer to these variables as vertex variables. Further, in a polytope solution, the vertices are exactly the vertices of the convex polytope that is the intersection of the half-spaces corresponding to the values of the shift variables in that solution.
The tour found by the LP is the one that visits the vertices in the order . By Lemma 2, this tour is feasible if the convex hull of the vertices intersects each input hyperplane. To ensure this, we use an idea similar to that of Dumitrescu and Tóth : For each input hyperplane, we select two vertices (the separated pair) and write a feasibility constraint requiring the two vertices to be on different sides of the hyperplane. This ensures that the convex hull of the vertices intersects each hyperplane and thus any tour that visits all its vertices is feasible (Lemma 2).
Note that, feasible non-polytope solutions also yield feasible tours. However, as we will see later, we can restrict further discussion to polytope solutions. Consider a polytope solution and denote by the convex polytope that is bounded by the accordingly shifted half-spaces in . If we choose the separated pair in an arbitrary way, may intersect all hyperplanes, but the LP solution that corresponds to may, other than required, still be infeasible. We fix this by choosing the separated pair more carefully. Let be the normal vector of some input hyperplane . Note that the vertices that minimize the dot product and maximize , respectively, are on different sides of if and only if intersects . This suffices as definition for a separated pair: Using that is fixed, we can show that, independent of the values of the shift variables, always correspond to the same elements of , and they can be computed efficiently.
Finally, we need to express the length of the tour that visits the vertices in the order as a linear objective function. This is straightforward to do in -norm, but using the -norm instead of -norm would result in losing a factor of . In the LP that corresponds to , however, we only have to consider convex polytopes that respect under . Therefore, we first add angle constraints that make sure that, for all , the direction between the vertices that correspond to and , respectively, is roughly . Now, knowing the rough direction the tour takes between consecutive vertices, we can write the approximate traveled distances as linear functions of the coordinates of the involved vertices.
We proceed with this section by first showing that every possible convex polytope that intersects all input hyperplanes is a feasible solution to at least one of the constructed LPs. Moreover, we prove that any feasible solution to any of the constructed LPs indeed corresponds to a feasible tour of the input hyperplanes. Then, we show that we can use a linear function to approximate the tour length of a solution to an LP within a factor of . Finally, we show how to use these results to prove Lemma 4.
3.2 LP Variables and Feasibility Constraints
Now, we describe the LP more formally. In this subsection, we introduce the variables of the LP and focus on feasibility constraints. This part solely depends on the enumerated configuration , the given hyperplanes , and the input hyperplanes . In Lemmata 7 and 8 we show that the emerging search space is not too small and not too large, respectively.
For each of the half-spaces , there is an unconstrained shift variable in the LP. Additionally, for each , there are unconstrained vertex variables, that correspond to the coordinates of .
These are the only variables of the linear program.
For , let denote the normal vector of (by convention, pointing from the bordering hyperplane into the half-space). The following type of constraint relates the two types of variables:
Note that here we use that the hyperplanes bordering each of the pass through the origin.
Now, we wish to compute for each input hyperplane a separated pair of vertices in order to write feasibility constraints. To do so, we define a directed graph in which each arc is equipped with a direction vector . We set to be , so the vertex set of can be thought of as the vertices that correspond to .
Consider any . We define the arcs whose tail is. Consider any . We first check if is one-dimensional, that is, a line. If it is not, we do not add the arcs . If it is, let be a direction vector of the line. We distinguish three cases. Note that is nonempty.
For all , , and there is a with . In this case, add the arc and set .
For all , , and there is a with . In this case, add the arc and set .
We either have for all , or there are such that and . In this case, do not add the arc (or skip the configuration altogether, because it is not relevant).
Now consider some hyperplane , and let be the normal vector of . At least for the “relevant” configurations , we would like to select those such that is maximized and is minimized, where and . We describe how to compute by a simplex-like method; the computation of is symmetric. Start with a token in an arbitrary vertex . Whenever the token is in a vertex such that there is an arc with , move the token along an arbitrary such arc. Whenever there is no such arc, output the current vertex. If the token ever visits a vertex twice, output an arbitrary vertex (or skip the configuration altogether, because it is irrelevant).
We prove that this procedure fulfills its purpose. Towards this, for a polytope , define to be the set that, for each vertex of , contains the set of half-spaces corresponding to facets incident to .
Consider some polytope such that holds. Then and .
Since there is a natural correspondence between the vertices in and those in , we refer to any vertex in and the corresponding one in by the same name. We first show that, for any , there is an arc from to in if and only if there is an edge between and in , and that arc is labeled with the direction vector from to in . To see this, first assume that there is an arc from to in . This means that the intersection of those facets incident to and in is one-dimensional, implying that the intersection of the hyperplanes bordering the half-spaces in is one-dimensional as well, in turn implying that there is an edge between and in . Similarly, if there is an edge between and in , is one-dimensional, so let be a direction vector of this line again. Thus, when constructing , we distinguish Cases a, b, and c to determine whether the arc exists in . First assume that, for all , . That would however imply that , a contradiction to being zero-dimensional. Now note that for all if points from towards the polytope, that is, ; similarly, for all if points from away from the polytope. So indeed either for all , or for all , and there is an arc from to in with the label as claimed.
Having established this close relationship between and , the claim essentially follows from the correctness of the simplex method (in the non-degenerate case): If the maximization (similarly for minimization) objective can be improved from a vertex to another point , it is a standard fact from convex geometry that there is another vertex adjacent to such that , or equivalently . Further, if and only if by the above correspondence. Hence we move the token to improve the objective if and only if it is possible. It is impossible to cycle, because naturally serves as (strict) potential; the procedure terminates, because there is only a finite number of vertices. ∎
Now, for all , let denote a fixed point on the hyperplane . We write LP constraints that force and to be on different sides of
We now show that these constraints fulfill their purpose and start with a lemma that, informally speaking, says that the constraints are not too restrictive.
Let with intersect each hyperplane in . By Lemma 6, the vertices and respectively maximize and minimize over all points .
Now let be some point in the intersection of and , i.e. , then we have
where the inequality comes from the fact that maximizes . Similarly,
where the inequality comes from the fact that minimizes . ∎
We next show that, informally, our constraints are not too general either. Each feasible solution of an LP will later be associated with a tour that visits all vertices for .
3.3 Objective Function
Now we show that, for any set of vertices that satisfy (1)–(3), we can approximate the length of a TSP tour of those vertices within a factor of . Since we can only write linear functions as objective functions of our LP, we make use of the enumeration of the order , in which the vertices are visited, and the approximate direction vectors . Recall that we will construct an LP for any such combination .
We make the enumeration of the direction vectors more precise. Given the order in which vertices are visited, we wish to approximate the distance between consecutive pairs of vertices with a linear expression. To do so, consider some vector whose length we would like to approximate. We find a vector of which the length can be approximated by a linear function and that has approximately the same direction as . First, we enumerate which of the coordinates of is largest in absolute value. We indicate this coordinate by . Now, for each other coordinate , we guess the ratio with by enumeration. Based on this guessed ratio, we then express the distance between the two consecutive vertices with a linear expression (denoted by the function in the following) that is at most a factor of away from the true distance (denoted by in the following). To guess the coordinate of the direction vector , we finally try both possible signs of as well. Denote this sign by , then the guessed coordinate of the direction vector is equal to .
For ratios between and , we enumerate in multiplicative steps of , starting at and ending at the first such that . For ratios in , we guess equal to . Note that there are many values in this enumeration. Now, we obtain that for one of the enumerated , we have that , if , or , if .
Let and . Furthermore, let be a vector with , and assume that for all we have
Then it holds that
Denote by the coordinates that are not the maximal coordinate (i.e. ) and for which . By denote the coordinates such that holds. The length of is at least
where the second to last inequality holds by the choice of . Moreover, the length of is at most
where the last inequality holds by the choice of . ∎
Now we are ready to complete the LP. Recall that, for each in the enumerated configuration , is the position of the vertex corresponding to . Furthermore, is the enumerated order of the vertices corresponding to the elements of . We would like to write the following objective function:
where and is a linear function with coefficients given by the enumerated direction vector.
For this to be a sufficient approximation of the actual length of the tour, however, needs to point in a certain direction. In particular, according to Lemma 9, it needs to fulfill (6) according to the enumeration. Towards this, for , let and denote the -th pair of normal vectors that correspond to the half-spaces that bound , i.e., the half-spaces corresponding to (6) and the guessed signs of the coordinates.
Note that the conditional definition of (6) can be conditioned on the guessed ratios as well.
The complete LP
For completeness, we include a concise formulation of the complete linear program.
3.4 Proof of Lemma 4
In this subsection, we put the proofs of the previous lemmata together to show Lemma 4.
Proof of Lemma 4..
The number of LPs, with size polynomial in the input , that we solve is equal to the total number of combinations of that we enumerate. Since we enumerate many and each LP has many variables, the running time of our algorithm is strongly polynomial  in the input . Let be such that it minimizes over all polytopes in , and let be such that . By Lemma 7 and by the enumeration of the configurations, is considered in at least one LP. By Lemma 8, the output of any of the LPs is a feasible tour, and by Corollary 3 this is also a tour of vertices of some polytope . Thus, for all outcomes of any of the LPs. By Lemma 9, the approximate objective function in any of the LPs is at most a factor of away from the true length of the shortest tour of the vertices, for some appropriately chosen . Now, if the algorithm finds an optimal tour , we know that and therefore .
By the choice of we obtain the desired result. ∎
4 Structural Results
Before describing the main result of this section, we need to introduce the concept of a base set of hyperplanes. The definition is constructive.
Definition 10 (Base set of hyperplanes).
We define a base set of hyperplanes , as follows: Take a unit hypercube. Overlay it with a -dimensional cartesian grid of granularity (i.e., the side-length of each grid-cell) , where . Now consider any -tuple of points in this grid. For any such tuple that uniquely defines a hyperplane , add to .
Note that . Thus, the number of possible -tuples over the grid points is also and therefore so is the size of the set . Also note that a hypercube with any side length could be used for defining the set (as long as it has the same orientation). In that case, we could just adapt the granularity of the grid so that we obtain the same number of cells.
The goal of this section is to show the following lemma.
For any input set of hyperplanes, , and fixed , there is a polytope such that the tour with is feasible and
In other words, Lemma 11 shows that in order to obtain a -approximate solution it suffices to find the polytope of optimal tour length, among the polytopes in . Together with Lemma 4, this immediately implies Theorem 1.