Itineraire : Calcul d’itinéraires

Performance et exactitude doivent être au rendez-vous !

SmartRouting est un moteur de calcul est dédié au calcul d’itinéraires. Il permet les opérations de bases suivantes :
- calcul d’un itinéraire entre 2 points ;
- calcul d’un itinéraire entre 1 point et plusieurs points ;
- calcul d’un distancier (au plus rapide et au plus court) ;
- création de graphe ;
- calcul d’isochrone.

Les calculs d’itinéraire sont basés sur un fichier décrivant le réseau. Ce fichier est créé à partir du SIG GeoConcept et d’une base de navigation routière, comme celles de Navteq.

SmartRouting permet d’obtenir un itinéraire complet, avec la description de la route (y compris le chemin que la route suit entre deux intersections), la durée de trajet entre chaque segment et la distance.

Le kit C de SmartRouting est une encapsulation C du moteur de SmartRouting sur lequel une application cliente peut s’appuyer. Le kit C est livré sous forme d’une bibliothèque (SmartRouting.dll pour les plates-formes Windows, libSmartIti.so pour les plates-formes Linux/UNIX).

PNG - 325.6 kb
Cliquez pour agrandir

Indépendance du graphe généré par rapport à la carte

SmartRouting est un programme indépendant du logiciel GeoConcept. Pour fonctionner, il utilise un graphe qui peut être généré directement grâce aux fonctions du kit ou bien via un add-on GeoConcept. Le graphe contient :
- l’ensemble des géométries ;
- les durées de trajet point à point ;
- éventuellement certaines valeurs attributaires :
- nom de la route ;
- champs qui renseignent sur le type de la route (rond-point, pont....).

De plus, il est possible de faire des requêtes topologiques simples (dans un rectangle) pour renvoyer les linéaires faisant partie d’une zone choisie.

Gestion de nombreux cas particuliers

Fruit de 10 années de recherche et développements, le moteur de calcul SmartRouting traite en standard la plupart des cas de recherche d’itinéraire avancée.
- Gestion de filtres pour les calculs d’itinéraire (péages par exemple) ;
- Gestion des croisements à différents niveaux (ponts, tunnels...),
- Autres restrictions (interdiction tourner gauche, droite, sens uniques...) ;
- Calculs dans les 2 sens de circulation (à partir du point de destination ou du point de départ) ;
- Prise en compte de vitesses différentes pour chaque sens de circulation des tronçons ;
- Possibilité de modifier les vitesses en temps réel (pour prise en compte du trafic en temps réel) ;
- Possibilité de stocker plusieurs jeux de vitesse dans le graphe (pour camions, véhicules de tourisme, etc.) ;
- Gestion de micro-trajets (de façon à gérer les livraisons très rapprochées si nécessaire) ;
- Possibilité de ne pas charger le graphe entièrement en mémoire (pour les graphes volumineux).

Utilisation des niveaux logiques de routes

Les cartes Navteq divisent les routes en niveau par priorité. On obtient ainsi 5 niveaux du niveau principal (autoroutes, nationales importantes plus routes de liaisons entre ces divers tronçons routiers) au niveau local (très petite routes servant logiquement au début et à la fin de l’itinéraire uniquement).

SmartRouting permet d’utiliser ces niveaux de la façon suivante :
- départ et fin des trajets en utilisant tous les niveaux ;
- entre ces 2 zones, utilisation uniquement des niveaux prioritaires (1 à 4 ou 1 à 3 selon les cas).

Cette utilisation des niveaux logiques Navteq permet des calculs plus rapides avec en particulier le regroupement de plusieurs liens en 1 seul (calcul pouvant être 30 fois plus rapide).

Types d’utilisation du moteur de calcul SmartRouting

Le kit de SmartRouting peut être intégré :
- pour réaliser des calcul itinéraire en mode batch ;
- pour réaliser des distanciers ;
- pour rechercher des points autour d’un point donné (en utilisant la distance routière) ;
- pour parcourir des trajets en récupérant les informations sur chaque lien parcouru (Identifiant, géométrie, éventuellement attributs) ;
- pour proposer un serveur d’itinéraires gérant des conditions variables de façon dynamique, telles que les conditions de trafic, le type de véhicule utilisé (gestion des interdictions aux camions), etc.