Route calculation: performance and precision are crucial!
SmartRouting is a calculation engine designed to perform route calculation and the following routine operations:
calculation of a route between 2 points;
calculation of a route between 1 point and several points;
calculation of a distance matrix (shortest and fastest route calculation);
graph creation;
isochrone calculation.
Route calculations are based on data in a file describing the network being studied. This file is created from the GeoConcept GIS and any road navigation database, such as those published by Navteq.
SmartRouting can be used to publish a complete itinerary, with the description of the route (including the route followed between two intersections), the duration of the journey between each route segment, and the distance.
The SmartIti C Kit is a C subset of the SmartITI engine, on which a client application can draw. The C Kit is supplied in the form of a library (SmartIti.dll for Windows platforms, libSmartIti.so for Linux/UNIX platforms).
Road or flow networks generated are independent of the map
SmartIti is entirely independent of the GeoConcept application. To function, it uses a graph that can be directly generated using the kit functions, or via a GeoConcept add-on. The graph contains:
all object geometries;
journey times between start and finish points;
certain attributed values:
the route name;
fields qualifying the route type (roundabout, bridge…).
In addition, simple topological queries (within a defined rectangle) can be applied to return the list of line objects contained within a chosen zone
Handling for a wide range of special scenarios
The fruit of ten years of research and development, the SmartRouting calculation engine supports as standard the majority of advanced itinerary search functions, with full handling for the following:
Route calculation filters (tolls, for example);
Different families of crossover points (bridges, tunnels...),
Other restrictions (No left turn, No right turn, One way traffic…);
Calculations in two flow directions (from the destination point, or from the departure point);
Different speeds for each road segment flow direction;
Speed modifications in real time (for representing traffic flows in real time);
Storing several different speed sets in the graph (for different categories of traffic: lorries, tourist buses or coaches, etc);
Micro-routes for short journeys (for mapping deliveries over a small geographic area);
Partial loading of the graph into memory (for voluminous graphs).
Hierarchy of road levels
Navteq maps divide roads up into a hierarchy of importance, with five levels of road ranging from the largest (motorways, national ‘trunk’ roads, linking roads between these main arterial routes) to the smallest (small local roads that logically only serve at the beginning and the end of the itinerary).
The same hierarchy can be used in SmartRouting as follows:
start and finish points can be set for journeys using all levels;
an option to use only selected road priority levels (1 to 4, or 1 to 3, depending on the scenario) between two selected zones.
Using Navteq logic levels in this way enables faster calculating, and in particular, several links can be regrouped within just 1 link (making calculation up to 30 times faster).
Applications for the SmartRouting calculation engine…
The SmartRouting kit can be integrated:
to undertake route calculations in batch mode;
to create distance matrices;
to search for points around a given point (using the real distance along the road);
to plot journeys while retrieving the information on each link traversed (Identifier, geometry, and any attributes present);
to set up a routing server for handling variable conditions dynamically, such as traffic conditions, the type of vehicle used (prohibitions for the passage of lorries, for example), etc.