Message-Based Modeling System for Hybrid Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current modeling systems lack efficient mechanisms for generating and managing messages with fixed payloads that persist during model execution, leading to complexities in message-based modeling and execution.

Innovation Solution

A message-based modeling system that includes a library of pre-defined object types for generating and processing messages, with a message-based execution engine that controls message persistence and routing, and cooperates with time-based and state-based execution domains to implement hybrid models.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If messages are generated during model execution with dynamic payloads, then message flexibility is improved, but message management complexity and memory usage increase

Engineering Contradiction:
Improvemessage flexibilityVSAvoidmessage management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The message structure is segmented into fixed payload portions and variable metadata portions. Fixed payloads are defined at compile time with predetermined sizes and types, while only necessary metadata (such as timestamp and destination) is dynamically managed during execution. This segmentation reduces memory allocation complexity and improves message management efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Message payloads are pre-defined and pre-allocated in memory before model execution begins. The payload structures are prepared in advance with fixed formats and sizes, eliminating the need for dynamic memory allocation during message creation. This preliminary action reduces runtime complexity and improves execution speed.

Inventive Principle:
Principle #10Preliminary action

2Duration of action of moving object

If message persistence time is extended during model execution, then message utility is improved, but memory consumption increases

Engineering Contradiction:
Improvemessage persistence timeVSAvoidmemory consumption
Core Design Contradiction:
Duration of action of moving objectVSQuantity of substance

Solution Approach 1:

Different message types are assigned different persistence durations based on their specific requirements. Critical messages maintain longer persistence times while less important messages are discarded sooner. This localized quality approach optimizes memory usage by ensuring that only necessary messages occupy memory resources for extended periods.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system implements automated message expiration and disposal mechanisms that discard messages after their predetermined persistence time elapses. Memory occupied by expired messages is automatically recovered and made available for new message allocations. This cyclical discarding and recovering process maintains memory efficiency while supporting extended message persistence when needed.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10423390B1Systems and methods for generating code for models having messaging semantics
Publication Date: 2019.09.24 MATHWORKS INC
  • US10423390B1 patent drawing
  • US10423390B1 patent drawing
  • US10423390B1 patent drawing

AI summary

A system and method may automatically generate computer programming code for an executable model having messaging semantics. The executable model may define messages that have fixed payloads, and that persist for only a determined time interval of a total execution or simulation time of the model. The model may establish message queues for storing messages. The standalone code may include code that establishes message services including the creation of message queues. The generated code may be compiled and deployed on a target device for execution.