Technote: Graphhopper vs OSRM vs Gosmore

Un nuevo contendiente para nuestro concurso de enrutamiento Openstreetmap entra en el ring: Graphhopper. ¿Va a levantarse contra el reconocido routers OSRM y Gosmore?

Nuestras necesidades
Let ';s dejar claro de nuevo: hemos adaptado nuestra prueba de routers de OSM en nuestro nuestras necesidades. Los resultados y conclusiones pueden no ser válidos en absoluto para todas las necesidades de enrutamiento. Tenga cuidado con la interpretación de esta prueba. Cada router tiene puntos fuertes que lo hace excepcional en su propio campo.

Para nuestro público enrutamiento parada múltiple servicio, necesitamos millones de rutas de punto a punto cada día. RouteXL optimiza el viaje más rápido camino a varios destinos. Para cada optimización viaje, Se necesitan todas las duraciones de viajes intermedias entre paradas. Por ejemplo. para encontrar la mejor ruta a través de diez localidades de un mismo origen, necesitamos 11 x 10 = 110 rutas. Durante 40 lugares que necesitamos 1.640 rutas. Etcétera.

Graphhopper
Previamente, OSRM ganó la batalla con Gosmore en su velocidad. Pero OSRM aún no era capaz de correr en los servidores pequeños y baratos que utilizamos para la fecha. Que nos impidió su aplicación en todo el mundo hasta el momento. Nos quedamos muy contentos cuando otro nuevo competidor ";voluntariamente "; a unirse a nuestra prueba. ¿Sería combinar ambas fortalezas: ser tan rápido como OSRM, con los pequeños requisitos que Gosmore?

El nuevo router de esta prueba es Graphhopper. En su página web se dice que es un motor de enrutamiento carretera Fuente rápido y Open. Es ';s de negocios de usar debido a su licencia de Apache y promete escalar desde gran servidor al dispositivo móvil. Graphhopper está implementado en Java y tiene una interfaz API, que hace que sea fácil de integrar con nuestro sistema. Es ';desarrollo s es bastante activo.

Resultados de la prueba
Se utilizó la misma prueba como antes. Se seleccionaron puntos aleatorios en un pequeño mapa. Estas patas aleatorios generados sean encaminados. El porcentaje de las rutas y el tiempo de éxito para el cálculo de ruta se registraron. Rutas fueron validados por duraciones mínimas y máximas, basado en la distancia en línea recta.

Piernas totales: 10.000 
El tiempo total de Gosmore: 671.423sec OSRM: 28.682sec GraphHopper: 23.586sec
Éxito Gosmore: 97,6% OSRM: 98% GraphHopper: 99,1%
Demasiado lento Gosmore: 0% OSRM: 0% GraphHopper: 0%
Demasiado rápido Gosmore: 0% OSRM: 0% GraphHopper: 0%

En estos 10.000 piernas, Graphhopper es mucho más rápido que Gosmore, e incluso más rápido que el ganador anterior OSRM. También su tasa de éxito es mayor, cerca de 100%. El nuevo chico de la cuadra se lo lleva todo.

Pero como con OSRM, ganó ';t carrera por todo el planeta en nuestro ";pequeña "; Servidores solucionador 4GB, que hacer la optimización de enrutamiento detrás de las pantallas. También, Graphhopper ';código de s todavía está en desarrollo activo y no es estable todavía. La compatibilidad hacia atrás no está garantizada hasta la primera versión estable.

Implementado
Estamos muy impresionados por Graphhopper ';rendimiento s. Debido a la demanda de nuestros servicios está creciendo rápidamente y Amazon Web Services ha bajado los precios de sus servidores EC2, nos arriesgamos. Nosotros ';he actualizado un servidor solucionador para satisfacer Graphhopper ';requisitos de s e instalado el programa.

Tuvimos un poco de problemas para conseguir su creación y funcionamiento, pero hoy estamos;he se conecta a nuestros modelos de optimización de enrutamiento. Se hace un gran trabajo y le da al aumento de rendimiento como lo indican los resultados de las pruebas. Nosotros ';ll seguir de cerca en el próximo período, pero por ahora es: la bienvenida a bordo, Graphhopper!