Canonical Rule-Based Software Agent Construction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software agents programmed with static procedural logic face limitations in adaptability and scalability, particularly when dealing with complex goals and varying execution environments, as they require compiled logic and can be resource-intensive, especially on less powerful devices.

Innovation Solution

A system and method for constructing a canonical rule-based agent that utilizes a set of canonical rules, allowing for compilation and execution in a rule engine, enabling agents to be constructed and moved between environments with a compiled rule set, and dynamically adjusting rule sets based on execution environments to optimize resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If agents are programmed with static procedural logic, then the logic can be compiled into agent software, but the agents lack adaptability to different execution environments and complex goals

Engineering Contradiction:
ImproveadaptabilityVSAvoidcomplexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the agent system into distinct components: a rule engine that executes rules, a working memory that stores data, and a rule set that defines behavior. This segmentation allows the agent to maintain simple compiled code while achieving adaptability through the separate rule-based system that can be dynamically configured without recompiling the agent itself.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a rule engine as an intermediary between the agent's compiled code and the execution environment. This rule engine acts as a mediator that interprets and executes rules dynamically, allowing the agent to adapt to different environments and complex goals without requiring changes to the core agent code, thus resolving the contradiction between adaptability and complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If agents are programmed with static procedural logic, then the code can be compiled, but the agents become resource-intensive especially on less powerful devices

Engineering Contradiction:
Improveresource efficiencyVSAvoidadaptability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent extracts the adaptive logic from the compiled agent code and places it in an external rule set that is interpreted by the rule engine. This extraction allows the agent's core compiled code to remain simple and resource-efficient, while the adaptive behavior is handled by the lightweight rule-based system that consumes fewer resources than complex procedural logic would require.

Inventive Principle:
Principle #2Taking out (Extraction)

3Ease of operation

If rule-based systems are used with forward-chaining, then the system can diagnose based on symptoms, but the system requires significant computational resources to evaluate all rules

Engineering Contradiction:
Improveease of useVSAvoidenergy consumption
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by pre-processing and indexing the rule set before execution. The rule engine prepares the rule base in advance, organizing rules and their conditions in a way that enables efficient matching during execution. This preliminary preparation reduces the computational resources required during actual rule evaluation, making the system both easy to use and energy-efficient.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7698243B1Constructing an agent in a first execution environment using canonical rules
Publication Date: 2010.04.13 CALLAHAN CELLULAR LLC
  • US7698243B1 patent drawing
  • US7698243B1 patent drawing
  • US7698243B1 patent drawing

AI summary

A method, computer readable medium and system for constructing an agent in a first execution environment that utilizes a set of canonical rules, comprising requesting a canonical rule set for an agent, supplying the agent with the rule set and requesting compilation of the rule set.