Supplementing electronic map data from user behavior

By analyzing the location data of multiple devices on the server side, identifying potential errors and inconsistencies in the electronic map, and providing supplementary map information, the problem of inaccurate navigation and guidance is solved, and the user experience and navigation quality are improved.

CN114144637BActive Publication Date: 2025-05-23TOMTOM GLOBAL CONTENT
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202080052491.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-05-24
Filing Date
2020-05-25
Publication Date
2025-05-23
Estimated Expiration
2040-05-25

AI Technical Summary

Technical Problem

There may be errors and inconsistencies in existing electronic map data, resulting in inaccurate navigation guidance, especially in the case of frequent network changes, and the delay in map updates leads to poor user experience.

Method used

By obtaining location data of multiple devices on the server side, potential inconsistencies are identified with reference to electronic maps, and supplemental map information is provided to navigation devices to improve the quality of navigation guidance.

Benefits of technology

It realizes relatively early identification and correction of errors and inconsistencies in electronic maps, improves the accuracy and user experience of navigation and guidance, and reduces map update delays.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114144637B_ABST
    Figure CN114144637B_ABST
Patent Text Reader

Abstract

The present invention provides a method for identifying possible errors / inconsistencies in an electronic map representation of a network of navigable elements within a geographic area, the method comprising: obtaining at a server location data associated with the movement of a plurality of devices travelling around the navigable network over time; processing at the server the obtained location data with reference to the electronic map representing the navigable network to identify potential inconsistencies in the map in the form of one or more locations within the navigable network where the observed behavior of devices travelling around the navigable network indicated by the obtained location data is inconsistent with the behavior that would be expected based on the electronic map. This information may then be relayed to a navigation device to supplement the electronic map when generating navigation instructions.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to UK Patent Application No. 1907342.8 filed on May 24, 2019, the entire contents of which are hereby incorporated herein by reference. Technical Field

[0003] The present invention generally relates to methods for providing navigation guidance for guiding a device through a navigable network covered by an electronic map, and in particular to methods for improving or supplementing map data for use in such contexts. In particular, the present invention provides methods for identifying potential errors and other inconsistencies in a map based on observed behavior of a device traveling in a navigable network. In embodiments, this information is then relayed to the device in order to improve the quality of the navigation guidance provided by the device. Corresponding systems and software products are also provided. Background Art

[0004] For use in electronic navigation devices (e.g. GPS-based personal navigation devices, whether as, for example, TomTom GO TM Map data for a dedicated navigation system (whether a Sat Nav system, navigation software running on a smartphone app, or an in-car navigation system) typically comes from a professional map service provider, such as TomTom International BV. This electronic map data is specifically designed for use by route guidance algorithms, typically in conjunction with location data from a GPS system, to plan the optimal route for the navigation device to reach a desired destination through the navigable network.

[0005] Thus, an electronic map is a digital representation of a real-world navigable (e.g. road) network. For example, a road segment may be described as a line - i.e. a vector (e.g. start, end, direction of the road) - a road thus consists of a plurality of such segments, each segment being uniquely defined, e.g. by start / end direction parameters.

[0006] Electronic maps therefore typically include a set of such road segments, together with data associated with each segment (speed limits; driving directions etc.), plus any points of interest (POIs), road names, other geographical features such as park boundaries, river boundaries etc. which may also be defined in the map.

[0007] All features of the map (eg, road segments, POIs, etc.) are preferably defined in a coordinate system that corresponds to or is related to the GPS coordinate system, thereby enabling the device location determined by the GPS system to be mapped onto corresponding road segments defined in the map.

[0008] Thus, such electronic maps may be used to provide navigation instructions for guiding a user along a predetermined route by matching the device's (current) location to the map and then providing relevant navigation instructions as the device approaches various intersections or other decision points within the navigable network. For example, navigation instructions may include instructions such as "turn left at the next intersection."

[0009] An important element for improving the user experience and ensuring user safety is that, when generating such navigation instructions, the navigation device does not instruct the user to perform an operation that is not actually permitted (or impossible). It is therefore important that the electronic map data reliably and accurately reflects any restrictions (e.g., driving restrictions) within the network.

[0010] To build electronic maps, basic road information is obtained from various sources, such as the Ordnance Survey for roads in England. Map service providers also typically have large dedicated fleets of vehicles driving on the roads, as well as personnel checking other maps and aerial (satellite) photographs to update and check their data. This data forms the core of the map database, which is constantly being enhanced with new geo-referenced data.

[0011] The map data in the database is then regularly checked and published (eg as a map update) to update the current version of the map for use by navigation devices, software, systems, etc.

[0012] In addition to the continuous improvements described above, map errors can also be reported directly by end users, for example via a suitable web interface. Navigation device manufacturers can also capture and forward map error reports from their users in this way. However, these error reports are usually provided in a free text format, so that map service providers still need to make considerable efforts in identifying the nature and exact location of the error before including it in future map versions.

[0013] As a result, despite the significant resources devoted to updating and validating these electronic maps, there may still be significant delays in providing map updates to the market, and map data, at least for certain geographic areas, may still be unreliable and / or significantly out of date.

[0014] It would therefore be desirable to provide improved techniques for identifying possible map errors and other inconsistencies in electronic maps for use in providing navigation guidance. Summary of the invention

[0015] According to a first aspect of the present invention, there is provided a method for providing navigation guidance for a device traveling within a navigable network represented by an electronic map, the method comprising:

[0016] obtaining, at a server, location data associated with movement over time of a plurality of devices traveling about the navigable network;

[0017] processing the obtained location data at the server with reference to the electronic map to identify potential inconsistencies in the map in the form of one or more locations within the navigable network where observed behavior of a device traveling around the navigable network indicated by the obtained location data is inconsistent with behavior that would be expected based on the electronic map;

[0018] providing supplemental map information indicative of any potential inconsistencies identified in said map for output to a navigation device; and

[0019] The device then uses the provided supplemental map information together with its current version of the electronic map when generating a set of navigation instructions for guiding the navigation device through the navigable network.

[0020] Navigation instructions for guiding a device around a real-world navigable (e.g., road) network are typically provided by reference to an electronic map that provides a virtual representation of the network. For example, a navigation service will typically obtain the current location from the device and then match this location to a map to determine the location of the device within the network and generate instructions accordingly. Therefore, an important element for improving the user experience and for safety reasons is to ensure that the instructions are in fact consistent with the real network geometry and the actual behavior of network users to avoid instructing the device user to perform a manipulation that is impossible (or at least not allowed) or in some way undesirable.

[0021] This requires reliable map data. However, various errors or inaccuracies may exist in the map data. Further, networks may change frequently, and map updates may be relatively slow. For example, conventionally, even when a possible map error (e.g., a missing driving restriction) is identified and reported to a map service provider, an update to the map is not provided until the map service provider verifies the location and type of the error.

[0022] This verification step typically involves checking for errors using secondary sources of information. However, this information may not be immediately available. For example, verification may typically involve dispatching a dedicated vehicle to the reported location in order to image that location with images, and then processing the images at the map service provider to determine the exact nature of the error, (e.g., distinguishing between different possible driving restrictions). Therefore, currently, it may take months or even years before an updated map update is released to resolve the error. During this period, any navigation service using electronic maps may therefore produce inaccurate instructions.

[0023] Furthermore, other possible inconsistencies in the map are not typically considered, which may reflect, for example, local preferences or incentives to take a particular route rather than any actual (physical or legal) driving limitations. However, it is also desirable to take this information into account when providing navigation guidance in order to improve the overall end-user experience.

[0024] Thus, the present invention recognizes that it may be more desirable to be able to flag possible errors in an electronic map, such as missing (e.g., and / or recently changed) or erroneous driving restrictions, and / or other potential inconsistencies in the map, to a navigation device relatively early, e.g., without having to wait for the errors to be verified and published in a new map update. That is, at least from the end-user's perspective, it is more important to know that some restrictions exist (or that the restrictions do not actually exist, or have been removed, etc.), and that the navigation device is able to take this into account, but the user may not particularly care what the restrictions are. In other words, from the end-user's perspective, it is important to receive clear navigation instructions to allow the user to follow a route to their desired destination, and it does not matter why a particular road along the route may (or may not) be restricted as long as the navigation device does not lead the user along a potentially impermissible or otherwise undesirable route. (In contrast, a map service provider is more concerned with making the map as accurate as possible. Thus, there are competing demands between the interests of the map service provider and the end-users of the map service.)

[0025] Thus, the present invention further recognizes that it is possible to identify possible errors in a map based (solely) on observation of the behavior of a device traveling within a navigable network. Thus, observed end-user behavior can be used to identify possible errors in a map, and this "supplemental" map information can then be provided at this time, for example to a navigation device (without waiting for a map update) and used together with a current version of a map accessible to the navigation device to allow the navigation device to provide improved (e.g. more reliable) navigation instructions. For example, the supplemental map information may be stored separately from the electronic map, and therefore provided to the navigation device separately from the map data, preferably relatively more frequently than map updates. Thus, the supplemental map information can bridge the current difference between real-time information (e.g. traffic information) and global map updates.

[0026] In addition, it is also possible to identify from the observed behavior any other instances where the user behavior does not match (i.e., is inconsistent with) the expected behavior according to the map. For example, as with physical or legal driving restrictions, such inconsistencies may reflect local driving preferences. That is, even in the absence of actual driving restrictions, a particular maneuver may still be undesirable in other ways, so that in fact no (or few) users actually perform the maneuver. In this case, it would also be beneficial for the navigation guidance to take this into account, such as preferably not guiding the user to travel along such a route. This is of course particularly important because users of the navigation system are generally unfamiliar with the network in which they are traveling, and causing them to perform unexpected or difficult maneuvers may cause a lot of stress. Therefore, when a potentially more desirable alternative route (e.g., inferred from observed behavior) is available, it may be beneficial to preferably guide the user to travel along the route, even if this is associated with a longer driving time.

[0027] Thus, based on observed behavior obtained from the position data of devices travelling within the network, it is possible to identify and therefore take into account any potential inconsistencies between the map data and actual conditions in the network, regardless of the nature of these inconsistencies, i.e. whether they reflect actual physical or legal constraints in the network, or simply reflect local preferences / incentives. Any such inconsistencies may then be provided to the devices as supplementary map information.

[0028] Thus, an inconsistency identifiable in a map typically manifests itself as one or more locations in the navigable network (locations are preferably defined relative to the map) where it has been determined that the observed behavior does not match, i.e. is potentially inconsistent with the expected behavior based on the map. Thus, the inconsistency may reflect any missing, redundant or otherwise incorrectly mapped driving restrictions, but also any local preferences that may also affect the user's behavior.

[0029] In an embodiment, the inconsistency may also be time-related. For example, there may be certain driving restrictions only on weekdays or during peak hours. Similarly, local preferences may vary depending on typical driving conditions, so that maneuvers that are undesirable during peak hours may be more acceptable during non-peak travel times. Therefore, the inconsistency may also be associated with one or more corresponding time slots. For example, the obtained position data is usually associated with a timestamp. By appropriately processing the position data of each time slot (e.g., first gridding the data according to the corresponding time slot, and processing the data of each time slot to identify any potential inconsistencies in the map within the time slot), it is therefore possible to identify situations where the behavior observed at a specific time (time slot) does not match the behavior that would be expected based on the map, and include it in the supplementary map data accordingly. In an embodiment, the classification algorithm may naturally take this time information into account. For example, as further described below, in the case of using a neural network, the training data used to train the neural network may also include time information (e.g., timestamps of the position data).

[0030] Thus, the supplementary map data may be time-dependent data. For example, when navigation instructions are generated at a specific time, then the supplementary map data associated with said time slot may be used in conjunction with the map.

[0031] According to the invention, therefore, supplementary map information indicating such identified inconsistencies can exist separately from the map data (i.e. separate from the current version of the map accessible to the navigation device) and effectively be used to supplement the information currently stored in the electronic map when providing navigation guidance (i.e. at least before a new electronic map updated to include restrictions is issued). However, the supplementary map information is preferably not present on the electronic map. In other words, it is preferred to provide separate supplementary map information to the navigation device, rather than just trying to update the map data when a possible error is identified (although this can also be done), and incorporating this information into the updated version of the map, which may take a lot of time. The navigation device can then use this information to improve the quality of the navigation guidance while waiting for the possible error to be verified and incorporated into the map update. In addition, information related to local preferences can also be taken into account in this way, which would not normally occur (for example: if the local preference means that a certain maneuver is strongly inhibited, but there is no actual driving restriction, then even if this would be reported to the map service provider as an "error", the map service provider will then try to verify this and determine that there is no error, and therefore this information will not be incorporated into the map in any way).

[0032] Thus, in embodiments, more information may be provided to the navigation device and thus used when generating navigation instructions earlier than would normally be the case, such as when this information is only incorporated into the map by a map service provider through regular map updates. Thus, the user experience may be significantly improved.

[0033] The present invention recognises that actual (observed) user behaviour within a navigable network, i.e. user behaviour that can be inferred from location data associated with the movement of a plurality of devices along the navigable network over time, can itself be used to identify possible map errors and / or other inconsistencies where user behaviour deviates from behaviour that would be expected according to the map (although the cause of the deviation, i.e. the type of restriction, may not necessarily be identified). Further, preferably this information can be provided for use by the navigation device without having to wait for it to be validated by a map service provider. Thus, the navigation device can use this information to supplement the current version of the electronic map when generating navigation instructions.

[0034] In turn, in order to reduce the occurrence of false positives, this may require a more robust method for identifying possible map errors and / or other such inconsistencies based on the obtained location data. Therefore, as part of this, embodiments of the present invention include using (and generating) a suitably trained classification algorithm for identifying instances where the observed behavior of a device traveling around a navigable network does not match the expected behavior based on the map, thereby identifying possible errors in the map, such as missing driving restrictions, etc. For example, in a preferred embodiment, the classification algorithm may include a deep learning neural network that is trained to be able to identify locations in the navigable network where the behavior does not match the behavior that would be expected based on the map in response to an input set of location data.

[0035] In particular, the algorithm may be trained in a supervised manner (since it may be assumed that the map is largely correct, with relatively few errors) using historical location data as input training data, and the current (or previous) version of the electronic map as the "ground truth" for training the algorithm output. It will be appreciated that this is particularly advantageous because a large amount of suitable such data may already be available for training the classification algorithm, and therefore an algorithm trained in this manner may be particularly robust.

[0036] Thus, an algorithm may be trained to "learn" what user behavior should be like at intersections (and indeed any / all intersections) within a navigable network, thereby identifying instances where current user behavior does not match expected behavior based on the current map. These instances may then be marked accordingly, for example with information indicating this provided as supplemental map information.

[0037] In this way, the algorithm is able to identify possible map errors, such as missing or otherwise incorrectly mapped driving restrictions, as well as any other possible inconsistencies in the map. For example, the algorithm also naturally learns the expected behavior or driver incentives throughout the navigable network, as this will be inherently incorporated into the algorithm during training using historical position data. Thus, for example, the algorithm is able to identify any inconsistencies between observed behavior and expected behavior in the navigable network, and is not limited to identifying hard driving restrictions.

[0038] Furthermore, because the algorithm is preferably trained using historical data for the entire navigable network (or at least for a certain area of ​​the network, e.g. rather than just looking at forward and backward probe counts on a single road feature), the algorithm is able to process user behavior in a more holistic manner. Thus, user behavior can be examined in the context of the wider navigable network. For example, the classification algorithm is inherently able to consider the impact of a particular driving restriction across the entire area of ​​the network, rather than just the impact on the immediately adjacent road segments.

[0039] It will be appreciated that the classification algorithm is therefore able to identify map errors arising from a range of different types of driving restrictions, such as blocked passages, prohibited maneuvers, hidden turns, overpasses, underpasses, superfluous or non-existent roads, etc., rather than simply one-way streets, or road closures. Furthermore, because the algorithm is trained based on user behavior, it is possible to provide additional information, such as identifying other locations where behavior does not match the expected behavior of the map, such as due to local driving preferences influencing routes that should preferably be followed, but these are not typically considered in maps (because they are not related to true legal or practical driving restrictions). These instances can then also be identified as possible errors / inconsistencies and provided to the navigation device as part of the supplementary map information for use thereby in generating navigation instructions.

[0040] However, other arrangements are certainly possible. For example, rather than using a trained classification algorithm such as a neural network of the preferred type described above, a relatively simple criterion may be used, such as one which defines a probability threshold based on the location data, such that, for example, if a user has two possible options, and a certain threshold number (or sequence) of users act in the same way (no or relatively few (e.g., below the threshold) of users take the other option), then it is determined that there is an error / inconsistency in the map.

[0041] In any case, it may be identified from the user's behavior (as determined from the location data) that something has changed or may be incorrectly mapped, even if it is (still) not possible to know exactly what caused the change in behavior. However, this information may therefore be determined from the user's behavior and provided back to the navigation device at this time, without having to wait for confirmation as to the nature of the driving restriction. In this way, the navigation device may be able to act on such errors relatively earlier than would normally be the case.

[0042] The present invention also extends to a system for performing such a method. Therefore, from a second aspect, there is provided a system for providing navigation guidance to a device travelling within a navigable network represented by an electronic map, the system comprising:

[0043] a server configured to: obtain location data associated with movement over time of a plurality of devices traveling around the navigable network; process the obtained location data with reference to the electronic map to identify potential inconsistencies in the map in the form of one or more locations within the navigable network where observed behavior of devices traveling around the navigable network indicated by the obtained location data is inconsistent with behavior that would be expected based on the electronic map; and provide supplemental map information indicating any potential inconsistencies identified in the map for output to a navigation device; and

[0044] A navigation device is configured to obtain the supplemental map information from the server and then use this information, together with its current version of the electronic map, to generate a set of navigation instructions for guiding the device through the navigable network.

[0045] Where appropriate, this second aspect of the invention may and preferably does include any one or more or all of the preferred and optional features of the invention described herein with respect to the first aspect in any of its embodiments. For example, even if not explicitly stated, the system may include and in an embodiment does include means for implementing any step or steps related to the method herein described in any aspect or embodiment thereof, and vice versa.

[0046] The means for implementing any of the steps described in connection with the method or apparatus may include a set of one or more processors and / or appropriate processing circuits or circuit systems. Therefore, the present invention is preferably a computer-implemented invention, and any of the steps described in connection with any of the aspects or embodiments of the present invention may be implemented under the control of a set of one or more processors and / or appropriate processing circuits / circuitry systems. The processing circuit / circuitry system may generally be implemented in hardware or software as desired. For example, but not limited to, the means or processing circuit / circuitry system for implementing any of the steps described herein in connection with the method or system of the present invention may include one or more suitable processors, controllers, functional units, circuits / circuitry systems, processing logic, microprocessor arrangements operable to perform various steps or functions, etc., such as suitable dedicated hardware elements (processing circuits / circuitry systems) and / or programmable hardware elements (processing circuits / circuitry systems) that may be programmed to operate in a desired manner.

[0047] At least one of the steps may be performed locally on the device, for example using one or more processors associated with the device. However, others of the steps may be performed remotely from the device, for example at a server. It will be appreciated that, as used herein, a "server" may generally refer to a cluster of one or more servers. In particular, it will be appreciated that a server need not be a (single) physical data server, but may include a virtual server, for example running a cloud computing environment. That is, at least some of the processing steps may be performed on a cloud server. Of course, various other arrangements are possible.

[0048] The present invention may be implemented with respect to any type of navigable element. Preferably, the navigable element is a road element (of a road network), but it will be appreciated that the techniques are applicable to any type of road element, or indeed to other types of navigable elements, where appropriate location data exists or can be determined. Implementations relating to road networks are particularly advantageous; because such data is likely to already exist. That is, there may already be a relatively large database of historical location data that can be used to determine expected user behavior within the network, and / or to train classification algorithms, and therefore to identify possible map errors / inconsistencies. However, although the exemplary embodiments relate to road elements of a road network, it will be appreciated that the present invention is applicable to any form of navigable element, including elements such as paths, rivers, canals, cycle paths, towpaths, railway lines, etc. For ease of reference, these are generally referred to as road elements of a road network. Similarly, depending on the navigable network under consideration, in an embodiment, any reference to driving restrictions may refer to any driving restrictions. Therefore, the present invention is applicable to detecting possible errors / inconsistencies in electronic maps, which represent any suitable navigable network for which location data can be obtained.

[0049] The method involves obtaining and using location information associated with movement of a device along a navigable network relative to time. The location data can then be used to examine user behavior around the navigable network. The observed user behavior is then used to identify possible errors / inconsistencies in the electronic map representation of the navigable network. In particular, user behavior observed near (or at) an intersection defined in the electronic map can be compared with expected behavior at the intersection based on the current version of the map. Location data for a particular intersection can be obtained and used to examine user behavior at the intersection, such as identifying possible map errors / inconsistencies associated with the intersection. For example, an intersection can be a road junction or a possible turning point defined in the electronic map. However, preferably, location data for substantially the entire navigable network (or at least a relatively large area of ​​the network, such as representing a city or region) is obtained and processed, such as to identify any instance (i.e., location) of observed behavior that deviates from expected behavior in substantially a single step. In a preferred embodiment, this is facilitated through the use of a deep learning neural network that is trained to process input location data for substantially the entire navigable network and identify for output any cases where the observed behavior inferred from the input location data does not match the expected behavior of the map (i.e. any potential inconsistencies in the map.) In this way, the full context of user behavior within the network is identified that can be considered.

[0050] The location data used according to the present invention is location data related to the movement of multiple devices along a navigable network. The method may include obtaining location data related to the movement of multiple devices in a geographic area containing a navigable network, and then filtering the location data to obtain location data related to the movement of multiple devices along the navigable elements of the navigable network. Therefore, the step of obtaining location data related to the movement of the device along the navigable network can be implemented by referring to an electronic map representing the navigable network. In other words, according to any one of the aspects or embodiments of the present invention, the method preferably includes trying to match the location data received from each of the multiple devices with a location on a segment of one of the multiple navigable segments of the electronic map representing the network of navigable elements. This process may be referred to as "map matching" and may involve the use of various algorithms known in the art. The method may include trying to match each item in the location data with a location along one of the navigable segments of the digital map. When implementing this map matching process, a map matching error indicating the difference between the location indicated by the location data and the location on the navigable segment it matches can be derived for each item of the location data. In an embodiment, for each of a plurality of devices, the method may include attempting to match each location data point to a location on a navigable section of a digital map. A map matching error may be determined for each data point. Such map matching errors may arise due to various reasons, such as general noise in the location data signal and / or map errors, such as reference lines of navigable elements not being correctly georeferenced in the map, so that the location of the navigable element represented by the section of the electronic map does not accurately correspond to the actual location of the actual element. When the difference between the location indicated by the location data and the nearest location along the navigable section of the map exceeds a given threshold, it may be determined that the location of the device cannot be matched to the navigable section of the digital map. For example, this may be the case where the course of the actual navigable element has changed from the course recorded in the digital map data.

[0051] The position data used according to the present invention is collected from one or more and preferably multiple devices and is related to the movement of the device relative to time. Therefore, the device is a mobile device. It will be appreciated that at least some of the position data is associated with time data (e.g., a timestamp). However, for the purposes of the present invention, it is not necessary to associate all position data with time data, provided that, according to the present invention, it can be used to provide information related to the movement of alternative navigable elements of the device along the node. However, in a preferred embodiment, all position data is associated with time data (e.g., a timestamp). In this way, the position data can be processed to take into account the time changes in the driving conditions within the navigable network.

[0052] The location data is related to the movement of the device with respect to time, and can be used to provide a location "track" of the path taken by the device. As mentioned above, the data can be received from the device, or the data can be stored first. For the purposes of the present invention, the device can be any mobile device capable of providing location data and sufficient associated timing data. The device can be any device with location determination capabilities. For example, the device may include means for accessing and receiving information from a Wi-Fi access point or a cellular communication network (such as a GSM device) and using this information to determine its location. However, in a preferred embodiment, the device includes a global navigation satellite system (GNSS) receiver, such as a GPS receiver, which is used to receive satellite signals indicating the location of the receiver at a specific point in time, and preferably receives updated location information usually (although not necessarily) at fixed intervals. Such devices may include navigation devices, mobile telecommunications devices with positioning capabilities, location sensors, etc.

[0053] Preferably, the (or each) device is associated with a vehicle. In these embodiments, the position of the device will correspond to the position of the vehicle. If not explicitly mentioned, references to position data obtained from a device associated with the vehicle may be replaced with references to position data obtained from the vehicle, and references to movement of one or more devices may be replaced with references to movement of the vehicle, or vice versa. The device may be integrated with the vehicle, or may be a separate device associated with the vehicle, such as a portable navigation device. Of course, position data may be obtained from a combination of different devices or a single type of device.

[0054] Position data obtained from multiple devices is often referred to as "probe data". Data obtained from a device associated with a vehicle may be referred to as vehicle probe data. Therefore, references to "probe data" herein should be understood to be interchangeable with the term "position data", and for brevity, position data may be referred to as probe data.

[0055] The method of the present invention may involve obtaining and using "real-time" position data associated with the movement of multiple devices along a navigable network relative to time to determine current map errors / inconsistencies. Real-time data may be considered relatively current data and provides an indication of the relatively current conditions on each alternative navigation element. Real-time data may typically relate to the condition of the element within the last 30 minutes, 15 minutes, 10 minutes or 5 minutes. By using real-time position data to determine possible map errors / inconsistencies, it can be assumed that the information determined is currently applicable and may be applicable in the future, at least in the short term. The use of real-time position data allows accurate and up-to-date closure information to be determined, which road users and / or navigation devices or ADAS can rely on. However, more typically, the method of the present invention will involve processing relatively old data, for example over a period of days or weeks.

[0056] In some arrangements, the step of obtaining location data may include accessing data, i.e., data previously received and stored. For "real-time" location data, it will be appreciated that the data may be stored shortly before use so that it may still be considered real-time data. In other arrangements, the method may include receiving location data from a device. In embodiments where the step of obtaining data involves receiving data from a device, it is contemplated that the method may further include storing the received location data, and optionally filtering the data, before proceeding with the other steps of the invention. The step of receiving location data need not be performed at the same time or place as the other steps of the method.

[0057] The obtained location data for the plurality of devices is then processed to identify possible map errors / inconsistencies and / or other instances where the behavior inferred from the obtained location data deviates from the expected behavior based on the map. In particular, the location data may be processed to identify driving restrictions that are missing, redundant, or otherwise incorrectly mapped within an electronic map. For example, the obtained location data may be used to identify intersections within an electronic map where there are driving restrictions that prohibit a user from performing a particular action, but the restrictions are not defined within the electronic map. More generally, any locations where actual (observed) behavior does not match the behavior that might be expected based on the map may be inferred from the obtained location data, and such inconsistencies determined accordingly.

[0058] For example, location data is obtained from the end user, and thus allows the behavior of users in the navigable network to be checked. User behavior at the intersection will be affected by various legal restrictions, physical restrictions and local preferences. Therefore, the user behavior at the intersection (or more generally, at any location in the navigable network) does not match the expected behavior based on the current information on the map, thereby identifying that there are possible errors in the map, or further information may need to be added to the map to better reflect the actual user behavior, and then this information can be sorted, such as and provided back to the navigation device, thereby used when generating navigation guidance. For example, in this way, it is possible to identify specific manipulations that should be restricted (due to physical restrictions or certain local preferences, i.e., inhibitors for performing such manipulations), and this information can be provided to the navigation device as supplementary map information for supplementing electronic map data when generating navigation instructions. Similarly, the present invention can identify specific manipulations that are currently restricted in the electronic map but should not actually be restricted, and can cover map data when generating navigation instructions. However, various other examples are certainly possible, and the advantage of the technology described herein is that user behavior can be processed to identify any potential inconsistencies in the map, regardless of the cause of the inconsistency.

[0059] For example, possible map errors that can be identified in this way may include various types of driving restrictions that are missing from the map or that are incorrectly matched to the map in other ways. These errors may generally be related to any type of driving restrictions. For example, driving restrictions may include legal restrictions, such as restricted turns or one-way streets. For example, in the case of a one-way street, the map may incorrectly include it as a normal (two-way) road, and therefore the navigation device may try to guide the user to travel along this road, even when it is not allowed. Driving restrictions may also include physical restrictions, such as road closures or a set of bollards. Another example is an overpass (or underpass), which is incorrectly mapped as part of an intersection, although there is no physical route to leave the overpass. A further example is a redundant road, that is, a road that is included in the map but does not actually exist (such as when a sidewalk or river is incorrectly mapped as a road, this may occur). Of course, various other examples are also possible. These types of restrictions may be difficult to identify (e.g., from satellite data), and therefore may be missing during initial map construction. In addition, the navigable network itself will change over time, such as due to road engineering. Conventionally, even if the end user notices these errors and reports them to the map service provider as possible errors, the map service provider must confirm the exact type and location of the error. However, this is expensive both in terms of resources and time. In other words, map maintenance often lags behind reality. Therefore, the present invention allows these possible errors to be flagged relatively early to allow the navigation device to take this into account (without knowing the exact type of error).

[0060] The present invention is also able to (and preferably) identify other instances where observed behavior is inconsistent with expected behavior, such as may be related to local preferences. For example, if there is an element, but the element is too narrow for the user to easily pass through, then in practice, the user may prefer to take an alternative route rather than passing through the element, even if in principle it is possible to pass through the element. Therefore, this type of driving restriction may be purely based on local preferences (rather than any physical or legal restrictions), and is usually not considered at all when generating electronic maps (for example, due to the existence of roads, the map is not physically incorrect, but there is still inconsistency because when the map is used for navigation, unexpected instructions may be generated). However, it will be understood that this type of restriction based on local preferences may be conducive to providing navigation guidance to users, and can be relatively easily inferred from observed user behavior according to the technology presented herein, especially when using a properly trained classification algorithm. That is, embodiments of the present invention also allow the use of new types of information that model local preferences in conjunction with maps when generating navigation instructions.

[0061] As mentioned above, the processing of the obtained position data is preferably performed using a suitably trained classification algorithm. That is, the processing of the obtained position data is preferably performed using machine learning techniques. In an embodiment, the processing of the obtained position data is performed using a neural network. However, other suitable classification machine learning algorithms may of course be used. The classification algorithm (e.g., a neural network) is preferably trained using historical position data obtained for the navigable network as input and in conjunction with a (current or earlier version of) an electronic map used as "ground truth" for the training algorithm.

[0062] Therefore, in an embodiment, a method is provided for generating and / or updating a classification algorithm for identifying inconsistencies within an electronic map representing a navigable network in the form of one or more locations within the navigable network, wherein the expected behavior of a device moving around the navigable network according to the electronic map is inconsistent with the observed behavior, the method comprising: providing training data in the form of a set of historical location data, the set of historical location data being obtained for devices moving in the navigable network; and training the classification algorithm using the historical location data as input and using the electronic map as ground truth.

[0063] Therefore, the training data preferably includes a set of historical location data representing the movement of multiple devices around the navigable network over time, which is used as input training data. The desired output of a given input (i.e., "ground truth") for training a classification algorithm (e.g., a neural network) is thus the electronic map itself, and in particular a set of driving restrictions currently contained in the map. It will be appreciated that, considering the resources used to build the map, the overall quality of the map data is good enough to train the classification algorithm (e.g., a neural network) to identify what the user behavior at the intersection where the driving restrictions are applied should be. Further, by using the electronic map as the "ground truth", there may be a large amount of historical location data that can be used to train the classification algorithm (e.g., a neural network). Therefore, the classification algorithm (e.g., a neural network) is robust enough to handle areas with relatively low probe density, as well as abnormal user behavior that violates restrictions, and therefore can reduce the possibility of false positives. In other words, the use of machine learning techniques is particularly suitable for the present application because there may already be a relatively large set of available training data (in the form of historical location data and the current version of the electronic map) available.

[0064] Based on its understanding of expected user behavior and the acquired (real-time) location data, the trained classification algorithm (e.g., neural network) is thus able to identify specific maneuvers at intersections that should be restricted (but not limited to the electronic map). Correspondingly, the classification algorithm (e.g., neural network) is also able to identify specific maneuvers that are currently restricted in the electronic map but should not actually be restricted.

[0065] In particular, the classification algorithm (once trained) may then be provided as input with a set of acquired location data (which may, for example, include real-time data) and the current version of the map. The classification algorithm (classifier) ​​then uses all the input location data (i.e., observations) and the expected behavior in the map to make a decision. Thus, the classification algorithm, which is preferably trained on the same type of data (i.e., using historical location data), can essentially take into account any deviation from the expected behavior defined by the map, independently of the cause of the deviation. The classification algorithm then provides as output a set of examples (i.e., relative to the locations defined by the map) where the observed behavior does not match the expected behavior of the map.

[0066] Thus, in an embodiment, the step of processing the obtained location data with reference to the electronic map comprises the step of providing the obtained location data as input to a classification algorithm that has been trained using historical location data for devices moving in the navigable network and the electronic map so as to be able to identify inconsistencies in the map in which the observed behavior of the device traveling around the navigable network indicated by the input location data is inconsistent with the behavior that would be expected based on the electronic map. In other words, the classification algorithm is trained to identify inconsistencies between the map and the observed behavior based on the obtained location data input to the classification algorithm. Thus, identification of any potential inconsistencies in the map will be received as output from the classification algorithm.

[0067] Any instances where the observed behavior does not match the expected behavior of the map (i.e. locations in the navigable network defined in the electronic map) may then be flagged as possible errors / inconsistencies and included accordingly in supplemental map information, e.g. for output to a navigation device.

[0068] However, other arrangements are certainly possible. For example, any suitable machine learning classification algorithm may be used. Further, the training may be supervised or unsupervised. In other cases, relatively simple (probabilistic) criteria may be used to identify map errors based on observed user behavior.

[0069] The processing also preferably takes into account the relative incentive of the user to perform a maneuver. For example, in some cases, the processing may generally be directed to the absence of location data for performing a particular maneuver. Thus, if the user has no (or relatively low) incentive to perform a maneuver, then this maneuver will rarely, if ever, be performed. However, the maneuver is still possible, so the absence of location data confirming this does not necessarily identify any errors / inconsistencies in the map. That is, the location data indicates that few users perform a certain action, not because the action is impossible, but because the user's incentive to perform the action is relatively low. An example of this might be turning on a dead end street with relatively few houses (or other POIs) along the way. In this case, it is relatively rare for a user to want to travel along this road.

[0070] To take this into account, the classification algorithm (e.g., neural network) is preferably extended with features that reflect the incentive (i.e., likelihood) that the user will perform the manipulation. Therefore, in an embodiment, the identification also considers the incentive of the device to perform a specific action and weights it accordingly when identifying map errors. For example, if the incentive of the device to perform a specific manipulation is relatively low, then the method may need to obtain relatively more data before identifying that this manipulation is prohibited. Correspondingly, if the incentive of the device to perform a specific manipulation is relatively high, then this may also be considered when identifying possible inconsistencies in the map. Again, by using a properly trained classification algorithm, incentive factors can (and will) be naturally considered during the training of the algorithm. That is, since the algorithm is preferably trained using historical location data as well as maps, the relative likelihood (i.e., incentive) of the user to perform certain actions is an integrated part of both the training of the classification algorithm and the classification process. Therefore, the use of a classification algorithm, such as a neural network trained again using an electronic map, helps reduce the number of false positives when identifying possible map errors / inconsistencies, thereby further improving the user experience.

[0071] This processing of location data is typically performed at a server (or a group of servers, such as a cloud server). That is, location information from multiple devices moving within a network is provided to a remote server (or servers), which then processes the location information in the manner described above to identify missing driving restrictions.

[0072] Therefore, from a further aspect, a method for identifying possible errors / inconsistencies in an electronic map representation of a network of navigable elements within a geographic area is provided, the method comprising: obtaining, at a server, position data relating to movement over time of a plurality of devices travelling around the navigable network; processing, at the server, the obtained position data with reference to the electronic map representing the navigable network so as to identify potential inconsistencies in the map in the form of one or more locations within the navigable network where observed behavior of devices travelling around the navigable network indicated by the obtained position data is inconsistent with behavior that would be expected based on the electronic map.

[0073] This method is preferably performed on a server. Thus, in an embodiment, there is provided a server configured to: obtain position data relating to movement over time of a plurality of devices travelling around a navigable network; process the obtained position data with reference to an electronic map so as to identify inconsistencies in the map in the form of one or more locations within the navigable network where expected behaviour of devices travelling around the navigable network according to the electronic map is inconsistent with observed behaviour indicated by the obtained position data within the electronic map; and provide supplemental map information indicating any identified inconsistencies.

[0074] It will be appreciated that processing according to these further aspects may, and preferably does, involve the steps described above in relation to the embodiments of the first and second aspects. That is, preferably the position data is processed using a suitably trained classification algorithm (eg a neural network), as described above.

[0075] The information may be provided to a map service provider. For example, the map service provider may use this information for (pseudo) map updates, i.e. temporarily updating the map to show missing driving restrictions without knowing the nature of the driving restrictions. Similarly, the map service provider may use information about identified inconsistencies to focus map resources to resolve these inconsistencies. Thus, the ability to identify possible errors / inconsistencies may itself be beneficial to the map service provider.

[0076] However, preferably, information about any potential inconsistencies identified by the processing is (also) provided for output to the navigation device. That is, the method preferably includes providing supplementary map information indicating any identified inconsistencies for output to the navigation device. For example, as explained above, the identified missing driving restrictions are preferably stored and used separately from the map data. That is, the supplementary map information is preferably provided to the navigation device separately and is used (only) to supplement the current version of the map, but is not maintained on the map. (At least in this sense, it will be appreciated that the use of supplementary map information is similar to the use of real-time traffic information, which can also be fed into the navigation device and thereby used when providing the navigation device. Therefore, the supplementary map information of the present invention can be regarded as information that can bridge between real-time traffic information and relatively slow map updates, which reflect errors in the map that may occur on intermediate time scales (and between map updates)).

[0077] Therefore, the navigation device preferably receives this map supplement information from the server. The navigation device is also capable of accessing electronic maps. For example, the navigation device may store a current version of the map locally, or may access the electronic map from a remote map database. The navigation device then uses the information about the missing driving restrictions in conjunction with the current version of its map to provide navigation guidance. For example, in the usual manner, the navigation device may include a route planning function that plans a route to a destination through a navigable network and then generates navigation instructions to guide the user of the device along the route. In this case, the route planning function may also take into account the supplementary map information when planning the optimal route.

[0078] Therefore, the navigation device may use the supplementary map information when providing navigation guidance. For example, the navigation guidance may only lead to avoiding any position (e.g., a turn) of possible errors / inconsistencies identified. However, preferably, the supplementary map information also includes a confidence value (or probability) associated with each of the identified inconsistencies, and this confidence value is also taken into account when providing navigation guidance. For example, if there is only a relatively low confidence level that a particular turn is restricted, then this confidence level can be ignored if the turn must be made to reach the destination. Similarly, if a route away from a particular turn would result in a very large detour (with a large associated time cost), the route planning algorithm may decide to ignore the inconsistency (i.e., restriction) depending on its associated confidence level.

[0079] However, the supplemental map information may also be used for any other navigation application that uses an electronic map. For example, in an embodiment, the supplemental map information may be fed to an advanced driver assistance system (ADAS) or an autonomous driving module. Thus, navigation instructions may include audio / video displayed to a user of the device to guide the user through a navigable network, or may include instructions provided to an onboard ADAS or autonomous driving module and thereby used to navigate the vehicle. For purposes of this disclosure, instructions generated for an ADAS or autonomous driving module should still be broadly viewed as navigation "guidance."

[0080] Therefore, from a further aspect, a method of generating navigation instructions for a device traveling within a network of navigable elements within a geographic area is provided, wherein the network of navigable elements includes a plurality of navigable elements connected by a plurality of nodes, and wherein the navigable network is represented by an electronic map, the method comprising: accessing a stored version of the electronic map representing the navigable network; obtaining from a server supplemental map information identifying inconsistencies in the map in the form of one or more locations within the navigable network, wherein the observed behavior of a device traveling around the navigable network has been determined to be inconsistent with the behavior that would be expected based on the electronic map; and using the supplemental map information when generating one or more navigation instructions for the device.

[0081] This method is typically performed by a navigation device. Thus, in an embodiment, a navigation device is provided that is configured to: when generating instructions for a device to travel within a navigable network represented by an electronic map, access a stored version of the electronic map representing the navigable network; obtain from a server supplemental map information indicating one or more locations within the navigable network where it has been determined that observed behavior of the device traveling around the navigable network is inconsistent with behavior that would be expected based on the electronic map; and use the obtained supplemental map information and the stored version of the electronic map when generating one or more navigation instructions.

[0082] Thus, the present invention allows for the identification of driving restrictions within a navigable (e.g., road) network based on the behavior of users of the network. That is, location data associated with the movement of users throughout the navigable network over time may be obtained, and this location data may then be used to analyze the user behavior at one or more points in the navigable network (e.g., intersections or other decision points) to identify possible driving restrictions. In particular, the location data is preferably provided to a classification algorithm, such as a neural network that has been appropriately trained, in order to classify observed user behavior in order to identify such driving restrictions. For example, user behavior at a particular node within the network may be affected by legal and physical restrictions as well as local preferences. The classification algorithm is preferably trained to analyze location data obtained from users of the network and identify driving restrictions at the node based on (only) user behavior. That is, driving restrictions may (and preferably) be identified and provided to the navigation device without confirmation from a second source regarding the nature of the driving restriction.

[0083] Therefore, compared to existing methods, in which reported map errors must first be actively confirmed using auxiliary sources before being used by the navigation device, the present invention is able to identify driving restrictions more quickly, so that they can also be incorporated into electronic maps more quickly, and so on, thereby improving the overall user experience.

[0084] It will be appreciated that in any aspect or embodiment of the invention, the method according to the invention may be implemented at least in part using software. Thus, it can be seen that when viewed from further aspects and in further embodiments, the invention extends to a computer program product comprising computer readable instructions, which, when executed on a suitable data processing device (data processor), are suitable for performing any or all of the methods described herein. The invention also extends to a computer software carrier comprising such software. Such a software carrier may be a physical (or non-transitory) storage medium, or may be a signal (e.g., an electronic signal on a wire), an optical signal, or a radio signal (e.g., to a satellite, etc.).

[0085] Thus, it can be seen that, when viewed from a further embodiment, the technology described herein includes computer software specifically adapted to implement the methods described herein when installed on a data processor, a computer program element comprising computer software code portions for executing the methods described herein when the program element is run on a data processor, and a computer program comprising code adapted to perform all the steps of the methods described herein when the program is run on a data processor. The data processor may be a microprocessor system, a programmable FPGA (field programmable gate array), or the like.

[0086] Thus, the techniques described herein may be suitably embodied as a computer program product for use with a computer system. Such an implementation may include a series of computer-readable instructions, any of which is fixed on a tangible, non-transitory medium, such as a computer-readable medium, such as a floppy disk, CD-ROM, ROM, RAM, flash memory, or hard disk. It may also include a series of computer-readable instructions that are transmittable to a computer system via a modem or other interface device, on any tangible medium (including but not limited to optical or analog communication lines), or intangibly using wireless technology (including but not limited to microwave, infrared, or other transmission technology). A series of computer-readable instructions embodies all or part of the functionality previously described herein.

[0087] Those skilled in the art will appreciate that such computer readable instructions may be written in a variety of programming languages ​​for use with many computer architectures or operating systems. Further, such instructions may be stored using any current or future memory technology (including but not limited to semiconductor, magnetic, or optical), or transmitted using any current or future communication technology (including but not limited to optical, infrared, or microwave). It is contemplated that such computer program products may be distributed as removable media, with accompanying printed or electronic documentation, such as shrink-wrapped software, pre-loaded on a computer system, such as on a system ROM or fixed disk, or distributed from a server or electronic bulletin board over a network, such as the Internet or the World Wide Web.

[0088] The invention according to any of its further aspects or embodiments may include any of the features described with reference to other aspects or embodiments of the invention, to the extent that they are not mutually inconsistent.

[0089] It should be noted that, unless the context requires otherwise, references herein to the location of a device, or a region or area associated with the device, or a location within a navigable network / map, etc. should be understood to refer to data indicating these. The data may indicate the relevant parameters in any way and may indicate the relevant parameters directly or indirectly. Therefore, any reference to location (location, position), etc. may be replaced by a reference to data indicating it, i.e., location data (location data or positional data), etc. It should also be noted that the phrase "associated with it" should not be interpreted as requiring any specific restriction on the location of the data storage. The phrase only requires that the characteristics have a recognizable relevance.

[0090] Various features of embodiments of the present invention are described in further detail below. BRIEF DESCRIPTION OF THE DRAWINGS

[0091] Various aspects of the present teachings and arrangements embodying these teachings will be described below by way of illustrative examples with reference to the accompanying drawings, in which:

[0092] Figure 1 An example of a system in which the present invention may be implemented is shown, the system comprising a central server capable of obtaining and processing data from a plurality of navigation devices;

[0093] Figure 2 Displayed by available Figure 1 An example of typical location data of a plurality of devices traveling within a road network covered by an electronic map obtained by a system;

[0094] Figure 3 Demonstrating an example of a convolutional neural network that may be used in embodiments of the present invention for processing acquired location data to identify map errors / inconsistencies;

[0095] Figure 4 is a flow chart illustrating the training of a classification algorithm according to an embodiment of the present invention; and

[0096] Figure 5 is a flow chart illustrating how a navigation device according to an embodiment of the present invention may generate a navigation instruction.

[0097] Fig. 6A and 6B further examples of methods according to aspects are described; and

[0098] Fig. 7A and 7B Still further examples of the method are described. DETAILED DESCRIPTION

[0099] Embodiments of the present invention will now be described with reference to portable navigation devices (PNDs). PNDs that include GPS (Global Positioning System) signal reception and processing functionality are well known and widely used in in-car or other vehicle navigation systems. In general, modern PNDs include a processor, a memory (at least one of volatile and non-volatile, and typically both), and map data stored in the memory. The processor and memory cooperate to provide an execution environment in which a software operating system can be established, and in addition, it is common to provide one or more additional software programs to enable control of the functionality of the PND and to provide various other functions. The usefulness of such PNDs is primarily reflected in their ability to determine a route between a first location (usually a starting location or current location) and a second location (usually a destination). These locations can be entered by the user of the device by any of a number of different methods, such as by postal code, street name and house number, previously stored "well-known" destinations (including, for example, famous locations, municipal locations, such as sports stadiums or swimming pools, and other places of interest), and favorite or recently visited destinations.

[0100] Typically, PNDs are enabled by software for calculating the "best" or "optimal" route between the origin and destination address locations from map data. The "best" or "optimal" route is determined based on predetermined criteria and is not necessarily the fastest or shortest route. The selection of a route to guide the driver can be very complex, and the route selected may take into account existing, predicted, and dynamic and / or wirelessly received traffic and road information, historical information about road speeds, and the driver's own preferences for factors that determine road selection (e.g., the driver may specify that the route should not include motorways or toll roads).

[0101] In addition, the device may continuously monitor road and traffic conditions and offer or choose to change the route for the remainder of the journey due to changing conditions. Real-time traffic monitoring systems based on various technologies (e.g. mobile phone data exchange, fixed cameras, GPS fleet tracking) are being used to identify traffic delays and feed information into notification systems. This type of PND may typically be mounted on the dashboard or windscreen of a vehicle, but may also be part of the vehicle's onboard computer, or indeed part of the vehicle's own control system. The navigation device may also be part of a handheld system, such as a PDA (portable digital assistant), media player, mobile phone, etc., and in these cases the normal functionality of the handheld system is extended by means of the installation of software on the device to perform both route calculation and navigation along the calculated route.

[0102] In the context of a PND, once one or more routes are calculated, the user interacts with the navigation device to select the desired calculated route, optionally from a list of suggested routes. Optionally, the user can intervene in or guide the route selection process, for example by specifying that certain routes, roads, locations or criteria are to be avoided or are mandatory for a particular journey. The route calculation aspect of a PND forms one main function. Navigation along such a route is another main function.

[0103] During navigation along a calculated route, such PNDs typically provide visual and / or audible instructions to guide the user along the selected route to the end of the route, i.e. the desired destination. The PNDs typically display map information on the screen during navigation, such information being regularly updated on the screen so that the displayed map information represents the current location of the device and, therefore, if the device is used for in-vehicle navigation, the current location of the user or the user's vehicle.

[0104] However, other arrangements are certainly possible. For example, in an embodiment, the PND may include part of an advanced driver assistance system (ADAS) or an autonomous driving module. In this case, navigation instructions may be provided to the ADAS or autonomous driving module and used to directly control the vehicle. In fact, the present invention may be used for any suitable navigation service using an electronic map.

[0105] Figure 1 An example of an overall system in which the present invention may be implemented is shown. As shown, in this embodiment, there are multiple navigation devices (e.g., PNDs) 10, each associated with a particular vehicle (or user). Each navigation device is capable of determining its position (e.g., by receiving signals from GPS satellites 11 or any other suitable position determination means), and a navigation guidance module of the device may then use the determined position in order to provide navigation instructions to the device. For example, the navigation instructions may include instructions defined in relation to an electronic map representation of a navigable network 16 in which the device is travelling.

[0106] The navigation device also communicates with a (remote) central server (or servers, such as a cloud server) via a suitable communications network 12. In particular, the navigation device may communicate with a map server 14 containing a map database that is regularly updated and published for use by the navigation device 10. A traffic information database (not shown) may also be provided, which is used to provide more up-to-date (real-time) updates on traffic conditions on the road network for use by the navigation service (in a well-known manner).

[0107] Further, according to an embodiment of the present invention, a supplementary map information database 18 is provided, which may be maintained separately from the map database and contains supplementary map information indicating driving restrictions that have been identified but are missing in the current version of the electronic map. This supplementary map information may then be provided to the navigation device 10 (optionally together with real-time traffic information or any other information that the navigation device 10 may wish to use) in order to supplement the current version of the electronic map to improve the quality of the navigation guidance.

[0108] The supplemental map information database 18 is populated by processing location data obtained over time from a plurality of navigation devices 10 and using this location data to identify any instances where the observed behavior of a device 10 within the navigable network 16 does not match the expected behavior (ie based on the current version of the map).

[0109] Figure 2 A heat map derived from the GPS tracks of multiple navigation devices 10 is shown, which shows the density of devices moving along a certain road and the direction in which they are traveling. This heat map is overlaid on an electronic map representation of the navigable network 16. For example, the heat map shows that there is a high traffic density on Highway 24. On the other hand, there is relatively little traffic on Highway 22.

[0110] The arrows represent map errors that have been identified based on observed user behavior. Specifically, the arrows represent unlikely turns, i.e., it has been determined that the vehicle cannot or is unlikely to turn right at the location (although based on the current map, this is clearly allowed). For example, here, the location data indicates that all devices traveling along road 20 are traveling in the same direction (i.e., opposite to the direction of the arrow), while the map allows travel in both directions. This indicates that Highway 20 is actually a one-way street, although this is not reflected in the current map. Therefore, the GPS trajectory reflecting actual driver behavior triggers the identification of unlikely turns, which can then be included in the supplemental map information database 18, then provided back to the navigation device 10, and then excluded from future navigation instructions.

[0111] It will be appreciated that user behavior may reveal any potential inconsistencies in the map and is not limited to hard physical or legal constraints, e.g. Figure 2 For example, in general, user behavior can be used to identify any potential inconsistencies that may reflect any (or all) missing driving restrictions, redundant driving restrictions, incorrectly mapped roads / restrictions, incorrectly mapped time-related restrictions, etc., as well as local preferences that may affect user behavior.

[0112] Thus, the present invention uses observed user behavior to identify possible map errors / inconsistencies, such as missing driving restrictions, and any other situations where the observed behavior does not match the expected behavior defined by the map. Specifically, in an embodiment, a deep learning neural network may be used to process the location data obtained from the navigation device 10 in order to identify any such inconsistencies in the map.

[0113] It will be appreciated that a neural network comprises a plurality of nodes connected by various edges. For example, a neural network typically comprises several layers, each of which processes an input data array to provide an output data array (which becomes the input data array for the next layer). The layers acting one after the other may be capable of processing complex data (e.g., position data from a plurality of devices traveling within a navigable network) to ultimately provide a desired output (e.g., identification of errors in an electronic map representation of a navigable network inferred from the input position data). This process is often referred to as "classification." Thus, a neural network is an example of a classification algorithm. However, various other classification algorithms are known.

[0114] Figure 3 An example of a neural network 30 is shown. As shown, the neural network includes an input layer that receives a plurality of input signals 31 in the form of position data obtained from the navigation device 10. The input layer may include any number of processing nodes that receive the input signals and pass those signals on to the next layer of the neural network. Figure 3The next layer shown in is a convolutional layer, which again includes multiple processing nodes. The processing nodes in the convolutional layer receive inputs with different weights from each of the nodes in the input layer, and then perform some operations on these inputs to generate outputs.

[0115] although Figure 3 Only a single convolutional layer is shown in FIG. 1 , but it will be appreciated that in practice there may be many such layers, with the output from each layer being provided as input to the next layer until the output is ultimately provided to a final output layer, which generates a number of output signals 32, the output signals 32 including information identifying (or classifying) possible map errors / inconsistencies. Thus, the output signals 32 may be used to generate supplementary map information, which is then provided back to the navigation device 10.

[0116] Each edge of the neural network 30 has a corresponding weight, and each node performs a function based on its incoming edge, then provides the result of the function to another node along its outgoing edge, and so on. For example, the nodes are typically grouped into an input layer, one or more (hidden) intermediate layers, and an output layer, with the outputs from the nodes of each layer being provided as inputs to the nodes of the next layer in order to generate outputs. The edge weights are determined by training the network.

[0117] For example, the neural network 30 can be trained in a supervised manner by providing a set of training data (consisting of historical location data of the navigable network and the current (or previous) version of the electronic map) (which can be assumed to be relatively accurate because the errors are relatively small in most cases) as "ground truth". Therefore, the historical location data can be used as input, and then the output of the classifier (neural network 30) is trained accordingly using the current version of the electronic map, for example, to recognize how user behavior should look for specific types of intersections and specific points within the navigable network. During the training process, the weights of each edge in the neural network 30 are iteratively adjusted to generate an output that closely matches the actual expected output given the input location data (i.e., based on the version of the map used to provide the ground truth).

[0118] Figure 44 is a flow chart showing how to train such an algorithm. Specifically, in a first step (step 400), a training set is generated, which has input data in the form of historical position data of an area covered by an electronic map. Then, the neural network is trained using the electronic map as ground truth (step 401). That is, the edge weights are iteratively adjusted until the output signal matches the desired output for a given input, and the desired output is determined based on the current data stored in the map. Once the algorithm has been properly trained, it can then be provided for output (step 402) to identify possible map errors / inconsistencies based on future position data. For example, once the algorithm has been properly trained, real-time position data can then be provided as input to the algorithm, and the algorithm then identifies any instances of observed behavior (i.e., real-time position data) based on the input position data and the current version of the map that do not match the expected behavior based on the map.

[0119] Thus, the neural network 30 may be trained using historical probe data in conjunction with an electronic map. In this manner, the neural network 30 may inherently learn expected driver behaviors and incentives throughout the navigable network 16. Thus, the neural network 30 after training is able to process input position data to identify any potential inconsistencies with expected behavior and provide the locations of such inconsistencies for output, e.g., as supplemental map information, for use in the manner described herein.

[0120] Preferably, the training of the algorithm is supervised as described above. However, unsupervised training may also be used, using only the acquired probe data as input, without providing any desired output to the algorithm. Other arrangements are of course possible. For example, rather than using a suitably trained classification algorithm, a relatively simple probability metric may be used, for example where the number of devices performing a particular manipulation is counted and compared to a threshold based on the expected likelihood of the device performing the manipulation.

[0121] Once possible map errors / inconsistencies have been identified, this supplemental map information may then be provided for output to a navigation device for use in providing navigation guidance. Alternatively, the supplemental map information may simply be provided to a map service provider, for example, to facilitate focusing map resources to locations where possible errors / inconsistencies have been identified. Various other arrangements are of course possible.

[0122] therefore, Figure 5 is a flow chart illustrating a method according to an embodiment of the present invention. As shown, the server obtains position information from a plurality of navigation devices (step 500), and then processes this position information to identify errors within the map (step 501). This information is then added to the supplementary map information 18 (step 502).

[0123] Then, when generating navigation instructions, the navigation device 10 accesses its stored version of the map (from local storage on the device, or from the map database 14) (step 503), and obtains supplementary map information from the server (step 504). The supplementary map information can then be fed into the navigation guidance module of the device, for example as input to a route planning algorithm, and used together with the stored version of the map to generate one or more navigation instructions (step 505).

[0124] According to another aspect, one or more locations may be identified as potential inconsistencies in the map where the behavior of devices traveling around is observed. This may be caused by a user's preference for a route that is different from a preferred route. Fig. 6A and 6B The example is shown in Figure 1. The user may be on the way from A to B, from C to B, or from D to B. For example, the user may take another route based on personal preference, that is, the preferred route indicated by the solid line, instead of Figure 6B The route indicated by the dashed line in FIG. 1 . In the case of observing a preference for such deviation, the navigation guidance may provide priority for deviation from any earlier route. In this example, the preferred route is located near B. Another option is to consider deviation only after the user confirms that the deviation has his personal preference.

[0125] Fig. 7A and 7B However, in this example, the preferred route has use, especially if the user is on his way from A to B or from C to B. In the case where the user is on his way from D to B, he is unlikely to use the route indicated by the dotted line. In this example, the deviation from the preferred route is somewhere along the route, not particularly close to the destination B.

[0126] By using Fig. 6A , 6B , 7A and 7B take into account preferences and can use user data to update the digital map in real time.

[0127] Although the embodiments described in the foregoing detailed description relate to GPS, it should be noted that the navigation device may utilize any type of position sensing technology as an alternative to GPS (or indeed in addition to GPS). For example, the navigation device may use other global navigation satellite systems, such as the European Galileo system. Likewise, it is not limited to satellite-based systems, but may use terrestrial beacons or any other type of system that enables the device to determine its geographic location.

[0128] Furthermore, whilst embodiments have been described with reference to a PND, it will be appreciated that in embodiments the device may comprise at least a portion of an advanced driver assistance system (ADAS) or an autonomous driving module that uses an electronic map (and in accordance with the techniques described herein the electronic map may be supplemented with data inferred from user behaviour, for example in the manner described above).

[0129] It will therefore be appreciated that while various aspects and embodiments of the invention have thus far been described, the scope of the invention is not limited to the specific arrangements set forth herein, but extends to encompass all arrangements and modifications and variations thereto, which fall within the purview of the appended claims.

[0130] Embodiments of the present invention may be implemented as a computer program product for use with a computer system, the computer program product being, for example, a series of computer instructions stored on a tangible data recording medium, or embodied in a computer data signal. A series of computer instructions may constitute all or part of the functionality described above, and may also be stored in any volatile or non-volatile memory device, such as a semiconductor, magnetic, optical or other memory device.

[0131] It will also be well understood by those skilled in the art that while the preferred embodiment implements certain functionality by means of software, the functionality may equally be implemented solely in hardware (e.g., by one or more ASICs (Application Specific Integrated Circuits)) or indeed by a mixture of hardware and software. As such, the scope of the present invention should not be interpreted as being limited to being implemented in software.

[0132] Finally, it should also be noted that although the appended claims set forth specific combinations of features described herein, the scope of the present invention is not limited to the specific combinations required in the claims, but extends to cover any combination of features or embodiments disclosed herein, regardless of whether the specific combinations are explicitly set forth in the appended claims.

Claims

1. A method for providing navigation guidance for a device traveling within a navigable network represented by an electronic map, the method include: obtaining, at a server, location data associated with movement over time of a plurality of devices traveling in the navigable network; processing, at the server, the obtained location data with reference to the electronic map to identify potential inconsistencies in the electronic map in the form of one or more locations within the navigable network in which observed behavior of devices traveling in the navigable network indicated by the obtained location data is inconsistent with behavior that would be expected based on the electronic map, the identifying comprising identifying potential inconsistencies associated with one or more of the devices deviating from the behavior that would be expected based on the electronic map due to one or more local driving preferences; providing supplemental map information indicative of some or all of the potential inconsistencies identified in the electronic map for output to a navigation device; and The device then uses the provided supplemental map information together with its current version of the electronic map when generating a set of navigation instructions for guiding the navigation device through the navigable network.

2. The method of claim 1 , wherein processing the obtained location data at the server with reference to the electronic map comprises identifying one or more locations within the navigable network in which observed behavior of a device near or at an intersection or other decision point within the navigable network indicated by the obtained location data is inconsistent with expected behavior based on allowed maneuvers that a user can perform at the intersection or decision point according to the electronic map.

3. The method of claim 2, wherein identifying one or more locations also takes into account a user's relative incentive to perform a particular manipulation. 4 . The method according to claim 1 , wherein the supplementary map information is stored separately from the electronic map and / or provided to the navigation device.

5. The method according to claim 1 or 4, wherein the navigation device is capable of accessing a map, the electronic map being optionally stored locally on the navigation device, the method comprising the navigation device accessing the electronic map from a map storage device and obtaining the supplementary map information from the server.

6. The method according to claim 1, wherein the obtained location data is processed with reference to the electronic map include: providing the obtained position data as input to a classification algorithm that has been trained using historical position data of devices moving in the navigable network and the electronic map so as to be able to identify inconsistencies in the electronic map in which observed behavior of devices traveling in the navigable network indicated by the obtained position data is inconsistent with behavior that would be expected based on the electronic map; and An identification of potential inconsistencies in the electronic map is received as an output from the classification algorithm.

7. The method of claim 6, wherein the classification algorithm comprises a neural network.

8. The method according to claim 6 or 7, further comprising generating and / or updating the classification algorithm, generating and / or updating the classification algorithm include: providing training data in the form of a set of historical position data obtained for a device moving in the navigable network; and training the classification algorithm using the historical location data as input and the electronic map as ground truth.

9. The method of claim 1, wherein the local driving preferences reflect a plurality of driver preferences for performing a given driving behavior while traveling in the navigable network, the given driving behavior not caused by a physical driving restriction or a legal driving restriction.

10. The method of claim 1, wherein the local driving preference is a preference for avoiding at least one driving behavior that is performed by few or no drivers due to undesirability of performing the at least one driving behavior for the driver.

11. The method of claim 10, wherein the undesirability of the driving behavior is not based on a physical driving restriction or a legal driving restriction. 12 . The method of claim 10 , wherein the at least one driving behavior includes some or all driving maneuvers that the driver considers difficult.

13. A method of identifying potential inconsistencies in an electronic map representation of a navigable network of navigable elements within a geographic area, the method include: obtaining, at a server, location data associated with movement over time of a plurality of devices traveling in the navigable network; The obtained location data is processed at the server with reference to the electronic map representing the navigable network to identify potential inconsistencies in the electronic map in the form of one or more locations within the navigable network in which observed behavior of devices traveling in the navigable network indicated by the obtained location data is inconsistent with behavior that would be expected based on the electronic map, the identifying comprising identifying potential inconsistencies associated with one or more of the devices deviating from the behavior that would be expected based on the electronic map due to one or more local driving preferences.

14. The method of claim 13, wherein the obtained location data is processed with reference to the electronic map include: providing the obtained position data as input to a classification algorithm that has been trained using historical position data of devices moving in the navigable network and the electronic map so as to be able to identify inconsistencies between the electronic map and observed behavior of devices traveling in the navigable network as indicated by the obtained position data; and An identification of potential inconsistencies in the electronic map is received as an output from the classification algorithm.

15. The method of claim 14, wherein the classification algorithm comprises a neural network.

16. The method according to claim 14 or 15, further comprising: include: Generate and / or update the classification algorithm, generating and / or updating the classification algorithm includes: providing training data in the form of a set of historical location data, wherein the set of historical location data is obtained for a device moving in the navigable network; and using the historical location data as input and using the electronic map as ground truth to train the classification algorithm.

17. A method according to claim 13, wherein processing the obtained location data at the server with reference to the electronic map includes identifying one or more locations within the navigable network in which observed behavior of a device near or at an intersection or other decision point within the navigable network indicated by the obtained location data is inconsistent with expected behavior based on allowed maneuvers that a user can perform at the intersection or decision point according to the electronic map.

18. The method of claim 17, wherein identifying the one or more locations also takes into account a relative incentive for a user to perform a particular maneuver.

19. A method for generating and / or updating a classification algorithm, the method include: providing training data in the form of a set of historical location data obtained for a device moving in a navigable network; and The classification algorithm is trained using the historical location data as input and using an electronic map as ground truth to identify inconsistencies in the electronic map in the form of one or more locations within the navigable network where observed behavior of devices traveling in the navigable network indicated by the historical location data is inconsistent with behavior that would be expected based on the electronic map, the identifying comprising identifying inconsistencies associated with one or more of the devices deviating from the behavior that would be expected based on the electronic map due to one or more local driving preferences.

20. The method of claim 19, wherein identifying inconsistencies within the electronic map comprises identifying one or more locations within the navigable network in which observed behavior of a device near or at an intersection or other decision point within the navigable network indicated by the obtained location data is inconsistent with expected behavior based on allowed maneuvers that a user may perform at the intersection or decision point according to the electronic map.

21. The method of claim 20, wherein identifying the one or more locations also takes into account a relative incentive for a user to perform a particular maneuver.

22. A method of generating navigation instructions for a device traveling within a navigable network represented by an electronic map, the method include: accessing a stored version of the electronic map representing the navigable network; obtaining, from a server, supplemental map information indicating one or more locations within the navigable network in which observed behavior of a device traveling in the navigable network has been determined to be inconsistent with behavior that would be expected based on the electronic map, the one or more locations including at least one location associated with behavior of the one or more devices that deviates from the behavior that would be expected based on the electronic map due to one or more local driving preferences; and The obtained supplemental map information is used when generating one or more navigation instructions for the device.

23. A method according to claim 22, wherein the supplemental map information indicates one or more locations within the navigable network where it has been determined that observed behavior of a device near or at an intersection or other decision point within the navigable network is inconsistent with expected behavior based on allowed maneuvers that a user can perform at the intersection or decision point according to the electronic map.

24. The method of claim 23, wherein the supplemental map information further reflects a user's relative incentive to perform a particular maneuver.

25. The method of claim 22, wherein generating the one or more navigation instructions for the device include: obtaining information about the at least one location associated with one or more device behaviors that deviate from the behavior that would be expected based on the electronic map due to one or more local driving preferences; and This information is used to avoid generating navigation instructions to perform the described behavior that would be expected based on the electronic map.

26. A system for providing navigation guidance to a navigation device travelling within a navigable network represented by an electronic map, the system include: A server configured to: obtaining location data associated with movement over time of a plurality of devices traveling in the navigable network; processing the obtained location data with reference to the electronic map to identify inconsistencies in the electronic map in the form of one or more locations within the navigable network where expected behavior of a device traveling in the navigable network according to the electronic map is inconsistent with observed behavior indicated by the obtained location data, the identifying comprising identifying inconsistencies associated with one or more devices that deviate from behavior that would be expected based on the electronic map due to one or more local driving preferences; and providing supplemental map information indicative of inconsistencies identified in the electronic map for output to the navigation device; and The navigation device is configured to: Obtaining the supplementary map information from the server; and The supplemental map information and a current version of the electronic map are used in generating a set of navigation instructions for guiding the device through the navigable network.

27. A system according to claim 26, wherein the server is configured to identify one or more locations within the navigable network in which observed behavior of a device near or at an intersection or other decision point within the navigable network indicated by the obtained location data is inconsistent with expected behavior based on allowed maneuvers that a user can perform at the intersection or decision point according to the electronic map.

28. The system of claim 27, wherein identifying the one or more locations also takes into account a relative incentive for a user to perform a particular maneuver.

29. A server configured to: obtaining location data associated with movement over time of a plurality of devices traveling in a navigable network; processing the obtained location data with reference to an electronic map to identify inconsistencies in the electronic map in the form of one or more locations within the navigable network where expected behavior of a device traveling in the navigable network according to the electronic map is inconsistent with observed behavior indicated by the obtained location data within the electronic map, the identifying comprising identifying potential inconsistencies associated with one or more devices that deviate from the behavior that would be expected based on the electronic map due to one or more local driving preferences; and Provides supplemental map information indicating identified inconsistencies.

30. A server according to claim 29, wherein the server is configured to identify one or more locations within the navigable network in which observed behavior of a device near or at an intersection or other decision point within the navigable network indicated by the obtained location data is inconsistent with expected behavior based on allowed maneuvers that a user can perform at the intersection or decision point according to the electronic map.

31. The server of claim 30, wherein identifying the one or more locations also takes into account a relative incentive for a user to perform a particular maneuver.

32. A navigation device configured to: When generating instructions for traveling within a navigable network represented by an electronic map, accessing a stored version of the electronic map representing the navigable network; obtaining, from a server, supplemental map information indicating one or more locations within the navigable network in which observed behavior of devices traveling in the navigable network has been determined to be inconsistent with behavior that would be expected based on the electronic map, the one or more locations including at least one location associated with behavior of the one or more devices that deviates from the behavior that would be expected based on the electronic map due to one or more local driving preferences; and The obtained supplemental map information and the stored version of the electronic map are used when generating one or more navigation instructions.

33. A navigation device according to claim 32, wherein the supplemental map information indicates one or more locations within the navigable network at which it has been determined that observed behavior of a device near or at an intersection or other decision point within the navigable network is inconsistent with expected behavior based on allowed maneuvers that a user can perform at the intersection or decision point according to the electronic map.

34. The navigation device of claim 33, wherein the supplemental map information further reflects a user's relative incentive to perform a particular maneuver.

Citation Information

Patent Citations

  • Method and device for identifying inaccurate paths in map data

    CN104111073A

  • Method and system for determining a deviation in the course of a navigable stretch

    US20150253141A1

  • Detection of Map Anomalies

    US20190137289A1