Graphical Program Variant Regions for Configuration-Specific Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current modeling environments require creating multiple separate models for different system configurations, leading to inefficient use of computer memory and error-prone updates, as changes need to be made to each model individually.

Innovation Solution

Implementing a single model that includes a common algorithmic structure with variant regions containing alternative algorithmic substructures, where only one variant choice is active during execution, allowing for efficient representation of multiple configurations without unnecessary resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple separate models are created for different system configurations, then each configuration can be represented accurately, but computer memory usage increases and updates become error-prone

Engineering Contradiction:
Improvemodel accuracyVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple separate models into a single unified model that contains variant regions. Instead of maintaining separate model files for different configurations, all configurations are consolidated into one model with conditional logic that activates different algorithmic substructures based on runtime parameters. This reduces memory usage while preserving the ability to represent multiple configurations accurately.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The single model is designed to be universal by incorporating variant regions that can represent multiple system configurations. The model uses conditional parameters and variant choices to enable a single model structure to serve multiple configuration purposes, eliminating the need for separate specialized models for each configuration.

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

2Reliability

If multiple separate models are created for different system configurations, then each configuration can be represented accurately, but update complexity increases due to manual handling across models

Engineering Contradiction:
Improvemodel accuracyVSAvoidupdate complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

By combining multiple configuration-specific models into a single unified model with variant regions, the patent eliminates the need to manually update multiple separate models. Changes to common algorithmic structure or shared parameters need only be made once in the unified model, and the updates automatically apply to all configurations through the conditional logic framework.

Inventive Principle:
Principle #5Merging (Combining)

3Quantity of substance

If a single model represents multiple configurations, then memory usage decreases, but determining active variants requires additional processing

Engineering Contradiction:
Improvememory usageVSAvoidprocessing overhead
Core Design Contradiction:
Quantity of substanceVSPower

Solution Approach 1:

The patent implements preliminary action by pre-defining variant regions and their associated conditional logic during model construction. The framework pre-processes the model structure to identify and organize alternative algorithmic substructures, so that during execution, the system only needs to evaluate pre-established conditional expressions rather than performing complex runtime analysis. This reduces processing overhead while maintaining the benefits of a single unified model.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11126407B1Variant modeling elements in graphical programs
Publication Date: 2021.09.21 MATHWORKS INC
  • US11126407B1 patent drawing
  • US11126407B1 patent drawing
  • US11126407B1 patent drawing

AI summary

Systems and methods provide, as part of an executable graphical model, a region for providing variants that includes one or more computational choices defining alternative execution implementations of the region. Conditions assigned to the one or more computational choices indicate which of the computational choices is active. The conditions specify logical expressions of variables that evaluate to True or False. For a given simulation of the executable graphical model, all of the logical expressions may evaluate to False, such that none of the computational choices are active. All of the computational choices of the executable graphical model may be removed for the given simulation.