Graphical Program Variant Regions for Multi-Configuration Modeling

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, which is time-consuming and prone to errors.

Innovation Solution

Implementing a single model that can represent multiple configurations using variant regions with active and inactive algorithmic substructures, where only one variant choice is executed at a time, and variant conditions are propagated to optimize resource usage and simplify model construction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

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

Engineering Contradiction:
Improveconfiguration representationVSAvoidmemory usage
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple separate configuration models into a single unified model by introducing variant regions that can contain multiple algorithmic substructures representing different configurations. These variant regions are consolidated within one model file, eliminating the need for separate model files for each configuration and thereby reducing memory usage while maintaining the ability to represent multiple system configurations.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The unified model structure serves multiple functions simultaneously: it can represent different system configurations through variant regions, maintain a single source of truth for all configurations, and enable efficient memory usage. The model can dynamically switch between different algorithmic substructures based on the active configuration, providing multi-functionality within a single model framework.

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

2Adaptability or versatility

If multiple separate models are created for different system configurations, then each configuration can be represented accurately, but model updates become error-prone and time-consuming as changes need to be made to each model individually

Engineering Contradiction:
Improveconfiguration representationVSAvoidupdate time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

By consolidating multiple configuration models into a single unified model with variant regions, the patent enables centralized update management. When a configuration needs to be updated, the change is made in one location within the unified model rather than propagating changes across multiple separate model files, significantly reducing update time and eliminating the risk of inconsistencies between models.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The unified model structure allows a single update operation to affect all configurations that share common elements. Common algorithmic substructures defined once in the unified model can be automatically applied across multiple configurations, reducing the time required to maintain consistency across different system configurations.

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

3Quantity of substance

If a single model represents multiple configurations using variant regions, then memory usage is reduced, but the model structure becomes more complex

Engineering Contradiction:
Improvememory usageVSAvoidmodel structure
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent manages model structure complexity by segmenting the unified model into distinct variant regions, each containing specific algorithmic substructures for different configurations. This segmentation allows the complex model to be organized into manageable, independently manageable sections that can be selectively activated or deactivated based on the current configuration, making the complexity controllable and navigable.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The model structure employs dynamic characteristics where variant regions and algorithmic substructures can be selectively activated or deactivated based on the current configuration context. This dynamic approach allows the model to present a simplified structure for the active configuration while maintaining the capability to represent multiple configurations, effectively managing complexity through conditional visibility and activation rather than permanent structural complexity.

Inventive Principle:
Principle #15Dynamics

4Reliability

If variant conditions are propagated automatically, then errors are reduced and accuracy improves, but processing overhead increases

Engineering Contradiction:
ImproveaccuracyVSAvoidprocessing resources
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent implements preliminary action by pre-defining variant conditions and algorithmic substructures within the unified model before execution. The variant conditions are established in advance, allowing the model to quickly determine which configurations are applicable without performing complex real-time analysis. This preliminary setup reduces the processing overhead during actual model execution while maintaining high accuracy through systematic condition propagation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11409504B1Variant modeling elements in graphical programs
Publication Date: 2022.08.09 MATHWORKS INC
  • US11409504B1 patent drawing
  • US11409504B1 patent drawing
  • US11409504B1 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.