In computational geometry, a bitonic tour of a set of point sites in the Euclidean plane is a closed polygonal chain that has each site as one of its vertices, such that any vertical line crosses the chain at most twice.
Optimal bitonic tours
The optimal bitonic tour is a bitonic tour of minimum total length. It is a standard exercise in dynamic programming to devise a polynomial time algorithm that constructs the optimal bitonic tour.[1][2] Although the usual method for solving it in this way takes time , a faster algorithm with time is known.[3]
The problem of constructing optimal bitonic tours is often credited to Jon L. Bentley, who published in 1990 an experimental comparison of many heuristics for the traveling salesman problem;[4] however, Bentley's experiments do not include bitonic tours. The first publication that describes the bitonic tour problem appears to be a different 1990 publication, the first edition of the textbook Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, and Ron Rivest, which lists Bentley as the originator of the problem.
Properties
The optimal bitonic tour has no self-crossings, because any two edges that cross can be replaced by an uncrossed pair of edges with shorter total length due to the triangle inequality. Therefore, it forms a polygonalization of the input.
When compared to other tours that might not be bitonic, the optimal bitonic tour is the one that minimizes the total amount of horizontal motion, with ties broken by Euclidean distance.[5]
For points in the plane with distinct integer -coordinates and with real-number -coordinates that lie within an interval of length or less, the optimal bitonic tour is an optimal traveling salesperson tour.[6]
Other optimization criteria
The same dynamic programming algorithm that finds the optimal bitonic tour may be used to solve other variants of the traveling salesman problem that minimize lexicographic combinations of motion in a fixed number of coordinate directions.[5]
At the 5th International Olympiad in Informatics, in Mendoza, Argentina in 1993, one of the contest problems involved bitonic tours: the contestants were to devise an algorithm that took as input a set of sites and a collection of allowed edges between sites and construct a bitonic tour using those edges that included as many sites as possible. As with the optimal bitonic tour, this problem may be solved by dynamic programming.[7][8]
References
- ↑ Introduction to Algorithms, 3rd ed., T. H. Cormen, C. E. Leiserson, R. Rivest, and C. Stein, MIT Press, 2009. Problem 15-3, p. 405.
- ↑ Bird, Richard S.; De Moor, Oege (1997), The Algebra of Programming, Prentice Hall, p. 213, ISBN 9780135072455.
- ↑ de Berg, Mark; Buchin, Kevin; Jansen, Bart M. P.; Woeginger, Gerhard (2016), "Fine-Grained Complexity Analysis of Two Classic TSP Variants", in Chatzigiannakis, Ioannis; Mitzenmacher, Michael; Rabani, Yuval; Sangiorgi, Davide (eds.), 43rd International Colloquium on Automata, Languages, and Programming (ICALP 2016), Leibniz International Proceedings in Informatics (LIPIcs), vol. 55, Dagstuhl, Germany: Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, pp. 5:1–5:14, doi:10.4230/LIPIcs.ICALP.2016.5, ISBN 978-3-95977-013-2
- ↑ Bentley, Jon L. (1990), "Experiments on traveling salesman heuristics", Proc. 1st ACM-SIAM Symp. Discrete Algorithms (SODA), pp. 91–99, ISBN 9780898712513.
- 1 2 Sourd, Francis (2010), "Lexicographically minimizing axial motions for the Euclidean TSP", Journal of Combinatorial Optimization, 19 (1): 1–15, doi:10.1007/s10878-008-9154-0, MR 2579501, S2CID 42168298.
- ↑ Alkema, Henk; de Berg, Mark; Kisfaludi-Bak, Sándor (2020), "Euclidean TSP in Narrow Strips", in Cabello, Sergio; Chen, Danny Z. (eds.), 36th International Symposium on Computational Geometry (SoCG 2020), Leibniz International Proceedings in Informatics (LIPIcs), vol. 164, Dagstuhl, Germany: Schloss Dagstuhl–Leibniz-Zentrum für Informatik, pp. 4:1–4:16, doi:10.4230/LIPIcs.SoCG.2020.4, ISBN 978-3-95977-143-6, S2CID 219554488
- ↑ IOI'93 contest problems and report.
- ↑ Guerreiro, Pedro (December 2003), The Canadian Airline Problem and the Bitonic Tour: Is This Dynamic Programming?, Departamento de Informática, Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa.