Abstract 1 Introduction 2 Doubling dimension among convex fat disjoint obstacles 3 Realizing metric spaces with convex disjoint obstacles 4 Realizing metrics with fat obstacles 5 Algorithms and lower bounds for tsp with obstacles 6 Conclusion References

Realizing Metric Spaces with Convex Obstacles

Sándor Kisfaludi-Bak ORCID Aalto University, Finland Leonidas Theocharous ORCID University of Ottawa, Canada
Abstract

The presence of obstacles has a significant impact on distance computation, motion-planning, and visibility. These problems have been studied extensively in the planar setting, while our understanding of these problems in 3- and higher-dimensional spaces is still rudimentary. In this paper, we study the impact of different types of obstacles on the induced geodesic metric in 3-dimensional Euclidean space. We say that a finite metric space (X,distX) is approximately realizable by a collection 𝒯 of obstacles in 3 if for any ε>0 it can be embedded into (3T𝒯T,dist𝒯) with worst-case multiplicative distortion 1+ε, where dist𝒯 denotes the geodesic distance in the free space induced by 𝒯. We focus on three key geometric properties of obstacles –convexity, disjointness, and fatness– and examine how dropping each one of them affects the existence of such embeddings.

Our main result concerns dropping the fatness property: we demonstrate that any finite metric space is realizable with 1+ε worst-case multiplicative distortion using a collection of convex and pairwise disjoint obstacles in 3, even if the obstacles are congruent and equilateral triangles. Based on the same construction, we can also show that if we require fatness but drop any of the other two properties instead, then we can still approximately realize any finite metric space.

Our results have important implications on the approximability of tsp with obstacles, a natural variant of tsp introduced recently by Alkema et al. (ESA 2022). Specifically, we use the recent results of Banerjee et al. on tsp in doubling spaces (FOCS 2024) and of Chew et al. on distances among obstacles (Inf. Process. Lett. 2002) to show that tsp with obstacles admits a PTAS if the obstacles are convex, fat, and pairwise disjoint. If any of these three properties is dropped, then our results, combined with the APX-hardness of Metric tsp, demonstrate that tsp with obstacles is APX-hard.

Keywords and phrases:
traveling salesman, geodesic distance
Funding:
Sándor Kisfaludi-Bak: This work was supported by the Research Council of Finland, Grant 363444.
Copyright and License:
[Uncaptioned image] © Sándor Kisfaludi-Bak and Leonidas Theocharous; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Computational geometry
Related Version:
Full Version: https://arxiv.org/abs/2509.14709 [26]
Editors:
Ho-Lin Chen, Wing-Kai Hon, and Meng-Tsung Tsai

1 Introduction

Understanding navigation [36, 37, 10, 20, 3], distance [41, 40, 5, 38, 23, 28] and visibility [12, 33, 16, 35, 29, 27] problems among obstacles has been one of the well-motivated research directions in computational geometry. Most of the work has focused on the planar setting, where the metric could be the geodesic distance inside a simple polygon, or more generally in a polygon with holes in the Euclidean plane. In the plane one can benefit from the fact that paths will often cross, whereas in higher dimensions paths will typically stay disjoint. The additional degree of freedom in 3- and higher-dimensional space makes the fundamental distance and navigation problems among obstacles harder, and they have not been explored as thoroughly.

Fortunately, we can still get a useful metric structure for certain obstacles in d-dimensional Euclidean space (henceforth denoted by d). We say that a set 𝒯 of obstacles is α-fat if for each obstacle object T𝒯 we have rin(T)rcircum(T)α, where rin(T) denotes the radius of the maximum inscribed ball of T, and rcircum(T) denotes the radius of the minimum enclosing ball of T. We will think of α as a universal constant and talk about collections of fat objects. For a set 𝒯 of obstacles let 𝒯=dT𝒯T denote the free space outside the obstacles. We denote by dist𝒯(u,v) the geodesic distance between u,v𝒯, which is the infimum of the length of piecewise linear curves in 𝒯 containing u and v. Chew et al. [11] established that for any set of convex, disjoint and fat obstacles in d one can navigate around the obstacles with constant overhead compared to the Euclidean distance. Their theorem implies that (𝒯,dist𝒯) has bounded doubling dimension, that is, for any r>0 and any x𝒯 the geodesic ball of center x and radius r can be covered by at most 2δ geodesic balls of radius r/2, for some constant δ. The minimum number δ satisfying the above condition is the doubling dimension. In Section 2 we establish an explicit bound on the doubling dimension among pairwise disjoint convex α-fat obstacles in d. Metrics of bounded doubling dimension are well-studied generalizations of Euclidean spaces, and retain many useful properties of d.

A natural question is whether the conditions of fatness, convexity, and pairwise disjointness are all needed for the doubling dimension bound. More generally, one wonders what finite metric spaces can be realized if the condition of fatness, disjointness or convexity is dropped. We say that a metric space (X,distX), is realizable with a set 𝒯 of obstacles in d if one can embed (X,distX) isometrically into (𝒯,dist𝒯). An approximate realization allows for an embedding with a worst-case multiplicative distortion of (1+ε).

The starting point of our investigation is the following question. Let 𝔓 denote the disjunction of some subset of properties among (i) convex (ii) pairwise disjoint (iii) fat.

Question 1.

Is it possible to (approximately) realize the finite metric space (X,distX) in 3 with obstacles of property 𝔓?

It is also worth exploring how various types of obstacles impact the algorithms and complexity of some classic distance problems. The study of the shortest path problem among a set of polygonal obstacles 𝒫 goes back at least 50 years, to the work of Wangdahl et al. [41] in 1974. Their approach to compute a shortest path between two points s,t (as well as many later approaches; see for instance [38, 5]) relied on running Dijkstra’s algorithm on the visibility graph of the vertices of 𝒫 together with s and t. Any such method has an Ω(n2) lower bound (where n is the number of vertices in 𝒫), due to the size of the visibility graph. To achieve subquadratic running times, later algorithms shifted to the continuous Dijkstra paradigm [28, 23]. Finally, Wang presented an optimal O(nlogn)-time, O(n)-space algorithm [40]. Data structures for two-point shortest path queries have also been studied and, recently, De Berg et al. presented an O(n10+ε)-space data structure with O(logn) query time [14]. The shortest path problem among obstacles can be generalized to account for movement through regions with different weights, a variation known as the weighted region problem. The general problem admits a (1+ε)-approximation algorithm [30], while cases with restricted region shapes or weights have also been considered [9, 17]. While these are all positive results, computing shortest paths among 3-dimensional obstacles is a much harder problem. In fact, it is NP-hard [31]. On the other hand, the problem admits an FPTAS [13, 21].

It is also natural to consider classic geometric optimization problems in the presence of obstacles. Recently, Alkema et al. [4] introduced a natural generalization of Euclidean tsp called tsp with obstacles. In tsp with obstacles, we are given a set of n points to visit and a collection 𝒯 of obstacles of total complexity m to avoid. Our goal is to find the shortest tour between a set of sites in the plane or some higher-dimensional space, while avoiding a given set of obstacles. In [4] the authors studied a variant of tsp with obstacles called tsp in a simple polygon, where the sites lie in a simple polygon P, that is, the obstacle that the salesman has to avoid is the complement of P. They gave an exact algorithm for this problem, running in 2O(nlogn)+poly(n,m) time.

In this paper, we will demonstrate the algorithmic impact of various types of obstacles via studying approximation algorithms and APX-hardness for tsp with obstacles. In particular, we consider the problem in 3 for different kinds of obstacles. Again, let 𝔓 denote the disjunction of some subset of properties among (i) convex (ii) pairwise disjoint (iii) fat.

Question 2.

Is there a PTAS for tsp with obstacles in 3 if the obstacles satisfy property 𝔓?

1.1 Our contribution

Our main contribution is the following theorem, which shows that all finite metric spaces are approximately realizable with pairwise disjoint convex obstacles in 3.

Theorem 3.

Let ε(0,1) and let (X,distX) be a metric space of size |X|=n and spread Φ:=maxa,b,c,dX(distX(a,b)distX(c,d)). Then there exists a collection 𝒯 of O(n17Φ5/ε5) pairwise disjoint congruent equilateral triangular obstacles and an injection f:X3 such that

distX(a,b)dist𝒯(f(a),f(b))(1+ε)distX(a,b).

for all a,bX. The set of obstacles can be constructed in poly(n,Φ,1/ε) time.

Let 𝔓 denote the disjunction of some subset of properties among (i) convex (ii) pairwise disjoint (iii) fat. The theorem directly answers Question 1 if the property 𝔓 does not require that objects are fat. We can use some ideas from this construction to give a complete answer to Question 1 in case of approximate realizations: we can approximately realize any metric space with fat pairwise disjoint obstacles (that are non necessarily convex) and with convex fat obstacles that are not necessarily disjoint, see Theorem 15.

We note that our construction is quite generic and we get the same result with other convex shapes that are constant-fat in 2, such as with unit disks or squares instead of congruent equilateral triangles. Using Theorem 3 and Theorem 15 we can use TSP lower bounds designed for general metric spaces to answer Question 2.

Corollary 4.

Let 𝒯 be a collection of obstacles in 3 with property 𝔓 of total complexity m=poly(|X|). Then tsp with obstacles has a PTAS if 𝔓= “convex and pairwise disjoint and fat”, and it is APX-hard for all other 𝔓.

The PTAS is based on the fact that for 𝔓=“convex and pairwise disjoint and fat” the free space outside the obstacles has bounded doubling dimension, see Section 2. We can also efficiently compute approximate shortest paths using Har-Peled’s algorithm [21], and running any of the known PTASes for TSP in doubling metrics[8, 6] we get the desired algorithm. The lower bound is based on realizing the metric space from the lower bound of Karpinski, Lampis and Schmied [25] using obstacles. The construction in [25] has polynomial spread, which allows us to apply Theorem 3. See Section 5 for a proof of Corollary 4.

1.2 Related work

Motion planning is a central problem in robotics, where the goal is to compute a collision-free path for a set of moving objects (robots) in a space with obstacles. The complexity of the problem depends significantly on the underlying environment and the degrees of freedom of the robots. The pioneering works of Schwartz and Sharir [36, 37], and later Canny [10], introduced the first general techniques for solving this problem in the plane. These algorithms have a polynomial dependency on n, the combinatorial complexity of the obstacles, but an exponential dependency on k, the degrees of freedom of the robots. For a detailed discussion of these foundational works, refer to [19, 20]. To highlight the problem’s inherent difficulty, note that even in the restricted case of rectangular robots navigating a rectangular environment, the problem is PSPACE-hard [24]. Recently, Agarwal [3] et al. presented an FPTAS with a running time of O(n2εO(1)logn) for the case of two square robots moving in a polygonal environment. This is the first known PTAS for two robots in such settings.

Focusing now on geodesic distance, many well-studied problems in the Euclidean setting have been explored within polygonal domains under this metric. Notable examples include geodesic convex hulls of points in polygonal domains [7, 39], the 1- and 2-center problems [34, 32], and geodesic spanners [1].

Finally, Abam and Seraji [2] constructed an 83-spanner of size O(nlog3n) amid axis-parallel boxes in 3, which is the only known geodesic spanner result in 3-dimensional space with obstacles.

1.3 Overview of the proof of Theorem 3

Our approach to proving Theorem 3 is inspired by the work of Dumitrescu and Tóth [15], who studied a similar problem in the planar setting. They denote by ϱ(P) the ratio between the geodesic and the Euclidean diameter of a polygon P, and show that over all convex polygons with h convex holes, the supremum of ϱ(P) is between Ω(h1/3) and O(h1/2). Crucially, their construction includes building a “wall” of polynomially many short segments that lengthen the geodesic diameter by a large factor, see Figure 1(i) for an illustration.

Figure 1: (i) The construction of Dumitrescu and Tóth [15] for a wall in 2 consisting of convex obstacles. The shortest path from a to b must zigzag between the layers of segments. (ii) The view of a flat wall from z=, with 4 shifts (iii) The flat wall construction viewed from a generic point. The planes containing the four types of squares have slightly differing z-coordinates, and they are sandwiched between the planes z=0 and z=0.05.

Our strategy to embed a metric space is as follows. We will define a custom closed surface 𝒮 embedded in 3, and map each point xiX to some point f(xi) inside. We then place a large collection of obstacles near the surface 𝒮 (within distance 1/2) that ensures that any geodesic that would connect the inside and outside of 𝒮 must be very long, longer than the maximum distance in (X,distX). This means that the minimum distance between a point f(xi) and f(xj) must be realized by a geodesic that stays within 𝒮. By setting up 𝒮 correctly, we are able to give an upper and lower bound on the length of any geodesic connecting f(xi) and f(xj) so that we can ensure distX(xi,xj)dist𝒯(f(xi),f(xj))(1+ε)distX(xi,xj).

Construction of the surface 𝓢.

Before discussing our obstacle placement, we first describe the construction of 𝒮 and the embedding f. (Note that the main text will define the surface 𝒮 last.) First, without loss of generality we assume that the minimum distance in (X,distX) is at least some large polynomial in n:=|X|, as we can use a scaling on the final construction to get the desired distance. The function f simply assigns the points xi to equally spaced points along the x-axis. The surface 𝒮 will contain a cube i centered at each point f(xi).

Figure 2: The surface 𝒮 for a 3-point metric space. The shortest geodesic from f(xi) to f(xj) is forced to go through some tubes, consisting of two vertical and a horizontal cylinder. The length of such a path can be adjusted by changing the length of the vertical cylinders.

For each pair i,j we realize the distance of distX(xi,xj) via a sequence of three tubes (cylinders), where the first and third cylinder are vertical (parallel to the z-axis) and the second is parallel to the x-axis, see Figure 2. The tubes connect a hole in the top of the cube i to a hole on the cube j, and in order to realize the turns, we use two small cubes with holes that connect the first and second as well as the second and third tube in the sequence. Notice that the the length of the second horizontal tube is determined by f(xi) and f(xj), thus in order to set the length of the cube sequence, we can vary the length of the two vertical tubes. We place these tubes at different depths (y-coordinates) so that they remain disjoint from each other. One can see that this leads to a good approximate realization, however, this surface needs to be smoother (differentiable) in order to ease the placement of obstacles. Thus 𝒮 is defined using differentiable surface patches: we need a rounded cube and a differentiable joint that allows the connection of a flat cube face with a circular cylinder boundary.

A flat wall example.

Let us consider an example of a simple placement of convex objects that increases the geodesic distance between the half-space z<0 and the half-space z>1 to significantly more than 1. We call this construction a flat wall. In this construction we use squares rather than triangles. Let S1 be the set of axis-parallel squares of side length 0.99 centered at the points (a,b,0.01) for a,b in the z=0.01 plane. Repeat the same construction 3 more times at heights z=0.02,0.03,0.04 by translating S1 with the vectors (1/2,0,0.01),(1/2,1/2,0.02),(0,1/2,0.03), to get the sets S2,S3, and S4, respectively. See Figure 1(ii) and (iii). Consider a geodesic connecting the planes z=0 and z=0.05: its intersection point p with z=0 will be within -distance 0.25 to the center of some square in one of the four shifts, and thus it will need to have length at least 0.24 to reach the boundary of this square before it can get to z=0.05. Using further copies of these squares shifted to different height ranges can increase the lower bound of 0.24 as necessary. By making more layers that are packed more densely we can achieve any separation between the halfspaces z<0 and z>1.

While the above construction is quite intuitive, we need a more careful approach to make a similar separation near an embedded closed surface. One can see that the flat construction cannot be adapted to a surface with sharp edges, so we will need to use a smoother closed surface. Even then, we will not be able to place layers of convex objects arbitrarily close together, as convex 2-dimensional shapes will not stay inside a curved surface. The challenge is to keep our objects in different layers disjoint, while creating a strong separation.

Curved wall construction via placing triangle layers.

The surface 𝒮 that we define has the crucial property that it has offset surfaces (often called parallel surfaces) that are well-defined and differentiable for any distance offset δ[1/2,1/2] from 𝒮. The offset surface at distance δ is denoted by 𝒮(δ). Since 𝒮(δ) is a closed surface, we are able to talk about the inside and outside of 𝒮(δ), and we can also define the region between two offsets 𝒮(δ) and S(δ) when δ<δ. In our construction, the offset δ will have a role similar to the z-coordinate in the flat wall construction above: we will place triangles tangent to S(δ) at some given collection of points. Using a large collection of different offsets, we can ensure the required separation between the inside of 𝒮(1/2) and the outside of 𝒮(1/2).

Figure 3: (i) A joint patch with its corresponding net. (ii) A quarter-cylinder patch with its corresponding net. (iii) A spherical triangle patch with its corresponding net.

We need a handful of geometric properties from 𝒮(δ) to ensure that we can place our obstacles near it. The most important property is to limit their curvature111While our results could be presented with a more general differential geometric toolbox, the need to construct these (a,b)-nets prompted us to use specific surface patches that are easy to handle algorithmically. One could adapt our techniques to more general smooth embedded surfaces. As a trade-off our surfaces are not smooth (not even twice differentiable) at the shared boundary of our surface patches. We have also used the Euclidean distance function rather than measuring distances within these surfaces to make our construction more elementary and explicit. in some sense. We require that at any point p on 𝒮(δ) there exist two balls of radius at least 1/2 whose unique intersection point with 𝒮(δ) and with each other is p. This helps to ensure that a small 2-dimensional convex shape of diameter μ1 tangent to 𝒮(δ) at p stays within distance O(μ2) of 𝒮(δ). In particular, a small triangle will stay between the surfaces 𝒮(δμ2) and 𝒮(δ+μ2), and thus triangles of the same size tangent to 𝒮(δ2μ2) and 𝒮(δ+2μ2) will remain disjoint from this triangle.

Finally, we must place the triangles in neighboring layers with “shifts” to ensure that a constant number of consecutive triangular layers of side-length μ triangles creates a separation of at least Ω(μ). Here translation is not an option, so we define an (a,b)-net, a weaker version of an ε-net (in the metric space sense). For two points u,v3 we will denote by uv the line segment between u and v, and by |uv| the length of uv. An (a,b)-net of a surface 𝒮 embedded in 3 is a point set N𝒮 where the pairwise distance of points in N is at least a, and for any point q𝒮 there is a pN such that |pq|b.

We can show that the offsets of the net points provide a weaker but still useful net in the offset surfaces: a “shared” (Ω(ζ),O(ζ))-net can be constructed for the surfaces 𝒮(δ). Here, “shared” means that we first find a (ζ,O(ζ))-net on 𝒮; sliding every net point along its surface normal gives, on each surface 𝒮(δ), an (Ω(ζ),O(ζ))-net. These net points are then partitioned into constantly many classes, where the distances within points in each class C are large enough so that equilateral triangles of side length μ=Θ(ζ) tangent to 𝒮(δ) at each point of C will remain disjoint; i.e., these triangles would correspond to a single square set S1 from our flat wall example. Using all of these partition classes in different offsets 𝒮(δ+iζ) ensures a separation of Ω(ζ) for geodesics passing between these layers, as seen with the four shifts of squares in our flat wall example. In our construction we must set ζ small enough to be able to accommodate several iterations of the above construction between 𝒮(1/2) and 𝒮(1/2), but large enough to get the desired length lower bound for any geodesic going from the inside of 𝒮(1/2) to the outside of 𝒮(1/2). This concludes the generic construction of the curved wall, as well as the overview of the ideas behind Theorem 3.

2 Doubling dimension among convex fat disjoint obstacles

We denote by B(p,r) the Euclidean ball of radius r centered at pd, and by B𝒯(p,r) the geodesic ball of radius r centered at p𝒯.

We recall the following key result by Chew et al. [11] on convex fat objects. Based on this, we will subsequently show that the free space induced by a set of convex,fat and disjoint obstacles in d has bounded doubling dimension, under the shortest-path metric.

Lemma 5.

Let 𝒯 be a set of convex, α-fat and disjoint obstacles in d. Then, for any u,v𝒯, we have that dist𝒯(u,v)β|uv|, where β is a constant depending on d and α defined as follows:

β={1+4πα,for d=2,1+8ddα,for d3.

Since a set 𝒯 of convex, fat and disjoint obstacles distorts distances by a constant factor, it follows that the doubling dimension of (𝒯,dist𝒯) will be bounded; we provide a proof for completeness.

Lemma 6.

Let 𝒯 be a set of convex, α-fat and disjoint obstacles in d. Then the metric space (𝒯,dist𝒯) has doubling dimension O(d(dlogd+log(1/α))).

Proof.

Let B𝒯(p,r) be a geodesic ball centered at p𝒯. Note that B𝒯(p,r)B(p,r). We will construct a covering of B𝒯(p,r) by geodesic balls of radius r/2. Towards that, we cover B(p,r) by cd Euclidean balls of radius r/2, where log(cd)=Θ(d) is the doubling dimension of d [22, Ch. 10]. Repeating this process recursively log(2β)+1 times, the ball B(p,r) is covered by cdlog(2β)+1 Euclidean balls of radius r/(2log(2β)+1)=r/(4β). Let denote the resulting collection of Euclidean balls. Since B𝒯(p,r)B(p,r), this collection also covers B𝒯(p,r).

We transform into a collection 𝒯 of geodesic balls in (𝒯,dist𝒯) of radius r/2, such that the union of these geodesic balls covers B𝒯(p,r). For each Euclidean ball B(q,r/(4β)), we handle the following cases:

1. If B(q,r/(4β))𝒯=, then we ignore B(q,r/(4β)) in the cover.

2. If B(q,r/(4β))𝒯, let oB(q,r/(4β))𝒯. Include the geodesic ball B𝒯(o,r/2) in 𝒯. To verify coverage, note that if sB(q,r/(4β))𝒯, then:

|os|r2β,

By Lemma 5, the geodesic distance between o and s satisfies:

dist𝒯(o,s)β|os|βr2β=r2.

Hence, sB𝒯(o,r/2), and B(q,r/(4β))𝒯B𝒯(o,r/2).

Each ball in 𝒯 has radius r/2, and the union of these geodesic balls covers B𝒯(p,r). The total number of geodesic balls in 𝒯 is at most cdlog(2β)+1. Therefore, the doubling dimension of (𝒯,dist𝒯) is given by

log(cdlog(2β)+1)=(log(2β)+1)log(cd)=O(d(dlogd+log(1/α))).

3 Realizing metric spaces with convex disjoint obstacles

This section contains the main result of our paper. We show that by using only convex and disjoint obstacles in 3, it is possible to realize any metric space approximately.

3.1 Surface patches

We will consider surfaces embedded in 3 that are differentiable (i.e., have well-defined normals at each point) described by differentiable surface patches. More precisely, our surface 𝒮 will consist of the following types of surface patches:

  • Axis-parallel squares of side length at least 1 with 0 or more disjoint circular holes of radius 2, such that each hole is at distance at least 2 from the square, and the hole centers have pairwise distance at least 6. We will refer to such a patch as a square patch.

  • Sections of a sphere of radius 1 cut out by axis-parallel planes through the center of the sphere. These sections correspond to octants of spheres and will be referred to as spherical triangle patches.

  • Cylinders of axis length at least 1 and radius 1, or their sections of angle π/2 around their axes, where the cylinder axis is parallel to some coordinate axis. We will refer to such a patch as a cylinder patch and a quarter-cylinder patch, respectively.

  • Joints, which are defined as a surface of revolution obtained by rotating the quarter circular arc {(x,y)x2+y2=1,x0,y0} around the axis x=2. We only allow rotations where the axis of revolution is parallel to some coordinate axis. We will refer to such a patch as a joint patch.

Notice in particular that a joint patch can be used to connect a circular hole of a square patch to a cylinder patch, and the quarter cylinder and spherical triangle patches can be used to “round” an axis parallel cube, i.e., to get the boundary of CB1, where C is an axis-parallel cube and B1 is a ball of radius 1, and denotes the Minkowski sum.

We say that a surface 𝒮 is a patchwork if it is a closed differentiable surface that is the union of some patches of the above types.

Let 𝒮 be a patchwork, and let 𝐧:𝒮𝕊2 denote its normal bundle. For a fixed δ(1/2,1/2) we define the offset surface of 𝒮 at distance δ, denoted by 𝒮(δ), as 𝒮(δ):={p+δ𝐧(p)p𝒮}. Because of the restriction of |δ|<1/2 we have that 𝒮(δ) is also a differentiable surface, and in fact it consists of patches of the following types, which we will call δ-patches:

  • Square patches (with or without holes of radius 2).

  • Sections of a sphere of radius 1+δ cut out by axis-parallel planes through the center of the sphere.

  • Cylinders of radius 1+δ or their sections of angle π/2 around their axes, where the axis is parallel to some coordinate plane.

  • Joints, which are obtained by rotating the quarter circular arc {(x,y)x2+y2=(1δ)2,x0,y0} around the axis x=2; again we only allow rotations where the axis of revolution is parallel to some coordinate axis.

We note that when 𝒮(δ) is a bounded closed surface of the above type (i.e., it is finite and has no boundary), 3𝒮(δ) consists of two disjoint connected components, one of which is bounded, called the inside of 𝒮(δ), and the other is unbounded, called the outside of 𝒮(δ). Moreover, when δ<δ, then 𝒮(δ) is contained in the inside of 𝒮(δ), and the set of points between 𝒮(δ) and 𝒮(δ) are those that are outside 𝒮(δ) and inside 𝒮(δ).

We call a differentiable surface 𝒮 r-touchable222On a smooth surface this would correspond to bounding the principal curvature in the interval [1/r,1/r]. if for any p𝒮 and any ball B of radius r tangent to 𝒮 at p we have that B intersects 𝒮 only at p. We say that a patchwork is a 1-patchwork if it is 1-touchable. Note that if 𝒮 is a 1-patchwork then the offsets 𝒮(δ) of 𝒮 are r-touchable for any r1|δ|. In particular, since we will always have |δ|1/2, all offsets S(δ) will be 1/2-touchable.

Lemma 7.

Let 𝒮(δ) be an offset of a 1-patchwork surface 𝒮. Let Hp be the plane tangent to 𝒮(δ) at p and let ε be such that |δ|<122ε2. Then, for any qHp where |pq|ε we have that q lies between 𝒮(δ2ε2) and 𝒮(δ+2ε2).

Figure 4: The plane containing a touching segment pq and the normal of 𝒮(δ) at p. The segment pq will remain very close to S(δ).

Proof.

Note that due to the condition |δ|<122ε2, the offset surfaces 𝒮(δ2ε2) and 𝒮(δ+2ε2) are well-defined. Moreover, we have that 122ε2>0, or equivalently that ε<12.

For the following refer to Figure 4. Consider the tangent balls B1,B2 of radius 12 that touch 𝒮(δ) at p and consider the line through q parallel to 𝐧(p). Since |pq|=ε<12, the line intersects B1. Let q1 denote the point closest to q in B1. Similarly, will also intersect B2 and let q2 denote the point closest to q in B2. Because 𝒮(δ) is 1/2-touchable, we have that the interiors of B1 and B2 cannot both be inside or both be outside 𝒮(δ), thus q1q2 intersects 𝒮(δ). In particular, q1q or q2q has to intersect 𝒮(δ); we assume without loss of generality that q1q intersects 𝒮(δ) at a point q. Since |qq|<|q1q|, it suffices to show that |q1q|2ε2.

Let o denote the center of B1 and choose q3 in the extension of q1q towards q1, such that |q3q|=12. Then in the right triangle oq1q3 we have: |pq|2+(12|q1q|)2=(12)2, which gives: |q1q|=12(12)2|pq|2. (The other root of the equation would lead to |q1q|>1/2, but this is not possible as q1q is shorter than the radius of B1.) Thus:

|q1q|=12(11(2|pq|)2)12(1(1(2|pq|)2))=2|pq|22ε2

where in the second inequality above, we have used that 1x21x2, for x[0,1].

3.2 Nets, offsets, triangle layers

For the remainder of this section let 𝒮 be a 1-patchwork surface, and let |δ|<1/2. Due to space limit, we provide proofs for the more interesting claims. For the rest of the proofs, refer to the full version of our paper [26]. We start with two technical lemmas that construct nets.

Lemma 8.

For any ζ1/8, we can compute a (ζ,8ζ)-net of size O(area(𝒮)/ζ2) on 𝒮 in O(area(𝒮)/ζ2) time.

Lemma 9.

Let ζ1/8 and let N𝒮 be the (ζ,8ζ)-net of 𝒮 constructed above. Then, for any δ(1/2,1/2), we have that Nδ:={p+δ𝐧(p)|pN} is a (ζ/2,12ζ)-net of 𝒮(δ).

Lemma 10.

Let Nδ be a (ζ/2,12ζ)-net of 𝒮(δ) for each |δ|<1/2 constructed above. Then for any fixed δ, any 1t<1/(4ζ) and any pNδ we have that the ball B(p,tζ) contains at most O(t2) points of Nδ. Moreover, for any t we can partition Nδ into O(t2) point sets Nδ,i such that the pairwise distance of points within Nδ,i is at least tζ.

Proof.

First note that tζ<1/4. Moreover, any cylinder patch of 𝒮(δ), has distance at least 1/2 from any square patch of 𝒮(δ). Therefore, B(p,tζ) cannot intersect both a square and a cylinder patch at the same time. Recall that any two holes on a square patch have pairwise distance at least 6 and are also at distance at least 2 from the boundary of the square patch. Therefore, B(p,tζ) cannot intersect both a quarter-cylinder patch and a joint or a cylinder patch at the same time. The highest number of distinct surface patches B(p,tζ) can intersect is 7, which may happen when it intersects a spherical triangle patch and the three quarter-cylinder patches around it and the three square patches around it. Since it can intersect at most a constant number of distinct patches, it suffices to show that it can contain at most O(t2) points of Nδ from each different type of surface patch.

To that end, let 𝒫 denote a patch which is not a square patch and not a spherical triangle patch. For the remaining types of patches, the constructed net is taken as a point set of the form I(A,B), where elements in A and B are quarter-circular arcs, line segments or circles. In all cases, we have argued already that any two elements in A have distance at least ζ/2 (since now Nδ is a (ζ/2,12ζ)-net) and any two elements in B have also distance at least ζ/2. Therefore, from any point p𝒫 and within distance tζ, we can reach at most 2t elements of A and 2t elements of B. Therefore we can reach at most 4t2 net points of 𝒫. On a spherical triangle patch, the arcs of A again have pairwise distance at least ζ/2, so we can reach at most O(t) arcs, and on each arc we can reach at most O(t) points as on each quarter-circular arc the distance between consecutive points is at least ζ/2.

For a square patch, the process of construction was slightly different due to the existence of the holes. Using the same argumentation as above, we can deduce that B(p,tζ) can contain at most 4t2 net points from the initially placed grid. Moreover, B(p,tζ) can intersect at most one hole. Note that a single hole contains O(1/ζ) net points and since t<1/(2ζ), it contains at most O(t) net points. Therefore, B(p,tζ) can contain at most 5t2 net points of a square patch.

Since we argued that B(p,tζ) can intersect at most 7 distinct surface patches, we have that it can contain at most 75t2=35t2 points of Nδ.

For the second part of the lemma create b=35t2+1 partition classes Nδ,1,Nδ,2,,Nδ,b and greedily place points in these classes: we place each point pNδ in the available class of smallest index (that is, a class of minimum index not already containing any point q such that |pq|<tζ). Note that in this way, there will always be a class which is available, since for any point there are at most 35t2 points that cannot be in the same class with it.

Lemma 11.

There exists a constant ν such that for any ζ<1/(2ν) and 1/2<δ<1/2νζ2 there is collection 𝒯 of O(area(𝒮)/ζ2) congruent equilateral triangles of side length Θ(ζ) that satisfy the following properties:

  1. (i)

    each triangle in 𝒯 is located between 𝒮(δ) and 𝒮(δ+νζ2)

  2. (ii)

    the triangles in 𝒯 are pairwise disjoint, and

  3. (iii)

    the geodesic distance from any point of 𝒮(δ) to any point of 𝒮(δ+νζ2) is at least 4ζ.

Proof.

By applying Lemma 8 and Lemma 9 for we obtain a (ζ/2,12ζ)-net Nδ of 𝒮(δ) of size O(area(𝒮)/ζ2). We set t=48(1+3), and choose ν large enough such that ζ<1/(4t). Then, by Lemma 10, we can partition Nδ into b=35t2+1 classes (Nδ,i)i=1b, where points within each class Nδ,i have pairwise distance at least tζ=48(1+3)z. We will now place each class Nδ,i on a different offset 𝒮(δi), defined as follows. We start by setting ν=4b+1 and define δi:=δ+4iζ2, for i=1,2,..,b. From now on, we consider the points of each class Nδ,i on the surface 𝒮(δi) defined as above.

The above definition ensures δiδ+4bζ2<δ+νζ2<1/2. Thus, the offsets S(δi) are well-defined. Furthermore, we also have the following:

For 1ib, we have that δi2ζ2<δi<δi+2ζ2<δi+1. (1)

For 1ib and pNδ,i, let Tp denote the equilateral triangle of side length 483ζ centered at p, which lies on the tangent plane Hp at p. Let 𝒯i={Tp:p𝒩δ,i} and 𝒯=i=1b𝒯i. We now argue that 𝒯 satisfies the three properties of the Lemma:

  1. (i)

    This holds trivially since δ+4ζ2δiδ+4bζ2<δ+νζ2.

  2. (ii)

    Lemma 7 together with (1), ensure that any two triangles in 𝒯 that belong to different offsets are disjoint. Next, we argue that any two triangles Tp,Tq𝒯i are disjoint. From Lemma 10 we know that |pq|48(1+3)ζ>96ζ. Since each of our triangles has circumradius 48ζ, it follows that Tp,Tq cannot intersect.

  3. (iii)

    Refer to Figure 5 for an illustration. Let p𝒮(δ) and q𝒮(δ+νζ2) and consider a shortest geodesic path π(p,q). We want to show that dist𝒯(p,q)cζ for some constant c. Let u be a point in π(p,q)𝒮(δ1) and consider the segment s between the points u𝐧(u) and u+𝐧(u). We consider the following two cases:

    • Case I: There exists vπ(p,q), such that dist3(v,s)4ζ.
      Then π has the desired length.

    • Case II: π(p,q) is contained in the cylinder with axis s and radius 4ζ
      Let 𝒞(ab,x) denote the cylinder of axis ab and radius x. We will show that there exists T𝒯 which cuts the cylinder 𝒞(s,4ζ) in such a way that the top and bottom disk of the cylinder are completely contained in different sides of the cut. Since π(p,q) connects these disks and it is disjoint from all triangles T𝒯, this will give a contradiction.

      By the properties of Nδ, we know that there exists a surface 𝒮(δi), such that s𝒮(δi) is within distance 12ζ from a point wNδ,i. We will argue that Tw is the required triangle. Towards that, let si=s𝒮(δi) and recall that Tw has inradius 24ζ and denote by D the incircle of Tw. Observe that 𝒞(si1si+1,4ζ)B(w,24ζ). By Lemma 7, we know that Tw is between 𝒮(δi1) and 𝒮(δi+1). Since D splits B(w,24ζ) in two pieces where si1 and si+1 are in different parts, we get that D has to cut 𝒞(si1si+1,4ζ). We conclude that indeed Tw cuts 𝒞(s,4ζ) in the described manner, which is a contradiction.

Figure 5: Illustration for the proof of Lemma 11 (side view). The geodesic π(p,q) is shown in grey. Note that the cylinder around s is cut by one of the red triangles, therefore π(p,q) needs to exit the cylinder.

By iterating the construction of Lemma 11 we get our curved wall separation theorem.

Theorem 12 (Polynomial separation).

Let 𝒮 be a 1-patchwork surface. Then for any σ>1 there is a collection of O(σ4area(𝒮)) pairwise disjoint congruent equilateral triangle obstacles between 𝒮(1/2) and 𝒮(1/2), such that the geodesic distance from any point of 𝒮(1/2) to any point of 𝒮(1/2) is at least σ.

3.3 The construction and the proof of Theorem 3

Recall that (X,distX) is the metric space whose distances we want to realize, with |X|=n and spread Φ=maxa,b,c,dX(distX(a,b)distX(c,d)), and ε>0 denotes an accuracy parameter. We can assume that the minimum distance of any two points in X is 41n3/ε, as in general we can scale the whole construction so that the minimum geodesic distance exactly matches the minimum distance in X. We construct a 1-patchwork surface 𝒮 together with an injection f:X3 as follows.

For each point xiX, 1in, let f(xi)=(40n2i,0,10n2). Let 𝒞i denote the cube centered at f(xi) of side-length 20n22. We define the rounded cube i=𝒞iB1, where B1 denotes the ball of radius 1. Note that each rounded cube i has size 20n2, where we define the size of a rounded cube to be the side-length of its bounding box. Then the top square patch of each i lies on the plane z=0, has side length 20n22 and is centered at the point (40n2i,0,0). For each pair (i,j) where i<j, we model the distance between xi and xj as follows. We start by placing two holes Hi,j,Hj,i on the top square patch of i and j respectively, such that:

  • Hi,j has radius 2 and center (40n2i,10n2+10(n1)i+10j10,0), and

  • Hj,i has radius 2 and center (40n2j,10n2+10(n1)i+10j10,0).

Observe that the centers of any two holes Hi,j,Hj,i defined this way have the same y-coordinates. Moreover, the y-coordinates of the centers of all holes are in the range [10n2+10n,10n]. Since the y-coordinates of the top square patches are in the range [10n2+1,10n21], this ensures that:

  1. 1.

    holes are well-defined,

  2. 2.

    each hole has distance at least 2 from the boundary of its square patch, and

  3. 3.

    for each 1i,j,kn, where i,j,k are pairwise different, the centers of Hi,j and Hi,k have distance at least 10. As a result, Hi,j and Hi,k have distance at least 6, as required in the definition of a square patch.

It will be useful for the rest of the description, to define a cylinder-joint patch of length as a cylinder patch of length , with two joint patches attached to its bases. Note that a cylinder-joint patch can be used to connect two holes that are opposite to each other.

Next, for each 1i<jn, we connect Hi,j and Hj,i as follows. We attach to both Hi,j and Hj,i a cylinder-joint patch of length vert(i,j), which we denote by 𝒦i,j and 𝒦j,i respectively. The length vert(i,j) will depend on ε and its exact value will be set in the proof of Theorem 3. We then attach 𝒦i,j to a rounded cube 𝒞i,j of size 8, through a circular hole of radius 2 centered at the center of the bottom square patch of 𝒞i,j. Note that this hole has distance at least 2 from the boundary of the square patch. Similarly, we attach 𝒦j,i to a rounded cube 𝒞j,i of size 8, through a circular hole of radius 2 centered at the center of the bottom square patch of the cube. We finally connect 𝒞i,j and 𝒞j,i through a horizontal cylinder-joint patch of length hor(i,j)=40n2(ji), denoted by 𝒥i,j. This concludes the construction of 𝒮. Refer to Figure 6 for an illustration of the connection between f(xi),f(xj). After constructing 𝒮 we apply Theorem 12 for σ:=maxxi,xjdistX(xi,xj)=O(Φn3/ε), to achieve a separation of maxxi,xjdistX(xi,xj) between 𝒮(1/2) and 𝒮(1/2). We let 𝒯 denote the resulting set of triangle obstacles.

Figure 6: A tube consisting of three cylinders and a turn that connects the rounded cubes i and j. We will set vert(i,j) to ensure that the length of the tube corresponds to the distance distX(xi,xj).

Next, we sketch the proof of Theorem 3. Refer to the full version [26] for a detailed proof.

Proof sketch.

We need to upper and lower bound the length of a geodesic from f(xi) to f(xj). The choice of σ ensures that we only need to consider geodesics within 𝒮(1/2). We set vert(i,j) so that any geodesic that passes through the three-cylinder-tube connecting i and j has length at least distX(xi,xj). Now a geodesic passing through multiple such tubes will have a length that is at least the sum of the corresponding distances, thus by the triangle inequality in X any such path will also have length at least distX(xi,xj).

To upper bound the geodesic distance of f(xi) to f(xj), we observe that there is a direct path in 𝒮(1/2) connecting f(xi) and f(xj) through the designated three-cylinder tube. This will contain some additional short segments compared to our lower bound, namely, the segments connecting the endpoints of the geodesic (f(xi) and f(xj)) to the entrance and exit of the tube. The total length of these segments is shown to be less than εdistX(xi,xj).

We note the following observation from within the proof of Theorem 3 for later use.

Observation 13.

There is a path connecting f(xi) and f(xj) in the inside of 𝒮(1/2) that has length at most (1+ε)distX(xi,xj).

 Remark 14 (Exact realizations).

It is particularly challenging to realize a metric exactly with convex obstacles. While our construction can be modified to ensure the exact length of the shortest path through the corresponding tube has the same exact length as the original distance in (X,distX), this is not sufficient.

The problem can be seen by considering the metric induced by a star on 4 vertices. If a,b,c are the leaves and x is the center of the star, then the the shortest f(a)f(b) path will be realized by going through the f(a)f(x) tube and the f(x)f(b) tube, foregoing the small detour to f(x) within its rounded cube. This path will be strictly shorter than dist𝒯(f(a),f(x))+dist𝒯(f(x),f(b)). While a realization exists for star graph metrics using relatively open triangles, this does not generalize. Can we for example realize (X,distX) exactly with disjoint convex obstacles assuming the image of distX is {1,2}?

4 Realizing metrics with fat obstacles

We tweak our construction to prove the following theorem and answer Question 1 for convex fat non-disjoint obstacles and for fat, disjoint but non-convex obstacles.

Theorem 15.

Let ε(0,1) and let (X,distX) be a metric space of size |X|=n and spread Φ:=maxa,b,c,dX(distX(a,b)distX(c,d)). Then there exists a collection 𝒯 of obstacles for each of the following restrictions:

  1. (i)

    𝒯 consists of O(n17Φ5/ε5) congruent regular simplices (that are not necessarily disjoint).

  2. (ii)

    𝒯 consists of O(n5Φ/ε) disjoint, similarly-sized α-fat objects that are homeomorphic to a ball. The objects have total complexity O(n17Φ5/ε5), where α>0 is a constant.

In both cases, there is an injection f:X3 such that

distX(a,b)dist𝒯(f(a),f(b))(1+ε)distX(a,b).

for all a,bX. The set of obstacles can be constructed in poly(n,Φ,1/ε) time.

Proof.

(i) We modify the set of triangular obstacles in our basic construction as follows. Recall from the proof of Lemma 11 that each triangle T𝒯 is tangent at the center of T to some 𝒮(δ) at a point p𝒮(δ), for some 1/2<δ<1/2. We turn T into a regular tetrahedron T where one face of T is T, and the vertex of T outside T is placed along the normal ray from p, that is, the tetrahedron will point to the outside of 𝒮(δ). The obstacles in the new collection obtained this way, denoted by 𝒯, are convex and 1/3-fat.

We can now prove Theorem 3 for 𝒯 instead of 𝒯. For the lower bound, it suffices to observe that 𝒯𝒯. This implies that the set of geodesics in 𝒯 is a subset of the geodesics in 𝒯, and thus for any two points xi,xjX we have dist𝒯(f(xi),f(xj))dist𝒯(f(xi),f(xj))distX(xi,xj). On the other hand, the inside of 𝒮(1/2) is in 𝒯, due to the way we constructed the tetrahedra (pointing “out” of the offset surface they are tangent to). Observation 13 now implies that dist𝒯(f(xi),f(xj))(1+ε)distX(xi,xj).

(ii) Let 𝒯 be the triangle collection constructed by Section 3.3, and let 𝒰 be the union of all offsets of 𝒮, that is, 𝒰:=δ[1/2,1/2]𝒮(δ). Refer to Figure 7 for an illustration. Let N be a (1/8,1)-net of 𝒮 obtained from Lemma 9 with ζ=1/8. Consequently, |N|=area(𝒮)=O(n5Φ/ε). Compute the Voronoi diagram of N in 3, that is, a partition of 3 into cells according to the closest point of N. The Voronoi cells can be computed in poly(|N|) time [18, Ch. 27]. For the cell Cp of pN let Up:=Cp𝒰; note that each Up can be represented explicitly in poly(|N|)=poly(|𝒯|) space. Observe that Up has diameter at most diam(Up)3/2: indeed, any point in 𝒰 is within distance at most 1/2 from 𝒮 (along the normal direction or its inverse), and any point of 𝒮 is within distance at most 1 from some point of N by the net property of N.

Figure 7: (i) Side view of the region 𝒰 (shaded in grey). (ii) The region Up=Cp𝒰 (in red), together with the ball BpUp (in blue), indicating that Up is fat.

We claim that each set Up contains a ball Bp of radius 1/16. Clearly the Voronoi cell Cp contains this ball by the net property; it remains to show that Bp is contained in 𝒰. Consider the line normal to 𝒮 at p, and let p(δ) be the point of this line on 𝒮(δ) where δ[1/16,1/16]. Notice that a point qBp the nearest point of is some point p(δ), and the tangent plane Hδ of 𝒮(δ) at p(δ) contains q. Since |q,p(δ)|1/16, we have by Lemma 7 that q is between 𝒮(δ2/162) and 𝒮(δ+2/162). Since δ<1/16, this implies that q𝒰, and concludes the proof that BpUp.

Consider now the obstacle set 𝒯, and notice that its triangles have positive pairwise distance from each other and also from 𝒮(1/2) and from 𝒮(1/2). Let μ>0 be some small number such that the Euclidean μ-neighborhoods of the triangles of 𝒯 remain pairwise disjoint, and they remain subsets of 𝒰. For a triangle T𝒯 let x(T) denote the center of T and let Tμ denote the set of points q in 3 such that dist3(q,T)<μ (i.e., Tμ is an open set). Here dist3(q,T) denotes the minimum Euclidean distance between q and a point of T.

Let Upμ denote the set of points q with dist3(q,3Up)μ, that is, Upμ is a closed subset of Up where a small neighborhood of the boundary of Up has been removed. Consequently, the sets Upμ are pairwise disjoint.

We group 𝒯 according to the location of their triangle centers. Let 𝒯p denote the set of triangles T𝒯 where x(T)Up; if x(T) is on the shared boundary of several sets (Up)pN, then we assign T to one of the corresponding classes arbitrarily. As a result {𝒯p}pN is a partition of 𝒯. For each point pN we define the following obstacle Wp by adding all triangles of 𝒯p to Upμ, but subtracting Tμ for all T𝒯𝒯p:

Wp:=(Upμ(T𝒯pT))(T𝒯𝒯pTμ).

Refer to Figure 8 for an illustration of an obstacle Wp. The sets Wp are computed in polynomial time, and they are closed sets that are pairwise disjoint. Moreover, each set Wp has diameter at most diam(Wp)diam(Up)+sT<2 where sT<1/100 is the side length of the triangles in T. Recall that each set Up contains a ball of radius 1/16 centered at p. It follows that Wp contains the ball of radius 1/16μsT>1/32 centered at p. We conclude that the sets Wp are 1/64-fat.

Figure 8: (i) By shrinking Up, we obtain the region Upμ. Square points correspond to centers of triangles in 𝒯. Four triangles are drawn, again in side view. For illustration purposes, various objects have not been drawn to scale. (ii) The final obstacle Wp, obtained by attaching to Upμ the two red triangles, and removing a small neighborhood of the other two.

The proof that the obstacle set {Wp}pN approximately realizes (X,distX) can be argued as in part (i). The number of obstacles is |N|=O(n5Φ/ε). We note that both the size of our obstacle collection and the construction time could be further improved; here, however, we did not attempt to optimize for these aspects.

5 Algorithms and lower bounds for tsp with obstacles

This section is devoted to proving Corollary 4. In order to give an algorithm, we will first need to (approximately) compute the distances between our input points. Let 𝒯 denote a collection of pairwise-disjoint polyhedral obstacles in 3 of total complexity m. Har-Peled [21] showed how to construct an ε-approximate shortest path map from any source point s𝒯, in time roughly O(m4/ε6). From his result we can deduce the following:

Theorem 16 (Har-Peled [21]).

Let 𝒯 be a collection of pairwise-disjoint polyhedral obstacles in 3 of total complexity m and let S𝒯, be a set of |S|=n points. Then, for any 0<ε<1, we can compute a (1+ε)-approximation for the all-pairs-shortest-paths problem on S in time:

O(nm4ε2(β(m)ε4logmε+log(mρ)log(mlogρ))log1ε)

where ρ is the ratio of the longest edge in 𝒯 with the distance of the closest pair of points in S, and β(m)=α(m)O(α(m))O(1), and α(m) is the inverse of the Ackermann function.

Note that Har-Peled’s result is based on constructing a graph whose vertices correspond to points and whose edges correspond to pairwise visible point pairs, where edge lengths are high-precision estimates of the distance of the visible point pair. Har-Peled’s result computes the true shortest paths in this graph. Consequently, the resulting approximate distance function distapprox on S forms a metric space. One can also show using arguments similar to Lemma 6 that for any ε(0,1) the doubling dimension of (S,distapprox) is at most constant times the doubling dimension of (S,dist𝒯).

We now mention the result by Banerjee, Bartal, Gottlieb and Hovav, on TSP in doubling spaces [6].

Theorem 17 (Corollary 35 in [6]).

Let (X,distX) be a metric space with |X|=n points and of bounded doubling dimension δ. A (1+ε)-approximation to the optimal tour of X can be computed by a randomized algorithm in 2(δ/ε)O(δ)n+(1/ε)O(δ)nlogn time.

By combining Theorem 17 and Theorem 16, we will obtain a PTAS for the case 𝔓= convex  pairwise disjoint  fat. For the other cases, the APX-hardness is based on the inapproximability result by Karpinski, Lampis and Schmied on Metric tsp [25]. They showed an inapproximability bound of 123/122. By inspection of the construction given in [25], we have the following crucial observation:

Observation 18.

It is NP-hard to approximate Metric tsp within a ratio of 123/122, even when the underlying metric space has polynomial spread.

Proof.

This follows by inspection of the construction by Karpinski, Lampis and Schmied (Section 5.1 in [25]), which is based on a the shortest path metric of a connected edge-weighted graph. The weights of all edges used are small constants. Namely, the smallest edge has weight 0.5, and the longest edge has length 2. Therefore, the graph has diameter at most 2(n1), and the construction has a spread at most 2(n1)0.5=4(n1)=O(n).

Now we have all the necessary elements to prove Corollary 4.

Corollary 4. [Restated, see original statement.]

Let 𝒯 be a collection of obstacles in 3 with property 𝔓 of total complexity m=poly(|X|). Then tsp with obstacles has a PTAS if 𝔓= “convex and pairwise disjoint and fat”, and it is APX-hard for all other 𝔓.

Proof of Corollary 4.

Let S𝒯 denote a set of n points, whose optimal tour we want to compute. We have the following cases:

  • The obstacles in 𝒯 are convex, α-fat and pairwise disjoint.

    We show that then tsp with obstacles admits a PTAS. Towards that, let ε(0,1). By Theorem 16, we can approximate distT up to a factor of 1+ε/3. Let distapprox denote the approximate metric. The doubling dimension of (S,distapprox) is at most a constant factor larger than that of (S,dist𝒯). Therefore, by Lemma 6, it is at most O(1). By Theorem 17, we can get a (1+ε/3)-approximation for tsp with obstacles on (S,distapprox), with running time 21/εO(1)n+1/εO(1)nlogn. Since (1+ε/3)2<1+ε, the result is a (1+ε)-approximation for tsp with obstacles.

  • The obstacles in 𝒯 are convex and pairwise disjoint but not fat, or fat and convex but non-disjoint, or fat and disjoint but non-convex.

    We will show that in this case the problem is APX-hard, with an inapproximability bound of 123122ε, for any ε>0. For a set S𝒯, let OPT𝒯(S) denote the length of an optimal tour through S. Assume that we could, in polynomial time, compute a tour of length Tapprox(S) such that Tapprox(S)(123122ε)OPT𝒯(S), for a fixed ε>0.

    Let (X,distX) denote an instance of Metric tsp, where |X|=n and X has spread poly(n). From Observation 18, we have a 123/122 inapproximability bound for computing the optimal tour on X, denoted by OPT(X). From Theorem 3 or Theorem 15, we compute a set of obstacles 𝒯 in 3 and an injection f:X3, such that:

    OPT𝒯(f(X))(1+ε)OPT(X),

    where we set ε to satisfy 123122(1+ε)=123122ε.

    By our assumption, we can compute a value Tapprox(f(X)) such that:

    Tapprox(f(X))(123122ε)OPT𝒯(f(X))

    Therefore, Tapprox(f(X))123122OPT(X), which contradicts the APX-hardness of Metric tsp.

6 Conclusion

In this paper we have shown that all metric spaces are approximately realizable in 3 using convex disjoint obstacles, or using convex fat but non-disjoint obstacles, or using fat disjoint obstacles that are non-convex. Our convex construction is easily generalizable to several other obstacle types, however, it always requires objects whose minimum bounding box has two long edges (polynomially long in n,1/ε and the spread) and one short edge of length 1.

Some notable obstacle types where the possible realizable metrics remain unexplored include disjoint axis-parallel box obstacles and disjoint 1×1×n boxes of arbitrary orientation. We suspect that obstacles of the former type cannot realize all metric spaces, and obstacles of the latter type can only realize spaces of small doubling dimension. It also remains open whether exact realization of any metric space is possible with convex obstacles, even if all distances in the metric space are either 1 or 2.

Finally, can we generalize the planar studies of distances among weighted regions [30, 9, 17] to 3? What metrics can be realized if we are allowed to pass through the objects of 𝒯, but we need to pay some custom penalty (weight) for doing so?

References

  • [1] Mohammad Ali Abam, Marjan Adeli, Hamid Homapour, and Pooya Zafar Asadollahpoor. Geometric Spanners for Points Inside a Polygonal Domain. In Lars Arge and János Pach, editors, 31st International Symposium on Computational Geometry (SoCG 2015), volume 34 of Leibniz International Proceedings in Informatics (LIPIcs), pages 186–197, Dagstuhl, Germany, 2015. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.SOCG.2015.186.
  • [2] Mohammad Ali Abam and Mohammad Javad Rezaei Seraji. Geodesic spanners for points in R3 amid axis-parallel boxes. Information Processing Letters, 166:106063, 2021. doi:10.1016/j.ipl.2020.106063.
  • [3] Pankaj K. Agarwal, Dan Halperin, Micha Sharir, and Alex Steiger. Near-optimal min-sum motion planning for two square robots in a polygonal environment. In Proceedings of the 2024 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 4942–4962, 2024. doi:10.1137/1.9781611977912.176.
  • [4] Henk Alkema, Mark de Berg, Morteza Monemizadeh, and Leonidas Theocharous. TSP in a Simple Polygon. In Shiri Chechik, Gonzalo Navarro, Eva Rotenberg, and Grzegorz Herman, editors, 30th Annual European Symposium on Algorithms (ESA 2022), volume 244 of Leibniz International Proceedings in Informatics (LIPIcs), pages 5:1–5:14, Dagstuhl, Germany, 2022. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.ESA.2022.5.
  • [5] Takao Asano, Tetsuo Asano, Leonidas Guibas, John Hershberger, and Hiroshi Imai. Visibility of disjoint polygons. Algorithmica, 1(1):49–63, November 1986. doi:10.1007/BF01840436.
  • [6] Sandip Banerjee, Yair Bartal, Lee-Ad Gottlieb, and Alon Hovav. Novel Properties of Hierarchical Probabilistic Partitions and Their Algorithmic Applications . In 2024 IEEE 65th Annual Symposium on Foundations of Computer Science (FOCS), pages 1724–1767, Los Alamitos, CA, USA, 2024. IEEE Computer Society. doi:10.1109/FOCS61266.2024.00107.
  • [7] Luis Barba, Michael Hoffmann, Matias Korman, and Alexander Pilz. Convex Hulls in Polygonal Domains. In David Eppstein, editor, 16th Scandinavian Symposium and Workshops on Algorithm Theory (SWAT 2018), volume 101 of Leibniz International Proceedings in Informatics (LIPIcs), pages 8:1–8:13, Dagstuhl, Germany, 2018. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.SWAT.2018.8.
  • [8] Yair Bartal, Lee-Ad Gottlieb, and Robert Krauthgamer. The traveling salesman problem: Low-dimensionality implies a polynomial time approximation scheme. SIAM J. Comput., 45(4):1563–1581, 2016. doi:10.1137/130913328.
  • [9] Prosenjit Bose, Guillermo Esteban, and Anil Maheshwari. Weighted shortest path in equilateral triangular meshes. In Yeganeh Bahoo and Konstantinos Georgiou, editors, Proceedings of the 34th Canadian Conference on Computational Geometry, CCCG 2022, Toronto Metropolitan University, Toronto, Ontario, Canada, August 25-27, 2022, pages 60–67, 2022.
  • [10] John F. Canny. The complexity of robot motion planning. MIT Press, Cambridge, MA, USA, 1988.
  • [11] L.Paul Chew, Haggai David, Matthew J. Katz, and Klara Kedem. Walking around fat obstacles. Information Processing Letters, 83(3):135–140, 2002. doi:10.1016/S0020-0190(01)00321-0.
  • [12] V. Chvátal. A combinatorial theorem in plane geometry. Journal of Combinatorial Theory, Series B, 18(1):39–41, February 1975. doi:10.1016/0095-8956(75)90061-1.
  • [13] Kenneth L. Clarkson. Approximation algorithms for shortest path motion planning (extended abstract). In Alfred V. Aho, editor, Proceedings of the 19th Annual ACM Symposium on Theory of Computing, 1987, New York, New York, USA, pages 56–65. ACM, 1987. doi:10.1145/28395.28402.
  • [14] Sarita de Berg, Tillmann Miltzow, and Frank Staals. Towards Space Efficient Two-Point Shortest Path Queries in a Polygonal Domain. In Wolfgang Mulzer and Jeff M. Phillips, editors, 40th International Symposium on Computational Geometry (SoCG 2024), volume 293 of Leibniz International Proceedings in Informatics (LIPIcs), pages 17:1–17:16, Dagstuhl, Germany, 2024. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.SoCG.2024.17.
  • [15] Adrian Dumitrescu and Csaba D. Tóth. Maximal distortion of geodesic diameters in polygonal domains. In Combinatorial Algorithms - 34th International Workshop, IWOCA 2023, Tainan, Taiwan, June 7-10, 2023, Proceedings, volume 13889 of Lecture Notes in Computer Science, pages 197–208. Springer, 2023. doi:10.1007/978-3-031-34347-6_17.
  • [16] Sándor P. Fekete, Stephan Friedrichs, Michael Hemmer, Joseph S. B. Mitchell, and Christiane Schmidt. On the chromatic art gallery problem. In Canadian Conference on Computational Geometry (CCCG), 2014. URL: http://www.cccg.ca/proceedings/2014/papers/paper11.pdf.
  • [17] L. Gewali, A. Meng, J. S. Mitchell, and S. Ntafos. Path planning in 0/1/ weighted regions with applications. In Proceedings of the Fourth Annual Symposium on Computational Geometry, SCG ’88, pages 266–278, New York, NY, USA, 1988. Association for Computing Machinery. doi:10.1145/73393.73421.
  • [18] Jacob E. Goodman and Joseph O’Rourke, editors. Handbook of discrete and computational geometry. CRC Press Series on Discrete Mathematics and its Applications. CRC Press, Boca Raton, FL, 1997.
  • [19] D. Halperin, L. Kavraki, and K. Solovey. Robotics, chapter 51, pages 1343–1376. Chapman & Hall/CRC, 3rd edition, 2018.
  • [20] D. Halperin, M. Sharir, and O. Salzman. Algorithmic Motion Planning, chapter 50, pages 1311–1342. Chapman & Hall/CRC, 3rd edition, 2018. doi:10.1201/9781315119601.
  • [21] Sariel Har-Peled. Constructing approximate shortest path maps in three dimensions. SIAM J. Comput., 28(4):1182–1197, 1999. doi:10.1137/S0097539797325223.
  • [22] Juha Heinonen. Lectures on Analysis on Metric Spaces, volume 1 of Universitext. Springer New York, NY, 1 edition, 2001. doi:10.1007/978-1-4613-0131-8.
  • [23] John Hershberger and Subhash Suri. An optimal algorithm for Euclidean shortest paths in the plane. SIAM Journal on Computing, 28(6):2215–2256, 1999. doi:10.1137/S0097539795289604.
  • [24] J. E. Hopcroft, J. T. Schwartz, and M. Sharir. On the complexity of motion planning for multiple independent objects; PSPACE-hardness of the “warehouseman’s problem”. International Journal of Robotics Research, 3(4):76–88, 1984.
  • [25] Marek Karpinski, Michael Lampis, and Richard Schmied. New inapproximability bounds for TSP. Journal of Computer and System Sciences, 81(8):1665–1677, 2015. doi:10.1016/j.jcss.2015.06.003.
  • [26] Sándor Kisfaludi-Bak and Leonidas Theocharous. Realizing metric spaces with convex obstacles. arXiv:2509.14709, 2025. doi:10.48550/arXiv.2509.14709.
  • [27] Anna Lubiw and Anurag Murty Naredla. The Visibility Center of a Simple Polygon. In Petra Mutzel, Rasmus Pagh, and Grzegorz Herman, editors, 29th Annual European Symposium on Algorithms (ESA 2021), volume 204 of Leibniz International Proceedings in Informatics (LIPIcs), pages 65:1–65:14, Dagstuhl, Germany, 2021. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.ESA.2021.65.
  • [28] Joseph S. B. Mitchell. Shortest paths among obstacles in the plane. In Proceedings of the Ninth Annual Symposium on Computational Geometry, SCG ’93, pages 308–317, New York, NY, USA, 1993. Association for Computing Machinery. doi:10.1145/160985.161156.
  • [29] Joseph S. B. Mitchell. Approximating watchman routes. In Proceedings of the 2013 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 844–855, 2013. doi:10.1137/1.9781611973105.60.
  • [30] Joseph S. B. Mitchell and Christos H. Papadimitriou. The weighted region problem: finding shortest paths through a weighted planar subdivision. J. ACM, 38(1):18–73, January 1991. doi:10.1145/102782.102784.
  • [31] Joseph S. B. Mitchell and Micha Sharir. New results on shortest paths in three dimensions. In Proceedings of the 20th ACM Symposium on Computational Geometry, Brooklyn, New York, USA, June 8-11, 2004, pages 124–133. ACM, 2004. doi:10.1145/997817.997839.
  • [32] Eunjin Oh, Sang Won Bae, and Hee-Kap Ahn. Computing a geodesic two-center of points in a simple polygon. Computational Geometry, 82:45–59, 2019. doi:10.1016/j.comgeo.2019.04.003.
  • [33] Joseph O’Rourke. Art Gallery Theorems and Algorithms. Oxford University Press, Inc., New York, NY, USA, 1987.
  • [34] R. Pollack, M. Sharir, and G. Rote. Computing the geodesic center of a simple polygon. Discrete & Computational Geometry, 4(6):611–626, 1989. doi:10.1007/BF02187751.
  • [35] Christian Rieck and Christian Scheffer. The Dispersive Art Gallery Problem. In Sang Won Bae and Heejin Park, editors, 33rd International Symposium on Algorithms and Computation (ISAAC 2022), volume 248 of Leibniz International Proceedings in Informatics (LIPIcs), pages 67:1–67:18, Dagstuhl, Germany, 2022. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.ISAAC.2022.67.
  • [36] Jacob T Schwartz and Micha Sharir. On the "piano movers" problem. II. general techniques for computing topological properties of real algebraic manifolds. Advances in Applied Mathematics, 4(3):298–351, 1983. doi:10.1016/0196-8858(83)90014-3.
  • [37] Jacob T. Schwartz and Micha Sharir. On the piano movers’ problem: III. coordinating the motion of several independent bodies: The special case of circular bodies moving amidst polygonal barriers. The International Journal of Robotics Research, 2(3):46–75, 1983. doi:10.1177/027836498300200304.
  • [38] Micha Sharir and Amir Schorr. On shortest paths in polyhedral spaces. In Proceedings of the Sixteenth Annual ACM Symposium on Theory of Computing, STOC ’84, pages 144–153, New York, NY, USA, 1984. Association for Computing Machinery. doi:10.1145/800057.808676.
  • [39] G. T. Toussaint. An optimal algorithm for computing the relative convex hull of a set of points in a polygon. EURASIP, Signal Processing III: Theories Applications, Part 2, pages 853–856, 1986.
  • [40] Haitao Wang. Shortest paths among obstacles in the plane revisited. In Proceedings of the Thirty-Second Annual ACM-SIAM Symposium on Discrete Algorithms, SODA ’21, pages 810–821, USA, 2021. Society for Industrial and Applied Mathematics. doi:10.1137/1.9781611976465.51.
  • [41] Glenn E. Wangdahl, Stephen M. Pollock, and John B. Woodward. Minimum-trajectory pipe routing. Journal of Ship Research, 18(01):46–49, March 1974. doi:10.5957/jsr.1974.18.1.46.