Batch Execution Engine with Just-in-Time Procedural Loading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Batch processing control systems face inefficiencies due to the need to load and execute complex control recipes that consume large amounts of memory and processor time, leading to limitations in the number of concurrent batches that can be processed and causing production delays due to inconsistencies between lower-level controllers and batch execution engines.

Innovation Solution

Implementing a 'just-in-time' loading and execution technique using instantiation objects, where procedural elements are loaded and executed only when needed during runtime, rather than at creation time, and deconstructed after use, to optimize resource usage and reduce memory consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If control recipes are loaded at creation time, then all procedural elements are available for execution, but memory consumption increases and processor time is wasted loading unnecessary elements

Engineering Contradiction:
Improveavailability of procedural elementsVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies preliminary action by pre-defining the structure and logic of procedural elements in a compact format during system setup, but delaying their full instantiation and loading until they are actually needed during batch execution. This allows the system to have all procedural elements prepared in advance in a space-efficient form while only consuming full memory resources when necessary.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements local quality by making different procedural elements available at different times based on their specific need during batch execution. Instead of uniformly loading all procedural elements at creation time, the system selectively loads only those procedural elements that are required for the current batch, optimizing memory usage according to local requirements.

Inventive Principle:
Principle #3Local quality

2Productivity

If all procedural elements are loaded into memory, then execution can proceed without delays, but the number of concurrent batches that can be processed is limited

Engineering Contradiction:
Improveconcurrent batch processing capacityVSAvoidbatch execution delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies dynamics by making the procedural element loading process adaptive and dynamic rather than static. The system dynamically determines which procedural elements to load based on the current batch requirements, and dynamically manages memory allocation to support multiple concurrent batches by unloading elements from batches that have completed or are paused.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements universality by creating a shared memory management system that serves multiple concurrent batches. The same memory resources are dynamically allocated and deallocated to different batches as needed, allowing the system to process multiple batches simultaneously with a fixed memory footprint, rather than requiring dedicated memory for each batch.

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

3Speed

If control recipes are fully loaded and compiled, then execution is fast, but system resources are consumed even when batches are not being processed

Engineering Contradiction:
Improvebatch execution speedVSAvoidprocessor time and memory resources
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The patent applies periodic action by loading and compiling procedural elements in periodic cycles corresponding to batch execution cycles. Instead of maintaining all procedural elements in fully compiled form continuously, the system compiles and loads them periodically when batches are initiated, and allows them to be unloaded or decompiled when not in use, reducing continuous resource consumption while maintaining execution speed when needed.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentEP1993015B1Methods and systems for batch processing and execution in a process system
Publication Date: 2021.04.21 FISHER ROSEMOUNT SYST INC
  • EP1993015B1 patent drawingFigure 1
  • EP1993015B1 patent drawingFigure 2
  • EP1993015B1 patent drawingFigure 3

AI summary

A system and method for implementing a control process within a process control system and resolving inconsistencies during execution of the control process includes loading the logical structure of the control process, loading a plurality of instantiation objects or processes when the control process is instantiated, using the instantiation objects to instantiate a procedural element of the control process as the control process calls for the procedural element during execution, executing the procedural element as part of the control process, and deconstructing the procedural element as execution of the procedural element is completed during execution of the control process Resolution of inconsistencies includes executing a first model of an entity in a controller, executing a second model of the entity in an execution engine, detecting a difference between the models, generating a prompt and receiving an operation instruction to continue the process or abort the process