Navigation scene construction and restoration simulation based on lane-level data

1.Background

In recent years, AutoNavi’s automotive business has evolved from guided vehicles to co-guiding of people and vehicles , from the vehicle-machine version of AutoNavi Map to the vehicle-machine version of AutoNavi Map SDK , and then to the depot’s in-depth customization projects. Multiple business lines coexist, although in various ways The form is user-oriented, but what remains unchanged is the pursuit of high-quality car navigation services.

From the perspective of in-vehicle navigation, people, cars, and roads are indispensable. As of the end of 2022, the total highway mileage in the country is 5.3548 million kilometers (data from the Ministry of Transport). Ensuring the quality of navigation experience on such a large number of road networks has always been AutoNavi’s business One of the directions to explore. In the past, in order to test the navigation function in different road scenarios, our test students had to repeatedly drive the car on the road for road testing. As there are more and more car factory projects, as a map service provider, the cost of road testing is getting higher and higher. For this reason, we have developed a simulated navigation function that can simulate the planning and navigation of each route on the terminal, eliminating a lot of road testing. cost.

In 2021, AutoNavi was the first in the industry to release lane-level navigation , and vehicle navigation accuracy has entered the sub-meter level. The original analog navigation was based on standard map signals with an accuracy of 5-10 meters. Lane-level navigation requires higher signal accuracy, and simulated navigation testing methods cannot meet the accuracy requirements of lane-level scenarios. On the other hand, lane-level navigation requires testing scenarios with various complex problems : such as multi-layer elevated overlay rendering, vehicle lane-changing behavior guidance, etc. The original simulated navigation solution cannot complete the construction and testing of such scenarios.

In summary, this article introduces how the AutoNavi engineering team uses a simulation method to solve the above-mentioned lane-level navigation scene construction and restoration problems.

2. Problem definition

Before describing the specific solution, let us first introduce the known conditions we have and the expected target output, that is, the input and output of the problem.

2.1 Input

Lane level data

Lane-level navigation relies on high-precision positioning signals, and lane-level data naturally contains this information. The key lies in how we make good use of this data.

Lane level signal playback

Lane-level signal playback is a lane-level sensor signal playback function built during the development of lane-level navigation. This function records lane-level sensor related data to a signal file, and can independently perform signal playback on the terminal to restore the entire lane-level navigation. process. This capability is usually used by car factory customers to collect drive test signals and then feed them back internally for problem scene restoration and offline analysis.

e943eee5f16bcaccb5abb5cf9fac2264.png

2.2 Output

Based on the above lane-level playback model, we naturally think that if we construct a simulation solution that can restore lane-level signals from lane-level data as close as possible to the real driving scene, then we can achieve customized restoration. The ability to navigate scenarios at lane level.

d4ca3e021a91e50d80db16ce3b649bbe.png

At the same time, we hope that this solution can meet the following lane-level navigation test requirements :

  • Able to cover the national high-speed and urban ordinary road network at the lowest route cost;

  • Ability to customize lane-level navigation scenarios;

  • Ability to customize simulated lane-level driving behavior.

3. Restore the simulation plan

The first thing to consider in lane-level data is the static scene elements of the driving route, that is, the elements that are stationary relative to the road surface during driving are first considered to ensure that the road scene elements passed by the route meet the requirements.

Secondly, after determining the driving route, consider the dynamic scene elements or behaviors that may occur during simulated driving, such as acceleration and deceleration, vehicle lane changes, and other operations.

Therefore, we plan to complete these two tasks respectively by building a road scene strategy engine and a vehicle behavior simulation engine . The big picture is as follows.

52267fd409fe7a79b050ce24e5d0f13d.png

  • Road scene strategy engine : This engine clarifies the road segments or tasks that the route will pass through, and produces corresponding road segment data. For example: urban road coverage or scenario testing through designated roads.

  • Vehicle behavior simulation engine : This engine is responsible for clarifying vehicle behavior during lane-level driving. For example: controlling behaviors such as changing lanes and changing speed. Through the surrounding information data protocol, the number and behavior of surrounding vehicles (such as congestion, congestion, etc.) can be simulated based on the following strategy algorithm.

4. Road scene strategy engine

In lane-level data, the road network is divided into small road segments, and each segment contains its own road attributes, such as road type, length, etc. A complete road network is established through the connectivity between segments. As with most route planning algorithms, it is a common method to use graph algorithms to solve route planning problems, which can screen out suitable road segments and construct routes based on expected road attributes.

d39149a2f96b20267b454260040fd2d2.png

However, for a large city's ordinary urban road network, which can be tens of thousands of kilometers long, there may be hundreds of thousands of road segments behind it. How to cover all urban road networks with the lowest route cost has become the primary issue. This is a typical NP problem, and it is necessary to reasonably consider the routes that have been taken, otherwise the repetition rate will increase dramatically. Common graph algorithms such as Euler's algorithm and Hamilton's algorithm cannot be applied to urban road networks full of ring graphs. The following focuses on our ant colony algorithm for urban road coverage .

4.1 Urban road coverage strategy based on ant colony algorithm

Many people may think of using the popular deep learning algorithm to let AI complete the process of path exploration and coverage. In fact, before the emergence of deep learning, there were already a number of active "AI algorithms". Just as deep learning borrows the idea of ​​neurons, most of the early artificial intelligence algorithms were inspired by nature. One of the subfields is called Swarm Intelligence , which originates from the study of the group behavior of social insects represented by ants, bees, etc.

The ant colony algorithm is inspired by the behavior of ants finding paths in the process of searching for food. It is a simulated evolutionary algorithm. When ants are looking for food, they will leave pheromones on the routes they pass for other ants to make decisions. A large number of ant search behaviors bring the global optimal solution to the path. Therefore, the ant colony algorithm is also called the ant colony optimization algorithm. (Ant Colony Optimization Algorithms, hereinafter referred to as ACO).

A score will be calculated for each ant in ACO, and ants with top scores are eligible to participate in the weight update of road pheromones. The key factor in pheromone calculation depends on the reciprocal of the length of the road traveled by each ant itself, that is, 475df02d6f0ea3ff95b3084e40ed26db.jpegwhere 9d8244d49d1e2b126e4deb590982af1a.jpegis the length of the route traveled by ant k, b8d29574623b8cc0ce1aa255a3c75c6f.jpegand is the weighting factor of the weighted road length, which is usually a fixed constant. It can be seen that the shorter the route, the greater the pheromone weight. This is also in line with the natural rules of ants foraging.

In our improved ant colony coverage algorithm, the calculation formula of the pheromone key factor of a certain ant k is as follows:

52ab686fa9876c8626fb7177b507b3e4.jpeg

in:

  • f6e4f0985b5b7af3232512bbcb7ca542.jpegis the length of the path taken by ant k, 2e1028b338b3fb481e928c8e3bba0ff9.jpegand is the maximum value among the paths of ants participating in pheromone update. That is, the ants that have traveled a longer path get a greater weight of information.

  • 194e504b08e81ad5035ae497956489e1.jpegis the number of untraveled nodes in the route of ant k, which can be considered as the freshness (Fresh) of this road . 42ba3c8084363066ef677722dc7f8665.jpegIt is the number (or length) of the most unvisited nodes in the path of ants participating in pheromone update. That is, the ants that have traveled more unvisited roads have a greater pheromone weight.

  • 410ff9a65d54ef7de2dd672334c1687e.jpegis the factor that controls the above two weights, that is, the weights that determine the length of the road and the freshness of the road respectively. There is a good metric to use on this factor: coverage .

    • When the coverage rate in the current period is low, use as long roads as possible to cover as many nodes as possible . Therefore, the road length L has a greater weight. At this time, the freshness of each road is basically close to 100%, and the freshness weight does not need to be too high.

    • When the later coverage is high, reward routes that visit untraveled nodes as much as possible . At this time, road length is no longer the main factor, and roads with higher freshness have greater weight, thereby further improving coverage.

After applying the above algorithm, it can cover more than 94% of the city's roads at a low route cost. Compared with simulated navigation, it has a more reliable road coverage test strategy.

5. Vehicle behavior simulation engine

After determining the road segments that the route will pass through, the next step is to calculate the precise driving behavior and trajectory of the vehicle. At this time, the problem is further subdivided from the road segment to the lane level. The first thing we solve is the lane changing algorithm, and the second is to complete the simulation of the vehicle driving trajectory on the lane trajectory after the lane changing decision.

5.1 Lane changing strategy algorithm based on shortest path

Just as roads are divided into road segments in lane-level data, each road segment is further divided into several parallel lanes.

f78e9b72e823a6daa865bbc9c849c2f1.png

As shown in the figure above, the road is divided into four road segments from ID1 to ID4 . The first three road segments each contain three motor vehicle lanes, and the last ID4 road segment has only one turning lane. In the road segment we need to select the appropriate lane to enter the next (and subsequent) turning road segment or pass the designated test lane. Here, the common shortest path algorithm is used to solve the lane changing strategy problem. The algorithm is as follows:

1. First, consider each lane of each ID as a node in the graph;

2. Secondly, link each lane i of the current ID with each lane j of the next ID. The weight of each link is calculated as loss 6dfea4313a0964301def2e33368a0f4c.jpegusing the following formula:

5f32a39236cd35cacdfba562c0f8231e.jpeg

3. Finally, apply Dijkstra's shortest path algorithm to calculate the shortest weighted path from the current lane to the final target lane.

Among them: a3da38b3c382e5ec7bc520e94d501bed.jpeg,e1360788e731389cadbc962142368c53.jpeg

They are the lane numbers corresponding to the next ID. Take the lanes 11 to ID2 from the first lane of ID1 in the above figure as an example:

a. The first lane 11 of ID1 --> the first lane 21 of ID2 is in the same lane, so the loss is 1;

b. The first lane 11 of ID1 --> the second lane 22 of ID2 is not in the same lane, so the loss is abs(2-1)=1;

c. Similarly, the first lane 11 of ID1 --> the third lane 23 of ID2 is not in the same lane, so the loss is abs(3-1)=2;

By analogy, the weights between all lanes in the ID1 departure route are calculated, as shown below.

652460fcbd9257288161ae1434d61cfb.png

As shown in the figure above, according to the shortest path algorithm, reasonable road change routes from 11 to 41 lanes can be obtained (green numerical weight). The actual algorithm will take lane length into consideration to allow lane changes to occur on the longest possible road section, in line with people's driving intuition and to avoid emergency lane changes. If you need to specify a lane passing through, you only need to delete the remaining lane nodes in the road segment. At the same time, with slight modifications to the algorithm, the driving behavior of vehicles driving on the left or right can be realized.

After applying the lane changing algorithm, we can obtain the center positioning track points of each lane from the lane-level data, as shown in the figure below.

993c406ca1fafa841650f231c833f043.jpeg

In order to fit a vehicle driving trajectory that is close to the real thing, we also need to process these lane trajectories as follows:

  • Smooth splicing of lane changing trajectories;

  • Vehicle speed control simulation.

For the first point, we applied the cubic Bezier curve algorithm and easily obtained the following smooth trajectory points.

b508c69c8a14cf45ed0f761973f97eeb.jpeg

Regarding the second point, adding vehicle speed control requires us to fit an algorithm that is more in line with human driving behavior. The following focuses on the dynamic vehicle speed simulation algorithm based on interval road shape.

5.2 Dynamic vehicle speed simulation algorithm based on interval road shape

We intend to simulate the vehicle speed trajectory based on real driving behavior. According to official survey data from the National Highway Traffic Safety Administration, the typical driver response time to an emergency is 1.5 seconds . This 1.5 seconds includes 3/4 seconds of reaction time + 3/4 seconds of braking time. It is further speculated that the driver's response and prediction for non-emergency braking scenarios may be more relaxed. At the same time, considering that the vehicle speed we simulated is generally around 90km/h, we selected the response time to be 2 seconds .



The driver's reaction is derived from the judgment of the shape of the road ahead. To put it simply: press the accelerator when accelerating in a straight line, and press the brake when decelerating when cornering. But specifically, a large part of the speed at which the road should be passed comes from the driver's visual perception. Therefore, for the simulation of real driving behavior, I divided it into two road sections: the reaction area and the speed measurement area .

3236b6973b63ce148a8ed6ea2c37da4b.png

  • Speed ​​measurement area : The maximum speed that a vehicle is allowed to pass through this road section is measured based on the road shape of the area (hereinafter referred to as "road shape").

  • Response interval : It is the target speed measurement adjustment interval from the current vehicle speed to the speed measurement interval. For example, if the current vehicle speed is greater than the maximum speed allowed in the speed measurement zone, you should decelerate in the reaction zone.

The reaction interval and speed measurement interval are not a fixed area during actual driving and simulation, but a dynamic measurement process that continuously changes and advances. If you accelerate in the reaction zone, the corresponding speed measurement zone will also move forward; on the contrary, if you decelerate in the reaction zone, the corresponding speed measurement zone will retreat, and the speed will be considered closer. The effect is similar to the driving guide lines in racing games.

83939e708c5807521b7244e178bf7859.png

Therefore, we developed a set of dynamic interval speed changing algorithms . Based on the road shape of the speed measurement interval, we continuously calculate the theoretical maximum vehicle speed of the vehicle passing through the interval, and continue to dynamically calculate the vehicle acceleration in the reaction interval, and finally output a complete driving trajectory. The maximum speed measurement method of interval theory is as follows:

outside_default.png

From the starting point Pstart to the end point Pend of the speed measurement interval , take the midpoint Pmid . The formula for calculating the maximum speed in the section is:

7c78220ff8a8afece16a3e6a23db59ce.jpeg

in:

  • 7ab23df98b6098c10db3d492dd1ac488.jpegis the friction coefficient between the tire and the ground, usually 0.8 on dry ground;

  • R is the radius of curvature, and the calculation formula is as follows, where m is the projection distance from the midpoint Pmid to the start and end point straight line, and L is the distance between the start and end points:

    84faec4ee384df5443f0851b014d368a.jpeg

Combining the above algorithms and formulas, plus the heading smoothing algorithm, we finally fit the early deceleration and straight-line acceleration effects that are close to real driving behavior. As shown below.

f6ef315ce33e7ee18e2313677a6d8bf0.png

These simulated trajectories can keep the positioning engine in the lane-level state even in U-turn scenarios, avoiding frequent lane-level exits caused by yaw recalculation or insufficient simulated navigation accuracy.

At this point, we have completed the entire lane-level navigation scene construction and restoration simulation process from top to bottom.

6. Current situation and future

At present, we already have a set of basic capabilities for refined simulation of lane-level navigation from scene construction to road network coverage, from lane control to vehicle speed simulation. This capability ensures data quality and lane-level navigation stability testing on ordinary urban roads. Achieved low-cost nationwide high-speed and urban ordinary road lane-level coverage stress testing, greatly shortening the lane-level data verification cycle.

Finally, during the lane-level simulation testing process, we accumulated a large amount of lane-level navigation information. In the future, we can use a series of automated analysis methods to discover software quality or data quality problems in navigation to further reduce costs and improve efficiency.

Recommended reading

Follow "Amap Technology" to learn more

Guess you like

Origin blog.csdn.net/amap_tech/article/details/132703253