Causal Engine for Root Cause Analysis in Complex Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Troubleshooting complex systems with interconnected elements is challenging due to the difficulty in determining the root cause of symptoms, especially when elements exist in different planes or have imperfect information sources, as existing tools may not suffice in identifying root causes that affect multiple inter-related elements.

Innovation Solution

A causal engine using a declarative causal language and continuation passing style (CPS) programming to compile causal rules into continuations, analyzing conditions and predicting effects, allowing for root cause determination across arbitrary complexity systems by normalizing system information and applying causal relationships.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional troubleshooting tools are used to analyze complex systems, then the analysis process becomes increasingly intractable and time consuming, but the tools cannot effectively identify root causes across different system planes

Engineering Contradiction:
Improveroot cause identification accuracyVSAvoidtroubleshooting time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system divides complex troubleshooting into discrete causal rules that can be independently compiled and executed. Each causal rule represents a specific cause-effect relationship that can be analyzed separately, then combined to solve complex multi-plane problems efficiently

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a causal engine as an intermediary component that sits between symptom observation and root cause identification. This engine compiles causal rules into continuations and systematically applies them to trace problems across system planes, bridging the gap between traditional tools and complex distributed systems

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If automated tools filter by similar symptoms or correlate with known causes, then the process is simplified, but the tools cannot determine root causes that are far removed or distantly related from symptoms

Engineering Contradiction:
Improvetroubleshooting process simplicityVSAvoiddistant causal relationship detection
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The system performs preliminary compilation of causal rules into continuation form before actual troubleshooting occurs. This pre-processing organizes all possible cause-effect relationships in a structured format that enables efficient traversal and prevents loss of distant causal relationships during analysis

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The causal rules are nested within a continuation structure that allows systematic exploration of deeply nested cause-effect relationships. This nesting enables the engine to trace distant causal links by systematically unwinding the continuation stack, maintaining simplicity while detecting far-removed root causes

Inventive Principle:
Principle #7Nested doll (Nesting)

3Adaptability or versatility

If the same root cause results in many different symptoms in different elements, then comprehensive coverage is achieved, but it becomes difficult or impossible to determine the precise root cause using existing practices

Engineering Contradiction:
Improvesymptom coverage across system elementsVSAvoidroot cause determination precision
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The causal engine implements universal causal rules that can apply across multiple system elements and planes. A single causal rule can explain symptoms in different elements, and the engine systematically applies this universal knowledge to precisely identify the root cause regardless of how many elements are affected

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

Solution Approach 2:

The system uses feedback from observed symptoms to guide the application of causal rules. By continuously comparing expected symptoms from causal rules with actual observed symptoms across multiple elements, the engine narrows down potential root causes and achieves precise determination even when the same root cause manifests in many different ways

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8180718B2Engine for performing root cause and effect analysis
Publication Date: 2012.05.15 MICRO FOCUS LLC
  • US8180718B2 patent drawing
  • US8180718B2 patent drawing
  • US8180718B2 patent drawing

AI summary

An engine for performing root cause analysis on a system comprising a plurality of elements in a modeled domain, the engine comprising a module loader and parser for loading modules of computer code containing computer language statements modeling elements of the system, including one or more of model type definitions, conditions, causal rules, and continuations; and for parsing the computer language statements; a storage for storing the parsed computer language statements; a receiver for receiving conditions representing state changes of system elements, accessing the storage, and determining one or more parsed computer language statements to apply to the received conditions; a hypothesis generator for instantiating one or more hypotheses of potential causes of each received condition consistent with the received conditions and the parsed computer language statements; a blackboard for receiving the instantiated hypotheses, and determining a root cause of the received conditions based on the hypotheses consistent with the received conditions and the parsed computer language statements; and an output for outputting the determined root cause.