Movatterモバイル変換


[0]ホーム

URL:


CN110702129B - System and method for path planning - Google Patents

System and method for path planning
Download PDF

Info

Publication number
CN110702129B
CN110702129BCN201910469821.2ACN201910469821ACN110702129BCN 110702129 BCN110702129 BCN 110702129BCN 201910469821 ACN201910469821 ACN 201910469821ACN 110702129 BCN110702129 BCN 110702129B
Authority
CN
China
Prior art keywords
time
historical
road segment
determining
vehicles
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910469821.2A
Other languages
Chinese (zh)
Other versions
CN110702129A (en
Inventor
李海波
仇辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Didi Infinity Technology and Development Co Ltd
Original Assignee
Beijing Didi Infinity Technology and Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Didi Infinity Technology and Development Co LtdfiledCriticalBeijing Didi Infinity Technology and Development Co Ltd
Priority to CN201910469821.2ApriorityCriticalpatent/CN110702129B/en
Priority to PCT/CN2019/090340prioritypatent/WO2020237710A1/en
Publication of CN110702129ApublicationCriticalpatent/CN110702129A/en
Application grantedgrantedCritical
Publication of CN110702129BpublicationCriticalpatent/CN110702129B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Images

Classifications

Landscapes

Abstract

The present application relates to systems and methods for path planning. The system may perform the following method: acquiring a path planning request including a departure time from a user terminal; determining at least two candidate paths for the path planning request, wherein each candidate path comprises at least two road sections; for each of at least two road segments of each candidate route, determining a predicted transit time for the road segment for a target time associated with a departure time; acquiring vehicle-road section information related to the number of vehicles on a road section; determining the weight of the road section according to the predicted passing time and the vehicle-road section information; determining an optimal path for the path planning request from the at least two candidate paths based on the weight of each of the at least two segments of each candidate path.

Description

System and method for path planning
Technical Field
The present application relates generally to systems and methods for path planning and, more particularly, to systems and methods for providing optimal paths to alleviate congestion.
Background
With the popularity of Location Based Services (LBS), the passage habits of people are increasingly influenced by moving maps, particularly in the most important and most common functions of providing route planning and recommendation services. People increasingly rely on the path planning function of moving maps to travel. In some cases, the path planning function of the moving map affects the traffic jam of the city to some extent. For example, on weekends, many residents (e.g., users of a moving map) in the same large residential community plan to drive or ride to the same shopping center for entertainment, meals, and the like. If all or most of the users are suggested to use the same shortest time path (also referred to as shortest path), there may be a large number of users on the shortest path, which may result in traffic congestion, at least because of prior planning, users may spend more time reaching the shopping mall. Accordingly, it is desirable to provide an efficient system and method for path planning to simultaneously prevent congestion caused by the planning itself, reduce user transit time, and improve user experience.
Disclosure of Invention
One aspect of the present application introduces a system for path planning. The system may include at least one storage medium including a set of instructions for path planning, and at least one processor in communication with the storage medium. When executing the set of instructions, the at least one processor may perform the following: the at least one processor may obtain a path planning request including a departure time from a user terminal. The at least one processor may determine at least two candidate paths for the path planning request. Each candidate path may include at least two segments. For each of the at least two segments of each candidate route, the at least one processor may determine a predicted transit time for the segment at a target time associated with the departure time, obtain vehicle-segment information associated with a number of vehicles on the segment, and determine a weight for the segment based on the predicted transit time and the vehicle-segment information. The at least one processor may determine an optimal path for the path planning request from the at least two candidate paths based on a weight of each of the at least two segments of each candidate path.
In some embodiments, to obtain vehicle-segment information related to a number of vehicles on the segment, the at least one processor may further determine a historical number of vehicles to pass on the segment for a historical target time corresponding to the departure time; determining a current number of vehicles traveling on the road segment within a current time; determining a number of planned vehicles planned to the road segment within a preset historical time period; and determining vehicle-to-road segment information related to the number of vehicles on the road segment based on the number of historical vehicles, the number of current vehicles, and the number of planned vehicles.
In some embodiments, to determine the expected transit time, the at least one processor may further obtain a historical transit time for the road segment corresponding to the target time within a historical target time; acquiring a current transit time based on the current time; determining a time interval between a target time and a current time; and determining the expected transit time based on the historical transit time, the current transit time, and the time interval.
In some embodiments, to obtain historical transit times, the at least one processor may also determine that the departure time is on a weekday or on a weekend; and in response to determining that the departure time is on a weekday, determining an average historical transit time for the road segment within a historical target time corresponding to the target time on a first preset number of historical weekdays as the historical transit time.
In some embodiments, to obtain historical transit times, the at least one processor may also determine that the departure time is on a weekday or on a weekend; and in response to determining that the departure time is a weekend, determining an average historical transit time for the road segment within a historical target time corresponding to target times for a second preset number of historical weekends as the historical transit time.
In some embodiments, to determine the optimal path from the at least two candidate paths, for each of the at least two candidate paths, the at least one processor may further determine a sum of at least two weights for at least two segments of the candidate path; and determining an optimal path based on the sum of the weights corresponding to the at least two candidate paths.
In some embodiments, the at least one processor may further instruct the user terminal to display the optimal path on a user interface of the user terminal in response to the path planning request.
According to another aspect of the present application, a method for path planning may include obtaining a path planning request including a departure time from a user terminal; determining at least two candidate paths of the path planning request, wherein each candidate path comprises at least two road sections; for each of at least two road segments of each candidate route, determining a predicted transit time for the road segment at a target time related to the departure time, obtaining vehicle-segment information related to the number of vehicles on the road segment, and determining a weight for the road segment based on the predicted transit time and the vehicle-segment information; determining an optimal path for the path planning request from the at least two candidate paths based on the weight of each of the at least two segments of each candidate path.
According to yet another aspect of the application, a non-transitory computer-readable medium includes at least one set of instructions compatible with path planning. When executed by at least one processor of an electronic device, the at least one set of instructions instructs the at least one processor to perform a method. The method may include obtaining a path planning request including a departure time from a user terminal; determining at least two candidate paths of the path planning request, wherein each candidate path comprises at least two road sections; for each of at least two road segments of each candidate route, determining a predicted transit time for the road segment at a target time related to the departure time, obtaining vehicle-segment information related to the number of vehicles on the road segment, and determining a weight for the road segment based on the predicted transit time and the vehicle-segment information; determining an optimal path for the path planning request from the at least two candidate paths based on the weight of each of the at least two segments of each candidate path.
According to yet another aspect of the present application, a system for path planning may include a request acquisition module, a candidate path determination module, a weight determination module, and an optimal path determination module. The request obtaining module may be configured to obtain a path planning request including a departure time from the user terminal. The candidate path determination module may be configured to determine at least two candidate paths of the path planning request. Each candidate path may include at least two segments. For each of the at least two segments of each candidate route, the weight determination module may be configured to determine a predicted transit time for the segment at a target time relative to the departure time; obtaining vehicle-road segment information related to the number of vehicles on the road segment; and determining a weight of the road section according to the predicted transit time and the vehicle-road section information. The optimal path determination module may be configured to determine an optimal path for the path planning request from the at least two candidate paths based on a weight of each of the at least two segments of each candidate path.
Additional features of the present application will be set forth in part in the description which follows. Additional features of some aspects of the present application will be apparent to those of ordinary skill in the art in view of the following description and accompanying drawings, or in view of the production or operation of the embodiments. The features of the present application may be realized and attained by practice or use of the methods, instrumentalities and combinations of the various aspects of the specific embodiments described below.
Drawings
The present application will be further described by way of exemplary embodiments. These exemplary embodiments will be described in detail by means of the accompanying drawings. These embodiments are non-limiting exemplary embodiments in which like reference numerals represent similar structures throughout the several views of the drawings, and wherein:
FIG. 1 is a schematic diagram illustrating an exemplary system according to some embodiments of the present application;
FIG. 2 is a schematic diagram of exemplary hardware and/or software components of a computing device according to some embodiments of the present application;
FIG. 3 is a schematic diagram of exemplary hardware and/or software components of a mobile device shown in accordance with some embodiments of the present application;
FIG. 4 is a block diagram of an exemplary processing engine shown in accordance with some embodiments of the present application;
fig. 5 is a flow diagram of an exemplary process for path planning, according to some embodiments of the present application.
Fig. 6 is a flow diagram of an exemplary process for determining vehicle-road segment information according to some embodiments of the present application.
Fig. 7 is a flow diagram of an exemplary process for determining a projected transit time according to some embodiments of the present application.
FIG. 8 is a flow chart of an exemplary process for determining historical transit times according to some embodiments of the present application.
FIG. 9 is a flow diagram of an exemplary process for determining an optimal path according to some embodiments of the present application; and
fig. 10 is a schematic diagram of an exemplary candidate path according to some embodiments of the present application.
Detailed Description
The following description is presented to enable one of ordinary skill in the art to make and use the invention and is provided in the context of a particular application and its requirements. It will be apparent to those of ordinary skill in the art that various changes can be made to the disclosed embodiments and that the general principles defined in this application can be applied to other embodiments and applications without departing from the principles and scope of the application. Thus, the present application is not limited to the described embodiments, but should be accorded the widest scope consistent with the claims.
The terminology used in the description presented herein is for the purpose of describing particular example embodiments only and is not intended to limit the scope of the present application. As used herein, the singular forms "a", "an" and "the" may include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, components, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, components, and/or groups thereof.
These and other features and characteristics of the present invention, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of scale, will become more apparent upon consideration of the following description of the accompanying drawings, all of which form a part of this specification. It is to be understood, however, that the drawings are designed solely for the purposes of illustration and description and are not intended as a definition of the limits of the application. It should be understood that the drawings are not to scale.
Flow charts are used herein to illustrate operations performed by systems according to some embodiments of the present application. It should be understood that the operations in the flow diagrams may be performed out of order. Rather, various steps may be processed in reverse order or simultaneously. Also, one or more other operations may be added to the flowcharts. One or more operations may also be deleted from the flowcharts.
One aspect of the present application relates to systems and methods for path planning. To this end, the system and method may acquire vehicle-road segment information related to the number of vehicles on the road segment. The vehicle-segment information may include a historical number of vehicles traveling on the segment at a particular historical time, a current number of vehicles traveling on the segment at a current time, and a projected number of vehicles projected to travel on the segment within a predetermined time period prior to the current time. The system and method of the present application may also determine a weight for the road segment (related to the time taken for path planning) based on the vehicle-road segment information. The system and method may also determine an optimal path for the path plan based on the weights of at least two segments of the one or more possible routes. In this way, the system and method of the present application can effectively reduce the transit time of the user and simultaneously alleviate congestion.
Fig. 1 is a schematic diagram of an exemplary (AI)system 100 according to some embodiments of the present application. For example, thesystem 100 may be an online-to-offline service platform for providing services such as taxis, driver services, delivery vehicles, carpools, bus services, driver recruitment, shift services, online navigation services, delivery services for goods, and the like.System 100 may includeserver 110,network 120,user terminal 130, andmemory 140. Theserver 110 may include aprocessing engine 112.
Theserver 110 may be configured to process information and/or data related to path planning. For example, theserver 110 may determine at least two candidate paths for a path planning request that includes a departure time. Each candidate path may include at least two segments. For another example, theserver 110 may determine an optimal path for the path planning request from the at least two candidate paths based on the weight of each of the at least two segments of each candidate path. For another example, theserver 110 may instruct the user terminal to display the optimal path on a user interface of the user terminal in response to the path planning request. In some embodiments, theserver 110 may be a single server or a group of servers. The set of servers can be centralized or distributed (e.g., theservers 110 can be a distributed system). In some embodiments, theserver 110 may be local or remote. For example,server 110 may access information and/or data stored inuser terminal 130 ormemory 140 vianetwork 120. As another example,server 110 may be coupled touser terminal 130 and/ormemory 140 to access stored information and/or data. In some embodiments, theserver 110 may be implemented on a cloud platform. By way of example only, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an internal cloud, a multi-tiered cloud, and the like, or any combination thereof. In some embodiments,server 110 may execute oncomputing device 200 described in FIG. 2, which includes one or more components.
In some embodiments, theserver 110 may include aprocessing engine 112.Processing engine 112 may process information and/or data related to path planning to perform one or more of the functions described herein. For example, theprocessing engine 112 may determine the expected transit time for each road segment at a target time associated with the departure time for that road segment. For another example, theprocessing engine 112 may determine the weight for the road segment based on the predicted transit time and vehicle-segment information related to the number of vehicles on the road segment. In some embodiments, theprocessing engine 112 may comprise one or more processing engines (e.g., a single chip processing engine or a multi-chip processing engine). By way of example only, theprocessing engine 112 may include one or more hardware processors, such as a Central Processing Unit (CPU), an Application Specific Integrated Circuit (ASIC), an application specific set of instruction processors (ASIP), an image processing unit (GPU), a physical arithmetic processing unit (PPU), a Digital Signal Processor (DSP), a Field Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), a controller, a microcontroller unit, a Reduced Instruction Set Computer (RISC), a microprocessor, or the like, or any combination thereof.
Network 120 may facilitate the exchange of information and/or data. In some embodiments, one or more components of system 100 (e.g.,server 110,user terminal 130, and memory 140) may send information and/or data to other components insystem 100 vianetwork 120. For example, theserver 110 may obtain a path planning request including a departure time from a user terminal through thenetwork 120. As another example, theserver 110 may instruct the user terminal to display the optimal path on a user interface of the user terminal in response to the path planning request through thenetwork 120. In some embodiments, thenetwork 120 may be any form of wired or wireless network, or any combination thereof. By way of example only,network 120 may include a cable network, a wired network, a fiber optic network, a telecommunications network, an intranet, the internet, a Local Area Network (LAN), a Wide Area Network (WAN), a Wireless Local Area Network (WLAN), a Metropolitan Area Network (MAN), a Public Switched Telephone Network (PSTN), a bluetooth network, a zigbee network, a Near Field Communication (NFC) network, the like, or any combination of the above. In some embodiments,network 120 may include one or more network access points. For example,network 120 may include wired or wireless network access points, such as base stations and/or Internet switching points 120-1, 120-2, … …, through which one or more components ofsystem 100 may connect to network 120 to exchange data and/or information.
Theuser terminal 130 may be any electronic device used by a service requester of the path planning service. In some embodiments, theuser terminal 130 may be a mobile device 130-1, a tablet computer 130-2, a laptop computer 130-3, a desktop computer 130-4, the like, or any combination thereof. In some embodiments, the mobile device 130-1 may include a wearable apparatus, a smart mobile device, a virtual reality device, an augmented reality device, etc., or any combination thereof. In some embodiments, the wearable device may include a smart bracelet, a smart footwear, smart glasses, a smart helmet, a smart watch, a smart garment, a smart backpack, a smart accessory, or the like, or any combination thereof. In some embodiments, the smart mobile device may include a smart phone, a Personal Digital Assistant (PDA), a gaming device, a navigation device, a point of sale (POS), etc., or any combination thereof. In some embodiments, the virtual reality device and/or the enhanced virtual reality device may include a virtual reality helmet, virtual reality glasses, virtual reality eyecups, augmented reality helmets, augmented reality glasses, augmented reality eyecups, and the like, or any combination thereof. For example, the virtual reality device and/or augmented reality device may include a Google GlassTM,RiftConTM,FragmentsTM,GearVRTM, and the like. In some embodiments, desktop computer 130-4 may be an on-board computer, an on-board television, or the like.
In some embodiments,user terminal 130 may be a device having location technology for locating the position of the passenger and/oruser terminal 130. Positioning techniques used in the present application may include Global Positioning System (GPS), global satellite navigation system (GLONASS), COMPASS navigation system (COMPASS), galileo positioning system, quasi-zenith satellite system (QZSS), wireless fidelity (WiFi) positioning techniques, and the like, or any combination thereof. One or more of the above positioning techniques may be used interchangeably in this application.
In some embodiments, theuser terminal 130 may also include at least one network port. The at least one network port may be configured to transmit information to and/or receive information from one or more components (e.g.,server 110, memory 140) insystem 100 overnetwork 120. In some embodiments,user terminal 130 may be implemented oncomputing device 200 having one or more components shown in FIG. 2, or onmobile device 300 in the present application having one or more components shown in FIG. 3.
Memory 140 may store data and/or instructions. For example, thememory 140 may store data acquired from the user terminal 130 (e.g., a path planning request including a departure time). For another example, thememory 140 may store historical data for a road segment (e.g., historical transit times for the road segment at a particular time, historical numbers of vehicles traveling over the road segment at a particular historical time, or planned numbers of vehicles planned to the road segment within a preset historical time period, etc.). As yet another example,memory 140 may store data and/or instructions thatserver 110 may execute or perform the example methods described herein. In some embodiments,memory 140 may include mass storage, removable storage, volatile read-write memory, read-only memory (ROM), etc., or any combination thereof. Exemplary mass storage devices may include magnetic disks, optical disks, solid state disks, and the like. Exemplary removable memory may include flash drives, floppy disks, optical disks, memory cards, compact disks, magnetic tape, and the like. Exemplary volatile read and write memories can include Random Access Memory (RAM). Exemplary RAM may include Dynamic Random Access Memory (DRAM), double data Rate synchronous dynamic random access memory (DDR)
SDRAM), Static Random Access Memory (SRAM), thyristor random access memory (T-RAM), and zero-capacitance random access memory (Z-RAM), among others. Exemplary read-only memories may include mask read-only memory (MROM), programmable read-only memory (PROM), erasable programmable read-only memory (perrom), electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM), digital versatile disc read-only memory, and the like. In some embodiments, thememory 140 may be implemented on a cloud platform. By way of example only, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an internal cloud, a multi-tiered cloud, and the like, or any combination thereof.
In some embodiments,memory 140 may include at least one network port to communicate with other devices insystem 100. For example, thememory 140 may be connected to thenetwork 120 to communicate with one or more components of the system 100 (e.g., theserver 110, the user terminal 130) via at least one network port. One or more components insystem 100 may access data or instructions stored inmemory 140 vianetwork 120. In some embodiments,memory 140 may be directly connected to or in communication with one or more components in system 100 (e.g.,server 110, user terminal 130). In some embodiments,memory 140 may be part ofserver 110.
In some embodiments, one or more components of system 100 (e.g.,server 110,user terminal 130, and memory 140) may communicate with each other in the form of electronic and/or electromagnetic signals over wires and/or wirelessly. In some embodiments,system 100 may also include at least one data exchange port. The at least one switch port may be configured to receive information and/or transmit information (e.g., in the form of electronic and/or electromagnetic signals) related to path planning services between any electronic devices in thesystem 100. In some embodiments, the at least one data exchange port may be one or more of an antenna, a network interface, a network port, etc., or any combination thereof. For example, at least one data exchange port may be a network port connected toserver 110 to send information thereto and/or receive information sent therefrom.
FIG. 2 is a schematic diagram of exemplary hardware and software components of acomputing device 200, on whichcomputing device 200server 110 and/oruser terminal 130 may be implemented according to some embodiments of the present application. For example, theprocessing engine 112 may be implemented on thecomputing device 200 and perform the functions of theprocessing engine 112 disclosed herein.
Computing device 200 may be used to implementsystem 100 of the present application.Computing device 200 may be used to implement any components ofsystem 100 that perform one or more functions disclosed herein. For example, theprocessing engine 112 may be implemented on thecomputing device 200 by its hardware, software programs, firmware, or a combination thereof. Although only one such computer is shown, for convenience, computer functionality related to the online-to-offline services described herein may be implemented in a distributed manner across multiple similar platforms to distribute processing load.
For example,computing device 200 may include a networkconnectivity communication port 250 to enable data communication. TheCOM port 250 may be any network port or data exchange port to facilitate data communications.Computing device 200 may also include a processor (e.g., processor 220) in the form of one or more processors (e.g., logic circuits) for executing program instructions. For example, a processor may include interface circuitry and processing circuitry therein. Interface circuitry may be configured to receive electrical signals frombus 210, where the electrical signals encode structured data and/or instructions for the processing circuitry. The processing circuitry may perform logical computations and then determine the conclusion, result, and/or instruction encoding as electrical signals. The processing circuit may also generate an electronic signal including the conclusion or result and a trigger code. In some embodiments, the trigger code may be in a format recognizable by the operating system (or an application installed therein) of the electronic device (e.g., user terminal 130) insystem 100. For example, the trigger code may be instructions, code, indicia, symbols, etc., or any combination thereof, that may activate certain functions and/or operations of the mobile phone or cause the mobile phone to execute a predetermined program. In some embodiments, the trigger code may be configured for an operating system (or application) of the electronic device to generate a presentation of a conclusion or result (e.g., a predicted result) on an interface of the electronic device. The interface circuitry may then send electrical signals from the processing circuitry overbus 210.
Exemplary computing devices may include aninternal communication bus 210, program storage, and different forms of data storage, including for example adisk 270, and Read Only Memory (ROM)230 or Random Access Memory (RAM)240 for various data files processed and/or transmitted by the computing device. The exemplary computing device may also include program instructions stored inROM 230, RAM240, and/or other forms of non-transitory storage that can be executed byprocessor 220. The methods and/or processes of the present application may be embodied in the form of program instructions. The exemplary computing device may also include an operating system stored inROM 230, RAM240, and/or other types of non-transitory storage media that are executed byprocessor 220. The program instructions may be compatible with an operating system for providing online-to-offline services.Computing device 200 also includes I/O components 260 that support input/output between the computer and other components.Computing device 200 may also receive programming and data via network communications.
For illustration only, only one processor is shown in FIG. 2. Multiple processors are also contemplated; thus, operations and/or method steps performed by one processor described herein may also be performed by multiple processors, either jointly or separately. For example, if in the present application the processors ofcomputing device 200 perform steps a and B, it should be understood that steps a and B may also be performed by two different processors ofcomputing device 200, either collectively or independently (e.g., a first processor performing step a, a second processor performing step B, or a first and second processor performing steps a and B collectively).
Fig. 3 is a schematic diagram of exemplary hardware and/or software components of an exemplarymobile device 300 on whichuser terminal 130 may be implemented according to some embodiments of the present application.
As shown in FIG. 3,mobile device 300 may include acommunication platform 310, adisplay 320, a Graphics Processing Unit (GPU)330, a Central Processing Unit (CPU)340, I/O350,memory 360, andstorage 390. The CPU may include interface circuitry and processing circuitry similar toprocessor 220. In some embodiments, any other suitableIncluding but not limited to a system bus or controller (not shown), may also be included in themobile device 300. In some embodiments, theoperating system 370 is mobile (e.g., iOS)TM、AndroidTM、Windows PhoneTMEtc.) and one ormore application programs 380 may be loaded frommemory 390 intomemory 360 for execution byCPU 340. Theapplication 380 may include a browser or any other suitable mobile application for receiving and presenting information related to a path planning service. User interaction with the information flow may be enabled via the I/O device 350 and provided to theprocessing engine 112 and/or other components of thesystem 100 via thenetwork 120.
To implement the various modules, units, and functions thereof described herein, a computer hardware platform may be used as one or more hardware platforms for the elements described herein (e.g.,system 100 and/or other components). Refer to FIG. 1-
10) A portion of thesystem 100 is depicted. The hardware elements, operating systems, and programming languages of such computers are conventional in nature and given sufficient familiarity to those of ordinary skill in the art to adapt these techniques for use in determining the optimal path of a path planning request as described herein. A computer containing user interface elements can be used with a Personal Computer (PC)) or other type of workstation or terminal device, suitably programmed, and also used as a server. It will be appreciated that those skilled in the art will be familiar with the structure, programming and general operation of such computer devices and, therefore, the drawings should not be self-explanatory.
One of ordinary skill in the art will appreciate that when an element ofsystem 100 executes, the element may execute via electrical and/or electromagnetic signals. For example, when theserver 110 processes a task, such as determining an optimal path for a path planning request, theserver 110 may operate logic in its processor to process such a task. When theserver 110 completes determining the optimal path, the processor of theserver 110 may generate an electrical signal encoding the optimal path. The processor of theserver 110 may then send the electrical signal to at least one data exchange port of a target system associated with theserver 110. Theserver 110 communicates with the target system via a wired network, and at least one data exchange port may be physically connected to a cable, which may also transmit electrical signals to a user's input port (e.g., an information exchange port). And a terminal 130. If theserver 110 is in communication with a target system via a wireless network, at least one data exchange port of the target system may be one or more antennas, which may convert electrical signals to electromagnetic signals. Instructions and/or actions are carried out by electrical signals within an electronic device (e.g., user terminal 130) and/orserver 110 when its processor processes the instructions, issues the instructions, and/or performs the actions. For example, when the processor retrieves or stores data from a storage medium (e.g., memory 140), it may send electrical signals to a read/write device of the storage medium, which may read or write structured data in the storage medium. The structured data may be transmitted in the form of electrical signals to the processor via a bus of the electronic device. Here, the electrical signal may be one electrical signal, a series of electrical signals, and/or at least two discrete electrical signals.
Fig. 4 is a block diagram of anexemplary processing engine 112 shown in accordance with some embodiments of the present application. As shown in fig. 4, theprocessing engine 112 may include arequest acquisition module 410, a candidatepath determination module 420, aweight determination module 430, an optimalpath determination module 440, and adisplay module 450.
Therequest obtaining module 410 may be configured to obtain a path planning request from a user terminal. The path planning request may include information such as a departure time, a departure location, an end location, a travel pattern, a driving history of the user terminal, profile information of the user, and the like, or any combination thereof. The departure time may refer to a transit time that the user begins from the departure location to the destination location. This information may be obtained from one or more components of system 100 (e.g.,memory 140, user terminal 130) or an external source that may be in communication withsystem 100.
The candidatepath determination module 420 may be configured to determine at least two candidate paths for the path planning request. A candidate route may refer to a route having a departure location associated with a route planning request to an end location associated with the route planning request. The candidate path may include at least two segments, and each segment may represent a segment of the candidate path. In some embodiments, the at least two candidate routes may be historical routes from a departure location to an end location, being travel routes that one or more users of thesystem 100 have historically used. The historical route may be stored in any memory of the system 100 (e.g., memory 140). The candidatepath determination module 420 may access a memory to obtain at least two candidate paths. In some embodiments, the at least two candidate paths may be routes from a departure location to an end location planned by the online electronic map. The candidateroute determination module 420 may determine at least two candidate routes from the online electronic map.
Theweight determination module 430 may be configured to determine the weight of the road segment. The weight of the road segment may indicate an actual expected transit time for the road segment. The actual predicted transit time of the link may refer to a corrected predicted transit time of the link determined based on the predicted transit time of the link by considering vehicle-link information of the link. The greater the weight of the road segment, the longer the actual expected transit time for the road segment may be. In some embodiments, theweight determination module 430 may determine the predicted transit time for the road segment and the vehicle information for the road segment to further determine the weight for the road segment. For example, theweight determination module 430 may determine the predicted transit time for the road segment based on the historical transit time for the road segment and the current transit time on the road segment. For another example, theweight determination module 430 may determine vehicle information for the road segment, such as a number of historical vehicles traveling on the road segment, a number of current vehicles on the road segment, and/or a projected number of vehicles projected onto the road segment. As yet another example, theweight determination module 430 may determine the weight of the road segment according to an algorithm or formula based on the predicted transit time and the vehicle information for the road segment. More details regarding determining segment weights may be found elsewhere in this application (e.g.,operations 530 and 550 in FIG. 5, FIGS. 6-8, and descriptions thereof).
The optimalpath determination module 440 may be configured to determine an optimal path for the path planning request. For example, the optimalpath determination module 440 may select an optimal path from at least two candidate paths. In some embodiments, the optimalpath determination module 440 may determine a path weight for each candidate path based on a weight for each segment of the at least two segments of each candidate path. The optimalpath determination module 440 may determine the candidate path having the smallest path weight as the optimal path. More descriptions of determining the optimal path may be found elsewhere in this application (e.g., operation 560 in fig. 5, fig. 9, and descriptions thereof).
Thedisplay module 450 may be configured to instruct the user terminal to display the optimal path on a user interface of the user terminal in response to the path planning request. In some embodiments, thedisplay module 450 may also instruct the user terminal to display one or more candidate paths on a user interface of the user terminal.
The modules in theprocessing engine 112 may be connected or in communication with each other via a wired connection or a wireless connection. The wired connection may include a metal cable, an optical cable, a hybrid cable, etc., or any combination thereof. The wireless connection may include a Local Area Network (LAN), a Wide Area Network (WAN), bluetooth, zigbee network, Near Field Communication (NFC), etc., or any combination thereof. Two or more modules may be combined into a single module, and any one of the modules may be divided into two or more units. For example, theweight determination module 420 may be divided into two or more units for determining the predicted transit time of the road segment, determining the vehicle-road segment information for the road segment, and determining the weight of the road segment, respectively. As another example, theprocessing engine 112 may include a storage module (not shown) for storing data and/or information related to road planning services.
Fig. 5 is a flow diagram illustrating anexemplary process 500 for path planning, according to some embodiments of the present application.Process 500 may be performed bysystem 100. For example,process 500 may be implemented as a set of instructions (e.g., an application program) stored instorage ROM 230 orRAM 240.Processor 220 may execute the set of instructions and, when executing the instructions, may be configured to performprocess 500. The operation of the process shown below is for illustration purposes only. In some embodiments,process 500, when implemented, may add one or more additional operations not described, and/or subtract one or more operations described herein. Additionally, the order in which the process operations are illustrated in FIG. 5 and described below is not intended to be limiting.
In 510, the processing engine 112 (e.g., theprocessor 220, the request acquisition module 410) may acquire a path planning request including a departure time from the user terminal.
In some embodiments, the departure time may refer to a time at which a user of the user terminal starts traveling. The departure time may be a current time or a future time set by a user of the user terminal. For example, when the user intends to start traveling at the current time, the user may request path planning. The current time may refer to the current time at which the user sent the path planning request or a defined time in the field of ordinary people reasonably close to the current time (e.g., 1 minute, 2 minutes, or 5 minutes after the current time). For another example, when the user intends to start traveling at a future time, the user may request path planning. The future time may refer to a reasonably long time from the current time in the field of ordinary people (e.g., 30 minutes, 1 hour, 2 hours, or 1 day after the current time). In some embodiments, if the user does not set the departure time, the departure time may be a default setting of the system 100 (e.g., the current time interval).
As used herein, "obtaining a path planning request" may refer to "obtaining information related to the path planning request. The path planning request may relate to a particular trip that the user intends to start. In some embodiments, the path planning request may include a departure location and an end location associated with a particular trip. The departure location or the destination location may include name information and/or address information, which may be set by a user. For example, a user may select or enter a name and/or address of a departure location or an end location on a user interface of a user terminal (e.g., user terminal 130). In some embodiments, when the user sends a path planning request, the path planning request may include the current location of the user (i.e., the current location of the user terminal). If the user does not select or enter a departure location, the current location may be set as the departure location by default. In some embodiments, the path planning request may also include travel patterns (e.g., driving a car, getting on, riding a bicycle, or walking), driving history (e.g., historical travel times, number of historical trips of the user reflecting his/her driving habits, etc.), profile information of the user (e.g., gender, age, contact information, phone number, education level, address, occupation, marital status, criminal records, credit records, traffic violation records, etc.), or any combination thereof.
In some embodiments, information related to the path planning request may be obtained from one or more components of thesystem 100. By way of example only, information such as a departure time, a departure location, and an end location may be input by a user through a user terminal and transmitted tomemory 140 and/or stored inmemory 140. Theprocessing engine 112 may retrieve information from thememory 140 or obtain information from a user terminal via thenetwork 120. Additionally or alternatively, a portion of the information related to the path planning request may be obtained from an external source that may communicate withsystem 100 overnetwork 120. For example, the profile information for the user may be obtained from one or more third party applications that share the user information with thesystem 100. For example, theprocessing engine 112 may retrieve the user's traffic violation record from a website or database of traffic violation records.
At 520, processing engine 112 (e.g.,processor 220, candidate path determination module 420) may determine at least two candidate paths for the path planning request. In some embodiments, each candidate path may include at least two road segments.
In some embodiments, a candidate route may refer to a route having directions from a departure location to an end location of a route planning request. From the departure location to the destination location of the path planning request, there may be at least two candidate paths. In some embodiments, the at least two candidate routes may be historical routes from the departure location to the destination location, which are transit routes that one or more users of thesystem 100 have historically used. The historical route may be stored in any memory of the system 100 (e.g., memory 140). Theprocessing engine 112 may access memory to retrieve at least two candidate paths. In some embodiments, the at least two candidate paths may be routes from a departure location to an end location planned by the online electronic map. Theprocessing engine 112 may determine at least two candidate paths from the online electronic map.
In some embodiments, a road segment may be a road segment or a portion of a road having a particular direction. In some embodiments, the road segments may have a predetermined length. In some embodiments, the road segments may have different lengths. In some embodiments, the predetermined length may be a default value stored in a storage device of the system 100 (e.g.,memory 140,ROM 230, RAM240, etc.), or determined by thesystem 100 or its operator depending on different application scenarios. Two adjacent segments in the candidate path may be connected by a common node. A common node may be an intersection comprising two adjacent road segments or may be a virtual point connecting two (or more) road segments.
At 530, for each of the at least two segments of each candidate route, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may determine an expected transit time for the segment at a target time associated with the departure time.
In some embodiments, the predicted transit time for a road segment may refer to an estimated time that a vehicle associated with the user terminal will take to traverse the road segment. The target time related to the departure time may refer to a point in time at which the vehicle related to the user terminal may start traveling on the road segment. In some embodiments, at a first segment of the candidate route (which may also be referred to as a segment at the beginning of the candidate route), the target time may be a departure time of the route planning request. On another segment of the candidate path other than the first segment, the target time may be an estimated time point calculated from the departure time. Taking a candidate route including five links (represented as l1, l2, l3, l4, l5 in order from the departure position to the destination position) as an example, the target time of the link l1 may be the departure time of the route planning request. The target time for the link l2 may be determined based on the target time for the link l1 and the estimated time for the link l 1. When the departure time is 9:00 am and the estimated time of link l1 is 10 minutes, the target time for link l2 may be 9:10 am. The target times of the links l3, l4, and l5 may be determined similarly to the target time of the link l2, and are not repeated here. In some embodiments, the expected transit times for the road segment at different target times may be different. For example, the expected transit time for a road segment at 8:00 am on weekdays (e.g., any one of monday through friday) may be greater than the expected transit time for a road segment at 10:00 am on weekdays because 8:00 am on weekdays is an early peak. As another example, the expected transit time for a road segment at 11:00 am on a weekday may be lower than the expected transit time for a weekend (e.g., saturday or sunday) because more people may travel to the weekend than on weekdays.
In some embodiments, theprocessing engine 112 may determine the predicted transit time for the road segment at the target time based on the historical transit time for the road segment at the historical target time corresponding to the target time and the current transit time for the road segment at the current time. The historical transit times for the road segments at the historical target times may be determined by a statistical algorithm based on at least two historical transit times for the road segments at least two historical target times over a past time period (e.g., past week, past month). The current transit time on the road segment at the current time may be determined by a statistical algorithm, such as, but not limited to, an arithmetic mean algorithm, a weighted mean algorithm, a sampled statistical algorithm, etc., or any combination thereof, based on at least two transit times on the road segment associated with the current time. More descriptions of determining the expected transit time for a road segment at a target time may be found elsewhere in this application (e.g., fig. 7 and 8 and their descriptions).
At 540, for each of the at least two road segments of each candidate path, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may obtain vehicle-road segment information related to the number of vehicles on the road segment.
In some embodiments, vehicle-road segment information may refer to information related to vehicle information related to road segments. For example, the vehicle-section information may be information related to the number of vehicles on the section. In some embodiments, the vehicle-to-road segment information related to the number of vehicles on the road segment may include information of historical vehicles on the road segment (e.g., the number of historical vehicles traveling on the road segment at a historical target time corresponding to the target time), information of current vehicles at the current time (e.g., the number of current vehicles traveling on the road segment at the current time), information of planned vehicles on the road segment (e.g., the number of vehicles planned onto the road segment within a preset historical time period), and the like, or any combination thereof. In some embodiments, at the historical target time, the number of historical vehicles traveling on the road segment may determine, by a statistical algorithm, the number of current vehicles on the road segment at the current time based on the number of at least two historical vehicles traveling on the road segment at least two historical target times over a past time period (e.g., past week, past month). The current number of vehicles on the road segment may be determined by a statistical algorithm, based on at least two numbers of vehicles on the road segment associated with the current time, such as, but not limited to, an arithmetic mean algorithm, a weighted mean algorithm, a sampled statistical algorithm, or the like, or any combination thereof. In some embodiments, the statistical algorithm used to determine the number of historic vehicles and the number of current vehicles may be the same or different. The number of planned vehicles planned to travel on the road segment within a preset historical time period may be obtained by a path planning system (e.g., system 100). In some embodiments, the vehicle-road segment information may be stored in a memory (e.g.,memory 140,ROM 230, RAM240, etc.) of thesystem 100. Theprocessing engine 112 may access the memory to obtain the vehicle-road segment information. More description of obtaining vehicle-road segment information may be found elsewhere in the present application (e.g., fig. 6 and its description).
In 550, for each of the at least two road segments of each candidate path, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may determine a weight for the road segment based on the predicted transit time and the vehicle-road segment information.
In some embodiments, the weight of the road segment may indicate an actual expected transit time for the road segment. The actual predicted transit time for the road segment may refer to an estimated time that it will take the vehicle to pass through the road segment after considering the vehicle-road segment information. The greater the weight of the road segment, the longer the actual expected transit time for the road segment may be. In some embodiments, the weight of a segment may further indicate a probability that the segment will be part of an optimal path recommended to the user terminal in response to the path planning request. In some embodiments, the greater the weight of a road segment, the longer the actual expected transit time for the road segment may be, and the less likely the road segment is to be part of the optimal path. In some embodiments, the weight for a segment may further indicate a ratio of the candidate path including the segment to all of the at least two candidate paths, being substantially a percentage of the path including the segment. In some embodiments, the weight for a road segment reflects all factors such as, but not limited to, expected transit time, the likelihood that the road segment is part of an optimal path, and the percentage of candidate paths that include the road segment.
In some embodiments, the predicted transit time and vehicle-road segment information may be based on the following equation (1)
To determine the weight of the road segment:
Figure BDA0002080496420000151
wherein, wiMeans the weight, count, of the ith road segmenthcThe number of historical vehicles, count, traveling on the ith road segment within the historical target time corresponding to the departure timeccMeans the number of vehicles driving on the ith road segment in the current time, countrpRefers to the number of planned vehicles planned to the ith road segment within a preset historical time period,
Figure BDA0002080496420000152
refers to the expected transit time for the ith road segment at a target time related to the departure time, and alpha refers to a parameter (e.g., 0.3) that may be a default setting forsystem 100, or may be adjusted in different circumstancesAnd (6) finishing.
The number of historic vehicles (count) according to equation (1)hc) The greater the weight (w) of the ith linki) The smaller the probability that the ith road segment is part of the optimal path recommended to the user is. Current vehicle (count)rp) Or the number of planned vehicles (count)rp) The larger the i-th road section (w)i) The greater the weight of (c), the less likely the ith road segment is to be part of the optimal path recommended to the user. In some embodiments, the weight may be a relative value greater than 1.
In some embodiments, at the beginning of the path plan, theprocessing engine 112 may determine an initial weight for each road segment. The initial weight may be a default setting for thesystem 100. Theprocessing engine 112 may determine whether to update the initial weight of the road segment based on a predetermined threshold. If the difference between the initial weight of the road segment and the weight of the road segment is greater than a predetermined threshold, theprocessing engine 112 may update the initial weight of the road segment to the weight of the road segment determined according to the equation (1). Alternatively, if the difference between the initial weight of the road segment and the weight of the road segment is less than or equal to a predetermined threshold, theprocessing engine 112 may not update the initial weight of the road segment. In some embodiments, the predetermined threshold may be a preset value or may be adjustable, and may be stored in a memory of the system 100 (e.g.,memory 140,ROM 230, RAM240, etc.) or dynamically determined based on different circumstances (e.g., congestion of a road segment).
At 560, the processing engine 112 (e.g., theprocessor 220, the optimal path determination module 440) may determine an optimal path for the path planning request from the at least two candidate paths based on the weight of each of the at least two segments of each candidate path.
In some embodiments, the optimal path may refer to the most suitable path that saves user time and/or effectively relieves congestion. The optimal path may be a candidate path having a smallest actual expected transit time compared to other candidate paths of the at least two candidate paths. In some embodiments, the actual expected transit time of the candidate route may be indicated in part by the route weight of the candidate route. The path weight of the candidate path may be determined based on the weight of each of at least two segments of the candidate path. For example, in some embodiments, the path weight of the candidate path may be the sum of the weights of all road segments included in the candidate path. In some embodiments, the path weight of a candidate path takes into account the weight of certain road segments shared by more than one candidate path. In some embodiments, the greater the weight, the longer the actual expected transit time of the respective candidate route. In some embodiments, theprocessing engine 112 may determine at least two path weights corresponding to the at least two candidate paths. Each path weight may correspond to a candidate path. Theprocessing engine 112 may select the optimal path from at least two candidate paths, where the path weight of the optimal path is the smallest of the at least two path weights corresponding to the at least two candidate paths. More descriptions of determining the optimal path may be found elsewhere in this application (e.g., fig. 8 and 9 and their descriptions).
In some embodiments, the systems and methods of the present application may balance the overall transit time for a group of users with the transit time for an individual user. In some cases, when the time difference between multiple candidate paths for a user is very small, the optimal path may be to prevent congestion and ensure that the overall transit time is the shortest for the user group as a whole (e.g., 2, 5, 10, 50, 100 users, or more). For example, if after calculation, one user has two candidate routes, a and B, with transit times of 100 and 95 minutes respectively, it may be (but is not mandatory to select route a as the optimal route if selecting route a would result in a total transit time of 50 minutes for a group of 50 users. In some embodiments, the "sacrifice" of the user may be kept to a minimum, for example, according to a threshold (e.g., 5 minutes or 5% of the total travel time). In some embodiments, the user's "sacrifice" may be pre-approved by the user. For example,processing engine 112 may send a signal to a mobile device associated with the user instructing the mobile device to display a message summarizing the alternative. For example, the message may indicate that route a and route B have similar predicted transit times or that route a has a travel time slightly longer than route B, but selecting route a will result in less overall congestion, asking that it is acceptable to select route a. Path a may be selected as the optimal path upon user approval.
At 570, processing engine 112 (e.g.,processor 220, display module 450) may instruct the user terminal to display the optimal path on a user interface of the user terminal in response to the path planning request.
In some embodiments, the user may begin the trip based on the optimal path, for example, by confirming the optimal path on the user interface. In some embodiments, the optimal path displayed on the user interface may include a departure location associated with the path planning request, an end location associated with the path planning request, an actual estimated time of the optimal path, a distance of the optimal path, or the like, or any combination thereof. In some embodiments, theprocessing engine 112 may update and display the optimal path on the user interface of the user terminal during the pass. For example, when theprocessing engine 112 determines that the currently displayed optimal path is no longer the optimal path, theprocessing engine 112 may determine and display another optimal path for the user.
It should be noted that the foregoing is provided for illustrative purposes only and is not intended to limit the scope of the present application. Various modifications and changes may occur to those skilled in the art in light of the description herein. For example,operation 530 and 550 may be integrated into one step. For another example, the weight of the link may be determined according to the predicted travel speed of the link and the vehicle-link information of the link, similar to the link information based on the link and the predicted transit time of the vehicle and the link described inoperation 550. The predicted travel speed for the road segment may be determined based on the predicted transit time for the road segment and the length of the road segment. However, such modifications and changes do not depart from the scope of the present application.
Fig. 6 is a flow diagram illustrating anexample process 600 for determining vehicle-road segment information according to some embodiments of the present application.Process 600 may be performed bysystem 100. For example, theprocess 600 may be implemented as a set of instructions (e.g., an application program) stored in thestorage ROM 230 orRAM 240. The set of instructions may be executed byprocessor 220 and, when executed, may be configured to performprocess 600. The operation of the process shown below is for illustration purposes only. In some embodiments,process 600, when implemented, may add one or more additional operations not described herein and/or delete one or more of the operations described herein. Additionally, the order in which the process operations are illustrated in FIG. 6 and described below is not intended to be limiting.
In 610, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may determine a number of historical vehicles that traveled on the road segment at a historical target time corresponding to the departure time.
In some embodiments, the historical target time corresponding to the departure time may be the same historical time as the target time. For example, if the target time associated with the departure time is 9:10 a.m. today (working day), the historical target time corresponding to the departure time may be 9:10 a.m. on a particular historical date prior to today (e.g., yesterday, the same day of the last month, the same day of the last year, etc.), or at least two historical dates prior to today (e.g., at least two working days of the last month, at least two working days of the last year, at least two same dates in the last several months, etc.).
In some embodiments, historical vehicles may refer to vehicles that have traveled over a road segment over a past time period (e.g., past days, past weeks, past months, etc.). The number of the history vehicles traveling on the link at the history target time corresponding to the departure time may be an average number of the history vehicles traveling on the link at the same time as the target time in the history for a preset time period. In some embodiments, the average number of historical vehicles traveling on the road segment at the historical target time may be determined by a statistical algorithm (e.g., without limitation, an arithmetic mean algorithm, a weighted mean algorithm, a sampled statistical algorithm, or the like, or any combination thereof) based on the number of at least two historical vehicles traveling on the road segment at least two historical target times in the history over a preset time period (e.g., past week, past month).
In some embodiments,processing engine 112 may determine whether the departure time is on a weekday or on a weekend. In response to determining that the departure time is on a weekday, theprocessing engine 112 may obtain at least two historical target times for historical vehicles traveling on the road segment at least two historical quantities of historical vehicles on the past few weekdays (e.g., 30 weekdays other than the weekend before the weekday on which the departure time was located). For example, the number of historical vehicles traveling over the road segment at the historical target time may be determined according to equation (2):
Figure BDA0002080496420000171
wherein, counthcRefers to the number of historical vehicles traveling on the road segment at the historical target time, M refers to the number of past work days, countiRefers to the historical number of historical vehicles driving on the road segment at the historical target time of the ith working day, ΣMi refers to the sum of the historical number of historical vehicles traveling on the link at the historical target times for the M weekdays.
In response to determining that the departure time is on a weekend, theprocessing engine 112 may obtain at least two historical quantities of historical vehicles traveling over the road segment at least two historical target times over the past few weekends (e.g., 30 weekends prior to the weekend on which the departure time was located). Theprocessing engine 112 may determine the number of historic vehicles traveling over the road segment at the historic target time based on at least two historic numbers of historic vehicles traveling over the road segment at least two historic target times over the past weekends, similar to equation (2).
At 620, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may determine a number of current vehicles traveling on the road segment at the current time.
In some embodiments, the current vehicle traveling on the road segment at the current time may refer to the vehicle traveling on the road segment at the current time. For example, theprocessing engine 112 may obtain the number of current vehicles traveling on the road segment in real time. For another example, theprocessing engine 112 may obtain the number of current vehicles traveling on the road segment for a predetermined period of time (e.g., 5 minutes, 10 minutes) around the current time. For example, if the current time is 8:30 am, theprocessing engine 112 may determine the number of vehicles traveling on the road segment from 8:20 PM to 8:30 PM and designate the determined number of vehicles as the number of current vehicles traveling on the road segment of 8:30 PM.
At 630, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may determine a number of planned vehicles planned to the road segment within a preset historical time period.
In some embodiments, a planned vehicle planned onto the road segment may refer to a vehicle recommended by the path planning system (e.g., system 100) to the road segment. In some embodiments, when the route planning system plans a route for a user associated with a vehicle that includes the road segment, the vehicle may be the planned vehicle regardless of whether the route is confirmed by the user. For example, once thesystem 100 receives a path planning request from a user terminal, thesystem 100 may recommend at least one route to the user in response to the path planning request. If any of the recommended routes includes the road segment, the vehicle associated with the user terminal may be considered a planned vehicle planned onto the road segment.
In some embodiments, the preset historical time period may be a predetermined time period (e.g., half an hour, one hour, two hours) prior to the current time. In some embodiments, the number of planned vehicles planned to travel on the road segment over the preset historical time period may be retrieved from one or more components of the system 100 (e.g., the memory 140). Taking the predetermined time period of one hour and the current time of 8:00 am as an example, the preset historical time period may range from 7:00 am to 8:00 am. The planned vehicles planned to travel on the road segment may be stored inmemory 140. Theprocessing engine 112 may retrieve the projected number of vehicles projected to travel on the road segment from 7:00 am to 8:00 am directly from thememory 140 of thesystem 100. In some embodiments, the preset historical time period may be a preset period of time stored in thesystem 100, or may be dynamically determined based on different circumstances (e.g., different current times, different road segments, etc.).
At 640, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may determine vehicle-road segment information related to the number of vehicles on the road segment based on the number of historical vehicles, the current number of vehicles, and the projected number of vehicles.
In some embodiments, theprocessing engine 112 may determine the weight for the road segment based on the vehicle-road segment information related to the number of vehicles on the road segment according to equation (1). Equation (1) can also be expressed as
Figure BDA0002080496420000191
This indicates that: the greater the number of historical vehicles traveling on the road segment, the smaller the weight of the road segment; the greater the number of current vehicles traveling on the road segment, the greater the weight of the road segment may be; the greater the number of planned vehicles planned onto the road segment, the greater the weight of the road segment. In some embodiments, a portion of equation (1) relates to the number of vehicles associated with a road segment, e.g.
Figure BDA0002080496420000192
May be designated as vehicle-section information. The larger the vehicle-section information, the larger the weight of the section may be.
It should be noted that the foregoing is provided for illustrative purposes only and is not intended to limit the scope of the present application. Many variations and modifications may be made to the teachings of the present application by those of ordinary skill in the art in light of the present disclosure. However, variations and modifications may be made without departing from the scope of the present application. In some embodiments, one or more other optional operations (e.g., storage operations) may be added elsewhere in theexemplary process 600.
Fig. 7 is a flow diagram illustrating anexample process 700 for determining a projected transit time in accordance with some embodiments of the present application.Process 700 may be performed bysystem 100. For example,process 700 may be implemented as a set of instructions (e.g., an application program) stored instorage ROM 230 orRAM 240. The set of instructions may be executed byprocessor 220 and, when executed, may be configured to performprocess 700. The operation of the process shown below is for illustration purposes only. In some embodiments,process 700 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the process operations are illustrated in FIG. 7 and described below is not intended to be limiting.
At 710, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may obtain a historical transit time for the road segment at the historical target time corresponding to the target time.
In some embodiments, the historical transit time may be an average time taken by at least two historical vehicles to traverse the road segment at a historical target time, the historical target time being similar to a target time in a predetermined time period in the history. In some embodiments, the historical transit times may be determined based on at least two historical transit times for the road segment for at least two historical target times within a predetermined time period in the history (e.g., within the past week, within the past month, etc.) by a statistical algorithm, such as, but not limited to, an arithmetic mean algorithm, a weighted mean algorithm, a sampled statistical algorithm, or the like, or any combination thereof. For example, the target time is 9 am on monday, theprocessing engine 112 may retrieve the historical transit times for the road segments for each past work day of 9:00 over the historical 30 days directly from one or more components of the system 100 (e.g., the memory 140). Theprocessing engine 112 may determine the average historical transit time of the acquired link historical transit times as a historical transit time of 9:00 am. More description of determining historical transit times may be found elsewhere in this application (e.g., fig. 8 and its description).
At 720, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may obtain a current transit time on the road segment at the current time.
In some embodiments, the current transit time may be an average time the vehicle took to travel the road segment at the current time. The current transit time for the current time may be determined based on an average time of transit times within a preset time period prior to the current time. For example, if the current time is 8:30 am and the preset time period is 10 minutes, theprocessing engine 112 may obtain the transit time on the road segment from 8:20 am to 8:30 am. Theprocessing engine 112 may determine the average of the obtained transit times as the current transit time of the current time. In some embodiments, the preset time period may be a default value stored in a memory (e.g., memory 140) of thesystem 100, or may be dynamically determined according to different circumstances.
In 730, the processing engine 112 (e.g.,processor 220, weight determination module 430) may determine a time interval between the departure time and the current time.
In some embodiments, the time interval between the departure time and the current time may be measured in different dimensions (e.g., minutes or hours). For example, if the departure time is 8:30 am today and the current time is 8:00 am today, the time interval between the departure time and the current time may be 30 minutes or 0.5 hours. As another example, if the departure time is 23:00 on Monday, and the current time is 7:00, the time interval between the departure time and the current time may be 480 minutes or 8 hours.
In 740, the processing engine 112 (e.g.,processor 220, weight determination module 430) can determine an expected transit time based on the historical transit time, the current transit time, and the time interval.
In some embodiments, theprocessing engine 112 may determine whether the time interval is less than a predetermined interval (e.g., 60 minutes, 2 hours). In some embodiments, the predetermined interval may be a default value stored in a memory (e.g., memory 140) ofsystem 100, or may be dynamically determined from different circumstances. In response to determining that the time interval is less than the predetermined interval, theprocessing engine 112 may determine an expected transit time based on the historical transit time and the current transit time. In response to determining that the time interval is greater than or equal to the predetermined interval, theprocessing engine 112 may determine the expected transit time based only on the historical transit time. For example, theprocessing engine 112 may determine the expected transit time according to equation (4) below:
Figure BDA0002080496420000201
wherein,
Figure BDA0002080496420000211
the predicted transit time of the ith link that refers to the target time in relation to the departure time,
Figure BDA0002080496420000212
a historical transit time of a historical target time corresponding to the target time,
Figure BDA0002080496420000213
the current transit time of the ith road segment referring to the current time, an
Figure BDA0002080496420000214
Figure BDA0002080496420000215
Are referred to as being in 1 and
Figure BDA0002080496420000216
minimum value between, where tfRefers to the time interval between the departure time and the current time, and alpha refers to the predetermined interval. t is tfAnd alpha have the same measurement dimension (e.g., both in minutes or both in hours). For example, the preset interval (. alpha.) is 60 minutes if the time interval (t)f) Greater than or equal to 60 minutes (e.g., 80 minutes), theprocessing engine 112 may determine θ to be 1 and the estimated transit time to be
Figure BDA0002080496420000217
Can pass based on history only
Figure BDA0002080496420000218
To determine an estimated transit time. As another example, if the time interval (t)f) Less than 60 minutes (e.g., 30 minutes), theprocessing engine 112 may determine θ as
Figure BDA0002080496420000219
And determining the estimated travel time as
Figure BDA00020804964200002110
Figure BDA00020804964200002111
It should be noted that the foregoing is provided for illustrative purposes only and is not intended to limit the scope of the present application. Various modifications and changes may occur to those skilled in the art in light of the description herein. However, such modifications and changes do not depart from the scope of the present application. In some embodiments, one or more other optional operations (e.g., storage operations) may be added elsewhere in theexemplary process 700.
Fig. 8 is a flow diagram illustrating anexemplary process 800 for determining historical transit times according to some embodiments of the present application.Process 800 may be performed bysystem 100. For example,process 800 may be implemented as a set of instructions (e.g., an application program) stored instorage ROM 230 orRAM 240. The set of instructions may be executed byprocessor 220 and, when executed, may be configured to performprocess 800. The operation of the process shown below is for illustration purposes only. In some embodiments,process 800, when implemented, may add one or more additional operations not described herein and/or delete one or more operations described herein. Additionally, the order in which the process operations are illustrated in FIG. 8 and described below is not intended to be limiting.
At 810, the processing engine 112 (e.g.,processor 220, weight determination module 430) may determine that the departure time is on a weekday or weekend.
In some embodiments, the weekday may be the day that most people are working, and the weekend may be the day that most people are on vacation or on vacation. For example, a weekday may be a default setting for any day from monday through friday, and a weekend may be a default setting for saturday or sunday. For another example, a weekday may not include a day belonging to a legal holiday, and even this day from monday to friday may be set as a weekend.
At 820, in response to determining that the departure time is on a weekday, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may determine the historical target time corresponding to the target time for the road segment for a first preset number of historical weekdays as an average historical transit time.
In some embodiments, the first preset number of historical weekdays may comprise a first preset number of consecutive weekdays prior to the weekday on which the departure time was located. For example, if the first preset number is 5 and the day on which the departure time is located is friday, the historical workdays may include four days of monday through thursday of the week and one day of friday of the last week. In some embodiments, the first preset number may be a default value stored in a memory (e.g., memory 140) of thesystem 100, or may be dynamically determined according to different circumstances.
In some embodiments, theprocessing engine 112 may retrieve the historical transit times for the historical target times in each historical weekday from one or more components of the system 100 (e.g., the memory 140). Theprocessing engine 112 may determine an average historical transit time for the road segments at the historical target times for the first preset number of historical weekdays based on the historical transit times for the road segments at the historical target times for the historical weekdays. Theprocessing engine 112 may designate as the historical transit time the average historical transit time of the historical target times for the first preset number of historical weekdays. For example, theprocessing engine 112 may determine the historical transit time for the road segment at the historical target time according to equation (3) below:
Figure BDA0002080496420000221
wherein,
Figure BDA0002080496420000222
the historical transit time of the ith link (i.e., the average historical transit time of the ith link) which is the historical target time, H is a first preset number of historical weekdays,
Figure BDA0002080496420000223
is the historical passing time, sigma of the historical working dayHt refers to the sum of the historical transit times of the historical weekdays. For example, theprocessing engine 112 may obtain each historical transit time for the road segment at the historical target time on each weekday of monday through thursday and friday of the last week, and determine the average transit time for these weekdays according to equation (3).
At 830, in response to determining that the departure time is on a weekend, the processing engine 112 (e.g., theprocessor 220, the weight determination module 430) may determine an average historical transit time for the road segment corresponding to the historical target time for the target time for a second preset number of historical weekends as the historical transit time.
In some embodiments, the second preset number of historical weekends may include a consecutive second preset number of weekends before the weekend on which the departure time is located. For example, if the second preset number is 5 and the weekend on which the departure time is located is sunday of the week, the historical weekends may include saturday of the week, saturday of the last week, and two days of sunday. In some embodiments, the second preset number may be a default value stored in a memory (e.g., memory 140) of thesystem 100, or may be dynamically determined according to different circumstances.
In some embodiments, theprocessing engine 112 may retrieve the historical transit times for the historical target times for each historical weekend from one or more components of the system 100 (e.g., the memory 140). Theprocessing engine 112 may determine an average historical transit time for the road segments at the historical target times for the second preset number of historical weekends based on the historical transit times for the road segments at the historical target times for the historical weekends. Similar to equation (3). Theprocessing engine 112 may designate as the historical transit time the average historical transit time of the historical target times for the second preset number of historical weekends. For example, theprocessing engine 112 may obtain each historical transit time for the road segment at each weekend including saturday of the present week, saturday and sunday of the previous week, and determine the average transit time for these weekends according to equation (3).
It should be noted that the foregoing is provided for illustrative purposes only and is not intended to limit the scope of the present application. Various modifications and changes may occur to those skilled in the art in light of the description herein. However, such modifications and changes do not depart from the scope of the present application. For example, one or more other optional operations (e.g., a store operation) may be added elsewhere in theexample process 800.
Fig. 9 is a flow diagram illustrating anexemplary process 900 for determining an optimal path according to some embodiments of the present application.Process 900 may be performed bysystem 100. For example, theprocess 900 may be implemented as a set of instructions (e.g., an application program) stored in thestorage ROM 230 orRAM 240. The set of instructions may be executed byprocessor 220 and, when executed, may be configured to performprocess 900. The operation of the process shown below is for illustration purposes only. In some embodiments,process 900 may, when implemented, add one or more additional operations not described, and/or subtract one or more operations described herein. Additionally, the order in which the process operations are illustrated in FIG. 9 and described below is not intended to be limiting.
The process in 910-920 demonstrates one possible method of determining the optimal path. It should be noted, however, that other alternatives do exist and other factors may be considered in determining the optimal path. In 910, for each of the at least two candidate paths, the processing engine 112 (e.g., theprocessor 220, the optimal path determination module 440) may determine a weighted sum of at least two weights for at least two segments of the candidate path.
In some embodiments, the sum of the weights of the at least two weights for the at least two segments of the candidate route may be designated as the route weight for the candidate route. The path weight of the candidate path may indicate an actual expected transit time of the candidate path, which may further indicate a congestion degree of the candidate path. The greater the path weight of the candidate path, the longer the actual expected transit time of the candidate path may be, and the smaller the probability that the candidate path is determined to be the optimal path. Taking the candidate path including five links (weights represented by W1, W2, W3, W4, W5, respectively) as an example, the path weight of the candidate path may be the sum of W1, W2, W3, W4, and W5. In some embodiments, the path weights for the candidate paths may be determined according to other methods. For example, the path weight of the candidate path may be an average of W1, W2, W3, W4, and W5.
In 920, the processing engine 112 (e.g., theprocessor 220, the optimal path determination module 440) may determine an optimal path based on a sum of weights corresponding to at least two candidate paths.
In some embodiments, theprocessing engine 112 may determine at least two path weights corresponding to the at least two candidate paths based on the weights corresponding to the at least two candidate paths. Theprocessing engine 112 may rank the at least two path weights according to a predetermined order (e.g., ascending, descending). For example, the greater the weight, the higher the ranking of the respective candidate path may be. Further, theprocessing engine 112 may select the candidate path having the minimum value of the path weight as the optimal path.
It should be noted that the foregoing is provided for illustrative purposes only and is not intended to limit the scope of the present application. Various modifications and changes may occur to those skilled in the art in light of the description herein. However, such modifications and changes do not depart from the scope of the present application. In some embodiments, one or more other optional operations (e.g., storage operations) may be added elsewhere in theexemplary process 900.
Fig. 10 is a schematic diagram illustrating an exemplary candidate path according to some embodiments of the present application. As shown in fig. 10, each line segment with an arrow represents a road segment, and each circle represents a node (e.g., includes an intersection connected to at least one road segment). A plurality of segments along the direction of the arrow from thestart position 1010 to theend position 1020 may form a path, which may be a candidate path.
In some embodiments, each road segment may include an initial weight. Each candidate route may include a weight based on at least two initial weights for at least two segments of the candidate route and a calculated initial route weight. For example, a candidate path (also referred to as a first candidate path) including the link L1, the link L5, the link L6, the link L7, and the link L8 having the smallest initial path weight among at least two candidate paths may be determined as the initial optimal path. The initial weight for each road segment may be updated according to the processes and/or methods described herein (e.g., fig. 5-9 and the description thereof). The path weight for each candidate path may be updated based on a weight sum of at least two updated weights for at least two segments of the candidate path. For example, the path weight of the first candidate path may be updated based on the weighted sum of the updated weights of w1, w5, w6, w7, and w 8. The path weight of another candidate path (also referred to as a second candidate path) including the link L1, the link L2, the link L3, the link L9, and the link L8 may be updated based on the weight sum of the updated weights of w1, w2, w3, w9, and w 8. The weight of the updated weight based on w1, w2, w3, w4, w6, w7, and w8 and the path weight of the candidate path (also referred to as a third candidate path) including the link L1, the link L2, the link L3, the link L4, the link L6, the link L7, and the link L8 may also be updated. The second candidate route (including the link L1, the link L2, the link L3, the link L9, and the link L8) having the smallest route weight value may be determined as the optimal route based on the updated route weight of the candidate route.
The embodiment in the application has at least one of the following technical effects: the method comprises the steps of determining road segment weights related to the transit time of road segments based on vehicle-road segment information related to the number of vehicles on the road segments at a certain historical time (including the number of vehicles traveling on the road segments at a certain historical time, the number of vehicles traveling on the road segments at the current time, and the number of vehicles planned to the road segments within a certain time period before the current time), and determining the path weights related to the transit time of each candidate path based on the weighted sum of all the weights corresponding to all the road segments contained in each candidate path. An optimal path is selected from the plurality of candidate paths based on the path weight of each candidate path. By the method, the travel time of the user can be effectively reduced, and traffic jam can be relieved simultaneously.
Having thus described the basic concepts, it will be apparent to those of ordinary skill in the art having read this application that the foregoing disclosure is to be construed as illustrative only and is not limiting of the application. Various modifications, improvements and adaptations of the present application may occur to those skilled in the art, although they are not explicitly described herein. Such modifications, improvements and adaptations are proposed in the present application and thus fall within the spirit and scope of the exemplary embodiments of the present application.
Also, this application uses specific language to describe embodiments of the application. For example, "one embodiment," "an embodiment," and/or "some embodiments" means that a particular feature, structure, or characteristic described in connection with at least one embodiment of the application. Therefore, it is emphasized and should be appreciated that two or more references to "an embodiment" or "one embodiment" or "an alternative embodiment" in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, certain features, structures, or characteristics of one or more embodiments of the application may be combined as appropriate.
Moreover, those of ordinary skill in the art will understand that aspects of the present application may be illustrated and described in terms of several patentable species or situations, including any new and useful combination of processes, machines, articles, or materials, or any new and useful modification thereof. Accordingly, various aspects of the present application may be embodied entirely in hardware, entirely in software (including firmware, resident software, micro-code, etc.) or in a combination of hardware and software. The above hardware or software may be referred to as "data block," module, "" engine, "" unit, "" component, "or" system. Furthermore, aspects of the present application may take the form of a computer program product embodied in one or more computer-readable media, with computer-readable program code embodied therein.
A computer readable signal medium may comprise a propagated data signal with computer program code embodied therewith, for example, on baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including electro-magnetic, optical, and the like, or any suitable combination. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code on a computer readable signal medium may be propagated over any suitable medium, including radio, cable, fiber optic cable, RF, etc., or any combination of the preceding.
Computer program code required for operation of aspects of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C + +, C #, VB.NET, Python, or similar conventional programming languages, such as the "C" programming language, Visualbasic, Fortran 1703, Perl, COBOL 1702, PHP, ABAP, dynamic programming languages such as Python, Ruby, and Groovy, or other programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any network format, such as a Local Area Network (LAN), or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet), or in a cloud computing environment, or as a service, such as a software as a service (SaaS).
Additionally, the order in which elements and sequences of the processes described herein are processed, the use of alphanumeric characters, or the use of other designations, is not intended to limit the order of the processes and methods described herein, unless explicitly claimed. While various presently contemplated embodiments of the invention have been discussed in the foregoing disclosure by way of example, it is to be understood that such detail is solely for that purpose and that the appended claims are not limited to the disclosed embodiments, but, on the contrary, are intended to cover all modifications and equivalent arrangements that are within the spirit and scope of the embodiments herein. For example, although the system components described above may be implemented by hardware devices, they may also be implemented by software-only solutions, such as installing the described system on an existing server or mobile device.
Similarly, it should be noted that in the preceding description of embodiments of the present application, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the embodiments. This method of application, however, is not to be interpreted as reflecting an intention that the claimed subject matter to be scanned requires more features than are expressly recited in each claim. Indeed, the embodiments may be characterized as having less than all of the features of a single embodiment disclosed above.
Numerals describing the number of components, attributes, etc. are used in some embodiments, it being understood that such numerals used in the description of the embodiments are modified in some instances by the use of the modifier "about", "approximately" or "substantially". Unless otherwise indicated, "about", "approximately" or "substantially" indicates that the number allows a variation of ± 20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximations that may vary depending upon the desired properties of the individual embodiments. In some embodiments, the numerical parameter should take into account the specified significant digits and employ a general digit preserving approach. Notwithstanding that the numerical ranges and parameters setting forth the broad scope of the range are approximations, in the specific examples, such numerical values are set forth as precisely as possible within the scope of the application.
All patents, patent applications, patent application publications, and other materials (e.g., articles, books, specifications, publications, records, things, and/or the like) mentioned herein are incorporated herein by reference in their entirety for all purposes except to the extent any document referred to above is deemed to be a document referred to, to be inconsistent or contrary to this document, or to the extent any document referred to in the claims that are not sooner or later referred to in this document. For example, descriptions, definitions, and/or use of terms in this document should take precedence if there is any inconsistency or conflict between the descriptions, definitions, and/or use of terms in relation to any incorporated material that is relevant to this document.
Finally, it should be understood that the embodiments described herein are merely illustrative of the principles of the embodiments of the present application. Other variations are also possible within the scope of the present application. Thus, by way of example, and not limitation, alternative configurations of the embodiments of the present application can be viewed as being consistent with the teachings of the present application. Thus, embodiments of the present application are not limited to the embodiments precisely as shown and described.

Claims (16)

1. A path planning system, comprising:
a request acquisition module configured to acquire a path planning request including a departure time from a user terminal;
a candidate path determination module configured to determine at least two candidate paths, each candidate path including at least two segments, by the path planning request;
a weight determination module configured to, for each of the at least two segments of each candidate path,
determining a predicted transit time for the road segment at a target time relative to the departure time;
obtaining vehicle-road segment information related to the number of vehicles on the road segment, the vehicle-road segment information including: a projected number of vehicles projected onto the road segment within a preset historical time period, a historical number of vehicles traveling on the road segment corresponding to a historical target time of the departure time, a current number of vehicles traveling on the road segment at a current time; and
determining a weight for the road segment based on the predicted transit time and the vehicle-road segment information, including according to
Figure 953991DEST_PATH_IMAGE002
Or
Figure 933448DEST_PATH_IMAGE003
Figure 526235DEST_PATH_IMAGE004
Figure 983761DEST_PATH_IMAGE005
A number of the historical vehicles representing a road segment,
Figure 407920DEST_PATH_IMAGE006
representing the number of said current vehicles of the road section,
Figure 230383DEST_PATH_IMAGE007
a number of vehicles representing the plan for a road segment,
Figure 762995DEST_PATH_IMAGE009
represents said predicted transit time for the road segment,
Figure 571682DEST_PATH_IMAGE010
representing preset parameters; and
an optimal path determination module configured to determine an optimal path for the path planning request from the at least two candidate paths based on the weight of each of the at least two segments of each candidate path.
2. The system of claim 1, wherein to obtain the vehicle-segment information related to the number of vehicles on the segment, the weight determination module is further to:
determining a number of historical vehicles traveling on the road segment corresponding to a historical target time of the departure time;
determining a current number of vehicles traveling on the road segment at a current time;
determining a number of planned vehicles planned to the road segment within a preset historical time period; and
determining the vehicle-segment information related to the number of vehicles on the segment based on the number of historical vehicles, the number of current vehicles, and the number of planned vehicles.
3. The system of claim 1 or 2, wherein to determine the expected transit time, the weight determination module is further configured to:
acquiring historical passing time of the road section of historical target time corresponding to the target time;
acquiring the current passing time of the current time on the road section;
determining a time interval between the target time and the current time; and
determining the expected transit time based on the historical transit time, the current transit time, and the time interval.
4. The system of claim 3, wherein to obtain the historical transit time, the weight determination module is further configured to:
determining that the departure time is on a weekday or on a weekend; and
determining an average historical transit time of the road segments corresponding to the historical target time of the target time in a first preset number of historical workdays as the historical transit time in response to the departure time being on a workday.
5. The system of claim 3, wherein to obtain the historical transit time, the weight determination module is further configured to:
determining that the departure time is on a weekday or on a weekend; and
in response to determining that the departure time is on a weekend, determining an average historical transit time for the road segment corresponding to the historical target time at the target time in a second preset number of historical weekends as the historical transit time.
6. The system of claim 1, wherein to determine the optimal path from the at least two candidate paths, the optimal path determination module is further configured to:
for each candidate route of the at least two candidate routes, determining a weighted sum of at least two weights for the at least two segments of the candidate route; and
determining the optimal path based on the weighted sum corresponding to the at least two candidate paths.
7. The system of claim 1, further comprising a display module configured to:
and instructing the user terminal to respond to the path planning request and display the optimal path on a user interface of the user terminal.
8. A method of path planning, the method comprising:
acquiring a path planning request including a departure time from a user terminal;
determining at least two candidate paths for the path planning request, each candidate path comprising at least two segments;
for each segment of the at least two segments of each candidate path,
determining a predicted transit time for the road segment at a target time relative to the departure time;
obtaining vehicle-road segment information related to the number of vehicles on the road segment, the vehicle-road segment information including: a projected number of vehicles projected onto the road segment within a preset historical time period, a historical number of vehicles traveling on the road segment corresponding to a historical target time of the departure time, a current number of vehicles traveling on the road segment at a current time; and
determining a weight for the road segment based on the predicted transit time and the vehicle-road segment information, including according to
Figure 506140DEST_PATH_IMAGE011
Or
Figure 312554DEST_PATH_IMAGE012
Figure 129200DEST_PATH_IMAGE013
Figure 470139DEST_PATH_IMAGE014
A number of the historical vehicles representing a road segment,
Figure 259104DEST_PATH_IMAGE015
representing the number of said current vehicles of the road section,
Figure 298735DEST_PATH_IMAGE016
a number of vehicles representing the plan for a road segment,
Figure 805940DEST_PATH_IMAGE018
represents said predicted transit time for the road segment,
Figure 894113DEST_PATH_IMAGE019
representing preset parameters; and
determining an optimal path for the path planning request from the at least two candidate paths based on the weight for each of the at least two segments of each candidate path.
9. The method of claim 8, wherein the obtaining vehicle-segment information related to the number of vehicles on the segment comprises:
determining a number of historical vehicles traveling on the road segment corresponding to a historical target time of the departure time;
determining a current number of vehicles traveling on the road segment at a current time;
determining a number of planned vehicles planned to the road segment within a preset historical time period; and
determining the vehicle-segment information related to the number of vehicles on the segment based on the number of historical vehicles, the number of current vehicles, and the number of planned vehicles.
10. The method of claim 8 or 9, wherein said determining said expected transit time comprises:
acquiring historical passing time of the road section of the historical target time corresponding to the target time;
acquiring the current passing time of the current time on the road section;
determining a time interval between the target time and the current time; and
determining the expected transit time based on the historical transit time, the current transit time, and the time interval.
11. The method of claim 10, wherein the obtaining the historical transit time comprises:
determining that the departure time is on a weekday or on a weekend; and
determining an average historical transit time of the road segments corresponding to the historical target time of the target time in a first preset number of historical workdays as the historical transit time in response to the departure time being on a workday.
12. The method of claim 10, wherein the obtaining the historical transit time comprises:
determining that the departure time is on a weekday or on a weekend; and
in response to determining that the departure time is on a weekend, determining an average historical transit time for the road segment corresponding to the historical target time at the target time in a second preset number of historical weekends as the historical transit time.
13. The method of claim 8, wherein determining the optimal path from the at least two candidate paths comprises:
for each candidate route of the at least two candidate routes, determining at least two weights for the at least two segments of the candidate route; and
determining the optimal path based on the weights and the at least two candidate paths.
14. The method of claim 8, further comprising:
and instructing the user terminal to respond to the path planning request and display the optimal path on a user interface of the user terminal.
15. A non-transitory readable medium comprising at least one set of computer instructions which, when executed by at least one processor, implement the method of any one of claims 8-14.
16. A path planning device is characterized by comprising
At least one storage medium comprising computer instructions; and
at least one processor in communication with the storage medium, wherein the at least one processor is configured to implement the method of any one of claims 8-14 when executing the computer instructions.
CN201910469821.2A2019-05-312019-05-31System and method for path planningActiveCN110702129B (en)

Priority Applications (2)

Application NumberPriority DateFiling DateTitle
CN201910469821.2ACN110702129B (en)2019-05-312019-05-31System and method for path planning
PCT/CN2019/090340WO2020237710A1 (en)2019-05-312019-06-06Systems and methods for route planning

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201910469821.2ACN110702129B (en)2019-05-312019-05-31System and method for path planning

Publications (2)

Publication NumberPublication Date
CN110702129A CN110702129A (en)2020-01-17
CN110702129Btrue CN110702129B (en)2022-02-18

Family

ID=69193081

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201910469821.2AActiveCN110702129B (en)2019-05-312019-05-31System and method for path planning

Country Status (2)

CountryLink
CN (1)CN110702129B (en)
WO (1)WO2020237710A1 (en)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN111784475B (en)*2020-07-062024-09-13北京嘀嘀无限科技发展有限公司Order information processing method, system, device and storage medium
CN112036615A (en)*2020-08-172020-12-04上海钧正网络科技有限公司Vehicle scheduling method, device, equipment and storage medium
CN112380314B (en)*2020-12-042022-07-29腾讯科技(深圳)有限公司Road network information processing method and device, storage medium and electronic equipment
CN112748736B (en)*2020-12-222023-01-06潍柴动力股份有限公司 Vehicle driving assistance method and device
CN112884837B (en)*2021-03-162023-06-20百度在线网络技术(北京)有限公司Road positioning method, device, equipment and storage medium
CN113411375B (en)*2021-05-082023-07-18长沙智能驾驶研究院有限公司 Information processing method, device and computer storage medium
CN113358130B (en)*2021-05-312024-11-19中国银行股份有限公司 Method, device, equipment and readable storage medium for obtaining a planned path
CN113465612B (en)*2021-07-022024-03-26南京航空航天大学 A parallel path planning method and system based on double-layer index
CN113715020B (en)*2021-08-312023-03-21上海擎朗智能科技有限公司Robot traveling method, device, equipment and storage medium
CN113758494B (en)*2021-08-312023-07-28北京百度网讯科技有限公司Navigation path planning method, device, equipment and storage medium
CN114137973B (en)*2021-11-262024-05-07湖北亿纬动力有限公司Path planning method, device, equipment and storage medium
CN114295144B (en)*2021-12-302023-05-26海南大学DIKW-based vehicle path planning method
CN114701479A (en)*2022-03-252022-07-05合众新能源汽车有限公司 Method and device for energy management of a vehicle
CN114611341B (en)*2022-05-112022-08-02中移铁通有限公司广东分公司 Automatic planning method, device, equipment and storage medium for optical cable routing
CN115482660A (en)*2022-09-022022-12-16江苏中寰卫星导航通信有限公司Path determining method, device, equipment and storage medium
CN115476648B (en)*2022-09-202024-09-13中国第一汽车股份有限公司Control method and control device for vehicle air conditioner
CN115655301A (en)*2022-11-112023-01-31北京中交兴路车联网科技有限公司Vehicle navigation route selection method and device, electronic equipment and medium
CN115752502B (en)*2023-01-042023-05-02小米汽车科技有限公司Path screening method and device and electronic equipment
CN116358551A (en)*2023-03-132023-06-30深圳优地科技有限公司 Path decision method, device, electronic device, system and readable storage medium
CN116164769B (en)*2023-04-212023-08-22北京路凯智行科技有限公司Path planning method of mining unmanned vehicle and mining unmanned vehicle
CN120213075B (en)*2025-05-272025-08-29易诚高科(大连)科技有限公司 Multi-vehicle collaborative path planning method based on Internet of Vehicles
CN120258277B (en)*2025-06-032025-09-02青岛港国际股份有限公司Path planning method, system, terminal and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6134501A (en)*1997-08-292000-10-17Denso CorporationVehicle travel-route guidance apparatus with internal intersection discount feature
CN103245347A (en)*2012-02-132013-08-14腾讯科技(深圳)有限公司Intelligent navigation method and system based on road condition prediction
CN105588572A (en)*2014-10-022016-05-18财团法人资讯工业策进会Path planning system, path planning method and driving information updating method
CN109724611A (en)*2019-01-082019-05-07北京三快在线科技有限公司Paths planning method, device, electronic equipment and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6134501A (en)*1997-08-292000-10-17Denso CorporationVehicle travel-route guidance apparatus with internal intersection discount feature
CN103245347A (en)*2012-02-132013-08-14腾讯科技(深圳)有限公司Intelligent navigation method and system based on road condition prediction
CN105588572A (en)*2014-10-022016-05-18财团法人资讯工业策进会Path planning system, path planning method and driving information updating method
CN109724611A (en)*2019-01-082019-05-07北京三快在线科技有限公司Paths planning method, device, electronic equipment and storage medium

Also Published As

Publication numberPublication date
CN110702129A (en)2020-01-17
WO2020237710A1 (en)2020-12-03

Similar Documents

PublicationPublication DateTitle
CN110702129B (en)System and method for path planning
CN111858786B (en)System and method for providing time-of-flight confidence in path planning
US10701556B2 (en)Systems and methods for determining an affinity between users
US10979863B2 (en)Systems and methods for recommending a destination
CN109863526B (en)System and method for providing information for on-demand services
EP2771807B1 (en)Method and system for fleet navigation, dispatching and multi-vehicle, multi-destination routing
WO2018176849A1 (en)Systems and methods for allocating vehicles for on-demand services
CN111242148A (en)Artificial intelligence system and method for map binding
EP3586297A1 (en)Systems and methods for carpooling
CN110073426A (en)system and method for estimating time of arrival
CN112236787A (en)System and method for generating personalized destination recommendations
CN110832537A (en)Reward issuing system and method for online service
US9898876B2 (en)Method and apparatus for vehicle usage recording
CN112055867B (en)System and method for recommending personalized boarding locations
CN110782648A (en)System and method for determining estimated time of arrival
WO2019196509A1 (en)Systems and methods for determining prompting information
EP2771644B1 (en)Method and system for navigation using bounded geographic regions
CN111159317B (en)System and method for determining path topology relationships
CN111859171A (en) An information push method, device, electronic device and storage medium
US20220397408A1 (en)Content Delivery In Real-Time Guided Navigation
AU2013360865A1 (en)Method and apparatus for vehicle usage recording
CN111243265A (en)Method and system for determining regional traffic information
CN110785749A (en)System and method for generating wide tables
WO2020164161A1 (en)Systems and methods for estimated time of arrival (eta) determination
WO2019154208A1 (en)Systems and methods for determining operation strategy for service platform

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp