Method, system, and computer readable medium for constructing a model of a physical system

PSS addresses the challenge of modeling complex manufacturing systems by automatically deriving a system behavior model, enhancing understanding and performance analysis, and optimizing operations through predictive maintenance.

JP7609770B2Active Publication Date: 2025-01-07ウィプロ - ラインクラフト エーアイ プライベート リミテッド
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2021511624
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-08-27
Filing Date
2019-08-28
Publication Date
2025-01-07
Estimated Expiration
2039-08-28

Smart Images

  • Figure 0007609770000001
    Figure 0007609770000001
  • Figure 0007609770000002
    Figure 0007609770000002
  • Figure 0007609770000003
    Figure 0007609770000003
Patent Text Reader

Abstract

1. A method for constructing a model, the method comprising: receiving a hierarchical tree structure representing a system, the hierarchical tree structure defining nodes associated with hardware; collecting data associated with the hardware components, the data associated with time stamps, the data including observation data associated with a physical system; deriving node states for the nodes based on the data, the node states including a first node state and a second node state, the first node state defining a first state of the node and the second node state defining a second state of the node; constructing a finite state machine (FSM) model, the FSM model defining a sequence of states associated with the nodes based at least in part on the time stamps, the FSM model being a portion of an overall finite state machine of the physical system; and creating a model of the physical system based on the overall finite state machine.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] This PCT application claims the benefit under 35 U.S.C. §119(a) of Indian Provisional Application No. 201821032236, filed on August 28, 2018, entitled "A System For Building A Model of A Discrete Manufacturing System And The Process For Its Performance Improvement Using This Model," and U.S. Utility Application No. 16 / 551,781, filed on August 27, 2019, the entire disclosures of which are incorporated herein by reference. [Background technology]

[0002] The data aggregation platform can extract raw data from various components in a system, such as industrial devices operating on a manufacturing floor. The data aggregation platform can sample across different components individually or continuously and store the raw data with a time stamp. In particular, the raw data can identify the status of sensors or actuators in binary form and process the status or value of sensors in various formats (e.g., integer or floating point format).

[0003] A variety of tools are available to analyze and understand the raw data aggregated from a particular system. For example, to analyze the raw data, data analysis systems include manually derived models of the particular system that define how the particular system is believed to operate and function. Depending on the complexity of the system being modeled, manually deriving a model is cumbersome and skill-based. As systems become more and more complex, it also becomes more and more difficult to manually derive a model that completely and comprehensively defines a particular system. Furthermore, when the operation of a particular system begins to deviate in a new direction toward a new normal or standard of operation, a new manually derived model must be constructed to reflect the change.

[0004] To make useful sense of the raw data, analytical products can be used. Analytical products allow users to manually select specific variables or time intervals of interest, where the analytical product presents the data in graphs or tables. Thus, analytical products are useful to users when they know in detail what they are looking for.

[0005] For a detailed description of the illustrative embodiments, reference is now made to the accompanying drawings. [Brief description of the drawings]

[0006] [Figure 1] FIG. 1 is a block diagram of an exemplary reference system model. [Diagram 2] 1 is a flow diagram according to an example embodiment; [Diagram 3] FIG. 2 is a block diagram of example system information. [Figure 4] FIG. 2 illustrates an example finite state machine. [Diagram 5] FIG. 1 illustrates an example computing device that may be used to implement the example embodiments described herein. [Figure 6] FIG. 1 illustrates an example PSS architecture, according to some embodiments. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0007] The following description is directed to various embodiments of the present invention. One or more of these embodiments may be preferred, but the disclosed embodiments should not be interpreted or otherwise used as limiting the scope of the present disclosure, including the claims. Furthermore, those skilled in the art will understand that the following description has a wide range of applications, and the description of any embodiment is intended only to illustrate that embodiment, and does not imply that the scope of the present disclosure, including the claims, is limited to that embodiment.

[0008] Various terms are used to refer to specific system components. Different companies may call components by different names, and this specification does not intend to distinguish between components that differ in name but not function. In the following description and in the claims, the terms "including" and "comprising" are used in an open-ended manner and therefore should be interpreted to mean "including, but not limited to...". Also, the terms "couple" or "couples" shall mean either an indirect connection or a direct connection. Thus, when a first device couples to a second device, the connection may be through a direct connection or through an indirect connection via other devices and connections. For example, the word "couple" or "couples" may indicate an interaction between a set of machines (systems) or subassemblies (subsystems) thereof. This means that the systems and / or subsystems may not be electronically or mechanically attached to each other, but the operation of the behavior of a system or subsystem may affect the behavior of one or more coupled systems or subsystems.

[0009] Exemplary embodiments directed to a Productivity Synthesis System ("PSS") described herein can be used to derive models for large, complex, interlinked systems ("physical systems"), where the behavior of a physical system is conditionally or temporarily linked with other subsystems, as well as with external events and factors that are not part of the physical system's inherent model but may affect the behavior of that system. Examples of physical systems include automobile manufacturing assembly lines, industrial production systems, components operating within the Industrial Internet of Things (IIot), etc.

[0010] A PSS is a computer-implemented system that can be used to model industrial production systems with minimal manual input. In particular, a PSS automatically derives a model of a physical system (herein referred to as a "system behavior model"). In some cases, the derived system behavior model can be a digital twin of a particular physical system.

[0011] The PSS can generate meaningful analyses of the system's behavior and make recommendations to improve the throughput, performance, and reliability of the physical system. Additionally, the PSS can generate meaningful analyses that are used to detect degradation, adverse events, and predict future failures and hazards of the physical system. The PSS can model higher level aggregates (rather than representing combinations of the functional behavior of lower level aggregates) and derive higher level analysis parameters associated with them. By modeling higher level aggregates of functional behavior, the PSS can generate analyses and recommendations regarding the functional behavior of the physical system, which can then be drilled down to the raw data. In various embodiments, the analyses and recommendations are rendered for display to a user.

[0012] Additionally, the PSS can take quality parameters, or parameters associated with quality, as inputs and correlate the quality parameters with various system behaviors, including derived periods and derived states, to predict possible future quality issues when such patterns are observed. The PSS can also record data regarding the physical system in non-productive mode and build a complete history of manual interventions, if any, for further analysis of deviations in the physical system during manual operation or consequences of physical system damage. In cases where the operating sequence of the physical system's behavior, including periods or states, is changed, the PSS automatically detects the changes in behavior, including possible new periods or states, and automatically creates models or updates existing models to reflect the changed behavior.

[0013] The derived system behavior models can be used to perform analytical studies and simulations. Furthermore, the PSS can document and simplify system behavior, knowledge, diagnosis, and training for the operation of physical systems.

[0014] 1 shows a block diagram of an exemplary reference system model 100 suitable for a discrete manufacturing system. Initially, a Productivity Synthesis System ("PSS") uses a reference system model, such as reference system model 100, to derive a system behavior model. The underlying PSS technology recognizes that physical systems (i.e., manufacturing systems) have the following common characteristics that can be used to define the behavior of the physical systems, including finite state behavior, models of states, cyclical operation, interconnected nature, modular nature, hierarchical nature, performance measures, and external events.

[0015] A) Finite State Behavior. A physical system, such as a manufacturing system, is controlled using various sensors and actuators that define a set of possible states of the physical system. The set of possible states is finite in number. Of these states, a very small number of states are actually required for meaningful operation of the physical system. The PSS is configured to identify and derive the finite state behavior of the physical system.

[0016] B) State Models. The PSS is configured to identify and define possible states, where each state is a unique combination of information visible to the system. The PSS can generate models of various possible states, where a state "transitions" to another state when the unique combination of information changes to another state definition.

[0017] C) Periodic Operation - A physical system, such as a manufacturing system, operates in a repetitive manner of equal or similar steps of operation and thus in a periodic sequence of well-defined states. The PSS is capable of recognizing that there may be multiple such periods that may occur in the same physical system.

[0018] D) Interconnected Nature - A complex physical system such as a manufacturing system is made up of multiple systems, each operating at multiple cycles, working independently for some parts of the process and interdependently with some other cycles for other parts of the process to achieve the overall manufacturing function. The PSS is capable of identifying, deriving and defining the interconnected nature of the various nodes representing various parts of the physical system.

[0019] E) Modular Nature - The size and complexity of a physical system can be better modeled by defining the period of a physical subsystem of the physical system, grouping sets of sensors and actuators in the physical subsystems of the physical system that make up the higher level functional behavior of the aggregate of the physical system, and then defining the interactions of the different physical systems. Lower levels of hierarchy can involve multiple periods and state combinations under various conditions.

[0020] F) Hierarchical Nature - A physical system exhibits a hierarchical nature through the physical system characteristics that define the operating mode, the setup for a particular function among multiple candidates (such as a multi-part, multi-process equipment), where when the physical system mode is changed, all the system components below it behave in a different manner.

[0021] G) Performance Measures - Common and specific to manufacturing system performance prediction and performance optimization. These generally include (but are not limited to): i. Validity ii. Throughput iii. Process capability and stability iv. Cost optimization v. Work in Process (WIP) Optimization vi. Flexibility vii. Energy optimization viii. Effluent / Waste Optimization

[0022] H) External Events - Manufacturing system performance can be affected by external events over which the physical system has no control or information (i.e., shifts of operation, specific operators or line supervisors in charge, input material vendors, setups, interfaces with enterprise systems and MES that provide input for changes in behavior, etc.). Performance measures and external events are analyzed at the system level 102.

[0023] The PSS therefore looks for these behaviors in the observed data and maps the system behavior model to a reference formulation, which serves as the basis for further analysis and interaction with the user.

[0024] In FIG. 1, the top level, or system 102, represents top level aggregates such as lines, stores, and factories. System properties 104, defined before the systems 102, represent properties such as operation hours, line modes, and line setups. Under the system properties 104, various subsystems 106 may be defined. Subsystems may define various aggregates of assets such as cells, zones, and segments. Operational modes associated with each system may be further defined.

[0025] In the exemplary FIG. 1 , a portion 101 of the tree associated with the subsystem 106-2 is further defined. Notably, each of the subsystems 106-1 and 106-M may be associated with a respective portion of the tree similar to the portion 101 of the tree associated with the subsystem 106-2. Various operation modes 108 may be defined for the subsystem 106-2. Additionally, various assets 110 may be defined for the subsystem 106-2. The assets 110 may include lower level aggregates with periodic behavior. That is, the assets 110 may define periodic behavior. Under the assets 110, sequences 112 may be defined, where a sequence is a consecutive combination of states.

[0026] For each sequence, various states 114 may be defined. For the various states 114, various I / O information 116 is defined. In some embodiments, the I / O information 116 may include digital I / O, server location, measured variables, calculated variables, quality information, and user input.

[0027] Benefits of this approach include creating a system behavior model that is easily interpreted by humans. Functional formulations allow for the interpretation of human-perceivable actions rather than raw data. For example, "Digital input #7 turned on at time 03:07:42.2" (raw data) does not convey as much useful information as "The press ram forward movement was completed during the press step of the bearing press cycle, which occurred after the presence of a bearing was detected at the press tool." Although both messages can be derived from the same input, the latter message is more easily interpreted by humans.

[0028] Additional advantages include reduced complexity due to modeling hierarchy, modularity, and interactions, so that at a given time, understanding and analysis can be limited to only a particular module, including understanding a particular module's position in the hierarchy and its interfaces without knowledge of the entire physical system, although this is not required.

[0029] Another advantage includes the time dimension being embedded in the system model, which makes it possible to obtain and visualize a static picture of the physical system (at a given time), a historical picture that can be used to understand how the physical system reached a certain state (historical step sequence), and a predictive picture that reflects what is expected to happen afterwards (future possible behavior).

[0030] Because system models follow the same reference model, comparative analysis of patterns, behaviors, and changes in system models can be performed. Furthermore, because the reference model is standardized, it is easier to train personnel using the PSS.

[0031] During operation, PSS creates and updates a behavioral "digital twin" of the physical system that is created automatically by PSS, so the original designers, the design documentation of how the system was programmed to operate, or the computer code that governs the system behavior are not required to make updates to the system behavior model or "digital twin."

[0032] FIG. 2 shows a flow diagram 200 of a standardized process for creating a system behavior model. The flow diagram shows a process for deriving a system model with minimal human input. The PSS can automatically derive a system behavior model that matches expected behavior to minimal information about the physical system defined by the user. Each of the steps after step 204 in the flow diagram 200 is performed automatically without requiring user input. That is, at every step in the flow diagram 200, there is "automatic" learning and analysis, and without user triggering, initiation, or query, the PSS generates and updates deliverables (e.g., 214, 216, 220, and 224) by applying self-learning techniques.

[0033] No user input is required for the PSS to generate the deliverables 214, 216, 220 and 224, but the user may provide input to the PSS to refine the system behavior model, manually override some of the automatically analyzed parameters, provide an evaluation of the correctness or usefulness of recommendations given by the PSS, perform analyses through a user interface, and set up queries and analyses as needed.

[0034] The standardized process begins with receiving information about the system (204). The received information can include what is contained in the system, the purpose of the system, and where this information is available in the data. The user does not need to specify how the physical system works or is thought to work. Also, the user does not need to provide any model information or a "digital twin" of the system.

[0035] The user provides the PSS with the following information: system content; defining sensors, actuators and their data sources; other variables from the physical system controller memory unrelated to sensors and actuators that are relevant for defining states and external events and user-defined events; manually derived states; defining the existence of standard system operating modes; and external events; other input and output and memory variables that are relevant for analyzing quality parameters (e.g., but not limited to, welding current and voltage and wire feed, part machining automated quality check results, etc.), production part history parameters (e.g., but not limited to, part number, part type), system intrinsic parameters for measuring actuator health behavior (e.g., but not limited to, motor current and voltage, vibration sensors), or any other possibly related analysis of the system's output (e.g., but not limited to, input power to the system, air flow to the system). Each type of information that may be provided by the user is further described in turn below.

[0036] Define the system content - The user may define the physical content of the system (such as assets (generally standalone independent equipment used in the line) or (such as storage / buffers, as well as logical interconnections between assets, IT system interfaces, data interface points, etc.). Furthermore, the user may give a breakdown of the components by subsystems and their subcomponents, i.e., their logical construction (e.g. in a hierarchical tree structure). The user may define various asset nodes down to the smallest aggregate level in the physical system, which exhibit periodic behavior of operation, independent of the periodicity of other nodes, except for temporal interface conditions. The user may also nominate the content and functional purpose of the periodicity defined by the nodes. The system content is thus defined as a hierarchical tree structure of "nodes", the top node of which is the entire system within the scope of the PSS, at intermediate levels there are asset or other physical content nodes, and at leaf levels there are I / O and variable nodes.

[0037] The system content is therefore defined as a hierarchical tree structure of "nodes", where the top node represents and captures the entire system within the PSS, at intermediate levels there are asset or other physical content nodes, and at the leaf level there are I / O and variable nodes.

[0038] Define sensors and actuators and their data sources - For each leaf node, the user can define sensors, actuators, and their data sources for information about them. PSS has the ability to model various actuators and sensors with placeholders for inputs, outputs, and state expressions for the actuators and sensors. PSS also has the ability to write simple state expressions for the various states that actuators and sensors can be in.

[0039] Data associated with leaf nodes provides information about their status (e.g., digital I / O, flags, variable values ​​(such as CNC system coordinates, measurements, etc.)). Data associated with leaf nodes are collectively referred to as Leaf Node Data ("LND"), and users have the ability to specify data sources such as physical addresses of inputs and outputs from industrial controllers, variables used in the controller, or sources of multi-valued variables such as axis numbers, or sensor value addresses to define LNDs. Users have the ability to define and use model libraries of common such actuators and sensors as binary (Boolean variables) or continuous variables using floating point / non-binary data. A specific instance of an LND with a time-stamped value is called a Leaf Node Value ("LNV"). Additionally, users have the ability to provide data to define external events (section

[0047] below, "EED") in addition to LNDs. This data can be any variable in the physical system accessible to the PSS. The PSS also has several predefined variables, including but not limited to times, dates, etc., that can be used to define external events (section

[0047] below).

[0040] Define Manually Derived States - Users also have the ability to write various LND Boolean expressions to create LND combinations. These manually entered state expressions are called Manually Derived States (MDS). Users can also define value ranges for multi-valued variables (such as servo axis positions), which quantizes the variables to a limited number of values.

[0041] The definition can be simplified by the use of various template-based actuators and sensors. Template-based actuators and sensors have defined inputs and outputs, as well as state expressions that use input and output variable placeholders. The PSS has the ability to add such template-based actuators and sensors when they are used in a physical system. This can allow the PSS to understand the “action” states of actuators, either through known templates or custom templates created for previously unknown actuators. These action states are further used to determine the dynamic behavior of the state. This can allow the PSS to understand the “action” states of actuators, either through known templates or custom templates created for previously unknown, undefined, or unidentified actuators. These action states are further used to determine the dynamic behavior of the state.

[0042] Additionally, the user may define an MDS for non-leaf nodes, where the non-leaf node is a parent node in the hierarchy, as a combination of the LNDs of its child nodes and other data points captured by the PSS from the physical system controllers described above.

[0043] Define Conditionally Binding Nodes - Various nodes can exhibit different behaviors with respect to each other. Various nodes may exhibit behaviors such as decoupling behavior with another node (e.g., two machines that work independently), conditional binding (two nodes are bound during an "interface" condition where the two nodes are working in conjunction with each other for some time, e.g., a machine and an automatic robotic loader), and binding (one node is completely dependent on another node, and therefore these nodes need to be treated as a combination of such nodes to allow their actions, e.g., various subsystems within a machine).

[0044] Thus, with respect to the first node and the second node, the nodes may operate in an isolated state, a conditionally coupled state, or a coupled state. Between the first node and the second node operating in the isolated condition, the first node and the second node operate as machines functioning independently. Between the first node and the second node operating in a conditionally coupled manner, the first node is coupled with the second node when an "interface" condition occurs where the first node and the second node work in conjunction with each other for some time, e.g., a machine and its automatic robotic loader. Between the first node and the second node operating in a coupled manner, the nodes are completely dependent on each other, and thus the node needs to be treated as a combination of the two nodes to enable their actions, e.g., various subsystems within the machine. For example, an interface between a first state of a leaf node and an additional state of a different leaf node may be defined as the first state occurring in response to a condition of the additional state of the different leaf node.

[0045] Top decoupled nodes (TDNs) are parent nodes to which they and all their children may be considered coupled. In some embodiments, top decoupled nodes may be either decoupled or partially coupled with other TDNs.

[0046] Define the existence of standard system operating modes - The user may also define "system modes" of operation for the physical system and the general LND associated with each system mode. Some modes that may be defined include, but are not limited to, automatic cyclic mode, semi-automatic mode, manual / teach / interactive mode, failure / non-operational mode, etc.

[0047] Define External Events - The user may also define external events, which are not part of the system model or part of the information available to the control system of the physical system, but which nevertheless affect or influence the behavior of the system. External events may allow the PSS to better analyze the behavior of the physical system.

[0048] The various user inputs described above may be entered directly into the PSS through user interfaces (manual inputs) / data connections to other systems and sensors.

[0049] Next, the PSS may perform a listening step (206), where the PSS derives system states and analyzes them. The PSS collects data to build a system behavior model and captures leaf node data. Data collection may be done online. The system behavior model and analysis may be done online or offline. The PSS collects data when the PSS is connected to the physical system. In online mode, the PSS may build a system behavior model and perform analysis simultaneously with data collection. In offline mode, the data logging subsystem of the PSS may be connected to the physical system at various times, and then the data is uploaded to the PSS for later model building and analysis.

[0050] Other types of data may be collected in a similar manner (e.g., manual entry, external system interfaces (e.g., customer shop floor and enterprise systems, etc.), and time-stamped data may be collected online or offline for the PSS to perform model building or analysis. In one example, various IIoT platforms may provide data to the PSS from manufacturing systems controlled by hardware and software from various manufacturers (e.g., but not limited to, Siemens-Mindsphere, GE-Predix, ABB-Ability, Fanuc-Field, Kuka-Connyun). In other examples, such platforms may not be used, but instead the data may be in the native data format of the machine controller (e.g., PLC through an OPC server). The PSS can work with data in any format that provides the PSS with a LND defined in the configuration. One example of a LND defined in the configuration may be in the form of a table of LNVs.

[0051] A typical large system has a large amount of fast and frequently changing input / output ("I / O") and in-memory data related to the physical system behavior. If states were defined using every set of I / O information available to track every change, the number of states would explode, making analysis computationally very heavy and increasingly difficult for users to interpret the results. For example, a typical engine assembly line might have 10,000 data points of information, even with 9,900 binary numbers and 100 floating point. Even if the floating point variables are quantized with 10 quanta at their limit, all possible combinations of all this data would be in excess of (2^9900*10^100), which means in excess of 10^3080 states, making modeling and analysis in finite time nearly impossible.

[0052] However, PSS exploits the observed phenomenon in physical systems that the majority of possible combinations are unlikely (most combinations of variable values, while theoretically possible, never occur). Even those that do occur can be significantly reduced in number by isolating the variables confined to a node, since fluctuations of information at an isolated node are a "don't care" condition about the state at that node.

[0053] Using this observed phenomenon, the following algorithm can be used to create the states. 1) Tabulate the LNDs on a common timeline over a reasonable period of time, giving a reasonable number of samples and allowing each of the states of the system to occur multiple times. 2) We only observe LNDs within a node, so that changes in LNV can uniquely signal the particular state the node can be in. This limits combinatorial explosion, both by eliminating states that never occur, as well as isolating LNV changes outside of this node that would be confused with additional states for the node. 3) the ability to simplify and validate leaf-node models using time-stamped raw data; a. A graphical display of the actual collected data and derived MDS for leaf nodes, as well as time intervals where the modeled MDS is not active, to allow the user to calibrate the model; b. Automatically splitting and correcting the definition of the MDSs when two MDSs become active at the same time due to inaccuracies in the manually entered models, and creating an additional state known as a Derived Intrinsic State ("DIS") so that only one state is active at a time. For multi-valued LNVs where multiple values ​​exponentially increase the number of states, the ability to define zones or bands for "quantization" of these variables to limit the number of states. This can be done by automated analysis (PSS suggests "stable" value ranges by statistical analysis) or interactively (PSS displays a graph of the values ​​in relation to other variables for the user to interpret and define the ranges of values ​​to quantize the states). 4) The ability to analyze the entire set of observed states, as well as derive the states of the parent nodes above the leaf nodes hierarchically, progressively upwards to the root node. a. Ability to define and evaluate manually defined states for parent nodes b. The ability to derive a "Derived Extrinsic State" (DES), which is a unique combination of the observed states of all the children of a parent. c. Ability to use the MDS and DES data for any node and derive the DIS for each node d. The ability to use the join condition to derive additional DES and DIS when the join condition is instantiated

[0054] In one example, implementing the above algorithm results in about 10,000 states, which leads to a very simplified model for analysis. After the states in each node are defined, the entire range of operation steps of the node is uniquely described by one of these states. Each state has the following properties: A state begins as a change of LNV from one unique combination to another unique combination ("transition start"), and then ends at another such unique combination ("transition end"). Since a node must always be in one and only one unique state, a transition end of one state must coincide (within one data sampling interval of the possible lag) with a transition start of one and only another state.

[0055] When a sufficient number of LNV data over a sufficient period of time are available, multiple instances of these conditions are available for analysis. The following analysis is then performed to classify the conditions for further analysis. 1) State time behavior type: based on the duration of each state (from start to finish) Fixed State: A state that exhibits a fixed time behavior within a fairly tight statistical tolerance band and ignores outliers. This is typically the case for Boolean actuators with a fixed task (e.g. clamp open / clamp close / part grip / etc.). Bound State: A state that is marginal within a particular interval of timing and exhibits this behavior within a tight statistical band, ignoring outliers. This is typically the case for actions that have variable progress or speed of action during the process. c. Variable State: A state that exhibits large variations in timing without specific limits and statistical bands. This is generally the case when the state depends on some unstable or uncontrolled physical behavior (which is an undesirable characteristic for a system and therefore the first step to improve system stability) or is a wait-type state, where the end of the wait-type state depends on another state that is either outside this node (e.g., this actuator cannot initiate an action until another device belonging to another node has cleared) or is external to the system (such as waiting for an operator to load a part).

[0056] State dynamics Action State - if there is any action taking place. Since a typical manufacturing system will have some actions taking place in order to produce, the dynamic state correlates to the potential productive behavior of the system. b. Static states - when no action is taking place but may still be needed due to enabling conditions such as interfaces between nodes, availability of prerequisites for operation, etc. When states do not depend on other nodes or external events, they transition from one action state to another without static states in between, but when they do depend, they must wait for the outer state transition. Static states usually represent unproductive behavior.

[0057] The PSS automatically performs a time behavior analysis ("Auto Analysis") and presents these findings of the classification of these states to the user, where the user can verify the accuracy of the classification to override the classification. The user may override the classification when the user's understanding of the expected system behavior deviates from the behavior observed by the PSS. For example, a "gripper close" state took 2-4 seconds in observations with tight statistical limits, and therefore, the PSS classified it as a marginal state. The user understands that this is caused by dirt on the finger guides, which sometimes makes the fingers sticky, and what should normally take 2 seconds can take up to 4 seconds, which by chance has been limited to 4 seconds. In this instance, the user may choose to override the state type definition to a fixed state.

[0058] The PSS performs the action behavior type analysis automatically (without user prompting or input). In the case of the mixed state analysis described above, when such mixed states and their interfacing nodes are identified by the user, the PSS also performs the analysis automatically to identify the interfacing states.

[0059] 3 shows a block diagram 300 illustrating information that may be used to initially configure a PSS. Block diagram 300 shows only a few components expanded for purposes of illustration. Blocks 302 and 304 contain identified leaf node data that may be identified for components in a leaf node.

[0060] To illustrate the listening function (block 204 in FIG. 2), an example node 306 "Dowel Press" in FIG. 3 will be described. During the listening function, the observed conditions in this case may be as follows: 1) The palette exists 2) Pallets are moved / not present 3) Ram is on top 4) The ram is moving downwards 5) Ram is below 6) The ram is moving up

[0061] After recognizing the states during the listening function, the PSS may proceed to the learning function (block 212 in FIG. 2). The PSS now knows what state the system is in at any given time, and therefore possesses the higher level capability of successively solving state equations to know the sequences of states that will be encountered. These sequences have the following properties: 1) Different nodes have different states at any given time, and most of the time, and these sequences occur asynchronously (without any timing relationship) with each other. 2) Interactive actions between nodes may result in certain states to be synchronized for a certain amount of time (state in one node waiting for another state from another node to finish), after which the sequence can once again continue in an asynchronous fashion. 3) A sequence of specific states occurring repeatedly and one after the other in a specific order is a common property of manufacturing operations. 4) The desired (productive) operation of the system proceeds through a finite number of such sequences for each of the nodes. 5) Repetitive operations require "cyclical" behavior, i.e., a sequence of states that repeat one after the other. Thus, any of these states can be taken as the "home" state, and a cycle can be viewed as a sequence from home state to home state. 6) When a node has multiple cycles, the cycles have at least one common state that can serve as a home state for all cycles. However, PSS can predict which states are candidates for home states and users can define separate home conditions for each cycle, which results in multiple possible home conditions for a leaf node or parent node. 7) The entire FSM of a node can then be visualized as a set of connected cycles in the home state. 8) The entire FSM of the system can be visualized as the FSMs for each node with the interfaces at specific states between those nodes. 9) There are certain exceptions to the periodic system behavior expected in a manufacturing system (defined by the "system modes"). For example, manual mode and failure modes are non-periodic operations.

[0062] Based on the above described behavior of the system of interest, the PSS works with the following algorithm to derive the complete system period and the complete FSM. 1) Continuously generate a unique state at every time sample for every node using a recursive solver. Various embodiments can include continuously monitoring state changes. Additional embodiments can include sampling at different time intervals and comparing the states. 2) Filter out data for conditions that occur in non-periodic system operating modes, such as automatic and manual modes for model building purposes, although the data is always aggregated. 3) Identify repetitive sequences from state occurrence orders in periodic system modes. 4) Automatically analyze potential home states for periodic definition and add it to the configuration information when confirmed by the user or selected differently by the user. 5) Construct a "Finite State Machine" (FSM) model of each of the nodes and all of the periods experienced by the nodes. 6) Construct the FSM of the entire system by connecting the node FSMs through the interfaces between states. 7) Observe data sources and automatically derive Derived Extrinsic State (“DES”) and Derived Intrinsic State (“DIS”) that may not have been observed during the listening phase (block 206 in FIG. 2 ) and create additional FSM models, if necessary. 8) Observe the join condition, if true evaluate the DES, DIS and MDS of the join node. 9) Analyze multiple instances of a cycle to identify their time behavior and statistics. 10) Analyze unmodeled candidates for cycle variability. For example, unmodeled candidates may include different "operational modes" such as running different setups for part variants, partial line operations, etc. The PSS may provide probabilities of occurrence of cycles as well as possible operating modes and update the user verified operating mode configuration. 11) Analyze cycle variability beyond the operating mode, e.g., with respect to correlation with external events, to enable reporting recommendations to the user to create a stable cycle behavior. For example, occurrence of manual modes / failures in the second shift more than in the first shift, calibration cycle frequency for input material from one vendor more than for another vendor, etc. 12) Sequence similarity analysis based on heuristics and machine learning to minimize the number of cycle types for further analysis. 13) Analysis of interactions between assets: An interaction in which one asset waits for another asset to reach a requisite state. 14) Analysis of the interface between the assets, both assets are working together and therefore each state is affected by both assets together during this interface. 15) Identify the asset's independent period, e.g., the sequence of operations required for the asset to work. An independent period may be defined herein as a "self" or "own" period (a sequence of operations required for an asset to work without waiting for other assets, but including interface actions as described above), and then calculate the self period time (the time required to complete its own work) to identify critical and near critical assets and their critical period (periods that have more time impact). An asset's independent period does not involve waiting for other assets, but may include interface actions as described above. After identifying the asset's independent period, calculate the independent period time (the time required to complete the independent work) to identify critical and near critical assets and their critical period (e.g., critical period is defined as the period with more time impact).

[0063] After the PSS defines the period, an additional configuration step may provide the PSS with input regarding system performance expectations and where this information is to be obtained (e.g., which transitions of which states represent events that are indicative of expected performance).

[0064] Additionally, the PSS has the ability to define "good events," which are also in the form of the exit of a state or logical condition of the above information that is a desired performance parameter, and "bad events," which are the entry of a state or other logical combination that represents an event associated with adverse performance. In some instances, a good event results in the physical system meeting a performance parameter. In additional instances, a bad event results in the physical system failing to meet a performance parameter. Additionally, the PSS has the ability to define other "analysis events," which are the entry or exit from a state, that can be defined by the user for specific, focused analysis.

[0065] Additionally, the PSS has the ability to add information that can be converted into performance measures (e.g., performance parameters) for further analysis, such as the throughput in the system, the amount of parts produced, quality measurements, costs incurred, human labor used, energy or consumables consumed, number of parts added to WIP (work in progress), etc., for which system performance needs to be optimized. An exemplary FSM model with multiple nodes and periods is shown in FIG.

[0066] Once the sequences and periods are observed from the FSM, the PSS matches the system behavior to the most consistent and stable repeatable observations of these sequences (block 210 in FIG. 2). Even if the behavior is inconsistent, it attempts to define higher level modal behavior when it exists, or guides the user by highlighting the inconsistencies when they result from undesirable instabilities (such as unreliability, failures, and damage). The following steps and analysis may be performed during the stabilization function: 1) State stability 2) Cycle stability 3) Stability of cycle frequency within each mode 4) Using statistics to look for consistent behavior of the system and analyzing the inconsistencies until they are attributed and corrected to a consistent model of behavior: a) State variability classified into the following types and modeled accordingly: i) Inconsistent Behavior of the System - A fundamental problem with the system, due to unreliability of mechanical, electrical or software control or operation, which is identified in a step-by-step manner and reported to the user for correction. ii) States of the system that depend on interdependencies to other states - either internal or external to the system being modeled, and therefore based on these events the states "wait" for changing timing and synchronize their timing. These are identified as interfaces with identified interdependencies. iii) Critical Duration Conditions--Due to the design of the system itself, it is expected that there will be some variations in the timing limits, and such conditions are classified with their timing ranges and their statistics. b) Cyclical variability classified into the following types and modeled accordingly: i) Different timing in recurring cycles - Timing variability in cycles is due to variations in the underlying state timing, but their impact on system performance with respect to "critical" cycles that determine throughput or other performance events ("good events") is analyzed to give the user priority over control over states. ii) Abnormal sequences - do not follow a period consistent with previously modeled periods. These can either be verified as anomalies and therefore reported to the user for stability improving actions, or the special conditions leading to this special behavior can be modeled in the system into the "modal" information. iii) Expected periods, but relative instability probabilities - these are reported to the user as potential stability improvements or derivation of further "modal" information for modeling new operating modes (block 214 in FIG. 2). c) Variability of the mode i) Identify the performance of various modes in terms of system performance measures such as throughput, quality parts, cost, etc. ii) Identify the relative stability of the modes' frequencies, their variations and their impact on the system's performance. 5) Through the above steps, achieving a consistent model of the system that can be used as a benchmark of system behavior, its performance, and the various interactions that affect them. 6) When the physical system behavior is improved or optimized to change the system behavior model, the above steps are taken incrementally to enable deriving and modeling the modified system behavior model, and to track the latest system behavior model as well as the changes to the previous system behavior model with time ordering and traceability (who did what and when the system behavior model should be changed).

[0067] After the above process, PSS creates a human understandable model (block 212 in FIG. 2), where the resulting deliverables may include a real-time model of the physical system, a user interface, and documentation (block 214 in FIG. 2). That is, after performing the above process, PSS creates a complete system behavior model of the physical system in its complete hierarchy and modular behavior. The system model behavior enhances the understanding of the physical system. Useful deliverables of PSS at this point include a system behavior model that is documented graphically as well as in text with a complete functional hierarchy including all sensors and actuators. The behavioral model of the physical system is captured in the form of flow charts, cycle charts, and timing diagrams at three levels, namely, modes, cycles, and states.

[0068] The model is integral to the system's user interface for the PSS, allowing the user to "drill down" (move down through the hierarchy) or "roll up" (move up through the hierarchy) to achieve a particular level of detail to aid the user's understanding. The model can also be "panned" (forward or backward) or "zoomed" (in or out) in time to visualize the system's temporal behavior at a desired resolution.

[0069] The PSS may also be used to create specifications and documentation of performance and factors that affect performance, including cycle times, throughput, quality, cost, and consumables. The documentation may also include documentation of the causation of various sources of variability and how to improve them.

[0070] Additional deliverables of PSS include the creation of digital twin models that can be used in simulating and studying model changes and effects (such as what-if studies, verification and validation for new model introductions, etc.) and analyzing and debugging information to debug and diagnose problems in control system software such as PLC code.

[0071] Additionally, the PSS may provide additional deliverables, such as providing recommendations to improve performance (blocks 218 and 220 in FIG. 2). Using the system behavior model described above, the PSS identifies opportunities for improvement (e.g., hidden capacity of the system) and reports them to the user to further improve the system's performance through the following methods: 1) Create "minimum" time requirements for periods through analysis of state types and their behavior to identify the fastest possible period, where each state can be optimized to its minimum possible timing. 2) Identify "critical" periods (periods with the highest minimum timing) and verify causality using line throughput. 3) Identify opportunities in each of the states in the critical period for previously encountered evidence of optimization candidates and report them to the user for optimization. 4) Identifying wait states and their causes (such as blocked and starved states due to interdependencies with other cycles, waiting for external events, etc.) and reporting them to the user for optimization. 5) Analysis of external events and their correlations with performance to give the user actionable information regarding the improvements in external influences required to improve or maintain performance. 6) Correlation analysis of internal and external events and their effect on stability, throughput and other performance measures on the system to inform the user which cases and conditions appear to cause a positive effect on system performance. 7) Conduct sensitivity analysis through simulations for state timing, period probability and mode changes to identify the most likely changes in the model for a particular performance improvement. 8) Identify critical assets in different operating modes. 9) Identify critical cycles for critical assets. 10) Optimizing the efficiency of critical cycles by identifying conditions that cause assets to wait for other assets, and optimizing the interaction and synchronization between cycles so that critical assets are never allowed to wait for other assets. 11) Optimizing the self-cycle time of a critical cycle by identifying non-action states within the self-cycle due to waits within the asset's own actions or waits during interface actions. 12) Optimize the cycle time of critical cycles by identifying variances in action timing and identifying opportunities to make action timing the smallest observed timing. 13) Optimize the cycle time of the critical cycle by identifying the most sensitive actions that allow for a reduction in cycle time. 14) Identify the loss of efficiency of critical assets due to inconsistent interactions due to loss of synchronization with other assets or their synchronization with a chain of interlinked assets. Identify the resulting synchronization requirements for no interaction loss for critical assets. 15) Identify sensitivity to frequency and duration of loss of synchronization caused by asset outages, and therefore analyze buffer requirements for isolation of these effects. 16) Identify the efficiency loss due to interactions of non-critical assets that result in making them critical, and similarly improve their interaction efficiency as if they were critical assets.

[0072] In various instances, the system behavior model may be used to detect problems and predict future problems to enable corrections, preventative actions, and maintenance of the physical system to keep the physical system operating optimally. The PSS may perform an analysis of the system behavior to look for hazards and failure modes. The analysis may include, in an online mode, monitoring conditions that lead to deviations from the optimal model and patterns that lead to non-optimal behavior. By monitoring conditions, future deviations may be detected earlier, when undesirable patterns begin to emerge, and before actual deviations from the model.

[0073] The PSS may also, in online mode, monitor conditions to detect changes in the physical model that are large enough to warrant redefining the system behavior model and assess whether the changes are good or bad. If the changes are bad, the PSS may implement actions to revert to the previous system behavior model.

[0074] The PSS may also perform correlation analysis on internal and external events and their effects on stability, throughput, and other performance measures on the system, and report to the user which cases and conditions appear to cause adverse effects on system performance.

[0075] The basis of the various reports made to the user for improvement are called "recommendations" and the "recommendations" are based on algorithms and heuristics based on parameters like tolerances and weightages for various model and deviation attributes. Based on feedback from the user on whether these recommendations were found to be correct or useful, these parameters resulting in the recommendations are improved by using machine learning techniques to improve the recommendations and learning. Using the information aggregated from the above analysis, stability improvement step, optimization step, recommendation weights and tolerances, best practices and reference model specifications are created for the particular high level process.

[0076] FIG. 5 illustrates a detailed diagram of a computing device 500 that may represent a computing device used to implement various techniques described herein, according to some embodiments. For example, the detailed diagram illustrates various components that may be included in a computing device that implements the functionality of the PSS as described above. As illustrated in FIG. 5, the computing device 500 may include a processor 502 that represents a microprocessor or controller for controlling the overall operation of the computing device 500. The computing device 500 may also include a user input device 508 that allows a user of the computing device 500 to interact with the computing device 500. For example, the user input device 508 may take various forms, such as buttons, keypads, dials, touch screens, audio input interfaces, visual / image capture input interfaces, input in the form of sensor data, etc. Furthermore, the computing device 500 may include a display 510 that may be controlled by the processor 502 (e.g., via a graphics component) to display information to a user. A data bus 516 may enable data transfer between at least the storage device 540, the processor 502, and the controller 513. The controller 513 may be used to interface with and control different devices through a device control bus 514. The computing device 500 may also include a network / bus interface 511 that couples to a data link 512. In the case of a wireless connection, the network / bus interface 511 may include a wireless transceiver.

[0077] As mentioned above, the computing device 500 also includes a storage device 540, which may comprise a single disk or a collection of disks (e.g., a hard drive). In some embodiments, the storage device 540 may include flash memory, semiconductor (solid state) memory, or the like. The computing device 500 may also include a random access memory (RAM) 520 and a read only memory (ROM) 522. The ROM 522 as well as the storage device 540 may store programs, utilities, or processes to be executed in a non-volatile manner. The RAM 520 may provide volatile data storage and stores instructions related to the operation of applications executing on the computing device 500.

[0078] Data collection from the controller or various devices from the manufacturing system or other plant and enterprise systems such as SCADA or ERP may be performed online (while the PSS software is running on the controller) or offline (data collection is being done by some other software system for later import into the PSS) through network interface(s) 511 and / or data link(s) 512. For some inputs where the data is not available in any of the digitally interfaced systems, the data may be entered manually through input device 508.

[0079] 6 illustrates an example system architecture 600, according to some embodiments. In particular, the system architecture includes a PSS system 650 and a physical production system 660. The physical production system 660 includes shop floor equipment 603 that is controlled by an industrial controller 604 and may be interconnected over a control network(s) 608. A PSS server 618 includes a computing system as described in (FIG. 5) and connects through a PSS network 610 to data loggers and edge devices 616, which in turn connect to the industrial controller 604 or the shop floor equipment 603 over a network or direct connection.

[0080] The PSS server 618 can interface with the shop floor equipment through the control network, as well as with an independent notification system 615 for providing information, alarms, and direct intervention when needed to the shop floor system (shop floor equipment 603).

[0081] The PSS server 618 is then connected through networks, web, and cloud to various data storage, processing, and user interface systems, on-premise, on cloud, and mobile. In various embodiments, the PSS terminal 620 is the same as the display 510 (FIG. 5). In some instances, the PSS terminal 620 provides a user interface that can be accessed on a mobile user device (e.g., smartphone, tablet). In some instances, the PSS terminal 620 renders a user interface accessed through the cloud for display. In some instances, the PSS terminal 620 renders a user interface for display on a computing device located at the site where the physical system is located.

[0082] Various aspects, embodiments, implementations or features of the described embodiments may be used separately or in any combination. Various aspects of the described embodiments may be implemented by software, hardware or a combination of hardware and software. The described embodiments may also be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data which can then be read by a computer system. Examples of computer readable media include read-only memory, random access memory, CD-ROMs, DVDs, magnetic tapes, hard disk drives, solid state drives, and optical data storage devices. The computer readable medium may also be distributed over network-coupled computer systems such that the computer readable code is stored and executed in a distributed fashion.

[0083] In accordance with the above disclosure, the example systems and methods listed in the following paragraphs are specifically contemplated and are intended as a non-limiting set of examples.

[0084] Clause 1. A method for constructing a model of a physical system, comprising: receiving a hierarchical tree structure representing a physical system, the hierarchical tree structure defining system contents at various levels of the structure, including nodes associated with hardware components or data sources contained in the physical system; collecting data associated with the hardware components, the data being associated with respective time stamps, the data including observational data associated with a physical system; deriving a node state for the node based on the data, the node state including a first node state and a second node state, the first node state defining a first state of the node and the second node state defining a second state of the node, the node being in only one node state at a time; constructing a finite state machine (FSM) model, the FSM model defining a sequence of states associated with the nodes based at least in part on their respective time stamps, and further, the FSM model being a portion of an overall finite state machine of the physical system; Creating a model of a physical system based on a global finite state machine; A method comprising:

[0085] Clause 2. Building an FSM model of a node appending first non-state information to a first state of the node, the first non-state information defining a set of data including measurements, system properties, and external variables, each datum of the set of data being associated with a respective time stamp; appending second non-state information to a second state of the node, the second non-state information defining a second set of data including measurements, system properties, and external variables, each datum of the second set being associated with a respective time stamp; 2. The method of claim 1, further comprising:

[0086] Article 3. classifying each of a plurality of node states into classifications based on a duration of each node state or an action occurring during each node state, the classifications including at least one selected from the group consisting of a fixed state, a limit state, a changing state, a dynamic state, or a static state; 3. The method of claim 1 or 2, further comprising:

[0087] Clause 4. The method of any one of clauses 1 to 3, wherein constructing an FSM model of the node further comprises filtering out node states that occur in aperiodic system operating modes.

[0088] Clause 5. Creating a model of a physical system based on a global finite state machine Constructing an interaction model for nodes of a system, wherein a first one of the nodes remains in an interaction state and the first node transitions out of the interaction state in response to a second one of the nodes transitioning out of a particular state. 5. The method of any one of clauses 1 to 4, further comprising:

[0089] Clause 6. The method of any one of clauses 1 to 5, wherein receiving the hierarchical tree structure further comprises manual input from a user.

[0090] Clause 7. The method of any one of clauses 1 to 6, wherein receiving the hierarchical tree structure further comprises deriving the hierarchical tree structure from observational data associated with the physical system.

[0091] Article 8. Creating models of physical systems Defining an event as a good event, where a good event results in satisfying a performance parameter of a physical system; Defining an event as a faulty event, the faulty event causing a physical system to fail to meet a performance parameter of the physical system; 8. The method of any one of clauses 1 to 7, further comprising:

[0092] Article 9. Constructing a model of a physical system collecting additional data associated with a plurality of nodes, each datum of the additional data being associated with a respective time stamp, the additional data including additional observational data associated with a physical system; Deriving from the additional data a finite state for each of a plurality of nodes, the plurality of nodes including nodes that are leaf nodes and nodes that are higher level nodes, each higher level node representing a unique combination of states of nodes below the higher level node. Further comprising: Building the FSM model includes defining a sequence of states associated with a plurality of nodes. 10. The method according to any one of clauses 1 to 8.

[0093] Article 10. identifying a node that functions outside of defined conditions as an outlier node, the outlier node functioning in a manner according to at least one selected from the group including: a node that takes the most time to implement a no-interaction state, an asset associated with the node that is dependent on another asset, and an asset associated with the node that is unavailable due to a failure; identifying states of the outlier nodes, including static states and wait states; removing static and wait states associated with outlier nodes; identifying a delay associated with an asset when the asset waits for another asset; Providing recommendations to synchronize operations between the asset and another asset; Optimizing the performance of a model of a physical system by 10. The method of any one of clauses 1 to 9, further comprising:

[0094] Clause 11. A Productivity Synthesis System (PSS) implemented at least in part on a computing device, the computing device comprising: A processor; a non-transitory computer readable medium storing instructions; the instructions, when executed by a processor, cause the processor to: receiving a hierarchical tree structure representing a physical system, the hierarchical tree structure defining system contents at various levels of the structure, including nodes associated with hardware components or data sources contained in the physical system; collecting data associated with the hardware components, the data being associated with respective time stamps, the data including observational data associated with a physical system; deriving a node state for the node based on the data, the node state including a first node state and a second node state, the first node state defining a first state of the node and the second node state defining a second state of the node, the node being in only one node state at a time; constructing a finite state machine (FSM) model of the node, the FSM model defining a sequence of states associated with the node based at least in part on respective time stamps, and further, the FSM model being a portion of an overall finite state machine of the physical system; Creating a model of a physical system based on a global finite state machine; To carry out Productivity Synthesis System (PSS).

[0095] Clause 12. When the non-transitory computer-readable medium causes a processor to construct a finite state machine model, the non-transitory computer-readable medium storing instructions causes the processor to: appending first non-state information to a first state of the node, the first non-state information defining a set of data including measurements, system properties, and external variables, each datum of the set of data being associated with a respective time stamp; appending second non-state information to a second state of the node, the second non-state information defining a second set of data including measurements, system properties, and external variables, each datum of the second set being associated with a respective time stamp; The PSS as set out in clause 11 further:

[0096] Clause 13. The PSS of clause 11 or 12, wherein the non-transitory computer-readable medium stores instructions that further cause the processor to classify each of a plurality of node states into classifications based on a duration of the respective node state or an action occurring during the respective node state, the classifications including at least one selected from the group consisting of a fixed state, a marginal state, a changing state, a dynamic state, or a static state.

[0097] Clause 14. When the non-transitory computer-readable medium causes a processor to construct a model of a physical system, the non-transitory computer-readable medium may cause the processor to: collecting additional data associated with a plurality of nodes, each datum of the additional data being associated with a respective time stamp, the additional data including additional observational data associated with a physical system; Deriving from the additional data a finite state for each of a plurality of nodes, the plurality of nodes including nodes that are leaf nodes and nodes that are higher level nodes, each higher level node representing a unique combination of states of nodes below the higher level node. storing an instruction to further perform the steps; Building the FSM model includes defining a sequence of states associated with a plurality of nodes. PSS as defined in any one of clauses 11 to 13.

[0098] Clause 15. A non-transitory computer-readable medium, comprising: identifying a node that functions outside of defined conditions as an outlier node, the outlier node functioning in a manner according to at least one selected from the group including: a node that takes the most time to implement a no-interaction state, an asset associated with the node that is dependent on another asset, and an asset associated with the node that is unavailable due to a failure; identifying states of the outlier nodes, including static states and wait states; removing static and wait states associated with outlier nodes; identifying a delay associated with an asset when the asset waits for another asset; Providing recommendations to synchronize operations between the asset and another asset; The PSS as described in clause 14 further stores instructions to:

[0099] Clause 16. A non-transitory computer-readable medium, comprising: analyzing a plurality of node states of a node, the plurality of node states occurring during a period of time; Identifying periodic behavior of a plurality of node states; and then defining a period of the node based on the identified periodic behavior; The PSS according to clause 15, further comprising:

[0100] Clause 17. When executed by a processor of a computer system, the computer system receiving a hierarchical tree structure representing a physical system, the hierarchical tree structure defining system contents at various levels of the structure, including nodes associated with hardware components or data sources contained in the physical system; collecting data associated with the hardware components, the data being associated with a time stamp, the data including observational data associated with a physical system; deriving a node state for the node based on the data, the node state including a first node state and a second node state, the first node state defining a first state of the node and the second node state defining a second state of the node, the node being in only one node state at a time; constructing a finite state machine (FSM) model of the node, the FSM model defining a sequence of states associated with the node based at least in part on time stamps, and further, the FSM model being a portion of an overall finite state machine of the physical system; Creating a model of the physical system based on a global finite state machine and interconnections; A computer-readable medium storing instructions to cause a

[0101] Clause 18. When the computer-readable medium constructs the FSM model, the computer-readable medium may transmit to a computer system: appending first non-state information to a first state of the node, the first non-state information defining a set of data including measurements, system properties, and external variables, each datum of the set of data being associated with a respective time stamp; appending second non-state information to a second state of the node, the second non-state information defining a second set of data including measurements, system properties, and external variables, each datum of the second set being associated with a respective time stamp; 20. The computer readable medium of claim 17, further storing instructions to:

[0102] Clause 19. When the computer-readable medium causes a computer system to construct a model of a physical system, the computer-readable medium causes the computer system to: collecting additional data associated with a plurality of nodes, each datum of the additional data being associated with a respective time stamp, the additional data including additional observational data associated with a physical system; Deriving from the additional data a finite state for each of a plurality of nodes, the plurality of nodes including nodes that are leaf nodes and nodes that are higher level nodes, each higher level node representing a unique combination of states of nodes below the higher level node. storing an instruction to further perform the steps; Building the FSM model includes defining a sequence of states associated with a plurality of nodes. 19. A computer readable medium according to clause 17 or 18.

[0103] Clause 20. A computer-readable medium is provided to a computer system, Creating a digital twin of a physical system based on a model of the physical system 20. The computer readable medium of claim 19, further storing instructions to:

[0104] The above description, for purposes of explanation, used specific nomenclature to provide a thorough understanding of the described embodiments. However, it will be apparent to one skilled in the art that specific details are not required to practice the described embodiments. Thus, the above descriptions of specific embodiments are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the described embodiments to the precise forms disclosed. It will be apparent to one skilled in the art that many modifications and variations are possible in light of the above teachings.

[0105] The above description is intended to illustrate the principles and various embodiments of the present invention. Numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. For example, building a model of a system for the production of one-off parts, for example for prototyping or R&D purposes for the creation of reference models for studies for process or product improvement, or building a model from a manual system without a controller to capture human actions through human input or actions, or building a model from recorded data such as videos or data series to import data through an interface. Various limited implementations of PSS may also be possible examples, for example collecting this data without time information that is only for modeling the sequencing of actions, without duration analysis as may be required to analyze the effect on the quality of subsequent different sequences.

[0106] It is intended that the following claims be interpreted to embrace all such variations and modifications.

Claims

1. 1. A method for constructing a model of a physical system, comprising: receiving a hierarchical tree structure representing the physical system, the hierarchical tree structure defining system content at various levels of the structure including nodes associated with hardware components or data sources contained in the physical system, the nodes being one of a top node representing the physical system, intermediate nodes representing assets of the physical system, and leaf nodes representing inputs / outputs of the assets; collecting data associated with the hardware components, the data being associated with respective time stamps, the data including observational data associated with the physical system; deriving a node state for the node based on the data, the node state including a first node state and a second node state, the first node state defining a first state of the node and the second node state defining a second state of the node, the node being in only one node state at a time, and the node transitioning from the first node state to the second node state when the data associated with the hardware components changes to a unique combination that defines the second node state; constructing a finite state machine (FSM) model based on the hierarchical tree structure, the FSM model defining a sequence of states associated with the nodes based at least in part on the respective time stamps, and further, the FSM model being a part of an overall finite state machine of the physical system; creating the model of the physical system based on the global finite state machine; A method comprising:

2. Constructing the FSM model of the node includes: adding first non-state information to the first state of the node, the first non-state information defining a set of data including measurements, system properties, and external variables, each datum of the set of data being associated with a respective time stamp; appending second non-state information to the second state of the node, the second non-state information defining a second set of data including measurements, system properties, and external variables, each datum in the second set being associated with a respective time stamp; The method of claim 1 further comprising:

3. classifying each of a plurality of node states based on a duration of each node state or an action occurring during said each node state, said classification including at least one selected from the group consisting of a fixed state, a limit state, a changing state, a dynamic state, or a static state. The method of claim 1 further comprising:

4. The method of claim 1 , wherein constructing the FSM model of the node further comprises filtering out node states that occur in aperiodic system operating modes.

5. Creating the model of the physical system based on the global finite state machine includes: building a dialogue model for nodes of the system, wherein a first one of the nodes remains in a dialogue state and the first node transitions out of the dialogue state in response to a second one of the nodes transitioning out of a particular state; The method of claim 1 further comprising:

6. The method of claim 1 , wherein receiving the hierarchical tree structure further comprises manual input from a user.

7. The method of claim 1 , wherein receiving a hierarchical tree structure further comprises deriving the hierarchical tree structure from the observational data associated with the physical system.

8. Creating the model of the physical system comprises: defining an event as a good event, the good event resulting in satisfying a performance parameter of the physical system; Defining an event as a faulty event, the faulty event causing the physical system to fail to meet a performance parameter of the physical system; The method of claim 1 further comprising:

9. Constructing the model of the physical system comprises: collecting additional data associated with a plurality of nodes, each datum of the additional data being associated with a respective time stamp, the additional data including additional observational data associated with the physical system; deriving from the additional data a finite state for each of the plurality of nodes, the plurality of nodes including nodes that are leaf nodes and nodes that are higher level nodes, each higher level node representing a unique combination of states of nodes below the higher level node; Further comprising: constructing the FSM model includes defining a sequence of states associated with the plurality of nodes. The method of claim 1.

10. identifying a node that functions outside of defined conditions as an outlier node, the outlier node functioning in a manner according to at least one selected from the group consisting of: the node taking the most time to implement a no-interaction state, an asset associated with the node being dependent on another asset, and an asset associated with the node being unavailable due to a failure; identifying a state of the outlier node, including a static state and a wait state; removing the static states and the wait states associated with the outlier nodes; identifying a delay associated with the asset when the asset waits for another asset; providing a recommendation to synchronize operations between the asset and the other asset; optimizing the performance of the model of the physical system by The method of claim 9 further comprising:

11. A productivity synthesis system (PSS) implemented at least in part on a computing device, said computing device comprising: A processor; a non-transitory computer readable medium storing instructions; the instructions, when executed by the processor, cause the processor to: receiving a hierarchical tree structure representing a physical system, the hierarchical tree structure defining system content at various levels of the structure including nodes associated with hardware components or data sources contained in the physical system, the nodes being one of a top node representing the physical system, intermediate nodes representing assets of the physical system, and leaf nodes representing inputs / outputs of the assets; collecting data associated with the hardware components, the data being associated with respective time stamps, the data including observational data associated with the physical system; deriving a node state for the node based on the data, the node state including a first node state and a second node state, the first node state defining a first state of the node and the second node state defining a second state of the node, the node being in only one node state at a time, and the node transitioning from the first node state to the second node state when the data associated with the hardware components changes to a unique combination that defines the second node state; constructing a finite state machine (FSM) model of the nodes based on the hierarchical tree structure, the FSM model defining a sequence of states associated with the nodes based at least in part on the respective time stamps, and further, the FSM model being part of an overall finite state machine of the physical system; creating a model of the physical system based on the global finite state machine; To carry out Productivity Synthesis System (PSS).

12. When the non-transitory computer readable medium causes the processor to construct a finite state machine model, the non-transitory computer readable medium storing instructions may cause the processor to: adding first non-state information to the first state of the node, the first non-state information defining a set of data including measurements, system properties, and external variables, each datum of the set of data being associated with a respective time stamp; adding second non-state information to the second state of the node, the second non-state information defining a second set of data including measurements, system properties, and external variables, each datum in the second set being associated with a respective time stamp; The PSS of claim 11 , further comprising:

13. 12. The PSS of claim 11, wherein the non-transitory computer-readable medium stores instructions that further cause the processor to classify each of a plurality of node states into classifications based on a duration of the respective node state or an action occurring during the respective node state, the classifications including at least one selected from the group consisting of a fixed state, a marginal state, a changing state, a dynamic state, or a static state.

14. When the non-transitory computer readable medium causes the processor to construct the model of the physical system, the non-transitory computer readable medium may cause the processor to: collecting additional data associated with a plurality of nodes, each datum of the additional data being associated with a respective time stamp, the additional data including additional observational data associated with the physical system; deriving from the additional data a finite state for each of the plurality of nodes, the plurality of nodes including nodes that are leaf nodes and nodes that are higher level nodes, each higher level node representing a unique combination of states of nodes below the higher level node; storing an instruction to further perform the steps; constructing the FSM model includes defining a sequence of states associated with the plurality of nodes.

12. The PSS of claim 11.

15. The non-transitory computer readable medium may include a processor that: identifying a node that functions outside of defined conditions as an outlier node, the outlier node functioning in a manner according to at least one selected from the group consisting of: the node taking the most time to implement a no-interaction state, an asset associated with the node being dependent on another asset, and an asset associated with the node being unavailable due to a failure; identifying a state of the outlier node, including a static state and a wait state; removing the static states and the wait states associated with the outlier nodes; identifying a delay associated with the asset when the asset waits for another asset; providing a recommendation to synchronize operations between the asset and the other asset; 15. The PSS of claim 14, further comprising instructions storing instructions to:

16. The non-transitory computer readable medium may include a processor that: analyzing a plurality of node states of the node, the plurality of node states occurring during a period of time; identifying periodic behavior of the plurality of node states; and defining a periodicity of the node based on the identified periodic behavior; 20. The PSS of claim 15, further comprising instructions storing instructions to:

17. When executed by a processor of a computer system, the computer system is receiving a hierarchical tree structure representing a physical system, the hierarchical tree structure defining system content at various levels of the structure including nodes associated with hardware components or data sources contained in the physical system, the nodes being one of a top node representing the physical system, intermediate nodes representing assets of the physical system, and leaf nodes representing inputs / outputs of the assets; collecting data associated with the hardware components, the data being associated with a time stamp, the data including observational data associated with the physical system; deriving a node state for the node based on the data, the node state including a first node state and a second node state, the first node state defining a first state of the node and the second node state defining a second state of the node, the node being in only one node state at a time, and the node transitioning from the first node state to the second node state when the data associated with the hardware components changes to a unique combination that defines the second node state; constructing a finite state machine (FSM) model of the nodes based on the hierarchical tree structure, the FSM model defining a sequence of states associated with the nodes based at least in part on the time stamps, and further, the FSM model being part of an overall finite state machine of the physical system; creating a model of the physical system based on the overall finite state machine and the interconnections; A computer-readable medium storing instructions to cause a

18. When the computer readable medium constructs the FSM model, the computer readable medium may provide to the computer system: adding first non-state information to the first state of the node, the first non-state information defining a set of data including measurements, system properties, and external variables, each datum of the set of data being associated with a respective time stamp; adding second non-state information to the second state of the node, the second non-state information defining a second set of data including measurements, system properties, and external variables, each datum in the second set being associated with a respective time stamp; 20. The computer readable medium of claim 17 storing instructions further comprising:

19. When the computer readable medium causes the computer system to construct the model of the physical system, the computer readable medium causes the computer system to: collecting additional data associated with a plurality of nodes, each datum of the additional data being associated with a respective time stamp, the additional data including additional observational data associated with the physical system; deriving from the additional data a finite state for each of the plurality of nodes, the plurality of nodes including nodes that are leaf nodes and nodes that are higher level nodes, each higher level node representing a unique combination of states of nodes below the higher level node; storing an instruction to further perform the steps; constructing the FSM model includes defining a sequence of states associated with the plurality of nodes.

20. The computer-readable medium of claim 17.

20. The computer readable medium is provided to the computer system, creating a digital twin of the physical system based on the model of the physical system.

20. The computer readable medium of claim 19 storing instructions further comprising:

Citation Information

Patent Citations

  • Abnormal affecting range displaying system

    JP1989213795A

  • Obstacle factor estimation system, method and program

    JP2007257184A

  • Integrated state transition table describing the state machine model

    JP2015517129A