Английская Википедия:Bottleneck traveling salesman problem

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

The Bottleneck traveling salesman problem (bottleneck TSP) is a problem in discrete or combinatorial optimization. The problem is to find the Hamiltonian cycle (visiting each node exactly once) in a weighted graph which minimizes the weight of the highest-weight edge of the cycle.[1] It was first formulated by Шаблон:Harvtxt with some additional constraints, and in its full generality by Шаблон:Harvtxt.[1][2][3]

Complexity

The problem is known to be NP-hard. The decision problem version of this, "for a given length Шаблон:Mvar is there a Hamiltonian cycle in a graph Шаблон:Mvar with no edge longer than Шаблон:Mvar?", is NP-complete. NP-completeness follows immediately by a reduction from the problem of finding a Hamiltonian cycle.[4]

Algorithms

Another reduction, from the bottleneck TSP to the usual TSP (where the goal is to minimize the sum of edge lengths), allows any algorithm for the usual TSP to also be used to solve the bottleneck TSP. If the edge weights of the bottleneck TSP are replaced by any other numbers that have the same relative order, then the bottleneck solution remains unchanged. If, in addition, each number in the sequence exceeds the sum of all smaller numbers, then the bottleneck solution will also equal the usual TSP solution. For instance, such a result may be attained by resetting each weight to Шаблон:Math where Шаблон:Mvar is the number of vertices in the graph and Шаблон:Mvar is the rank of the original weight of the edge in the sorted sequence of weights. For instance, following this transformation, the Held–Karp algorithm could be used to solve the bottleneck TSP in time Шаблон:Math.[1]

Alternatively, the problem can be solved by performing a binary search or sequential search for the smallest Шаблон:Mvar such that the subgraph of edges of weight at most Шаблон:Mvar has a Hamiltonian cycle. This method leads to solutions whose running time is only a logarithmic factor larger than the time to find a Hamiltonian cycle.[1]

Variations

In an asymmetric bottleneck TSP, there are cases where the weight from node A to B is different from the weight from B to A (e. g. travel time between two cities with a traffic jam in one direction).

The Euclidean bottleneck TSP, or planar bottleneck TSP, is the bottleneck TSP with the distance being the ordinary Euclidean distance. The problem still remains NP-hard. However, many heuristics work better for it than for other distance functions.

The maximum scatter traveling salesman problem is another variation of the traveling salesman problem in which the goal is to find a Hamiltonian cycle that maximizes the minimum edge length rather than minimizing the maximum length. Its applications include the analysis of medical images, and the scheduling of metalworking steps in aircraft manufacture to avoid heat buildup from steps that are nearby in both time and space. It can be translated into an instance of the bottleneck TSP problem by negating all edge lengths (or, to keep the results positive, subtracting them all from a large enough constant). However, although this transformation preserves the optimal solution, it does not preserve the quality of approximations to that solution.[1]

Metric approximation algorithm

If the graph is a metric space then there is an efficient approximation algorithm that finds a Hamiltonian cycle with maximum edge weight being no more than twice the optimum. This result follows by Fleischner's theorem, that the square of a 2-vertex-connected graph always contains a Hamiltonian cycle. It is easy to find a threshold value Шаблон:Mvar, the smallest value such that the edges of weight Шаблон:Mvar form a 2-connected graph. Then Шаблон:Mvar provides a valid lower bound on the bottleneck TSP weight, for the bottleneck TSP is itself a 2-connected graph and necessarily contains an edge of weight at least Шаблон:Mvar. However, the square of the subgraph of edges of weight at most Шаблон:Mvar is Hamiltonian. By the triangle inequality for metric spaces, its Hamiltonian cycle has edges of weight at most Шаблон:Math.[5][6]

This approximation ratio is best possible. For, any unweighted graph can be transformed into a metric space by setting its edge weights to Шаблон:Math and setting the distance between all nonadjacent pairs of vertices to Шаблон:Math. An approximation with ratio better than Шаблон:Math in this metric space could be used to determine whether the original graph contains a Hamiltonian cycle, an NP-complete problem.[6]

Without the assumption that the input is a metric space, no finite approximation ratio is possible.[1]

See also

References

Шаблон:Reflist