Code Data Path Preprocessing for Safety-Critical Evaluation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for preprocessing code data for machine learning evaluations, especially in safety-critical applications, face challenges in reducing the vast number of possible paths in abstract syntax trees, leading to high time and space requirements and storage constraints.

Innovation Solution

A method that selectively calculates and generates embeddings for a subset of paths in a uniformly distributed manner, using techniques like reservoir sampling to reduce the number of paths evaluated, thereby minimizing computational and storage needs without impairing subsequent evaluations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If all paths in the abstract syntax tree are calculated and stored for machine learning evaluation, then the completeness and accuracy of the evaluation data is improved, but the time and space requirements for preprocessing increase significantly

Engineering Contradiction:
Improveevaluation accuracyVSAvoidpreprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial action by selecting a representative subset of paths from the complete set of possible paths in the abstract syntax tree. Instead of calculating all possible paths (which would be exhaustive), the method randomly selects a manageable number of paths that sufficiently represent the code structure for machine learning evaluation purposes. This reduces preprocessing time while maintaining adequate evaluation accuracy.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent performs preliminary random sampling of paths before the actual machine learning evaluation process. By pre-selecting and storing a representative subset of paths in advance, the system prepares the data in a computationally efficient manner, avoiding the need to generate and process all possible paths during the evaluation phase itself.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If all paths in the abstract syntax tree are calculated and stored for machine learning evaluation, then the completeness of the training data is improved, but the storage requirements increase significantly

Engineering Contradiction:
Improvedata volumeVSAvoidstorage requirement
Core Design Contradiction:
Quantity of substanceVSVolume of stationary object

Solution Approach 1:

The patent extracts a representative subset of paths from the complete set of possible paths in the abstract syntax tree. By taking out only the necessary portion of paths needed for effective machine learning training rather than storing all possible paths, the system significantly reduces storage requirements while maintaining data quality sufficient for accurate evaluation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The method uses partial action by storing only a manageable subset of paths rather than the complete set. This selective storage approach maintains adequate data volume for training while avoiding the excessive storage demands that would result from storing all possible paths through the abstract syntax tree.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If a large number of paths are selected for evaluation, then the comprehensiveness of the analysis is improved, but the computational complexity and resource requirements increase

Engineering Contradiction:
Improveanalysis comprehensivenessVSAvoidcomputational complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies partial action by selecting a representative subset of paths rather than analyzing all possible paths. This random sampling approach maintains adequate analysis comprehensiveness for machine learning evaluation while significantly reducing computational complexity and resource requirements compared to exhaustive path analysis.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20240354078A1Method for preprocessing code data for a subsequent evaluation
Publication Date: 2024.10.24 ROBERT BOSCH GMBH
  • US20240354078A1 patent drawing
  • US20240354078A1 patent drawing
  • US20240354078A1 patent drawing

AI summary

A method for preprocessing code data for a subsequent evaluation, preferably for a safety-critical application. The method includes: providing a representation of the code data, wherein the representation has a multitude of paths, which specify different sequences of syntactic elements of a code of the code data; selecting a plurality of paths from the multitude of paths for the subsequent evaluation, wherein the paths are selected in a uniformly distributed manner, wherein a number of the selected paths is lower than a total number of the multitude of paths; carrying out a path calculation in which the selected paths are calculated, wherein the path calculation is limited to the selected paths; providing the calculated paths for the evaluation.