Certifiable Software Integrity via ML Cross-Check
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-integrity computer systems, particularly in aerospace and image processing, face challenges in ensuring accurate outputs due to the complexity of video systems and the inability to certify artificial intelligence-based systems like those using machine learning, which lack linear execution threads.
Innovation Solution
Combining certifiable software with non-certifiable machine learning software to cross-check outputs, using a model built with machine learning algorithms, and weighting them by figures of merit to improve system integrity and robustness, potentially through methods like Kalman filtering.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If machine learning software is used to process complex image and video data, then the system's ability to handle complex scenarios is improved, but the software cannot be certified according to traditional certification standards
Solution Approach 1:
The system divides the processing into two independent software paths: a certifiable software application that follows traditional certification standards and a qualifiable machine learning software application that handles complex patterns. Each path processes the same input independently, and their results are cross-checked to ensure reliability while maintaining adaptability.
2Reliability
If traditional certifiable software is used, then the software can be certified according to certification standards, but it struggles with complex video systems having millions of pixels
Solution Approach 1:
The system merges two different software approaches: certifiable software that ensures reliability through traditional methods and qualifiable machine learning software that provides adaptability for complex video processing. The combination leverages the strengths of both approaches to handle complex scenarios while maintaining certification standards.
3Reliability
If multiple parallel computers are used to improve integrity, then the system produces more reliable outputs, but the complexity of the system increases
Solution Approach 1:
The system uses an output comparison mechanism as an intermediary that validates results without requiring full replication of complex processing systems. The qualifiable software acts as a cross-check against the certifiable software, providing integrity verification with reduced complexity compared to multiple full parallel systems.
Data Source
AI summary
A method of improving integrity of a computer system includes executing certifiable and qualifiable software applications. The certifiable software application is composed of static program instructions executed sequentially to process input data to produce an output, and the qualifiable software application uses a model iteratively built using a machine learning algorithm to process the input data to produce a corresponding output. The certifiable software application is certifiable for the computer system according to a certification standard, and the qualifiable software application being non-certifiable for the computer system according to the certification standard. The method also includes cross-checking the output by comparison with the corresponding output to verify the output, and thereby improve integrity of the computer system. And the method includes generating an alert that the output is unverified when the comparison indicates that the output differs from the corresponding output by more than a threshold.


