Temporal Predicate Segmentation for Event Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing event processing methods for temporal predicates are inefficient in maintaining the set of events that satisfy the predicate as time progresses, and they either incur high computational costs or restrict expressiveness by using explicitly-specified windows.

Innovation Solution

Separate the predicate into a temporal and non-temporal part, compare the temporal part against known window types, and replace the non-temporal part with a filter and the temporal part with an instance of the matching window type, parameterized for efficient tracking.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If tracking truth of predicates for each event separately is used, then expressiveness is maintained, but computational cost increases

Engineering Contradiction:
ImproveexpressivenessVSAvoidcomputational cost
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The predicate is segmented into a temporal part and a non-temporal part. The temporal part is matched against known window type predicates to identify applicable window optimizations, while the non-temporal part is retained for filtering. This segmentation allows the system to maintain expressiveness through the full predicate while reducing computational cost by applying efficient window-based tracking to the temporal component.

Inventive Principle:
Principle #1Segmentation

2Productivity

If explicitly-specified window is used, then computational efficiency is improved, but expressiveness is restricted

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidexpressiveness
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system introduces an intermediary matching process that compares the temporal part of arbitrary predicates against a library of known window type predicates. This intermediary layer enables the system to automatically discover and apply appropriate window optimizations without requiring explicit window specifications in the original predicate, thus maintaining expressiveness while achieving computational efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If discovery operation is performed for all historical events, then truth value accuracy is maintained, but time consumption increases

Engineering Contradiction:
Improvetruth value accuracyVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary action by matching the temporal part of the predicate against known window type predicates before processing historical events. This preliminary matching identifies applicable window optimizations in advance, allowing the system to efficiently track only the relevant events that satisfy the predicate without performing expensive discovery operations on all historical events, thus maintaining accuracy while reducing time consumption.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11514895B2Discovering windows in temporal predicates
Publication Date: 2022.11.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11514895B2 patent drawing
  • US11514895B2 patent drawing
  • US11514895B2 patent drawing

AI summary

A method and system are provided. The method includes separating a predicate that specifies a set of events into a temporal part and a non-temporal part. The method further includes comparing the temporal part of the predicate against a predicate of a known window type. The method also includes determining whether the temporal part of the predicate matches the predicate of the known window type. The method additionally includes replacing (i) the non-temporal part of the predicate by a filter, and (ii) the temporal part of the predicate by an instance of the known window type, responsive to the temporal part of the temporal predicate matching the predicate of the known window type. The instance is parameterized with substitutions used to match the temporal part of the predicate to the predicate of the known window type.