CN111338360B - Method and device for planning vehicle driving state - Google Patents

Method and device for planning vehicle driving state Download PDF

Info

Publication number
CN111338360B
CN111338360B CN202010416783.7A CN202010416783A CN111338360B CN 111338360 B CN111338360 B CN 111338360B CN 202010416783 A CN202010416783 A CN 202010416783A CN 111338360 B CN111338360 B CN 111338360B
Authority
CN
China
Prior art keywords
vehicle
driving
unmanned vehicle
avoidance
track
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
CN202010416783.7A
Other languages
Chinese (zh)
Other versions
CN111338360A (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.)
Tsinghua University
Beijing Sankuai Online Technology Co Ltd
Original Assignee
Tsinghua University
Beijing Sankuai Online Technology 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 Tsinghua University, Beijing Sankuai Online Technology Co Ltd filed Critical Tsinghua University
Priority to CN202010416783.7A priority Critical patent/CN111338360B/en
Publication of CN111338360A publication Critical patent/CN111338360A/en
Application granted granted Critical
Publication of CN111338360B publication Critical patent/CN111338360B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3492Special cost functions, i.e. other than distance or default speed limit of road segments employing speed data or traffic data, e.g. real-time or historical
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria

Abstract

The specification discloses a method and a device for planning a vehicle running state, wherein when the running state of an unmanned vehicle running according to a running track is planned, the running track is divided according to a specified position to obtain at least one sub-track, and in the subsequent step, an initial running state which provides reference for determining the running state of the unmanned vehicle running along the running track is obtained for a first sub-track in each sub-track. Further, since the first sub-trajectory is a part of the travel trajectory, the description uses the initial travel state as a reference for determining the travel state corresponding to the entire travel trajectory, and in the process of determining the travel state when the unmanned vehicle travels along the entire travel trajectory, the initial travel state is used as a local optimal solution, and a global optimal solution is searched on the basis of the local optimal solution, instead of searching the global optimal solution blindly and directionally, so that the method in the description can improve the efficiency of determining the travel state.

Description

Method and device for planning vehicle driving state
Technical Field
The present disclosure relates to the field of unmanned driving technologies, and in particular, to a method and an apparatus for planning a driving state of a vehicle.
Background
At present, vehicles with driving assistance functions and unmanned vehicles (hereinafter, collectively referred to as unmanned vehicles) are becoming one of the main directions for guiding the development of traffic technologies as important components of artificial intelligence technology, and their roles in social production and life are becoming prominent.
In the prior art, the unmanned vehicle can obtain various information of the environment through sensing the running environment, and then determine the running track of the unmanned vehicle at a future moment according to the obtained information. After that, the unmanned vehicle travels according to the travel track, and the destination can be reached.
However, there are various driving states that can be taken by driving along the driving trajectory, and for example, after the driving trajectory is determined, the unmanned vehicle may drive along the driving trajectory at a constant speed or at a uniform acceleration, and what driving state should be taken in particular to drive along the driving trajectory is a problem to be solved in order to achieve both driving efficiency and safety.
Disclosure of Invention
The embodiment of the specification provides a method and a device for planning a vehicle driving state, so as to partially solve the problems in the prior art.
The embodiment of the specification adopts the following technical scheme:
the present specification provides a method for planning a driving state of a vehicle, the method comprising:
acquiring a driving track planned for the unmanned vehicle;
determining the position of the specified type of the passing of the driving track as a specified position;
taking a track traveled by a first specified position reached by the unmanned vehicle when the unmanned vehicle travels along the travel track as a first sub-track;
planning to obtain a running state of the unmanned vehicle on the first sub-track according to the environmental information of the first designated position and the current running state of the unmanned vehicle, and taking the running state as an initial running state corresponding to the first sub-track;
and planning the running state of the unmanned vehicle when the unmanned vehicle runs on the running track according to the initial running state of the unmanned vehicle on the first sub-track.
Optionally, planning to obtain a driving state of the unmanned vehicle on the first sub-trajectory according to the environmental information of the first designated location and the current driving state of the unmanned vehicle, specifically including:
determining the current driving state of the front vehicle;
determining a following running state when the unmanned vehicle runs along with the front vehicle in a following mode according to the current running state of the unmanned vehicle and the current running state of the front vehicle;
according to the environmental information of a first designated position, identifying obstacles located in the designated area range of the first designated position;
judging whether collision with at least one obstacle occurs when the vehicle runs in the following running state according to the recognized motion state of each obstacle;
if so, determining an avoidance running state for avoiding each obstacle in an avoidance mode according to the current running state of the unmanned vehicle and the motion state of each obstacle, and taking the avoidance running state as the running state of the unmanned vehicle on the first sub-track;
and if not, taking the following running state as the running state of the unmanned vehicle on the first sub-track.
Optionally, determining a following driving state when the vehicle follows the preceding vehicle in the following mode specifically includes:
acquiring a following process model which is preset aiming at the following mode, wherein the following process model is formed by combining a plurality of following subprocess models according to a first appointed sequence; each car following subprocess model corresponds to a preset acceleration;
determining an algorithm for calculating the duration corresponding to each following vehicle subprocess model according to the current running state of the unmanned vehicle and the current running state of the preceding vehicle;
determining the duration corresponding to each car following subprocess model in the car following subprocess models through the determined algorithm;
determining the following driving state of the unmanned vehicle when the unmanned vehicle drives in the following mode according to the determined duration corresponding to each following sub-process model: and according to the first appointed sequence, sequentially driving the duration corresponding to each following vehicle subprocess model at the acceleration corresponding to each following vehicle subprocess model.
Optionally, determining an avoidance driving state for avoiding the obstacles in an avoidance mode specifically includes:
acquiring an avoidance process model preset aiming at the avoidance mode, wherein the avoidance process model is formed by combining a plurality of avoidance sub-process models according to a second specified sequence; each avoidance subprocess model corresponds to a preset acceleration;
determining an algorithm for calculating the duration corresponding to each avoidance subprocess model according to the current running state of the unmanned vehicle, the motion state of each obstacle and the current running state of the front vehicle;
aiming at each avoidance subprocess model in the avoidance process model, determining the duration corresponding to the avoidance subprocess model through the determined algorithm;
determining an avoidance driving state of the unmanned vehicle when the unmanned vehicle drives in an avoidance mode according to the determined duration corresponding to each avoidance subprocess model as follows: and according to the second designated sequence, sequentially driving the duration corresponding to each avoidance subprocess model at the acceleration corresponding to each avoidance subprocess model.
Optionally, planning a driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the initial driving state of the unmanned vehicle on the first sub-track specifically includes:
when the number of the specified positions of the passing of the running track is more than two, initializing a rapid search random tree (RRT) according to the initial running state of the unmanned vehicle on the first sub-track;
and planning the driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the initialized RRT.
Optionally, initializing a fast search random tree RRT according to an initial driving state of the unmanned vehicle on the first sub-trajectory, specifically including:
determining the current running state of a preceding vehicle and the current motion state of an obstacle within the specified field range of the running track;
establishing a search space according to the current running state of the front vehicle and the running track of the unmanned vehicle;
and mapping the initial driving state to the search space to be used as a search tree, mapping the current motion state of the obstacle in the specified field range of the driving track to the search space to be used as the obstacle in the search space, and obtaining the initialized RRT.
Optionally, planning a driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the initialized RRT includes:
determining a number of nodes on the search tree;
for any node, determining an end point after a specified step length is extended from the node to a random direction;
judging whether the end point meets a preset condition, wherein the preset condition is as follows: a connecting line from the node to the terminal does not pass through an obstacle in the search space and does not exceed the search space;
if so, taking the terminal as a node, updating the search tree according to a connecting line from the node to the terminal, and continuously determining the terminal according to the updated search tree until at least one terminal falling into a specified area in the search space is determined, and planning a driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the terminal falling into the specified area in the search space;
and if not, extending the nodes again.
Optionally, when it is determined that the endpoint does not satisfy the preset condition, the method further includes:
recording the extension from the node as failure;
updating the recorded number of times of failure to extend from the node;
when the recorded number of times exceeds a preset number of times, no extension is performed from the node.
Optionally, planning a driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the end point falling into the designated area in the search space specifically includes:
determining, on the search tree, a trajectory from a root node of the search tree to a termination point falling within a specified region in the search space;
respectively determining a driving state corresponding to each track determined on the search tree as an alternative driving state when the unmanned vehicle drives on the driving track;
determining a travel efficiency of the unmanned vehicle when traveling on the travel trajectory in each of the candidate travel states;
and determining the candidate running state with the highest running efficiency as the running state of the unmanned vehicle when the unmanned vehicle runs on the running track.
The device for planning the vehicle running state provided by the specification comprises:
the system comprises an acquisition module, a control module and a display module, wherein the acquisition module is used for acquiring a driving track planned for the unmanned vehicle;
the specified position determining module is used for determining the position of a specified type of the passing of the driving track as a specified position;
the first sub-track determining module is used for taking a track which is driven by a first specified position and is reached when the unmanned vehicle drives along the driving track as a first sub-track;
an initial driving state determining module, configured to plan to obtain a driving state of the unmanned vehicle on the first sub-trajectory according to the environmental information of the first specified location and a current driving state of the unmanned vehicle, where the driving state is used as an initial driving state corresponding to the first sub-trajectory;
and the running state determining module is used for planning the running state of the unmanned vehicle when the unmanned vehicle runs on the running track according to the initial running state of the unmanned vehicle on the first sub-track.
The present description provides a computer-readable storage medium, which stores a computer program that, when being executed by a processor, implements a method of planning a driving state of a vehicle as described above.
The present specification provides an unmanned vehicle, comprising a memory, a processor and a computer program stored on the memory and operable on the processor, wherein the processor implements the above method for planning the driving state of the vehicle when executing the program.
The embodiment of the specification adopts at least one technical scheme which can achieve the following beneficial effects:
in the method and the device for planning the vehicle running state in the embodiment of the specification, when the running state of the unmanned vehicle running along the running track is planned, the running track is divided according to the specified position to obtain at least one sub-track, and in the subsequent step, an initial running state which provides reference for determining the running state of the unmanned vehicle running along the running track is obtained for a first sub-track in each sub-track. Further, since the first sub-trajectory is a part of the travel trajectory, the description uses the initial travel state as a reference for determining the travel state corresponding to the entire travel trajectory, and in the process of determining the travel state when the unmanned vehicle travels along the entire travel trajectory, the initial travel state may be used as a local optimal solution, and a global optimal solution is searched on the basis of the local optimal solution, instead of searching the global optimal solution blindly and directionless, so that the method in the description can greatly improve the efficiency of determining the travel state.
Drawings
The accompanying drawings, which are included to provide a further understanding of the specification and are incorporated in and constitute a part of this specification, illustrate embodiments of the specification and together with the description serve to explain the specification and not to limit the specification in a non-limiting sense. In the drawings:
fig. 1 is a process for planning a driving state of a vehicle according to an embodiment of the present disclosure;
fig. 2a is an exemplary scenario diagram of a process for planning a driving state of a vehicle according to an embodiment of the present disclosure;
FIG. 2b is a schematic diagram of another exemplary scenario of a process for planning a driving state of a vehicle according to an embodiment of the present disclosure;
fig. 3 is a process for determining an initial driving state according to an embodiment of the present disclosure;
fig. 4a is a process for determining a following driving state when the following driving mode is used for driving along with the preceding vehicle according to the embodiment of the present disclosure;
fig. 4b is a schematic structural diagram of a car following process model provided in an embodiment of the present disclosure;
fig. 5a is a process for determining a following vehicle driving state when the following vehicle drives in an avoidance mode along with the preceding vehicle according to the embodiment of the present disclosure;
fig. 5b is a schematic structural diagram of an avoidance process model provided in an embodiment of the present disclosure;
FIG. 6 is a process for establishing an initial fast search random tree RRT according to an embodiment of the present disclosure;
FIG. 7 is a process for searching in the search space provided by an embodiment of the present specification;
FIG. 8 is a schematic diagram of a search space provided by an embodiment of the present disclosure;
fig. 9 is a schematic structural diagram of an apparatus for planning a driving state of a vehicle according to an embodiment of the present disclosure;
fig. 10 is a schematic partial structural diagram of an unmanned vehicle corresponding to fig. 1 provided in an embodiment of the present disclosure.
Detailed Description
In order to make the objects, technical solutions and advantages of the present disclosure more clear, the technical solutions of the present disclosure will be clearly and completely described below with reference to the specific embodiments of the present disclosure and the accompanying drawings. It is to be understood that the embodiments described are only a few embodiments of the present disclosure, and not all embodiments. All other embodiments obtained by a person skilled in the art based on the embodiments in the specification without making any creative effort belong to the protection scope of the specification.
The technical solutions provided by the embodiments of the present description are described in detail below with reference to the accompanying drawings.
Fig. 1 is a process for planning a vehicle driving state provided in an embodiment of the present disclosure, which may specifically include the following steps:
s100: a planned driving trajectory for the unmanned vehicle is obtained.
For convenience of description, the "vehicle" is hereinafter referred to as an "unmanned vehicle".
In this specification, the acquisition of the travel trajectory may be real-time acquisition or may be acquired at a preset time interval. The operation of "acquiring" the driving track may be an operation of "extracting" a driving track that has been planned in a driving track planning module for planning the driving track; or a "planning" operation for a route to be traveled, based on information on the environment in which the vehicle is located and the destination to which the vehicle is to arrive.
The driving track planning module can be arranged in the vehicle and also can be arranged in a cloud server in communication connection with the vehicle.
The vehicle in this specification may be a vehicle having a driving assistance function and/or an unmanned vehicle.
S102: and determining the position of the specified type of the passing of the driving track as a specified position.
The specified type can be determined in a human preset mode. The specified type may be used to characterize the location of the vehicle that is of most interest for the present trip.
For example, for a vehicle traveling on the premise of safe driving, each position where the vehicle may pass during traveling may be previously classified into a high risk type, a medium risk type, and a low risk type according to the degree of safety risk that the vehicle may face while traveling at the position.
In order to avoid the risk to the minimum extent, a high risk type may be used as a designated type, and each position (for example, a position such as an intersection) covered by the high risk type may be used as a designated position. In order to improve the safety of driving to a greater extent, the high risk type and the medium risk type may be collectively designated as designated types, and the positions included in the high risk type and the positions included in the medium risk type (for example, positions of a curve, a speed bump, and the like) may be collectively designated as designated positions.
In addition, the designated position is not limited to the position inherent to the road such as the aforementioned intersection, curve, and the like, but the designated position may include a transportation facility temporarily provided on the road, and for example, a position where a warning mark for indicating that the traffic accident scene is ahead is located may be used as the designated position.
The number and distribution of the designated positions on which the travel track passes may be determined based on at least one of the environment information, the position of the vehicle in the environment, and the travel track. Wherein the position of the vehicle in the environment may be obtained by a positioning device (e.g., GPS, etc.). The environment information may be obtained by collecting information about the environment in which the vehicle is located by a collecting device (e.g., radar, camera, etc.). The environment information may also be obtained from a preset environment map when the specified position is a unique position in the road.
Then, the process of determining the designated location may specifically be: acquiring environment information of an environment where the running track passes according to the running track; identifying positions in the environment according to the environment information; and determining the designated position in each position of the environment according to a preset designated type determination rule.
S104: and taking the track which is driven by the first appointed position reached by the unmanned vehicle when the unmanned vehicle drives along the driving track as a first sub-track.
As can be seen from the foregoing, the designated position is a position of great concern during the vehicle driving process, and when the designated positions along the driving track are plural, the plural designated positions divide the driving track into plural segments connected in sequence, each segment being a sub-track.
For example, when an intersection is taken as a designated position, in the scene shown in fig. 2a, the number of designated positions where the travel track passes through is two, and the two designated positions divide the travel track into three segments. And a section between the first designated position and the current position of the vehicle is the first sub-track. By analogy, a section between the first designated position and the second designated position is a second sub-track; and a section between the second designated position and the end point of the driving track is a third sub-track.
In the process in the present specification, the travel track is divided into one or more sub-tracks according to the designated positions along which the vehicle passes, so that the difference in the degree of attention of the vehicle to each position in the travel track during the travel process can be reflected in the travel state corresponding to the travel track, and the purpose of achieving the travel of the vehicle at this time with high quality when the vehicle travels according to the travel state can be favorably achieved.
S106: and planning to obtain the running state of the unmanned vehicle on the first sub-track according to the environmental information of the first designated position and the current running state of the unmanned vehicle, and taking the running state as the initial running state corresponding to the first sub-track.
In this specification, the driving state may be used to characterize the dynamic characteristics of the vehicle while driving. The driving state may include at least one of speed, speed direction, acceleration, and angular acceleration, and the driving state of the vehicle on the first sub-trajectory may be: and the running state of the vehicle at each position on the first character track.
In order to make the description more concise, the following description will be given taking as an example a case where the running state includes speed and acceleration.
In an optional implementation scenario of this specification, the initial driving state corresponding to the first sub-trajectory is: and the driving state of the vehicle which is safest and most efficient when the vehicle drives according to the first sub-track is the initial driving state corresponding to the first sub-track.
As can be seen from the foregoing, the precondition that the vehicle can reach the second sub-trajectory and the third sub-trajectory is: the vehicle can smoothly complete the traveling on the first sub-trajectory. The quality of the driving state of the first sub-trajectory is more critical with respect to the driving states of the other sub-trajectories.
Thus, the process in this specification first determines an initial driving state corresponding to the first sub-trajectory, and determines a driving state when the vehicle is driven along the complete driving trajectory with reference to the initial driving state.
S108: and planning the running state of the unmanned vehicle when the unmanned vehicle runs on the running track according to the initial running state of the unmanned vehicle on the first sub-track.
After the initial driving state of the vehicle on the first sub-track is obtained, the overall driving track can be subjected to global driving state planning by taking the initial driving state as a reference. The driving state obtained in this step is the safest and most efficient driving state that the vehicle can obtain by driving along the entire driving trajectory.
It can be seen that the driving state planning in this step is not only for the other sub-trajectories except for the first sub-trajectory, but also for the first sub-trajectory. That is, the portion of the travel state of the travel locus obtained in this step corresponding to the first sub-locus may be different from the initial travel state corresponding to the first sub-locus determined in the above step.
The following describes in detail a process of planning a driving state of a vehicle described in this specification.
In order to make the content of the present specification clearer and more concise, the following will separately describe different stages of the process in the present specification with respect to two parts, namely "determining the initial driving state corresponding to the first sub-trajectory" and "determining the driving state corresponding to the driving trajectory".
Firstly, determining an initial driving state corresponding to the first sub-track.
As can be seen from the foregoing, the first sub-trajectory is a primary condition for the vehicle to complete the entire travel trajectory, and then, the information corresponding to the first sub-trajectory and capable of affecting the travel of the vehicle is comprehensively and comprehensively processed, so that not only the efficiency and safety of the vehicle traveling along the first sub-trajectory can be improved, but also the efficiency and safety of the subsequent vehicle traveling along other sub-trajectories can be improved.
In the process in this specification, after the first sub-trajectory is divided from the travel trajectory, since the length of the first sub-trajectory is shorter than the length of the entire travel trajectory, the information processing capability available in the information processing process for the first sub-trajectory is sufficient, and more environmental information and vehicle information can be used as a basis for determining the initial travel state corresponding to the first sub-trajectory, so that the information processing for the first sub-trajectory can obtain an initial travel state with higher quality and better suitability for the first sub-trajectory.
As shown in fig. 3, the process of determining the initial driving state may specifically include the following steps:
s300: and determining the current running state of the front vehicle.
In an actual scene, road resources available for vehicles to travel in the environment are limited, and in order to avoid traffic congestion and reduce risks faced by the vehicles during traveling, when other vehicles (the other vehicles may be human-driven vehicles, vehicles with an auxiliary driving function, unmanned vehicles, etc.) traveling in the same direction exist in the traveling direction of the vehicles, the vehicles travel in a manner of following the other vehicles. At this time, the other vehicle located in the vehicle traveling direction is the preceding vehicle. If there are a plurality of other vehicles traveling in the same direction as the vehicle in the environment, the other vehicle closest to the vehicle in the traveling direction of the vehicle is set as a preceding vehicle. The driving mode of following the front vehicle is the following mode.
The process of determining the preceding vehicle may specifically be: determining other vehicles running in the same direction as the vehicle in the environment according to the environment information; and comparing the distance between each other vehicle and the vehicle, and taking the other vehicle corresponding to the minimum distance as the front vehicle of the vehicle. Then, the current running state of the front vehicle can be determined and/or the future running state of the front vehicle can be predicted according to the environment information.
The process of determining the preceding vehicle and/or the process of determining the driving state of the preceding vehicle may be executed in real time or in stages during the driving of the vehicle.
S302: and determining a following running state when the unmanned vehicle runs along with the front vehicle in a following mode according to the current running state of the unmanned vehicle and the current running state of the front vehicle.
In order to improve the driving effect when the vehicle drives in the following mode, the driving state corresponding to the following model can be determined according to the actual situation.
In this specification, the following mode may be a default running mode during running of the vehicle, and the vehicle may always run in the following mode under a condition that an unnecessary situation occurs.
Optionally, when the vehicle is in the following mode, the vehicle may obtain the driving states of the vehicles other than the preceding vehicle in the environment by referring to the driving states of the preceding vehicle, and the vehicle does not need to process data of the driving states of the vehicles other than the preceding vehicle in the environment in the process of planning the driving track, so as to effectively reduce the pressure of data processing and improve the efficiency of determining the driving states.
S304: and identifying obstacles positioned in the designated area of the first designated position according to the environmental information of the first designated position.
The first designated position is the position where the vehicle is most interested when traveling along the first sub-trajectory, and the condition of the first designated position largely determines which traveling state the vehicle should travel along the first sub-trajectory.
The condition of the first designated location is usually mainly dependent on the obstacles in the first designated location and the movement state of the obstacles. In this step, the obstacles to be noted include: the first designated location designates each other vehicle and pedestrian within the area.
In the scenario shown in fig. 2B, the positions of the other vehicle a and the other vehicle B both fall within the specified area, and both the other vehicle a and the other vehicle B may be used as the obstacle in this step. Although the other vehicle C has an influence on the entire travel track, the position of the other vehicle C is not within the specified range, and the other vehicle C has a small influence on the risk of the vehicle traveling to the first specified position, and is not an obstacle involved in determining the first sub-track. Similarly, the pedestrian E, the pedestrian F, the pedestrian G, and the pedestrian H are all obstacles in this step, and the pedestrian D is not an obstacle in this step.
Optionally, the specific step of identifying the obstacle located within the designated area of the first designated location may be: according to the environment information of the first designated position, identifying each moving object located at the first designated position, and determining whether the moving object is located or is about to be located in the range of the designated field according to the position of the moving object, the motion state of the motion and a preset designated field range aiming at each moving object.
Therefore, the first designated position designating area can be used for determining a part of moving objects capable of influencing the driving of the vehicle in all the moving objects located at the first designated position as the obstacles in the step. The designated area can be obtained according to a preset designated area determination rule. For example, the center (optionally, a geometric center) of the first designated location may be used as a circle center, a circle is made with a preset designated radius, and the obtained circular area is the designated area of the first designated location. Alternatively, the designated radius may be determined according to the current driving state of the vehicle, and if the current driving speed of the vehicle is higher, the value of the designated radius is larger.
S306: and judging whether the vehicle collides with at least one obstacle when the vehicle runs in the following running state according to the recognized motion state of each obstacle.
The process of identifying the motion state of the obstacle may be the same as or similar to the existing motion state identification method. After the motion state of each obstacle is identified, it is determined whether there is a risk of collision with the obstacle according to the motion state of the obstacle, the first sub-trajectory, and the following driving state determined in step S302.
Optionally, the determining process may specifically be: for each obstacle identified, determining the motion track of the obstacle (preferably, determining the motion track of the obstacle in the specified area) according to the motion state of the obstacle. Judging whether the motion track is intersected with a first running track of the vehicle, and if not, determining that the obstacle and the vehicle cannot collide; if the difference value is larger than the preset threshold value, it is determined that the obstacle and the vehicle cannot collide, and if the difference value is smaller than the preset threshold value, it is determined that the obstacle and the vehicle collide.
It can be seen that, when this step is executed, the vehicle is still in the following mode, and the planning of the current driving state of the vehicle is still based on the driving state of the preceding vehicle. In general, each vehicle in a traffic environment can comply with traffic regulations when driving, and therefore, the driving state of each vehicle has a certain degree of predictability, so that when the preceding vehicle plans its own driving state, the preceding vehicle can foresee the future driving state of other vehicles in the environment, and the preceding vehicle can reflect the influence of other vehicles on the preceding vehicle in the planned own driving state. When the vehicle executes the following mode, the running state of the front vehicle is used for reference to a certain degree, so that the vehicle can obtain the running states of other vehicles in the environment through the running state of the front vehicle used for reference. Since the preceding vehicle inevitably avoids collision with other vehicles in the environment as much as possible when planning its own driving state, the vehicle can also avoid collision with other vehicles in the environment to a greater extent when executing the following mode.
However, the predictability of the motion state of pedestrians in the environment is poor, so that pedestrians in a specified field become a main cause of collision. Alternatively, in order to simplify the process of the determination and improve the efficiency of the determination, only pedestrians in the specified area range may be used as the obstacle when determining the obstacle, and even if there is another vehicle located in the specified area range, the another vehicle is not the obstacle.
S308: if the unmanned vehicle collides with at least one obstacle, determining an avoidance running state for avoiding each obstacle in an avoidance mode according to the current running state of the unmanned vehicle and the motion state of each obstacle, and taking the avoidance running state as the running state of the unmanned vehicle on the first sub-track; and if not, taking the following running state as the running state of the unmanned vehicle on the first sub-track.
As can be seen from the foregoing, the following mode and the avoidance mode are important travel modes of the vehicle when determining a travel state in the present specification, and how to determine the travel states of the two travel modes will be described.
(1) Determining a following traveling state when traveling following the preceding vehicle in a following mode.
As shown in fig. 4a, the process of determining the following vehicle running state when running following the preceding vehicle in the following vehicle mode may be:
s400: acquiring a following process model which is preset aiming at the following mode, wherein the following process model is formed by combining a plurality of following subprocess models according to a first appointed sequence; and each car following subprocess model corresponds to a preset acceleration.
The following process model in the present specification is used to determine a following driving state when the vehicle follows the preceding vehicle in a following mode and travels according to the first sub-trajectory. The following process model can comprise a plurality of preset following subprocess models, each following subprocess model corresponds to a following vehicle running state, and the track of the vehicle running according to the following vehicle running state corresponds to a part of the first subprocess.
And arranging the driving states of the following vehicles corresponding to the following vehicle process models according to a preset first appointed sequence to obtain the driving states of the following vehicles.
As can be seen, the first specified order may be used to characterize the order in which the vehicle performs the following vehicle driving states while the vehicle is driving in the following vehicle driving state. The first designated order may be set according to an actual usage scenario.
The acceleration of the driving state of the following vehicles corresponding to each following vehicle process model is not completely the same. The first specified order may be used to characterize a law of acceleration changes of the vehicle while traveling in a following travel state.
In an alternative embodiment of the present disclosure, as shown in fig. 4b, the following process model includes, in a first designated order: the system comprises an acceleration car following subprocess model, a constant speed car following subprocess model and a deceleration car following subprocess model.
The number of the following sub-process models included in the following process model is not limited in the specification.
S402: and determining an algorithm for calculating the duration corresponding to each following vehicle subprocess model according to the current running state of the unmanned vehicle and the current running state of the preceding vehicle.
And determining the following process model, namely determining the type of the following subprocess model contained in the following process model, the sequence of the following subprocess model and the corresponding acceleration when each following subprocess model is calculated. Then, an algorithm of the duration corresponding to each following vehicle subprocess model needs to be determined for each following vehicle subprocess model, and the following vehicle running state can be obtained through the following vehicle subprocess model.
In an alternative embodiment of the present specification, the process of determining the algorithm is: firstly, determining a following distance threshold value S according to the current running state of the vehicle, the current running state of the preceding vehicle and a preset running state extreme value of the vehiclepThe following distance threshold value SpCan be calculated by the following formula:
Figure 117687DEST_PATH_IMAGE001
formula (1)
In the formula: a isuIs the maximum acceleration of the vehicle, which may be a preset value; a isdIs the minimum acceleration of the vehicle, which may be a preset value; v. ofuIs the maximum speed of the vehicle, which can be a preset value; v. of0Is the current speed of the vehicle; v. ofcoIs the current speed of the leading vehicle.
Alternatively, the following algorithm may be obtained by determining the sub-model by the following algorithm shown in fig. 4 b.
For increasing the applicability and effectiveness of determined algorithmsIn the present embodiment, the process is performed based on the following distance threshold SpTwo sets of algorithms for determining the duration corresponding to each following vehicle subprocess model are designed. The two sets of algorithms of the duration corresponding to the respective car following subprocess models are explained respectively.
1) A car following first algorithm.
The algorithm is applicable to the following situations: sco-Ds≥Sp
Still taking the following process model shown in fig. 4b as an example for explanation, the acceleration preset by the acceleration following subprocess model is the maximum acceleration of the vehicle, and the acceleration preset by the deceleration following subprocess model is the minimum acceleration of the vehicle.
Obtaining a following distance threshold value SpThen, the distance S between the vehicle and the front vehicle is determinedcoAt a predetermined safety distance DsThe difference of (a). The difference value is compared with the following distance threshold value SpA comparison is made. If the difference value is larger than the following distance threshold value SpI.e. Sco-Ds≥SpThen, the algorithm for calculating the duration corresponding to each following vehicle subprocess model (the duration between the starting time and the ending time of the following vehicle subprocess model can be taken as the duration corresponding to the following vehicle subprocess model) can be represented by the following formula:
Figure 565986DEST_PATH_IMAGE002
formula (2)
In this description, when each equation takes the current time as 0 time in the calculation, the equation (2) is: t is tf 1(1)The end time of the driving of the acceleration vehicle following subprocess model in the vehicle following first algorithm is used; t is tf 2(1)The end time of the driving of the uniform speed car following subprocess model in the car following first algorithm is used; t is tf 3(1)The end time of the driving of the deceleration car following subprocess model in the car following first algorithm is used; scoIs the distance between the front vehicle and the vehicle.
2) And a second algorithm of following.
The algorithm is applicable to the following situations: sco-Ds<Sp
If the difference value is smaller than the following distance threshold value SpI.e. Sco-Ds<SpAccording to the difference value and the current speed v of the vehicle0And the current speed v of the preceding vehiclecoDetermining the standard speed v of the following modesThen according to the standard speed vsAnd calculating the duration corresponding to each following vehicle subprocess model.
Wherein the standard speed vsCan be calculated by the following formula:
Figure 876882DEST_PATH_IMAGE003
formula (3)
The end time of the vehicle running on each following vehicle subprocess model can be represented by the following formula:
Figure 272091DEST_PATH_IMAGE004
formula (4)
In the formula: t is tf 1(2)The end time of the driving of the acceleration vehicle following subprocess model in the vehicle following second algorithm is used; t is tf 2(2)The end time of the driving of the uniform speed car following subprocess model in the car following second algorithm is used; t is tf 3(2)And the end time of the driving of the deceleration vehicle following subprocess model in the vehicle following second algorithm.
S404: and aiming at each car following subprocess model in the car following process models, determining the duration corresponding to the car following subprocess model through a determined algorithm for calculating the duration corresponding to each car following subprocess model.
On the basis of the algorithm for obtaining the duration corresponding to each car-following subprocess model, the current speed and other data of the vehicle can be substituted into each car-following subprocess model to obtain the duration of the vehicle running under the constraint of the car-following subprocess model, namely the duration corresponding to the car-following subprocess model.
S406: determining the following driving state of the unmanned vehicle when the unmanned vehicle drives in the following mode according to the determined duration corresponding to each following sub-process model: and according to the first appointed sequence, sequentially driving the duration corresponding to each following vehicle subprocess model at the acceleration corresponding to each following vehicle subprocess model.
As can be seen from the foregoing, the process of determining the driving state of the following vehicle in this specification refers to the driving state of the preceding vehicle to a certain extent, so that the driving state decision made by the preceding vehicle to the preceding vehicle can be partially reflected in the driving state of the following vehicle of the vehicle, which is beneficial to saving the computing power and improving the efficiency of data processing. In addition, the design of the following sub-process model and the corresponding algorithm thereof can enable the vehicle to enter the running state of the following front vehicle as soon as possible when the vehicle runs according to the running state of the following front vehicle, and can improve the running safety to a greater extent.
(2) And determining an avoidance driving state for avoiding each obstacle in an avoidance mode.
As shown in fig. 5a, the process of determining the avoidance driving state for avoiding the obstacles in the avoidance mode may be:
s500: acquiring an avoidance process model preset aiming at the avoidance mode, wherein the avoidance process model is formed by combining a plurality of avoidance sub-process models according to a second specified sequence; and each avoidance subprocess model corresponds to a preset acceleration.
Similar to the aforementioned idea of determining the following vehicle running state when the following vehicle runs along with the preceding vehicle in the following vehicle mode, the avoidance process model in this specification is used to determine the avoidance running state when the vehicle avoids the pedestrian in the avoidance mode and runs according to the first sub-track. The avoidance process model can comprise a plurality of preset avoidance subprocess models, each avoidance subprocess model corresponds to an avoidance subprocess running state, and a track of the vehicle running according to the avoidance subprocess running state corresponds to a part of the first subprocess track.
The avoidance sub-driving states corresponding to the avoidance sub-process models are arranged according to a preset second designated sequence, and the avoidance driving states can be obtained.
The second designated sequence may be used to characterize the order in which the vehicle executes the respective avoidance sub-travel states while traveling in the avoidance travel state. The second designated order may be set according to an actual usage scenario.
At least two of the avoidance subprocess models adopt different accelerated speeds when determining the corresponding avoidance subprocess running state. The second predetermined sequence can be used to characterize the law of the acceleration change of the vehicle when driving in the avoidance driving state.
As shown in fig. 5b, in an alternative embodiment of the present disclosure, the avoidance process model includes, in a predetermined second designated order: the system comprises a deceleration first avoidance subprocess model, a constant speed first avoidance subprocess model, an acceleration avoidance subprocess model, a constant speed second avoidance subprocess model and a deceleration second avoidance subprocess model.
When the vehicle avoids the obstacle, the vehicle firstly decelerates and runs according to the first avoidance subprocess model to prepare for avoiding the obstacle. And then, the vehicle runs according to each avoidance subprocess model in a second designated sequence, and the frequent motion state adjustment realized by the avoidance subprocess models is favorable for flexibly avoiding obstacles in the running process of the vehicle. Furthermore, an accelerating avoidance subprocess model is properly arranged in the second designated sequence, so that the driving efficiency can be ensured while avoiding the obstacle.
The number of avoidance subprocess models included in the avoidance process model and/or the number of avoidance subprocess models capable of obtaining an effective avoidance subprocess running state in the actual use process are not limited in the present specification.
The avoidance process model in this specification may have a relatively fixed model structure, and the avoidance running state corresponding to the avoidance process model may be adjusted by controlling the effectiveness of the avoidance sub-running state corresponding to each avoidance sub-process model.
For example, in the case that the number of obstacles in the environment is large and/or the distribution of the obstacles is relatively scattered, if the vehicle is accelerated to increase the risk of collision, the avoidance sub-driving state corresponding to the accelerated avoidance sub-process model may be set as the invalid output (which may be implemented by setting the duration corresponding to the avoidance sub-driving state to 0).
S502: and determining an algorithm for calculating the duration corresponding to each avoidance subprocess model according to the current running state of the unmanned vehicle, the motion state of each obstacle and the current running state of the front vehicle.
In an actual scene, a plurality of obstacles which may collide with the vehicle may exist in the environment, and in order to reduce the data processing amount, one or more obstacles may be selected from the obstacles (for example, the obstacle closest to the vehicle) according to a preset screening rule, and the obstacle may be used as a basis for determining an avoidance driving state. All obstacles in the specified area as shown in fig. 2b may also be used as a basis for determining the avoidance driving state.
Specifically, all obstacles in the designated area may be sorted from small to large according to the distance between the obstacle and the current vehicle, so as to obtain a sorted obstacle sequence. And determining the driving state under the influence of the obstacle according to the distance between the obstacle and the vehicle and the expected time of the obstacle leaving the designated field in sequence aiming at each obstacle in the obstacle sequence, and taking the driving state corresponding to each avoidance subprocess model obtained by the obstacle in the front sequence as the initial driving state of the obstacle in the back sequence when calculation is carried out according to each avoidance subprocess model in the two obstacles adjacent to each other in the sequence until all the obstacles are traversed.
Alternatively, the back-off algorithm may be derived from the back-off algorithm determination submodel shown in FIG. 5 b.
Hereinafter, the present specification will describe all obstacles in a specific field as an example of a basis for determining an avoidance traveling state.
By using the avoidance process model shown in fig. 5b, n obstacles are specified in the range of the designated area, and taking the ith obstacle of the n obstacles as an example, the process of determining the algorithm for the ith obstacle may be: firstly, obtaining all parameters required by determining the algorithm according to a preset formula, and then determining the algorithm for the ith obstacle according to the obtained parameters.
The parameters and the determination method are as follows:
first reference velocity ve p1
Figure 368354DEST_PATH_IMAGE005
Formula (5)
In the formula: t is tiThe moment when the ith barrier leaves the designated field can be obtained by prediction according to the environmental information; siThe distance between the ith obstacle and the vehicle can be obtained according to the environmental information;
second reference velocity ve p2
Figure 190817DEST_PATH_IMAGE006
Formula (6)
First reference velocity va
Figure 989008DEST_PATH_IMAGE007
Formula (7)
Second reference velocity vb
Figure 719067DEST_PATH_IMAGE008
Formula (8)
Third reference velocity vc
Figure 387946DEST_PATH_IMAGE009
Formula (9)
First of allReference time ta
Figure 912468DEST_PATH_IMAGE010
Formula (10)
Second reference time tb:,
Figure 666797DEST_PATH_IMAGE011
Formula (11)
Third reference time tc
Figure 184235DEST_PATH_IMAGE012
Formula (12)
First reference distance sa
Figure 238779DEST_PATH_IMAGE013
Formula (13)
Second reference distance sb
Figure 668623DEST_PATH_IMAGE014
Formula (14)
Third reference distance sc
Figure 441407DEST_PATH_IMAGE015
Formula (15)
In the formula: v. of0 iThe speed of the vehicle corresponding to each avoidance subprocess model obtained according to the i-1 th obstacle is used as the initial speed of the vehicle when the calculation is carried out on the i-th obstacle. When i =1, v0 i= v0
Fourth reference distance sd
Figure 716531DEST_PATH_IMAGE016
Formula (16)
Fifth reference distance se
Figure 561601DEST_PATH_IMAGE017
Formula (17)
Sixth reference distance sf
Figure 427926DEST_PATH_IMAGE018
Formula (18)
A seventh reference distance sg
Figure 156847DEST_PATH_IMAGE019
Formula (19)
In the process in this embodiment, six sets of algorithms for determining the end time of the vehicle running in each avoidance subprocess model are designed according to the magnitude relationship among the parameters, and the six sets of algorithms are described separately.
1) The first algorithm is avoided.
The algorithm may be applied to any of the following cases:
Figure 766820DEST_PATH_IMAGE020
ta≥tiand s isa≥si
Figure 264798DEST_PATH_IMAGE021
ta<ti, ta>tb,sc<siAnd s isa≥si
In the avoidance first algorithm, the deceleration first avoidance subprocess model and the acceleration avoidance subprocess model both correspond to an effective avoidance subprocess running state, and the other subprocess models correspond to an ineffective avoidance subprocess running state.
The speed v of the vehicle at the end of the duration corresponding to the deceleration first avoidance sub-process model can be calculated by equation (20)1(1)Speed v of the vehicle at the end of the duration corresponding to the accelerated avoidance subprocess model3(1). Then, according to v1(1)And v3(1)The end time of the vehicle running on each avoidance subprocess model is calculated by the formula (21).
Figure 567603DEST_PATH_IMAGE022
Formula (20)
Figure 518241DEST_PATH_IMAGE023
Formula (21)
In the formula: t is te 1(1)In the avoidance first algorithm, the duration corresponding to the end time of the driving of the first avoidance subprocess model is reduced; t is te 2(1)The method comprises the following steps that in a first avoidance algorithm, the driving end time of a first avoidance subprocess model is carried out at a constant speed; t is te 3(1)In the avoidance first algorithm, the end time of the driving of the avoidance subprocess model is accelerated; t is te 4(1)The method comprises the following steps that in a first avoidance algorithm, the driving of a second avoidance subprocess model is finished at a constant speed; t is te 5(1)The method is used for reducing the running end time of the second avoidance subprocess model in the avoidance first algorithm.
2) The second algorithm is avoided.
The algorithm may be applied to any of the following cases:
Figure 682638DEST_PATH_IMAGE020
ta≥ti,,sa<siand s isb≥si
Figure 566280DEST_PATH_IMAGE021
ta<ti,ta>tb,sc<si,sa<siAnd s isb≥si
Figure 508828DEST_PATH_IMAGE024
ta<ti,ta≤tb,ta>tc,sd<si,se<siAnd s isb≥si
In the avoidance second algorithm, the deceleration first avoidance subprocess model, the acceleration avoidance subprocess model and the deceleration second avoidance subprocess model all correspond to an effective avoidance subprocess running state, and the other subprocess models correspond to an ineffective avoidance subprocess running state.
The speed v of the vehicle at the end of the duration corresponding to the deceleration first avoidance sub-process model can be calculated by formula (22)1(2)Velocity v of the vehicle at the end of the duration corresponding to the accelerated avoidance subprocess model3(2). Then, according to v1(2)And v3(2)The end time of the vehicle running on each avoidance subprocess model is calculated by the formula (23).
Figure 477921DEST_PATH_IMAGE025
Formula (22)
Figure 898538DEST_PATH_IMAGE026
Formula (23)
In the formula: t is te 1(2)In the avoidance second algorithm, the end time of the driving of the first avoidance subprocess model is decelerated; t is te 2(2)In the avoidance second algorithm, the end time of the driving of the first avoidance subprocess model at a constant speed is obtained; t is te 3(2)In the avoidance second algorithm, the end time of the driving of the avoidance subprocess model is accelerated; t is te 4(2)The end time of the driving of the second avoidance subprocess model at a constant speed in the avoidance second algorithm; t is te 5(2)And the time is the end time of the driving of the second avoidance subprocess model in the avoidance second algorithm in a deceleration mode.
3) The third algorithm is avoided.
The algorithm may be applied to any of the following cases:
Figure 902266DEST_PATH_IMAGE020
ta<ti,ta>tband s isc≥si
Figure 15716DEST_PATH_IMAGE021
ta<ti,ta≤tb,ta≤tcAnd s isd≥si
Figure 721373DEST_PATH_IMAGE024
ta<ti,ta≤tb,ta>tcAnd s isd≥si
In the avoidance third algorithm, the deceleration first avoidance sub-process model, the uniform speed first avoidance sub-process model and the acceleration avoidance sub-process model all correspond to the effective avoidance sub-driving state, and the other sub-process models correspond to the ineffective avoidance sub-driving state.
The end time of the vehicle traveling with each avoidance sub-process model can be calculated by the formula (24).
Figure 945681DEST_PATH_IMAGE027
Formula (24)
In the formula: t is te 1(3)In the avoidance third algorithm, the end time of the driving of the first avoidance subprocess model is reduced; t is te 2(3)In the avoidance third algorithm, the end time of the driving of the first avoidance subprocess model at a constant speed is obtained; t is te 3(3)In the avoidance third algorithm, the end time of the driving of the avoidance subprocess model is accelerated; t is te 4(3)The moment when the second avoidance subprocess model runs at a constant speed in the avoidance third algorithm is the end moment; t is te 5(3)And the time is the end time of the driving of the second avoidance subprocess model in the avoidance third algorithm in a deceleration mode.
4) The fourth algorithm is avoided.
The algorithm may be applied to any of the following cases:
Figure 538336DEST_PATH_IMAGE020
ta≥ti,sa<siand s isb<si
Figure 353845DEST_PATH_IMAGE021
ta<ti,ta>tb,sc<si,sa<siAnd s isb<si
Figure 766372DEST_PATH_IMAGE024
ta<ti,ta≤tb,ta>tc,sd<si,se<siAnd s isb<si
Figure 325529DEST_PATH_IMAGE028
ta<ti,ta≤tb,ta≤tc,sd<si,sf≥siAnd s isg<si
In the avoidance fourth algorithm, the deceleration first avoidance subprocess model, the acceleration avoidance subprocess model, the uniform speed second avoidance subprocess model and the deceleration second avoidance subprocess model all correspond to the effective avoidance subprocess running state, and the other subprocess models correspond to the ineffective avoidance subprocess running state.
The speed v of the vehicle at the end of the duration corresponding to the deceleration first avoidance sub-process model can be calculated by equation (25)1(4). Then, according to v1(4)The end time of the vehicle running on each avoidance sub-process model is calculated by the formula (26).
Figure 507112DEST_PATH_IMAGE029
Equation (25)
Figure 978676DEST_PATH_IMAGE030
Formula (26)
In the formula: t is te 1(4)In the avoidance fourth algorithm, the end time of the driving of the first avoidance subprocess model is reduced; t is te 2(4)In the avoidance fourth algorithm, the end time of the driving of the first avoidance subprocess model at a constant speed is obtained; t is te 3(4)In the avoidance fourth algorithm, the end time of the driving of the avoidance subprocess model is accelerated; t is te 4(4)In the avoidance fourth algorithm, the end time of the driving of the second avoidance subprocess model at a constant speed is obtained; t is te 5(4)And in the avoidance fourth algorithm, the driving end time of the second avoidance subprocess model is decelerated.
5) The fifth algorithm is avoided.
The algorithm may be applied to any of the following cases:
Figure 878499DEST_PATH_IMAGE020
ta<ti,ta≤tb,ta>tc,sd<siand s ise≥si
Figure 975768DEST_PATH_IMAGE021
ta<ti,ta≤tb,ta≤tc,sd<siAnd s isf≥si
In the avoidance fifth algorithm, the deceleration first avoidance subprocess model, the uniform speed first avoidance subprocess model, the acceleration avoidance subprocess model and the deceleration second avoidance subprocess model all correspond to the effective avoidance subprocess running state, and the other subprocess models correspond to the ineffective avoidance subprocess running state.
The speed v of the vehicle at the end of the duration corresponding to the acceleration avoidance subprocess model can be calculated by the formula (27)3(5). Then, according to v3(5)The end time of the vehicle traveling with each avoidance subprocess model is calculated by the formula (28).
Figure 277436DEST_PATH_IMAGE031
Formula (27)
Figure 169169DEST_PATH_IMAGE032
Formula (28)
In the formula: t is te 1(5)In the avoidance fifth algorithm, the end time of the driving of the first avoidance subprocess model is reduced; t is te 2(5)In the avoidance fifth algorithm, the end time of the driving of the first avoidance subprocess model at a constant speed is obtained; t is te 3(5)In the avoidance fifth algorithm, the end time of the driving of the avoidance subprocess model is accelerated; t is te 4(5)The moment when the second avoidance subprocess model runs at a constant speed in the avoidance fifth algorithm is the end moment; t is te 5(5)Is the fifth calculation of avoidanceIn the method, the end time of the driving of the second avoidance subprocess model is decelerated.
6) The sixth algorithm is avoided.
The applicable cases of the algorithm may include:
Figure 87446DEST_PATH_IMAGE020
ta<ti,ta≤tb,ta≤tc,sd<si,sf≥siand s isg≥si
In the avoidance sixth algorithm, the deceleration first avoidance sub-process model, the uniform speed first avoidance sub-process model, the acceleration avoidance sub-process model, the uniform speed second avoidance sub-process model, and the deceleration second avoidance sub-process model all correspond to the effective avoidance sub-driving state.
The end time of the vehicle running in each subprocess model can be calculated by equation (29).
Figure 457247DEST_PATH_IMAGE033
Formula (29)
In the formula: t is te 1(6)In the avoidance sixth algorithm, the end time of the driving of the first avoidance subprocess model is reduced; t is te 2(6)The moment when the first avoidance subprocess model runs at a constant speed in the avoidance sixth algorithm is the end moment; t is te 3(6)In the avoidance sixth algorithm, the end time of the driving of the avoidance subprocess model is accelerated; t is te 4(6)The moment when the second avoidance subprocess model runs at a constant speed in the avoidance sixth algorithm is the end moment; t is te 5(6)And the sixth avoidance algorithm is used for decelerating the driving ending time of the second avoidance subprocess model.
When the calculation is performed by each avoidance algorithm, the speed of the vehicle at the end of the avoidance mode calculated for the ith obstacle may be used as the initial speed of the vehicle in the avoidance travel state calculated for the (i + 1) th obstacle.
S504: and aiming at each avoidance subprocess model in the avoidance process model, determining the duration corresponding to the avoidance subprocess model through a determined algorithm for calculating the duration corresponding to each avoidance subprocess model.
On the basis of the algorithm for obtaining the duration corresponding to each avoidance subprocess model, the current speed and other data of the vehicle can be substituted into each avoidance subprocess model to obtain the duration of the vehicle running under the constraint of the avoidance subprocess model, namely the duration corresponding to the avoidance subprocess model.
S506: determining an avoidance driving state of the unmanned vehicle when the unmanned vehicle drives in an avoidance mode according to the determined duration corresponding to each avoidance subprocess model as follows: and according to the second designated sequence, sequentially driving the duration corresponding to each avoidance subprocess model at the acceleration corresponding to each avoidance subprocess model.
In this specification, the avoidance travel state obtained by the avoidance process model is a travel state with higher safety based on the following travel state. By the first reference speed v in equation (5)e p1The calculation method can show that the running state of the front vehicle is one of the bases for determining the avoidance running state, so that the process in the specification can reflect the influence of the front vehicle on the vehicle in the obtained avoidance running state, so that the vehicle can avoid the obstacle and effectively cope with the influence brought by the front vehicle when running according to the avoidance running state.
Further, the present specification can improve the coordination between the following vehicle running state and the avoidance running state by using the running state of the preceding vehicle as one of the bases for determining the avoidance running state. When the vehicle is switched to the avoidance running state from the following running state, the phenomena that the experience of passengers in the vehicle is influenced by the shaking and sudden braking of the vehicle caused by the switching can be avoided.
As can be seen, in the process in this specification, when planning the driving state of the vehicle according to the driving trajectory, the driving trajectory is divided according to the designated position to obtain at least one sub-trajectory, and in the subsequent step, an initial driving state that provides reference for determining the driving state of the vehicle when the vehicle drives along the driving trajectory is obtained for a first sub-trajectory in each sub-trajectory.
And secondly, determining a driving state corresponding to the driving track.
The description adopts a rapid-searching Random Tree (RRT), and determines the driving state corresponding to the driving track according to the initial driving state of the vehicle on the first sub-track obtained in the previous step.
Specifically, when the number of the designated positions where the travel track passes is two or more, the fast search random tree RRT may be initialized according to the initial travel state of the vehicle on the first sub-track. And then planning the running state of the vehicle when the vehicle runs on the running track according to the initialized RRT.
In the method, the initial driving state is used as a reference for determining the driving state corresponding to the driving track, and in the corresponding information processing process, in the process of determining the driving state when the vehicle drives along the whole driving track, the initial driving state can be used as a local optimal solution, and a global optimal solution is searched on the basis of the local optimal solution instead of blindly and nondirectionally searching the global optimal solution, so that the method in the specification can greatly improve the efficiency of determining the driving state.
The process of determining the driving state corresponding to the driving trajectory will be further described according to the two parts of "establishing the initialized fast search random tree RRT" and "searching in the search space".
(1) And establishing an initial fast search random tree (RRT).
As shown in fig. 6, the process of establishing the initial fast search random tree RRT may include:
s600: and determining the current running state of the front vehicle and the current motion state of the obstacle within the specified field range of the running track.
The current motion state of each obstacle within the specified area can be determined according to the environment information. The motion state of the obstacle may include: at least one of speed, acceleration, direction of motion, and trajectory of motion in the historical moment of the obstacle.
Then, the movement state of the obstacle at the future time can be predicted according to the environmental information and the current movement state of the obstacle. Alternatively, the time period corresponding to the initial running state may be used as the predicted time period of the prediction.
S602: and establishing a search space according to the current running state of the front vehicle and the running track of the unmanned vehicle.
The present specification describes an example of establishing a two-dimensional search space. When a search space is established, a coordinate system corresponding to the search space needs to be established first. The current time and the current position of the vehicle may be used as the origin of coordinates, the future times may be used as the abscissa axis, and the travel distance of the vehicle when traveling along the travel track may be used as the ordinate axis of the search space.
Then, in the coordinate system, the maximum planned time length of the travel track is taken as the maximum abscissa of the search space, the maximum planned distance of the travel track is taken as the maximum ordinate of the search space, and the area between the maximum abscissa and the maximum ordinate can be taken as the search space.
In addition, when the search space is established, the maximum driving speed v of the vehicle can be useduDividing the area between the maximum abscissa and the maximum ordinate, and dividing each divided area to be less than the maximum traveling speed vuThe area (2) is used as a search space to compress the search space and improve the search efficiency.
For example, the maximum traveling speed v may be set from the origin of coordinatesuA straight line is drawn for the slope, which divides the search space into two parts as shown in fig. 8. Wherein. Less than the maximum driving speed vuI.e. the gray triangles in fig. 8, as search space. The search space is smaller than the area size between the maximum abscissa and the maximum ordinate, which can reduce the amount of data required to be processed to improve efficiency.
Further, in the avoidance mode, in order to flexibly avoid the obstacle, the vehicle should not travel at an excessive speed, for example, the vehicle should continue to travel along with the preceding vehicle and avoid the obstacle during the following vehicle. The current driving state of the preceding vehicle can be determined according to the environmental information. And then predicting the driving state of the front vehicle at the future moment according to the environmental information and the current driving state of the front vehicle. And then mapping the predicted driving state of the preceding vehicle at the future time into a search space, and obtaining a graph (the graph can be a line, a point or a line) corresponding to the driving state of the preceding vehicle at the future time in the search space, wherein the graph can be used as a reference graph for determining the driving state corresponding to the driving track in the subsequent steps. Then, the search space is divided by the reference pattern, and the area located behind the front vehicle among the divided parts is used as the search space.
In the embodiment shown in fig. 8, if the reference pattern has already partially entered the search space of the gray triangle, it should be determined that the area γ enclosed by the reference pattern and the search space is not the search space.
Alternatively, when predicting the traveling state of the preceding vehicle at a future time, the maximum planned time length of the traveling locus may be used as the predicted time length of the prediction.
Alternatively, when the search space is established, the coordinate system of the search space and each graph in the search space may be normalized according to the driving track of the vehicle, and then the search space is established according to the normalized parameters and graphs. The normalization of the parameters and the graphs can be performed by the following formulas:
Figure 128269DEST_PATH_IMAGE034
formula (30)
In the formula: s is the normalized distance; s' is the distance traveled by the vehicle along the travel trajectory; t is each time in the future after normalization; t' is the time of the future; t'maxIs the duration of the driving trajectory.
As can be seen from the formula (30), to obtainSearching a space, and when normalizing the driving distance of the vehicle when driving along the driving track, further normalizing the maximum driving speed v of the vehicleuThe method is applied to the calculation process so as to enable the performance attribute of the vehicle to be embodied in the search space, and the comprehensiveness and the applicability of the driving state of the driving track obtained according to the search space are increased.
In an alternative embodiment of the present disclosure, the search space and the graph corresponding to the driving state of the normalized front vehicle may be as shown in fig. 8. S in FIG. 8rIs obtained by normalizing the maximum planned distance of the driving track, trIs obtained by normalizing the maximum planning time length of the driving track by s'coIs the distance s 'from the vehicle to the vehicle ahead at the current time'coCalculated by the formula (30).
S604: and mapping the initial driving state to the search space to be used as a search tree, mapping the current motion state of the obstacle in the specified field range of the driving track to the search space to be used as the obstacle in the search space, and obtaining the initialized RRT.
After the search space is obtained, the search space may be initialized in preparation for subsequent search steps.
Alternatively, when determining a search tree, the initial driving state may be mapped to the search space by the aforementioned formula (30), and the mapped graph may be used as the search tree. In an alternative embodiment of the present description, the search tree resulting from this initialization process is shown in FIG. 8. Since the vehicle does not go beyond the preceding vehicle when traveling in the following mode, the search tree is located below the reference graph in fig. 8.
Optionally, when the obstacle is mapped, the motion state of the obstacle at the future time, which is predicted according to the current motion state of the obstacle, may be mapped to the search space through the aforementioned formula (30), and the mapped graph is used as the obstacle in the search space, where the obstacle in the search space is used to represent the motion state of the mapped obstacle at the future time.
The present specification shows a search space obtained when a pedestrian in a specified area is an obstacle, as shown in fig. 8. Since the moving speed of the pedestrian is small and the influence of the pedestrian on the vehicle is mainly reflected when the pedestrian crosses the road (at this time, the movement of the traveling along the extending direction of the traveling locus is small), the obstacle in the search space in fig. 8 continues with time, and the distance thereof does not change much.
At this point, the establishment of the initial fast search random tree RRT is completed.
(2) Searching within the search space.
A search is performed in the search space to obtain a complete search tree that can be used to determine the driving state of the vehicle while driving on the driving trajectory. As shown in fig. 7, the process of searching may include:
s700: a number of nodes are determined on the search tree.
In an alternative embodiment of the present description, the determined nodes on the search tree may be as shown in FIG. 8. In order to reduce the computation amount, the starting point of the search tree (the coordinate origin of the search space) is used as the starting point, the step length is determined according to the preset nodes, one node is determined by determining the step length at every interval of the nodes, and the obtained nodes are uniformly distributed along the search tree.
S702: and for any node, determining an end point after a specified step length is extended from the node to the random direction.
Optionally, a random point other than the point on the search tree (the random point may be used to determine at least the extending direction) may be randomly selected in the search space, and in each node, a node closest to the random point is determined, and a specified step length is extended from the node closest to the random point.
A designated step length interval may be preset, and during extension, a step length is randomly selected within the designated step length interval as a designated step length.
S704: judging whether the end point meets a preset condition, wherein the preset condition can be as follows: a line from the node to the end point does not pass through an obstacle in the search space and does not exceed the search space.
The preset condition may also be: when the running state of the vehicle is switched from the running state corresponding to the node closest to the distance to the running state corresponding to the terminal, the adjustment required by the vehicle conforms to the preset vehicle kinematic constraint.
S706: and if the terminal point meets the preset condition, taking the terminal point as a new node, updating the search tree according to a connecting line from the node to the new node, continuously determining a new terminal point according to the updated search tree until at least one terminal point falling into a specified area in the search space is determined, and planning the driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the terminal point falling into the specified area in the search space.
The end point of a designated area (such as the area shown in fig. 8) in the search space may be an exit of the search space, and the end point having a node falling within the designated area indicates that the travel state corresponding to the determined travel trajectory has been at least one solution.
The planning of the driving state of the vehicle when the vehicle drives on the driving track according to the end point falling into the designated area in the search space may specifically include: determining, on the search tree, a trajectory from a root node of the search tree to a termination point that falls within a specified region in the search space. And respectively determining the running state corresponding to each track determined on the search tree as the alternative running state when the vehicle runs on the running track. Determining a running efficiency of the vehicle when running on the running locus in each of the candidate running states. And determining the candidate running state with the highest running efficiency as the running state of the vehicle when the vehicle runs on the running track. The vehicle is most efficient and safe when running on the running track according to the running state.
S708: and if the end point does not meet the preset condition, extending aiming at any node again.
Optionally, when the end point does not satisfy the preset condition, the current extension from the node may be recorded as a failure, the recorded number of times of extension failure from the node is updated, and when the recorded number of times exceeds the preset number of times and indicates that the vehicle is in the corresponding driving state and position, and the adjustable margin of the driving state is small, the vehicle is not extended from the node, and the following steps are extended for other nodes except the node through the above steps.
Therefore, by the method in the specification, the extension of the node which is not suitable for extension can be limited in the extension process, and the points which can be extended on the search tree in the subsequent steps can be effectively reduced, so that the amount of extended data processing is reduced, the data processing efficiency is improved, and the waste of resources is avoided.
The process for planning the vehicle driving state provided by the specification can be specifically applied to the field of delivery by using an unmanned vehicle, for example, in the delivery scene of express delivery, takeaway and the like by using the unmanned vehicle. Specifically, in the above-described scenario, delivery may be performed using an autonomous vehicle fleet configured with a plurality of unmanned vehicles.
Based on the same idea, the embodiment of the present specification further provides a device for planning a vehicle driving state corresponding to the process shown in fig. 1, and the device for planning a vehicle driving state is shown in fig. 9.
Fig. 9 is a schematic structural diagram of an apparatus for planning a vehicle driving state according to an embodiment of the present disclosure, where the apparatus for planning a vehicle driving state may include:
an obtaining module 900 configured to obtain a driving trajectory planned for the unmanned vehicle;
a designated position determining module 902, configured to determine a position of a designated type of the route of the travel track as a designated position;
a first sub-trajectory determining module 904, configured to use a trajectory traveled by a first specified location reached by the unmanned vehicle when traveling along the travel trajectory as a first sub-trajectory;
an initial driving state determining module 906, configured to plan to obtain, according to the environmental information of the first specified location and the current driving state of the unmanned vehicle, a driving state of the unmanned vehicle on the first sub-trajectory, as an initial driving state corresponding to the first sub-trajectory;
a driving state determining module 908, configured to plan a driving state of the unmanned vehicle when the unmanned vehicle drives on the driving trajectory according to an initial driving state of the unmanned vehicle on the first sub-trajectory.
The obtaining module 900, the designated position determining module 902, the first sub-track determining module 904, the initial driving state determining module 906, and the driving state determining module 908 are electrically connected in sequence.
Alternatively, the initial driving state determination module 906 may include: a preceding vehicle running state determining submodule 9060, a following vehicle running state submodule 9062, an obstacle submodule 9064, a collision judgment submodule 9066 and a determining submodule 9068.
The front vehicle running state determining submodule 9060, the following vehicle running state submodule 9062, the obstacle submodule 9064, the collision judging submodule 9066 and the determining submodule 9068 are sequentially and electrically connected, and the determining submodule 9068 is also electrically connected with the following vehicle running state submodule 9062.
And a front vehicle running state determining submodule 9060 for determining the current running state of the front vehicle.
And the following vehicle running state submodule 9062 is configured to determine, according to the current running state of the unmanned vehicle and the current running state of the preceding vehicle, a following vehicle running state when the unmanned vehicle runs along with the preceding vehicle in a following vehicle mode.
And the obstacle submodule 9064 is used for identifying obstacles located in the specified field range of the first specified position according to the environment information of the first specified position.
And a collision judgment sub-module 9066 configured to judge whether a collision with at least one obstacle occurs when the vehicle is traveling in the following traveling state, according to the recognized movement state of each obstacle.
A determination submodule 9068, configured to determine, if a collision may occur with at least one obstacle, an avoidance running state in which the unmanned vehicle avoids the obstacles in an avoidance mode according to a current running state of the unmanned vehicle and a motion state of each obstacle, as a running state of the unmanned vehicle on the first sub-trajectory; and if not, taking the following running state as the running state of the unmanned vehicle on the first sub-track.
Optionally, the following driving status sub-module 9062 may include: the following vehicle process model acquisition unit 90620, the following vehicle algorithm determination unit 90622, the following vehicle duration determination unit 90624 and the following vehicle running state unit 90626 are electrically connected in sequence.
A following process model obtaining unit 90620, configured to obtain a following process model preset for the following mode, where the following process model is formed by combining a plurality of following sub-process models in a first specified order; and each car following subprocess model corresponds to a preset acceleration.
And a following algorithm determination unit 90622, configured to determine, according to the current driving state of the unmanned vehicle and the current driving state of the preceding vehicle, an algorithm for calculating a duration corresponding to each following sub-process model.
And a following duration determining unit 90624, configured to determine, for each following subprocess model in the following process models, a duration corresponding to the following subprocess model through a determined algorithm for calculating a duration corresponding to each following subprocess model.
A following driving state unit 90626, configured to determine, according to the determined duration corresponding to each following subprocess model, that a following driving state of the unmanned vehicle when the unmanned vehicle drives in the following mode is: and according to the first appointed sequence, sequentially driving the duration corresponding to each following vehicle subprocess model at the acceleration corresponding to each following vehicle subprocess model.
Optionally, the determining sub-module may be further configured to: acquiring an avoidance process model preset aiming at the avoidance mode, wherein the avoidance process model is formed by combining a plurality of avoidance sub-process models according to a second specified sequence; each avoidance subprocess model corresponds to a preset acceleration; determining an algorithm for calculating the duration corresponding to each avoidance subprocess model according to the current running state of the unmanned vehicle, the motion state of each obstacle and the current running state of the front vehicle; aiming at each avoidance subprocess model in the avoidance process model, determining the duration corresponding to the avoidance subprocess model through a determined algorithm for calculating the duration corresponding to each avoidance subprocess model; determining an avoidance driving state of the unmanned vehicle when the unmanned vehicle drives in an avoidance mode according to the determined duration corresponding to each avoidance subprocess model as follows: and according to the second designated sequence, sequentially driving the duration corresponding to each avoidance subprocess model at the acceleration corresponding to each avoidance subprocess model.
Alternatively, the driving state determination module 908 may include: an initialization sub-module 9080 and a planning sub-module 9082 which are electrically connected.
And the initialization sub-module 9080 is used for initializing the fast search random tree RRT according to the initial running state of the unmanned vehicle on the first sub-track when the number of the specified positions of the running track passing by is more than two.
And the planning submodule 9082 is configured to plan a driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the initialized RRT.
Optionally, the initialization sub-module 9080 may include: the device comprises an obstacle motion state unit 90800, a search space establishing unit 90802 and an initialization unit 90804 which are electrically connected in sequence.
And an obstacle motion state unit 90800, configured to determine a current driving state of the preceding vehicle and a current motion state of an obstacle located within the specified area of the driving track.
A search space establishing unit 90802, configured to establish a search space according to the current driving state of the preceding vehicle and the driving trajectory of the unmanned vehicle.
An initializing unit 90804, configured to map the initial driving state to the search space as a search tree, and map a current motion state of an obstacle located within the specified range of the driving trajectory to the search space as an obstacle in the search space, so as to obtain an initialized RRT.
Optionally, the planning sub-module 9082 may include: a node determination unit 90820, an end point determination unit 90822, a judgment unit 90824 and an execution unit 90826 which are electrically connected in sequence.
A node determination unit 90820 for determining a number of nodes on the search tree.
An end point determining unit 90822 is configured to determine, for any node, an end point that extends from the node in a random direction by a specified step size.
A determining unit 90824, configured to determine whether the endpoint meets a preset condition, where the preset condition is: a line from the node to the end point does not pass through an obstacle in the search space and does not exceed the search space.
And the execution unit 90826 is configured to, when the endpoint meets a preset condition, use the endpoint as a node, update the search tree according to a connection line from the node to the endpoint, and continue to determine the endpoint according to the updated search tree until at least one endpoint falling into a specified area in the search space is determined, and plan a driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the endpoint falling into the specified area in the search space. And when the end point does not meet the preset condition, extending aiming at any node again.
Optionally, the execution unit 90826 may be further configured to, when it is determined that the end point does not satisfy the preset condition, record the extension from the node this time as a failure, update the recorded number of times of failure in extension from the node, and when the recorded number of times exceeds a preset number of times, no extension is performed from the node.
Optionally, the execution unit 90826, when planning the driving state of the unmanned vehicle when driving on the driving track according to the end point falling into the specified area in the search space, may be further configured to determine, on the search tree, a track from a root node of the search tree to an end point falling into the specified area in the search space. And respectively determining a driving state corresponding to each track determined on the search tree as a candidate driving state when the unmanned vehicle drives on the driving track. Determining a travel efficiency of the unmanned vehicle when traveling on the travel trajectory in each of the candidate travel states. And determining the candidate running state with the highest running efficiency as the running state of the unmanned vehicle when the unmanned vehicle runs on the running track.
Embodiments of the present description also provide a computer-readable storage medium, which stores a computer program, where the computer program can be used to execute the process of predicting the target trajectory provided in fig. 1.
The embodiment of the specification also provides a part of structure schematic structure diagram of the unmanned vehicle shown in fig. 10. As shown in fig. 10, the unmanned vehicle includes, at a hardware level, a processor, an internal bus, a network interface, a memory, and a non-volatile memory, although it may include hardware required for other services. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs the computer program to implement the process of predicting the target trajectory as described above with reference to fig. 1. Of course, besides the software implementation, the present specification does not exclude other implementations, such as logic devices or a combination of software and hardware, and the like, that is, the execution subject of the following processing flow is not limited to each logic unit, and may be hardware or logic devices.
In the 90 s of the 20 th century, improvements in a technology could clearly distinguish between improvements in hardware (e.g., improvements in circuit structures such as diodes, transistors, switches, etc.) and improvements in software (improvements in process flow). However, as technology advances, many of today's process flow improvements have been seen as direct improvements in hardware circuit architecture. Designers almost always obtain the corresponding hardware circuit structure by programming an improved method flow into the hardware circuit. Thus, it cannot be said that an improvement in the process flow cannot be realized by hardware physical modules. For example, a Programmable Logic Device (PLD), such as a Field Programmable Gate Array (FPGA), is an integrated circuit whose Logic functions are determined by programming the Device by a user. A digital system is "integrated" on a PLD by the designer's own programming without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Furthermore, nowadays, instead of manually making an integrated Circuit chip, such Programming is often implemented by "logic compiler" software, which is similar to a software compiler used in program development and writing, but the original code before compiling is also written by a specific Programming Language, which is called Hardware Description Language (HDL), and HDL is not only one but many, such as abel (advanced Boolean Expression Language), ahdl (alternate Language Description Language), traffic, pl (core unified Programming Language), HDCal, JHDL (Java Hardware Description Language), langue, Lola, HDL, laspam, hardsradware (Hardware Description Language), vhjhd (Hardware Description Language), and vhigh-Language, which are currently used in most common. It will also be apparent to those skilled in the art that hardware circuitry that implements the logical method flows can be readily obtained by merely slightly programming the method flows into an integrated circuit using the hardware description languages described above.
The controller may be implemented in any suitable manner, for example, the controller may take the form of, for example, a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, an Application Specific Integrated Circuit (ASIC), a programmable logic controller, and an embedded microcontroller, examples of which include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320, the memory controller may also be implemented as part of the control logic for the memory. Those skilled in the art will also appreciate that, in addition to implementing the controller as pure computer readable program code, the same functionality can be implemented by logically programming method steps such that the controller is in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers and the like. Such a controller may thus be considered a hardware component, and the means included therein for performing the various functions may also be considered as a structure within the hardware component. Or even means for performing the functions may be regarded as being both a software module for performing the method and a structure within a hardware component.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
For convenience of description, the above devices are described as being divided into various units by function, and are described separately. Of course, the functions of the various elements may be implemented in the same one or more software and/or hardware implementations of the present description.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
As will be appreciated by one skilled in the art, embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, the description may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the description may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
This description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
The above description is only an example of the present specification, and is not intended to limit the present specification. Various modifications and alterations to this description will become apparent to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present specification should be included in the scope of the claims of the present specification.

Claims (12)

1. A method of planning a driving state of a vehicle, the method comprising:
acquiring a driving track planned for the unmanned vehicle;
determining the position of the specified type of the passing of the driving track as a specified position;
taking a track traveled by a first specified position reached by the unmanned vehicle when the unmanned vehicle travels along the travel track as a first sub-track;
planning to obtain a running state of the unmanned vehicle on the first sub-track according to the environmental information of the first designated position and the current running state of the unmanned vehicle, and taking the running state as an initial running state corresponding to the first sub-track;
and planning the running state of the unmanned vehicle when the unmanned vehicle runs on the running track according to the initial running state of the unmanned vehicle on the first sub-track.
2. The method according to claim 1, wherein planning to obtain the driving state of the unmanned vehicle on the first sub-trajectory according to the environmental information of the first designated location and the current driving state of the unmanned vehicle specifically comprises:
determining the current driving state of the front vehicle;
determining a following running state when the unmanned vehicle runs along with the front vehicle in a following mode according to the current running state of the unmanned vehicle and the current running state of the front vehicle;
according to the environmental information of a first designated position, identifying obstacles located in the designated area range of the first designated position;
judging whether collision with at least one obstacle occurs when the vehicle runs in the following running state according to the recognized motion state of each obstacle;
if so, determining an avoidance running state for avoiding each obstacle in an avoidance mode according to the current running state of the unmanned vehicle and the motion state of each obstacle, and taking the avoidance running state as the running state of the unmanned vehicle on the first sub-track;
and if not, taking the following running state as the running state of the unmanned vehicle on the first sub-track.
3. The method of claim 2, wherein determining a following driving state when driving in following mode with the preceding vehicle comprises:
acquiring a following process model which is preset aiming at the following mode, wherein the following process model is formed by combining a plurality of following subprocess models according to a first appointed sequence; each car following subprocess model corresponds to a preset acceleration;
determining an algorithm for calculating the duration corresponding to each following vehicle subprocess model according to the current running state of the unmanned vehicle and the current running state of the preceding vehicle;
determining the duration corresponding to each car following subprocess model in the car following subprocess models through the determined algorithm;
determining the following driving state of the unmanned vehicle when the unmanned vehicle drives in the following mode according to the determined duration corresponding to each following sub-process model: and according to the first appointed sequence, sequentially driving the duration corresponding to each following vehicle subprocess model at the acceleration corresponding to each following vehicle subprocess model.
4. The method of claim 2, wherein determining an avoidance driving state to avoid the obstacles in an avoidance mode comprises:
acquiring an avoidance process model preset aiming at the avoidance mode, wherein the avoidance process model is formed by combining a plurality of avoidance sub-process models according to a second specified sequence; each avoidance subprocess model corresponds to a preset acceleration;
determining an algorithm for calculating the duration corresponding to each avoidance subprocess model according to the current running state of the unmanned vehicle, the motion state of each obstacle and the current running state of the front vehicle;
aiming at each avoidance subprocess model in the avoidance process model, determining the duration corresponding to the avoidance subprocess model through the determined algorithm;
determining an avoidance driving state of the unmanned vehicle when the unmanned vehicle drives in an avoidance mode according to the determined duration corresponding to each avoidance subprocess model as follows: and according to the second designated sequence, sequentially driving the duration corresponding to each avoidance subprocess model at the acceleration corresponding to each avoidance subprocess model.
5. The method according to any one of claims 1 to 4, wherein planning the driving state of the unmanned vehicle when the unmanned vehicle drives on the driving trajectory according to the initial driving state of the unmanned vehicle on the first sub-trajectory specifically comprises:
when the number of the specified positions of the passing of the running track is more than two, initializing a rapid search random tree (RRT) according to the initial running state of the unmanned vehicle on the first sub-track;
and planning the driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the initialized RRT.
6. The method of claim 5, wherein initializing a fast search random tree (RRT) based on an initial driving state of the unmanned vehicle on the first sub-trajectory comprises:
determining the current running state of a preceding vehicle and the current motion state of an obstacle within the specified field range of the running track;
establishing a search space according to the current running state of the front vehicle and the running track of the unmanned vehicle;
and mapping the initial driving state to the search space to be used as a search tree, mapping the current motion state of the obstacle in the specified field range of the driving track to the search space to be used as the obstacle in the search space, and obtaining the initialized RRT.
7. The method of claim 6, wherein planning the driving state of the unmanned vehicle while driving on the driving trajectory according to the initialized RRT specifically comprises:
determining a number of nodes on the search tree;
for any node, determining an end point after a specified step length is extended from the node to a random direction;
judging whether the end point meets a preset condition, wherein the preset condition is as follows: a connecting line from the node to the terminal does not pass through an obstacle in the search space and does not exceed the search space;
if so, taking the terminal as a node, updating the search tree according to a connecting line from the node to the terminal, and continuously determining the terminal according to the updated search tree until at least one terminal falling into a specified area in the search space is determined, and planning a driving state of the unmanned vehicle when the unmanned vehicle drives on the driving track according to the terminal falling into the specified area in the search space;
and if not, extending the nodes again.
8. The method of claim 7, wherein when it is determined that the endpoint does not satisfy a preset condition, the method further comprises:
recording the extension from the node as failure;
updating the recorded number of times of failure to extend from the node;
when the recorded number of times exceeds a preset number of times, no extension is performed from the node.
9. The method according to claim 7, wherein planning the driving state of the unmanned vehicle when driving on the driving track according to the end point falling into the designated area in the search space specifically comprises:
determining, on the search tree, a trajectory from a root node of the search tree to a termination point falling within a specified region in the search space;
respectively determining a driving state corresponding to each track determined on the search tree as an alternative driving state when the unmanned vehicle drives on the driving track;
determining a travel efficiency of the unmanned vehicle when traveling on the travel trajectory in each of the candidate travel states;
and determining the candidate running state with the highest running efficiency as the running state of the unmanned vehicle when the unmanned vehicle runs on the running track.
10. An apparatus for planning a driving state of a vehicle, the apparatus comprising:
the system comprises an acquisition module, a control module and a display module, wherein the acquisition module is used for acquiring a driving track planned for the unmanned vehicle;
the specified position determining module is used for determining the position of a specified type of the passing of the driving track as a specified position;
the first sub-track determining module is used for taking a track which is driven by a first specified position and is reached when the unmanned vehicle drives along the driving track as a first sub-track;
an initial driving state determining module, configured to plan to obtain a driving state of the unmanned vehicle on the first sub-trajectory according to the environmental information of the first specified location and a current driving state of the unmanned vehicle, where the driving state is used as an initial driving state corresponding to the first sub-trajectory;
and the running state determining module is used for planning the running state of the unmanned vehicle when the unmanned vehicle runs on the running track according to the initial running state of the unmanned vehicle on the first sub-track.
11. A computer-readable storage medium, characterized in that the storage medium stores a computer program which, when executed by a processor, implements the method of any of the preceding claims 1-9.
12. An unmanned vehicle comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor when executing the program implements the method of any of claims 1-9.
CN202010416783.7A 2020-05-18 2020-05-18 Method and device for planning vehicle driving state Active CN111338360B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010416783.7A CN111338360B (en) 2020-05-18 2020-05-18 Method and device for planning vehicle driving state

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010416783.7A CN111338360B (en) 2020-05-18 2020-05-18 Method and device for planning vehicle driving state

Publications (2)

Publication Number Publication Date
CN111338360A CN111338360A (en) 2020-06-26
CN111338360B true CN111338360B (en) 2020-10-02

Family

ID=71186451

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010416783.7A Active CN111338360B (en) 2020-05-18 2020-05-18 Method and device for planning vehicle driving state

Country Status (1)

Country Link
CN (1) CN111338360B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306059B (en) * 2020-10-15 2024-02-27 北京三快在线科技有限公司 Training method, control method and device for control model
CN112396861B (en) * 2020-11-26 2022-09-09 无锡职业技术学院 Automobile auxiliary driving control method and device
CN112731334B (en) * 2020-12-10 2023-09-12 东风汽车集团有限公司 Method and device for positioning vehicle by laser
CN113074734B (en) * 2021-03-23 2023-05-30 北京三快在线科技有限公司 Track planning method and device, storage medium and electronic equipment
CN114815850B (en) * 2022-05-25 2023-02-03 上海伯镭智能科技有限公司 Autonomous loading and unloading method and system for unmanned mine car

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106406338A (en) * 2016-04-14 2017-02-15 中山大学 Omnidirectional mobile robot autonomous navigation apparatus and method based on laser range finder
CN108205312A (en) * 2018-03-19 2018-06-26 中南大学 Unmanned BRT vehicles automatic start-stop implementation method based on high-precision map and infrared beacon
CN109598816A (en) * 2019-02-20 2019-04-09 百度在线网络技术(北京)有限公司 Vehicle behavior feature collection method, device, server and system
CN110057369A (en) * 2019-05-30 2019-07-26 北京三快在线科技有限公司 The operation planning method, apparatus and unmanned equipment of unmanned equipment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6580087B2 (en) * 2017-06-02 2019-09-25 本田技研工業株式会社 Traveling track determination device and automatic driving device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106406338A (en) * 2016-04-14 2017-02-15 中山大学 Omnidirectional mobile robot autonomous navigation apparatus and method based on laser range finder
CN108205312A (en) * 2018-03-19 2018-06-26 中南大学 Unmanned BRT vehicles automatic start-stop implementation method based on high-precision map and infrared beacon
CN109598816A (en) * 2019-02-20 2019-04-09 百度在线网络技术(北京)有限公司 Vehicle behavior feature collection method, device, server and system
CN110057369A (en) * 2019-05-30 2019-07-26 北京三快在线科技有限公司 The operation planning method, apparatus and unmanned equipment of unmanned equipment

Also Published As

Publication number Publication date
CN111338360A (en) 2020-06-26

Similar Documents

Publication Publication Date Title
CN111338360B (en) Method and device for planning vehicle driving state
CN113071520B (en) Vehicle running control method and device
US10775801B2 (en) Determining speeds along a path for autonomous driving vehicles
US11226205B2 (en) Method and device for reducing intermediate points in a polygon
CN111208838B (en) Control method and device of unmanned equipment
US10909377B2 (en) Tracking objects with multiple cues
CN113110526B (en) Model training method, unmanned equipment control method and device
CN111186437B (en) Vehicle track risk determination method and device
CN117794803A (en) Vehicle trajectory control using tree search and/or proxy filtering with responsive proxy prediction
Liu et al. A novel method for predicting vehicle state in internet of vehicles
CN111830959A (en) Method, system, and machine-readable medium for operating an autonomous vehicle
CN115230731A (en) Travel route determination method, travel route determination device, travel route determination terminal, and travel route determination medium
CN112649012A (en) Trajectory planning method, equipment, medium and unmanned equipment
CN112987754B (en) Unmanned equipment control method and device, storage medium and electronic equipment
CN114167857B (en) Control method and device of unmanned equipment
CN114019971A (en) Unmanned equipment control method and device, storage medium and electronic equipment
CN113033527A (en) Scene recognition method and device, storage medium and unmanned equipment
WO2023087157A1 (en) Intelligent driving method and vehicle applying same
CN116061933B (en) Vehicle speed planning method and device based on speed limiting information and domain controller
CN113815651B (en) Unmanned equipment control method, unmanned equipment control device, unmanned equipment control equipment and storage medium
CN117382593B (en) Vehicle emergency braking method and system based on laser point cloud filtering
US20240043006A1 (en) Method and apparatus for generating virtual stop line
US20240101106A1 (en) Systems and methods for scene understanding
CN113110479A (en) Method and device for controlling mobile carrier
CN117400967A (en) Anthropomorphic driving behavior planning method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant