System and method for predicting vehicle destination

By generating data clusters and using gradient-enhanced tree models to predict vehicle drivers' destinations, the complexity of manually entering addresses in existing navigation systems is solved, achieving automated and high-precision destination prediction.

CN121093014APending Publication Date: 2025-12-09GM GLOBAL TECHNOLOGY OPERATIONS LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411069216.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-06-07
Filing Date
2024-08-06
Publication Date
2025-12-09

AI Technical Summary

Technical Problem

Existing vehicle navigation systems struggle to efficiently predict drivers' destinations, forcing drivers to manually input addresses, which increases operational complexity and potential errors.

Method used

By collecting drivers' trip history data, generating data clusters, and using gradient boosting tree models to predict drivers' destinations, the accuracy of predictions is improved by combining hyperparameter tuning and machine learning algorithms.

Benefits of technology

It enables automated destination prediction, reduces the driver's workload, and improves the intelligence and prediction accuracy of the navigation system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121093014A_ABST
    Figure CN121093014A_ABST
Patent Text Reader

Abstract

Systems and methods for predicting a vehicle destination are provided. A method includes receiving a trip history of a vehicle operator, the trip history including trip information regarding a previous trip of the vehicle operator. Data clusters corresponding to each destination in the journey history are generated by extracting input features from journey information for each journey. The input feature characterizes a relationship between a vehicle operator and a previous trip. A training data set is generated based on collecting data clusters corresponding to each destination in the trip history. The training data set is used to develop a gradient enhanced tree model. At least one destination of the vehicle operator is predicted with the gradient enhanced tree model using at least one of the starting position, time, or day of the vehicle operator as an input condition for the gradient enhanced tree model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to vehicle navigation, and more particularly to systems and methods for predicting vehicle destinations. Background Technology

[0002] In addition to choosing which roads the vehicle should take to reach its desired destination, the vehicle operator is also responsible for maneuvering the vehicle along those roads. To assist the driver in selecting routes, the operator can access a navigation system that uses the Global Positioning System (GPS) to determine which route best suits their needs. The navigation system can be integrated into the vehicle or it can be separate, such as in the case of mobile cellular devices. Summary of the Invention

[0003] This paper discloses a method for operating a vehicle. The method includes receiving the vehicle operator's trip history, which includes trip information about the operator's previous trips. Input features are extracted from the trip information of each trip in the trip history to generate data clusters corresponding to each destination in the trip history. The input features characterize the relationship between the vehicle operator and previous trips. A training dataset is generated based on the collected data clusters corresponding to each destination in the trip history. The training dataset is used to develop a gradient boosting tree model. Using at least one of the vehicle operator's starting location, time of day, or day of week as input conditions, the gradient boosting tree model predicts at least one destination for the vehicle operator.

[0004] In one aspect of this disclosure, the trip history includes at least one of the start position, end position, and start time of each previous trip.

[0005] In one aspect of this disclosure, at least one of the input features characterizes the current location of the newly initiated trip relative to the destination of each previous trip.

[0006] In one aspect of this disclosure, the input features of each data cluster include at least one of the following: the distance from the starting location to the corresponding destination of each data cluster; or the time elapsed since the vehicle operator visited the corresponding destination of each data cluster.

[0007] In one aspect of this disclosure, the input features of each data cluster include at least one of the following: the number of visits to each destination corresponding to the data cluster; or, if the data cluster has a starting position that matches the starting position, the number of visits to each destination corresponding to the data cluster.

[0008] In one aspect of this disclosure, the input features for each data cluster include the number of visits to each destination corresponding to the data cluster if the current location matches the starting location and the current day of the week matches a day of the week of a previous trip.

[0009] In one aspect of this disclosure, the input features for each data cluster include the number of visits to each destination corresponding to the data cluster if the current part of a day matches a part of a corresponding previous trip.

[0010] In one aspect of this disclosure, the input features for each data cluster include the number of visits to each destination corresponding to the data cluster if the current day of the week matches at least one of the previous trip's non-weekend day type or the previous trip's weekday type.

[0011] In one aspect of this disclosure, the input features for each data cluster include the number of visits to each destination corresponding to the data cluster, assuming the data cluster has a starting position that matches the current position.

[0012] In one aspect of this disclosure, the method includes updating a training dataset with labels indicating whether a destination in the trip history was visited at the end of a newly initiated trip.

[0013] In one aspect of this disclosure, the method includes applying hyperparameter tuning to a gradient boosting tree model.

[0014] In one aspect of this disclosure, hyperparameter tuning includes applying at least one of the following: class weights of input features, Laplacian smoothing, or exponential decay.

[0015] In one aspect of this disclosure, at least one destination includes two possible destinations.

[0016] In one aspect of this disclosure, the method includes displaying at least one destination along with a confidence level of at least one destination on a display in a vehicle.

[0017] This document discloses a non-transitory computer-readable storage medium embodying programming instructions operable, when executed by a processor, to perform a method. The method includes receiving a vehicle operator's trip history, which includes trip information about the vehicle operator's previous trips. By extracting input features from the trip information of each trip in the trip history, a data cluster corresponding to each destination in the trip history is generated. The input features characterize the relationship between the vehicle operator and previous trips. A training dataset is generated based on the collected data clusters corresponding to each destination in the trip history. The training dataset is used to develop a gradient boosting tree model. Using at least one of the vehicle operator's starting location, time of day, or day of week as input conditions to the gradient boosting tree model, the gradient boosting tree model is used to predict at least one destination of the vehicle operator.

[0018] This document discloses a vehicle. The vehicle includes a wheel-supported body, a vehicle navigation system configured to provide direction to a destination, and a controller communicating with the navigation system. The controller is configured to receive the trip history of a vehicle operator. The trip history includes trip information about the vehicle operator's previous trips. The controller is also configured to generate a data cluster corresponding to each destination in the trip history by extracting input features from the trip information of each trip in the trip history. The input features characterize the relationship between the vehicle operator and previous trips. The controller is further configured to generate a training dataset based on collecting the data clusters corresponding to each destination in the trip history, and to use the training dataset to develop a gradient boosting tree model to predict at least one destination of the vehicle operator by using at least one of the vehicle operator's starting location, time of day, or day of week as input conditions.

[0019] The following solutions are provided:

[0020] 1. A method of operating a vehicle, the method comprising:

[0021] Receive the vehicle operator's trip history, which includes trip information about multiple previous trips of the vehicle operator;

[0022] By extracting multiple input features from the trip information of each trip in the trip history, a data cluster corresponding to each destination in the trip history is generated, where multiple input features characterize the relationship between the vehicle operator and multiple previous trips;

[0023] A training dataset is generated by clustering data corresponding to each destination in the travel history.

[0024] Developing gradient boosting tree models using training datasets; and

[0025] Using at least one of the vehicle operator's starting location, time of day, or day of week as input conditions, the gradient boosting tree model is used to predict at least one destination of the vehicle operator.

[0026] 2. The method according to Scheme 1, wherein the trip history includes at least one of the start position, end position and start time of each of a plurality of previous trips.

[0027] 3. The method according to Scheme 2, wherein at least one of the input features characterizes the current location of the newly initiated trip relative to the destination of each of the plurality of previous trips.

[0028] 4. The method according to Scheme 3, wherein the plurality of input features for each data cluster includes at least one of the following: the distance from the starting location to the corresponding destination of each data cluster; or the time elapsed since the vehicle operator visited the corresponding destination of each data cluster.

[0029] 5. The method according to Scheme 4, wherein the plurality of input features for each data cluster includes at least one of the following: the number of visits to each destination corresponding to the data cluster; or, if the data cluster has a starting position that matches the starting position, the number of visits to each destination corresponding to the data cluster.

[0030] 6. The method according to Scheme 2, wherein the multiple input features of each data cluster include the number of visits to each destination corresponding to the data cluster if the current location matches the starting location and the current day of the week matches a day of the week of one of the multiple previous trips.

[0031] 7. The method according to Scheme 2, wherein multiple input features for each data cluster include the number of visits to each destination corresponding to the data cluster when the current part of a day matches a part of a day of a corresponding previous trip among multiple previous trips.

[0032] 8. The method according to Scheme 7, wherein the multiple input features of each data cluster include the number of visits to each destination corresponding to the data cluster if the current day of the week matches at least one of multiple previous trip non-weekend day types or multiple previous trip weekday types.

[0033] 9. The method according to Scheme 8, wherein multiple input features for each data cluster include the number of visits to each destination corresponding to the data cluster, assuming the data cluster has a starting position that matches the current position.

[0034] 10. According to the method described in Scheme 1, update the training dataset with labels indicating whether a destination in the trip history was visited at the end of a newly initiated trip.

[0035] 11. The method according to Scheme 1 includes applying hyperparameter tuning to the gradient boosting tree model.

[0036] 12. The method according to Scheme 11, wherein hyperparameter tuning includes applying at least one of the following: class weights of multiple input features, Laplacian smoothing, or exponential decay.

[0037] 13. The method according to Scheme 1, wherein at least one destination includes two possible destinations.

[0038] 14. The method according to Scheme 1, comprising displaying at least one destination along with a confidence level of at least one destination on a display in the vehicle.

[0039] 15. A non-transitory computer-readable storage medium embodying programming instructions, which, when executed by a processor, are operable to perform a method comprising:

[0040] Receive the vehicle operator's trip history, which includes trip information about multiple previous trips of the vehicle operator;

[0041] By extracting multiple input features from the trip information of each trip in the trip history, a data cluster corresponding to each destination in the trip history is generated, where multiple input features characterize the relationship between the vehicle operator and multiple previous trips;

[0042] A training dataset is generated by clustering data corresponding to each destination in the travel history.

[0043] Developing gradient boosting tree models using training datasets; and

[0044] Using at least one of the vehicle operator's starting location, time of day, or day of week as input conditions, the gradient boosting tree model is used to predict at least one destination of the vehicle operator.

[0045] 16. The computer-readable storage medium according to claim 15, wherein the trip history includes at least one of the start position, end position, and start time of each of a plurality of previous trips.

[0046] 17. The computer-readable storage medium according to claim 16, wherein at least one of the input features characterizes the current location of the newly initiated trip relative to the destination of each of a plurality of previous trips.

[0047] 18. A vehicle comprising:

[0048] A vehicle body supported by multiple wheels;

[0049] A vehicle navigation system configured to provide directions to a destination; and

[0050] A controller that communicates with the navigation system and is configured to perform the following operations:

[0051] Receive the vehicle operator's trip history, which includes trip information about multiple previous trips of the vehicle operator;

[0052] By extracting multiple input features from the trip information of each trip in the trip history, a data cluster corresponding to each destination in the trip history is generated, where multiple input features characterize the relationship between the vehicle operator and multiple previous trips;

[0053] A training dataset is generated by clustering data corresponding to each destination in the travel history.

[0054] Developing gradient boosting tree models using training datasets; and

[0055] Using at least one of the vehicle operator's starting location, time of day, or day of week as input conditions, the gradient boosting tree model is used to predict at least one destination of the vehicle operator.

[0056] 19. The vehicle according to claim 18, wherein the trip history includes at least one of the start position, end position and start time of each of a plurality of previous trips.

[0057] 20. The vehicle according to Scheme 19, wherein at least one of the input features characterizes the current location of the newly initiated trip relative to the destination of each of a plurality of previous trips. Attached Figure Description

[0058] Figure 1 An example vehicle with a human-machine interface according to an exemplary embodiment is shown.

[0059] Figure 2 A flowchart illustrating an example method for predicting vehicle destinations is shown.

[0060] Figure 3 An example training dataset with multiple data clusters is shown.

[0061] Some embodiments of this disclosure will now be described by way of example only and with reference to the accompanying drawings. Throughout the drawings, the same reference numerals denote the same elements or elements of the same type. Detailed Implementation

[0062] Those skilled in the art will recognize that terms such as “above,” “below,” “upward,” “downward,” “top,” “bottom,” “left,” and “right” are used descriptively in the accompanying drawings and do not represent a limitation on the scope of this disclosure as defined by the appended claims. Furthermore, the teachings herein can be described in terms of functional and / or logical block components and / or various processing steps. It should be understood that such block components may include multiple hardware, software, and / or firmware components configured to perform a specified function.

[0063] Referring to the accompanying drawings, where the same numerals indicate the same parts, and the same reference numerals refer to the same components, Figure 1 A schematic view of a motor vehicle 10 positioned relative to a road surface (e.g., lane 12) is shown. Figure 1 As shown, the motor vehicle 10 includes a body 14, a first axle having a first set of wheels 16-1, 16-2, and a second axle having a second set of wheels 16-3, 16-4 (e.g., individual left and right wheels on each axle). Each of the wheels 16-1, 16-2, 16-3, 16-4 employs a tire configured to provide frictional contact with the lane 12. Although two axles with corresponding wheels 16-1, 16-2, 16-3, 16-4 are specifically shown, it is not excluded that the motor vehicle 10 may have additional axles.

[0064] like Figure 1 As shown, the vehicle suspension system operably connects the body 14 to the wheels 16-1, 16-2, 16-3, and 16-4 of the respective groups to maintain contact between the wheels and the lane 12 and to maintain the maneuverability of the motor vehicle 10. The motor vehicle 10 additionally includes a powertrain 20 having one or more power sources 20A, which may be an internal combustion engine (ICE), an electric motor, or a combination of these devices, configured to transmit drive torque to the wheels 16-1, 16-2 and / or the wheels 16-3, 16-4. The motor vehicle 10 also employs a vehicle operation or control system, including: devices such as one or more steering actuators (e.g., electric steering units) configured to turn the wheels 16-1, 16-2 by a steering angle; accelerator devices for controlling the power output of the power sources 20A; brake switches or devices for reducing the rotation of the wheels 16-1 and 16-2 (e.g., by individual friction brakes located at the respective wheels), etc.

[0065] An electronic controller 26 is disposed in the motor vehicle 10 and may alternatively be referred to as a control module, control unit, controller, vehicle controller, computer, etc. The electronic controller 26 may include a computer and / or processor 28, and includes software, hardware, memory, algorithms, connections, etc., for managing and controlling the operation of the motor vehicle 10. Thus, the following description and... Figure 2 The overall representation can be embodied as a program or algorithm that is at least partially operable on the electronic controller 26.

[0066] The electronic controller 26 may be embodied as one or more digital computers or hosts, each having one or more processors 28, read-only memory (ROM), random access memory (RAM), electrically programmable read-only memory (EPROM), optical drivers, magnetic drivers, etc., high-speed clocks, analog-to-digital (A / D) circuitry, digital-to-analog (D / A) circuitry, input / output (I / O) circuitry, I / O devices and communication interfaces, and signal conditioning and buffering electronics. Computer-readable memory may include non-transitory / tangible media involved in providing data or computer-readable instructions. Memory may be non-volatile or volatile. Non-volatile media may include, for example, optical discs or magnetic disks, and other permanent memories. Example volatile media may include dynamic random access memory (DRAM), which may constitute main memory. Other examples of memory embodiments include floppy disks, hard disks, magnetic tapes or other magnetic media, CD-ROMs, DVDs and / or other optical media, and other possible memory devices (e.g., flash memory). The electronic controller 26 includes tangible non-transitory memory 30 on which computer-executable instructions, including one or more algorithms, are recorded for regulating the operation of the motor vehicle 10.

[0067] The motor vehicle 10 also includes a vehicle navigation system 34, which may be part of integrated vehicle control or an additional device for finding the vehicle's direction of travel. The vehicle navigation system 34 is also operatively connected to a Global Positioning System (GPS) 36 using Earth-orbiting satellites. An electronic controller 26 communicates with the GPS 36 via the vehicle navigation system 34. The vehicle navigation system 34 receives its position data from the GPS 36 using satellite navigation equipment (not shown), and then correlates this position data with the vehicle's position relative to its surrounding geographic area. Based on this information, a route to a specific waypoint can be plotted and calculated when direction to that destination is required. Dynamic (on-the-fly) terrain and / or traffic information can be used to adjust the route. The current position of the motor vehicle 10 can be calculated via dead reckoning—advancing the position through discrete control points using a previously determined position and based on elapsed time and a given or estimated speed along the route.

[0068] Figure 2 A flowchart of an example method 100 for predicting one or more destinations for motor vehicle 10 is shown. The ability to predict the destination of motor vehicle 10 allows an operator to simply select a destination, for example, through a vehicle navigation system 34, instead of manually entering the address of the destination.

[0069] Method 100 begins at block 102, where the operator of vehicle 10 initiates a new trip. In one example, the new trip can be initiated by the operator placing vehicle 10 into an operating mode, for example, by placing the ignition of vehicle 10 in the "on" position. Once the new trip of vehicle 10 has been initiated, method 100 proceeds to block 104.

[0070] In block 104, method 100 collects trip history associated with the operator of motor vehicle 10. Trip history includes information about trips previously performed by the operator. In one example, trip information includes the start location, end location, and start time for each trip in the trip history. Trip information may also include end time, used to calculate the length of time elapsed since the operator performed each trip in the trip history. Trip history can be collected between different motor vehicles 10 within the same household driven by a given operator, using a single account, for a fleet, or via a discoverable device through electronic controller 26, which communicates with cloud 54 (…). Figure 1 ) Communicate to access stored data including trip information from past trips. As the trip information is collected, method 100 proceeds to block 104.

[0071] In block 106, method 100 generates data clusters, where each destination in the trip history has its own data cluster. Data clusters are generated by extracting information from the trip history of a given operator corresponding to motor vehicle 10 and a given destination. A characteristic of generating a single data cluster for each destination is that each data cluster provides a quantifiable description of past driving behavior relative to the operator's current location. Furthermore, for the purpose of generating a single data cluster, a destination can include a single location, such as a single address, or an area within a predetermined distance from a central location. The predetermined distance can include a predetermined number of city blocks or a radius from a single location. A characteristic of defining destinations in this way is that it can group larger destinations (such as shopping malls) into a single cluster for destination prediction.

[0072] For each destination identified from the trip information, the data clustering includes multiple input features corresponding to the relationship between the destination or the current location of operator 40 and vehicle 10 and the destination. In one example, the input features include the distance from the current location of operator 40 and vehicle 10 to the destination in the data cluster. The input features may also include the time elapsed since the destination was last visited and the number of visits to the destination from the two last matched trip destinations.

[0073] Input features may also include the total number of visits to the destination within a predetermined time period prior to initiating a new trip at block 102. In addition to quantifying the number of visits to the destination, input features may also include the number of visits from the current location or from a matched non-weekend day type (e.g., a non-weekend day compared to a weekend). Input features may also include the number of visits to the destination based on a weekday type, such as a day during the week the operator works or commutes to work, compared to a day during the week the operator does not work or commute. Input features may also include the number of visits to the destination during a given part of the day (e.g., morning, afternoon, evening, or night).

[0074] Furthermore, the input features can include combinations of each of the individual input features discussed above. For example, the number of visits to a given destination can be further restricted by at least one of the following: matching a part of the day with the current part of the day, matching the current day with a non-weekend day type, matching the current day with a weekday type, or determining the number of visits if the current location matches the starting location of an associated destination in a given data cluster. In one example, the current location matches the starting location of a previous trip when the current location is within a predetermined distance from the starting location of that previous trip from the trip history. Once the data clusters for each destination are generated in block 106, method 100 proceeds to block 108.

[0075] In block 108, data clustering DCs, such as DC0-DCX, is collected to generate training dataset 200. Figure 3Example training dataset 200 is shown in tabular form for ease of understanding. However, training dataset 200 can take other numerical forms when evaluated by electronic controller 26. In the example shown, training dataset 200 includes multiple distinct data clusters DC0-DCX (see leftmost column) and their corresponding input features IF1-IFX as described above, indicated by numerical values ​​“#” indicating the strength or frequency of the relationship. In addition to the input features IF in training dataset 200, training dataset 200 can be updated with a label LAB such as “1” after the operator completes a newly initiated trip, indicating which destination associated with one of the data clusters DC was visited. Conversely, for each unvisited destination, the associated row of column “LAB” is given a label of “0”. With training dataset 200 prepared at block 108, method 100 proceeds to block 110.

[0076] In block 110, method 100 utilizes a machine learning algorithm combined with training dataset 200 to train a machine learning model using information corresponding to the operator of the newly initiated process. In one example, the machine learning model is a gradient boosting tree classification model, such as an optical gradient boosting machine (LGBM). This model is generated by tree-based algorithms belonging to a class of supervised machine learning models that construct decision trees. The constructed decision tree can partition the feature prediction space into multiple regions, thereby enabling hierarchical representations of complex relationships between input variables and outputs. However, this disclosure is applicable to other types of machine learning models that can be trained using the training dataset 200 generated in block 108.

[0077] In addition to training the machine learning model at block 110, method 100 may also perform hyperparameter tuning on the machine learning model (block 112) to improve the accuracy of the model's predictions. In one example, hyperparameter tuning may include applying weights to the input feature IF based on the relative contribution of the input feature IF to the destination prediction discussed above. In particular, hyperparameter tuning may utilize at least one of Laplace smoothing or exponential decay to avoid zero probability of predicting the destination. With the machine learning model trained at block 110, method 100 proceeds to block 114.

[0078] In block 114, method 100 utilizes the machine learning model trained at block 110 to predict destinations for the operator of vehicle 10. In one example, the machine learning model receives at least one of the following as input conditions: the current or starting location of a newly initiated trip, the current time, and the associated day of the week. The machine learning model uses these input conditions to predict at least one destination for the operator 40 of vehicle 10. For example, the machine learning model can be configured to output two most likely destinations for the operator 40 based on the input conditions.

[0079] In block 116, method 100 can then display at least one possible destination to operator 40 on vehicle navigation system 34. Method 100 can also display the confidence level of the at least one possible destination, such as high, medium, or low. In one example, the confidence level can be determined based on the similarity level between the operator 40's starting location, time of day, or day of week and trips from trip history. A feature of displaying the predicted destination on the display of vehicle navigation system 34 is that it provides operator 40 with the ability to select a desired destination without having to manually enter an address. Once a newly initiated trip from block 102 is completed at the destination, trip history from block 104 can be updated to include the new trip information.

[0080] The terms “a” and “an” do not indicate a quantity limitation, but rather that at least one of the referenced items is present. The term “or” means “and / or” unless the context clearly indicates otherwise. A reference to “an aspect” throughout the specification means that a particular element described in connection with that aspect (e.g., a feature, structure, step, or characteristic) is included in at least one aspect described herein and may or may not be present in other aspects. Furthermore, it should be understood that the described elements may be combined in a suitable manner in each aspect.

[0081] While the foregoing disclosure has been described with reference to exemplary embodiments, those skilled in the art will understand that various changes can be made and elements can be substituted with equivalents without departing from the scope of this disclosure. Furthermore, many modifications can be made to adapt particular situations or materials to the teachings of this disclosure without departing from its scope. Therefore, it is intended that this disclosure be limited to the specific embodiments disclosed, but will include embodiments falling within its scope.

Claims

1. A method of operating a vehicle, the method comprising: Receive the vehicle operator's trip history, which includes trip information about multiple previous trips of the vehicle operator; By extracting multiple input features from the trip information of each trip in the trip history, a data cluster corresponding to each destination in the trip history is generated, where multiple input features characterize the relationship between the vehicle operator and multiple previous trips; A training dataset is generated by clustering data corresponding to each destination in the travel history. Develop gradient boosting tree models using training datasets; as well as Using at least one of the vehicle operator's starting location, time of day, or day of week as input conditions, the gradient boosting tree model is used to predict at least one destination of the vehicle operator.

2. The method of claim 1, wherein the trip history includes at least one of the start position, end position, and start time of each of a plurality of previous trips.

3. The method of claim 2, wherein at least one of the input features characterizes the current location of the newly initiated trip relative to the destination of each of the plurality of previous trips.

4. The method of claim 3, wherein the plurality of input features for each data cluster includes at least one of the following: the distance from the starting location to the corresponding destination of each data cluster; or the time elapsed since the vehicle operator visited the corresponding destination of each data cluster.

5. The method of claim 4, wherein the plurality of input features for each data cluster includes at least one of the following: the number of visits to each destination corresponding to the data cluster; or, if the data cluster has a starting position that matches the starting position, the number of visits to each destination corresponding to the data cluster.

6. The method of claim 2, wherein the plurality of input features for each data cluster includes the number of visits to each destination corresponding to the data cluster if the current location matches the starting location and the current day of the week matches a day of the week of one of the plurality of previous trips.

7. The method of claim 2, wherein the plurality of input features for each data cluster includes the number of visits to each destination corresponding to the data cluster in such a case that the current portion of a day matches a portion of a day of a corresponding previous trip among a plurality of previous trips.

8. The method of claim 7, wherein the plurality of input features for each data cluster includes the number of visits to each destination corresponding to the data cluster if the current day of the week matches at least one of a plurality of previous trip non-weekend day types or a plurality of previous trip weekday types.

9. The method of claim 8, wherein the plurality of input features for each data cluster include the number of visits to each destination corresponding to the data cluster, assuming the data cluster has a starting position that matches the current position.

10. The method of claim 1, wherein the training dataset is updated with labels indicating whether a destination in the trip history was visited at the end of a newly initiated trip.