Travel route identification method and device

By collecting location information and cell identifiers from terminal applications and combining them with historical cell paths, user travel routes can be identified, solving the problems of high power consumption and privacy leakage in existing technologies, and achieving efficient route identification and privacy protection.

CN122073669APending Publication Date: 2026-05-22HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
HUAWEI TECH CO LTD
Filing Date
2024-11-22
Publication Date
2026-05-22

AI Technical Summary

Technical Problem

Existing technologies require frequent GPS location triggering when identifying users' historical travel routes, resulting in high terminal power consumption and potentially exposing the user's real-time location, affecting terminal battery life and privacy protection.

Method used

By collecting location information and cell identifiers from the terminal application during operation and combining them with historical cell paths, the travel path traversed by the terminal can be determined, avoiding frequent triggering of GPS positioning, reducing power consumption, and protecting privacy.

Benefits of technology

It achieves accurate identification of travel routes without increasing terminal power consumption, improves terminal battery life, and protects user privacy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122073669A_ABST
    Figure CN122073669A_ABST
Patent Text Reader

Abstract

Provided are a travel path identification method and device, relating to the technical field of terminals. Historical cell path corresponding to a terminal and positioning point information generated by the terminal during movement are obtained. The historical cell path includes cell identifiers of multiple network cells accessed by the terminal in sequence when the terminal passes through a historical travel path. A positioning point in the positioning point information is represented by geographic coordinates and a cell identifier of a network cell accessed by the terminal at the positioning point. Geographic coordinates corresponding to each cell identifier in the historical cell path are determined according to the positioning point information. Geographic coordinate information of a historical travel path corresponding to the historical cell path is determined according to the geographic coordinates corresponding to each cell identifier in the historical cell path. The application determines a historical travel path by collecting and utilizing positioning point information generated by an application program on the terminal during operation, without frequently triggering a positioning function to position the terminal during one movement process, thereby reducing terminal power consumption.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of terminal technology, and in particular to a method and apparatus for travel route identification. Background Technology

[0002] Frequently used routes refer to routes that a user has frequently used in their historical travels; in other words, they are the historical travel routes that a user uses most often. Since frequently used routes usually reflect a user's travel habits and / or travel patterns, providing route recommendation services such as navigation planning based on frequently used routes can better meet user expectations.

[0003] Obtaining a user's habitual routes requires identifying their historical travel paths. Related technologies typically require enabling the Global Positioning System (GPS) on the user's mobile device during travel and collecting GPS location information in real time during movement. By analyzing the GPS location information collected by the device, the geographic coordinates along the user's historical travel paths can be determined.

[0004] When determining a user's historical travel route using the above method, the terminal usually needs to frequently locate itself during the journey. For example, the terminal needs to continuously obtain the geographical coordinates of the locations it passes through from satellites during a single journey, which leads to high power consumption of the terminal. Summary of the Invention

[0005] This application provides a method and apparatus for travel route identification.

[0006] Firstly, a method for identifying travel routes is provided. This method includes: acquiring the historical cell path corresponding to the terminal, where the historical cell path includes the cell identifiers of multiple network cells sequentially accessed by the terminal along a historical travel route; acquiring location point information generated by the terminal during its movement, where the location point information includes multiple location points. These multiple location points are the locations where the terminal is located when the application on the terminal performs location tracking during operation. The location points are represented using geographic coordinates and the cell identifiers of the network cells accessed by the terminal at the location points. Based on the correspondence between the geographic coordinates and cell identifiers of the location points in the location point information, the geographic coordinates corresponding to each cell identifier in the historical cell path are determined. Based on the geographic coordinates corresponding to each cell identifier in the historical cell path, the geographic coordinate information of the historical travel route corresponding to the historical cell path is determined, whereby the geographic coordinate information includes the geographic coordinates of multiple location points sequentially passed by the terminal along the historical travel route.

[0007] In this application, based on the historical cell path corresponding to the terminal, multiple network cells sequentially accessed by the terminal along the historical travel path can be determined. Based on the coverage area of ​​these multiple network cells, the geographical area of ​​the historical travel path can be coarsely determined, that is, the approximate geographical location of the historical travel path can be determined. Furthermore, based on the location point information generated by the terminal during movement, the geographical coordinates traversed by the terminal when accessing different network cells can be determined. According to the geographical coordinates traversed by the terminal when accessing each network cell along the historical travel path, the specific road segment traversed by the terminal when accessing each network cell can be determined. Combining the order in which the terminal accessed multiple network cells along the historical travel path, the specific road segments corresponding to these multiple network cells can be connected, thereby enabling a fine-grained determination of the geographical coordinates sequentially traversed by the terminal along the historical travel path, that is, the precise geographical location of the historical travel path can be determined. In the technical solution provided in this application, the historical travel routes of the terminal are determined by collecting and utilizing the location point information generated by the application on the terminal during operation, without the terminal frequently triggering the GPS positioning function to locate the terminal during a single movement. That is, the terminal does not need to consume additional power to trigger the GPS positioning function just to determine the historical travel route, which can reduce the terminal power consumption and improve the terminal's battery life.

[0008] Optionally, the location point information includes multiple location point sequences. Each location point sequence includes multiple location points obtained sequentially during a single run of the application for the terminal. One implementation method for determining the geographical coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographical coordinates of the location points and cell identifiers in the location point information includes: determining the geographical coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographical coordinates of the location points in the location point sequences that match the historical cell path from among the multiple location point sequences. Wherein, matching the location point sequence with the historical cell path includes: the cell identifier sequence corresponding to the location point sequence matching the historical cell path.

[0009] In this application, based on the cell identifier sequence corresponding to the positioning point sequence, it is determined whether multiple positioning points in the positioning point sequence are location points on the historical travel path corresponding to the historical cell path. If the cell identifier sequence corresponding to the positioning point sequence matches the historical cell path, then the positioning points in the positioning point sequence are taken as location points on the historical cell path, and the geographical coordinates corresponding to the cell identifiers in the historical cell path can be further determined.

[0010] Optionally, one implementation method for determining the geographic coordinates of each cell identifier in the historical cell path based on the correspondence between the geographic coordinates of the positioning points in the positioning point sequence that matches the historical cell path in multiple positioning point sequences includes: for the positioning points in the positioning point sequence that matches the historical cell path in multiple positioning point sequences, the geographic coordinates of the positioning point are taken as the geographic coordinates of the cell identifier that is the same as the cell identifier corresponding to the positioning point in the historical cell path.

[0011] Optionally, one method for determining the geographic coordinate information of the historical travel route corresponding to the historical community path based on the geographic coordinates corresponding to each community identifier in the historical community path includes: replacing each community identifier in the historical community path with its corresponding geographic coordinates to obtain a geographic coordinate sequence; and determining the geographic coordinate information of the historical travel route corresponding to the historical community path based on the geographic coordinate sequence.

[0012] Optionally, the historical community path includes a first community identifier, which corresponds to multiple geographic coordinates. Based on the distances from these multiple geographic coordinates to the travel origin and / or the distances from these multiple geographic coordinates to the travel destination, the target order of these multiple geographic coordinates on the historical travel path corresponding to the historical community path is determined. The travel origin is the starting point of the historical travel path corresponding to the historical community path, and the travel destination is the ending point of the historical travel path corresponding to the historical community path. Accordingly, one implementation method for replacing each community identifier in the historical community path with its corresponding geographic coordinates includes: replacing the first community identifier in the historical community path with multiple geographic coordinates arranged according to the target order.

[0013] In this application, for a cell identifier that corresponds to multiple geographic coordinates, it is necessary to first determine the order of the multiple geographic coordinates corresponding to a single cell identifier on the historical travel path, and then sort the geographic coordinates corresponding to each cell identifier according to the order of the historical cell path to improve the accuracy of the restored historical travel path.

[0014] Optionally, for any two adjacent geographic coordinates in the geographic coordinate sequence, if the distance between the two adjacent geographic coordinates is greater than a distance threshold, one or more new geographic coordinates are added between the two adjacent geographic coordinates to obtain an updated geographic coordinate sequence. Accordingly, the implementation of generating historical travel routes corresponding to historical community paths based on the geographic coordinate sequence includes: determining the geographic coordinate information of the historical travel routes corresponding to the historical community paths based on the updated geographic coordinate sequence.

[0015] In this application, multiple geographical coordinates with relatively dense distribution are used to reconstruct historical travel routes, which can improve route accuracy.

[0016] Optionally, one implementation of obtaining the historical cell path corresponding to the terminal includes: obtaining historical cell access information corresponding to the terminal, which includes multiple historical cell sequences, each historical cell sequence including cell identifiers of multiple network cells accessed sequentially by the terminal during a trip. Based on the similarity between the multiple historical cell sequences, one or more historical cell paths are determined, each historical cell path corresponding to a historical travel path traversed by the terminal.

[0017] In this application, one or more historical cell paths can be determined based on the historical cell access information corresponding to the terminal. Since each historical cell path corresponds to a historical travel path, this application can be applied not only to scenarios with a single historical travel path, but also to scenarios with multiple historical travel paths.

[0018] Optionally, one implementation of determining one or more historical cell paths based on the similarity between multiple historical cell sequences includes: dividing the multiple historical cell sequences into one or more cluster sets based on their similarity. Wherein, the similarity between historical cell sequences within the same cluster set is higher than a similarity threshold. For each cluster set, a historical cell path is determined based on all historical cell sequences within that cluster set.

[0019] Optionally, the real-time cell sequence corresponding to the terminal is obtained. The real-time cell sequence includes the cell identifiers of multiple network cells that the terminal sequentially accesses during the current trip. If a target historical cell path matching the real-time cell sequence exists in the historical cell path corresponding to the terminal, the target historical travel path corresponding to the target historical cell path is taken as the current travel path of the terminal.

[0020] This application determines the current travel path of the terminal by matching the network cells that the terminal accesses sequentially during the current trip with the network cells that the terminal accesses sequentially along the historical travel path. The implementation method is simple and has low complexity.

[0021] Optionally, matching the target historical cell path with the real-time cell sequence includes: the longest common subsequence between the target historical cell path and the real-time cell sequence satisfies a matching condition. The matching condition includes: the length of the longest common subsequence reaches a length threshold, and / or, the ratio of the length of the longest common subsequence to the length of the real-time cell sequence reaches a proportion threshold.

[0022] Optionally, after determining that the terminal's current travel path is the target historical travel path, based on the current time period and / or the services the terminal is currently performing, and using the communication experience map corresponding to the target historical travel path, the network cells to be switched at the terminal's current location and / or subsequent locations traversed during its movement are determined. The communication experience map includes candidate cells corresponding to multiple locations along the target historical travel path, as well as the service quality of these candidate cells over multiple time periods. Service quality includes network quality and / or service quality corresponding to multiple service categories.

[0023] This application formulates a cell handover strategy based on the current time period and / or the services currently being performed by the terminal, combined with a communication experience map. Specifically, it selects network cells that can provide good network quality and / or good service quality for the corresponding services from the network cells available for access along the terminal's current travel path. This improves the reliability and stability of the terminal's service operation, thereby enhancing the user experience.

[0024] Optionally, a communication experience map corresponding to the target's historical travel path can be downloaded from the cloud.

[0025] Secondly, a travel route identification device is provided. The device can be a terminal. The device includes multiple functional modules that interact to implement the methods described in the first aspect and its various embodiments. The multiple functional modules can be implemented based on software, hardware, or a combination of both, and can be arbitrarily combined or divided based on specific implementations.

[0026] Thirdly, a terminal is provided, comprising: a processor and a memory; the memory for storing a computer program, the computer program including program instructions; the processor for invoking the computer program to implement the methods described in the first aspect and its various embodiments.

[0027] Fourthly, a computer-readable storage medium is provided, wherein instructions are stored thereon, which, when executed by a processor, implement the methods described in the first aspect and its various embodiments.

[0028] Fifthly, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the methods described in the first aspect and its various embodiments.

[0029] In a sixth aspect, a chip is provided, the chip including programmable logic circuitry and / or program instructions, which, when the chip is running, implement the methods described in the first aspect and its various embodiments. Attached Figure Description

[0030] Figure 1This is a flowchart illustrating a travel route identification method provided in an embodiment of this application;

[0031] Figure 2 This is a schematic diagram illustrating how historical travel routes are obtained based on historical cell route reconstruction, as provided in an embodiment of this application.

[0032] Figure 3 This is a schematic diagram of the structure of a travel route identification device provided in an embodiment of this application;

[0033] Figure 4 This is a schematic diagram of the hardware structure of a terminal provided in an embodiment of this application. Detailed Implementation

[0034] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0035] User-preferred paths refer to routes frequently used by a user during their historical travels; in other words, they are historical travel routes that users use most often, such as commuting routes. Identifying user-preferred paths enables the prediction and reconstruction of mobile user locations, which has important applications in various fields such as traffic management, environmental monitoring, and urban planning. With the widespread adoption of smart devices, identifying user-preferred paths can also be used to optimize mobile network performance. For example, more base stations can be deployed or higher network bandwidth can be provided near the prevalent paths of many users to accommodate the network access needs of multiple smart devices.

[0036] Currently, the three main methods commonly used to identify users' habitual paths are: road network matching, machine learning, and deep learning.

[0037] Road network matching is a method that matches a user's GPS trajectory to actual roads based on existing road network data. The core of this method is accurately mapping discrete GPS points to the most probable roads. The map matching algorithms used include point-to-curve matching and Hidden Markov Models (HMMs). HMMs perform well in handling noise and errors.

[0038] Machine learning methods learn users' commuting patterns by training on large amounts of historical data. Commuting patterns include commuting methods and routes. Machine learning methods include supervised and unsupervised learning. Supervised learning models include regression and classification models. Regression models can be used to predict continuous commuting time or distance, such as linear regression and ridge regression. Classification models can be used to predict the type of route a user chooses, such as decision trees and random forests. Unsupervised learning models include clustering models. Clustering models can be used to discover users' commuting patterns, such as K-means clustering.

[0039] Deep learning methods utilize deep neural networks to automatically learn complex features and patterns in data, making them suitable for large-scale data and complex scenarios. Common deep learning networks include convolutional neural networks (CNNs), recurrent neural networks (RNNs), and graph neural networks (Graph Neural Networks). CNNs are suitable for processing image data and can be used for visual representations of traffic networks. RNNs are suitable for processing time-series data and can effectively capture the time dependencies in users' commuting paths. Graph neural networks are suitable for processing graph-structured data and can be directly applied to road networks.

[0040] Each of the three methods has its advantages and disadvantages. Road network matching is suitable for precise path matching, but it is poorly adaptable to new road networks. Machine learning methods need to learn user behavior from historical data, are highly adaptable but depend on the quality of the collected historical data. Deep learning methods perform excellently in handling complex data and pattern recognition, but require a large amount of data and computing resources.

[0041] Currently, a user's habitual route can be determined by identifying their historical travel paths. Related technologies involve enabling GPS positioning on a user's mobile device during travel and collecting GPS location information in real time during movement. Further analysis of the collected GPS location information using road network matching, machine learning, or deep learning methods can then determine the geographic coordinates along the user's historical travel path (or habitual route). However, determining a user's historical travel path using these technologies typically requires the device to frequently locate itself during movement. This not only leads to high power consumption and reduced battery life but also exposes the user's real-time location, posing a threat to user privacy.

[0042] Based on this, this application provides a technical solution for identifying historical travel routes. It determines the historical travel route (geographical route) by collecting multiple location points obtained from applications running on the terminal during operation, as well as the network cells the terminal accesses at each of these location points, and combining this information with the network cells the terminal sequentially accesses during its historical travels. Since location points are obtained by applications running on the terminal that trigger location tracking (such as navigation, ride-hailing, and food delivery apps), this application determines the historical travel route by collecting and utilizing the location point information generated by these applications during operation. This eliminates the need for the terminal to frequently trigger GPS location tracking during a single trip, thus reducing power consumption and improving battery life. Furthermore, since the terminal does not actively collect location point information when no applications triggering location tracking are running, it does not expose the user's real-time location, thereby protecting user privacy.

[0043] The technical solution provided in this application is implemented as follows: First, the historical cell path corresponding to the terminal is obtained. This historical cell path includes the cell identifiers of multiple network cells that the terminal sequentially accessed when traversing a historical travel path. Second, the location point information generated by the terminal during its movement is obtained. This location point information includes multiple location points, which are the locations where the terminal was located when the application on the terminal performed location tracking during operation. The location points are represented by geographic coordinates and the cell identifiers of the network cells accessed by the terminal at those location points. Then, based on the correspondence between the geographic coordinates and cell identifiers of the location points in the location point information, the geographic coordinates corresponding to each cell identifier in the historical cell path are determined. Finally, based on the geographic coordinates corresponding to each cell identifier in the historical cell path, the geographic coordinate information of the historical travel path corresponding to this historical cell path is determined. This geographic coordinate information includes the geographic coordinates of multiple location points that the terminal sequentially passed along the historical travel path. In this application, based on the historical cell path corresponding to the terminal, it is possible to determine the multiple network cells that the terminal sequentially accessed along the historical travel path. Based on the coverage area of ​​these multiple network cells, it is possible to coarsely determine the geographic area of ​​the historical travel path, that is, to determine the approximate geographic location of the historical travel path. Furthermore, based on the location information generated by the terminal during its movement, the geographical coordinates traversed by the terminal when accessing different network cells can be determined. According to the geographical coordinates traversed by the terminal when accessing each network cell along its historical travel path, the specific road segments traversed by the terminal when accessing each network cell can be determined. Combining the order in which the terminal accesses multiple network cells along its historical travel path, the specific road segments corresponding to these multiple network cells can be connected, thereby enabling fine-grained determination of the geographical coordinates traversed sequentially along the historical travel path, i.e., determining the precise geographical location of the historical travel path. In the technical solution provided in this application, the historical travel path of the terminal is determined by collecting and utilizing the location information generated by the application on the terminal during operation, without requiring the terminal to frequently trigger the GPS positioning function for positioning during a single movement. That is, the terminal does not need to consume additional power to trigger the GPS positioning function solely for determining the historical travel path, thus reducing terminal power consumption and improving terminal battery life.

[0044] In some implementations, after determining the historical travel path corresponding to the historical cell path, the current travel path of the terminal can be predicted or determined based on the network cells sequentially accessed by the terminal during the current trip. Specifically, the following method is used: A real-time cell sequence corresponding to the terminal is obtained, which includes the cell identifiers of multiple network cells sequentially accessed by the terminal during the current trip. If a target historical cell path matching the real-time cell sequence exists in the historical cell path corresponding to the terminal, the target historical travel path is taken as the current travel path of the terminal. This application determines the current travel path of the terminal by matching the network cells sequentially accessed by the terminal during the current trip with the network cells sequentially accessed by the terminal on the historical travel path, which is simple and has low complexity.

[0045] In some implementations, after determining the terminal's current travel path, a suitable network cell can be selected for the terminal to access from the network cells available along that path. Specifically, after determining that the terminal's current travel path is a target historical travel path, based on the current time period and / or the terminal's current service, and using the communication experience map corresponding to the target historical travel path, the network cells to be switched at the terminal's current location and / or subsequent locations traversed during movement are determined. This communication experience map includes candidate cells corresponding to multiple locations along the target historical travel path and the service quality of these candidate cells over multiple time periods. Service quality includes network quality and / or the service quality corresponding to multiple service categories. This application formulates a cell switching strategy based on the current time period and / or the terminal's current service, combined with the communication experience map. Specifically, it selects network cells from the network cells available along the terminal's current travel path that provide good network quality and / or good service quality for the corresponding service during the corresponding time period for the terminal to access. This improves the reliability and stability of the terminal's service operation, thereby enhancing the user experience.

[0046] The terminal involved in this application can be a user-portable smart terminal, including but not limited to mobile phones, tablets, smartwatches, smart bracelets, or other wearable electronic devices. This terminal has positioning capabilities and is equipped with an application that can trigger positioning. For example, the terminal may have navigation software, ride-hailing software, or food delivery software installed.

[0047] The technical solution of this application will be described in detail below from multiple perspectives, including methodology, software devices, and hardware devices.

[0048] The method flow of the embodiments of this application is illustrated below.

[0049] For example, Figure 1This is a flowchart illustrating a travel route identification method 100 provided in an embodiment of this application. Figure 1 As shown, the method 100 includes, but is not limited to, the following steps 101 to 104.

[0050] Step 101: Obtain the historical cell path corresponding to the terminal. The historical cell path includes the cell identifiers of multiple network cells that the terminal accessed sequentially when it traveled through a historical travel path.

[0051] In a mobile communication system, a network cell, also known as a cell or cellular unit, refers to the area covered by a base station or a portion of a base station (fan-shaped antenna). Mobile devices accessing a network cell can reliably communicate with the base station via a wireless channel. Optionally, a historical cell path can be represented as: (Network Cell 1, Network Cell 2, Network Cell 3, ..., Network Cell n) or Network Cell 1 → Network Cell 2 → Network Cell 3 → ... → Network Cell n, indicating that the terminal sequentially accessed Network Cell 1, Network Cell 2, Network Cell 3, ..., Network Cell n while following a historical travel path. Here, n is a positive integer greater than 1.

[0052] Optionally, one implementation of step 101 above includes steps 1011 to 1012.

[0053] In step 1011, the historical cell access information corresponding to the terminal is obtained. The historical cell access information includes multiple historical cell sequences, and each historical cell sequence includes the cell identifiers of multiple network cells that the terminal accesses sequentially during a trip.

[0054] Since the coverage area of ​​a single base station is limited, when a terminal moves a long distance, the network cell accessed by the terminal will be switched (from a network cell provided by one base station to a network cell provided by another base station). By recording the multiple network cells that the terminal accesses in sequence during a trip, a historical cell sequence can be obtained.

[0055] For example, the historical cell access information obtained in step 1011 above includes the following 6 historical cell sequences:

[0056] Cell sequence 1: (70106,34981,51742,46728,…,89231,14823);

[0057] Cell sequence 2: (38410,71963,18904,62812,…,10397,73421);

[0058] Cell sequence 3: (70106,34981,51732,46728,…,89231,14823);

[0059] Cell sequence 4: (70106,34991,51732,46728,…,89231,14823);

[0060] Cell sequence 5: (38410,71963,18904,61812,…,10397,73421);

[0061] Cell sequence 6: (38410,71963,18904,62812,…,10497,73421).

[0062] In step 1012, one or more historical cell paths are determined based on the similarity between the multiple historical cell sequences, and each historical cell path corresponds to a historical travel path traversed by the terminal.

[0063] Optionally, one implementation of step 1012 is as follows: based on the similarity between multiple historical cell sequences, the multiple historical cell sequences are divided into one or more cluster sets. For each cluster set, a historical cell path is determined based on all historical cell sequences in that cluster set. Specifically, the similarity between historical cell sequences within the same cluster set is higher than a similarity threshold, and the similarity between historical cell sequences within the same cluster set is higher than the similarity between historical cell sequences in different cluster sets. One cluster set corresponds to one historical travel path; that is, dividing multiple historical cell sequences into N cluster sets yields N historical cell paths, where N is a positive integer. Optionally, the similarity between any two historical cell sequences can be calculated by finding the longest common subsequence (LCS). This application embodiment does not limit the method for calculating the similarity between historical cell sequences. The similarity threshold can be set according to the actual scenario; this application embodiment does not limit the value of the similarity threshold.

[0064] In this implementation, the similarity between each pair of multiple historical cell sequences is first calculated. Then, based on the similarity calculation results, these multiple historical cell sequences are clustered to ultimately identify one or more historical travel paths. For example, referring to the example in step 1011 above, Table 1 shows the cell sequence similarity matrix, which includes the pairwise similarity between the aforementioned 6 historical cell sequences.

[0065] Table 1

[0066] Cell sequence 1 Cell sequence 2 Cell sequence 3 Cell sequence 4 Cell sequence 5 Cell sequence 6 Cell sequence 1 1 0.12 0.96 0.98 0.10 0.08 Cell sequence 2 0.12 1 0.15 0.14 0.95 0.96 Cell sequence 3 0.96 0.15 1 0.97 0.07 0.16 Cell sequence 4 0.98 0.14 0.97 1 0.11 0.06 Cell sequence 5 0.10 0.95 0.07 0.11 1 0.94 Cell sequence 6 0.08 0.96 0.16 0.06 0.94 1

[0067] Referring to Table 1, assuming a similarity threshold of 0.9, cell sequences 1, 3, and 4 can be grouped into cluster set 1, and cell sequences 2, 5, and 6 into cluster set 2. Further, based on cluster set 1, historical cell paths 1 (70106, 34981, 51732, 46728, ..., 89231, 14823) and 2 (38410, 71963, 18904, 62812, ..., 10397, 73421) are obtained. For multiple cell sequences within the same cluster set, if the cell identifier at the same location is different, the cell identifier with the highest frequency at that location can be used as the cell identifier for that location in the corresponding historical cell path. For example, the second cell identifier in cell sequence 1 is 34981, the second cell identifier in cell sequence 3 is 34981, and the second cell identifier in cell sequence 4 is 34991. Since the frequency of cell identifier 34981 (2 times) is higher than the frequency of cell identifier 34991 (1 time), cell identifier 34981 can be used as the second cell identifier in historical cell path 1.

[0068] Optionally, if the number of historical cell sequences in a cluster set is greater than a preset value, the historical travel path corresponding to that cluster set can be regarded as the user's habitual path. This preset value can be any positive integer. Since a historical cell sequence reflects multiple network cells that the terminal sequentially accesses during a single trip, if a cluster set includes multiple historical cell sequences, it indicates that the network cells accessed by the terminal in multiple trips are similar, suggesting that the terminal has traversed the same travel path during these multiple trips. Therefore, this travel path can be considered the user's habitual path.

[0069] In this embodiment, one or more historical cell paths can be determined based on the historical cell access information corresponding to the terminal. Since each historical cell path corresponds to a historical travel path, this embodiment can be applied not only to scenarios with a single historical travel path (or a single user's habitual path) but also to scenarios with multiple historical travel paths (or multiple user's habitual paths). Steps 102 to 104 below provide a scheme for determining the corresponding historical travel path, taking a single historical cell path as an example. If multiple historical cell paths are obtained in step 101, the corresponding historical travel path can be determined for each historical cell path using steps 102 to 104 below.

[0070] Step 102: Obtain the location information generated by the terminal during its movement. The location information includes multiple location points, which are the locations where the terminal is when the application on the terminal locates the terminal during its operation. The location points are represented by geographic coordinates and the cell identifier of the network cell that the terminal accesses at that location point.

[0071] For example, the location point information includes location point 1 (geographic coordinates 1, network cell 1), location point 2 (geographic coordinates 2, network cell 1), and location point 3 (geographic coordinates 3, network cell 2), indicating that the terminal accesses network cell 1 at geographic coordinates 1, accesses network cell 2 at geographic coordinates 2, and accesses network cell 2 at geographic coordinates 3. Optionally, the geographic coordinates can be represented using latitude and longitude, for example, as (longitude, latitude).

[0072] Optionally, the location point information includes multiple location point sequences, each sequence comprising multiple location points obtained sequentially during a single application run for the terminal. Optionally, the location point sequence can be represented as: {(geographic coordinates 1, network cell 1), (geographic coordinates 2, network cell 2), (geographic coordinates 3, network cell 3), ..., (geographic coordinates m, network cell m)} or location point 1 → location point 2 → location point 3 → ... → location point m. Where m is a positive integer greater than 1. For example, the location point information includes the following two location point sequences:

[0073] Location point sequence 1: {((116.253,39.961), 70106),((116.251,39.962),70106),((116.262,40.961),34981),…,((116.412,39.121),89231)};

[0074] Location point sequence 2: {((116.908,39.321),38410),((116.907,39.322),38410),((116.872,40.524),71963),…,((116.652,39.421),73721)}.

[0075] Optionally, multiple location point sequences can be collected by running one or more applications on the user's terminal during one or more trips. For example, if a user runs a ride-hailing app on the terminal during one trip, the location points generated by the terminal during the operation of the ride-hailing app can be collected to obtain a location point sequence; similarly, if a user runs a navigation app on the terminal during another trip, the location points generated by the terminal during the operation of the navigation app can be collected to obtain another location point sequence. Since the runtime of the applications on the terminal and the distance traveled during operation are not fixed, the number of location points contained in the generated location point sequence may vary. This application embodiment does not limit the length of the location point sequence (i.e., the number of location points contained in the location point sequence).

[0076] In this embodiment, the location point information generated by the application on the terminal during operation is collected and used to determine the historical travel path taken by the terminal. This eliminates the need for the terminal to consume additional power to trigger the GPS positioning function, which is only used to determine the historical travel path. This reduces the terminal's power consumption and improves its battery life.

[0077] Step 103: Based on the correspondence between the geographic coordinates of the location point and the cell identifier in the location point information, determine the geographic coordinates corresponding to each cell identifier in the historical cell path.

[0078] Optionally, when the location point information includes multiple location point sequences, one implementation of step 103 above includes: determining the geographical coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographical coordinates and cell identifiers of the location points in the location point sequences that match the historical cell path among the multiple location point sequences. Here, matching the location point sequence with the historical cell path includes: matching the cell identifier sequence corresponding to the location point sequence with the historical cell path. Optionally, for a location point in the location point sequence that matches the historical cell path among the multiple location point sequences, the geographical coordinates of that location point are used as the geographical coordinates of the cell identifier in the historical cell path that has the same cell identifier as that location point.

[0079] Optionally, for each of the multiple location point sequences, sequence matching is performed between the cell identifier sequence corresponding to the location point sequence and the historical cell path. For example, the similarity between the cell identifier sequence corresponding to the location point sequence and the historical cell path can be calculated. If a segment of the historical cell path has a similarity higher than a similarity threshold with the cell identifier sequence corresponding to the location point sequence, then it can be determined that the location point sequence matches the historical cell path. Furthermore, the correspondence between cell identifiers and geographic coordinates in the historical cell path can be constructed based on the location point sequences that match the historical cell path. For example, referring to the examples in steps 101 and 102 above, the cell identifier sequence corresponding to location point sequence 1 is (70106, 70106, 34981, ..., 89231). This cell identifier sequence matches the historical cell path 1 (70106, 34981, 51732, 46728, ..., 89231, 14823). Therefore, it can be determined that location point sequence 1 matches historical cell path 1. Furthermore, based on location point sequence 1, the following correspondence between multiple cell identifiers and geographical coordinates in historical cell path 1 can be constructed: {70106:(1 {116.253,39.961),(116.251,39.962)};{34981:(116.262,40.961)};…;{89231:(116.412,39.121)}, that is, the geographical coordinates (116.253,39.961) and (116.251,39.962) of the cell identifier 70106 in historical cell path 1, the geographical coordinates (116.253,39.961) and (116.251,39.962) of the cell identifier 34981, and the geographical coordinates (116.262,40.961) of the cell identifier 89231 are respectively (116.412,39.121). Similarly, the cell identifier sequence corresponding to location point sequence 2 is (38410, 38410, 71963, ..., 73721). This cell identifier sequence matches the historical cell path 2 (38410, 71963, 18904, 62812, ..., 10397, 73421). Therefore, it can be determined that location point sequence 2 matches historical cell path 2. Furthermore, based on location point sequence 2, multiple cell identifiers and their corresponding geographic coordinates in historical cell path 2 can be constructed. The following correspondence exists: {38410:(116.908,39.321),(116.907,39.322)}; {71963:(116.872,40.524)}; ...}, meaning that in historical cell path 2, cell identifier 38410 corresponds to the geographical coordinates (116.908,39.321) and (116.907,39.322), and cell identifier 71963 corresponds to the geographical coordinates (116.872,40.524).

[0080] In this embodiment, based on the cell identifier sequence corresponding to the positioning point sequence, it is determined whether multiple positioning points in the positioning point sequence are location points on the historical travel path corresponding to the historical cell path. If the cell identifier sequence corresponding to the positioning point sequence matches the historical cell path, then the positioning points in the positioning point sequence are taken as location points on the historical cell path, and the geographical coordinates corresponding to the cell identifiers in the historical cell path can be further determined.

[0081] Step 104: Based on the geographical coordinates corresponding to each cell identifier in the historical cell path, determine the geographical coordinate information of the historical travel path corresponding to the historical cell path. The geographical coordinate information includes the geographical coordinates of multiple location points that the terminal passes through sequentially on the historical travel path.

[0082] The historical travel path is a geographical path. Optionally, the historical travel path can be represented as: (geographic coordinate 1, geographic coordinate 2, geographic coordinate 3, ..., geographic coordinate p) or geographic coordinate 1→geographic coordinate 2→geographic coordinate 3→...→geographic coordinate p, indicating that a historical travel path corresponding to the terminal passes through geographic coordinate 1, geographic coordinate 2, geographic coordinate 3, ..., geographic coordinate p in sequence. Here, p is a positive integer greater than 1.

[0083] Optionally, one implementation of step 104 above includes steps 1041 to 1042.

[0084] In step 1041, each cell identifier in the historical cell path is replaced with its corresponding geographic coordinates to obtain a geographic coordinate sequence.

[0085] Optionally, a single cell identifier in a historical cell path typically corresponds to multiple geographic coordinates, which improves the accuracy of determining historical travel routes. For example, a historical cell path may include a first cell identifier, which corresponds to multiple geographic coordinates, where the first cell identifier can refer to any cell identifier in the historical cell path. Then, based on the distances from the multiple geographic coordinates corresponding to the first cell identifier to the travel origin and / or the distances from the multiple geographic coordinates corresponding to the first cell identifier to the travel destination, the target order of these multiple geographic coordinates on the historical travel route corresponding to the historical cell path can be determined. Accordingly, the implementation of step 1041 above includes replacing the first cell identifier in the historical cell path with multiple geographic coordinates corresponding to the first cell identifier arranged according to the target order.

[0086] For example, referring to the example in step 103 above, for historical cell path 1, cell identifier 70106 can be replaced with geographical coordinates (116.253, 39.961) and (116.251, 39.962), cell identifier 34981 can be replaced with geographical coordinates (116.262, 40.961), and cell identifier 89231 can be replaced with geographical coordinates (116.412, 39.121). Assuming that the geographical coordinates (116.253, 39.961) are closer to the starting point of the trip than the geographical coordinates (116.251, 39.962), we can obtain the geographical coordinate sequence: {(116.253, 39.961), (116.251, 39.962), (116.262, 40.961), ..., (116.412, 39.121), ...}.

[0087] The origin of the trip is the starting point of the historical travel route corresponding to the historical community route, and the destination is the ending point of the historical travel route corresponding to the historical community route. At least one of the origin or destination is known. The origin and destination can be set by the user, or they can be inferred from the location information collected by the terminal. This application embodiment does not limit the method of obtaining the origin and destination of the historical community route. For example, if the historical travel route is a commuting route, the origin is home, and the destination is the company, then the location point where the terminal is located most frequently during the working hours can be used as the destination (company), and the location point where the terminal is located most frequently during the off-hours can be used as the origin (home).

[0088] In this embodiment of the application, for a cell identifier that corresponds to multiple geographic coordinates, it is necessary to first determine the order of the multiple geographic coordinates corresponding to a single cell identifier on the historical travel path, and then sort the geographic coordinates corresponding to each cell identifier according to the order of the historical cell path, so as to improve the accuracy of the restored historical travel path.

[0089] Furthermore, after obtaining the geographic coordinate sequence, for any two adjacent geographic coordinates in the sequence, if the distance between them exceeds a distance threshold, one or more new geographic coordinates can be added between them to obtain an updated geographic coordinate sequence. Optionally, the number of geographic coordinates corresponding to cell identifiers in the historical cell paths can be increased by collecting more location point information to shorten the distance between two adjacent geographic coordinates in the geographic coordinate sequence; alternatively, a map containing the geographic coordinate sequence can be displayed on the terminal, allowing the user to manually add location points between two adjacent geographic coordinates and generate corresponding geographic coordinates based on the location points on the map. This application embodiment does not limit the method of adding geographic coordinates to the geographic coordinate sequence.

[0090] In this embodiment, multiple geographical coordinates with relatively dense distribution are used to reconstruct historical travel routes, which can improve route accuracy.

[0091] In step 1042, the geographic coordinate information of the historical travel route corresponding to the historical community route is determined based on the geographic coordinate sequence.

[0092] Optionally, if new geographic coordinates are added to the geographic coordinate sequence obtained in step 1041 to obtain an updated geographic coordinate sequence, step 1042 is implemented by determining the geographic coordinate information of the historical travel path corresponding to the historical community path based on the updated geographic coordinate sequence.

[0093] For example, Figure 2 This is a schematic diagram illustrating how historical travel routes are obtained based on historical cell path reconstruction, as provided in an embodiment of this application. For example... Figure 2 As shown, the first step is to determine the historical community path; the second step is to determine the correspondence between each network cell in the historical community path and the geographic coordinates, so as to obtain the geographic coordinate sequence corresponding to the historical community path; the third step is to reconstruct the historical travel path (geographic path) based on the geographic coordinate sequence, that is, to determine the geographic coordinates traversed by the historical travel path.

[0094] In this embodiment, based on the historical cell path corresponding to the terminal, multiple network cells sequentially accessed by the terminal along the historical travel path can be determined. Based on the coverage area of ​​these multiple network cells, the geographical area of ​​the historical travel path can be coarsely determined, that is, the approximate geographical location of the historical travel path can be determined. Furthermore, based on the location point information generated by the terminal during movement, the geographical coordinates traversed by the terminal when accessing different network cells can be determined. According to the geographical coordinates traversed by the terminal when accessing each network cell along the historical travel path, the specific road segment traversed by the terminal when accessing each network cell can be determined. Combining the order in which the terminal accesses multiple network cells along the historical travel path, the specific road segments corresponding to these multiple network cells can be connected, thereby enabling fine-grained determination of the geographical coordinates traversed by the terminal along the historical travel path, that is, determining the precise geographical location of the historical travel path. Since the embodiments of this application determine the historical travel routes taken by the terminal by collecting and utilizing the location point information generated by the application on the terminal during operation, the terminal does not need to frequently trigger the GPS positioning function to locate the terminal during a single movement. That is, the terminal does not need to consume additional power to trigger the GPS positioning function just to determine the historical travel routes. This can reduce the terminal power consumption and improve the terminal's battery life.

[0095] The method 100 provided in this application embodiment can be applied to a terminal. Alternatively, the method 100 can also be applied to other computer devices, such as servers or the cloud. In this implementation, the terminal can collect historical cell sequences and location point information and report it to other computer devices, which can then determine the historical travel routes taken by the terminal based on the information reported by the terminal. Furthermore, the other computer devices can also send the correspondence between the determined historical cell routes and historical travel routes to the terminal for its use.

[0096] Optionally, after obtaining the correspondence between historical cell paths and historical travel paths, the terminal can obtain the real-time cell sequence corresponding to the terminal. This real-time cell sequence includes the cell identifiers of multiple network cells that the terminal sequentially accesses during the current trip. If there is a target historical cell path in the historical cell path corresponding to the terminal that matches the real-time cell sequence, the target historical travel path corresponding to the target historical cell path is taken as the current travel path of the terminal.

[0097] Optionally, matching the target historical cell path with the real-time cell sequence includes: the longest common subsequence between the target historical cell path and the real-time cell sequence satisfies a matching condition. The matching condition includes: the length of the longest common subsequence reaches a length threshold, and / or, the ratio of the length of the longest common subsequence to the length of the real-time cell sequence reaches a proportion threshold.

[0098] For example, if the real-time cell sequence is (70106,34981,51732,46728), and referring to the example in step 104 above, this real-time cell sequence matches the historical cell path 1 (70106,34981,51732,46728,…,89231,14823). Therefore, it can be determined that the current path of the terminal is the historical travel path corresponding to historical cell path 1, for example, {(116.253,39.961), (116.251,39.962), (116.262,40.961),…, (116.412,39.121),…}.

[0099] In this embodiment, the current travel path of the terminal can be determined by matching the network cells that the terminal accesses sequentially during the current trip with the network cells that the terminal accesses sequentially along the historical travel path. The implementation method is simple and has low complexity.

[0100] Furthermore, after determining that its current travel path is the target historical travel path, the terminal can also determine the network cells to be handed over at its current location and / or subsequent locations it passes through during its movement, based on the communication experience map corresponding to the target historical travel path, according to the current time period and / or the services the terminal is currently performing. The communication experience map includes candidate cells corresponding to multiple locations on the target historical travel path, as well as the service quality of these candidate cells over multiple time periods. Service quality includes network quality and / or the service quality corresponding to multiple service categories.

[0101] Optionally, the terminal downloads a communication experience map corresponding to the target historical travel path from the cloud. For example, the terminal can send various geographical coordinates (location points) along the target historical travel path to the cloud to obtain the candidate cells corresponding to each geographical coordinate and the service quality of the candidate cells at multiple time periods. The cloud can store multiple mappings between location points and network cells, where the network cells in the mapping are those that the terminal can access at the corresponding location point. The cloud can collect the terminal's network access information for each time period, summarize it, and generate a communication experience map. This network access information may include which network cell the terminal accessed at which time and location, the type of service the terminal was running, the service quality of the service running the terminal, or the network bandwidth provided to the terminal. For example, Table 2 shows the content included in the communication experience map.

[0102] Table 2

[0103]

[0104] Optionally, the load of a network cell can vary. Furthermore, depending on network planning and requirements, network cells can be configured to carry different layers of signals, including coverage, capacity, and hotspot layers. The coverage layer typically uses low-frequency bands to achieve coverage over a wide area, including deep coverage in densely populated urban areas. The goal of the coverage layer is continuous indoor and outdoor coverage with no signal blind spots, supporting high-speed mobility. The capacity layer typically uses medium-frequency bands, primarily used to create continuous coverage in densely populated areas such as urban areas and towns, providing the main service carrying capacity. The hotspot layer typically uses high-frequency bands, primarily used to increase network capacity in service hotspot areas and address indoor blind spot issues. The hotspot layer does not require continuous coverage; hotspots only need to be built where there is demand. Since the load of a network cell and its functional layer (coverage, capacity, or hotspot) affect the network quality and service quality provided by that cell, based on a communication experience map, it is possible to select network cells that provide better network quality and / or better service quality for terminal access. This improves the reliability and stability of terminal service operation, thereby enhancing the user experience.

[0105] In this embodiment, the terminal can determine the network cell to be switched at its current location and / or subsequent locations it passes through during its movement, based on the communication experience map corresponding to the target historical travel path and the services it is currently using. Specifically, it selects a network cell that can provide good service quality for the corresponding service from the network cells available for access along the terminal's current travel path. Alternatively, the terminal can determine the network cell to be switched at its current location and / or subsequent locations it passes through during its movement, based on the communication experience map corresponding to the target historical travel path and the current time period. Specifically, it selects a network cell that can provide good network quality for the corresponding time period from the network cells available for access along the terminal's current travel path. Or, the terminal can determine the network cell to be switched at its current location and / or subsequent locations it passes through during its movement, based on the communication experience map corresponding to the target historical travel path and the current time period and the services it is currently using. Specifically, it selects a network cell that can provide good network quality for the corresponding time period and for the corresponding service from the network cells available for access along the terminal's current travel path.

[0106] Optionally, when a terminal experiences a network anomaly, such as a sudden interruption of services running on the terminal due to network problems, the terminal can also report the network anomaly event to the cloud. If the cloud discovers, based on multiple network anomaly events reported by various terminals, that multiple network anomaly events all point to a specific network cell, the cloud can send a cell anomaly indication to terminals along paths covered by that network cell. This prompts the terminals to avoid switching to that network cell, thereby reducing the likelihood of service interruption. Furthermore, after discovering an abnormal network cell, the cloud can also prompt maintenance personnel to develop optimization or recovery measures.

[0107] In this embodiment, a cell handover strategy is formulated based on the current time period and / or the services currently being performed by the terminal, combined with the communication experience map. Specifically, from the network cells available for access along the terminal's current travel path, a network cell that can provide good network quality and / or good service quality for the corresponding service during the corresponding time period is selected for the terminal to access. This can improve the reliability and stability of the terminal's service operation, thereby enhancing the user experience.

[0108] The order of steps in the travel route identification method provided in this application can be adjusted appropriately, and steps can be added or removed as needed. Any variations that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the protection scope of this application. For example, the historical travel routes determined by the method provided in this application can also be applied to multiple fields such as traffic management, environmental monitoring, or urban planning. This application does not limit the application scenarios.

[0109] The following describes an example of a virtual device in an embodiment of this application.

[0110] For example, Figure 3 This is a structural schematic diagram of a travel route identification device 300 provided in an embodiment of this application. Figure 3 As shown, the device 300 includes, but is not limited to, a first acquisition module 301, a second acquisition module 302, a first determination module 303, and a second determination module 304. Optionally, please refer to... Figure 3 The device 300 also includes one or more of a third determining module 305, a fourth determining module 306, or a transceiver module 307.

[0111] The first acquisition module 301 is used to acquire the historical cell path corresponding to the terminal. The historical cell path includes the cell identifiers of multiple network cells that the terminal accesses sequentially when it travels through a historical travel path.

[0112] The second acquisition module 302 is also used to acquire location point information generated by the terminal during movement. The location point information includes multiple location points, which are the locations where the terminal is when the application on the terminal performs positioning on the terminal during operation. The location points are represented by geographic coordinates and the cell identifier of the network cell accessed by the terminal at the location point.

[0113] The first determining module 303 is used to determine the geographical coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographical coordinates of the positioning point and the cell identifier in the positioning point information.

[0114] The second determining module 304 is further configured to determine the geographic coordinate information of the historical travel path corresponding to the historical cell path based on the geographic coordinates corresponding to each cell identifier in the historical cell path. The geographic coordinate information includes the geographic coordinates of multiple location points that the terminal passes through sequentially on the historical travel path.

[0115] Optionally, the location point information includes multiple location point sequences, each sequence comprising multiple location points obtained sequentially during a single run of the application. The first determining module 303 is used to determine the geographic coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographic coordinates and cell identifiers of the location points in the sequence that matches the historical cell path. The matching of the location point sequence with the historical cell path includes: the matching of the cell identifier sequence corresponding to the location point sequence with the historical cell path.

[0116] Optionally, the first determining module 303 is used to, for the positioning point in the positioning point sequence that matches the historical cell path in the multiple positioning point sequences, use the geographical coordinates of the positioning point as the geographical coordinates of the cell identifier in the historical cell path that is the same as the cell identifier corresponding to the positioning point.

[0117] Optionally, the second determining module 304 is used to: replace each cell identifier in the historical cell path with its corresponding geographic coordinates to obtain a geographic coordinate sequence; and determine the geographic coordinate information of the historical travel path corresponding to the historical cell path based on the geographic coordinate sequence.

[0118] Optionally, the historical community path includes a first community identifier, which corresponds to multiple geographic coordinates. The second determining module 304 is used to: determine the target order of the multiple geographic coordinates on the historical travel path corresponding to the historical community path based on the distances from the multiple geographic coordinates to the travel origin and / or the distances from the multiple geographic coordinates to the travel destination, where the travel origin is the starting point of the historical travel path corresponding to the historical community path, and the travel destination is the ending point of the historical travel path corresponding to the historical community path; the second determining module is used to replace the first community identifier in the historical community path with multiple geographic coordinates arranged according to the target order.

[0119] Optionally, the second determining module 304 is used to: for two adjacent geographic coordinates in the geographic coordinate sequence, if the distance between two adjacent geographic coordinates is greater than a distance threshold, add one or more new geographic coordinates between the two adjacent geographic coordinates to obtain an updated geographic coordinate sequence; and determine the geographic coordinate information of the historical travel path corresponding to the historical community path based on the updated geographic coordinate sequence.

[0120] Optionally, the first acquisition module 301 is used to: acquire historical cell access information corresponding to the terminal, the historical cell access information including multiple historical cell sequences, each historical cell sequence including cell identifiers of multiple network cells accessed sequentially by the terminal during a trip; determine one or more historical cell paths based on the similarity between multiple historical cell sequences, each historical cell path corresponding to a historical travel path traversed by the terminal.

[0121] Optionally, the first acquisition module 301 is used to: divide multiple historical cell sequences into one or more cluster sets based on the similarity between them, wherein the similarity between historical cell sequences within the same cluster set is higher than a similarity threshold; and for each cluster set, determine a historical cell path based on all historical cell sequences in the cluster set.

[0122] Optionally, the first acquisition module 301 is further configured to acquire the real-time cell sequence corresponding to the terminal, the real-time cell sequence including the cell identifiers of multiple network cells that the terminal sequentially accesses during the current trip. The third determination module 305 is configured to, if there is a target historical cell path in the historical cell path corresponding to the terminal that matches the real-time cell sequence, use the target historical travel path corresponding to the target historical cell path as the current travel path of the terminal.

[0123] Optionally, matching the target historical cell path with the real-time cell sequence includes: the longest common subsequence between the target historical cell path and the real-time cell sequence satisfies a matching condition. The matching condition includes: the length of the longest common subsequence reaches a length threshold, and / or, the ratio of the length of the longest common subsequence to the length of the real-time cell sequence reaches a proportion threshold.

[0124] Optionally, the fourth determining module 306 is used to determine, after determining that the current travel path of the terminal is the target historical travel path, the network cells to be switched at the current location and / or subsequent location points passed by the terminal during the movement, based on the communication experience map corresponding to the target historical travel path, according to the current time period and / or the services currently being performed by the terminal. The communication experience map includes candidate cells corresponding to multiple location points on the target historical travel path and the service quality of the candidate cells in multiple time periods. The service quality includes network quality and / or service quality corresponding to multiple service categories.

[0125] Optionally, the transceiver module 307 is used to download the communication experience map corresponding to the target's historical travel path from the cloud.

[0126] Appendix Figure 3 The described device embodiments are merely illustrative. For example, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. The functional modules in the various embodiments of this application may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module. Appendix Figure 3 The above modules can be implemented in either hardware or software functional units.

[0127] The hardware device of the present application embodiment is illustrated below.

[0128] For example, Figure 4 This is a schematic diagram of the hardware structure of a terminal 400 provided in an embodiment of this application. For example... Figure 4 As shown, terminal 400 includes processor 401 and memory 402, and processor 401 and memory 402 are connected via bus 403. Figure 4 The processor 401 and memory 402 are described independently. Alternatively, the processor 401 and memory 402 may be integrated together.

[0129] The memory 402 is used to store computer programs, including the operating system and program code. The memory 402 can be various types of storage media, such as read-only memory (ROM), random access memory (RAM), electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM), flash memory, optical storage, registers, optical disc storage, disk storage, or other magnetic storage devices.

[0130] The processor 401 is a general-purpose processor or a special-purpose processor. The processor 401 may be a single-core processor or a multi-core processor. The processor 401 includes at least one circuit to execute the travel route identification method provided in the embodiments of this application.

[0131] Optionally, the terminal 400 also includes a network interface 404, which is connected to the processor 401 and the memory 402 via a bus 403. The network interface 404 enables the terminal 400 to communicate with other devices.

[0132] Optionally, the terminal 400 also includes an input / output (I / O) interface 405, which is connected to the processor 401 and the memory 402 via a bus 403. The processor 401 can receive input commands or data through the I / O interface 405. The I / O interface 405 is used for the terminal 400 to connect input devices, such as a keyboard and mouse. Optionally, in some possible scenarios, the network interface 404 and the I / O interface 405 are collectively referred to as the communication interface.

[0133] Optionally, the terminal 400 further includes a display 406, which is connected to the processor 401 and the memory 402 via a bus 403. The display 406 can be used to display intermediate and / or final results generated by the processor 401 executing the travel route identification method provided in this embodiment, such as historical travel routes on a map. In one possible implementation, the display 406 is a touch screen to provide a human-computer interaction interface.

[0134] Wherein, bus 403 can be any type of communication bus used to interconnect the internal devices of terminal 400. For example, a system bus. This embodiment of the application illustrates the interconnection of the aforementioned devices inside terminal 400 via bus 403 as an example. Optionally, the aforementioned devices inside terminal 400 may communicate with each other using connection methods other than bus 403, such as interconnecting the aforementioned devices inside terminal 400 via internal logic interfaces of terminal 400.

[0135] The aforementioned devices can be disposed on separate chips, or at least partially or entirely on the same chip. Whether to dispose of the devices independently on different chips or integrate them on one or more chips often depends on the needs of the product design. This application does not limit the specific implementation of the aforementioned devices.

[0136] Figure 4 The terminal 400 shown is merely an example. In the implementation process, the terminal 400 includes other components, such as positioning sensors, which will not be listed one by one in this article. Figure 4 The terminal 400 shown can identify a user's historical travel path by executing all or part of the steps of the travel path identification method provided in the embodiments of this application.

[0137] This application also provides a computer-readable storage medium storing instructions that, when executed by a processor, implement the above-described method 100.

[0138] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method 100.

[0139] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on describing the differences from other embodiments.

[0140] The terms "first" and "second," etc., used in the specification and claims of this application are used to distinguish different objects, not to describe a specific order of objects, and should not be construed as indicating or implying relative importance.

[0141] In the description of the embodiments in this application, unless otherwise stated, "at least one" means one or more. "More than one" means two or more.

[0142] A references B, which means that A is the same as B or A is a simple variation of B.

[0143] In this application, the term "and / or" is merely a description of the relationship between related objects, indicating that there are three possible relationships. For example, A and / or B means: A exists alone, A and B exist simultaneously, or B exists alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.

[0144] Optionally, in the above embodiments, all or part of the implementation is carried out by software, hardware, firmware, or any combination thereof. Optionally, when implemented using software, it is implemented in the form of a computer program product, which is implemented in whole or in part. A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. Optionally, the computer is a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. Optionally, the computer instructions are stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. Optionally, the computer-readable storage medium is any available medium that can be accessed by a computer or a data storage device such as a server or data center that integrates one or more available media. Alternatively, the available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., digital video disks (DVDs)), or semiconductor media (e.g., solid-state disks (SSDs)).

[0145] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or make equivalent substitutions for some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.

Claims

1. A method for identifying travel routes, characterized in that, The method includes: Obtain the historical cell path corresponding to the terminal, wherein the historical cell path includes the cell identifiers of multiple network cells that the terminal sequentially accesses when it travels along a historical travel path; The location information generated by the terminal during its movement is obtained. The location information includes multiple location points, which are the locations where the terminal is located when the application on the terminal performs location tracking on the terminal during its operation. The location points are represented by geographic coordinates and the cell identifier of the network cell that the terminal accesses at the location point. Based on the correspondence between the geographic coordinates of the location points and the cell identifiers in the location point information, determine the geographic coordinates corresponding to each cell identifier in the historical cell path; Based on the geographical coordinates corresponding to each cell identifier in the historical cell path, the geographical coordinate information of the historical travel path corresponding to the historical cell path is determined. The geographical coordinate information includes the geographical coordinates of multiple location points that the terminal passes through sequentially on the historical travel path.

2. The method according to claim 1, characterized in that, The location point information includes multiple location point sequences, each of which includes multiple location points obtained sequentially by the terminal during one run of the application. The step of determining the geographical coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographical coordinates of the positioning points and the cell identifiers in the positioning point information includes: Based on the correspondence between the geographic coordinates and cell identifiers of the location points in the multiple location point sequences that match the historical cell path, the geographic coordinates corresponding to each cell identifier in the historical cell path are determined. The matching of the location point sequence with the historical cell path includes: the cell identifier sequence corresponding to the location point sequence matching the historical cell path.

3. The method according to claim 2, characterized in that, The step of determining the geographical coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographical coordinates and cell identifiers of the geographical coordinate ... For the location points in the multiple location point sequences that match the historical cell path, the geographical coordinates of the location points are used as the geographical coordinates of the cell identifiers in the historical cell path that are the same as the cell identifiers corresponding to the location points.

4. The method according to any one of claims 1 to 3, characterized in that, The step of determining the geographic coordinate information of the historical travel route corresponding to the historical community path based on the geographic coordinates corresponding to each community identifier in the historical community path includes: Replace each cell identifier in the historical cell path with its corresponding geographic coordinates to obtain a geographic coordinate sequence; The geographic coordinate information of the historical travel routes corresponding to the historical community routes is determined based on the geographic coordinate sequence.

5. The method according to claim 4, characterized in that, The historical cell path includes a first cell identifier, which corresponds to multiple geographic coordinates. The method further includes: Based on the distances from the multiple geographical coordinates to the starting point and / or the distances from the multiple geographical coordinates to the destination, the target order of the multiple geographical coordinates on the historical travel path corresponding to the historical community path is determined, wherein the starting point is the starting point of the historical travel path corresponding to the historical community path, and the destination is the ending point of the historical travel path corresponding to the historical community path. The step of replacing each cell identifier in the historical cell path with its corresponding geographical coordinates includes: Replace the first cell identifier in the historical cell path with the plurality of geographical coordinates sorted according to the target.

6. The method according to claim 4 or 5, characterized in that, The method further includes: For any two adjacent geographic coordinates in the geographic coordinate sequence, if the distance between the two adjacent geographic coordinates is greater than a distance threshold, one or more new geographic coordinates are added between the two adjacent geographic coordinates to obtain an updated geographic coordinate sequence. The step of determining the geographic coordinate information of the historical travel route corresponding to the historical community route based on the geographic coordinate sequence includes: The geographic coordinate information of the historical travel route corresponding to the historical community route is determined based on the updated geographic coordinate sequence.

7. The method according to any one of claims 1 to 6, characterized in that, The process of obtaining the historical cell path corresponding to the terminal includes: Obtain the historical cell access information corresponding to the terminal. The historical cell access information includes multiple historical cell sequences, and each historical cell sequence includes the cell identifiers of multiple network cells that the terminal sequentially accesses during a trip. Based on the similarity between the multiple historical cell sequences, one or more historical cell paths are determined, and each historical cell path corresponds to a historical travel path traversed by the terminal.

8. The method according to claim 7, characterized in that, Determining one or more historical cell paths based on the similarity between the multiple historical cell sequences includes: Based on the similarity between the multiple historical cell sequences, the multiple historical cell sequences are divided into one or more cluster sets, wherein the similarity between historical cell sequences within the same cluster set is higher than a similarity threshold; For each cluster set, a historical cell path is determined based on all historical cell sequences in the cluster set.

9. The method according to any one of claims 1 to 8, characterized in that, The method further includes: Obtain the real-time cell sequence corresponding to the terminal, the real-time cell sequence including the cell identifiers of multiple network cells that the terminal sequentially accesses during the current trip; If there is a target historical cell path in the historical cell path corresponding to the terminal that matches the real-time cell sequence, the target historical travel path corresponding to the target historical cell path shall be used as the current travel path of the terminal.

10. The method according to claim 9, characterized in that, The matching of the target historical cell path with the real-time cell sequence includes: the longest common subsequence between the target historical cell path and the real-time cell sequence satisfies the matching condition; The matching conditions include: the length of the longest common subsequence reaches a length threshold, and / or the ratio of the length of the longest common subsequence to the length of the real-time cell sequence reaches a ratio threshold.

11. The method according to claim 9 or 10, characterized in that, After determining that the current travel path of the terminal is the target historical travel path, the method further includes: Based on the current time period and / or the services currently being performed by the terminal, and based on the communication experience map corresponding to the target historical travel path, determine the network cells to be switched at the current location and / or subsequent location points passed by the terminal during its movement. The communication experience map includes candidate cells corresponding to multiple location points on the target historical travel path and the service quality of the candidate cells in multiple time periods. The service quality includes network quality and / or service quality corresponding to multiple service categories.

12. The method according to claim 11, characterized in that, The method further includes: Download the communication experience map corresponding to the target's historical travel path from the cloud.

13. A travel route identification device, characterized in that, The device includes: The first acquisition module is used to acquire the historical cell path corresponding to the terminal. The historical cell path includes the cell identifiers of multiple network cells that the terminal sequentially accesses when it travels through a historical travel path. The second acquisition module is also used to acquire location point information generated by the terminal during movement. The location point information includes multiple location points, which are the location points where the terminal is located when the application on the terminal locates the terminal during operation. The location points are represented by geographic coordinates and the cell identifier of the network cell accessed by the terminal at the location point. The first determining module is used to determine the geographical coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographical coordinates of the positioning points and the cell identifiers in the positioning point information. The second determining module is further configured to determine the geographic coordinate information of the historical travel path corresponding to the historical community path based on the geographic coordinates corresponding to each community identifier in the historical community path. The geographic coordinate information includes the geographic coordinates of multiple location points that the terminal passes through sequentially on the historical travel path.

14. The apparatus according to claim 13, characterized in that, The location point information includes multiple location point sequences, each of which includes multiple location points obtained sequentially by the terminal during one run of the application. The first determining module is used to determine the geographical coordinates corresponding to each cell identifier in the historical cell path based on the correspondence between the geographical coordinates and cell identifiers of the positioning points in the positioning point sequence that matches the historical cell path in the multiple positioning point sequences. The matching of the positioning point sequence with the historical cell path includes: the cell identifier sequence corresponding to the positioning point sequence matching the historical cell path.

15. The apparatus according to claim 14, characterized in that, The first determining module is used to, for the positioning point in the multiple positioning point sequences that match the historical cell path, use the geographical coordinates of the positioning point as the geographical coordinates of the cell identifier in the historical cell path that is the same as the cell identifier corresponding to the positioning point.

16. The apparatus according to any one of claims 13 to 15, characterized in that, The second determining module is used for: Replace each cell identifier in the historical cell path with its corresponding geographic coordinates to obtain a geographic coordinate sequence; The geographic coordinate information of the historical travel routes corresponding to the historical community routes is determined based on the geographic coordinate sequence.

17. The apparatus according to claim 16, characterized in that, The historical cell path includes a first cell identifier, which corresponds to multiple geographic coordinates. The second determining module is used for: Based on the distances from the multiple geographical coordinates to the starting point and / or the distances from the multiple geographical coordinates to the destination, the target order of the multiple geographical coordinates on the historical travel path corresponding to the historical community path is determined, wherein the starting point is the starting point of the historical travel path corresponding to the historical community path, and the destination is the ending point of the historical travel path corresponding to the historical community path. The second determining module is used to replace the first cell identifier in the historical cell path with the plurality of geographical coordinates arranged according to the target.

18. The apparatus according to claim 16 or 17, characterized in that, The second determining module is used for: For any two adjacent geographic coordinates in the geographic coordinate sequence, if the distance between the two adjacent geographic coordinates is greater than a distance threshold, one or more new geographic coordinates are added between the two adjacent geographic coordinates to obtain an updated geographic coordinate sequence. The geographic coordinate information of the historical travel route corresponding to the historical community route is determined based on the updated geographic coordinate sequence.

19. The apparatus according to any one of claims 13 to 18, characterized in that, The first acquisition module is used for: Obtain the historical cell access information corresponding to the terminal. The historical cell access information includes multiple historical cell sequences, and each historical cell sequence includes the cell identifiers of multiple network cells that the terminal sequentially accesses during a trip. Based on the similarity between the multiple historical cell sequences, one or more historical cell paths are determined, and each historical cell path corresponds to a historical travel path traversed by the terminal.

20. The apparatus according to claim 19, characterized in that, The first acquisition module is used for: Based on the similarity between the multiple historical cell sequences, the multiple historical cell sequences are divided into one or more cluster sets, wherein the similarity between historical cell sequences within the same cluster set is higher than a similarity threshold; For each cluster set, a historical cell path is determined based on all historical cell sequences in the cluster set.

21. The apparatus according to any one of claims 13 to 20, characterized in that, The device further includes: a third determining module; The first acquisition module is further configured to acquire the real-time cell sequence corresponding to the terminal, the real-time cell sequence including the cell identifiers of multiple network cells that the terminal sequentially accesses during the current trip; The third determining module is used to take the target historical travel path corresponding to the target historical cell path as the current travel path of the terminal if there is a target historical cell path in the historical cell path corresponding to the terminal that matches the real-time cell sequence.

22. The apparatus according to claim 21, characterized in that, The matching of the target historical cell path with the real-time cell sequence includes: the longest common subsequence between the target historical cell path and the real-time cell sequence satisfies the matching condition; The matching conditions include: the length of the longest common subsequence reaches a length threshold, and / or the ratio of the length of the longest common subsequence to the length of the real-time cell sequence reaches a ratio threshold.

23. The apparatus according to claim 21 or 22, characterized in that, The device further includes: a fourth determining module; The fourth determining module is used to determine, after determining that the current travel path of the terminal is the target historical travel path, the network cells to be switched at the current location and / or subsequent location points passed by the terminal during the movement, based on the communication experience map corresponding to the target historical travel path, according to the current time period and / or the services currently being performed by the terminal. The communication experience map includes candidate cells corresponding to multiple location points on the target historical travel path and the service quality of the candidate cells in multiple time periods. The service quality includes network quality and / or service quality corresponding to multiple service categories.

24. The apparatus according to claim 23, characterized in that, The device further includes: a transceiver module; The transceiver module is used to download the communication experience map corresponding to the target's historical travel path from the cloud.

25. A terminal, characterized in that, include: Processor and memory; The memory is used to store computer programs, the computer programs including program instructions; The processor is configured to invoke the computer program to implement the method as described in any one of claims 1 to 12.

26. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores instructions that, when executed by a processor, implement the method as described in any one of claims 1 to 12.

27. A computer program product, characterized in that, Includes a computer program, which, when executed by a processor, implements the method as described in any one of claims 1 to 12.