Centralized Scheduling for Autonomous Driving Data Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing autonomous driving systems face challenges with decentralized architectures, leading to inconsistent results, increased IO overhead, and potential single points of failure due to their multi-process nature and inefficient data communication protocols.

Innovation Solution

A centralized scheduling system with a single-threaded event loop and global store is implemented, allowing for atomic operations, consistent results, and easy debugging, while avoiding kernel-level modifications and redundant packet transmission.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a decentralized multi-process architecture is used for autonomous driving modules, then each module can run independently with its own state, but the system suffers from race conditions, IO overhead, inconsistent results, and potential deadlocks

Engineering Contradiction:
ImproveModule independenceVSAvoidSystem consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent merges multiple independent module processes into a single centralized process, eliminating inter-process communication overhead and race conditions. The unified process structure ensures that all modules share the same memory space and execution context, guaranteeing consistent results for the same input while maintaining module functionality through internal state management.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Within the centralized process, the system segments functionality into distinct modules that operate as separate execution contexts or task sequences. Each module maintains its own logical state and execution flow, but operates under the coordination of a centralized scheduler that manages resource access and execution timing, preventing deadlocks and race conditions.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If modules run as long-running independent processes, then they maintain their own state, but failover becomes difficult and single points of failure cannot be recovered

Engineering Contradiction:
ImproveModule state managementVSAvoidFailover capability
Core Design Contradiction:
Ease of operationVSEase of repair

Solution Approach 1:

The system implements preliminary checkpointing and state serialization mechanisms that capture module states at predefined intervals. This allows the centralized process to save recovery points before potential failures occur, enabling failover by restoring from the most recent valid checkpoint without requiring complex inter-process state transfer.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a virtualization layer that creates virtual copies of module states in a centralized storage area. When a module fails, the system can quickly restore from these pre-copied states or activate backup module instances, enabling rapid failover while maintaining the appearance of continuous operation.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If data is copied between modules via publication/subscription channels, then modules can communicate independently, but IO overhead increases and communication delays occur

Engineering Contradiction:
ImproveModule communication flexibilityVSAvoidData transmission efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent merges the communication infrastructure into the single process memory space, allowing modules to access shared data structures directly without serialization/deserialization overhead. Data flows through shared memory regions or global variables that all modules can access simultaneously, eliminating the packetization and network protocol overhead inherent in inter-process communication while maintaining modular architecture benefits.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10747228B2Centralized scheduling system for operating autonomous driving vehicles
Publication Date: 2020.08.18 BAIDU USA LLC
  • US10747228B2 patent drawing
  • US10747228B2 patent drawing
  • US10747228B2 patent drawing

AI summary

An autonomous driving system includes a number of sensors and a number of autonomous driving modules. The autonomous driving system further includes a global store to store data generated and used by processing modules such as sensors and/or autonomous driving modules. The autonomous driving system further includes a task scheduler coupled to the sensors, the autonomous driving modules, and the global store. In response to output data generated by any one or more of processing modules, the task scheduler stores the output data in the global store. In response to a request from any of the processing modules for processing data, the task scheduler provides input data stored in the global store to the processing module. The task scheduler is executed in a single thread that is responsible for managing data stored in the global store and dispatching tasks to be performed by the processing modules.