Trigger Scheduling in Expression Graph Evaluation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In triggered expression evaluation, multiple parallel paths from an operand to a common ancestor can lead to temporarily incorrect results due to simultaneous triggers, and simultaneous changes in input values can cause erroneous end results.
Innovation Solution
The method schedules trigger reception based on node priority in the expression graph, with internal nodes receiving triggers before external nodes, and uses separate queues for internal and external triggers to ensure stable operand evaluation and prevent interference.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If triggered expression evaluation is implemented by having an operand trigger its parent expressions, then the expression can be re-evaluated whenever the value of an operand changes, but multiple parallel paths from an operand to a common ancestor can lead to temporarily incorrect results due to simultaneous triggers
Solution Approach 1:
The patent assigns priorities to internal nodes in advance based on their level in the expression graph before trigger propagation begins. This preliminary assignment of priorities (with lower levels receiving higher priorities) ensures that when triggers propagate through multiple parallel paths, they are received and processed in the correct sequence, preventing temporarily incorrect results while maintaining reliable expression evaluation.
2Adaptability or versatility
If multiple input values change simultaneously, then the system can respond to all changes, but the external triggers may interfere and provide an erroneous end result
Solution Approach 1:
The patent segments triggers into two distinct categories: internal triggers (from internal nodes) and external triggers (from external nodes). This segmentation allows the system to handle them differently - internal triggers are processed according to node priorities while external triggers are processed in FIFO order. This segmentation prevents interference between simultaneous external changes and ensures that internal expression evaluations complete before external triggers are processed, maintaining result accuracy while responding to all changes.
3Ease of operation
If triggers are processed in the order they are sent, then the implementation is simple, but the reception of triggers may cause temporarily incorrect expression results due to multipath problems
Solution Approach 1:
The patent performs preliminary assignment of priorities to all internal nodes based on their level in the expression graph before trigger propagation begins. This pre-established priority structure allows the system to maintain simplicity in trigger processing while ensuring correctness - triggers are still processed in a systematic order, but now that order is determined by pre-assigned priorities rather than arbitrary send order, preventing multipath evaluation errors.
Data Source
AI summary
Method and network node (2) for a communication network (1) providing a service in the communication network. The network node (2) is arranged to communicate with 5 context sources (12, 15, 16) providing input values for a triggered expression evaluation, and to provide a network service to communication devices (12, 15, 16) based on the result of the triggered expression evaluation. An evaluation result of the triggered expression evaluation is obtained upon a change to an input value, and the triggered expression evaluation comprises the evaluation of nodes in an expression 10 graph. Each internal node is assigned a priority based on the level of the node in the expression graph. Actual reception of a trigger by an internal node is scheduled based on the priority of the internal node, such that the internal node will only receive a trigger after internal nodes with a higher priority have received their associated triggers.


