Monte Carlo Resource Allocation for Automation Nodes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The interaction between discipline specialists in the conceptual design and software engineering phases of embedded software systems is problematic due to the use of different languages, models, and tools, leading to improper deployment defects that require debugging during verification actions, and there is a need for effective timing analysis in preemptive operating systems.

Innovation Solution

A method and system for configuring automation systems that involve generating a transition matrix and Markov chain from sequencing constraints and communication matrices to optimize resource allocation, allowing for automated timing analysis and identification of communication bottlenecks, using factor graphs and Monte Carlo simulations to predict execution times and ensure proper scheduling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual interaction between discipline specialists and software engineers is used for timing analysis, then communication between domains is possible, but time consumption and probability of errors increase

Engineering Contradiction:
Improvetiming analysis accuracyVSAvoidtime for timing analysis
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent replaces manual mechanical analysis processes with automated computational methods. A processing unit automatically performs timing analysis by receiving sequencing constraints, generating transition matrices, and computing timing properties without human intervention, thereby eliminating the time-consuming manual interaction while maintaining accuracy through systematic algorithmic approaches

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent introduces an intermediary processing unit that acts as a mediator between sequencing constraints and timing analysis results. This intermediary automatically generates transition matrices and computes timing properties, serving as a bridge that eliminates the need for direct manual interaction between specialists while ensuring accurate timing analysis through structured computational processes

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If comprehensive timing analysis of all software components is conducted, then proper scheduling is ensured, but computational complexity increases

Engineering Contradiction:
Improvescheduling correctnessVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the complex timing analysis problem into manageable components: receiving sequencing constraints, generating transition matrices, and computing timing properties separately. This segmentation allows the processing unit to handle each aspect independently, reducing overall computational complexity while ensuring comprehensive scheduling analysis through systematic processing of divided tasks

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the timing analysis problem by changing parameters from direct analysis of all software components to analysis through transition matrices. This parameter transformation simplifies the computational complexity by representing complex inter-component timing relationships in a structured matrix format that is more efficient to process while maintaining complete scheduling coverage

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12190162B2Optimized allocation of resources to nodes of an automation system based on monte carlo simulation
Publication Date: 2025.01.07 SIEMENS AG
  • US12190162B2 patent drawing
  • US12190162B2 patent drawing
  • US12190162B2 patent drawing

AI summary

A method including a) receiving a computer generated data set of sequencing constraints describing a software system to be executed on an automation system and including software components and runnable function entities distributed over the number of computing nodes; b) generating a transition matrix from the data set of sequencing constraints, the transition matrix having a plurality of matrix elements each of them describing, by a transition value, a transition from a runnable function entity to another runnable function entity; c) receiving a computer generated communication matrix describing communication links between the computing nodes in the automation system; d) generating a Markov chain out of the data set of sequencing constraints and the communication matrix; e) generating a distribution function from the Markov chain describing used resources of the computing nodes by the software components and runnable function entities; and f) optimizing the allocation of resources.