Polish Notation Event Rules for Stack-Based Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing and processing large numbers of individual event-processing rules for customers in an event-processing environment becomes complex and performance-intensive, especially when flexibility in operators and logical expressions is required, leading to a need for thousands of rules or parameterized expressions.

Innovation Solution

Implementing generalized event-processing rules in Polish notation, allowing customers to customize rules using a stack-based processing system, which reduces memory and processing time by representing hundreds of thousands of rules with a few general rules and storing them in a portable format.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If individual event-processing rules are created for each customer, then customization flexibility is improved, but the number of rules increases to hundreds of thousands making management difficult and performance penalties significant

Engineering Contradiction:
Improverule customization flexibilityVSAvoidnumber of rules to manage
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal rule template that can serve multiple customers with different parameters. Instead of individual rules for each customer, a single parameterized rule structure handles all customers by substituting customer-specific values (account number, threshold amounts, notification preferences) into the same rule framework, reducing hundreds of thousands of rules to a manageable set of templates.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent transforms fixed individual rules into parameterized rules where customer-specific values are stored as variables. The rule structure remains constant while parameters (account balance thresholds, transaction amounts, notification methods) are changed per customer, allowing flexible customization without creating new rules for each customer scenario.

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If parameterized rules are used to reduce the number of rules, then rule management complexity is reduced, but processing speed decreases due to the need to substitute parameters and evaluate complex expressions

Engineering Contradiction:
Improvenumber of rules to manageVSAvoidrule processing speed
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The patent pre-compiles parameterized rules into an optimized intermediate representation during a compilation phase, before runtime execution. This preliminary action transforms the parameterized rule structure into a form that enables faster runtime evaluation, separating the rule definition phase from the rule execution phase to optimize both management and processing speed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts parameter substitution and expression evaluation into separate processing stages. By isolating the parameter matching logic from the rule evaluation logic, the system can efficiently match customer parameters to rule templates and then execute the simplified rule evaluation, improving overall processing speed.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If true flexibility of operators and logical expressions is allowed, then rule customization capability is improved, but the number of rules required increases significantly to cover all possible cases

Engineering Contradiction:
Improveoperator flexibilityVSAvoidnumber of rules required
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements a universal set of operator templates that handle multiple comparison operations (=, !=, >, <, >=, <=) and logical expressions (AND, OR, NOT) within a single rule framework. Instead of creating separate rules for each operator combination, the system uses parameterized operator expressions that can represent any combination of conditions, reducing the rule quantity while maintaining full operational flexibility.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10395171B2Providing event-processing rules
Publication Date: 2019.08.27 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10395171B2 patent drawing
  • US10395171B2 patent drawing
  • US10395171B2 patent drawing

AI summary

A method and system are provided for providing event-processing rules in an event-processing environment. The method includes providing at least one generalised event-processing rule to a customer, receiving customer input of rule customization to produce a customized rule, and storing the customized rule in Polish notation for processing using stack-based processing. The method also includes receiving notification of an event for a customer, retrieving a customized rule relating to the customer, and processing the customized rule using stack-based processing.