ROUTE DETERMINATION AND NAVIGATION BASED ON MULTI-VERSION MAP REGIONS

Information

  • Patent Application
  • 20200318978
  • Publication Number
    20200318978
  • Date Filed
    April 06, 2017
    7 years ago
  • Date Published
    October 08, 2020
    4 years ago
Abstract
A method is disclosed comprising: obtaining, at a terminal, a final route that comprises one or more indications, wherein each indication of the indications respectively indicates, whether or not a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in an intermediate route determined at least based on respective current versions of one or more map regions and used as a basis for determining the final route, is considered to be contained in a non-current version of the map region available to the terminal; and conducting a route guiding process at the terminal at least based on the final route and at least respective non-current versions of one or more map regions available to the terminal that respectively contain, according to the one or more indications, a link or considered-to-be-suited link corresponding to a link that is contained in a respective current version of the respective map region and is identified by a respective link identifier comprised in the intermediate route, wherein the considered-to-be-suited link is a link that is considered to be suited to be used for the route guiding process at the terminal. Further disclosed are a corresponding apparatus, a corresponding system and a corresponding computer program.
Description
FIELD OF THE DISCLOSURE

The invention relates to the field of navigation, and in particular relates to navigation of a route based on a version of map that differs from a version of a map used to determine the route.


BACKGROUND

Nowadays different approaches exist to determine a route that shall be navigated by a terminal, such as for instance a car-mounted navigation system or a hand-held navigation device. The route may for instance be determined locally at the terminal, based on a map (e.g. in the form of several map regions) that is locally stored at the terminal. The route itself may for instance comprise a plurality of link identifiers that respectively identify links (e.g. roads, intersections, etc.) contained in the terminal's map. The drawback of this approach is that the locally stored map has to be updated regularly to prevent it from becoming outdated. Since the update patches required for updating are comparably large, transmission via wireless networks requires a lot of bandwidth and/or transmission time.


SUMMARY OF SOME EXAMPLE EMBODIMENTS OF THE INVENTION

As an alternative, the route may be determined by one or more servers (e.g. in the form of a cloud), e.g. upon request by the terminal, and may then be transmitted to the terminal to enable the terminal to navigate the route. A vast advantage of this approach is that the server(s) may have most recent versions of the map available and may thus determine an optimum or close-to-optimum route, potentially further considering information such as traffic and/or weather information that is available and up-to-date at the server. When such a server-determined route shall be navigated by the terminal, the terminal has to match the link identifiers comprised in the route to links in the map that is available at the terminal, which map will generally have an older version than the map that was used at the server to determine the route.


One possible solution for this problem is that the terminal, when receiving a route determined by the server based on a current version of a map and comprising link identifiers that identify links in this current version of the map that is not yet available to the terminal, updates at least those regions of the map (or even the entire map) that comprise these links. This would however require the terminal to check, upon reception of each server-determined route, if this route requires updating of at least a region of the map that is available to the terminal, and to update this region before being able to guide/navigate the route. This would disadvantageously slow down the navigation process.


It is thus, inter alia, an object of the present invention to provide a solution in which a route can be determined based on a respective current version of one or more map regions and can be guided/navigated by a terminal that has, for one or more of these map regions, respective non-current versions only.


According to a first exemplary aspect of the invention, a method is disclosed, the method comprising:

    • obtaining, at a terminal, a final route that comprises one or more indications, wherein each indication of the indications respectively indicates, whether or not a link corresponding to a link or considered-to-be-suited link that is contained in a current version of a map region and is identified by a respective link identifier comprised in an intermediate route determined at least based on respective current versions of one or more map regions and used as a basis for determining the final route, is considered to be contained in a non-current version of the map region available to the terminal; and
    • conducting a route guiding process at the terminal at least based on the final route and at least respective non-current versions of one or more map regions available to the terminal that respectively contain, according to the one or more indications, a link or considered-to-be-suited link corresponding to a link that is contained in a respective current version of the respective map region and is identified by a respective link identifier comprised in the intermediate route, wherein the considered-to-be-suited link is a link that is considered to be suited to be used for the route guiding process at the terminal.


This method may for instance be performed and/or controlled by an apparatus, e.g. by the terminal or by a component, module or functional unit thereof. Alternatively, this method may be performed and/or controlled by more than one apparatus, e.g. by multiple components, modules or functional units of the terminal.


According to a further exemplary aspect of the invention, a computer program is disclosed, the computer program when executed by a processor causing an apparatus (e.g. the terminal or a component, module or functional unit thereof) to perform and/or control the actions of the method according to the first exemplary aspect of the invention.


The computer program may be stored on computer-readable storage medium, in particular a tangible and/or non-transitory medium. The computer readable storage medium could for example be a disk or a memory or the like. The computer program could be stored in the computer readable storage medium in the form of instructions encoding the computer-readable storage medium. The computer readable storage medium may be intended for taking part in the operation of a device, like an internal or external memory (e.g. a Read-Only Memory (ROM)) or hard disk of a computer, or be intended for distribution of the program, like an optical disc.


According to a further exemplary aspect of the invention, an apparatus is disclosed, configured to perform and/or control or comprising respective means for performing and/or controlling the method according to the first exemplary aspect of the invention.


The means of the apparatus can be implemented in hardware and/or software. They may comprise for instance at least one processor for executing computer program code for performing the required functions, at least one memory storing the program code, or both. Alternatively, they could comprise for instance circuitry that is designed to implement the required functions, for instance implemented in a chipset or a chip, like an integrated circuit. In general, the means may comprise for instance one or more processing means or processors.


According to a further exemplary aspect of the invention, an apparatus is disclosed, comprising at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause an apparatus (e.g. the terminal or a component, module or functional unit thereof) at least to perform and/or control the method according to the first exemplary aspect of the invention.


The above-disclosed apparatus according to any aspect of the invention may be a component, module or functional unit for a device. The apparatus may for example be a chip. Alternatively, the disclosed apparatus according to any aspect of the invention may be a device, for instance the terminal. The disclosed apparatus according to any aspect of the invention may comprise only the disclosed components (e.g. means, processor, memory) or may further comprise one or more additional components.


According to a further exemplary aspect of the invention, a system is disclosed, comprising: an apparatus according to any aspect of the invention as disclosed above, and an apparatus (e.g. a server or server cloud) configured to determine the final route based on the intermediate route and to provide or cause provision of the final route to the terminal. The apparatus or apparatuses may for instance further be configured to determine the intermediate route.


In the following, exemplary features and exemplary embodiments of all aspects of the present invention will be described in further detail.


The final route may for instance be obtained at the terminal by being received by the terminal. The final route may for instance be provided to the terminal by an apparatus that determined the final route (and for instance also the intermediate route), in particular by a server or server cloud (e.g. a plurality of servers). The final route may for instance be determined in response to a route request, which may for instance stem from the terminal or from another entity.


The terminal may for instance be an electronic device. The electronic device may for instance be portable (e.g. weigh less than 5, 3, 2 or 1 kg). The electronic device may for instance be at least temporarily (e.g. in removable form) or permanently installed in a vehicle. The vehicle may for instance be a car, a truck, a motorcycle, a bicycle, a boat or a plane, to name but a few examples. The electronic device may for instance comprise or be connectable to a display for displaying a route that is guided/navigated to a user. The electronic device may for instance comprise or be connectable to means for outputting sound, e.g. in the form of spoken commands or information. The electronic device may for instance comprise or be connectable to one or more sensors for determining the devices position, such as for instance a Global Navigation Satellite System (GNSS) receiver, e.g. in the form of a Global Positioning System (GPS) receiver.


To the terminal, one or more map regions are available. These map regions are for instance parts of a larger map. These parts may for instance pertain to different geographic regions (e.g. to different countries (e.g. like Germany, France, Spain etc.) or different parts of countries (e.g. like Germany North, Germany East, etc.)), or to different geometric regions into which a map has been divided, e.g. by a regular grid (the map regions may then for instance be (e.g. quadratic) tiles). The map regions are for instance available to the terminal by being stored in or at the terminal, and or by being accessible by the terminal, e.g. via a wireless or wire-bound connection e.g. to an apparatus that stores the map regions. This apparatus may be remote from the terminal or may be included with the terminal into one device, e.g. into a vehicle. Only one version of a map region may be available to (e.g. stored in or on) the terminal at a time. The map regions may for instance comprise links that are identifiable by respective link identifiers. The links may for instance represent roads, intersections, etc. The links may for instance constitute parts of a road network. The links are for instance represented by link data objects that comprise information on the links, such as for instance a link identifier and one or more attributes (also denoted as link attributes herein). Non-limiting examples of such attributes are: street name (e.g. Invalidenstrasse), route name (e.g. A1), route name level (2), speed limit, country code, state code, geometry, elevation, junction info, number of lanes, time dependent restrictions, timezone offset, dst spec, segment length, car open, truck attributes, direction of travel, functional class (e.g. a classification for importance of roads (e.g. 1=German Autobahn, 2=German Bundesstrasse, 3=German Landstrasse). Further example attributes are information on the map region in which the link is located, information on a version of the map region in which the link is located a start point, and end point and information on further links connected to a respective link (so-called connectivity information). The link identifiers may for instance be unique with respect to all map regions of the same version. In this case, it may for instance not absolutely be necessary to have information on the map region in which the link is located in the link data objects.


The final route comprises one or more indications. In addition, the final route may comprise one or more link identifiers that respectively identify links that are contained in current versions of one or more map regions that are available to the terminal. The indications may for instance take the form of link identifiers identifying links in non-current versions of one or more map regions that are available to the terminal, and/or may take the form of empty or pre-defined information. The final route may, for each link identifier and/or indication, comprise one or more link attributes (e.g. one or more of the link attributes described above).


These link attributes may for instance be used to determine a surrogate link, as will be described in further detail below.


Each indication of the indications respectively indicates, whether or not a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in an intermediate route determined (e.g. by a server or server cloud) at least based on respective current versions of one or more map regions (e.g. a current version of a map region or respective current versions of at least two map regions) and used as a basis for determining (e.g. by the server or server cloud) the final route, is considered to be contained in a non-current version of the map region available to the terminal.


For the expression “link or considered-to-be-suited link”, in the following, also the expression “link/considered-to-be-suited link” will be used.


The intermediate route is for instance determined under consideration of route request information which is for instance comprised in a route request that may for instance stem from the terminal. The route request information may for instance comprise further parameters to be considered in the calculation of the route, such as for instance a type of route that is desired, such as for instance “quickest route”, “shortest route”, “scenic route”, “route without toll roads”, “route without ferry boats” etc. The route request information may for instance further comprise information on the respective version of one or more map regions that are available to the terminal. For instance, the respective version of all map regions that are available to the terminal may be comprised in the route request information, or only the respective version of a part of the map regions that are available to the terminal, e.g. of only those map regions through which the route will lead.


The intermediate route is in particular determined at least based on respective current versions of one or more map regions. In the determining of the intermediate route, in particular no non-current version of any map region may be used. In the determining of the intermediate route, in particular only current versions of map regions are used, and not any non-current versions. Whether one or more map regions are required depends on the extension of the route. It may for instance be that a route has both the start position and end position within the same map region, and then this single map region (in particular the current version thereof) will be used for determining the intermediate route. The determining is for instance performed by a server or server cloud that has the respective current (e.g. most up-to-date) versions of the one or more map regions available. The intermediate route comprises a plurality of link identifiers respectively identifying links in the current versions of the one or more map regions. Characteristics of the link identifiers and of the links have already been described above and also apply here. The intermediate route may for instance comprise further information.


The final route is determined at least based on the intermediate route. Further information used in the determining of the final route on the basis of the intermediate route may for instance be information on the respective version of map regions available to the terminal, in particular the versions of those one or more map regions to which links identified by link identifiers in the intermediate route pertain.


The final route may for instance be determined by replacing, in the intermediate route, one or more link identifiers by respective indications. Therein, it may for instance be the case that all link identifiers may be replaced by respective indications, for instance in a case where the intermediate route is based on links in a current version of a map region of which only a non-current version is available to the terminal. The one or more replaced link identifiers may for instance identify links in the respective current versions of the one or more map regions that are available to the terminal only as non-current versions.


Phrased differently, the final route may thus for instance be determined from the intermediate route by replacing, in the intermediate route, the respective link identifiers to which the one or more indications respectively pertain, by the one or more indications.


Therein, for instance only link identifiers identifying links that are not contained in current versions of respective map regions available to the terminal may be replaced by indications, while the other link identifiers are kept.


A non-current version of a map region is understood as a version of the map region that is older than the current version of the map region. The non-current version may be the immediately preceding version of the current version, or may be an earlier version. The non-current version of the map region differs from the current region of the map region, for instance with respect to the links contained in both versions. Links may for instance have been removed, added and/or changed when migrating from the non-current version of the map region to the current version of the map region.


At least one of the indications (or for instance each of the indications respectively) may for instance be determined based on one or more mapping tables that assign, to a plurality of link identifiers that respectively identify links in a current-version of a map region, respective indications respectively indicating whether or not a link corresponding to a link of the plurality of link identifiers is considered to be contained in a non-current version of the map region (that is available to the terminal). Mapping tables may be specific for a map region and/or for the non-current version of the map region. There may for instance be one mapping table for each older version of a map region that allows mapping of link identifiers from the current version of the map region to indications (inter alia link identifiers) in the non-current version of the map region. Alternatively, mapping tables may only allow mapping of link identifiers from a version of the map region to the immediately preceding version of the map region. Then, when it shall be determined whether a link in a current version of a map region corresponds to a link in a non-current version of the map region that is not immediately preceding the current version of the map region (e.g. is version 3, while the current version is version 5), more than one mapping table has to be used in an iterative sense. A first mapping table may thus be used to get from the current, first version of the map region to the immediately preceding, second version, and a second mapping table to get from this second version to a third version that immediately precedes this second version. When determining the final route from the intermediate route, for each link identifier of the intermediate route that is known to identify a link in a current version of a map region of which only a non-current version is available to the terminal, a mapping table corresponding to this map region and to the non-current version of this map region (or several mapping tables in case of iterative application of mapping tables) may be deployed to identify the indication to be used when replacing the link identifier. The one or more mapping tables may for instance be stored or be available to an apparatus that performs at least the determining of the final route before the determining of the final route. The one or more mapping tables may for instance be used for determining a plurality of different final routes from respectively different intermediate routes. In this way, the indications can be simply determined from the one or more mapping tables and do not have to be determined anew each time. This saves computation time, since searching for corresponding links in different versions of a map region is a computationally extensive task. Mapping tables may for instance be generated when a new version of a map region becomes available for use by an apparatus that performs at least the determining of the intermediate route.


It should be noted that the intermediate route and the final route can be determined in parallel. For instance, after determining of a link identifier for the intermediate route (and before the determining of the next link identifier of the intermediate route), it may be checked whether this link identifier has to be replaced by an indication, and in case the check is positive, the link identifier may be replaced (and otherwise kept to form part of the final route). The final route may then for instance be step-wise developed from the intermediate route, and the intermediate route may then for instance never exist as a whole, but merely be represented by the respective link identifier that is currently determined and then either copied into the final route or replaced by an indication. Alternatively, the final route may only be determined after the intermediate route has been completely determined.


Each indication of the indications respectively indicates, whether or not a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in an intermediate route, is considered (e.g. by an apparatus that determined the final route or the final route and the intermediate route, e.g. a server or server cloud) to be contained in a non-current version of the map region available to the terminal.


Therein, each indication pertains to another link identifier of the intermediate route. These link identifiers to which the indications respectively pertain may respectively identify links in the same map region or in at least two or more different map regions. In the most general case, each of these link identifiers identifies a respective link in respectively different map regions.


The indication thus may be considered to express a result of a consideration whether or not it is considered that a link/considered-to-be-suited link exists in the non-current version of the map region (available to the terminal) that corresponds to (for instance equals, or equals at least in one or more pre-defined aspects) the link that is comprised in the current version of the map region and that is identified by a link identifier in the intermediate route. The indication may for instance comprise the link identifier of the link/considered-to-be-suited link in the non-current version of the map region, if it is considered that a link/considered-to-be-suited link exists in the non-current version of the map region that corresponds to the link identified by the link identifier in the intermediate route and comprised in the current version of the map region, and may be empty or comprise a pre-defined value (e.g. “NONE”), if it is considered that a link/considered-to-be-suited link does not exist in the non-current version of the map region that corresponds to the link identified by the link identifier in the intermediate route and comprised in the current version of the map region.


The final route may then for instance comprise, as the one or more indications, link identifiers pertaining to links in respective non-current versions of one or more map regions available to the terminal, or the empty indications/pre-defined values (e.g. “NONE”).


The indication either pertains to

    • (i) a result of a consideration whether or not it is considered that a link exists (e.g. at all) in the non-current version of the map region that corresponds to the link that is comprised in the current version of the map region and that is identified by a link identifier in the intermediate route, or to
    • (ii) a result of a consideration whether or not it is considered that a considered-to-be-suited link exists in the non-current version of the map region that corresponds to the link that is comprised in the current version of the map region and that is identified by a link identifier in the intermediate route.


Therein, the considered-to-be-suited link is a link that is considered (e.g. by an apparatus that determined the final route or the final route and the intermediate route, e.g. a server or server cloud) to be suited to be used for the route guiding process at the terminal.


The considered-to-be-suited link is for instance considered to be suited to be used for the route guiding process at the terminal if the link has not been flagged as unsuited (e.g. erroneous or otherwise problematic, e.g. in a database that is e.g. based on feed-back from terminals and/or sensors) and/or if no information is available that is indicative of the link being at least partially erroneous or problematic.


Which of the above-described two types (i) or (ii) of indications is used may for instance depend on how the final route is determined. In the first case, it is only checked whether a link is contained in the non-current version of the map region available to the terminal at all that corresponds to the link in the intermediate route. In the second case, it is checked whether a link is contained in the non-current version of the map region available to the terminal that corresponds to the link in the intermediate route, and whether this link is considered to be suited for the route guiding process at the terminal. This suitability may for instance be checked based on a database that contains information on one or more links in the non-current version of the map region that are considered to be not suited to be used for the route guiding process at the terminal, for instance because one or more terminals and/or one or more sensors (e.g. of test vehicles that check an accuracy of route guiding processes against the real world scenario) have reported problems or errors with these one or more links before.


From a perspective of the terminal that obtains the final route, it may not be differentiable which of the above-described two types (i) and (ii) of indications has been used when determining the final route, in particular if in both cases, the same format for the indications (and the optional consideration information described further below) is used. The terminal may for instance only be informed by the indications if a link from a non-current version of a map region available to the terminal shall be used by the terminal for the route guiding process or not, and may not be aware of whether a consideration from which this information resulted also considered the suitability of this link for the route guiding process or only considered if a link corresponding to a link of the current version of the map region and identified by a link identifier of the intermediate route is contained in the non-current version of the map region available to the terminal at all.


The second type (ii) of indication described above may thus advantageously be used (e.g. by an apparatus that at least determines the final route) to force a specific behavior at the terminal: in case of links that are actually considered to be contained in non-current versions of map regions available to the terminal, but which are considered to be non-suited for the route guiding process at the terminal, a negative indication instead of a positive indication is included into the final route, which e.g. results in these links not to be used by the terminal (e.g. instead, surrogate links will be used by the terminal for the route guiding process, which are for instance based on information provided in the final route, e.g. in the form of link attributes).


A second final route that comprises indications of the second type may for instance be obtained from a first final route that comprises indications of the first type by

    • identifying those indications contained in the first final route that respectively indicate that a link exists in a non-current version of a map region that corresponds to the link that is comprised in the current version of the map region and that is identified by a link identifier in the intermediate route (for instance by checking, if this indication identifies a link in the non-current version of the map region),
    • checking, for these identified indications, if they pertain to links that are not considered suited to be used for the route guiding process at the terminal (e.g. based on a database), and modifying those identified indications, for which the check is positive, in a way that they indicate that a link does not exist in a non-current version of a map region that corresponds to the link that is comprised in the current version of the map region and that is identified by a link identifier in the intermediate route.


In this way, all indications contained in the second final route now pertain to suited-to-be-considered links, irrespective of whether they have been modified or not. It is understood that this processing can either be performed after the first final route has been completely determined, or at least partially in parallel with the determining of the first final route.


A route guiding process is then conducted at the terminal (e.g. by the terminal or by components thereof). The route guiding process is at least based on the final route and at least respective non-current versions of one or more map regions (e.g. a non-current version of a map region or respective non-current versions of at least two map regions) available to the terminal that respectively contain, according to the one or more indications, a link/considered-to-be-suited link corresponding to a link that is contained in a respective current version of the respective map region and is identified by a respective link identifier comprised in the intermediate route.


Thus if only a non-current version of one map region is available to the terminal, the non-current version of this map region may be used in the route guiding process if, according to the one or more indications, the final route contains a link/considered-to-be-suited that is considered to correspond to a link that is contained in the current version of this map region and is identified by a link identifier comprised in the intermediate route.


If respective non-current versions of several map regions are available to the terminal, at least respective non-current versions of those map regions that contain, according to the one or more indications, a link/considered-to-be-suited corresponding to a link that is contained in a respective current version of the respective map region and is identified by a respective link identifier comprised in the intermediate route, may be used in the navigation of the final route. For instance, if a first indication indicates that a first link of the intermediate route which is contained in a current version of a first map region is contained in a non-current version of the first map region available to the terminal, and a second indication indicates that a second link of the intermediate route which is contained in a current-version of a second map region is not contained in a non-current version of this second map region available to the terminal, in the navigation of the final route, the non-current version of the first map region will be used in any case, but the non-current version of the second map region will for instance only be used if it is required to determine a surrogate link for the second link.


The route guiding process is a process in which a user of the terminal or an apparatus comprising the terminal (e.g. an at least partially autonomously driving vehicle) is guided along a route that is based on the final route (e.g. a route derived from or representing the final route).


Conducting the route guiding process may for instance comprise outputting representations of links and/or of information of links to which the final route pertains (e.g. that are identified by the final route), e.g. in visual and/or acoustic and/or haptic form, in particular in a way that is perceivable by a user of the terminal and/or in a form that is understandable by an apparatus (e.g. a vehicle) that comprises the terminal. Therein, for instance a current position of the terminal may be considered (in particular with respect to the links) and for instance output in visual and/or acoustic and/or haptic form. Additionally or alternatively, navigation instructions may be output, e.g. in visual and/or acoustic and/or haptic form and/or as control signals, e.g. to actuators of a vehicle, which may for instance be an at least partially autonomously driving vehicle. Conducting the route guiding process may for instance further comprise (at least with respect to links that are contained in current and non-current versions of map regions available to the terminal) displaying a map background with further information that extends beyond the information of the links, e.g. further information such as points of interest, buildings, topography, etc. Information on the map background may for instance be stored, together with the links, in the (current and non-current versions of the) map regions.


The terminal, for conducting the route guiding process, may use the indications to either fetch links from the non-current versions of the one or more map regions that are available to the terminal (in case the indications comprise link identifiers identifying links in the non-current versions of the one or more map regions available to the terminal) or for instance use surrogate links (in case the indications are left empty or comprise pre-defined values), which may for instance be determined based on information comprised in the final route (e.g. respective attributes of links/considered-to-be-suited links that are indicated by respective indications not to be considered to be contained in respective non-current versions of map regions available to the terminal). Of course, if the terminal also comprises one or more current-version map regions, link identifiers in the final route that identify links in these current-version map regions are used by the terminal for conducting the route guiding process by referring to these current-version map regions.


In this way, it thus becomes possible to determine (e.g. at a server or server cloud) an intermediate route based on current-version map regions (in particular on current-version map regions only, thus not based on any non-current version of a map region) and to transform this intermediate route into a final route that can then be provided to a terminal to enable the terminal to conduct a route guiding process based on the final route although at least one or more of these map regions are available only as non-current (e.g. older) versions to the terminal. The link identifiers of links of the current-version map regions that are considered to be contained in the respective non-current-version map regions available to the terminal can for instance be mapped (by means of the indications) into link identifiers of links in the non-current-version map regions, and the link identifiers of links of the current-version map regions that are considered to be not contained in the respective non-current-version map regions available to the terminal (or that are, according to an example embodiment, considered to be not suited to be used in the route guiding process at the terminal, e.g. since they are erroneous or problematic) can for instance be removed from the final route by representing them by an empty spot or by a pre-defined value that indicates to the terminal that the terminal does not have this link available and has to use, for instance, a surrogate link instead.


Thus both the amount of different versions of map regions that have to be maintained at an apparatus (e.g. a server or server cloud) that determines routes for terminals as well as the frequency of map region updates that have to be performed by the terminals is reduced significantly. Instead of plural versions of map regions, it may for instance be sufficient to maintain, at the apparatus that determines routes for terminals, only the current version of each map region and according mapping tables that describe mapping of links from the current versions of the map regions to previous versions as described above, which are much less in size. Furthermore, it is not necessary that a terminal that receives a route that is based on a plurality of links of which only a few are contained in current versions of one or more map regions that are not yet available to the terminal is excluded from navigating this route entirely, or has to download current versions of all map regions that are touched by the route. Instead, the route is “translated”, by using the indications, to for instance best match the versions of the map region(s) that are available to the terminal.


Links of this translated route that are available to the terminal can then be retrieved from the respective current or non-current versions of map regions available to the terminal, and can thus for instance be presented (e.g. visually and/or acoustically) with map background information (e.g. points of interest, buildings, topography) also stored in the respective current or non-current versions of the map regions and optimally adapted to the links stored in the current or non-current versions of the map regions.


Links of this translated route that are not available to the terminal, since they are only contained in current versions of one or more map regions (or are, according to an example embodiment, considered by the apparatus that determines the final route to be unsuited for the route guiding process), may then for instance be substituted by surrogate links (that are e.g. based on information comprised in the final route and thus are up-to-date) at the terminal and may thus only cause insignificant degradation of the user experience, in particular if only a small number of such links is concerned. The user experience may for instance be degraded since no map background information may be presentable together with the surrogate links, or the map background information available (e.g. from a non-current version of a map region available to the terminal) may not be optimally adapted to the surrogate links (e.g. since changes in the links are only reflected by the surrogate links that are based on information from the current version of a map region, while the map background information is based on a non-current version of the map region).


According to an exemplary embodiment of all aspects of the present invention, one or more of the one or more indications respectively indicate that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in the non-current version of the map region available to the terminal. For these one or more links/considered-to-be-suited link, then for instance surrogate links may be used when navigating the route, as will be described further below.


According to an exemplary embodiment of all aspects of the present invention, in case that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in the non-current version of the map region available to the terminal, the indication comprises or consists of a link identifier identifying this link/considered-to-be-suited link considered to be contained in the non-current version of the map region. This indication in the form of a link identifier may thus be used by the terminal to select a link/considered-to-be-suited link from the non-current version of the map region available to the terminal. From the perspective of the terminal, such an indication may not appear different from a link identifier received in a final route that has been determined based on the non-current version (or the current version) of the map region available to the terminal. The link identifier identifying this link considered to be contained in the non-current version of the map region may be different from the link identifier comprised in the intermediate route and identifying the link contained in the current version of the map region (although both links are otherwise considered to be equal), or may be the same.


According to an exemplary embodiment of all aspects of the present invention, in case that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in the non-current version of the map region available to the terminal, a predefined (e.g. constant) or empty information is contained in or constitutes the indication. The predefined information may for instance be a pre-defined value or variable, e.g. “NONE”, “N/A” or “0000”, to name but a few examples. The empty information may for instance require less (e.g. zero) bits for its representation than a pre-defined information. It may then nevertheless have to be safeguarded that it is clear for the terminal that an indication (with empty information) replacing a link identifier is present, e.g. by using start codes indicating the start of a new link identifier/indication in the final route, or by using field length indicators for each link identifier/indication in the final route. The predefined or empty information may indicate to the terminal that the present segment of the route (as represented by the indication that replaces a link identifier) is not contained as link/considered-to-be-suited link in a (non-current version of a) map region available to the terminal, so that a special processing is necessary, for instance by using a surrogate link.


According to an exemplary embodiment of all aspects of the present invention, in case that an indication of the one or more indications indicates that no link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, a surrogate link for this link/considered-to-be-suited link is used in the route guiding process. Examples on the determining of a surrogate link will be described below.


According to an exemplary embodiment of all aspects of the present invention, in case that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in the non-current version of the map region available to the terminal, the indication comprises or consists of a link identifier identifying this link/considered-to-be-suited link considered to be contained in the non-current version of the map region, and wherein, in the route guiding process, a (e.g. visual, acoustic and/or haptic) presentation format of such a link or considered-to-be-suited link considered to be contained in the non-current version of the map region differs from a (e.g. visual, acoustic and/or haptic) presentation format of the surrogate link. By the visual presentation format of a link, also the map background shown below the link may for instance be comprised. Examples of such different presentation formats will be given further below.


According to an exemplary embodiment of all aspects of the present invention, each indication of the one or more indications is associated with respective consideration information pertaining to the respective consideration whether or not a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in the non-current version of the map region available to the terminal, and the route guiding process is further conducted based on the respective consideration information associated with the one or more indications. While the consideration itself may be of binary nature (i.e. it is considered that a corresponding link/considered-to-be-suited link is contained in the non-current version of the map region or not), the consideration information may provide further information concerning this consideration, e.g. with which certainty, accuracy or under which circumstances the consideration was made. The consideration information is advantageously exploited by the terminal when navigating the route, as will be further detailed below. For instance, it may be conveyed to the terminal that no perfectly matching corresponding link/considered-to-be-suited link is contained in the non-current version of a map region available to the terminal, but that a close match (e.g. with only slightly different geometry) is present that could potentially be used for navigating the final route. Therein, the consideration information may for instance pertain to the consideration whether or not a link/considered-to-be-suited link corresponding to the link identified by a link identifier of the intermediate route and contained in the current version of the map region is contained in the non-current version of the map region available to the terminal, and not to the consideration whether or not a link is suited to be used in the route guiding process at the terminal.


The respective consideration information may for instance be indicative of a certainty of the respective consideration. Additionally or alternatively, the respective consideration information, together with the respective indication it is associated with or alone, indicates a graduation of the respective consideration with more than two levels. For instance, if the consideration information is represented by a binary value, the indication (which expresses the outcome of the consideration in binary nature) together with the binary consideration information allows differentiating between four different levels, i.e. yields a graduation with four levels. Two of these levels may for instance represent that no corresponding link/considered-to-be-suited link is contained in the non-current version of the map region, and the other two levels may for instance represent that a corresponding link/considered-to-be-suited link is contained in the non-current version of the map region. Within these two levels, respectively, the consideration information allows for a further differentiation. It can for instance be expressed that the respective considerations have been made with a high or low certainty. Alternatively, these four levels may be represented by the consideration information alone, e.g. if the consideration information is represented by two binary values.


The respective consideration information, together with the respective indication it is associated with or alone, may for instance indicate a graduation of the respective consideration with one or more of the following four levels:

    • a first level indicating that no link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal;
    • a second level indicating that no link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, but that at least one link/considered-to-be-suited link that is at the same position as or at least within a pre-defined distance from or comprises at least a link portion also contained in the link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route, is considered to be contained in the non-current-version of the map region available to the terminal;
    • a third level indicating that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, although at least one characteristic of both links differs;
    • a fourth level indicating that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal.


In this example, thus the first and second levels represent that no corresponding link/considered-to-be-suited link is contained in the non-current version of the map region, and the third and fourth levels represent that a corresponding link/considered-to-be-suited link is contained in the non-current version of the map region. This can be represented by proper choice of the indication (which expresses the outcome of the consideration in binary nature). Furthermore, a differentiation between the first and second level, and between the third and fourth level, is for instance possible by the consideration information, even if it can take only two different values.


The respective consideration information may for instance only be able to represent two different values. Non-limiting examples of such value-pairs are TRUE/FALSE or HIGH/LOW. The consideration information may then for instance only comprise one bit.


According to an exemplary embodiment of all aspects of the present invention, one or more of the following scenarios (a) to (d) hold:


(a) The consideration information of an indication of the one or more indications, together with the respective indication it is associated with or alone, indicates that no link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, and a surrogate link for this link/considered-to-be-suited link is used in the route guiding process.


(b) The consideration information of an indication of the one or more indications, together with the respective indication it is associated with or alone, indicates that no link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, but that at least one link or considered-to-be-suited link that is at the same position as or at least within a pre-defined distance from or comprises at least a link portion also contained in the link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route, is considered to be contained in the non-current version of the map region available to the terminal, and the at least one link/considered-to-be-suited link that is considered to be in the non-current version of the map region available to the terminal is searched, at the terminal, in the non-current version of the map region available to the terminal and, if found, is used in the route guiding process. The link/considered-to-be-suited link that is at the same position as or at least within a pre-defined distance from or comprises at least a part also contained in the link that is contained in the current version of a map region may for instance be a part of a link that has been split (when stepping from the non-current version of the map region to the current version) or a link that has been merged with another link (when stepping from the non-current version of the map region to the current version). The search may for instance comprise comparing one or more attributes of the link/considered-to-be-suited link, which one or more attributes are comprised in the final route, with respective attributes of one or more links comprised in the non-current version of the map region available to the terminal, and for instance identifying a link in the non-current version of the map region available to the terminal that is similar, with respect to the one or more attributes and according to one or more predefined criteria, to the link/considered-to-be-suited link, as the link to be used in the route guiding process. If this link is not found, for instance a surrogate link may be used in the route guiding process instead.


(c) The consideration information of an indication of the one or more indications, together with the respective indication it is associated with or alone, indicates that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, although at least one characteristic (e.g at least one attribute) of both links differs, and it is checked, at the terminal, if this link/considered-to-be-suited link is useable for the route guiding process, and if this link/considered-to-be-suited link is considered to be useable for the route guiding process, the link/considered-to-be-suited link is used for the route guiding process. If this link/considered-to-be-suited link is not found to be useable for the route guiding process, for instance a surrogate link may be used instead. The link/considered-to-be-suited link may for instance be considered useable for the route guiding process if the characteristic in which both links differ is considered at least not to significantly affect a route that is guided in the route guiding process, for instance in a way that the route can still be (in particular in a legal way) driven by a vehicle (wherein for instance also the type of the vehicle may be relevant, e.g. if vehicles of this weight are allowed to traverse this link or not, or if vehicles of this exhaustion class are allowed to traverse this link or not). This may for instance be the case if the connectivity of a link has at least partially changed, but wherein the parts of the connectivity that have changed do not affect the connection of this link to a previous and subsequent link of the route. A counter example would be a case where the direction of travel of a link has changed (e.g. from two-way to one-way). Although the geometry and a couple of further characteristics of the link may be unchanged, this change of the direction of travel may nevertheless lead to the link to be no longer useable in the route guiding process. The at least one characteristic may for instance not be a geometry and/or position of the links.


(d) The consideration information of an indication of the one or more indications, together with the respective indication it is associated with or alone, indicates that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, and this link or considered-to-be-suited link is used in the route guiding process. According to an example embodiment of all aspects of the present invention, the surrogate link is based on information comprised in (and e.g. obtained with) the final route. For instance, the final route may comprise, for each link identifier and/or indication, respective information characterizing the respective link to which the link identifier and/or indication pertains, for instance in the form of one or more respective attributes per link identifier/indication. These attributes may for instance be link attributes as already described above, e.g. may comprise information on the link geometry, link position, link connectivity, etc. Based on this information, a surrogate link can be determined and used for the route guiding process. This surrogate link may for instance however lack background map information.


According to an example embodiment of all aspects of the present invention, in the route guiding process, a presentation format of the surrogate link differs from a presentation format of a link that is contained in a map region available to the terminal. The presentation format may for instance be a visual, acoustic and/or haptic presentation format. The visual presentation format of a link may for instance also pertain to the background of the link. A visual presentation format of the links may for instance differ in one or more of the following: colour, width, line type (solid, dashed, dotted, etc.), texture, etc. An acoustic presentation format of the links may for instance differ in the voice used, or by a different spoken preamble (e.g. using the preamble “Attention, the current routing is based on a more recent map than the map currently available on your device”).


According to an example embodiment of all aspects of the present invention, a route request comprising route request information is issued from the terminal (e.g. towards a server or server cloud that computes the final route, e.g. to trigger determination and provision of the final route), wherein the route request information at least comprises a start link identifier identifying a start link in a non-current version of a first map region available to the terminal, and a target link identifier identifying a target link in a non-current version of a second map region available to the terminal, the second map region being either equal to or different from the first map region, or wherein the route request information at least comprises a start position, a start link identifier identifying a start link in a non-current version of a first map region available to the terminal, a target position and a target link identifier identifying a target link in a non-current version of a second map region available to the terminal, the second map region being either equal to or different from the first map region.


In the first case where the route request information at least comprises the start link identifier and the target link identifier, the intermediate route may then for instance be determined (e.g. by the server or server cloud) by checking whether a link that is considered to correspond to the start link in the non-current version of the first map region is contained in a current version of the first map region, and using this link as a start link of the intermediate route if the checking is positive; and checking whether a link that is considered to correspond to the target link in the non-current version of the second map region is contained in a current version of the second map region, and using this link as a target link of the intermediate route if the checking is positive.


In the second case, where the route request information at least comprises the start position, the start link identifier, the target position and the target link identifier, the intermediate route may for instance be determined (e.g. by the server or server cloud) as follows:

    • checking whether a link that is considered to correspond to (e.g. equal) the start link in the non-current version of the first map region is contained in a current version of the first map region, and
      • if the checking is positive, using this link as a start link of the intermediate route; and
      • if the checking is negative, identifying a link in the current version of the first map region that is considered to be closest to the start position and using this link as the start link of the intermediate route; and
    • checking whether a link that is considered to correspond to (e.g. equal) the target link in the non-current version of the second map region is contained in a current version of the second map region, and
      • if the checking is positive, using this link as a target link of the intermediate route; and
        • if the checking is negative, identifying a link in the current version of the second map region that is considered to be closest to the target position and using this link as the target link of the intermediate route.


The start position and the target position of the desired route may for instance be in coordinates such as for instance latitude/longitude coordinates, or as postal addresses.


The mismatch of the versions of the map regions(s) available to the terminal and to an apparatus that at least performs the determining of the intermediate route and for instance also the final route is thus not only considered when determining the final route, but already when determining the intermediate route. The terminal can advantageously provide the start link identifier and the target link identifier as link identifiers that pertain to non-current versions of one or more map regions available to the terminal.


According to an example embodiment of all aspects of the present invention, a request for an alternative final route is issued from the terminal in response to a user operation indicating that the user is not satisfied with the (already obtained) final route or in case that an absolute or relative number of indications in the final route that have a pre-defined characteristic or the absolute or relative distance in the final route represented by this number exceeds a pre-defined threshold, wherein the number of indications is in particular a total number of indications or a number of one or more indications that appear in the final route in immediate succession, and wherein the indications have the pre-defined characteristic at least if they respectively indicate that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in a non-current version of the map region available to the terminal.


In this way, it can be avoided, either for instance automatically or in response to a user operation (e.g. by pressing or touching a user interface element) that the final route is based on too many links of the current version(s) of the map region(s) (at all or in intermediate succession) that are not contained in the non-current version(s) of the map region(s) available to the terminal.


The terminal may for instance request the determining of the alternative route, for instance from the apparatus that at least performs the determining of the intermediate route and the final route. The terminal may for instance identify one or more (or all) of the indications that have the pre-defined characteristic and may for instance request that the alternative route avoids some or all of the identified indications.


Therein, the indications further may have the pre-defined characteristic if they respectively indicate that a link/considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal but is associated with consideration information that takes a pre-defined value (e.g. a pre-defined value out of two possible values). The consideration information may for instance be a certainty of the consideration, and the pre-defined value may for instance be a value that expresses a low certainty.


It is to be understood that the presentation of the invention in this section is merely by way of examples and non-limiting.


Other features of the invention will become apparent from the following detailed description considered in conjunction with the accompanying drawings. It is to be understood, however, that the drawings are designed solely for purposes of illustration and not as a definition of the limits of the invention, for which reference should be made to the appended claims. It should be further understood that the drawings are not drawn to scale and that they are merely intended to conceptually illustrate the structures and procedures described herein.





BRIEF DESCRIPTION OF THE FIGURES

In the figures show:



FIG. 1 a schematic block diagram of a system according to an exemplary aspect of the present invention;



FIG. 2 a flowchart showing an example processing performed at server 2 of FIG. 1;



FIG. 3 a flowchart showing an example processing performed in step 203 of the flowchart of FIG. 2;



FIG. 4 a flowchart showing an example embodiment of a method according to the first exemplary aspect of the present invention, for instance performed by terminal 3 of FIG. 1;



FIG. 5 a flowchart showing an example processing performed in step 402 of the flowchart of FIG. 4;



FIG. 6 a flowchart showing a further example processing performed in step 402 of the flowchart of FIG. 4;



FIG. 7 a schematic block diagram of an apparatus according to an exemplary aspect of the present invention;



FIG. 8 an example of an intermediate and a final route determined based on the intermediate route according to the present invention; and



FIG. 9 an exemplary illustration of batches of links in a final route according to the present invention.





DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS OF THE INVENTION

The following description serves to deepen the understanding of the present invention and shall be understood to complement and be read together with the description of example embodiments of the invention as provided in the above SUMMARY section of this specification.



FIG. 1 is a schematic high-level block diagram of a system 1 according to an exemplary aspect of the present invention. System 1 comprises a server 2, which may alternatively be embodied as a server cloud (e.g. a plurality of servers connected e.g. via the internet and providing services at least partially jointly), and a terminal 3, of which three different realizations are exemplarily shown: a car, a mobile phone and a portable navigation device (from top to bottom).


According to embodiments of the present invention, terminal 3 requests a route from server 2, and is provided with the determined route (denoted as final route) by server 2. Communication between terminal 2 and server 3 may for instance take place at least partially in a wireless fashion, e.g. based on cellular radio communication or on Wireless Local Area Network (WLAN) based communication, to name but a few examples. In this way, mobility of terminal 3 is guaranteed.



FIG. 2 is a flowchart 200 showing an example processing performed at server 2 of FIG. 1.


In a first step 201, route request information is obtained (e.g. received), e.g. from terminal 3 or from another entity.


Based on at least a part of the route request information, an intermediate route is determined in a step 202. The intermediate route comprises link identifiers that respectively identify links in respective current versions of one or more map regions. The intermediate route may thus be considered to be based on current map material throughout.


In step 203, a final route is determined by replacing, in the intermediate route, one or more link identifiers by respective indications. This is done under consideration of the respective version of the one or more map regions to which the intermediate route pertains and which are available to (e.g. stored at) terminal 3. Information on these versions may for instance have been provided by the terminal 3 to server 2 with a route request that also comprised the route request information. Each of the indications respectively indicates whether or not a link corresponding to a link, which is identified by the link identifier replaced by the indication and which is contained in a current version of a map region, is considered to be contained in a non-current-version of the map region available to the terminal. Alternatively, each of the indications respectively indicates whether or not a considered-to-be-suited link corresponding to a link, which is identified by the link identifier replaced by the indication and which is contained in a current version of a map region, is considered to be contained in a non-current-version of the map region available to the terminal. The considered-to-be-suited link is a link that is considered suited to be used for a route guiding process (based on the final route) at the terminal, for instance since this link has not been reported or measured to be erroneous or problematic.


The final route is then output in a step 204, e.g. to the terminal 3 or to another entity that then forwards the final route to terminal 3.


In flowchart 200, the steps 202 and 203 may be performed either serial (as shown in FIG. 2), or in parallel.



FIG. 3 is a flowchart showing an example processing performed in step 203 of the flowchart 200 of FIG. 2.


In a first step 301, a counter variable n is initialized to a value of 1.


In a step 302, it is then checked if a link identified by link identifier n (i.e. by the n-th link identifier in the intermediate route) is contained in a current version of a map region that is available to the terminal (information which respective version of map regions are available to the terminal may for instance have been provided in the route request information, see step 201 of FIG. 2). If this is the case, the link identifier n does not have to be replaced, since it can be used as it is by the terminal for navigation. Consequently, the flowchart then jumps to step 308. Otherwise, the link identifier n has to be replaced by an indication.


To this end, it is checked in step 303 whether a link corresponding to a link identified by the link identifier n is considered to be contained in a non-current version of a map region that is available to the terminal (This checking may for instance be based on one or more mapping tables as already described above, so that it is for instance only necessary to store the current versions of map regions and, with respect to respectively older versions, only respective mapping tables).


If this is the case, the terminal should be provided with information on this link identifier (pertaining to the non-current version of the map region available to the terminal), since this link could then be used by the terminal for navigation. Consequently, in step 304, the indication is set to the link identifier of the link considered to be contained in the non-current version of the map region.


If step 303 yields a negative result, the terminal should be informed that, for the link identified by the link identifier n and stemming from the current version of the map region, no equivalent exists in the non-current version of the map region that is available to the terminal. To this end, the indication is set to a pre-defined value, here exemplarily selected as “NONE”, in step 305.


In step 306, the link identifier n in the intermediate route is replaced by the indication as set in step 304 or 305.


As already explained above, as an exemplary alternative, it may not only be checked if a link is (at all) contained in the non-current version of the map region available to the terminal that corresponds to a link in the current version of the map region and is identified by a link identifier in the intermediate route, but if this link is also suited to be used for the route guiding process at the terminal. To this end, in the flowchart 300, an optional step 310 may be present, in which it is checked if the link considered to be contained in the non-current version of the map region available to the terminal (as found in step 303) is also considered to be suited to be used for the route guiding process at the terminal. This suitability check may for instance be based on a database that contains information on links that have been reported, measured and/or otherwise found to be not suited for route guiding and/or information on links that have been reported, measured and/or otherwise found to be suited for route guiding. If the check in step 310 yields a positive result, step 304 is performed. Otherwise, step 305 is performed, i.e. the non-suited link is handled as if it was not present in the non-current version of the map region available to the terminal, and will thus not be retrieved from the non-current version of the map region at the terminal.


In a further optional step 307, the indication used to replace link identifier n in step 306 is associated with consideration information, for instance by including the consideration information into the final route, e.g. respectively paired with the indication. The consideration information gives additional information on the consideration whether or not a link (or a considered-to-be-suited link, if optional step 310 is carried out) corresponding to the link identified by the link identifier n is considered to be contained in a non-current-version of the map region available to the terminal. This information may be exploited by the terminal when conducting a route guiding process based on the final route.


In step 308, it is checked if the counter variable n has already reached the number of link identifiers contained in the intermediate route. If this is the case, the flowchart 300 terminates. Otherwise, n is incremented by 1 in step 309, and the flowchart 300 jumps back to step 302.



FIG. 4 is a flowchart showing an example embodiment of a method according to the first exemplary aspect of the present invention. This flowchart is for instance performed or controlled by terminal 3 of FIG. 1.


In a first step 401, a final route comprising one or more indications is obtained. Each of the indications respectively indicates whether or not a link (or a considered-to-be-suited link) corresponding to a link in a current version of a map region and identified by a respective link identifier in an intermediate route is considered to be contained in a non-current version of the map region (which is available to the terminal 3). The final route may for instance result from the flowchart 200 of FIG. 2. In addition to the indications, the final route may comprise link identifiers identifying links in respective current versions of one or more map regions that are available to terminal 3. Furthermore, the indications, if indicating a positive consideration, i.e. that a corresponding link (or considered-to-be-suited link) is considered to be contained in the non-current version of a map region available to terminal 3, may consist of link identifiers identifying the link in the non-current version of the map region.


In a step 402, the a route guiding process is conducted at least based on the obtained final route and on at least respective non-current versions of one or more map regions that respectively contain, according to the indications comprised in the final route, a link (or considered-to-be-suited-link) corresponding to a link in a respective current version of the respective map region that is identified by a respective link identifier in the intermediate route. Also link attribute information may be used in the route guiding process, in particular for the determination of surrogate links as will be described below. If the final route comprises link identifiers identifying links in respective current versions of one or more map regions available to the terminal, these link identifiers and the respective current versions of the one or more map regions to which these link identifiers pertain, are also used in the route guiding process.


The route guiding process may for instance involve presenting links associated with the final route, which are either identified by link identifiers contained in the final route (irrespective of whether these serve as indications or not), or determined (e.g. as surrogate links) in response to indications (and optionally further information, such as consideration information) contained in the final route. The links may for instance be presented visually, acoustically and/or haptically. The presentation of the links may for instance take place under consideration of a current position of terminal 3, e.g. synchronized thereto.



FIG. 5 is a flowchart 500 showing an example processing performed in step 402 of the flowchart of FIG. 4. Therein, it is exemplarily assumed that the indications in the final route are not associated with consideration information. Furthermore, it is exemplarily assumed that the indications are either set to a respective identifier of a link contained in a non-current version of a map region available to terminal 3, or to a pre-defined value, here assumed as “NONE”, depending on whether a link (or a considered-to-be-suited link) corresponding to a link identified by a link identifier in the intermediate route and comprised in a current version of the map region is considered to be contained in the non-current version of the map region available to terminal 3 or not. From the perspective of terminal 3, the final route thus may appear to only comprise link identifiers, which may actually identify a link available to terminal 3 or be set to the pre-defined value (here assumed as “NONE). If a link identifier takes a value different from the pre-defined value, this link identifier may identify a link in a current version of a map region available to terminal 3, or may identify a link in a non-current version of a map region available to terminal 3. In this respect, no specific processing may be required at terminal 3 to differentiate such scenarios, and for instance only a special processing may be provided for the case that the link identifier takes the pre-defined value. Furthermore, in the present example embodiment, terminal 3 is not aware of (and accordingly does not apply respectively different processing) whether an indication pertains to a link only or to a considered-to-be-suited link, as has already been explained above. Therefore, no notational differentiation between links and considered-to-be-suited link will be made in the description of FIG. 5.


In a first step 501 a counter variable n is initialized to a value of 1.


In step 502, it is then checked if link identifier n in the final route (i.e. the n-th link identifier) has been set to the pre-determined value “NONE”.


If this is not the case, step 503 is executed, and a link identified by link identifier n is retrieved from a current or non-current version of a map region available to the terminal. According to step 504, this retrieved link is used for the route guiding process. This may for instance involve at least temporarily storing the retrieved link.


If the check in step 502 yields a positive result, step 505 is executed, and a surrogate link is determined. The surrogate link may for instance be determined based on link attributes of the link (from the current version of the map region) whose link identifier in the intermediate route is replaced by the indication/link identifier n in the final route. (see FIG. 8 for an example).


According to step 506, the surrogate link is used for the route guiding process, which may for instance involve at least temporarily storing the retrieved link.


In step 507, it is checked if the counter variable n has already reached the number of link identifiers contained in the final route. If this is not the case, n is incremented by 1 in step 508, and the flowchart 500 jumps back to step 502.


Otherwise, the route guiding process is conducted in step 509, and subsequently, the flowchart 500 terminates. In the route guiding process of step 509, for instance the retrieved links and surrogate links stored according to steps 504 and 506 are further processed and/or presented, in sequence, e.g. under consideration of the current position of the terminal.


Therein, as described with reference to FIG. 9 below, subsequent links of the same type may be processed in batches. As an alternative to step 509, the route guiding process may be conducted as part of steps 504 and 506, i.e. at least partially in parallel to the processing of the link identifiers comprised in the obtained final route.


If a surrogate link is to be displayed to a user of the terminal 3 in the route guiding process, the underlying map background may for instance be blurred or faded out or otherwise graphically altered e.g. to indicate to the user that there may be a discrepancy between the background map data and the non-available link. Additionally or alternatively, the surrogate link may be given in a different colour than the colour used for the rest of the route (e.g. represented by the links retrieved in step 503. This may alert the user of terminal 3 to pay particular attention when traversing this link during the route guiding process.


In the flowchart 500, between steps 507 and 509, there may be an optional step in which it is checked if an absolute or relative number (with respect to all links of the route that shall be used according to steps 504 and 506) of surrogate links or the absolute or relative distance (with respect to the entire distance covered by all links of the route that shall be used according to steps 504 and 506) in the route represented by this number exceeds a pre-defined threshold. The number of indications may in particular be a total number of surrogate links or a number of one or more surrogate links that appear in the final route in immediate succession. It may thus for instance be the case that a single surrogate link is considered to be too long.


If the check of this optional step should be true, for instance a request for an alternative route may be issued, e.g. towards the server 2, or a user of terminal 3 may be queried whether a request for an alternative route shall be issued or not. This query may for instance comprise information on the amount of surrogate links in terms of number or distance that triggered the query, so that a user may decide at least based on this information if an alternative route shall be requested or not. The request for an alternative route may for instance identify one or more surrogate links that shall be omitted in the alternative route.


As alternative embodiments, the checking of this optional step may be performed before the step 507, in particular if an absolute number of surrogate links or an absolute distance represented by these surrogate links is checked for.


As a further alternative, a user may be given an opportunity to request an alternative route during the route guiding process of step 509, e.g. after the route to be guided has been presented to the user.



FIG. 6 is a flowchart 600 showing a further example processing performed in step 402 of the flowchart of FIG. 4. Therein, it is now exemplarily assumed that the indications in the final route are associated with respective consideration information, which reflects a certainty of the respective consideration and can assume either the value “TRUE” or “FALSE”. Furthermore, it is again exemplarily assumed that the indications are either set to a respective identifier of a link contained in a non-current version of a map region available to terminal 3, or to a pre-defined value, here assumed as “NONE”, depending on whether a link (or considered-to-be-suited link) corresponding to a link identified by a link identifier in the intermediate route and comprised in a current version of the map region is considered to be contained in the non-current version of the map region available to terminal 3 or not. From the perspective of terminal 3, in the present embodiment, there is no difference between links and considered-to-be-suited links, so that no further differentiation in this respect will be made in the description of FIG. 6.


In a first step 601 a counter variable n is initialized to a value of 1.


In step 602, it is then checked if link identifier n in the final route (i.e. the n-th link identifier) has been set to the pre-determined value “NONE”.


If this is not the case, it is then checked in step 603 whether the link identifier n is associated with consideration information or not. This check takes into account that there may be link identifiers that act as indications according to the present invention (and thus respectively identify a link in a non-current map region available to terminal 3) and then may be associated with consideration information, and link identifiers that do not act as indications (and respectively identify a link in a current version of a map region available to terminal 3) and then may not be associated with consideration information. However, it is also conceivable that consideration information is also associated with link identifiers that identify links that are contained in current versions of map regions available to terminal 3, and that this consideration information is—for such link identifiers—set to a value expressing a high certainty, e.g. to the value “TRUE”. Steps 603 and 606 may then be dispensed with, the “no”-branch of check 602 would directly lead to step 604, and in step 605, the link could be retrieved from either a current version or a non-current version of a map region available to terminal 3.


If it is determined in step 603 that consideration information is not associated with the link identifier n, the flowchart 600 jumps to step 606, where a link identified by the link identifier is retrieved from a current map region available to terminal 3. According to step 607, this retrieved link is then used for the route guiding process (see step 617 below), e.g. by at least temporarily storing this link.


Otherwise, it is checked in step 604 if the consideration information associated with the link identifier n is “TRUE”. If this is the case, in step 605, a link identified by the link identifier n is retrieved from a non-current map region available to terminal 3, and in step 607, this retrieved link is then used for the route guiding process (see step 617), e.g. by at least temporarily storing it. This link corresponds to a link of the intermediate route that is contained in a current version of a map region.


If the check in step 604 yields a negative result, i.e. it is considered (e.g. by server 2) that a link (or considered-to-be-suited link) corresponding to a link contained in the current version of a map region and identified by a link identifier of the intermediate route is contained in a non-current version of the map region available to terminal 3, but this consideration has a low certainty (“FALSE”), the link identified by the link identifier n comprised in the final route is retrieved from the non-current version of the map region available to terminal 3 in step 608.


In step 609, it is then checked if this retrieved link is useable for the route guiding process. This check may for instance involve checking if the differences between link attributes contained for this link in the final route differ with respect to link attributes of the retrieved link only in a way that does not or only insignificantly affect the usability of the retrieved link in the route guiding process, for instance under consideration of characteristics of the vehicle that is to drive the route. This may for instance be the case if the difference in attributes only pertains to reduction of the maximum allowed weight of a vehicle that is however still met by a vehicle associated with terminal 3, or to an extension of a number of lanes from 2 to 3, to name but a few examples. If step 609 yields a positive result, the retrieved link is used for the route guiding process (see step 617) according to step 607. Otherwise, a surrogate link is determined in step 610. The surrogate link may for instance be determined as already described with reference to step 505 of FIG. 5 above. According to step 611, the surrogate link is then used for the route guiding process (see step 617).


The actions described so far occur when a link identifier in the final route is different from the pre-defined value “NONE”. If this is not the case, i.e. if the check in step 602 yields a positive result, it is first checked in step 612 if the consideration information associated with the link identifier set to “NONE” is “TRUE”. If this is the case, there is for sure no suitable link in the non-current version of the map region available to terminal 3 that corresponds to the link of the current version of the map region identified in the intermediate route.


Consequently, a surrogate link has to be determined in step 610 and is used for the route guiding process (see step 617) according to step 611.


If the check in step 612 turns out that the consideration information is “FALSE”, this indicates that it has been considered (e.g. at server 3) that no link (or considered-to-be-suited link) exists in the non-current version of the map region available to terminal 2 that perfectly matches the link of the intermediate route contained in the current version of the map region, but that there may be a link in the non-current version of the map region that is nearby or similar (e.g. at the same position as or at least within a pre-defined distance from or comprising at least a link portion also contained in) the link of the current version of the map region that is identified by the link identifier in the intermediate route, and that thus may be suited for navigation. This may for instance concern links that have, when stepping from a pervious version of a map region to a current version of the map region, been split into two links or combined with another link. Accordingly, it is checked in step 613 if such a nearby/similar link can be found in the non-current version of the map region. This check may for instance be performed based on link attributes contained in the final route for the link to which link identifier n pertains. These link attributes, e.g. in particular those link attributes that pertain to a link position and/or link geometry, may for instance be compared to respective link attributes of links comprised in the non-current version of the map region available to the terminal to identify a nearby/similar link. It may well be conceivable that this check/search yields two or more nearby/similar links contained in the non-current version of the map region available to terminal 2, e.g. two or more links of the non-current version of the map region that have been combined into a single link in the current version of the map region. In this case, e.g. all of these nearby/similar links may for instance be used for the route guiding process. The check of step 613 may additionally also comprise a check if the found nearby/similar link(s) is/are useable for the route guiding process, e.g. if their attributes impose restrictions (weight, exhaustion class) that cannot be met by the vehicle that shall drive the route or cannot be included into the route (e.g. due to an allowed driving direction that contravenes the driving direction of the route).


If the check of step 613 is positive, the nearby/similar link(s) is/are used for the route guiding process (see step 617) according to step 614. Otherwise, a surrogate link has to be determined in step 610 and is used for the route guiding process according to step 611.


In step 615, it is then checked if the counter variable n has already reached the number of link identifiers contained in the final route. If this is not the case, n is incremented by 1 in step 616, and the flowchart 600 jumps back to step 602.


Otherwise, the route guiding process is conducted in step 617, and subsequently, the flowchart 600 terminates. In the route guiding process of step 617, for instance the retrieved links, surrogate links and nearby/similar links stored according to steps 607, 611 and 614 are further processed and/or presented, in sequence, e.g. under consideration of the current position of the terminal. Therein, as described with reference to FIG. 9 below, subsequent links of the same type may be processed in batches. As an alternative to step 617, the route guiding process may be conducted as part of steps 607, 611 and 614, i.e. at least partially in parallel to the processing of the link identifiers comprised in the obtained final route.


As explained for the flowchart 500 of FIG. 5, also in the flowchart 600 of FIG. 6, there may be an optional step between steps 615 and step 617 pertaining to a number of surrogate links or the distance in the route represented by them, which may lead to a request for an alternative route or at least a query to a user of terminal 3 if an alternative route shall be requested. In this respect, it is referred to the above description of flowchart 500.



FIG. 8 shows an example of an intermediate route 80 and a final route 90 determined based on the intermediate route 80 according to the present invention. Intermediate route 80 and final route 90 would, in this form, be available at server 2 of FIG. 1, and final route 90 would be provided to terminal 3 of FIG. 1.


Intermediate route 80 comprises a plurality of m links, of which only links 801-805 are furnished with reference signs. Each of these links is identified by a link identifier (LinkID) and comprises a plurality of n attributes, of which in FIG. 8, exemplarily only a link position, a link geometry and a link connectivity are shown. Both m and n are assumed to be integer numbers. In intermediate route 80, the first link 801 is the start link of the route, and link 805 is the end link of the route. The route can be guided/navigated by following the links starting from link 801 to link 805 in the order as they appear in the intermediate route 80.


The final route 81 is obtained from the intermediate route by replacing the LinkIDs pertaining to a current version of a map region by LinkID's (serving as indications) that pertain to a non-current version of the map region available to the terminal (for the sake of simplicity of presentation, it is here exemplarily assumed that only one map region is concerned by the routes 80 and 81), as described with reference to the flowchart 300 of FIG. 3 above. Final route 81 comprises, for each link identifier LinkID′, respective consideration information (here in the form of a certainty value that can take the values of TRUE or FALSE), and link attributes as in the intermediate route 80. Furthermore, each pair of LinkID′ and consideration information is accompanied by link attributes, as in the intermediate route 80, yielding an entry of the final route, wherein entries 811-815 (out of a total of m entries) are furnished with reference signs.


It can be seen that the start link 801 and end link 805 of the intermediate route are considered to correspond to respective links in the non-current version of the map region available to the terminal, and thus the LinkID's of these respective links (which here exemplarily equal the LinkIDs of their counterpart links in the current version of the map region) are present in the final route 81 as link identifiers of entries 811 and 815. Furthermore, the certainty values of these links have been set to TRUE.


The second link 802 of the intermediate route 80 (stemming from the current version of the map region) does not exactly equal a link contained in the non-current version of the map region available to the terminal, but has undergone changes. For instance, the link connectivity attribute may have changed. Furthermore, the link identifier has changed. Thus, in the second entry 812 of the final route 81, the link identifier Bac45d234 . . . of the intermediate route 80 has been replaced by the link identifier Bac477734 . . . , which identifies the link of the non-current version of the map region that is considered to basically correspond to the link in the current version of the map region (apart from the attribute change) identified by link identifier Bac45d234 . . . , and the certainty value is set to FALSE. It is to be noted that the attribute information of entry 812 in final route 81 corresponds to the attribute information of link 802 in the intermediate route 80. Thus although the link identifier LinkID′ in entry 812 pertains to a non-current version of the map region, the attributes of entry 812 pertain to the link (Bac45d234 . . . ) contained in the current version of the map region. In this way, it indicated to terminal 3 that it needs to check if the link of its non-current version of the map region identified by link identifier Bac477734 . . . is useable in the route guiding process, which can for instance be performed by comparing the attributes of entry 812 with the attributes stored for the link identified by LinkID′ Bac477734 . . . in the non-current version of to map region.


For the third link 803 of the intermediate route 80, no corresponding link is considered to be contained in the non-current version of the map region available to the terminal. In the final route 81, the LinkID′ of the third entry 813 thus has to be set to NONE, and the certainty value has been set to TRUE. This indicates to the terminal that a surrogate link shall be used. This surrogate link can be based on the attribute information provided in entry 813, which attribute information corresponds to the attribute information contained in link 803.


For the fourth link 814 of the intermediate route 80, also no corresponding link is considered to be contained in the non-current version of the map region available to the terminal, but it is considered that a nearby or similar link may exist in the non-current version of the map region available to the terminal, e.g. due to a split or merging of links. Thus, the LinkID′ of the fourth entry 814 of final route 81 has been set to NONE, and the certainty value has been set to FALSE. This indicates to the terminal 3 that a search for a nearby/similar link in the non-current version of the map region is worthwhile. This search can be based on the attribute information provided in entry 814, which attribute information corresponds to the attribute information contained in link 804.



FIG. 9 is an exemplary illustration of batches 90, 91, 92 and 93 of links in a final route 9 according to the present invention. In this representation of the final route 9, only the link identifiers (LinkID′) and the consideration information (here in the form of a certainty value, which can take the value TRUE or FALSE) as in the example of FIG. 8), are exemplarily shown, although there may be further attributes for each link contained in the final route 9, as has been described with reference to FIG. 8 above.


The final route 9 comprises thirteen link identifiers with associated certainty information. Immediately succeeding entries in the final route that have the same type of link identifier (NONE or not NONE) and the same certainty value (TRUE or FALSE) are gathered into respective batches 90, 91, 92 and 93. These batches may for instance be considered in the route guiding process (see step 617 of FIG. 6) and/or in a pre-processing of the final route 9 that takes place at the terminal 3 before the route guiding process, for instance for determining a representation of the final route 9 in which all links are seamlessly connected with each other.


Therein, for instance the last link of a batch (e.g. 90) may be connected with the first link of the next batch (e.g. 91), for instance by connecting an end position of the last link with a start position of the first link by a straight line or a line that is matched to information from map region available to the terminal. With the batches, connecting links may for instance be easily accomplished since the connectivity (e.g. the fact that the links are directly connectable) of the links may already be present since these links of the same batch stem from the same version of a map region (or the same version of several map regions), in particular for batch 92 in which all links are contained in the non-current version of map regions available to the terminal, or in batch 93, in which all links are built as surrogate links based on information provided (e.g. as attributes) with the final route. Also in batches 90 and 91, there is a high probability that the respective checks (see step 608 and 613) yield a positive results resulting in the respective links used for the route guiding process to stem from the same version of one or more map regions.


The batch-based processing may be understood to include micro-routing, in which it is attempted to find a local route (e.g. based on usual routing algorithms such as e.g. Djisktra or A*) for the batch, that complies with the length, travel direction, functional class (e.g. road type) and geometry attributes of the final route provided by the server 3.



FIG. 7 is a schematic block diagram of an apparatus 7 according to an exemplary aspect of the present invention. Apparatus 7 may for instance represent terminal 3 of FIG. 1 and may be configured to perform and/or control the flowchart 200 of FIG. 2.


Apparatus 7 comprises a processor 70, working memory 71, program memory 72, data memory 73, communication interface(s) 74 and a user interface 75.


Apparatus 7 may for instance be configured to perform and/or control or comprise respective means (70-75) for performing and/or controlling the method according to the first exemplary aspect of the invention. Apparatus 7 may as well constitute an apparatus comprising at least one processor (70) and at least one memory (72) including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause an apparatus (e.g. apparatus 7) at least to perform and/or control the method according to the first exemplary aspect of the invention.


Processor 70 may for instance comprise a link retriever/determinator 701 and a route guiding engine 702 as functional and/or structural units. Link retriever/determinator 701 may for instance be configured to retrieve links identified by a respective link identifier from respective current or non-current versions of one or more map regions (see e.g. steps 605, 606, 608 of FIG. 6), and/or to search a nearby/similar link (see e.g. step 613 of FIG. 6) and/or to determine surrogate links (see e.g. step 610 of FIG. 6). Route guiding engine 702 may for instance be configured to conduct a route guiding process at least based on the final route and current/non-current versions of map regions available to apparatus 7 (see e.g. step 617 of FIG. 6), for instance by using user interface 75. Processor 70 may for instance further control the memories 71-73, the communication interface(s) 74 and the optional user interface 75.


Processor 70 may for instance execute computer program code stored in program memory 72, which may for instance represent a computer readable storage medium comprising program code that, when executed by processor 70, causes processor 70 to perform the method according to the first exemplary aspect of the present invention.


Processor 70 (and also any other processor mentioned in this specification) may be a processor of any suitable type. Processor 70 may comprise but is not limited to one or more microprocessor(s), one or more processor(s) with accompanying one or more digital signal processor(s), one or more processor(s) without accompanying digital signal processor(s), one or more special-purpose computer chips, one or more field-programmable gate array(s) (FPGA(s)), one or more controller(s), one or more application-specific integrated circuit(s) (ASIC(s)), or one or more computer(s). The relevant structure/hardware has been programmed in such a way to carry out the described function. Processor 70 may for instance be an application processor that runs an operating system.


Program memory 72 may also be included into processor 70. This memory may for instance be fixedly connected to processor 70, or be at least partially removable from processor 70, for instance in the form of a memory card or stick. Program memory 72 may for instance be non-volatile memory. It may for instance be a FLASH memory (or a part thereof), any of a ROM, PROM, EPROM and EEPROM memory (or a part thereof) or a hard disc (or a part thereof), to name but a few examples. Memory may also comprise an operating system for processor 70. Program memory 72 may also comprise a firmware for apparatus 7.


In the apparatus 7, further a working memory 71 is present, for instance in the form of a volatile memory. It may for instance be a Random Access Memory (RAM) or Dynamic RAM (DRAM), to give but a few non-limiting examples. It may for instance be used by processor 70 when executing an operating system and/or computer program.


Data memory 73 may for instance be a non-volatile memory. It may for instance be a FLASH memory (or a part thereof), any of a ROM, PROM, EPROM and EEPROM memory (or a part thereof) or a hard disc (or a part thereof), to name but a few examples. Data memory 73 may for instance store one or more map regions. At least one of these map regions may be of a non-current version, i.e. a newer version exists, e.g. at a server or server cloud that determines final routes for a terminal that comprises apparatus 7.


Communication interface(s) 74 enable apparatus 7 to communicate with other entities, e.g. with server 2 of FIG. 1. The communication interface(s) 74 may for instance comprise a wireless interface (e.g. a cellular radio communications interface and/or a WLAN interface) and/or a wire-bound interface, such as for instance an IP-based interface, for instance to communicate with entities via the Internet. The communication interface(s) 74 may for instance comprise a bus interface, e.g. a CAN bus interface, e.g. to communicate with other apparatuses (e.g. a storage that stores the respective versions of one or more map regions that are available to apparatus 7 or the terminal that comprises apparatus 7) that are arranged, together with apparatus 7, in the same device, e.g. in the same vehicle.


User interface 75 and may for instance comprise a display for displaying information to a user. User interface 75 may further comprise an input device (e.g. a keyboard, keypad, touchpad, mouse, etc.) for receiving information from a user. Additionally or alternatively, user interface 75 may comprise an acoustic interface for presenting acoustic information to the user (e.g. in the form of a loudspeaker) and/or for receiving information, e.g. commands, from the user (e.g. in the form of a microphone). Additionally or alternatively, user interface 75 may comprise a haptic interface for presenting information to the user in haptic form, e.g. via vibration.


Some or all of the components of the apparatus 7 may for instance be connected via a bus. Some or all of the components of the apparatus 7 may for instance be combined into one or more modules.


In the following, a further detailed example embodiment of the present invention will be presented. Therein, server 2 (see FIG. 1) will be referred to as the SERVER, and terminal 3 will be referred to as the CLIENT. The one or more current-version map regions available at server 2 will be referred to as the ONLINE map, while the one or more non-current-version map regions available to the terminal 3 will be referred to as the OFFLINE map. Link identifiers will be referred to as link IDs. Link identifiers pertaining to links in the current-version map regions are denoted as LINK_ID, whereas link identifiers pertaining to links in the non-current version map regions are denoted as LINK_ID′. The indications will take the form that either a link identifier pertaining to a link in the non-current version map region is used, or the pre-defined value “NONE” is used. The consideration information will be certainty information that takes the values of “TRUE” or “FALSE”.


In a navigation system in which a routing SERVER (e.g. as part of a cloud) computes routes for a CLIENT, generally, SERVER and CLIENT need to have exactly the same map versions so that a route that is computed online at the SERVER can be transferred to the CLIENT. The reason is that link IDs of map links are used to describe the chain of roads in the route so that the CLIENT can guide/navigate along that route from the SERVER.


If it was agreed to maintain a service for a navigation system provider for four years and release a map every quarter and have four different map format versions in the wild, one would need to keep 4*4*4=64 map versions in different SERVERs alive because one would have to anticipate that some device having any of this 64 variants wants to connect to the SERVERs. Also, this approach would not scale for rapid refresh (e.g. for weekly/daily releases), the number of maps to maintain would then just explode, and so would the memory, performance and maintenance problems.


To this end, example embodiments of this invention define a workflow between CLIENT and SERVER to transmit a route and handle differences between the CLIENT map and SERVER map.


Preconditions

The SERVER in the cloud only uses the latest/freshest map, called the ONLINE map. The CLIENT might have a preinstalled, potentially outdated map, call the OFFLINE map. A map is made of different REGIONS, where each of the regions may have a different version tag, e.g. the offline map might be having Germany North with version Q1/2015 and Germany South with version Q3/2015, but it can also be made only of a single REGION “whole world”. For a single version tag, e.g. Q1/2015, there may for instance not be any two links with the same ID, even across multiple regions, e.g. the link ID may be world-wide unique with respect to a single version.


Compilation

During compilation, whenever a REGION is released with the latest version NEW and deployed into the SERVER to be part of the ONLINE map, a mapping of link IDs for that REGION from version NEW to the previous version PREV is generated as follows:


Each LINK_ID in NEW is mapped to (LINK_ID′, CERTAINTY) with the following meaning:

    • LINK_ID′ is NONE and CERTAINTY is TRUE:
      • During compilation, these links are identified as links that describe new roads, bridges etc. in NEW that did not yet exist in the PREV version, i.e. there is for sure no link in the OFFLINE map that could be used.
    • LINK_ID′ is NONE and CERTAINTY is FALSE:
      • During compilation, these links are identified as links that describe changed topology in NEW that could also exist in the PREV version, because there is a link at the same position. However, it was not possible to provide a mapping to a PREV link, e.g. the link might have been split and corresponds to two links.
    • LINK_ID′ is a link and CERTAINTY is FALSE:
      • During compilation, these links are identified as links that describe almost the same link in the PREV version, i.e. same road, but e.g. attributes or connectivity are different.
    • LINK_ID′ is a link and CERTAINTY is TRUE:
      • During compilation, these links are identified as links that describe exactly the same link in the PREV version, i.e. same road, same attributes, same connectivity.


The same algorithm may be applied to generate a mapping of links from PREV to NEW, map a link LINK_ID′ in PREV to (LINK_ID, CERTAINTY) where LINK_ID is NONE or names some existing link in NEW. However, instead of running the full algorithm again, one could also just invert the mapping from NEW to PREV to generate a mapping from PREV to NEW.


Hence, a mapping of links in NEW to PREV and from PREV to NEW has been generated. These artefacts get deployed to the SERVER with the ONLINE map, so that—as outlined below—the SERVER can use them to map routes between different versions.


In some embodiments, CERTAINTY could also be completely omitted or replaced by some more fine grained measurement of the CERTAINTY that the links are still the “same” with some confidence value or probability.


From experiments, it can be observed that most of the mappings are ID-preserving with CERTAINTY=TRUE, e.g. link 123 from NEW maps to 123 in version PREV. So to save space, one could completely omit saving one-to-one mappings. Whenever one would try to lookup a link LINK_ID and could not find an entry in the mapping table, one could assume that it maps to (LINK_ID, TRUE) in the other map, i.e. same LINK_ID with CERTAINTY=TRUE.


Link_Id Resolving Algorithm from Version A to Version B


Given a link with LINK_ID_A of a REGION with version A, one might want to resolve it to a link LINK_ID of that REGION with version B. Whenever a new version of REGION was deployed, mappings between the IDs from that version to the previous one in both directions were generated and persisted. By induction, there must be a sequence of versions V_1=A, V_2, . . . , V_n=B, where for each consecutive pair of versions V_i to V_{i+1}, one generated and persisted a mapping of link IDs. In a simple case, if A and B are consecutive versions, one simply would have V_1=A and V_2=B.


Then, the following algorithm could be run:

    • Start with i=1, LINK_ID=LINK_ID_A and CERTAINTY=TRUE
    • Repeat the following process while i<n and LINK_ID is not NONE:
      • Map LINK_ID from version V_i to V_{i+1} using the mapping table to retrieve (LINK_ID′, CERTAINTY′)
      • Set LINK_ID=LINK_ID′
      • If CERTAINTY′ is FALSE, then set CERTAINTY=FALSE
    • Return (LINK_ID, CERTAINTY) as the mapping of LINK_ID_A in version B.


This algorithm basically chains all mappings from V_1 to V_n. The final CERTAINTY is only TRUE if all intermediate mapping had CERTAINTY=TRUE.


Alternate/Enhanced Approach

Instead of storing only mappings between two consecutive mappings, one might also compute and persist mappings for the latest ONLINE to ALL previous versions and then would not have to chain mappings, but could directly use a single mapping table between two versions. The downside of this approach is that it is computational more expensive during compilation, but later is faster when serving routes since it is a single lookup instead of a chain of lookups.


Client-Side Route Request

For a route request, the CLIENT may for instance know:

    • START_POSITION: The coordinates of the start point, e.g. the current position of the CLIENT.
    • START_LINK_ID′: The ID′ of the road link of the START_POSITION in its OFFLINE map, e.g. determined by map matching of START_POSITION at the CLIENT.
    • TARGET_POSITION: The coordinates of the target point, e.g. determined by geocoding of the target address.
    • TARGET_LINK_ID′: The ID′ of the road link of the TARGET_POSITION in its OFFLINE map, e.g. determined by map matching of TARGET_POSITION at the CLIENT or as a direct result of geocoding.


The CLIENT sends a routing request to the routing server with START_POSITION, START_LINK_ID′, TARGET_POSITION, TARGET_LINK_ID′, and a list of versions of all the REGIONS of its OFFLINE map.


Server-Side Route Computation

The SERVER receives the request from the CLIENT.


The SERVER uses the LINK_ID RESOLVING ALGORITHM to resolve START_LINK_ID′ from the version the CLIENT has transmitted for the REGION of START_LINK_ID′ to the corresponding START_LINK_ID in the version of the ONLINE map. If a mapping could not be found or is having CERTAINTY=FALSE, the SERVER uses map matching to find the closest link in the ONLINE map and uses it for START_LINK_ID. The SERVER does exactly the same to resolve TARGET_LINK_ID′ in OLD to TARGET_LINK_ID in NEW.


The SERVER computes a route from START_LINK_ID to TARGET_LINK_ID in the ONLINE map using the desired routing mode, e.g. traffic optimized, fastest, shortest, etc. The routing result now contains LINK_IDs of all the links that describe the route in the ONLINE map.


For each LINK_ID, the server uses the LINK_ID RESOLVING ALGORITHM to resolve the LINK_ID in the version of the ONLINE map to an LINK_ID′ in the version the CLIENT transmitted for the REGION that contains link LINK_ID. The LINK_ID in the routing result is substituted with LINK_ID′ and also the CERTAINTY is added for each link.


The SERVER transmits the route to the CLIENT. Therein, link information is transmitted together with the route, e.g. link geometry, link position, direction of travel, etc. The required maneuvers to traverse the sequence of links may for instance also be provided from the SERVER to the CLIENT, e.g. together with the route. Background map information (which may be comprised in the ONLINE/OFFLINE maps) may however not be transmitted with the route, since its size may be too large.


Client-Side Behaviour

The CLIENT receives the route from the SERVER. For all the links (LINK_ID′, CERTAINTY) in the route response, the following logic is applied on the client:

    • LINK_ID′ is NONE and CERTAINTY is TRUE:
      • It means the CLIENT is surely not having this link in its OFFLINE map and needs to fall-back to a solution (e.g. a surrogate link) that does not use the OFFLINE map data here, but still guides/navigates along that linkand that link's ID′ is put in the route. If no partially matching link is available, fall-back to a solution (e.g. a surrogate link) that does not use the OFFLINE map data here, but still guides/navigates along that link (which is navigable in the route).
    • LINK_ID′ is a link and CERTAINTY is FALSE:
      • It means the CLIENT is surely having a link LINK_ID′ in its OFFLINE map, but it has to verify with its OFFLINE map data whether this is really the correct link, i.e. navigable in the route. If the link is not navigable, NONE is put in the route and hence fall-back to a solution (e.g. a surrogate link) that does not use the OFFLINE map data here, but still navigates along that link (which is navigable in the route).
    • LINK_ID′ is a link and CERTAINTY is TRUE:
      • It means the CLIENT is surely having a link LINK_ID′ in its OFFLINE map and that this one has to be used.


If the route contains stretches of NONE segments, the following fall-back solutions can for instance be applied:

    • Guide/navigate through this unknown link and make the user aware of his locally outdated map.
    • Render the link with a special colour and blur/fade out the underlying map a bit to emphasize there is a change.


Optionally, if the stretch of NONE segments is too long or complex (e.g. according to a pre-defined complexity criterion), the CLIENT might decide to offer the user an alternative that contains a less number of NONE segments. For example, the CLIENT might query the SERVER for another route between start and end point and send the geometry of the too long NONE segments to tell SERVER what link to avoid. Alternatively, the SERVER may decide that a determined route contains one or more stretches of too long or complex NONE segments and may for instance then, before providing this final route to the CLIENT, determine an alternative route.


Server Side Controlled Behaviour:

In specific cases, e.g. where road links have been reported as problematic, the SERVER could manipulate the LinkID's and/or CERTAINTY in order to force CLIENTS into specific behaviours.


For instance, links of a route that have been reported as problematic may be assigned a respective LinkID′ of NONE and a CERTAINTY of TRUE, thus causing these links to be treated at the CLIENT as links that are not available in the CLIENT's OFFLINE map and thus have to be determined based on information (e.g. link attributes) contained in the route. These links, although basically contained in the CLIENT's OFFLINE map, are thus replaced with links that are based on information provided to the CLIENT in the route.


In the present specification, any presented connection in the described embodiments is to be understood in a way that the involved components are operationally coupled. Thus, the connections can be direct or indirect with any number or combination of intervening elements, and there may be merely a functional relationship between the components.


Moreover, any of the methods, processes and actions described or illustrated herein may be implemented using executable instructions in a general-purpose or special-purpose processor and stored on a computer-readable storage medium (e.g., disk, memory, or the like) to be executed by such a processor. References to a ‘computer-readable storage medium’ should be understood to encompass specialized circuits such as FPGAs, ASICs, signal processing devices, and other devices.


The expression “A and/or B” is considered to comprise any one of the following three scenarios: (i) A, (ii) B, (iii) A and B. Furthermore, the article “a” is not to be understood as “one”, i.e. use of the expression “an element” does not preclude that also further elements are present. The term “comprising” is to be understood in an open sense, i.e. in a way that an object that “comprises an element A” may also comprise further elements in addition to element A.


It will be understood that all presented embodiments are only exemplary, and that any feature presented for a particular example embodiment may be used with any aspect of the invention on its own or in combination with any feature presented for the same or another particular example embodiment and/or in combination with any other feature not mentioned. In particular, the example embodiments presented in this specification shall also be understood to be disclosed in all possible combinations with each other, as far as it is technically reasonable and the example embodiments are not alternatives with respect to each other. It will further be understood that any feature presented for an example embodiment in a particular category (method/apparatus/computer program) may also be used in a corresponding manner in an example embodiment of any other category. It should also be understood that presence of a feature in the presented example embodiments shall not necessarily mean that this feature forms an essential feature of the invention and cannot be omitted or substituted.


The sequence of all method steps presented above is not mandatory, also alternative sequences may be possible. Nevertheless, the specific sequence of method steps exemplarily shown in the figures shall be considered as one possible sequence of method steps for the respective embodiment described by the respective figure.


The invention has been described above by means of example embodiments. It should be noted that there are alternative ways and variations which are obvious to a skilled person in the art and can be implemented without deviating from the scope of the appended claims.

Claims
  • 1. A method comprising: obtaining, at a terminal, a final route that comprises one or more indications, wherein each indication of the indications respectively indicates, whether or not a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in an intermediate route determined at least based on respective current versions of one or more map regions and used as a basis for determining the final route, is considered to be contained in a non-current version of the map region available to the terminal; andconducting a route guiding process at the terminal at least based on the final route and at least respective non-current versions of one or more map regions available to the terminal that respectively contain, according to the one or more indications, a link or considered-to-be-suited link corresponding to a link that is contained in a respective current version of the respective map region and is identified by a respective link identifier comprised in the intermediate route, wherein the considered-to-be-suited link is a link that is considered to be suited to be used for the route guiding process at the terminal.
  • 2. The method according to claim 1, wherein one or more of the one or more indications respectively indicate that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in the non-current version of the map region available to the terminal.
  • 3. The method according to claim 1, wherein in case that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in the non-current version of the map region available to the terminal, the indication comprises or consists of a link identifier identifying this link or considered-to-be-suited link considered to be contained in the non-current version of the map region, and/or wherein in case that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in the non-current version of the map region available to the terminal, a predefined or empty information is contained in or constitutes the indication.
  • 4. The method according to claim 1, wherein in case that an indication of the one or more indications indicates that no link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, a surrogate link for this link or considered-to-be-suited link is used in the route guiding process.
  • 5. The method according to claim 1, wherein each indication of the one or more indications is associated with respective consideration information pertaining to the respective consideration whether or not a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in the non-current version of the map region available to the terminal, and wherein the route guiding process is further conducted based on the respective consideration information associated with the one or more indications.
  • 6. The method according to claim 5, wherein the respective consideration information is indicative of a certainty of the respective consideration and/or wherein the respective consideration information, together with the respective indication it is associated with or alone, indicates a graduation of the respective consideration with more than two levels.
  • 7. The method according to claim 5, wherein one or more of the following holds: the consideration information of an indication of the one or more indications, together with the respective indication it is associated with or alone, indicates that no link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, and a surrogate link for this link/considered-to-be-suited link is used in the route guiding process;the consideration information of an indication of the one or more indications, together with the respective indication it is associated with or alone, indicates that no link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, but that at least one link or considered-to-be-suited link that is at the same position as or at least within a pre-defined distance from or comprises at least a link portion also contained in the link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route, is considered to be contained in the non-current version of the map region available to the terminal, and the at least one link or considered-to-be-suited link that is considered to be in the non-current version of the map region available to the terminal is searched, at the terminal, in the non-current version of the map region available to the terminal and, if found, is used in the route guiding process;the consideration information of an indication of the one or more indications, together with the respective indication it is associated with or alone, indicates that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, although at least one characteristic of both links differs, and it is checked, at the terminal, if this link or considered-to-be-suited link is useable for the route guiding process, and if this link is considered to be useable for the route guiding process, the link is used in the route guiding process;the consideration information of an indication of the one or more indications, together with the respective indication it is associated with or alone, indicates that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, and this link is used in the route guiding process.
  • 8. The method according to claim 4, wherein the surrogate link is based on information comprised in the final route.
  • 9. The method according to claim 4, wherein, in the route guiding process, a presentation format of the surrogate link differs from a presentation format of a link that is contained in a map region available to the terminal.
  • 10. The method according to claim 1, further comprising: issuing, from the terminal, a route request comprising route request information, wherein the route request information at least comprises a start link identifier identifying a start link in a non-current version of a first map region available to the terminal, and a target link identifier identifying a target link in a non-current version of a second map region available to the terminal, the second map region being either equal to or different from the first map region, or wherein the route request information at least comprises a start position, a start link identifier identifying a start link in a non-current version of a first map region available to the terminal, a target position and a target link identifier identifying a target link in a non-current version of a second map region available to the terminal, the second map region being either equal to or different from the first map region.
  • 11. The method according to claim 1, further comprising: issuing, from the terminal, a request for an alternative final route in response to a user operation indicating that the user is not satisfied with the final route or in case that an absolute or relative number of indications in the final route that have a pre-defined characteristic or the absolute or relative distance in the final route represented by this number of indications exceeds a pre-defined threshold, wherein the number of indications is in particular a total number of indications or a number of one or more indications that appear in the final route in immediate succession, and wherein the indications have the pre-defined characteristic at least if they respectively indicate that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in a non-current version of the map region available to the terminal.
  • 12. The method according to claim 11, wherein the indications further have the pre-defined characteristic if they respectively indicate that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal but is associated with consideration information that takes a pre-defined value.
  • 13-15. (canceled)
  • 16. An apparatus comprising: at least one processor; andat least one memory including computer program code for one or more programs,the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following, obtain, at a terminal, a final route that comprises one or more indications, wherein each indication of the indications respectively indicates, whether or not a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in an intermediate route determined at least based on respective current versions of one or more map regions and used as a basis for determining the final route, is considered to be contained in a non-current version of the map region available to the terminal; andconduct a route guiding process at the terminal at least based on the final route and at least respective non-current versions of one or more map regions available to the terminal that respectively contain, according to the one or more indications, a link or considered-to-be-suited link corresponding to a link that is contained in a respective current version of the respective map region and is identified by a respective link identifier comprised in the intermediate route, wherein the considered-to-be-suited link is a link that is considered to be suited to be used for the route guiding process at the terminal.
  • 17. The apparatus of claim 16, wherein one or more of the one or more indications respectively indicate that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in the non-current version of the map region available to the terminal.
  • 18. The apparatus of claim 16, wherein in case that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in the non-current version of the map region available to the terminal, the indication comprises or consists of a link identifier identifying this link or considered-to-be-suited link considered to be contained in the non-current version of the map region, and/or wherein in case that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in the non-current version of the map region available to the terminal, a predefined or empty information is contained in or constitutes the indication.
  • 19. The apparatus of claim 16, wherein in case that an indication of the one or more indications indicates that no link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in a non-current version of the map region available to the terminal, a surrogate link for this link or considered-to-be-suited link is used in the route guiding process.
  • 20. The apparatus of claim 16, wherein each indication of the one or more indications is associated with respective consideration information pertaining to the respective consideration whether or not a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in the non-current version of the map region available to the terminal, and wherein the route guiding process is further conducted based on the respective consideration information associated with the one or more indications.
  • 21. A non-transitory computer-readable storage medium carrying one or more sequences of one or more instructions which, when executed by one or more processors, cause an apparatus to at least perform the following steps: obtaining, at a terminal, a final route that comprises one or more indications, wherein each indication of the indications respectively indicates, whether or not a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in an intermediate route determined at least based on respective current versions of one or more map regions and used as a basis for determining the final route, is considered to be contained in a non-current version of the map region available to the terminal; andconducting a route guiding process at the terminal at least based on the final route and at least respective non-current versions of one or more map regions available to the terminal that respectively contain, according to the one or more indications, a link or considered-to-be-suited link corresponding to a link that is contained in a respective current version of the respective map region and is identified by a respective link identifier comprised in the intermediate route, wherein the considered-to-be-suited link is a link that is considered to be suited to be used for the route guiding process at the terminal.
  • 22. The non-transitory computer-readable storage medium of claim 21, wherein one or more of the one or more indications respectively indicate that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in the non-current version of the map region available to the terminal.
  • 23. The non-transitory computer-readable storage medium of claim 21, wherein in case that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is considered to be contained in the non-current version of the map region available to the terminal, the indication comprises or consists of a link identifier identifying this link or considered-to-be-suited link considered to be contained in the non-current version of the map region, and/or wherein in case that a link or considered-to-be-suited link corresponding to a link that is contained in a current version of a map region and is identified by a respective link identifier comprised in the intermediate route is not considered to be contained in the non-current version of the map region available to the terminal, a predefined or empty information is contained in or constitutes the indication.
Priority Claims (1)
Number Date Country Kind
16172221.0 May 2016 EP regional
PCT Information
Filing Document Filing Date Country Kind
PCT/EP2017/058196 4/6/2017 WO 00