1 Introduction
Spanning tree problems have been studied throughout the history of combinatorial optimisation. They arise in a multitude of practical settings including computer and telecommunication networks, transportation, plumbing, and electrical circuit design [8]. In graph theoretic terms, a typical spanning tree problem involves finding a spanning subgraph of a given graph , where is connected and , such that is optimal with respect some objective function on the set of edges. There may also be additional constraints imposed on , such as constraints on maximum degree or maximum diameter of the tree. In this paper we will focus on geometric versions of the spanning tree problem, where the given graph will be a complete graph whose vertices lie in a normed vector space. Each edge in the graph will have an associated length given by the distance between the endpoints of the edge.
The most wellknown spanning tree problem is the minimum spanning tree (MST) problem, where the aim of this problem is to find a spanning tree such that the sum of the lengths of the edges of the tree is minimum. A similar problem is the bottleneck spanning tree problem, in which we require that the length of the longest edge in the tree is minimum. Both of these spanning tree problems can be solved efficiently using polynomial time algorithms (see Kruskal [10], Prim [16] for the MST problem, and Camerini [3] for the MBST problem). In fact every algorithm which solves the MST problem can be used to solve the MBST problem since every MST is a MBST.
In this paper, we focus on variants of the MST and MBST where we include constraints on the maximum degree of the spanning trees. In these variants we have an associated degree bound such that no vertex in the optimal spanning tree can have a degree which exceeds . We refer to these degreeconstrained versions of the MST and MBST problems as the MST problem and MBST problem respectively. The most general versions of the MST problem and MBST problems are NPhard for all [7]. When restricted to the Euclidean plane, both the MST and MBST problems can be solved in polynomial time when [13]. It has been shown that the MST problem in the Euclidean plane is NPhard when (see [15]), and (see [6]), and the MBST problem in the Euclidean plane is NPhard when and [1]. Approximation algorithms for the Euclidean MST problem have been developed by Khuller et al. [9] and Chan [4] and their approximation ratios for the MBST problem were explored in [1]
. The performances of various heuristic and approximation algorithm schemes for the Euclidean
MST and MBST problems were investigated in [2].Our results: We analyse the MBST problem in dimensional Euclidean space, which we denote as the E3MBST problem, and in dimensional rectilinear space, which we denote as the R3MBST problem. We show that the E3MBST and R3MBST problems are NPhard for and we provide inapproximability results for these cases. We describe new approximation algorithms that are simple extensions of the constant factor approximation algorithm of Khuller et al. to 3dimensional space. We then analyse the performance of these algorithms by attempting to find instances, through both analytic and experimental means, for which the algorithms perform at their worstcase accuracy. We also describe more sophisticated extensions of algorithm of Khuller et al., for which we provide similar analyses of performance.
2 Hadwiger Number
Let be a convex body in . The Hadwiger number [19] (also sometimes referred to in the literature as the kissing number) is the maximum number of mutually nonoverlapping translates of that can be arranged to touch . The strict Hadwiger number is defined similarly, with the further restriction that all the translates of are pairwise disjoint. For example, if is the unit disc in the Euclidean plane, it is known that and .
Let denote the degree of a vertex , and for a tree , let . For a finite set of points in a metric space, let , and let . For a metric space , let , i.e., is the maximum possible degree that any vertex in an MST of a set of points in can achieve. Similarly, let , i.e, is the smallest constant , such that any finite point set in has a spanning tree with maximum degree at most . For example, for the Euclidean plane, which we denote by , it is well known that and that [13], hence it can be seen that and . For any dimensional Minkowski space with unit ball , Cieslik [5] has shown that and Martini and Swanepoel [12] have shown that .
Since we are focusing on three dimensional Euclidean space, which we denote by , and three dimensional rectilinear space, which we denote by , we need only consider the Hadwiger numbers of the 3dimensional Euclidean unit sphere and the 3dimensional rectilinear unit octahedron . It is well known that , thus we can conclude that . A corollary of this is that any MST is a MST when , and that there exists a point set in for which all minimum spanning trees contain a vertex of degree 12. For example, let contain the origin and all vertices of a regular icosahedron centred at the origin, then will have a unique spanning tree in which the vertex at the origin has degree 12.
Let E3MST denote the MST problem in . Since we can find an MST in polynomial time, we can conclude the following.
Theorem 1.
The E3MST problem can be solved in polynomial time when .
3 Complexity of the E3MST Problem
In this section we present computational complexity results for the E3MBST and R3MBST problems for some specific cases of . Our results extend the complexity results for the E2MBST and R2MBST problems provided in [1] into three dimensions. The technique used in [1] was to transform results for the the MST problem in , which we refer to as the E2MST problem, into complexity results for the bottleneck version of the problem. In keeping with this method, we will first start with the complexity results for the E2MST problem and extend them to three dimensions before transforming the results into complexity proofs for the bottleneck version.
The E2MST problem is equivalent to the Euclidean Travelling Salesman Path problem, which is known to be NPhard [14],[7]. Papadimitriou and Vazirani [15] have proven that E2MST problem is NPhard for , and Francke and Hoffman [6] have proven that the problem is NPhard for . Thus the E2MST problem is NPhard for and hence the E3MST problem is NPhard for these values of since 2dimensional Euclidean space is a subset of 3dimensional Euclidean space. To extend the results to the next highest dimension, we will modify the grid graph approach of Papadimitriou and Vazirani.
We define a grid graph to be any finite connected vertexinduced subgraph of the infinite 2dimensional grid embedded in the plane so that the vertices are at integer coordinates and vertices are adjacent if and only if they have unit distance from each other. We have the following result used by Papadimitriou and Vazirani [15].
Theorem 2.
The Hamiltonian path problem for 2dimensional grid graphs with maximum degree 3 is NPcomplete.
By extending the approach used in [15], we can obtain the following result.
Theorem 3.
The 5E3MST problem is NPcomplete.
Proof.
Suppose we are given a connected grid graph with maximum degree 3, where we will assume that . Since is a grid graph, all its edges have unit length under the Euclidean metric. We perform a 2colouring of so that the vertex set is partitioned into a set of black vertices and white vertices such that (this is possible since grid graphs are bipartite). For each node , we add a “pseudo node” that is a small distance away from at direction leading towards missing neighbours of (there will always be such a direction since the degree of is at most , whereas the maximum degree in a grid graph is ). If is a black vertex, then we let be a distance of from and refer to these nodes as black lateral pseudo nodes; otherwise we let be a distance of from and refer to the nodes as white lateral pseudo nodes, where . Thus, any two black lateral pseudo nodes have distance of least from each other, any two white lateral pseudo nodes have distance of least from each other, and each black lateral pseudo node has a distance of at least from every white lateral pseudo node.
In addition to these pseudo nodes, we also add two pseudo nodes and to each vertex which we will add above and below , assuming the grid graph lies on the  plane in 3dimensional space. If is a black vertex, then we place directly above at a distance of away from and refer to it as a black upper pseudo node, and we place at a distance of directly below and refer to it as a black lower pseudo node, where . If is a white vertex, we place and directly above and below at a distance of from , where and . Observe that . Thus any two upper pseudo nodes have a distance of at least from one another (and similarly for lower pseudo nodes) and the distance between an upper pseudo node and a lower pseudo node is at least . Furthermore, the distance between a black upper (lower) pseudo node and a black lateral pseudo node is at least , and similarly, the distance between a white upper (lower) pseudo node and a white lateral pseudo node is at least .
Let be the set of pseudo nodes. Let and let and be the number of black and white lateral pseudo nodes respectively. Let be the number of white upper and lower pseudo nodes, and let be the number of black upper and lower pseudo nodes. We now show that has a Hamiltonian path if and only if there is a spanning tree on the set of points with a maximum degree of 5, such that , where denotes the sum of the lengths of the edges in . If has Hamiltonian path, then for each vertex , we can add the edges to the path, where are the lateral pseudo node, upper pseudo node, and lower pseudo node of respectively, to give a spanning tree with a maximum degree of 5, and with weight . Conversely, suppose that we have a spanning tree on the points with a maximum degree of 5, and with weight . Note that the only edges whose lengths are strictly less than 1 are edges between the vertices in and their respective pseudo nodes in . Since the only edges of unit length are those between adjacent vertices in , and since all other edges have lengths strictly greater than 1, we can conclude that consists only of the edges from and the edges between the points and their respective pseudo nodes in , since the total weight of these edges is and these are the shortest edges. In this case, we can remove the edges from and we are left with a Hamiltonian path in . Thus, there is a spanning tree on the set of points with a maximum degree of 5, where if and only if has a Hamiltonian path. This completes the proof.
∎
We can now use this result to establish complexity results for the bottleneck version of the problem. It has already been shown that the E2MBST and E2MBST problems are NPcomplete [1], hence it follows immediately that the E3MBST and E3MBST problems are NPcomplete as well. The proof of the previous theorem implies the following results.
Theorem 4.
The 5E3MBST problem is NPcomplete.
Proof.
Given a grid graph , perform the same construction with pseudo nodes as in the proof of Theorem 3 to obtain the point set . We claim that has a spanning tree of maximum degree 5 whose longest edge is of unit length if and only has a Hamiltonian path. If has a Hamiltonian path, then this path is a tree with a bottleneck value of 1. We can then add the edges between nodes and their respective pseudo nodes to extend the tree to a spanning tree. This will produce a spanning tree with a maximum degree of 5 and a bottleneck value of 1, since none of the edges between nodes and their respective pseudo nodes have a length greater than 1. Now suppose that has a spanning tree with maximum degree 5 and unit bottleneck value. Note that the only edges whose lengths are strictly less than 1 are those between nodes and their respective pseudo nodes. All edges of unit length are between adjacent nodes in . Hence we can conclude that consists of edges of and edges between nodes and their respective pseudo nodes. If we remove the edges for each node , then the resultant tree we are left with is a Hamiltonian path for . Hence the result is proven. ∎
Theorem 5.
The 4E3MBST problem is NPcomplete.
Proof.
This proof is the same as the proof of Theorem 4, only we add 2 pseudo nodes to each node of instead of 3; a lateral pseudo node and an upper pseudo node. Hence, adding the edges to a Hamiltonian path of produces a spanning tree of maximum degree 4 instead of 5. ∎
As was the case for the complexity result for the E2MBST in [1], we can also establish inapproximability results as a corollary.
Corollary 1.
For , the E3MBST problem cannot be approximated in polynomial time within a constant factor less than unless P=NP.
Proof.
The arguments for the case in which are the same for when (we simply remove the lower pseudo nodes when ), so we will assume for simplicity that . Suppose we had an algorithm that could approximate the problem within a constant factor in polynomial time. This means that if we were given an instance of the problem whose optimal bottleneck length is , then if we performed on the same instance, it would yield a solution with a bottleneck value no worse than .
If we applied on set of points that we constructed in the proof of Theorem 4, with feasible values for , then the algorithm would return a value . Let , , , and , where and were chosen so as to make certain distances between pairs of pseudo nodes approximately equal.
Note that the distance between any two black lateral pseudo nodes is at least
the distance between any white lateral pseudo node and any black lateral pseudo node is at least
and the distance between a white lateral pseudo node and an original black node is at least
In addition, the distance between an upper (lower) black pseudo node and a lateral black pseudo node is at least
the distance between an upper (lower) white pseudo node and a lateral white pseudo node is at least
and the distance between an upper (lower) black pseudo node and an upper (lower) white pseudo node is at least
Hence, if , then must equal since no pair of points in have a distance that lies in the open interval . Hence, if , we could use our approximation algorithm to determine if has a Hamiltonian path in polynomial time. Thus if P NP, we must have . ∎
We also consider the complexity of the rectilinear version of the problem. As in the case of the Euclidean version, it has already been shown that the R2MBST and R2MBST problems are NPcomplete [1], hence it follows that the R3MBST and R3MBST problems are NPcomplete. To establish complexity results for the cases in which is equal to and , we can use the same approach as in the Euclidean versions.
Theorem 6.
The R3MBST problem is NPcomplete for . Furthermore, the problem cannot be approximated in polynomial time within a constant factor less than unless P=NP.
Proof.
Once again, we will just consider the case since the arguments for the case are identical, with the exception of not using lower pseudo nodes. Given a grid graph , perform the same construction with pseudo nodes as in the proof of Theorem 4 to obtain the point set . However, this time we will set , , , , where is some arbitrarily small number, no bigger than say 0.01.
Now note that the distance between any two black lateral pseudo nodes is at least
the distance between any white lateral pseudo node and any black lateral pseudo node is at least
and the distance between a white lateral pseudo node and an original black node is at least
In addition, the distance between an upper (lower) black pseudo node and a lateral black pseudo node is at least
the distance between an upper (lower) white pseudo node and a lateral white pseudo node is at least
and the distance between an upper (lower) black pseudo node and an upper (lower) white pseudo node is at least
Hence, we can use the arguments of Theorem 4 to conclude that the problem is NPcomplete. Furthermore, suppose we had an algorithm that could approximate the problem within a constant factor in polynomial time, and that returned a value of when given the set of constructed points as input. If , then must equal since no pair of points in have a distance that lies in the open interval . Hence, if , then for a sufficiently small choice of , we could use our approximation algorithm to determine if has a Hamiltonian path in polynomial time. Thus if P NP, we must have .
∎
Since grid graphs have a maximum degree of 6, we cannot extend this pseudo node approach to higher values of without significant alterations to the structure of the proof. It is possible that the approach of Francke and Hoffman [6] may be extended to three dimensions, however it is an open problem of how to convert their minsum result into a bottleneck result.
4 Approximation Algorithms for the E3MBST Problem
In this section we describe ways of extending Khuller, Raghavachari, and Young’s algorithm for the 3EMST [9], which we will refer to as the KRY algorithm, to algorithms for the E3MBST problem.
The KRY algorithm, presented here as Algorithm 1, starts with a rooted MST for the input point set in the Euclidean plane, which it proceeds to process recursively, performing local edge swaps whenever the current root node has a degree exceeding . The edge swaps themselves are applied in the following manner. If is the current root of with children , then the edges are replaced by a path through the vertices . The algorithm is then applied recursively to each of the subtrees rooted at in turn, which we denote by respectively. See Figure 1 for an illustration. The edges from the root node to the children are replaced by a path through the children starting at , however this path may not be unique. To adapt this algorithm to the MBST problem, we will assume that the paths chosen are those that minimise the length of the longest edge in the path.
Input: A rooted tree over a point set with root and a partially built  
solution .  
if has at least one child  
Let the children of be , where is the number of children of ,  
such that is minimum if .  
Add the edge to  
Perform Algorithm 1 with as input.  
if  
for  
Add the edge to  
Perform Algorithm 1 with as input.  
Output: . 
It has been shown in [1] that Algorithm 1 is a 2factor approximation algorithm for the 3MBST problem in arbitrary metric spaces, hence we can conclude that it is a 2factor approximation algorithm for the E3MBST Problem. One can see that this bound is tight when given an MST such as that of Figure 2, which is an MST with a maximum degree of 4 in which all edges are of equal length. In this MST, no matter which vertex is chosen as the initial root vertex, the algorithm will arrive at a local subtree with two children in which the root vertex and its children and are collinear, with between and . In this situation, the algorithm will swap in the edge whose length is equal to the sum of the lengths of and , i.e., twice the bottleneck length.
As it stands, this algorithm is only suited to the MBST problem when since it cannot guarantee a resultant tree whose maximum degree is at most 2, and it will always produce a tree whose maximum degree is at most 3, even if our degree bound allows for larger degrees.
There are multiple ways one could extend the approach of the KRY algorithm to higher values of . The simplest of these ways is merely to change the minimum number of children a given root vertex must have before an edge swap must take place, whilst maintaining the current form of the edge swaps, i.e., creating a path through the children. Currently, a root vertex must have at least two children, and , before
an edge swap takes place (i.e., replaces either or ). In this way, the resultant tree is guaranteed to have a maximum degree of no more than 3. If we relax this condition so that the edge swaps are only performed when the current root node has a degree of or higher, then the tree output by the algorithm will have a maximum degree of no more than . We refer to such an algorithm as the naive KRY algorithm for the MBST, or NKRY for short. Here the term naive refers to the choice of always using a path through the children as the edge swaps, which results in the root vertex having a degree no more than 3 as per the original KRY algorithm, even though we are allowed to have vertices of higher degree. In this way, the usual KRY algorithm is the NKRY algorithm. We describe the NKRY algorithm in Algorithm 2.
Input: A rooted tree over a point set with root and a partially built  
solution .  
if has at least one child  
Let the children of be , where is the number of children of ,  
such that is minimum if .  
Add the edge to  
Perform Algorithm 2 with as input.  
if  
for  
Add the edge to  
Perform Algorithm 2 with as input.  
Output: . 
4.1 Performance Ratio of the KRY Algorithm
In order to analyse the worst case performance ratio of the NKRY algorithm for the E3MBST problem, we wish to characterise the instances in for which the algorithm yields the worst performance. Since the NKRY algorithm uses local edge swaps and does not swap out edges that were swapped in at an earlier stage of the algorithm, we need only characterise instances which yield the worst performance in a single iteration of the algorithm, where an iteration involves edge swaps incident to a given root node. In other words, we need only find a star which gives the worst performance for the algorithm, where a star is an MST that contains only a single root vertex and its children.
Let be a set of points in . Let be an MST of rooted at a vertex , and let be the children of , where . In this way, we can think of and its children as a star with as the centre vertex. Due to the geometry of the MST in , the arrangement of points in such a star can be seen to have a particular structure, which we will illustrate below.
Consider the convex hull of the vertices of the star. It was shown in [9] that when , the convex hull of would contain each of the children on its boundary ( may or may not be an interior point of the convex hull depending on the arrangement of the star). This fact is a consequence of the following result given in [9].
Lemma 1.
Let and be two edges incident to a point in an MST of a set of points in . Then

,

.
We now use the previous lemma to extend the result about convex hulls to higher dimensions.
Lemma 2.
Let be an MST of a set of points in . Let be the root of and let be the children of . Then the convex hull of contains every point in on its boundary.
Proof.
The statement is trivially true when , so we will assume that . In order to treat the points as vectors, we will also assume that the points have been translated so that lies at the origin in . Let be the convex hull of . Suppose there exists a point in that lies in the interior of . Let be the unique point on the boundary of that is obtained by scaling in the positive direction. Clearly by Lemma 1 considering the edges and . Let be two points in such that and all lie on the same facet of . Let and .
Let be the unique plane which passes through and . Let be the projection of onto , an let be the projection of onto . Hence are coplanar, and are collinear. The polygon on given by will be a triangle, and the polygon on defined will be nonconvex (see Figure 3). In particular, the interior angle of in the nonconvex polygon will be greater than . Since this angle is also the sum of the angles given by and , this implies that one of the angles is greater than or equal to . However, we have that and since is a projection of onto the plane defined by and . Hence one of the angles is greater than or equal to , which contradicts Lemma 1.
∎
To simplify the analyses of our algorithms, we will only consider the cases in which the children of a given root vertex are all equidistant from . We are able to restrict our cases to this specification since the ratios obtained under this assumption are an upper bound to the ratios that would be obtained otherwise. This is due to the following lemma.
Lemma 3.
Let , and be the lengths of edges of a triangle with , and the angle between the sides of and is . If and are fixed, and if the rule must be maintained, then is maximised when .
Proof.
Using the cosine rule,
Using calculus, we can see that the function is convex so the maximum value of the function will occur at either or , assuming . We have that and . If we have that , then
which is a contradiction since . Hence is maximised when . ∎
Let be a set of vertices in a metric space and let . We define the optimal bottleneck TSPpath through starting at as the path such that visits all vertices of , is an endpoint of , and the length of the longest edge of is minimum, and we let denote the length of the longest edge in . Also for simplicity, we will say that a star is valid if it does not contain a pair of children that form an angle less than with the root vertex. In order to justify our assumption that the children are equidistant from the root vertex in the worst case, we apply Lemma 3 in the following theorem.
Theorem 7.
Let be a valid star with root vertex and children . Let be the maximum distance for and let be the optimal bottleneck TSPpath through that starts at . Then there exists a valid star with root vertex and children such that for , and .
Proof.
Let be the children of , where , and let be the optimal bottleneck TSPpath starting as defined in the theorem. If not all children are equidistant from , then there exists one or more children of distance from , and there exists one or more children whose distances from are strictly less than . Let be the set of children whose radial distances from are . Let be maximum radial distance of any child such that , i.e., is the second largest radial distance, and let be the set of children whose radial distances are . Let be the set of remaining children that are in neither nor . Simultaneously scale all radial distances of all the vertices in so that their radial distances become and let be the optimal bottleneck TSPpath for this modified set of children. We claim that the longest edge in is no shorter than the longest edge in . To see this, first note that for any pair of vertices where and , the radial distances of the vertices in were strictly greater than those in before the scaling, so by the cosine rule, will increase after the scaling. Also, for any pair of vertices where and , Lemma 3 implies that will not decrease after the scaling. Since the distances between all other pairs of vertices will either remain the same or increase, we can conclude that it is impossible for to have a bottleneck length strictly less than that of without contradicting the optimality of . By repeating this process, we can conclude that if we scale the radial distances of all children so that they were of distance from , then the optimal bottleneck TSPpath through and all the children in this scaled set, where starts at , would have a bottleneck value that was greater than or equal to that of . ∎
Therorem 7 can be used to restrict the types of instances that need to be considered when attempting to find an instance for which the algorithm yields a large performance ratio. Given a value for , in order to obtain a lower bound for the approximation factor for the NKRY algorithm in three dimensions, we would need only find a way of arranging points on the surface of a unit sphere, where no pair of points produces an angle less than with the centre of the sphere, such that the value of the solution to the Euclidean bottleneck TSPpath problem for the points is maximised. The bottleneck value of this path will give the lower bound for the worst case performance ratio. In this way, we will attempt to produce stars that yield the worst possible performance ratio for the algorithm, where the center of the sphere is the root vertex and the children are the points on the surface of the sphere. For the remainder of this section, we aim to find these worst case arrangements of points on the sphere for the various values of as these would provide lower bounds for the worst case performance of the NKRY algorithm.
4.2 Worst Case Ratio for the NKRY Algorithm (2 Children)
As mentioned previously, it is known that the NKRY algorithm is a 2factor approximation algorithm in any metric space. The arrangement of points on the surface of a unit sphere that produces this result is the arrangement in which the two children are polar opposite, as seen in Figure 4. Thus, given a root vertex at the centre of a unit sphere with two children at opposite poles of the sphere, the KRY algorithm will replace one of the unit radii between the root and a child with the diameter length edge between the two children, hence we will obtain a performance ratio of 2 for this star. Note that it is not possible to position two points on the surface of a unit sphere so that the distance between the points is larger than 2.
4.3 Worst Case Ratio for the NKRY Algorithm (3 Children)
To analyse this algorithm, we aim to find an arrangement of 3 points on the surface of the unit sphere such that minimum bottleneck value of all paths through these 3 vertices is maximised, where no pair of vertices produce an angle less than with the centre (i.e., every vertex has a distance of least 1 from every other vertex). We find such an arrangement in the following theorem.
Theorem 8.
The NKRY algorithm has an approximation factor of at least 1.931 for the E3MBST problem.
Proof.
Suppose we had an arrangement of 3 points as described above. Let be a path through the vertices that gives the minimum bottleneck value. Let be a point on this sphere that is incident to a longest edge in . We will assume without loss of generality that is on the north pole of the sphere. Let and be the remaining vertices. Then the bottleneck edge of is the smaller of the two edges and . Observe that and must be equidistant from , since if this were not the case, we could rotate and around the surface of the sphere, in the direction of the arc between and , so that the smaller of and is increased whilst keeping the length of fixed, which contradicts the maximality of the arrangement. Hence we conclude that . These lengths are maximised when and lie on a common circle of radius 1 which will contain the south pole. Hence and are maximised when and are as close together as possible on the southern part the circle, i.e., . Figure 5 shows the worst case arrangement for which one can use trigonometry to establish that the bottleneck length of the path is . Hence we conclude that NKRY algorithm has an approximation factor of at least 1.931 for the E3MBST problem.
∎
4.4 Worst Case Ratio for the NKRY Algorithm (4 Children)
Analysing the worst case arrangement of 4 points is slightly more difficult than with 3 points as there are more cases to consider. The details are presented in the following theorem.
Theorem 9.
The NKRY algorithm has an approximation factor of at least 1.906 for the E3MBST problem.
Proof.
As in the proof of Theorem 8, we assume we have a set of points that are in an arrangement such that the bottleneck value of the minimum bottleneck path through the points is maximised. Let be a vertex on the north pole incident to the bottleneck edge, and let be the remaining vertices. First, consider the case where is an endpoint of . Intuition would suggest that and are on the surface of the southern hemisphere as far away from as possible. Consider the plane containing and . If is also on this plane, then and are cocircular and we can use similar arguments to those of the previous section to justify the possible arrangement of points as in Figure 6 with a minimum bottleneck value of , where is on the south pole with a distance of 1 from and which are either side of .
If is not coplanar with and , then consider the geodesic triangle of and formed by the geodesics between the vertices on the surface of the sphere. If the south pole does not lie in the interior or boundary of the triangle, then we could rotate the triangle around the sphere towards the south pole to increase the distance between and all other points, contradicting the maximality of the arrangement. If and are colinear on the surface of the sphere, then we can use similar arguments as in the previous section to arrive at the possible arrangement in Figure 6. Assume that and are not colinear so that the geodesic triangle of and on the surface of the sphere has nonzero area and assume that the south pole lies in the triangle’s interior. If any single point of the triangle can be moved towards the centre whilst keeping the other points fixed, then such a move would not decrease the minimum bottleneck value of the arrangement, so we will assume that the vertices are too close together to allow such a movement. Hence there is vertex of the triangle that is of unit distance from the other two vertices in the triangle, and so the bottleneck edge will be between and its closest neighbour in the triangle. If the plane containing and is not parallel to the tangent plane to the sphere at , then it would be possible to rotate the triangle around the surface of the sphere in such a way as to increase the distance between and its nearest neighbour, which is a contradiction. The only possibility for this arrangement is with the triangle being equilateral with the south pole at its centre, shown in Figure 7. This yields a bottleneck value of approximately 1.906.
Finally, we will consider the case that is not an endpoint of the path and that it is also incident to an edge of the path whose length is strictly less than the bottleneck value. Let the path be . Due to symmetry, we also assume that the length of is less than the bottleneck value, otherwise we could use similar reasoning to the previous case. In this way we can partition the vertices into sets with the bottleneck edge going between sets. Since both and are less than the bottleneck value, the length of the bottleneck edge is the minimum distance between the two sets. Hence the two sets must be as far from one another as possible and the maximum distance will occur when the edges and are parallel and when . The optimal arrangement in this case is given by Figure 8 and has a minimum bottleneck value of .
Thus the arrangement that gives the maximum bottleneck value for the optimal bottleneck path is the one in which the vertices form a pyramid with an equilateral triangle base and we conclude that approximation factor of the NKRY algorithm for the E3MBST problem is at least 1.906. ∎
4.5 Worst Case Ratio for the NKRY Algorithm for
For the cases with 5 or more children, we will not use analytic techniques to establish proofs of the worst case ratios of the NKRY algorithm due to the complexity of the problem. Instead, we opt for computer search techniques in order find configurations of points experimentally. Whilst the numbers we obtain through our experiments are not confirmed analytically as absolute worst case ratios, they provide us with lower bounds for the worst case performances of the algorithm. For the cases with 6,7 and 8 children, our experimental results seem to suggest that the worst case configurations of points occur when the points are arranged in certain easily describable symmetric geometric patterns. We refer to these arrangements as representatives.
For 5 children, our representative was a square pyramid with the apex of the pyramid on the north pole of the sphere and the base of the pyramid having unit side length, where the vertices of the base are on the surface of the southern hemisphere (see Figure 9). When we calculate the length of the bottleneck edge, which in this case is any the edge between the apex and a vertex of the base of the pyramid, we find that the length is approximately . Hence a lower bound for the worstcase approximation ratio of the NKRY Algorithm is .
Similarly, for 6 children, the computer search yielded a representative in the form of a pentagonal pyramid whose base has unit side length (see Figure 10). In this case, the bottleneck edge has an approximate length of .
Finally, for 7 children, our representative is the pentagonal bipyramid whose apices are on diametrically opposite poles of the sphere, i.e., north and south pole. The other 5 vertices form a regular pentagon with a side length of approximately 1.018 and each of the five vertices is unit distance away from the south pole apex (see Figure 11). The bottleneck length in this case is the length of an edge from the north pole apex to any one of the 5 vertices of the pentagon, which is calculated to be .
4.6 Worst Case Ratio for the NKRY Algorithm for
For the cases with 8 or more children, we were unable to obtain configurations through our computer search that approach known geometric patterns, as was the case for the previous examples. As such, we will simply present the best configurations, i.e., the configurations of children on the surface of a unit sphere with centre that yielded that largest value for , that were obtained after several searches. We do not claim that these configurations are the true worstcase configurations, in fact the likelihood of the computer search producing a solution that is suboptimal seems to increase as the number of points increase, due to additional local optima. However, our outputs are useful for obtaining lower bounds as well as potentially giving insight into the geometric structure of the true worstcase configuration.
For 8 children we were able to obtain a bottleneck value of approximately , using the point set given in Table 1. This point arrangement could best be described as a single point on one pole, five points almost arranged in a pentagonal shape in the opposite hemisphere, with the remaining two points situated close to the opposite pole. A plot of the point set is given in Figure 12.
0.43706  0.25681  0.86199 
0.19162  0.96778  0.16333 
0.76029  0.64488  0.078046 
0.53892  0.037955  0.8415 
0.57761  0.67051  0.4656 
0.43604  0.82836  0.35169 
0.97339  0.22864  0.015302 
0.082855  0.20074  0.97613 
For 9 children, we obtained a point set with a bottleneck value of approximately , using the point set given in Table 2. This configuration could best be described as a point on one pole, 5 points in an almost pentagonal shape near the equator and 3 points forming a triangle around the opposite pole. A plot of the point set is given in Figure 13.
0.0016014  0.14111  0.98999 
0.13233  0.79515  0.59181 
0.77068  0.33782  0.5403 
0.87494  0.24761  0.41615 
0.61366  0.717670  0.3292 
0.11711  0.94182  0.31506 
0.83887  0.069402  0.53988 
0.43883  0.84718  0.29953 
0.87953  0.055801  0.47256 
Finally, for 10 children, we obtained a point set with a bottleneck value of approximately , using the point set given in Table 3. This configuration could best be described as a point on one pole, 6 points in an almost hexagonal shape near the equator and 3 points forming a triangle around the opposite pole. A plot of the point set is given in Figure 14.
0.9707  0.015168  0.23983 
0.5  0.86603  0 
0.49562  0.85955  0.12461 
0.98247  0  0.1864 
0.5  0.86603  0 
0.49986  0.86579  0.023435 
0.68647  0.13024  0.7154 
0.24313  0.55298  0.79693 
0.10477  0.4889  0.86603 
0.12718  0.084591  0.98827 
The point sets we have obtained, both analytically and experimentally, seem to suggest that as the number of children increases, the length of the bottleneck edge in a worstcase arrangement of the children decreases. We believe that this is case, and hence we make the following conjecture.
Conjecture 1.
Let be a root vertex with children , where such that angles between children with respect to are at least and the radial distances of all children are equal to 1. Let be the optimal bottleneck path that starts at and visits all children and suppose that are placed so as to maximise the bottleneck length of .
Also let be a root vertex with children , such that angles between children with respect to are at least and the radial distances of all children are equal to 1. Let be the optimal bottleneck path that starts at and visits all children and suppose that are placed so as to maximise the bottleneck length of .
Then .
If Conjecture 1 were true, then it would imply that the star for which NKRY algorithm gives the worst performance will have children, since the algorithm does not perform edge swaps when the root node has or fewer children. Hence, the stars that were proven analytically to be the worst case arrangements, namely the stars with 2, 3 and 4 children, would yield upper bounds for the performance ratios of the NKRY algorithm. This would in turn yield exact values for the performance ratios of the NKRY and NKRY algorithms (since the performance ratio of the NKRY algorithm has already been shown), and we could use the worstcase arrangement of children on the unit sphere, for any , to give an upper bound for the performance ratio of the NKRY algorithm for all .
The statement of Conjecture 1 seems somewhat intuitive; the more children the root node has, the less space we have in which to spread children out from one another. Furthermore, all of our experimentation thus far seems to agree with this observation. However, we have been unable to establish a rigorous proof of Conjecture 1 due to the difficulty of the bottleneck TSPpath problem and the lack of assumptions that can be made in regards to how the optimal path changes when local changes are applied.
4.7 A More General Adaptation of the KRY Algorithm for the E3MBST Problem
In the previous section, we considered the naive KRY algorithm as a generalisation of the KRY algorithm. Whilst the NKRY is a relatively simple generalisation, this simplicity may come at the cost of accuracy, as the NKRY algorithm has the tendency to reduce the degrees further than what is necessary. For instance, consider the NKRY algorithm. This algorithm will perform edge swaps whenever the root node has a degree of 7 or more. However, after the edge swap, the node will have a degree of at most 3 in the final tree, due to the edge swap being a path from the root node through its children.
To address this issue, we propose the a more sophisticated generalisation of the KRY algorithm, namely the partition KRY algorithm for the E3MBST problem, or PKRY for short. The PKRY algorithm is similar to the NKRY in that it recursively performs edge swaps with respect to nodes of a rooted MST if the degree of the current root node is strictly greater than . The difference between this partition version and the naive version of the KRY algorithm is in the search space of possible edge swaps. For a given root node, the NKRY algorithm only considers edge swaps which result in a path starting at the root node and passing through all children. Of the potential paths, it chooses the optimal bottleneck TSP path. The partition version however, may consider paths but can also consider other sets of edges which depend on certain partitionings of the children of the current root node. The parameter indicates the number of sets we will partition the children into, and therefore we will find that in order for the degree constraint to be satisfied.
Given a current root node with children PKRY considers all possible partitions of children into sets. For a given partition, the chosen edge swap consists of the union of minimum bottleneck TSPpaths that start at the root node and visit all nodes in a single partition. For example, if our root node is , and the partition of children is (), then the edges after the edge swap could consist of (we would replace by or by if it reduced the length of the longest edge). See Figure 15 for an illustration of this example. Note that no node in the resultant subtree other than the root will have a degree of more than 2. The algorithm searches through all the possible partitions that use sets and chooses the one that results in edge swaps where the longest edge swapped in is minimum. As such, if an edge swap was performed with respect to a root node, the largest degree that the root node can have in the final tree is . We present the PKRY algorithm as Algorithm 3.
Input: A rooted tree over a point set with root and a partially built  
solution .  
if has at least one child  
Let the children of be , where is the number of children of .  
if ,  
For each partition of into subsets,  
Let be the th subset of .  
Let be the optimal bottneck TSPpath through starting at .  
Let , where denotes the length of the longest  
edge in .  
Choose the partition such that is minimum.  
For ,  
Add the edges of to .  
else  
Add each edge to , where .  
Perform Algorithm 3 with as input for , where denotes  
the subtree rooted at .  
Output: . 
Note that the NKRY algorithm is the same as the PKRY algorithm since it only ever considers the partition of children into a single set. One can also observe that the algorithm improves in performance as increases, a fact which we make explicit in the following lemma.
Lemma 4.
Given a point set , the length of the longest edge in the output tree of PKRY applied to is an upper bound for the length of the longest edge in the output tree of PKRY applied to , where and .
Proof.
Consider a root node in the rooted MST for such that PKRY will employ local edge swaps with respect to . This means that the number of children of is at least , a number which is strictly greater than . Hence, whichever edges PKRY chooses to swap in or out, we can guarantee that there will exist a path starting at through two or more children of after the swaps. Choose such a path and remove the endpoint that was not , say , by deleting the edge between and its neighbour in the path, which we will denote . Since is now isolated, add the edge to complete the subtree. This new subtree is a feasible output of the PKRY algorithm since it uses partitions (the newly created set in the partition is ). Additionally, the new subtree cannot have a greater bottleneck value than the previous subtree since this would imply that , which contradicts the optimality of the original MST. Thus the result is proven. ∎
An obvious drawback of the PKRY algorithm is the size of the search space. Whilst the sizes of the search space are always technically bounded above by a constant since the degrees of vertices in an E3MST are bounded above by a constant, they can be considerably large. This is because the sizes of our search spaces are Stirling numbers of the second kind which grow exponentially in the number of children. For instance, the number of ways of partitioning children into sets is the Stirling number which is equal to . For the PKRY algorithm to be implemented in a practical setting, an appropriate value of should be chosen that balances both the need for accuracy and the need for time efficiency.
4.8 Performance Ratio of the PKRY Algorithm
As in the previous subsections, we wish to perform some analysis of the worst case point arrangements for the PKRY algorithm. Once again we need only consider the worstcase local arrangement of children around a root vertex due to recursive nature of this bottleneck algorithm. In addition, Theorem 7 still applies and we can once again assume that the worst case arrangement occurs when the children are arranged on the surface of the unit sphere. However unlike previously, we will not consider all possible values of . This is because the large search spaces present when result in our computational experimentation being inefficient in both computation time and in accuracy. Similarly, we will not be considering all possible values of . When and we perform a swap with respect to a partition of children (hence , since violates the upper bound for and we would not perform the swap for ), we have the following result.
Theorem 10.
The largest possible bottleneck increase resulting from edge swaps with respect to a root node with 3 children for the PKRY algorithm is a factor of .
Proof.
Let be the root node with children
Comments
There are no comments yet.