Dynamic test scene generation method, device and equipment for automatic driving test

By constructing a scene behavior tree and using simulated annealing algorithm to optimize scene parameter values, the problem of inaccurate parameter assignment for autonomous driving test scenarios is solved, and efficient and accurate dynamic test scenario generation is achieved.

CN117785676BActive Publication Date: 2026-07-21INST OF SOFTWARE - CHINESE ACAD OF SCI
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INST OF SOFTWARE - CHINESE ACAD OF SCI
Filing Date
2023-12-15
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

In existing technologies, the random assignment of parameters in autonomous driving test scenarios or the use of empirical methods can lead to scenarios failing to operate as expected, resulting in a lack of accuracy and efficiency.

Method used

By constructing a scene behavior tree, optimizing scene parameters using simulated annealing algorithm, and iteratively calculating scene parameter values ​​based on scene evaluation function, the scene can be ensured to run as scheduled.

Benefits of technology

It improves the accuracy and efficiency of dynamic test scenario generation, ensures that scenario parameter values ​​enable the scenario to run as scheduled, and reduces randomness and uncertainty.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117785676B_ABST
    Figure CN117785676B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a dynamic test scene generation method, device and equipment for automatic driving test, and belongs to the technical field of automatic driving test. The method comprises the following steps: step 1: extracting scene parameters of a dynamic test scene from scene description information of an automatic driving test, and constructing a scene behavior tree according to atomic actions or trigger conditions corresponding to the scene parameters; step 2: running the automatic driving test according to the scene behavior tree and parameter values of the scene parameters, and calculating a function value of a scene evaluation function based on a running result; step 3: updating the parameter values of the scene parameters based on the function value of the scene evaluation function, and executing again from step 2 until a stop updating condition is reached; and step 4: generating a dynamic test scene with target parameter values of the scene parameters. The present disclosure can calculate one or more sets of parameter values of the scene parameters to make the scene run as scheduled, and improve the accuracy and efficiency of dynamic test scene generation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of autonomous driving testing technology, and in particular to a method, apparatus and equipment for generating dynamic test scenarios for autonomous driving testing. Background Technology

[0002] Scenario-based testing is a crucial aspect of autonomous driving systems engineering. Even with a textual description and behavior tree of the test scenario, it's not guaranteed that the scenario will operate according to the described logic. This is because the textual description and behavior tree only represent the abstract aspects of the scenario; the specific parameters, such as the speed and distance traveled by the participants, are not yet determined.

[0003] However, the number of scenario parameters is large, and the range of potentially reasonable parameter values ​​is extremely wide. How to assign values ​​to these scenario parameters to ensure the scenario runs as expected is a pressing issue. Current technologies that assign values ​​based on experience or randomly cannot guarantee that the scenario will run as scheduled. Summary of the Invention

[0004] This invention proposes a method, apparatus, and equipment for generating dynamic test scenarios for autonomous driving testing. It can calculate one or more sets of parameter values ​​for the scenario to operate as scheduled, thereby improving the accuracy and efficiency of dynamic test scenario generation.

[0005] According to a first aspect of the present disclosure, a method for generating dynamic test scenarios for autonomous driving testing is disclosed, comprising:

[0006] From the scenario description information of autonomous driving test, the scenario parameters of the dynamic test scenario are extracted, and a scenario behavior tree is constructed according to the atomic actions or triggering conditions corresponding to the scenario parameters. The scenario behavior tree is used to control the running logic of the dynamic test scenario.

[0007] The autonomous driving test is run according to the scenario behavior tree and the parameter values ​​of the scenario parameters, and the function value of the scenario evaluation function is calculated based on the running results; wherein, the scenario evaluation function is used to indicate the degree of difference between the actual running results of the dynamic test scenario and the expected results of the scenario description information;

[0008] The parameter values ​​of the scene parameters are updated based on the function value of the scene evaluation function, and the process is repeated from the step of running the autonomous driving test according to the scene behavior tree and the parameter values ​​of the scene parameters until the condition for stopping the update is met.

[0009] The dynamic test scenario is generated using the target parameter value of the scenario parameters; wherein the target parameter value is calculated before the algorithm iteration reaches the stop update condition, and the scenario evaluation function has a value of zero when the parameter value of the scenario parameters is the target parameter value.

[0010] Optionally, calculating the function value of the scene evaluation function based on the running results includes: monitoring and statistically analyzing the node execution status of the scene behavior tree during the running process; wherein, if all nodes in the scene behavior tree are executed as expected, the node execution status is assigned a value of zero, otherwise the node execution status is assigned a positive value; obtaining the position of the scene participants at the end of the running process, and determining whether the position of the scene participants satisfies a preset positional relationship; wherein, if the position of the scene participants satisfies the preset positional relationship, the preset positional relationship determination result is assigned a value of zero, otherwise the preset positional relationship determination result is assigned a positive value; statistically analyzing unexpected situations during the running process, wherein unexpected situations refer to events that exceed expectations; if no unexpected situations exist, the unexpected situations are assigned a value of zero, otherwise the unexpected situations are assigned a positive value; and calculating the function value of the scene evaluation function based on the node execution status, the preset positional relationship determination result, and the unexpected situations.

[0011] Optionally, updating the parameter value of the scene parameter based on the function value of the scene evaluation function includes: calculating a new parameter value of the scene parameter when the stop-update condition is not met; comparing the current function value and the historical function value of the scene evaluation function, and updating the parameter value of the scene parameter based on the comparison result and the new parameter value of the scene parameter, wherein the current function value of the scene evaluation function refers to the function value of the scene evaluation function calculated in the current round during the algorithm iteration, and the historical function value of the scene evaluation function refers to the function value of the scene evaluation function calculated in the previous round during the algorithm iteration; wherein, if the current function value of the scene evaluation function is less than the historical function value, the parameter value of the scene parameter is updated to the new parameter value of the scene parameter; if the current function value of the scene evaluation function is greater than or equal to the historical function value, the parameter value of the scene parameter is updated to the new parameter value of the scene parameter with a certain probability.

[0012] Optionally, the step of calculating new parameter values ​​for the scene parameters when the stop-update condition is not met includes: obtaining the current temperature during the algorithm iteration process; moving the current parameter values ​​of each scene parameter by a random distance according to the current temperature to obtain new parameter values ​​for each scene parameter; determining whether the new parameter values ​​of each scene parameter are within the parameter value range of the scene parameter; if not, then re-executing from the step of moving the current parameter values ​​of each scene parameter by a random distance according to the current temperature to obtain new parameter values ​​for each scene parameter.

[0013] Optionally, updating the parameter value of the scene parameter with a certain probability to the new parameter value of the scene parameter includes: randomly selecting a value from [0,1] as the probability p; if the probability p is less than exp(-Δf / T), then updating the parameter value of the scene parameter to the new parameter value of the scene parameter, otherwise maintaining the current parameter value of the scene parameter; wherein, Δf is the difference between the historical function value and the current function value of the scene evaluation function, and T is the current temperature in the algorithm iteration process.

[0014] Optionally, the stop-update condition refers to the current temperature of the algorithm iteration process being less than or equal to a preset end temperature.

[0015] According to a second aspect of the present disclosure, a dynamic test scenario generation apparatus for autonomous driving testing is provided, comprising:

[0016] The information acquisition module is used to extract scene parameters of the dynamic test scene from the scene description information of the autonomous driving test, and construct a scene behavior tree according to the atomic actions or triggering conditions corresponding to the scene parameters. The scene behavior tree is used to control the running logic of the dynamic test scene.

[0017] The function calculation module is used to run autonomous driving tests according to the scene behavior tree and the parameter values ​​of the scene parameters, and calculate the function value of the scene evaluation function based on the running results; wherein, the scene evaluation function is used to indicate the degree of difference between the actual running results of the dynamic test scene and the expected results of the scene description information;

[0018] The parameter update module is used to update the parameter values ​​of the scene parameters based on the function value of the scene evaluation function;

[0019] The function calculation module is further configured to, after the parameter update module updates the parameter value of the scene parameter based on the function value of the scene evaluation function, resume execution from the step of running the autonomous driving test according to the scene behavior tree and the parameter value of the scene parameter until the condition for stopping the update is met;

[0020] A scene generation module is used to generate the dynamic test scene with the target parameter value of the scene parameters; wherein the target parameter value is calculated before the algorithm iteration reaches the stop update condition, and when the parameter value of the scene parameters is the target parameter value, the function value of the scene evaluation function is zero.

[0021] According to a third aspect of the present disclosure, a computer device is provided, the computer device comprising: a processor and a memory storing computer program instructions; the processor, when executing the computer program instructions, implements the dynamic test scenario generation method for autonomous driving testing provided in the first aspect of the present disclosure.

[0022] According to a fourth aspect of the present disclosure, a computer-readable storage medium is provided, wherein computer program instructions are stored on the computer-readable storage medium, and the computer program instructions, when executed by a processor, implement the dynamic test scenario generation method for autonomous driving testing provided in the first aspect of the present disclosure.

[0023] The technical solutions provided in this disclosure have at least the following beneficial effects:

[0024] This invention proposes a dynamic test scenario generation algorithm based on heuristic search. For a given abstract scenario, it ensures the discovery of a concrete scenario that can run as expected. Specifically, for an abstract scenario with given scenario description information, this invention extracts scenario parameters from the scenario description information and constructs a scenario behavior tree. After assigning values ​​to the scenario parameters, it runs the scenario behavior tree to achieve dynamic scenario control. After the run, a simulated annealing algorithm is used to optimize the parameter values ​​based on a scenario evaluation function to find one or more sets of parameter values ​​that enable the scenario to run as expected. Substituting these values ​​into the abstract scenario generates a concrete dynamic test scenario. Compared to randomly assigning values ​​to scenario parameters and ensuring the scenario runs as expected, which involves significant randomness and uncertainty, this invention uses a scenario evaluation function to indicate the degree of difference between the actual running result of the concrete scenario and the expected result of the scenario description information. By calculating and comparing the function value of the scenario evaluation function, the algorithm iterates to continuously approach the global optimum, ensuring that the final generated concrete dynamic test scenario satisfies the scenario description information and runs as expected, effectively improving the accuracy and efficiency of dynamic test scenario generation.

[0025] This invention focuses on the characteristics of autonomous driving testing and constructs a scene evaluation function by combining multiple dimensions. Specifically, for the application of simulated annealing algorithm in the field of autonomous driving testing, this invention proposes a method for constructing and calculating a scene evaluation function. Specifically, when constructing the scene evaluation function, it comprehensively considers the execution status of nodes in the scene behavior tree, the preset positional relationships that scene participants should satisfy at the end of the run, and whether the autonomous driving test can be completed safely and on time. The scene evaluation function comprehensively and accurately expresses the degree of difference between the actual running result and the expected result of the scene, which helps to subsequently search for accurate dynamic test scenes.

[0026] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0027] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.

[0028] Figure 1 This is a flowchart illustrating a dynamic test scenario generation method for autonomous driving testing, according to an exemplary embodiment.

[0029] Figure 2 This is a schematic diagram of the structure of a scene behavior tree according to an exemplary embodiment.

[0030] Figure 3 This is a schematic diagram of a scene behavior tree in an overtaking scenario according to an exemplary embodiment.

[0031] Figure 4 This is a trajectory diagram showing the results of a multi-scenario experiment on an overtaking scenario, based on an exemplary embodiment.

[0032] Figure 5 This is a detailed trajectory diagram of some location points in a multi-scenario experiment of an overtaking scenario, as illustrated by an exemplary embodiment.

[0033] Figure 6 This is a comparative experimental result diagram of a multi-scenario overtaking scenario, illustrated according to an exemplary embodiment.

[0034] Figure 7 This is a schematic diagram illustrating the driving trajectories and scene operation diagram of two vehicles in an overtaking scenario according to an exemplary embodiment.

[0035] Figure 8 It is a heat map of speed parameters in the same scenario experiment of an overtaking scenario, according to an exemplary embodiment.

[0036] Figure 9This is a block diagram of a dynamic test scenario generation apparatus for autonomous driving testing, illustrated according to an exemplary embodiment.

[0037] Figure 10 This is a block diagram illustrating a computer device 1000 according to an exemplary embodiment. Detailed Implementation

[0038] The exemplary embodiments will now be described in detail with reference to the accompanying drawings.

[0039] like Figure 1 As shown, the dynamic test scenario generation method in this invention includes the following steps (steps 1 to 4).

[0040] Step 1: Extract the scene parameters of the dynamic test scene from the scene description information of the autonomous driving test, and construct the scene behavior tree according to the atomic actions or triggering conditions corresponding to the scene parameters.

[0041] In autonomous driving testing, test scenarios can be divided into abstract scenarios and concrete scenarios. Abstract scenarios only describe the approximate positions and movements of scene participants (such as vehicles and pedestrians) in the traffic environment, without specifying the exact values. Concrete scenarios, on the other hand, define the magnitude of each value. Based on this, scenario parameters are a series of undefined numerical variables in the abstract scenario. After assigning values ​​to the scenario parameters, the abstract scenario and the scenario parameters together represent a concrete scenario.

[0042] For example, suppose the scenario description information of the test scenario includes: "Vehicle car1 is x1 m to the left and x2 m in front of vehicle car2, facing the same direction; both vehicles are traveling along the lane at speeds of x3 km / h and x4 km / h respectively; when car2 is more than x5 m away from car1, it changes lanes to the left, and both vehicles stop after the lane change." The above scenario description information represents an abstract scenario, and the above variables xi (i = 1, 2, 3, 4, 5) are the scenario parameters. By assigning values ​​to the scenario parameters and then inputting the abstract scenario, a specific scenario can be obtained. For example, a specific scenario of the above test scenario is: "Vehicle car1 is 5 m to the left and 10 m in front of vehicle car2, facing the same direction; both vehicles are traveling along the lane at speeds of 20 km / h and 40 km / h respectively; when car2 is more than 15 m away from car1, it changes lanes to the left, and both vehicles stop after the lane change."

[0043] Furthermore, autonomous driving testing scenarios can be divided into static test scenarios and dynamic test scenarios. Static test scenarios describe the positional and directional relationships between participants in a traffic environment and are used for initial scenario generation. Dynamic test scenarios, on the other hand, build upon static test scenarios, further describing the action logic and temporal relationships of the participants. For example, in the above example, "vehicle car1 is x1 m to the left and x2 m ahead of vehicle car2, facing the same direction" represents a static test scenario; "both vehicles are traveling along lanes at speeds of x3 km / h and x4 km / h respectively; when car2 is more than x5 m away from car1, it changes lanes to the left, and both vehicles stop after the lane change" represents a dynamic test scenario. The purpose of this invention is to determine the parameter values ​​of the scenario parameters for dynamic test scenarios based on a given static test scenario, in order to generate specific dynamic test scenarios.

[0044] This invention controls the operational logic of dynamic test scenarios through a scene behavior tree. The entire movement process of a scene participant can be viewed as a continuous combination of several independent actions, referred to as atomic actions. Combining the description of the dynamic test scenario in the scene description information, a scene behavior tree is constructed based on the temporal relationship and triggering conditions of the atomic actions. The temporal relationship is reflected through the specific structure of the scene behavior tree and the types of combined nodes, while the triggering conditions are reflected through basic events. Some atomic actions and triggering conditions have corresponding scene parameters. Specific atomic actions are the behavior nodes of the scene behavior tree, and the triggering conditions of atomic actions are the condition nodes of the scene behavior tree. The execution process of the scene behavior tree is the movement process of the scene participant. Simultaneously, a timing node is introduced to control the autonomous driving test to end within a specified time.

[0045] For example, for the test scenario in the above example, the scenario behavior tree structure corresponding to the dynamic test scenario part of the test scenario is as follows: Figure 2 As shown. The rightmost Timer node in the scene behavior tree is the timing node, ensuring the autonomous driving test ends within the set maximum time. If the scene execution time exceeds the set value in the timing node, the root node will directly return "Success," and the autonomous driving test will end. Figure 2 In the scene behavior tree shown, the scene parameter corresponding to the atomic action "car1 drives along the lane" is x3 as mentioned above, the scene parameter corresponding to the atomic action "car2 drives along the lane" is x4 as mentioned above, and the scene parameter corresponding to the trigger condition of the atomic action "car2 is greater than car1" is x5 as mentioned above.

[0046] Step 2: Run the autonomous driving test according to the scene behavior tree and the parameter values ​​of the scene parameters, and calculate the function value of the scene evaluation function based on the running results.

[0047] The purpose of this invention is to find one or more sets of parameter values ​​for a given abstract scenario, which, when substituted into the abstract scenario, can yield a specific scenario that can operate as expected. To achieve this, this invention proposes a scenario generation algorithm based on heuristic search. First, the scenario parameters extracted in step 1 are assigned values ​​to obtain a specific scenario. Then, an autonomous driving test is performed on this specific scenario, and after the test, the evaluation value of the specific scenario is calculated. If the stopping update condition is not met, the parameter values ​​of the scenario are optimized. This process is iterated, and finally, one or more sets of parameter values ​​that result in a zero evaluation value for the specific scenario during the algorithm iteration process are output.

[0048] The autonomous driving test for a specific scenario includes scenario initialization and dynamic control. Scenario initialization involves determining the initial generation positions and orientations of scenario participants. This can be done by obtaining a suitable area from the scenario map based on the scenario parameters and their values. Dynamic control involves running the scenario behavior tree based on the initialization and executing specific nodes in the scenario behavior tree according to the scenario parameters and their values. It's important to note that the initial scenario parameter values ​​during algorithm iteration can be obtained through random assignment, for example, by randomly sampling a parameter value within the parameter value range, which can be obtained from the scenario description information.

[0049] During the algorithm iteration process, after each round of autonomous driving testing, an evaluation value for the specific scenario corresponding to the current round is calculated based on the results of the autonomous driving test. In this invention, the evaluation value of a specific scenario is indicated by the function value of a scenario evaluation function. This scenario evaluation function is used to indicate the degree of difference between the actual running result of the specific scenario and the expected result of the scenario description information. The smaller the function value of the scenario evaluation function, the closer the actual running result is to the expected result. If the function value is zero, it means that the running result of this scenario completely meets the expected running result.

[0050] In one example, the process of calculating the function value of the scene evaluation function includes the following steps (steps 2.1 to 2.4).

[0051] Step 2.1: Monitor and statistically analyze the execution status of nodes in the scene behavior tree during operation.

[0052] The execution process of the scene behavior tree is the running process of an abstract scene, and also the process of each node in the scene behavior tree being executed sequentially according to logic. Therefore, the execution status of nodes in the scene behavior tree can, to a certain extent, represent the running status of the scene. Therefore, this invention adds a monitoring operation on the node execution status when calculating the scene's evaluation value (i.e., the function value of the scene evaluation function), which can statistically determine the node execution status g(X) of the scene behavior tree during the specific scene running process of autonomous driving testing. In implementation, the Status attribute of the target node (i.e., any node in the scene behavior tree) can be queried every time step to monitor the running status of the target node, specifically including four states: Invalid (uninitialized), Running, Success, and Failure. Optionally, this invention only considers nodes with a Success running status as successfully completed nodes.

[0053] During statistical analysis, the execution status g(X) of a node can be assigned a value. Optionally, for the purpose of comparison where a smaller function value of the scene evaluation function indicates a closer approximation between the actual and expected results, the execution status g(X) is assigned a value of zero if all nodes in the scene behavior tree complete their expected execution; otherwise, a positive value is assigned. In practical applications, different abstract scenes have different scene behavior trees, resulting in different expected completion rates for nodes. Consequently, different calculation methods exist for the node execution status g(X), which can be flexibly set according to requirements.

[0054] Step 2.2: Obtain the positions of the scene participants when the run ends, and determine whether the positions of the scene participants satisfy the preset positional relationship.

[0055] Based on the characteristics of the scenario, the participants in the scenario should usually meet the preset positional relationship when the autonomous driving test runs are completed. Therefore, this invention obtains the position of each participant in the scenario when the run is completed and determines whether the preset positional relationship is met based on this.

[0056] During the judgment, a value can be assigned to the preset positional relationship judgment result h(X). Optionally, for the purpose of comparison where a smaller function value of the scene evaluation function indicates a closer relationship between the actual and expected results, the preset positional relationship judgment result h(X) is assigned a value of zero when the positions of the scene participants satisfy the preset positional relationship; otherwise, a positive value is assigned to the preset positional relationship judgment result h(X). Optionally, if the positions of the scene participants do not satisfy the preset positional relationship, the preset positional relationship judgment result h(X) can be directly assigned a positive number (such as 1).

[0057] Step 2.3: Analyze any unexpected situations that occur during the operation.

[0058] Unexpected situations refer to events that occur beyond expectations, including those beyond the scope of the scenario description information (e.g., no collision is specified in the scenario description, but a collision occurs during actual operation) or those exceeding other user-preset conditions (e.g., the user presets a maximum runtime of 10 minutes for autonomous driving testing, but it actually runs for 12 minutes). Optionally, unexpected situations may also include the frequency or number of times the event occurs.

[0059] During statistical analysis, values ​​can be assigned to the unexpected situation r(X). Optionally, for the purpose of comparison where a smaller function value of the scenario evaluation function indicates a closer approximation between the actual and expected results, the unexpected situation r(X) is assigned a value of zero when no unexpected situation occurs (i.e., no unexpected events occur); otherwise, a positive value is assigned. Optionally, when an unexpected situation exists, the unexpected situation r(X) can be directly assigned a normal value, such as 10; alternatively, different normal values ​​can be assigned based on the number or frequency of unexpected events. For example, if one type of unexpected event occurs, the unexpected situation r(X) is assigned a value of 5; if two or more types of unexpected events occur, the unexpected situation r(X) is assigned a value of 10.

[0060] Step 2.4: Calculate the function value of the scenario evaluation function based on the node execution status, the preset positional relationship judgment result, and unexpected situations.

[0061] For a given specific scenario X (i.e., the parameter values ​​of the scenario parameters are given), the scenario evaluation function comprehensively considers the execution status of nodes in the scenario behavior tree, the preset positional relationships that the scenario participants should meet at the end of the run, and whether the autonomous driving test can be completed safely and on time.

[0062] Based on the node execution status g(X), the preset positional relationship judgment result h(X), and the unexpected situation r(X) calculated in steps 2.1 to 2.3 above, the function value f(X) of the scene evaluation function is further calculated. For example, the function value f(X) of the scene evaluation function = node execution status g(X) + preset positional relationship judgment result h(X) + unexpected situation r(X). Of course, the function value f(X) of the scene evaluation function can also be calculated in other ways, such as by multiplying the node execution status g(X), the preset positional relationship judgment result h(X), and the unexpected situation r(X). This invention does not limit this calculation.

[0063] Step 3: Update the parameter values ​​of the scene parameters based on the function value of the scene evaluation function, and repeat the process starting from Step 2 until the condition for stopping the update is met.

[0064] The scene generation algorithm based on heuristic search proposed in this invention utilizes the idea of ​​simulated annealing. Simulated annealing is a heuristic method that simulates the annealing process of a high-temperature solid: the initial solid system has a maximum temperature, at which point the internal energy is at its maximum, the particles within the system are most active, and the particles travel the farthest distance in random motion. As the temperature gradually decreases, the internal energy of the system decreases, the particle motion weakens, the distance of random motion decreases, and eventually, the motion ceases. The probability that particles tend to reach equilibrium at temperature T is exp(-ΔE / kT), where E is the internal energy of the system at temperature T, ΔE is the change during the cooling process, and k is the Boltzmann constant.

[0065] The idea of ​​simulated annealing algorithm is applied to this invention: internal energy is simulated as the scene evaluation function f(X) to be optimized; the irregular motion of particles is simulated as random motion of particles in the scene parameter space (the scene parameter space consists of the range of parameter values ​​of all scene parameters). Each time a particle moves from the current solution X to a new solution Xnew, it represents the random generation of a new specific scene. If the evaluation value of the new solution is smaller than that of the current solution, the new solution is directly accepted as the current solution. If the evaluation value of the new solution is larger, the new solution is accepted with a certain probability.

[0066] Based on this, in one example, the above-mentioned function value based on the scene evaluation function updates the parameter value of the scene parameter, including the following sub-steps (steps 3.1 to 3.2).

[0067] Step 3.1: Calculate new parameter values ​​for the scene parameters if the conditions for stopping updates are not met.

[0068] If the stop-update condition is not met, the algorithm continues to iterate, calculating new parameter values ​​for the scene to obtain the specific scene evaluated in the next round of algorithm iteration. For an explanation of the stop-update condition, please refer to step 3.2 below; it will not be elaborated upon here.

[0069] Optionally, the calculation process of the new parameter values ​​of the scene parameters includes the following sub-steps (steps 3.1.1 to 3.1.3).

[0070] Step 3.1.1: Obtain the current temperature during the algorithm iteration process.

[0071] During the algorithm iteration process, at the end of each round of calculation, the temperature for the next round must be calculated. Assuming the initial temperature is Tmax and the cooling coefficient is α, then the temperature in the (t+1)th round (t is a positive integer) is the temperature for the next round calculated at the end of the tth round. That is, assuming the current round is t+1, the current temperature T = Tmax * α. t .

[0072] Step 3.1.2: Based on the current temperature, move the current parameter values ​​of each scene parameter by a random distance to obtain the new parameter values ​​of each scene parameter.

[0073] For the i-th scene parameter, assuming the current temperature is T, the current parameter value of the i-th scene parameter is xi, and the new parameter value of the i-th scene parameter is xi_new, the calculation formula for the new parameter value xi_new of the i-th scene parameter is as follows.

[0074] xi_new=round(xi+T*[random(0,1)–random(0,1)])

[0075] The `round` function performs rounding to ensure that the calculated new parameter value `xi_new` is still an integer.

[0076] Step 3.1.3: Determine whether the new parameter value of each scene parameter is within the range of parameter values ​​for that scene parameter; if not, start executing again from step 3.1.2.

[0077] When searching for scene parameter values, it is necessary to ensure that the parameter values ​​are within the parameter value range. Therefore, after calculating the new parameter values ​​for each scene parameter in step 3.1.2 above, it is further determined whether they are within the corresponding parameter value range. If they are within the corresponding parameter value range, they are confirmed as usable as new parameter values; if they are not within the corresponding parameter value range, the new parameter values ​​need to be recalculated, i.e., step 3.1.2 needs to be re-executed. It should be understood that when re-executing step 3.1.2, the current parameter values ​​of the scene parameters on which the data is based remain unchanged.

[0078] The strategy for calculating new parameter values ​​in steps 3.1.1 to 3.1.3 above simulates the characteristic that the higher the temperature during annealing, the more active the particle movement: at higher temperatures, the current solution (i.e., the specific scenario, which is composed of the parameter values ​​of the abstract scenario combined with all scenario parameters) is more likely to move over a wide range, and the current solution may jump out of the current local optimum and turn to find the global optimum; at lower temperatures, the current solution is less likely to move over a wide range, and the current solution may search for the global optimum near the current optimum.

[0079] Step 3.2: Compare the current function value and historical function value of the scene evaluation function, and update the parameter value of the scene parameters based on the comparison result and the new parameter value of the scene parameters.

[0080] The current function value of the scene evaluation function refers to the function value calculated in the current round of the algorithm iteration, indicating the evaluation value of the current specific scene. The historical function value of the scene evaluation function refers to the function value calculated in the previous round of the algorithm iteration, indicating the evaluation value of the previous specific scene. This invention determines whether to accept new parameter values ​​for the scene parameters based on the comparison between the current function value and the historical function value of the scene evaluation function.

[0081] If the current function value of the scene evaluation function is less than the historical function value, then the new parameter value of the scene parameter is accepted, that is, the parameter value of the scene parameter is updated to the new parameter value of the scene parameter calculated in step 3.1; if the current function value of the scene evaluation function is greater than or equal to the historical function value, then the new parameter value of the scene parameter is accepted with a certain probability. Optionally, the probability of accepting the new parameter value can be obtained by a random algorithm. For example, a value is randomly selected from [0,1] as the probability p. If the probability p is less than exp(-Δf / T), then the new parameter value of the scene parameter is accepted; otherwise, the current parameter value of the scene parameter is maintained. Here, Δf is the difference between the historical function value and the current function value of the scene evaluation function, and T is the current temperature.

[0082] The parameter values ​​determined in step 3.2 are the scene parameters used in the next round of algorithm iteration. Step 2 is then re-executed with these parameter values ​​to continue the next round of algorithm iteration until the stopping update condition is met, at which point the algorithm iteration process ends. The stopping update condition is that the current temperature T is less than or equal to the ending temperature Tmin. Before each round of algorithm iteration, the current temperature T is compared with the ending temperature Tmin. If the current temperature T is greater than the ending temperature Tmin, the current function value of the scene evaluation function is calculated using step 2; if the current temperature T is less than or equal to the ending temperature Tmin, the algorithm iteration process ends.

[0083] Step 4: Generate a dynamic test scenario using the target parameter value of the scenario parameters; where the target parameter value is calculated before the algorithm iteration reaches the stop update condition, and the scenario evaluation function has a value of zero when the scenario parameters are the target parameter value.

[0084] During algorithm iteration, if the scene evaluation function calculated in a certain round has a value of zero, it indicates that a feasible solution for the specific scene has been found. The scene parameter values ​​that result in the scene evaluation function being zero are used to generate the specific dynamic test scene. If no feasible solution is found when the algorithm iteration reaches the stopping condition, the scene parameter values ​​that minimized the scene evaluation function value before reaching the stopping update condition are used to generate the specific dynamic test scene. This is because the smaller the scene evaluation function value, the closer the actual running result of the scene is to the expected result. The scene parameter values ​​that minimize the scene evaluation function value before reaching the stopping update condition are already the optimal solution under the current scene description information.

[0085] It should be understood that the scenario description information for autonomous driving testing obtained in step 1 indicates an abstract scenario. Given a static test scenario (i.e., the parameter values ​​of each scenario parameter in the static test scenario are given in the scenario description information), substituting the parameter values ​​of the scenario parameters determined in step 4 into this abstract scenario yields a specific scenario that can operate as expected, thus realizing the generation of dynamic test scenarios. Furthermore, a set of scenario parameter values ​​can generate a specific scenario. When multiple sets of scenario parameter values ​​result in the scenario evaluation function having a value of zero, multiple specific scenarios that can operate as expected can be generated.

[0086] The following is a specific example to illustrate the dynamic test scenario generation method provided by this invention.

[0087] In this example, the scenario description information for the autonomous driving test includes: the following vehicle is 1 m behind the preceding vehicle; the preceding vehicle travels along the lane at a speed of 2 km / h for 3 m; the following vehicle travels along the lane at a speed of 4 km / h (referred to as the "first lane-changing speed of the following vehicle"); when the distance between the two vehicles is less than 5 m (referred to as the "first lane-changing distance"), the following vehicle changes lanes to the left and travels along the lane at a speed of 6 km / h (referred to as the "second lane-changing speed of the following vehicle"); when the distance between the two vehicles is greater than 7 m (referred to as the "second lane-changing distance"), the following vehicle changes lanes to the right.

[0088] For this abstract scenario, the variables xi (i = 1, 2, 3, 4, 5, 6, 7) are the scenario parameters. In this example, x1 to x7 are all scenario parameters for the dynamic test scenario. The parameter value ranges for each scenario parameter are shown in Table 1 below, and the parameter values ​​are integers within their respective parameter value ranges.

[0089] Table 1. Scene parameters and their value ranges

[0090]

[0091]

[0092] Based on the above scenario description information, a structure such as Figure 3 The scenario behavior tree is shown. In the scenario behavior tree, car1 represents the preceding vehicle and car2 represents the following vehicle; the timing node is set to a maximum running time of 30 seconds. The scenario behavior tree first executes the lane-keeping actions of car1 and car2 in parallel; when the distance between the two vehicles is less than the distance of the first lane change, car2 performs a lane change (to the left) and then continues to drive along the lane; when the distance between the two vehicles is greater than the distance of the second lane change, car2 performs a lane change (to the right); after car2 completes its right lane change, the autonomous driving test run ends.

[0093] For the overtaking scenario indicated by the scenario description information in this example, when calculating the node execution status of the scenario behavior tree, the focus should be on whether the two basic events "distance between the two vehicles" are completed successively. If both basic events are completed, then the scenario behavior tree can definitely complete normally. For example, the calculation formula for the node execution status g(X) in this example is as follows.

[0094] g(X)=distance_bias(x5)+distance_bias(x7)

[0095] For the overtaking scenario indicated by the scenario description information in this example, at the end of the autonomous driving test run, the specific positional relationship that the scenario participants should satisfy is that car2 is directly in front of car1 along the lane direction. For example, the formula for calculating the preset positional relationship judgment result h(X) in this example is shown below.

[0096]

[0097] Furthermore, as an example, the formula for calculating the unexpected case r(X) in this example is shown below.

[0098]

[0099] Adding the three functions above together yields the scene evaluation function f(X).

[0100] To fully demonstrate the efficiency and accuracy of the dynamic test scenario generation method in this invention, this example performs both multi-scenario experiments and single-scenario experiments.

[0101] The multi-scene experiment involves finding a feasible solution for ten different locations on the scene map using the dynamic test scene generation method provided in this invention. In this experiment, the number of particles n = 3, the initial temperature Tmax = 100, the ending temperature Tmin = 1, and the cooling coefficient α = 0.8. The algorithm terminates when the temperature drops to less than or equal to Tmin. It should be understood that one particle represents a specific scene, or a solution. At the beginning of the algorithm iteration, the multi-scene experiment randomly assigns values ​​to the seven scene parameters, resulting in three specific scenes, i.e., three particles. Each particle is a vector composed of the parameter values ​​of the seven scene parameters.

[0102] The results of the multi-scenario experiments are as follows Figure 4 As shown, car1 (the front car) travels from the white starting point along the blue trajectory to the blue ending point, while car2 (the rear car) travels from the white starting point along the red trajectory to the red ending point. Among these, Figure 4 The detailed trajectories of the scene participants (car1 and car2) at locations 1, 2, 9, and 10 are as follows: Figure 5 As shown.

[0103] Furthermore, this example includes a comparative experiment for multiple scenarios: Scenario parameter values ​​are specified using a random sampling method. Each iteration stops when a feasible solution is found, without performing the cooling and particle movement operations used in this invention to generate new solutions. Each iteration uses a purely random method to generate new solutions. Due to the high uncertainty of random sampling, the comparative experiment performs three iterations for each location point, and the average number of iterations required to find a feasible solution across the three iterations is taken to obtain the average search count for each location point. The results of the comparative experiment are as follows: Figure 6 As shown, Figure 6 In this invention, SAA represents the dynamic test scenario generation method, and random represents the random sampling method. Figure 6 As can be seen, at eight out of these ten locations, the dynamic test scenario generation method provided by this invention requires fewer search iterations to obtain a feasible solution than the random sampling method, with significantly fewer search iterations required at the fourth and eighth locations. This is because the overtaking scenario involves numerous parameters and a large parameter space, making it difficult for random sampling to find a feasible solution in a short time. In contrast, this invention heuristically optimizes the parameters based on the current scenario's evaluation value, demonstrating a significant advantage.

[0104] The same-scenario experiment involves appropriately increasing the number of particles, within time constraints, to find as many feasible solutions as possible. In this experiment, the number of particles is set to n = 50, the initial temperature Tmax = 100, the ending temperature Tmin = 1, and the cooling coefficient α = 0.8. The algorithm terminates when the temperature drops to less than or equal to Tmin. It should be understood that one particle represents a specific scenario, or a solution. At the beginning of the algorithm iteration, the same-scenario experiment randomly assigns values ​​to the seven scenario parameters, resulting in 50 specific scenarios, i.e., 50 particles. Each particle is a vector composed of the parameter values ​​of the seven scenario parameters.

[0105] Based on this, the algorithm in this example iterates a maximum of 21 times (or it can be said that the algorithm stops updating after the 21st iteration), iterating a total of 1050 times for 50 particles. In this example, the car1 in front is fixed at the location point (-140.6, -416.6) on the scene map, which is located on an S-shaped curve in the scene map. Following the process of this invention, a total of 347 feasible solutions were found, with an average search time of 3.03. In addition, this example also adds a comparative experiment to the scene experiment: using a random sampling method to specify the parameter values ​​of the scene parameters, a total of 1050 random samples were taken, finding 52 feasible solutions, with an average search time of 20.19.

[0106] One typical specific scenario (solution) is X = (23, 31, 160, 50, 19, 58, 20), meaning the following car is 23m behind the preceding car. The preceding car travels along the lane at a speed of 31km / h for 160m, and the following car travels along the lane at a speed of 50km / h. When the distance between the two cars is less than 19m, the following car changes lanes to the left and travels along the lane at a speed of 58km / h. When the distance between the two cars is greater than 20m, the following car changes lanes to the right. Finally, the following car successfully overtakes the preceding car. The corresponding driving trajectories and scenario operation diagrams are as follows: Figure 7 As shown.

[0107] The average number of search attempts for feasible solutions in the same scenario experiment was 3.03, while the average number of search attempts in the comparative experiment was 20.19. The solution efficiency of the present invention is 567% higher than that of random sampling. In the same scenario experiment with many parameters and a large parameter space, the average number of search attempts for random sampling is very high and the efficiency is very poor. However, once the present invention finds a feasible solution, it can search for a large number of other feasible solutions in the vicinity of that feasible solution, further expanding its advantages.

[0108] Furthermore, this invention statistically analyzed the values ​​of the speeds of the preceding vehicle along the lane (car1_speed) and the following vehicle's speeds (car2_speed1, car2_speed2) before and after changing lanes, for 347 feasible solutions obtained through experimental search and 52 feasible solutions obtained through random sampling in the same scenario. Corresponding heatmaps were then plotted, as shown below. Figure 8 As shown, the darker the color, the higher the frequency of the corresponding data.

[0109] Figure 8 The heatmap shown illustrates the extent to which the three velocity scene parameters cover their value ranges, such as... Figure 8 As shown, the speed of the vehicle in front is concentrated in the range of [20, 25], while the speeds of the vehicle behind before and after changing lanes are concentrated in [50, 55] and [45, 50], respectively. The speed of the vehicle behind is significantly higher than that of the vehicle in front, indicating that in low-speed urban driving, maintaining a speed difference between the vehicle in front and behind between [25, 30] has a high probability of successfully overtaking.

[0110] Figure 8 The heatmap also shows the distribution of parameters for the three velocity scenarios, which is very similar to the distribution obtained by random sampling. Calculations show that the average Euclidean distance between each particle and other particles in the 347 feasible solutions obtained using the dynamic test scenario generation method provided by this invention is 43.14, while the average distance in the 52 feasible solutions obtained by the random sampling method is 43.19. The particle distances obtained by both methods are almost identical, indicating that the distribution of feasible solutions obtained by this invention is consistent with that obtained by random sampling, and that the solution efficiency has a significant advantage.

[0111] In summary, this invention proposes a dynamic test scenario generation algorithm based on heuristic search, ensuring that a specific scenario that can run as expected is found for a given abstract scenario. Specifically, for an abstract scenario with given scenario description information, this invention extracts scenario parameters from the scenario description information and constructs a scenario behavior tree. After assigning values ​​to the scenario parameters, the scenario behavior tree is run to achieve dynamic scenario control. After the run, a simulated annealing algorithm is used to optimize the parameter values ​​of the scenario based on a scenario evaluation function to find one or more sets of parameter values ​​that enable the scenario to run as expected. Substituting these values ​​into the abstract scenario generates a specific dynamic test scenario. Compared to randomly assigning values ​​to scenario parameters and ensuring the scenario runs as expected, which involves significant randomness and uncertainty, this invention uses a scenario evaluation function to indicate the degree of difference between the actual running result of the specific scenario and the expected result of the scenario description information. By calculating and comparing the function value of the scenario evaluation function, the algorithm iterates to continuously approach the global optimum, ensuring that the final generated specific dynamic test scenario satisfies the scenario description information and runs as expected, effectively improving the accuracy and efficiency of dynamic test scenario generation.

[0112] This invention focuses on the characteristics of autonomous driving testing and constructs a scene evaluation function by combining multiple dimensions. Specifically, for the application of simulated annealing algorithm in the field of autonomous driving testing, this invention proposes a method for constructing and calculating a scene evaluation function. Specifically, when constructing the scene evaluation function, it comprehensively considers the execution status of nodes in the scene behavior tree, the preset positional relationships that scene participants should satisfy at the end of the run, and whether the autonomous driving test can be completed safely and on time. The scene evaluation function comprehensively and accurately expresses the degree of difference between the actual running result and the expected result of the scene, which helps to subsequently search for accurate dynamic test scenes.

[0113] Exemplary device Figure 9 This is an exemplary embodiment illustrating a dynamic test scenario generation apparatus for autonomous driving testing, with reference to... Figure 9 The device includes: an information acquisition module 910, a function calculation module 920, a parameter update module 930, and a scene generation module 940.

[0114] The information acquisition module 910 is used to extract scene parameters of the dynamic test scene from the scene description information of the autonomous driving test, and construct a scene behavior tree according to the atomic actions or triggering conditions corresponding to the scene parameters. The scene behavior tree is used to control the running logic of the dynamic test scene.

[0115] The function calculation module 920 is used to run an autonomous driving test according to the scene behavior tree and the parameter values ​​of the scene parameters, and calculate the function value of the scene evaluation function based on the running results; wherein, the scene evaluation function is used to indicate the degree of difference between the actual running results of the dynamic test scene and the expected results of the scene description information;

[0116] The parameter update module 930 is used to update the parameter values ​​of the scene parameters based on the function value of the scene evaluation function;

[0117] The function calculation module 920 is further configured to, after the parameter update module updates the parameter value of the scene parameter based on the function value of the scene evaluation function, resume execution from the step of running the autonomous driving test according to the scene behavior tree and the parameter value of the scene parameter until the condition for stopping the update is met;

[0118] The scene generation module 940 is used to generate the dynamic test scene with the target parameter value of the scene parameters; wherein the target parameter value is calculated before the algorithm iteration reaches the stop update condition, and when the parameter value of the scene parameters is the target parameter value, the function value of the scene evaluation function is zero.

[0119] In one embodiment of this disclosure, the function calculation module 920 is configured to: monitor and statistically analyze the node execution status of the scene behavior tree during operation; wherein, if all nodes in the scene behavior tree are executed as expected, the node execution status is assigned a value of zero, otherwise the node execution status is assigned a positive value; obtain the position of the scene participants at the end of operation, and determine whether the position of the scene participants satisfies a preset positional relationship; wherein, if the position of the scene participants satisfies the preset positional relationship, the preset positional relationship judgment result is assigned a value of zero, otherwise the preset positional relationship judgment result is assigned a positive value; statistically analyze unexpected situations during operation, wherein unexpected situations refer to events that exceed expectations; if no unexpected situations exist, the unexpected situations are assigned a value of zero, otherwise the unexpected situations are assigned a positive value; and calculate the function value of the scene evaluation function based on the node execution status, the preset positional relationship judgment result, and the unexpected situations.

[0120] In one embodiment, the parameter update module 930 is configured to: calculate a new parameter value for the scene parameter when the stop-update condition is not met; compare the current function value and historical function value of the scene evaluation function, and update the parameter value of the scene parameter based on the comparison result and the new parameter value of the scene parameter, wherein the current function value of the scene evaluation function refers to the function value of the scene evaluation function calculated in the current round during the algorithm iteration process, and the historical function value of the scene evaluation function refers to the function value of the scene evaluation function calculated in the previous round during the algorithm iteration process; wherein, if the current function value of the scene evaluation function is less than the historical function value, the parameter value of the scene parameter is updated to the new parameter value of the scene parameter; if the current function value of the scene evaluation function is greater than or equal to the historical function value, the parameter value of the scene parameter is updated to the new parameter value of the scene parameter with a certain probability.

[0121] In one disclosed embodiment, the parameter update module 930 is further configured to: obtain the current temperature during the algorithm iteration process; move the current parameter value of each scene parameter by a random distance according to the current temperature to obtain a new parameter value for each scene parameter; determine whether the new parameter value of each scene parameter is within the parameter value range of the scene parameter; if not, then start executing again from the step of moving the current parameter value of each scene parameter by a random distance according to the current temperature to obtain a new parameter value for each scene parameter.

[0122] In one disclosed embodiment, the parameter update module 930 is further configured to: randomly select a value from [0,1] as probability p; if the probability p is less than exp(-Δf / T), then update the parameter value of the scene parameter to the new parameter value of the scene parameter; otherwise, continue to maintain the current parameter value of the scene parameter; wherein, Δf is the difference between the historical function value and the current function value of the scene evaluation function, and T is the current temperature of the algorithm iteration process.

[0123] In one embodiment of this disclosure, the stop-update condition refers to the current temperature of the algorithm iteration process being less than or equal to a preset end temperature.

[0124] The exemplary device is an embodiment of the device corresponding to the exemplary method described above. The specific operation of each module can be understood with reference to the description of the method embodiment, and will not be repeated here.

[0125] Exemplary electronic devices

[0126] Figure 10 This is a block diagram illustrating a computer device 1000 according to an exemplary embodiment. The computer device 1000 may be a terminal, a laptop computer, a desktop computer, a server, a computer cluster, or other types of electronic devices.

[0127] Reference Figure 10 The computer device 1000 may include at least one processor 1010 and a memory 1020. The processor 1010 can execute instructions stored in the memory 1020. The processor 1010 is communicatively connected to the memory 1020 via a data bus. In addition to the memory 1020, the processor 1010 may also be communicatively connected to an input device 1030, an output device 1040, and a communication device 1050 via the data bus.

[0128] Processor 1010 can be any conventional processor. Processors may include central processing units (CPUs), graphics processing units (GPUs), field-programmable gate arrays (FPGAs), systems on chips (SoCs), application-specific integrated circuits (ASICs), or combinations thereof.

[0129] The memory 1020 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk.

[0130] In this embodiment of the present disclosure, the memory 1020 stores executable instructions, and the processor 1010 can read the executable instructions from the memory 1020 and execute the instructions to implement all or part of the steps of the dynamic test scenario generation method for autonomous driving testing in the above exemplary embodiment.

[0131] Exemplary computer-readable storage media

[0132] In addition to the methods and apparatus described above, exemplary embodiments of this disclosure also include a computer program product or a computer-readable storage medium storing the computer program product. The computer product includes computer program instructions that can be executed by a processor to perform all or part of the steps described in the exemplary embodiments above.

[0133] Computer program products can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this application. These programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages, and scripting languages ​​(e.g., Python). The program code can be executed entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0134] Computer-readable storage media may take the form of any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may, for example, include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of readable storage media include: static random access memory (SRAM) having one or more electrically connected wires, electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk, or any suitable combination thereof.

[0135] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of this disclosure. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and embodiments are to be considered exemplary only, and this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope.

Claims

1. A method for generating dynamic test scenarios for autonomous driving testing, characterized in that, The method includes: From the scenario description information of autonomous driving test, the scenario parameters of the dynamic test scenario are extracted, and a scenario behavior tree is constructed according to the atomic actions or triggering conditions corresponding to the scenario parameters. The scenario behavior tree is used to control the running logic of the dynamic test scenario. The autonomous driving test is run according to the scenario behavior tree and the parameter values ​​of the scenario parameters, and the function value of the scenario evaluation function is calculated based on the running results; wherein, the scenario evaluation function is used to indicate the degree of difference between the actual running results of the dynamic test scenario and the expected results of the scenario description information; The parameter values ​​of the scene parameters are updated based on the function value of the scene evaluation function, and the process is repeated from the step of running the autonomous driving test according to the scene behavior tree and the parameter values ​​of the scene parameters until the condition for stopping the update is met. The dynamic test scenario is generated using the target parameter value of the scenario parameters; wherein the target parameter value is calculated before the algorithm iteration reaches the stop update condition, and the scenario evaluation function has a value of zero when the parameter value of the scenario parameters is the target parameter value. The calculation of the scene evaluation function value based on the running results includes: Monitor and statistically analyze the execution status of nodes in the scene behavior tree during operation; wherein, if all nodes in the scene behavior tree are executed as expected, the execution status of the node is assigned a value of zero; otherwise, the execution status of the node is assigned a positive value. The positions of the scene participants when the operation ends are obtained, and it is determined whether the positions of the scene participants satisfy a preset positional relationship; wherein, if the positions of the scene participants satisfy the preset positional relationship, the preset positional relationship determination result is assigned a value of zero, otherwise the preset positional relationship determination result is assigned a positive number; The system tracks unexpected events during operation, where unexpected events refer to events that occur beyond expectations. If no unexpected event occurs, the unexpected event is assigned a value of zero; otherwise, the unexpected event is assigned a positive value. Based on the node execution status, the preset positional relationship judgment result, and the unexpected situation, the function value of the scene evaluation function is calculated.

2. The method according to claim 1, characterized in that, The parameter values ​​of the scene parameters are updated based on the function value of the scene evaluation function, including: If the stop-update condition is not met, calculate the new parameter value of the scene parameter; The current function value and the historical function value of the scene evaluation function are compared, and the parameter values ​​of the scene parameters are updated based on the comparison result and the new parameter values ​​of the scene parameters. The current function value of the scene evaluation function refers to the function value of the scene evaluation function calculated in the current round during the algorithm iteration process, and the historical function value of the scene evaluation function refers to the function value of the scene evaluation function calculated in the previous round during the algorithm iteration process. Specifically, if the current function value of the scene evaluation function is less than the historical function value, the parameter value of the scene parameter is updated to the new parameter value of the scene parameter; if the current function value of the scene evaluation function is greater than or equal to the historical function value, the parameter value of the scene parameter is updated to the new parameter value of the scene parameter with a certain probability.

3. The method according to claim 2, characterized in that, The step of calculating new parameter values ​​for the scene parameters when the stop-update condition is not met includes: Obtain the current temperature during the algorithm iteration process; Based on the current temperature, move the current parameter values ​​of each scene parameter by a random distance to obtain new parameter values ​​for each scene parameter; Determine whether the new parameter value of each scene parameter is within the range of the parameter values ​​of the scene parameter; if not, start from the step of moving the current parameter value of each scene parameter by a random distance according to the current temperature to obtain the new parameter value of each scene parameter and execute again.

4. The method according to claim 2, characterized in that, The step of updating the parameter value of the scene parameter with a certain probability to the new parameter value of the scene parameter includes: A value is randomly selected from [0,1] as the probability p; If the probability p is less than exp(-Δf / T), then the parameter value of the scene parameter is updated to the new parameter value of the scene parameter; otherwise, the current parameter value of the scene parameter is maintained. Wherein, Δf is the difference between the historical function value and the current function value of the scene evaluation function, and T is the current temperature in the algorithm iteration process.

5. The method according to any one of claims 1 to 4, characterized in that, The stop-update condition refers to the current temperature during the algorithm iteration process being less than or equal to the preset end temperature.

6. A dynamic test scenario generation device for autonomous driving testing, characterized in that, The device includes: The information acquisition module is used to extract scene parameters of the dynamic test scene from the scene description information of the autonomous driving test, and construct a scene behavior tree according to the atomic actions or triggering conditions corresponding to the scene parameters. The scene behavior tree is used to control the running logic of the dynamic test scene. The function calculation module is used to run autonomous driving tests according to the scene behavior tree and the parameter values ​​of the scene parameters, and calculate the function value of the scene evaluation function based on the running results; wherein, the scene evaluation function is used to indicate the degree of difference between the actual running results of the dynamic test scene and the expected results of the scene description information; The parameter update module is used to update the parameter values ​​of the scene parameters based on the function value of the scene evaluation function; The function calculation module is further configured to, after the parameter update module updates the parameter value of the scene parameter based on the function value of the scene evaluation function, resume execution from the step of running the autonomous driving test according to the scene behavior tree and the parameter value of the scene parameter until the condition for stopping the update is met; A scene generation module is used to generate the dynamic test scene with the target parameter value of the scene parameters; wherein the target parameter value is calculated before the algorithm iteration reaches the stop update condition, and when the parameter value of the scene parameters is the target parameter value, the function value of the scene evaluation function is zero; The function calculation module is further configured to: Monitor and statistically analyze the execution status of nodes in the scene behavior tree during operation; wherein, if all nodes in the scene behavior tree are executed as expected, the execution status of the node is assigned a value of zero; otherwise, the execution status of the node is assigned a positive value. The positions of the scene participants when the operation ends are obtained, and it is determined whether the positions of the scene participants satisfy a preset positional relationship; wherein, if the positions of the scene participants satisfy the preset positional relationship, the preset positional relationship determination result is assigned a value of zero, otherwise the preset positional relationship determination result is assigned a positive number; The system tracks unexpected events during operation, where unexpected events refer to events that occur beyond expectations. If no unexpected event occurs, the unexpected event is assigned a value of zero; otherwise, the unexpected event is assigned a positive value. Based on the node execution status, the preset positional relationship judgment result, and the unexpected situation, the function value of the scene evaluation function is calculated.

7. A computer device, characterized in that, The computer device includes: a processor and a memory storing computer program instructions; when the processor executes the computer program instructions, it implements the dynamic test scenario generation method for autonomous driving testing as described in any one of claims 1-5.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions, which, when executed by a processor, implement the dynamic test scenario generation method for autonomous driving testing as described in any one of claims 1-5.