Rules-Based Decisioning With In-Memory Signal Caching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing rule-based decisioning systems face complexity in creating new signals, require code changes and redeployment, and separate error handling from decisioning logic, limiting decision outcomes and efficiency.
Innovation Solution
A method and system for rules-based decisioning that creates an in-memory cache of signals and rules, generates raw and engineered signals, executes rules to produce potential decisions, and reduces them to final decisions using a hierarchy, allowing real-time signal creation and integrated error handling within the decisioning process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Stability of the object's composition
If signals are managed outside the rules engine and code changes are required for new signals, then system stability is maintained, but device complexity and deployment time increase
Solution Approach 1:
The system segments signal management into two parts: signal definitions are stored externally in a database (maintaining stability), while signal execution is handled by a rules engine that loads definitions into memory (reducing complexity). This allows new signals to be added by simply inserting database records without code changes.
Solution Approach 2:
An in-memory cache acts as an intermediary between the external signal definitions and the rules engine. The cache loads signal definitions from the database into memory, allowing the rules engine to access signals without direct code changes or redeployment, thus reducing deployment complexity while maintaining system stability.
2Adaptability or versatility
If error handling is separated from decisioning logic, then modularity is improved, but device complexity increases
Solution Approach 1:
The system merges error handling with decisioning logic by implementing a unified rules engine that processes both decisions and errors through the same execution framework. This consolidation reduces the number of separate components and simplifies the overall architecture while maintaining modularity through the use of a database for storing both signal definitions and error handling rules.
3Ease of operation
If rules use simple Boolean logic, then ease of operation is improved, but productivity decreases due to limited decision outcomes
Solution Approach 1:
The system extends static Boolean logic with dynamic signal generation and execution. The rules engine can dynamically create signals from event data, execute complex decision logic, and generate multiple decision outcomes based on rule priorities and conditions. This dynamic approach maintains ease of operation through a simple rule syntax while significantly improving productivity through enhanced decision-making capabilities.
Data Source
AI summary
Systems and methods for rules-based decisioning of events are disclosed. In one embodiment, a method may include: creating an in-memory cache by parsing stored checkpoints, signals, and rules definitions; receiving a checkpoint request; prioritizing the checkpoint request; preparing a basic context, comprising a limited set of objects, for the checkpoint request; using the in-memory cached definitions, generating at least one of a raw signal, an engineered signal, and a secondary signal for the checkpoint request based on the basic context; using the in-memory cached definitions, executing rules on at least one of the basic context, the raw signal, the engineered signal, and the secondary signal to generate a list of potential decisions; reducing the list of potential decisions to a list of final decisions; publishing the final decisions and supporting data rules and signals execution details; and executing the final decisions.

