Rule Engine Node Input Linking to Reduce Churn
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional rule engines face inefficiencies due to excessive unlinking, which leads to churn and performance slowdowns, as they cannot simultaneously logically unlink both inputs of a node without physically disconnecting it from the network, and existing heuristic approaches may choose the wrong side to unlink, affecting performance.
Innovation Solution
Implementing a method that logically links and unlinks node inputs within a session using a link indicator, allowing both inputs to be unlinked simultaneously without physical disconnection, and imposing a time limit to reduce excessive unlinking, thereby minimizing churn and resource wastage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If conventional unlinking is used to save memory space, then memory usage is reduced, but performance deteriorates due to excessive linking and unlinking operations causing churn
Solution Approach 1:
The patent segments the unlinking operation into two independent dimensions: left input unlinking and right input unlinking. This allows each input to be unlinked independently based on its own population status, rather than forcing a choice between unlinking one side or the other. The segmentation enables more granular control over memory management while reducing unnecessary re-linking operations that cause churn.
Solution Approach 2:
The patent implements dynamic unlinking where the link status of each input is adjusted dynamically based on real-time population conditions. When the left input becomes empty, the right input is unlinked; when the right input becomes empty, the left input is unlinked. This dynamic adaptation allows the system to optimize memory usage without triggering excessive re-linking cycles, thereby improving performance.
2Loss of energy
If one side is unlinked to save resources, then resource usage is reduced, but the node cannot simultaneously unlink both inputs which limits optimization
Solution Approach 1:
The patent divides the unlinking control into separate segments for left and right inputs. Each input can be unlinked independently when its corresponding side becomes empty, allowing the node to unlink both inputs simultaneously if both sides are empty. This segmentation provides the flexibility to adapt to different scenarios without being constrained by a single unlinking choice.
Solution Approach 2:
The patent changes the parameter of link status from a binary state (linked/unlinked) to a more granular state where each input can independently transition between linked and unlinked. This parameter change enables the node to adapt its resource usage based on the specific population status of each input, maximizing optimization opportunities while maintaining operational flexibility.
3Ease of manufacture
If arbitrary side is chosen for unlinking, then implementation is simplified, but performance is affected due to potentially wrong side being unlinked
Solution Approach 1:
The patent implements a self-service mechanism where the system automatically determines which input to unlink based on which side becomes empty first. This eliminates the need for arbitrary or heuristic choices, as the decision is made autonomously based on actual runtime conditions. The implementation remains simple because the rule is straightforward: unlink the opposite side when one side becomes empty, removing the complexity of choosing the wrong side.
Data Source
AI summary
Some embodiments of a method to reduce churn caused by excessive linking and unlinking have been presented. A rule engine can create a network having a number of nodes to evaluate a set of rules in a knowledge base. The rule engine may unlink a node in the network in response to an input of the node becoming empty in a session. The rule engine may then wait a predetermined period of time before allowing the node to be unlinked again during the session.


