# Acertijo del puente y la antorcha

El problema del puente y la antorcha (también conocido como El Tren de Medianoche y El cruce Peligroso) es un acertijo lógico de la categoría de acertijos de cruzar el río, en el que un número de personajes debe cruzar un río cumpliendo una serie de restricciones.

## Argumento

Cuatro individuos llegan a un río de noche. Hay un puente estrecho, pero este solo soporta a dos personas a la vez. Los individuos tienen una antorcha y, debido a que es de noche, deben utilizarla cuando cruzan el puente; por lo tanto, si cruzan dos personas, uno debe volver atrás llevando la antorcha para que puedan cruzar los demás. El individuo A puede cruzar el puente en un minuto, el individuo B en dos minutos, el individuo C en cinco minutos, y el individuo D en ocho minutos. Cuando dos individuos cruzan el puente juntos, tardan lo que tarda el más lento de ellos. El problema es: ¿pueden cruzar todos el puente en quince minutos o menos?

## Solución

Una primera idea obvia es que el coste de la devolución de la antorcha a la gente que esperaba para cruzar es un costo inevitable que debe ser minimizado. Esta estrategia toma como portador de la antorcha al individuo A (el más rápido):
| Tiempo Transcurrido | Lado de Partida | Acción | Lado de Llegada |
| 0 minutos | A B C D | | |
| 2 minutos | C D | A y B cruzan hacia adelante, toma 2 minutos | A B |
| 3 minutos | A C D | A regresa, toma 1 minuto | B |
| 8 minutos | D | A y C cruzan hacia adelante, toma 5 minutos | A B C |
| 9 minutos | A D | A regresa, toma 1 minuto | B C |
| 17 minutos | | A y D cruzan hacia adelante, toma 8 minutos | A B C D |
Esta estrategia no permite un cruce en quince minutos. Para encontrar la solución correcta, uno debe darse cuenta de que cruzar individualmente a las personas más lentas es una pérdida de tiempo que se puede ahorrar si cruzan ambas a la vez:
| Tiempo Transcurrido | Lado de Partida | Acción | Lado de Llegada |
| 0 minutos | A B C D | | |
| 2 minutos | C D | A y B cruzan hacia adelante, toma 2 minutos | A B |
| 3 minutos | A C D | A regresa, toma 1 minuto | B |
| 11 minutos | A | C y D cruzan hacia adelante, toma 8 minutos | B C D |
| 13 minutos | A B | B regresa, toma 2 minutos | C D |
| 15 minutos | | A y B cruzan hacia adelante, toma 2 minutos | A B C D |
Una segunda solución es intercambiando a los portadores de la antorcha. Básicamente, los dos individuos más rápidos cruzan juntos en el primer y quinto viaje, los dos individuos más lentos cruzan juntos en el tercer viaje, y uno de los dos individuos más rápidos regresa en el segundo viaje, y el otro más rápido en el cuarto viaje.
Así, el tiempo mínimo para cuatro personas viene dado por las siguientes ecuaciones matemáticas: Cuando $A<B<C<D$,
$\min(B+A+C+A+D,B+A+D+B+B)$
$\min(2A+B+C+D,A+3B+D)$

## Variaciones

Existen varias versiones, con variaciones como distintos nombres de los personajes o diferentes tiempos de cruce. En algunas versiones la antorcha puede caducar en cierto tiempo y así servir de tiempo límite. O puede ser una linterna con baterías y el límite de tiempo se corresponde con la energía remanente en las baterías de la linterna.
El acertijo es conocido por haber aparecido en 1981, en el libro Super Strategies For Puzzles and Games. En esta versión, A, B, C y D demoran 5, 10, 20, y 25 minutos respectivamente en cruzar, y el tiempo límite es 60 minutos. En todas estas variaciones, la estructura y la solución del rompecabezas siguen siendo los mismos.
El problema se ha analizado completamente mediante métodos de teoría de gráficos, en el caso de que haya un número arbitrario de personas con tiempos de cruce arbitrarios y también que la capacidad del puente siga siendo igual a dos personas.
Martin Erwig de la Oregon State University ha utilizado una variación del problema para defender la usabilidad del lenguaje de programación Haskell sobre Prolog para resolver problemas de búsqueda.
El rompecabezas también se menciona en el libro de Daniel Dennett From Bacteria to Bach and Back como su ejemplo favorito de una solución que es contraria a la intuición.