Arden
Tous les projets

Mobile Application

Navigo: Navigate the city you live in

Navigo est une plateforme de navigation dédiée aux transports publics de Nairobi, conçue pour le réseau de matatus et de bus. L’application mobile permet aux voyageurs de rechercher des arrêts, de planifier des itinéraires avec plusieurs correspondances et de se repérer grâce à une expérience cartographique intégrée. Propulsée par une API Laravel, un moteur de calcul d’itinéraires OpenTripPlanner et Kwame, un assistant conversationnel basé sur l’intelligence artificielle, Navigo vise à rendre le réseau de transport complexe de Nairobi plus accessible et plus facile à utiliser.

Rendre le réseau de matatus de Nairobi accessible à tousVoir le site en ligne
Navigo
Navigo

Le Contexte

Le réseau de matatus et de bus de Nairobi constitue l’un des systèmes de transport public décentralisés les plus importants d’Afrique, mais il ne dispose pas d’une infrastructure numérique complète dédiée à la navigation. Fonctionnant principalement selon un modèle de départ lorsque le véhicule est suffisamment rempli, sans horaires fixes conventionnels, le réseau est exploité par de nombreuses SACCO indépendantes et reste peu représenté dans les applications cartographiques classiques. Les voyageurs rencontrent ainsi des difficultés pour identifier les itinéraires, localiser les arrêts, planifier leurs correspondances et se déplacer dans des zones qu’ils connaissent mal, en s’appuyant principalement sur les connaissances locales et le bouche-à-oreille. L’enjeu consistait à concevoir une expérience de navigation fiable pour un écosystème de transport dynamique et fragmenté, en réunissant données géospatiales, calcul d’itinéraires multimodaux, guidage contextuel et assistance conversationnelle au sein d’une seule application mobile.

Approche

  1. 01

    Intégration du jeu de données Digital Matatus comme source GTFS de référence pour les arrêts, les tracés d’itinéraires et les points de correspondance du réseau de Nairobi, afin de disposer d’une base structurée pour le calcul des trajets.

  2. 02

    Déploiement d’OpenTripPlanner 2.4 dans Docker, en combinant les données GTFS de Nairobi avec un graphe piéton issu d’OpenStreetMap pour calculer des itinéraires multimodaux associant transports publics et marche.

  3. 03

    Stockage des arrêts dans PostGIS à l’aide de types de données géographiques et d’index spatiaux. Mise en place de requêtes ST_DWithin et de mécanismes de recherche par plus proches voisins pour localiser efficacement les arrêts à proximité des voyageurs.

  4. 04

    Développement d’un service de géocodage hiérarchisé privilégiant les données GTFS locales avant de recourir à l’API Google Maps, afin d’améliorer la résolution des lieux liés au transport et de limiter les requêtes externes inutiles.

  5. 05

    Développement de Kwame, un assistant conversationnel de planification d’itinéraires reposant sur GPT-4o-mini, Whisper pour la transcription vocale et des fonctionnalités de synthèse vocale. L’assistant permet de formuler des demandes de trajet en langage naturel, par texte ou par la voix.

  6. 06

    Introduction de facteurs de routage spécifiques, notamment le Fill-Time Factor et le Mshukiwa Factor, élaborés à partir de données GPS historiques pour mieux prendre en compte les réalités opérationnelles du réseau de matatus de Nairobi.

  7. 07

    Développement d’un moteur de navigation qui projette la position GPS du voyageur sur les polylignes des itinéraires afin d’estimer sa progression. Cette approche permet d’obtenir un guidage plus stable qu’une détection des étapes reposant uniquement sur la proximité géographique.

  8. 08

    Conception d’une architecture économe en données, intégrant la mise en cache locale des jeux de données GTFS statiques et une infrastructure de télémétrie des véhicules fondée sur MQTT, afin de préparer la plateforme au suivi des transports en temps réel.

  9. 09

    Amélioration de l’expérience de navigation grâce au lissage exponentiel des positions GPS, à la limitation de la fréquence des mouvements de caméra et à l’affichage progressif des arrêts en fonction du niveau de zoom.

  10. 10

    Mise en place de contrôles de disponibilité des services à partir des calendriers GTFS et de mécanismes de mise en cache des résultats OpenTripPlanner et des réponses de géocodage pour améliorer la réactivité et limiter les calculs répétitifs.

Résultat

Développement d’une plateforme de navigation dédiée aux transports publics, réunissant la recherche d’arrêts, la planification d’itinéraires avec plusieurs correspondances et le guidage des voyageurs au sein d’une application mobile adaptée au réseau de matatus de Nairobi. Intégration de Kwame pour permettre la planification conversationnelle des trajets par texte et par la voix, ainsi que de fonctionnalités de recherche géospatiale, de positionnement GPS tenant compte des itinéraires et de rendu cartographique optimisé. Mise en place d’une infrastructure évolutive reposant sur OpenTripPlanner, PostGIS, la mise en cache des données GTFS et une architecture de télémétrie compatible avec MQTT, posant les bases techniques du développement futur du suivi des transports en temps réel et de services de mobilité intelligents.

Un projet similaire en tête ?

Discuter de ce projet