Simulation method based on vehicle model, real-time data and big data processing
By combining the Spark computing engine with the Carla simulation cluster, the DDS communication architecture, and Kafka data stream, the autonomous driving simulation scenarios and models are dynamically optimized, solving the problem of low efficiency in simulation testing and realizing efficient data-driven closed-loop simulation testing.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING MECHANICAL EQUIP INST
- Filing Date
- 2025-12-01
- Publication Date
- 2026-04-21
AI Technical Summary
In current autonomous driving simulation testing, the simulation efficiency of high-fidelity environment scenarios is low. Simulation scenarios cannot be dynamically generated, vehicle dynamics model parameters are statically designed, sensor data is not fully mined and analyzed, and there is a lack of integration with big data tools, resulting in low testing efficiency.
The system employs a Spark computing engine combined with a Carla simulation cluster and a DDS communication architecture. It uses Kafka data streams to dynamically optimize simulation scenarios and models, and leverages big data processing technology to generate and adjust simulation scenarios, thereby optimizing vehicle dynamics and autonomous driving algorithm models.
It achieves large-scale parallel simulation, dynamically generates simulation scenarios, improves simulation testing efficiency and model optimization efficiency, forms a data-driven closed-loop simulation test, and enhances the effectiveness and credibility of simulation testing.
Smart Images

Figure CN121900244A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of autonomous driving simulation testing technology, and more specifically, to a simulation method, simulation platform, electronic device, and computer-readable storage medium based on vehicle models, real-time data, and big data processing. Background Technology
[0002] Autonomous driving simulation testing is a core technology for evaluating and verifying the performance and safety of autonomous driving systems through virtual environments and computer simulations, and it has become an indispensable part of autonomous driving R&D. Given the high cost, significant risks, and difficulty in reproducing real-world road tests, simulation testing provides an efficient and safe alternative; currently, over 80% of autonomous driving system testing is completed through simulation platforms. This technology, through software-in-the-loop and hardware-in-the-loop stages, combined with high-fidelity physical simulation tools such as CARLA, LGSVL, AirSim, and Gazebo, can repeatedly and automatically verify core algorithms such as perception, decision-making, and control. It supports parallel execution, is not time-constrained, and can complete millions of kilometers of virtual mileage testing in a short time, significantly reducing development costs and timelines. The core advantage of simulation testing lies in its ability to accurately reproduce complex traffic scenarios, covering different weather, lighting, climate, and driving conditions, and generating safety-critical scenarios to discover system defects. For example, through adversarial generation methods or constructing semantically equivalent test scenarios based on real traffic videos, it can reveal hidden dangers that real accident data cannot expose, which is crucial for ensuring the safety of autonomous vehicles. Simultaneously, simulation provides an ideal environment for regression testing, quickly verifying that software updates will not introduce new problems and supporting continuous iterative optimization. However, this technology still faces challenges such as complex simulation environment configuration, high accuracy requirements for sensor models, intensive computing resources, and limited realism and diversity. It needs to rely on real-world data support, automatic annotation technology, and the establishment of standardized benchmark scenarios. Future development directions include cross-platform unified testing frameworks, more efficient pseudo-simulation methods, and more realistic scene generation technologies to further improve the effectiveness and credibility of testing.
[0003] Current autonomous driving simulation testing faces the following challenges: Parallel computation is difficult to achieve in high-fidelity autonomous driving simulations, resulting in low simulation efficiency. Simulation scenarios are generally static and do not generate specific scenarios based on simulation test results, making it impossible to form a closed-loop test with dynamically generated scenarios. Furthermore, the parameters of vehicle dynamics models are typically statically designed and do not adaptively adjust based on simulation test results. Additionally, a large amount of sensor data is generated during simulation, but this data is not deeply mined and analyzed, failing to fully utilize its value. Current simulation testing does not incorporate big data tools, leading to low testing efficiency.
[0004] Therefore, one or more methods are needed to solve the above problems.
[0005] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0006] The purpose of this disclosure is to provide a simulation method, apparatus, electronic device, and computer-readable storage medium based on vehicle models, real-time data, and big data processing, thereby overcoming, at least to some extent, one or more problems caused by the limitations and defects of related technologies.
[0007] According to one aspect of this disclosure, a simulation method based on vehicle models, real-time data, and big data processing is provided, including:
[0008] By analyzing the Spark computing engine in the decision layer, the simulation scenario configuration parameters are published to the Carla simulation cluster in the simulation layer to generate a preset number of simulation test scenario instances.
[0009] The Carla simulation instance in the simulation layer and the algorithm layer use the DDS communication architecture to achieve data interaction. Sensor data and vehicle chassis data during the simulation process are published to the autonomous driving algorithm in the algorithm layer through DDS topics. The autonomous driving algorithm in the algorithm layer publishes control data to the simulation instance in the simulation layer through DDS topics.
[0010] The Spark computing engine evaluates simulation test scenario instances, optimizes environments with evaluation results below a preset threshold, and injects them into the Kafka stream of the data stream layer to be published to the simulation layer to generate scenarios for simulation.
[0011] The Spark computing engine periodically evaluates the performance of the simulated vehicle, optimizes the simulated vehicle model whose evaluation result is lower than a preset threshold, and publishes the simulated vehicle model to the simulation layer through the Kafka data stream. The simulation layer then updates the vehicle dynamics model for simulation testing.
[0012] The Spark computing engine periodically evaluates the performance of autonomous driving algorithms, optimizes algorithms with evaluation results below a preset threshold, and publishes the autonomous driving algorithm model to the algorithm layer through the Kafka data stream layer. The algorithm layer then updates the autonomous driving algorithm model for simulation testing.
[0013] In one exemplary embodiment of this disclosure, the method further includes:
[0014] The analysis and decision-making layer uses Spark computing engine to subscribe to real-vehicle road data collected from Kafka data streams in the data stream layer to generate key scenarios.
[0015] User-defined simulation scenario configuration parameters generate non-critical scenarios;
[0016] The key and non-key scenarios are published to the Carla simulation cluster in the simulation layer through the Kafka data stream layer to generate a preset number of simulation test scenario instances.
[0017] In one exemplary embodiment of this disclosure, the method further includes:
[0018] The simulation data of a preset number of simulation test scenario instances generated by the simulation is published to the Spark engine for analysis and evaluation of the simulation results via Kafka data stream.
[0019] In one exemplary embodiment of this disclosure, the method further includes:
[0020] For environmental scenarios with evaluation results below a preset threshold, optimizations are made by increasing the frequency of occurrence of the scenario, raising its test priority, and dynamically adjusting the generated scenario configuration parameters.
[0021] In one exemplary embodiment of this disclosure, the method further includes:
[0022] For simulated vehicles whose evaluation results are below a preset threshold, optimization is performed, a new vehicle dynamics model with preset parameters is generated, and the simulated vehicle model is published to the simulation layer through the Kafka data stream. The simulation layer updates the vehicle dynamics model and performs simulation testing.
[0023] In one exemplary embodiment of this disclosure, the method further includes:
[0024] For autonomous driving algorithms with evaluation results below a preset threshold, optimization is performed, the autonomous driving algorithm model is updated, and the data is published to the algorithm layer via Kafka data stream for updating and iteration, and simulation testing continues.
[0025] In one exemplary embodiment of this disclosure, the method further includes:
[0026] The simulation layer subscribes to simulation scenario parameters generated by the Spark computing engine in the Kafka stream, configures the weather, roads, traffic participants, etc. for vehicle driving, and creates and runs simulation scenarios for the algorithm to control the virtual vehicle driving.
[0027] In one aspect of this disclosure, a simulation platform based on vehicle models, real-time data, and big data processing is provided. The platform includes an analysis and decision-making layer, a data flow layer, a real-vehicle data layer, a simulation layer, a real-time communication layer, and an algorithm layer, wherein:
[0028] The analysis and decision-making layer includes the Spark computing engine, which uses its data mining function to generate various test environment scenarios from real vehicle road data. Through data aggregation and analysis, it analyzes and calculates the simulation data to obtain simulation evaluation results, dynamically adjusts the simulation scenario, and optimizes the vehicle dynamics model or autonomous driving algorithm model through model training.
[0029] The data flow layer includes a Kafka cluster that transmits high-throughput data streams, enabling data interaction between the analysis and decision-making layer and the real vehicle data layer, the analysis and decision-making layer and the simulation layer, and the analysis and decision-making layer and the algorithm layer.
[0030] The real vehicle data layer contains real vehicle operation data obtained through road surveys, which is provided to the analysis and decision-making layer for data mining and scenario extraction.
[0031] The simulation layer includes a Carla distributed simulation cluster, which generates simulation instances according to the scenarios of the analysis and decision layer, provides a virtual vehicle operating environment, and outputs simulation data.
[0032] The real-time communication layer includes a DDS communication architecture, which is used for data interaction between the simulation layer and the algorithm layer.
[0033] The algorithm layer contains the autonomous driving algorithm to be tested, and the algorithm layer and the simulation layer use the same DDS data interface as the real vehicle.
[0034] In one aspect of this disclosure, an electronic device is provided, comprising:
[0035] Processor; and
[0036] A memory storing computer-readable instructions that, when executed by the processor, implement the method according to any one of the preceding claims.
[0037] In one aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the method according to any one of the preceding claims.
[0038] An exemplary embodiment of this disclosure discloses a simulation method based on vehicle models, real-time data, and big data processing. The method includes: generating different simulation scenarios using a Spark computing engine; calculating simulation test results; dynamically adjusting the simulation test scenarios; and training and optimizing a vehicle dynamics model or an autonomous driving algorithm. Subscription and publication between the Spark computing engine and real-world road data, Carla simulation environment data, and algorithm optimization models are achieved through Kafka data streams. Data communication between the Carla simulation environment and the autonomous driving algorithm is achieved through DDS communication middleware, controlling the virtual vehicle to operate within the simulation environment. Based on this method, large-scale parallel simulation can be achieved, and the generated scenarios can be dynamically adjusted according to the simulation test results, realizing data-driven closed-loop simulation testing. Furthermore, the vehicle dynamics model and autonomous driving algorithm model can be optimized and updated based on the simulation test results, improving simulation and model optimization efficiency.
[0039] 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
[0040] The above and other features and advantages of this disclosure will become more apparent from the detailed description of exemplary embodiments thereof with reference to the accompanying drawings.
[0041] Figure 1 A flowchart is shown below illustrating a simulation method based on a vehicle model, real-time data, and big data processing according to an exemplary embodiment of this disclosure.
[0042] Figure 2 This illustration shows a schematic diagram of the components of a simulation platform based on a vehicle model, real-time data, and big data processing, according to an exemplary embodiment of the present disclosure.
[0043] Figure 3 A structural block diagram of a simulation platform based on vehicle model, real-time data, and big data processing according to an exemplary embodiment of the present disclosure is shown.
[0044] Figure 4 A block diagram of an electronic device according to an exemplary embodiment of the present disclosure is shown schematically;
[0045] Figure 5 The illustration shows a schematic diagram of a computer-readable storage medium according to an exemplary embodiment of the present disclosure. Detailed Implementation
[0046] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the embodiments set forth herein; rather, they are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted.
[0047] Furthermore, the described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. Numerous specific details are provided in the following description to give a thorough understanding of embodiments of this disclosure. However, those skilled in the art will recognize that the technical solutions of this disclosure can be practiced without one or more of the specific details described, or other methods, components, materials, apparatuses, steps, etc., can be employed. In other instances, well-known structures, methods, apparatuses, implementations, materials, or operations are not shown or described in detail to avoid obscuring various aspects of this disclosure.
[0048] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software, or in one or more software-hardened modules, or in different network and / or processor devices and / or microcontroller devices.
[0049] In this example embodiment, a simulation method based on vehicle models, real-time data, and big data processing is first provided; (Refer to...) Figure 1 As shown, this simulation method based on vehicle models, real-time data, and big data processing may include the following steps:
[0050] Step S110: By analyzing the Spark computing engine in the decision layer, the simulation scenario configuration parameters are published to the Carla simulation cluster in the simulation layer to generate a preset number of simulation test scenario instances.
[0051] In step S120, the Carla simulation instance in the simulation layer and the algorithm layer use the DDS communication architecture to realize data interaction. Sensor data and vehicle chassis data during the simulation process are published to the autonomous driving algorithm in the algorithm layer through the DDS topic. The autonomous driving algorithm in the algorithm layer publishes control data to the simulation instance in the simulation layer through the DDS topic.
[0052] In step S130, the Spark computing engine evaluates the simulation test scenario instances, optimizes the environment scenarios with evaluation results below the preset threshold, and injects them into the Kafka stream of the data stream layer to publish to the simulation layer to generate scenarios and perform simulation.
[0053] In step S140, the Spark computing engine periodically evaluates the performance of the simulated vehicle, optimizes the simulated vehicle model whose evaluation result is lower than the preset threshold, and publishes the simulated vehicle model to the simulation layer through the Kafka data stream of the data stream layer. The simulation layer updates the vehicle dynamics model and performs simulation tests.
[0054] Step S150: The Spark computing engine periodically evaluates the performance of the autonomous driving algorithm, optimizes the autonomous driving algorithm with evaluation results below a preset threshold, and publishes the autonomous driving algorithm model to the algorithm layer through the Kafka data stream in the data stream layer. The algorithm layer updates the autonomous driving algorithm model and performs simulation tests.
[0055] An exemplary embodiment of this disclosure discloses a simulation method based on vehicle models, real-time data, and big data processing. The method includes: generating different simulation scenarios using a Spark computing engine; calculating simulation test results; dynamically adjusting the simulation test scenarios; and training and optimizing a vehicle dynamics model or an autonomous driving algorithm. Subscription and publication between the Spark computing engine and real-world road data, Carla simulation environment data, and algorithm optimization models are achieved through Kafka data streams. Data communication between the Carla simulation environment and the autonomous driving algorithm is achieved through DDS communication middleware, controlling the virtual vehicle to operate within the simulation environment. Based on this method, large-scale parallel simulation can be achieved, and the generated scenarios can be dynamically adjusted according to the simulation test results, realizing data-driven closed-loop simulation testing. Furthermore, the vehicle dynamics model and autonomous driving algorithm model can be optimized and updated based on the simulation test results, improving simulation and model optimization efficiency.
[0056] The following will further explain a simulation method based on vehicle model, real-time data and big data processing in this example embodiment.
[0057] Example 1:
[0058] In step S110, the simulation scenario configuration parameters can be published to the Carla simulation cluster in the simulation layer by analyzing the Spark computing engine in the decision layer, thereby generating a preset number of simulation test scenario instances.
[0059] In this example embodiment, the method further includes:
[0060] The analysis and decision-making layer uses Spark computing engine to subscribe to real-vehicle road data collected from Kafka data streams in the data stream layer to generate key scenarios.
[0061] User-defined simulation scenario configuration parameters generate non-critical scenarios;
[0062] The key and non-key scenarios are published to the Carla simulation cluster in the simulation layer through the Kafka data stream layer to generate a preset number of simulation test scenario instances.
[0063] In step S120, the Carla simulation instance in the simulation layer and the algorithm layer can use the DDS communication architecture to realize data interaction. Sensor data and vehicle chassis data during the simulation process are published to the autonomous driving algorithm in the algorithm layer through the DDS topic. The autonomous driving algorithm in the algorithm layer publishes control data to the simulation instance in the simulation layer through the DDS topic.
[0064] In step S130, the Spark computing engine can evaluate the simulation test scenario instance, optimize the environment scenario with evaluation results below the preset threshold, and inject it into the Kafka stream of the data stream layer to publish it to the simulation layer to generate the scenario and perform simulation.
[0065] In this example embodiment, the method further includes:
[0066] Simulation data from a predetermined number of simulated test scenario instances generated by the simulation is published to the Spark engine via Kafka data stream for analysis and evaluation of the simulation results. For environmental scenarios with evaluation results below a predetermined threshold, optimization is achieved by increasing the frequency of these scenarios, raising their test priority, and dynamically adjusting the configuration parameters of the generated scenarios.
[0067] In step S140, the Spark computing engine can periodically evaluate the performance of the simulated vehicle, optimize the simulated vehicle model whose evaluation result is lower than a preset threshold, and publish the simulated vehicle model to the simulation layer through the Kafka data stream. The simulation layer updates the vehicle dynamics model for simulation testing.
[0068] In this example embodiment, the method further includes:
[0069] For simulated vehicles whose evaluation results are below a preset threshold, optimization is performed, a new vehicle dynamics model with preset parameters is generated, and the simulated vehicle model is published to the simulation layer through the Kafka data stream. The simulation layer updates the vehicle dynamics model and performs simulation testing.
[0070] In step S150, the Spark computing engine can periodically evaluate the performance of the autonomous driving algorithm, optimize the autonomous driving algorithm with evaluation results below a preset threshold, and publish the autonomous driving algorithm model to the algorithm layer through the Kafka data stream in the data stream layer. The algorithm layer updates the autonomous driving algorithm model and performs simulation tests.
[0071] In this example embodiment, the method further includes:
[0072] For autonomous driving algorithms with evaluation results below a preset threshold, optimization is performed, the autonomous driving algorithm model is updated, and the data is published to the algorithm layer via Kafka data stream for updating and iteration, and simulation testing continues.
[0073] In this example embodiment, the method further includes:
[0074] The simulation layer subscribes to simulation scenario parameters generated by the Spark computing engine in the Kafka stream, configures the weather, roads, traffic participants, etc. for vehicle driving, and creates and runs simulation scenarios for the algorithm to control the virtual vehicle driving.
[0075] In this example embodiment, the beneficial effects of the present invention include: using the Carla simulation environment and Spark-Kafka to achieve large-scale distributed parallel simulation, realizing automated scheduling of simulation tasks, and improving simulation efficiency. Utilizing the distributed streaming platform Spark-Kafka ensures efficient and reliable transmission of real-time data. Through Spark, machine learning and data mining functions are implemented, and test scenarios are dynamically generated in a targeted manner based on simulation test results, forming a closed-loop simulation test driven by simulation data results for automatic scenario generation. The vehicle dynamics model or perception planning and control model in the autonomous driving algorithm, retrained through Spark, can be updated in real time at the simulation layer and algorithm layer, providing optimization directions for vehicle dynamics models or algorithm models under different scenarios, and improving the intelligence of simulation testing. DDS communication is used between the simulation system and the algorithm layer to achieve millisecond-level, highly reliable, QoS-based data exchange between the simulation layer and the hardware deploying the algorithm. This communication method is consistent with the real vehicle software architecture, ensuring the effectiveness of simulation testing and the convenience of algorithm migration. Real vehicle data is used to generate key simulation scenarios, and user-defined scenarios generate general simulation scenarios, making the generated key simulation scenarios realistic and reliable, and the generated general simulation scenario samples flexible and rich, maximizing the efficiency of simulation scenario construction.
[0076] Example 2:
[0077] In this example embodiment, the simulation method based on vehicle model, real-time data, and big data processing disclosed herein is a method for completing simulation testing and model optimization based on the aforementioned platform. The specific method is as follows:
[0078] 1. Simulation scenario creation and simulation task issuance
[0079] First, the Spark computing engine in the analysis and decision-making layer subscribes to Kafka streams to obtain real-vehicle road survey data, and generates key simulation scenarios based on this data. Additionally, other non-critical scenarios are generated using user-defined simulation scenario configuration parameters. The simulation scenario configuration parameters generated by the Spark computing engine are then published to the simulation layer via Kafka data streams, completing the task distribution.
[0080] 2. Parallel Simulation and Data Acquisition
[0081] The Carla simulation cluster in the simulation layer subscribes to scenario configuration parameter topics in the Kafka stream of the data stream layer, and launches multiple simulation tasks with different scenario parameters in parallel. Sensor data and vehicle chassis data generated during the simulation are published to the autonomous driving algorithm in the algorithm layer via the DDS topic. The autonomous driving algorithm in the algorithm layer publishes control data to the simulation instance in the simulation layer via the DDS topic, controlling the virtual vehicle to operate in the simulation scenario. Data generated by the simulation environment is written to the topic in real time and published to the Spark computing engine in the analysis and decision layer via Kafka stream for analysis and evaluation of the simulation results.
[0082] 3. Monitoring simulation results and dynamically adjusting the simulation scenario
[0083] After the Spark computing engine in the analysis and decision layer obtains simulation data through Spark Streaming, it uses Spark SQL to read simulation results data from different simulation environments, performs calculations and analysis, and focuses on increasing the frequency of occurrence of the environment scenario with poor performance and raising its test priority. The generated scenario configuration parameters are dynamically adjusted and injected into the Kafka stream in the data stream layer for the simulation layer to generate scenarios and perform simulations.
[0084] 4. Closed-loop iteration and model update
[0085] The analysis and decision-making layer uses MLlib, the machine learning library of the Spark computing engine, to periodically learn from cases where the simulated vehicle performs poorly, and re-estimates and generates vehicle dynamics models with different parameters. These models are then published to the simulation layer via a Kafka data stream, where the simulation layer updates the vehicle dynamics model for simulation testing.
[0086] The analysis and decision-making layer uses MLlib, the machine learning library of the Spark computing engine, to periodically learn from cases where simulated vehicles perform poorly, train models, and update the autonomous driving algorithm model in the algorithm layer. Data is then published to the algorithm layer via Kafka data streams for updates and iterations, and further simulation testing continues, forming a closed-loop iterative optimization process.
[0087] It should be noted that although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.
[0088] Furthermore, this example embodiment also provides a simulation platform based on vehicle models, real-time data, and big data processing. (Refer to...) Figure 3 As shown, this simulation platform based on vehicle models, real-time data, and big data processing includes an analysis and decision-making layer, a data flow layer, a real-vehicle data layer, a simulation layer, a real-time communication layer, and an algorithm layer, wherein:
[0089] The platform comprises an analysis and decision-making layer, a data flow layer, a real-vehicle data layer, a simulation layer, a real-time communication layer, and an algorithm layer, wherein:
[0090] The analysis and decision-making layer includes the Spark computing engine, which uses its data mining function to generate various test environment scenarios from real vehicle road data. Through data aggregation and analysis, it analyzes and calculates the simulation data to obtain simulation evaluation results, dynamically adjusts the simulation scenario, and optimizes the vehicle dynamics model or autonomous driving algorithm model through model training.
[0091] The data flow layer includes a Kafka cluster that transmits high-throughput data streams, enabling data interaction between the analysis and decision-making layer and the real vehicle data layer, the analysis and decision-making layer and the simulation layer, and the analysis and decision-making layer and the algorithm layer.
[0092] The real vehicle data layer contains real vehicle operation data obtained through road surveys, which is provided to the analysis and decision-making layer for data mining and scenario extraction.
[0093] The simulation layer includes a Carla distributed simulation cluster, which generates simulation instances according to the scenarios of the analysis and decision layer, provides a virtual vehicle operating environment, and outputs simulation data.
[0094] The real-time communication layer includes a DDS communication architecture, which is used for data interaction between the simulation layer and the algorithm layer.
[0095] The algorithm layer contains the autonomous driving algorithm to be tested, and the algorithm layer and the simulation layer use the same DDS data interface as the real vehicle.
[0096] In the embodiments of this example, the simulation platform and method based on vehicle models, real-time data, and big data processing disclosed herein can overcome the shortcomings of current autonomous driving simulations, forming a highly efficient, scalable, and data-closed-loop autonomous driving simulation platform. This platform integrates the Carla simulation environment, DDS communication middleware, and Spark-Kafka data streams, achieving efficient fusion of simulation, communication, and data, and constructing an autonomous driving closed-loop simulation testing system.
[0097] like Figure 2 The diagram shows the composition of a simulation platform based on vehicle models, real-time data, and big data processing. It includes: an analysis and decision-making layer, a data flow layer, a real-vehicle data layer, a simulation layer, a real-time communication layer, and an algorithm layer.
[0098] 1. Analyze the decision-making level
[0099] The analysis and decision-making layer primarily comprises the Spark computing engine. The Spark engine possesses capabilities for data mining, data aggregation and analysis, and model training. Data mining is used to generate various test environment scenarios from real-world vehicle data, scenarios that more closely resemble actual vehicle driving conditions. Furthermore, the Spark engine analyzes and computes simulation data through data aggregation and analysis to obtain simulation evaluation results, including the performance of the vehicle dynamics model and the performance of the autonomous driving algorithm under various environmental scenarios, dynamically adjusting the simulation scenarios. Using the simulation evaluation results, and after model training through the Spark engine, the vehicle dynamics model or autonomous driving algorithm model is specifically optimized.
[0100] 2. Data Stream Layer
[0101] The data stream layer mainly consists of a Kafka cluster. Its main functions are to transmit high-throughput data streams, including simulation scenario data and sensor data from the analysis and decision-making layer and the simulation layer. In addition, it transmits real vehicle road data from the real vehicle data layer to the analysis and decision-making layer, and transmits the trained and optimized autonomous driving algorithm model to the algorithm layer.
[0102] 3. Real vehicle data layer
[0103] The real vehicle data layer mainly contains real vehicle driving data obtained through road surveys, which is published to the decision analysis layer via Kafka data streams for data mining scenarios.
[0104] 4. Simulation Layer
[0105] The simulation layer primarily comprises a Carla distributed simulation cluster, which can run multiple simulation instances and supports dynamic scaling. The simulation layer subscribes to simulation scenario parameters generated by the Spark computing engine in a Kafka stream, configuring weather, road conditions, traffic participants, etc., for vehicle operation, and creating and running simulation scenarios for the algorithm to control the virtual vehicle's movement. The initial vehicle dynamics model in the simulation is determined based on the actual vehicle design. Additionally, the simulation layer subscribes to an optimized vehicle dynamics model from the Spark computing engine, updating the vehicle dynamics model for simulation testing.
[0106] 5. Real-time communication layer
[0107] The real-time communication layer uses a DDS communication architecture to establish a data path between the simulation layer and the algorithm layer of the autonomous driving algorithm. The main data transmitted includes simulation chassis data, sensor data, and algorithm control data. This enables hardware-in-the-loop simulation or software-in-the-loop simulation.
[0108] 6. Algorithm Layer
[0109] The algorithm layer contains perception, planning, and control algorithms for autonomous driving. It uses sensor data from the simulation for perception calculations, plans the vehicle's driving path, calculates vehicle control commands based on chassis data, and issues these commands to the simulation layer to control the virtual vehicle. The algorithms in the algorithm layer use the DDS data interface, employing the same software architecture and communication interface as the real vehicle.
[0110] It should be noted that although several modules or units of a simulation platform based on vehicle models, real-time data, and big data processing are mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0111] Furthermore, in an exemplary embodiment of this disclosure, an electronic device capable of implementing the above-described method is also provided.
[0112] Those skilled in the art will understand that various aspects of the present invention can be implemented as systems, methods, or program products. Therefore, various aspects of the present invention can be specifically implemented as entirely hardware embodiments, entirely software embodiments (including firmware, microcode, etc.), or embodiments combining hardware and software aspects, collectively referred to herein as “circuit,” “module,” or “system.”
[0113] The following reference Figure 4 To describe an electronic device 400 according to such an embodiment of the present invention. Figure 4 The electronic device 400 shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of the present invention.
[0114] like Figure 4 As shown, the electronic device 400 is manifested in the form of a general-purpose computing device. The components of the electronic device 400 may include, but are not limited to: at least one processing unit 410, at least one storage unit 420, a bus 430 connecting different system components (including storage unit 420 and processing unit 410), and a display unit 440.
[0115] The storage unit stores program code that can be executed by the processing unit 410, causing the processing unit 410 to perform the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of the present invention. For example, the processing unit 410 can perform actions such as... Figure 1 Steps S110 to S150 are shown in the diagram.
[0116] Storage unit 420 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 4201 and / or a cache memory unit 4202, and may further include a read-only memory unit (ROM) 4203.
[0117] Storage unit 420 may also include a program / utility 4204 having a set (at least one) program module 4205, such program module 4205 including but not limited to: operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.
[0118] Bus 430 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.
[0119] Electronic device 400 can also communicate with one or more external devices 470 (e.g., keyboard, pointing device, Bluetooth device, etc.), and with one or more devices that enable a user to interact with electronic device 400, and / or with any device that enables electronic device 400 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 450. Furthermore, electronic device 400 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 460. As shown, network adapter 460 communicates with other modules of electronic device 400 via bus 430. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 400, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0120] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.
[0121] In exemplary embodiments of this disclosure, a computer-readable storage medium is also provided, on which a program product capable of implementing the methods described above is stored. In some possible embodiments, various aspects of the invention may also be implemented as a program product comprising program code that, when the program product is run on a terminal device, causes the terminal device to perform the steps of the various exemplary embodiments of the invention described in the "Exemplary Methods" section above.
[0122] refer to Figure 5 As shown, a program product 500 for implementing the above-described method according to an embodiment of the present invention is described. It may employ a portable compact disc read-only memory (CD-ROM) and include program code, and may run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto. In this document, the readable storage medium may be any tangible medium containing or storing a program that may be used by or in conjunction with an instruction execution system, apparatus, or device.
[0123] The program product may employ 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 be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0124] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.
[0125] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0126] Program code for performing the operations of this invention can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's computing 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. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0127] Furthermore, the above figures are merely illustrative of the processes included in the method according to exemplary embodiments of the present invention, and are not intended to be limiting. It is readily understood that the processes shown in the above figures do not indicate or limit the temporal order of these processes. Additionally, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.
[0128] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application 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 the true scope and spirit of this disclosure are indicated by the claims.
[0129] It should be understood that 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. The scope of this disclosure is limited only by the appended claims.
Claims
1. A simulation method based on vehicle models, real-time data, and big data processing, characterized in that, The method includes: By analyzing the Spark computing engine in the decision layer, the simulation scenario configuration parameters are published to the Carla simulation cluster in the simulation layer to generate a preset number of simulation test scenario instances. The Carla simulation instance in the simulation layer and the algorithm layer use the DDS communication architecture to achieve data interaction. Sensor data and vehicle chassis data during the simulation process are published to the autonomous driving algorithm in the algorithm layer through DDS topics. The autonomous driving algorithm in the algorithm layer publishes control data to the simulation instance in the simulation layer through DDS topics. The Spark computing engine evaluates simulation test scenario instances, optimizes environments with evaluation results below a preset threshold, and injects them into the Kafka stream of the data stream layer to be published to the simulation layer to generate scenarios for simulation. The Spark computing engine periodically evaluates the performance of the simulated vehicle, optimizes the simulated vehicle model whose evaluation result is lower than a preset threshold, and publishes the simulated vehicle model to the simulation layer through the Kafka data stream. The simulation layer then updates the vehicle dynamics model for simulation testing. The Spark computing engine periodically evaluates the performance of autonomous driving algorithms, optimizes algorithms with evaluation results below a preset threshold, and publishes the autonomous driving algorithm model to the algorithm layer through the Kafka data stream layer. The algorithm layer then updates the autonomous driving algorithm model for simulation testing.
2. The method as described in claim 1, characterized in that, The method further includes: The analysis and decision-making layer uses Spark computing engine to subscribe to real-vehicle road data collected from Kafka data streams in the data stream layer to generate key scenarios. User-defined simulation scenario configuration parameters generate non-critical scenarios; The key and non-key scenarios are published to the Carla simulation cluster in the simulation layer through the Kafka data stream layer to generate a preset number of simulation test scenario instances.
3. The method as described in claim 2, characterized in that, The method further includes: The simulation data of a preset number of simulation test scenario instances generated by the simulation is published to the Spark engine for analysis and evaluation of the simulation results via Kafka data stream.
4. The method as described in claim 1, characterized in that, The method further includes: For environmental scenarios with evaluation results below a preset threshold, optimizations are made by increasing the frequency of occurrence of the scenario, raising its test priority, and dynamically adjusting the generated scenario configuration parameters.
5. The method as described in claim 1, characterized in that, The method further includes: For simulated vehicles whose evaluation results are below a preset threshold, optimization is performed, a new vehicle dynamics model with preset parameters is generated, and the simulated vehicle model is published to the simulation layer through the Kafka data stream. The simulation layer updates the vehicle dynamics model and performs simulation testing.
6. The method as described in claim 1, characterized in that, The method further includes: For autonomous driving algorithms with evaluation results below a preset threshold, optimization is performed, the autonomous driving algorithm model is updated, and the data is published to the algorithm layer via Kafka data stream for updating and iteration, and simulation testing continues.
7. The method as described in claim 1, characterized in that, The method further includes: The simulation layer subscribes to simulation scenario parameters generated by the Spark computing engine in the Kafka stream, configures the weather, roads, traffic participants, etc. for vehicle driving, and creates and runs simulation scenarios for the algorithm to control the virtual vehicle driving.
8. A simulation platform based on vehicle models, real-time data, and big data processing, characterized in that, The simulation platform comprises an analysis and decision-making layer, a data flow layer, a real-vehicle data layer, a simulation layer, a real-time communication layer, and an algorithm layer, wherein: The analysis and decision-making layer includes the Spark computing engine, which uses its data mining function to generate various test environment scenarios from real vehicle road data. Through data aggregation and analysis, it analyzes and calculates the simulation data to obtain simulation evaluation results, dynamically adjusts the simulation scenario, and optimizes the vehicle dynamics model or autonomous driving algorithm model through model training. The data flow layer includes a Kafka cluster that transmits high-throughput data streams, enabling data interaction between the analysis and decision-making layer and the real vehicle data layer, the analysis and decision-making layer and the simulation layer, and the analysis and decision-making layer and the algorithm layer. The real vehicle data layer contains real vehicle operation data obtained through road surveys, which is provided to the analysis and decision-making layer for data mining and scenario extraction. The simulation layer includes a Carla distributed simulation cluster, which generates simulation instances according to the scenarios of the analysis and decision layer, provides a virtual vehicle operating environment, and outputs simulation data. The real-time communication layer includes a DDS communication architecture, which is used for data interaction between the simulation layer and the algorithm layer. The algorithm layer contains the autonomous driving algorithm to be tested, and the algorithm layer and the simulation layer use the same DDS data interface as the real vehicle.
9. An electronic device, characterized in that, include Processor; and A memory storing computer-readable instructions that, when executed by the processor, implement the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, It stores a computer program that, when executed by a processor, implements the method according to any one of claims 1 to 7.