Elevo este comentario a una pregunta: ¿cuál es la forma más rápida de tocar las antípodas y luego regresar? Para permitir un tránsito más fácil, deje 100 km desde la antípoda real para que no tenga que caminar en medio de la nada. ¿Es Auckland a Sevilla? ¿O Málaga? Shanghái a Concordia más o menos en Argentina?
Hasta aquí...
Santiago, Chile-Xi'an, China. 26h5m. La antípoda del aeropuerto de Santiago está justo al este de Zhen'an, China, que está apenas a 100 km del aeropuerto de Xi'an. Vuele este itinerario con solo una cómoda escala en CDG y estará allí.
También me gusta Aukland-Gibraltar (o Tánger o Málaga, aunque los vuelos parecen más rápidos a GIB y su aeropuerto es mucho más divertido), ya que los aeropuertos funcionan dentro del margen de 100 km (encontré 31h55m a GIB vía HKG y LHR).
Taipai-Asunción, Paraguay es un buen par, pero no puedo obtener los vuelos de menos de 34h5m a través de búsquedas superficiales.
Shanghái-Buenos Aires es terriblemente tentador dado el potencial de conexiones de una sola parada, pero no puedo hacer que funcione dentro de los 100 km y el transporte terrestre es probablemente asesino.
Esta no es estrictamente una respuesta nueva (todavía), pero presenta un conjunto de datos de aeropuertos antípodas que alguien podría usar para encontrar una mejor ruta. Siga leyendo para conocer los aeropuertos más antípodas y una revelación impactante sobre la ruta Santiago-Xi'an.
Continuando con esta exploración, recurro al trabajo de un a3nm, que anteriormente participó en algunas tonterías relacionadas con las antípodas del aeropuerto. Usando su puntero a la base de datos de OpenFlights (a quien se le otorga todo el crédito por su licencia), puedo obtener archivos de datos para aeropuertos y rutas aéreas de todo el mundo.
Primero, cargaré los datos del aeropuerto en una tabla de PostgreSQL utilizando este procedimiento y habilitaré la tabla para que sea compatible con PostGIS para que podamos hacer cálculos espaciales.
Configuraremos un par de columnas temporales, calcularemos la antípoda para cada aeropuerto y la convertiremos en una geometría (probablemente haya una mejor manera de hacer esto si sabe lo que está haciendo. Un tema común aquí es que no t, de hecho, sé lo que estamos haciendo):
update airports set antipode_latitude = -latitude;
update airports set antipode_longitude = 180+longitude;
update airports set antipode_longitude = antipode_longitude-360 where antipode_longitude > 180;
update airports SET antipode = ST_SetSRID(ST_MakePoint(antipode_longitude,antipode_latitude),4326);
Y la cordura comprueba los resultados en base a algunos de los que ya conocemos:
select airports.name, city, country, iata, ST_Distance_Sphere(airports.antipode, (select airports.geom from airports where iata='SCL')) as distance from airports order by distance limit 3;
Ankang Airport Ankang China AKA 80599.02914563
Xi\\'An Xiguan Xi\\'AN China SIA 109730.42018116
Xianyang Xi'an China XIY **124745.39283865**
¡Oh, no! Hemos revelado una verdad devastadora sobre mi respuesta anterior. SCL-XIY es en realidad 24 km demasiado lejos para calificar estrictamente. Esto probablemente se puede corregir comenzando su viaje un poco más lejos hacia Santiago o Xi'an y tomando algún tipo de autobús del aeropuerto (que tendrá mucho tiempo para hacer si está haciendo un viaje de ida y vuelta de 72 horas), pero es un hallazgo triste de hecho.
select airports.name, city, country, iata, ST_Distance_Sphere(airports.antipode, (select airports.geom from airports where iata='AKL')) as distance from airports order by distance limit 5;
Ronda Airport Ronda Spain RRA 28932.88795948
Ronda Ronda Spain 30772.20555266
Moron Ab Sevilla Spain OZP 40636.98417791
Malaga Malaga Spain AGP 73182.10790714
Sevilla Sevilla Spain SVQ 75861.92508438
La buena noticia es que los resultados parecen cuerdos. Ahora podemos encontrar los aeropuertos más antípodas, porque ¿por qué no? Continuemos con nuestra tendencia de usar la base de datos de manera estúpida, porque es un poco más fácil, y creemos una tabla borrador duplicada para que podamos ejecutar la consulta en las dos tablas. También limitaremos nuestra búsqueda a aeropuertos con códigos IATA, para excluir la mayoría de las estaciones de tren aleatorias en el conjunto de datos y tener la mejor oportunidad de encontrar aeropuertos con un servicio comercial fácil de encontrar:
create table airports2 (like airports including all);
insert into airports2 select * from airports;
select airports.name, airports.city, airports.country, airports.iata, airports2.name, airports2.city, airports2.country, airports2.iata, st_distance_sphere(airports.antipode, airports2.geom) as distance from airports, airports2 where airports.geom && ST_Expand(airports2.antipode, 25) and airports.iata <> '' and airports2.iata <> '' order by ST_DISTANCE(airports.geom, airports2.antipode) asc limit 1;
Sultan Mahmud Badaruddin Ii Palembang Indonesia PLM Benito Salas Neiva Colombia NVA 5810.60702928
Y, por supuesto, PLM y NVA están bastante cerca:
Si tiene curiosidad, y sé que la tiene, PLM y NVA aún ganan, incluso si elimina la restricción de que los aeropuertos tienen códigos IATA.
Ahora buscaremos todos los aeropuertos antípodas (con códigos IATA) dentro del rango de 100 km, recortaremos cada entrada ya que son pares coincidentes y produciremos un archivo de datos que enumera 366 pares de ciudades candidatas para investigar. También podemos hacer un conjunto un poco más grande si relajamos un poco el límite de 100 km y pensamos que siempre podemos caminar un poco si nada más.
select airports.name, airports.city, airports.country, airports.iata, airports2.name, airports2.city, airports2.country, airports2.iata, st_distance_sphere(airports.antipode, airports2.geom) as error from airports, airports2 where airports.geom && ST_Expand(airports2.antipode, 25) and airports.iata <> '' and airports2.iata <> '' order by ST_DISTANCE_sphere(airports.antipode, airports2.geom) asc limit 1000;
En nuestra próxima entrega, veremos si podemos encontrar una ruta más rápida.
Zach Lipton
Zach Lipton