Vivimos una época tan tecnológica que todo nos parece posible, y además, lo aceptamos con mucha naturalidad. Como es lógico, cuanto más joven más rápido se aceptan los avances tecnológicos, y cuanto más veterano, más reticente se vuelve el individuo a ese avance tan vertiginoso. Por poner un ejemplo, todo el mundo tiene smartphone, ¿sabemos cómo se las arregla para encontrar cobertura? Y en el caso de las aplicaciones de GPS, ¿sabemos exactamente cómo son capaces de indicarnos el camino más eficiente?
El GPS trabaja paso a paso para encontrar una ruta bastante buena en el menor tiempo posible
Lo que llamamos GPS es, en realidad, algo más: se trata de aplicaciones que utilizan las lecturas del GPS para mostrar rutas y actualizar nuestra posición sobre esos mapas personalizados que se nos muestran en las pantallas. Una combinación de datos y algoritmos consiguen lo que nos parece tan natural: que una voz enlatada nos guíe por la ciudad , o nos indique cuál es la próxima salida de la autovía que debemos tomar para seguir nuestro camino.
Para nosotros, como humanos, encontrar el “mejor” camino para viajar entre dos puntos es bastante sencillo. Al menos, parece sencillo desde nuestro punto de vista. Podemos hacerlo mediante aproximaciones, por ejemplo, desde Sevilla hasta Gijón tomamos la A-66, y una vez en Gijón ya veremos… Para la aplicación de navegación que utiliza el GPS, las cosas no son tan directas, al fin y al cabo no sigue la misma lógica que nuestra mente.
Encontrar la mejor ruta con GPS no es simplemente unir dos puntos
Una verdad universal a la hora de enfrentarse a un problema es dividirlo en problemas más pequeños, de fácil solución. Esto nos sirve para cualquier tipo de tarea o problema: si no podemos transportar de una vez 100 kilos de libros, los dividimos en 10 montones de 10 kilos, que es más manejable. Para el “GPS” sucede algo similar: no es capaz de encontrar visualmente la ruta, así que el algoritmo encargado se propone atacar el problema por partes.
En primer lugar, es posible calcular la distancia en línea recta entre dos puntos de la Tierra gracias al GPS: las coordenadas nos pueden dar ese dato sin más que hacer una simple operación (para los amigos de las matemáticas, ¿cómo se calcula la distancia entre dos puntos de la superficie de una esfera?). Una vez obtenido ese dato, la aplicación se sitúa en el punto de partida y calcula las salidas posibles: a qué localidades se puede uno dirigir.
Para cada una apunta la distancia real que tenemos, y hace unas comprobaciones: para cada posible elección calcula qué distancia en línea recta nos queda hasta el destino final. De todas, elige la combinación que nos lleva a estar “más cerca en línea recta” del destino del viaje. Hecho esto en una primera fase, volvemos a empezar: el inicio del viaje es este primer punto al que ya hemos llegado y se repite el proceso hasta que uno de los puntos obtenidos coincide con el destino final.
¿Es una manera perfecta? No. ¿Es la mejor manera de obtener un buen resultado en muy poco tiempo? Por supuesto, y ese es uno de los principios fundamentales de la ingeniería. A este algoritmo se le denomina A* y aquí tenemos una sencilla explicación para complementar.
Vía | El País