Rules Engine Input Output Schema for XAI Explainability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Complex rules engines with numerous or intricate rules are difficult to understand, hindering the application of Explainable Artificial Intelligence (XAI) techniques, which require a fixed input schema and output schema for explanation purposes.
Innovation Solution
Defining rules engine inputs and outputs by identifying settable attributes of input objects and gettable attributes of output objects, allowing for the extraction and storage of these attributes to create a functional model that can be used with XAI algorithms to explain the rules engine's behavior.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the rules engine includes a large number of rules or complex rules, then the functionality and coverage of the rules engine is improved, but the understandability and ease of explanation of the rules engine deteriorates
Solution Approach 1:
The patent segments the complex rules engine into discrete, analyzable components by identifying individual input objects, their settable attributes, output objects, and gettable attributes. This segmentation allows XAI algorithms to process and explain specific rule evaluations rather than the entire complex ruleset at once, making the system more understandable while preserving its comprehensive functionality.
Solution Approach 2:
The patent introduces an intermediary layer between the complex rules engine and the XAI explanation system. This intermediary identifies and extracts specific input attributes and output attributes that serve as interfaces for explanation, allowing the XAI algorithm to operate on a simplified representation while the underlying complex rules engine maintains its full functionality.
2Productivity
If the rules engine includes a large number of rules or complex rules, then the processing capability is improved, but the difficulty of understanding and explaining the rules engine increases
Solution Approach 1:
The patent extracts specific input attributes from input objects and specific output attributes from output objects, separating these explanatory elements from the complex rules engine core. This extraction allows the high-processing-capability rules engine to operate independently while the extracted attributes provide a simplified interface for XAI explanation, reducing the difficulty of understanding without compromising processing capability.
3Ease of operation
If XAI techniques are applied to explain complex rules engines, then the explainability is improved, but a fixed input schema and output schema is required which may limit flexibility
Solution Approach 1:
The patent implements a dynamic attribute identification approach where input attributes and output attributes are determined based on the specific input objects and output objects being evaluated, rather than requiring a rigid fixed schema. This dynamic approach allows the system to adapt to different object types and attribute sets while still providing the structured input-output format required by XAI algorithms, thus maintaining both explainability and flexibility.
Data Source
AI summary
A computing device obtains a plurality of input objects. The computing device determines settable attributes of each input object of the plurality of input objects and creates a subset of the settable attributes based on an input filter. The computing device inserts the subset of the settable attributes into a rules engine, the rules engine comprising a set of rules evaluated with an input and producing an output during an execution of the rules engine. The computing device determines, during an execution of the rules engine, a plurality of output objects created during the execution of the rules engine and gettable attributes of each output object of the plurality of output objects and creates a subset of the gettable attributes based on an output filter. The computing device stores rules and corresponding gettable attributes and values of the gettable attributes based on the subset of the gettable attributes in memory.


