The capacity-C torch problem

Backhouse, Roland and Truong, Tan Minh (2015) The capacity-C torch problem. Science of Computer Programming, 102 . pp. 76-107. ISSN 0167-6423

PDF - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
Available under Licence Creative Commons Attribution Non-commercial No Derivatives.
Download (326kB) | Preview


The torch problem (also known as the bridge problem or the flashlight problem) is about getting a number of people across a bridge as quickly as possible under certain constraints. Although a very simply stated problem, the solution is surprisingly non-trivial. The case in which there are just four people and the capacity of the bridge is two is a well-known puzzle, widely publicised on the internet. We consider the general problem where the number of people, their individual crossing times and the capacity of the bridge are all input parameters. We present two methods to determine the shortest total crossing time: the first expresses the problem as an integer-programming problem that can be solved by a standard linear-programming package, and the second expresses the problem as a shortest-path problem in an acyclic directed graph, i.e. a dynamic-programming solution. The complexity of the integer-programming solution is difficult to predict; its main purpose is to act as an independent test of the correctness of the results returned by the second solution method. The dynamic-programming solution has best- and worst-case time complexity proportional to the square of the number of people. An empirical comparison of the efficiency of both methods is also presented. This manuscript has been accepted for publication in Science of Computer Programming. The manuscript has undergone copyediting, typesetting, and review of the resulting proof before being published in its final form. Please note that during the production process errors may have been discovered which could affect the content, and all disclaimers that apply to the journal apply to this manuscript.

Item Type: Article
Keywords: Algorithmic problem solving; Dynamic programming; Linear programming; Integer programming; Optimisation
Schools/Departments: University of Nottingham, UK > Faculty of Science > School of Computer Science
Identification Number: 10.1016/j.scico.2015.01.003
Depositing User: Backhouse, Roland
Date Deposited: 18 Jan 2016 11:59
Last Modified: 16 Oct 2017 02:41

Actions (Archive Staff Only)

Edit View Edit View