Configurable host application for generating digital twins

A configurable host application generates digital twins using personality profiles to emulate system components, addressing integration challenges by enabling early testing and reducing development time and costs through model-agnostic integration.

JP2026501568APending Publication Date: 2026-01-16NORTHROP GRUMMAN SYSTEMS CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2025538268
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-03-15
Filing Date
2024-03-01
Publication Date
2026-01-16

AI Technical Summary

Technical Problem

System integrators face challenges in efficiently integrating system components due to lack of proper documentation and design differences, leading to increased time and cost in the integration process.

Method used

A configurable host application generates digital twins using personality profiles that define behaviors and interfaces, allowing for early testing and integration of system components by emulating their functionality without requiring unique source code, thus reducing development time and costs.

Benefits of technology

The solution enables rapid creation of digital twins with varying fidelity, facilitating early identification and resolution of integration issues, thereby reducing development time and costs, and ensuring compliance with standardized models like OMS service contracts.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026501568000001_ABST
    Figure 2026501568000001_ABST
Patent Text Reader

Abstract

A system and method are provided for generating a digital twin of a system component from a configurable host application. A personality profile defining a set of behaviors and interfaces associated with a system component associated with a system is generated and provided to an instance of the host application to configure the instance of the host application to operate as a digital twin of the system component. The host application includes input interfaces, output interfaces, and a library of functions. The digital twin is used in place of the system component in a test or operational environment.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to information systems, and more particularly to a configurable host application for generating digital twins. [Background technology]

[0002] System integrators typically do not obtain proper documentation before product delivery. With the advent of model-based systems engineering, manufacturers need a place to obtain the information necessary to validate system interactions before product delivery. However, even when a third party provides a model-based systems engineering (MBSE) model of their product, the model has fundamental design differences that require a translation process to be placed into the system integrator's model. This can increase the time and cost required for integration. Summary of the Invention

[0003] According to one example, a method is provided in which a personality profile defining a set of behaviors and interfaces associated with a system component associated with a system is generated and provided to an instance of a host application to configure the instance of the host application to operate as a digital twin of the system component, the host application including an input interface, an output interface, and a library of functions, and the digital twin is used in place of the system component in a test or operational environment.

[0004] According to another example, a system includes a processor and a non-transitory computer-readable medium storing machine-executable instructions for generating a digital twin of a system component. The machine-executable instructions include a personality profile defining a set of interfaces and behaviors associated with the system component and a host application. The host application includes a service generator that constructs services representing the digital twin from the personality profile and an execution module that executes the constructed services to provide the digital twin.

[0005] According to a further example, a system includes a processor and a non-transitory computer-readable medium storing machine-executable instructions for generating a digital twin of a system component. The machine-executable instructions include a specification parser that extracts data about a set of operations and interfaces associated with the system component from a structured or semi-structured data source to provide a personality profile, and a host application. The host application includes a service generator that constructs services representing the digital twin from the personality profile, and an execution module that executes the constructed services to provide the digital twin. [Brief explanation of the drawings]

[0006] These and other features of the present disclosure will become apparent to those skilled in the art to which the present disclosure pertains from a reading and understanding of the following description taken in conjunction with the accompanying drawings. [Figure 1] FIG. 1 illustrates an example of a system for providing a digital twin for a system component. [Figure 2] FIG. 2 is a diagram illustrating an example of a system that uses a digital twin generated via the system of FIG. 1. [Figure 3] FIG. 1 illustrates a system for generating a digital twin from structured or semi-structured data sources. [Figure 4]FIG. 1 illustrates a method for providing a digital twin using a configurable host interface. [Figure 5] FIG. 1 is a schematic block diagram illustrating an exemplary system of hardware components capable of implementing example systems and methods disclosed herein. DETAILED DESCRIPTION OF THE INVENTION

[0007] In the context of the present disclosure, the singular forms "a", "an" and "the" may also include the plural forms unless the context clearly dictates otherwise. As used herein, the terms "comprises" and / or "comprising" specify the presence of stated features, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, elements, components, and / or groups.

[0008] As used herein, the term "and / or" may include any and all combinations of one or more of the associated listed items. Furthermore, terms such as "first," "second," etc. may be used herein to describe various elements, but these elements should not be limited by these terms. These terms are merely used to distinguish one element from another. Thus, a "first" element described below may also be referred to as a "second" element without departing from the teachings of the present disclosure. The order of operations (or operations / steps) is not limited to the order presented in the claims or figures unless specifically indicated otherwise.

[0009] As used herein, the terms "substantially identical" or "substantially equal" refer to articles or indicia that are identical except for manufacturing or calibration tolerances. As used herein, a "system component" means a component of a larger integrated system, having a related set of operations and interfaces, and which may be implemented as dedicated hardware, a software application executed by one or more associated processors, or a mixture of dedicated hardware and software.

[0010] As used herein, the term "digital twin" means a computer-implemented model stored on a non-transitory computer-readable medium that emulates the operation of a system component, which may be a physical system or software application used in a larger system. For example, a digital twin of a radar system should be able to accurately generate outputs that a physical implementation of the radar system would generate for a given set of relevant conditions, such as the presence and nature of objects in view, weather conditions, and similar factors. It will be understood that a digital twin can, and typically will, receive inputs from other digital twins and implemented elements of the system being evaluated and provide appropriate outputs that represent the emulated physical system or software application.

[0011] As used herein, a "test environment" is a controlled environment in which one or more digital twins are used in combination with other system components to evaluate the performance of either one of the other system components or one system component emulated by one of the digital twins.

[0012] As used herein, an "operating environment" is a system that includes multiple system components that perform functions in response to at least one system external to the operating environment.

[0013] The systems and methods disclosed herein enable the creation of personality profiles that create interface digital twins of system components based on data, such as from service contracts, existing models, or manually. Conceptually, this allows for the creation of executable digital twins with various degrees of fidelity in a model-agnostic approach. An advantage of the present invention is that testable digital twins of systems can be generated quickly, thereby reducing development time and costs. For example, service contracts for Open Mission Systems (OMS) contain sufficient information to describe interfaces and behaviors in a standardized format, and the systems and methods proposed herein support obtaining this information from models or any source that clearly expresses interfaces and behaviors. Thus, digital twins can be created without the need to import third-party services into existing system models or utilize add-on modules that automatically generate unique software code to emulate the service's functionality and behavior.

[0014] 1 illustrates an example system 100 for providing a digital twin for a system component, which may include a physical system or subsystem, such as a sensor, or a software application, using a configurable generic model. It will be appreciated that system 100 may be implemented as software instructions stored on one or more non-transitory computer-readable media 102 and executed by an associated processor 104 to provide the functionality described below. System 100 includes a host application 110 that includes a service generator 120 that constructs a service representing the digital twin and an execution module 130 that executes the constructed service. The service generator includes an input interface 122, an output interface 124, and a library of behavior functions 126 that enable the service to emulate various behaviors associated with the system component.

[0015] The personality profile 140 defines the host application 110's configuration for mimicking the behavior of a system component. The personality profile 140 defines a state machine for the system component, including multiple states of the system component and multiple defined conditions for transitioning between states. The personality profile 140 may also include a dataset or dedicated library associated with the system component. For example, a given dataset may define the system component's outputs associated with various input or detected conditions. It will be appreciated that the personality profile 140 may be generated manually from knowledge of and interactions with the system component, for example, from structured or semi-structured data sources generated according to defined standards, or from digital models provided by the system component manufacturer. In one example, the personality profile 140 may be based on a model-based systems engineering (MBSE) model or extracted from a service contract.

[0016] When a personality profile is provided to an instance of host application 110, functions from library 126, and in some implementations, libraries and data sets incorporated in personality profile 140, are used to create services with behaviors and interfaces that mimic the system components. It will be appreciated that when generating a personality profile, the fidelity of the emulation can be selected, with a low-fidelity digital twin including a basic set of behaviors and a high-fidelity digital twin utilizing more advanced behaviors using the functions and data provided by the personality profile. The resulting digital twin can be used in a system integration system to test and integrate systems that will incorporate the system components much earlier in the design and implementation process, thereby significantly reducing integration effort time when the system components are installed. To this end, the digital twin can communicate with other components of the environment via communication bus 150, which may include, for example, a local bus, short-range wireless communication, or a network connection. The digital twin generated by the system of FIG. 1 also enables system integrators to identify problems early and fix them on a timeline that can reduce the cost and impact of change.

[0017] The illustrated system 100 allows a conceptually simple host application 110, with behaviors and interfaces that can be defined by a personality profile 140, to mimic a system, such as a sensor, software application, or hardware system, and use the personality profile to create a well-defined set of interfaces and execute a set of behaviors to form a digital twin. The host application 110 can utilize basic behaviors or execute a higher-fidelity set of behaviors defined by supporting information, such as additional function libraries and data sets referenced in the personality profile 140. Utilizing this generic host application provides a model-agnostic option for creating digital twins. Furthermore, using configuration files, as opposed to building unique source code, has the advantage of significantly reducing the degree of review required to develop a component at one classification level and then transfer it to a system at another classification level for testing or other use. This is because the host application 110 is reused, and the only new material for review is limited to the personality profile. This provides time and cost savings when transferring designs between classification levels and reduces the risk of sensitive material being overlooked.

[0018] In one example, a digital twin generated using the system of FIG. 1 can be used in an operational environment to mimic the behavior of another system with appropriate modifications to the desired environment (e.g., by changing the fidelity of the emulation). For example, one or more digital twins can be configured into a honeypot shadow network in cybersecurity, where the digital twin's behavior "similar" to the operational system but with a fidelity that makes it more easily targetable to evaluate the behavior of intruders away from the operational network. Digital twins can also be used in testing environments, and FIG. 2 shows an example of a system 200 that uses a digital twin generated by the system of FIG. 1 in a testing environment. System 200 includes a system under test 202 that is being evaluated or configured for use in a larger system. System under test 202 is connected via communication bus 208 to a set of emulated system components implemented as digital twins 210, 220, and 230. Each of the digital twins 210, 220, and 230 is implemented as an instance of a generic host application 212, 222, and 232, such as host application 110 of Figure 1, and an application-specific personality profile 214, 224, and 234 is used to configure the generic host application to mimic the behavior and interface of a given system component represented by the digital twin. Each personality profile 214, 224, and 234 defines a state machine for the associated system component.

[0019] In the illustrated example, a first digital twin 210 represents a radar system. For this digital twin 210, a personality profile 214 can define a state machine for the radar system executed by a generic host application 212, as well as one or more datasets representing the radar's emulated output given various conditions (e.g., the position of an object in the radar's field of view and its radar cross section). A second digital twin 220 represents a full motion video (FMV) sensor. A personality profile 224 associated with the second digital twin 220 defines a state machine for the FMV system executed by a generic host application 222, as well as one or more datasets representing the video data and associated metadata provided by such a sensor. A third digital twin 230 represents a task manager for the system, with a personality profile 234 defining the task manager's state machine, which is executed by a generic host application 232 and provides appropriate commands to the other components 202, 210, and 220 of the system in response to inputs from these components. System under test 202 receives inputs from digital twins 210, 220, and 230 and receives responses to communications sent to the digital twins that emulate expected data and responses from these systems, allowing the operation of system under test 202 to be evaluated in a test environment without having fully implemented versions of the system components emulated by the digital twins.

[0020] Figure 3 illustrates a system 300 for generating digital twins from structured or semi-structured data sources. For example, the Air Force has mandated the use of Open Mission Systems (OMS) and Universal Command and Control Interface (UCI) in many acquisitions, and a standardized approach—specifically, OMS service contracts—currently exists to define the interfaces and behavior of services, subsystems, and isolators. The Air Force's objective is for service contracts to exist for each "replaceable unit"—enough for a third party to acquire a service contract and replace or further extend functionality without having to involve the original manufacturer. System 300 in Figure 3 leverages this mandate to reduce the burden on systems engineering and create a more streamlined process that allows for faster testing and validation of interfaces and behavior, thereby shortening the timeline to field capabilities. The current integration process begins with the design of OMS services and their models, and developers create software according to the specifications. Once the OMS service is built, it can be tested and compared to what is expected. OMS services are offered to system integrators by external and internal customers. The system in Figure 3 allows for testing and integration with the digital twin much earlier in the design implementation process, which significantly reduces the integration effort when receiving the actual OMS service. It also allows system integrators to identify issues early and fix them in a timeline where the cost and impact of change may be less.

[0021] It will be appreciated that the illustrated system 300 may be implemented, for example, as software instructions stored on a non-transitory computer-readable medium (not shown) and executed by an associated processor (not shown). In the illustrated system, a host application 302 becomes a digital twin using a personality profile 304 extracted from a service contract or other structured or semi-structured data source, and then mimics both the interfaces and behavior of the system component being emulated. A specification parser 306 extracts data regarding the behavior and interfaces of the system component from a structured or semi-structured data source, such as an OMS contract. In particular, the specification parser 306 parses the structured or semi-structured data source to generate a state machine representing at least the system component. In one example, at least a portion of the structured or semi-structured data source is formatted as an extensible markup language (XML) schema. In some examples, the specification parser 306 can identify and extract one or more datasets or function libraries associated with the component. The data extracted from the specification parser 306 is compiled into a personality profile 304 and provided to a host application 302, which may be similar to that described in FIG. 1, to provide a digital twin representing the system component.

[0022] The digital twin created using the personality profile 304 includes the interfaces and behaviors provided by the service contract or other structured or semi-structured data source. In one example, the host application 302 is designed to provide different levels of fidelity or maturity for the digital twin by using the interfaces and behaviors provided by the configuration file and additional supporting information in the personality profile 304. Thus, multiple instances of the host application 302 with different configuration files create multiple digital twins of the system components described in the respective configuration files. Utilizing chameleon when emulating third-party system components has a significant advantage in that the lineage of the MBSE model / OMS service contract is verified through use of the host application 302. The host application 302 can provide an independent mechanism for system integrators to create twins and ensure their behavior conforms to the provided model or service contract.

[0023] With the above structural and functional features in mind, an exemplary method may be better understood by reference to Figure 4. For ease of explanation, the exemplary method of Figure 4 is shown and described as being performed serially; however, it should be understood that the present example is not limited by the order shown herein, as some operations may, in other examples, be performed multiple times and / or simultaneously in a different order than shown and described herein. Furthermore, not all of the operations described need be performed to implement a method in accordance with the present invention.

[0024] FIG. 4 illustrates a method 400 for providing a digital twin using a configurable host interface. At 402, a personality profile is generated that defines a set of behaviors and interfaces associated with a system component associated with a system. The personality profile may be generated, for example, from a model-based systems engineering model representing the system component, from data extracted from one of a structured data source and a semi-structured data source representing specifications for the system component, or from domain knowledge and / or interactions with the system component by an expert. In one example, the personality profile defines a state machine for the system component that can be implemented using a library of functions and data stored in a generic host application configurable by the personality profile to generate a digital twin. In another implementation, the personality profile also includes a data file representing the output of the system component and / or one or more functions not present in a library of functions associated with the host application. It will be appreciated that a personality profile associated with a given system component can be generated to generate a digital twin having a desired level of fidelity. For example, a first personality profile for a given system component may include only a defined state machine and rely entirely on a library of functions and data associated with the host application. A second personality profile for the system component may include additional data sets and functions not present in the library associated with the host application, allowing for the creation of a higher fidelity digital twin of the system component than provided by the first personality profile.

[0025] At 404, a personality profile is provided to an instance of a host application, comprising an input interface, an output interface, and a library of functions, configuring the instance of the host application to operate as a digital twin of the system component. The personality profile is used to select functions and data from a library associated with the host application to create an instance of a state machine defined by the personality profile. For higher-fidelity digital twins, additional data and functions included in the personality profile may also be used for this purpose. At 406, the digital twin is used in place of the system component in a test or operational environment. For example, if the system component is a sensor, the digital twin may emulate the output of the sensor in the environment under various simulated conditions. It will be appreciated that steps 402 and 404 may be repeated with different personality profiles representing different system components and additional instances of the generic host application to provide multiple digital twins representing different system components of a larger system for use in the environment.

[0026] 5 is a schematic block diagram illustrating an exemplary system 500 of hardware components capable of implementing example systems and methods disclosed herein. System 500 may include various systems and subsystems. System 500 may be a personal computer, a laptop computer, a workstation, a computer system, a consumer electronics device, an application specific integrated circuit (ASIC), a server, a server blade center, a server farm, etc.

[0027] The system 500 may include a system bus 502, a processing unit 504, a system memory 506, memory devices 508 and 510, a communication interface 512 (e.g., a network interface), a communication link 514, a display 516 (e.g., a video screen), and input devices 518 (e.g., a keyboard, touch screen, and / or a mouse). The system bus 502 can communicate with the processing unit 504 and the system memory 506. Additional memory devices 508 and 510, such as a hard disk drive, a server, a standalone database, or other non-volatile memory, can also communicate with the system bus 502. The system bus 502 interconnects the processing unit 504, the memory devices 506-510, the communication interface 512, the display 516, and the input device 518. In some examples, the system bus 502 also interconnects additional ports (not shown), such as a universal serial bus (USB) port.

[0028] The processing unit 504 may be a computing device and may include an application specific integrated circuit (ASIC). The processing unit 504 executes a set of instructions to perform the operations of the examples disclosed herein. The processing unit may include a processing core.

[0029] Additional memory devices 506, 508, and 510 may store data, programs, instructions, database queries in text or compiled form, and any other information that may be needed to operate the computer. Memory 506, 508, and 510 may be implemented as computer-readable media (integrated or removable), such as memory cards, disk drives, compact discs (CDs), or servers accessible over a network. In some examples, memory 506, 508, and 510 includes text, images, video, and / or audio, some of which may be available in a human-understandable format. Additionally or alternatively, system 500 may access external data or query sources via a communications interface 512, which is in communication with system bus 502 and communications link 514.

[0030] In operation, system 500 can be used to implement one or more portions of a system for generating and using digital twins of system components such as those shown in Figures 1-3. Computer-executable logic for implementing the system resides, according to some examples, in system memory 506 and one or more of memory devices 508 and 510. Processing unit 504 executes one or more computer-executable instructions read from system memory 506 and memory devices 508 and 510. As used herein, the term "computer-readable medium" refers to any medium that participates in providing instructions to processing unit 504 for execution. This medium can be distributed across multiple separate assemblies that are all operatively connected to a common processor or set of associated processors.

[0031] The implementation of the techniques, blocks, steps, and means described above can be performed in various ways. For example, these techniques, blocks, steps, and means can be implemented in hardware, software, or a combination thereof. In the case of a hardware implementation, the processing unit can be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, other electronic units designed to perform the functions described above, and / or combinations thereof.

[0032] Also, it should be noted that the embodiments may be described as a process that is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. While a flowchart may describe operations as a sequential process, many of the operations may be performed in parallel or simultaneously. Additionally, the order of operations may be rearranged. A process terminates when its operations are completed, but may have additional steps not included in the diagram. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination corresponds to a return of the function to the calling function or the main function.

[0033] Furthermore, embodiments may be implemented by hardware, software, scripting languages, firmware, middleware, microcode, hardware description languages, and / or any combination thereof. When implemented in software, firmware, middleware, scripting languages, and / or microcode, the program code or code segments for performing the necessary operations may be stored in a machine-readable medium such as a storage medium. A code segment or machine-executable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a script, a class, or any combination of instructions, data structures, and / or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and / or receiving information, data, arguments, parameters, and / or memory contents. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means, including memory sharing, message passing, ticket passing, network transmission, etc.

[0034] For a firmware and / or software implementation, the methods may be implemented with modules (e.g., procedures, functions, etc.) that perform the functions described herein. Any machine-readable medium tangibly embodying instructions may be used in implementing the methodologies described herein. For example, software code may be stored in a memory. The memory may be implemented within the processor or external to the processor. As used herein, the term "memory" refers to any type of long-term, short-term, volatile, non-volatile, or other storage medium and is not limited to any particular type or number of memories or the type of medium on which the memory is stored.

[0035] Additionally, as disclosed herein, the term "storage medium" may refer to one or more memories for storing data, including read-only memory (ROM), random-access memory (RAM), magnetic RAM, core memory, magnetic disk storage media, optical storage media, flash memory devices, and / or other machine-readable media for storing information. The term "machine-readable medium" includes, but is not limited to, portable or non-removable storage devices, optical storage devices, wireless channels, and / or various other storage media capable of storing or carrying instruction(s) and / or data.

[0036] The above description is exemplary of the present invention. Of course, it is not possible to describe every conceivable combination of components or methodologies, but one of ordinary skill in the art will recognize that many additional combinations and permutations are possible. Accordingly, this disclosure is intended to embrace all such alterations, modifications, and variations that fall within the scope of this application, including the appended claims. As used herein, the term "includes" means including but not limited to, and the term "including" means including but not limited to. The term "based on" means based at least in part on.

Claims

1. 1. A method comprising: generating a personality profile that defines a set of behaviors and interfaces associated with system components associated with the system; providing the personality profile to an instance of a host application having an input interface, an output interface, and a library of functions, to configure the instance of the host application to operate as a digital twin of the system component; and using the digital twin in place of the system component in one of a test environment and an operational environment.

2. The method of claim 1 , wherein generating the personality profile comprises generating the personality profile from a model-based systems engineering model representing the system components.

3. The method of claim 1 , wherein generating the personality profile comprises extracting data from one of a structured data source and a semi-structured data source representing specifications for the system component.

4. The method of claim 1 , wherein the personality profile includes a data file representing the outputs of the system components and at least one function not present in the library of functions.

5. The personality profile is a first personality profile, the digital twin is a first digital twin, the instance of the host application is a first instance of the host application, and the method further comprises: generating a second personality profile defining the set of behaviors and interfaces associated with the system component, the second personality profile not including functions; and providing the second personality profile to a second instance of the host application to configure the second instance of the host application to operate as a second digital twin of a second system component, the second digital twin emulating the system component at a lower fidelity than the fidelity of the first digital twin.

6. The method of claim 1 , wherein generating the personality profile comprises generating the personality profile by an expert from information about and interactions with the system components.

7. the personality profile is a first personality profile, the system component is a first system component, the set of operations and interfaces is a first set of operations and interfaces, the instance of the host application is a first instance of the host application, and the method further comprises: generating a second personality profile defining a second set of behaviors and interfaces associated with a second system component associated with the system; providing the second personality profile to a second instance of the host application to configure the second instance of the host application to operate as a digital twin of the second system component; and using the digital twin of the second system component in place of the second system component in the one of the test environment and the operational environment.

8. 2. The method of claim 1 , wherein the system component is a sensor, and wherein using the digital twin in place of the system component in one of the test environment and the operating environment includes using the digital twin to emulate an output of the sensor in the one of the test environment and the operating environment.

9. 1. A system comprising: a processor; a non-transitory computer-readable medium storing machine-executable instructions for generating a digital twin of a system component, the machine-executable instructions comprising: a personality profile defining a set of interfaces and behaviors associated with the system component; A host application, a service generator that constructs a service representing the digital twin from the personality profile; A system comprising: a host application including an execution module that executes the service constructed to provide the digital twin.

10. 10. The system of claim 9, wherein the service generator comprises a library of functions, and wherein the service generator selects from the library of functions to build the service according to the set of interfaces and behaviors defined in the personality profile.

11. The system of claim 10 , wherein the personality profile defines a state machine for the system component.

12. The system of claim 11 , wherein the personality profile further includes at least one function that is not present in the library of functions.

13. The system of claim 11 , wherein the personality profile further comprises a set of data representing an output of the system component.

14. 10. The system of claim 9, further comprising a specification parser that extracts data about the set of operations and interfaces associated with the system component from a structured or semi-structured data source to provide the personality profile.

15. 10. The system of claim 9, wherein the personality profile is a first personality profile, the system component is a first system component, the digital twin is a second digital twin representing a second system component, the service is a second service, the set of behaviors and interfaces is a first set of behaviors and interfaces, the system further comprises a second personality profile defining a second set of behaviors and interfaces associated with a second system component associated with the system, and the service generator constructs a second service representing the second digital twin from the second personality profile.

16. 1. A system comprising: a processor; a non-transitory computer-readable medium storing machine-executable instructions for generating a digital twin of a system component, the machine-executable instructions comprising: a specification parser that extracts data about a set of operations and interfaces associated with the system component from a structured or semi-structured data source to provide a personality profile; A host application, a service generator that constructs a service representing the digital twin from the personality profile; A system comprising: a host application including an execution module that executes the service constructed to provide the digital twin.

17. 17. The system of claim 16, wherein the service generator comprises a library of functions, and wherein the service generator selects from the library of functions to build the service according to the set of interfaces and behaviors defined in the personality profile.

18. 20. The system of claim 17, wherein the personality profile defines a state machine for the system component and includes at least one function not present in the library of functions and a set of data representing an output of the system component.

19. 19. The system of claim 18, wherein the structured or semi-structured data source is a first structured or semi-structured data source, the personality profile is a first personality profile, the digital twin is a first digital twin, the specification parser generates a second personality profile from a second structured or semi-structured data source that defines the set of behaviors and interfaces associated with the system component, the second personality profile does not include any functions that are not present in a library of the personality profile, the service generator generates a second service from the second functions that represents a second digital twin of a second system component, the execution module executes the second service to provide the second digital twin, and the second digital twin emulates the system component at a lower fidelity than the fidelity of the first digital twin.

20. 18. The system of claim 17, wherein the structured data source or the semi-structured data source is a structured data source prepared according to a predetermined standard.

Citation Information

Patent Citations

  • Method for generating input / Output device simulating part

    JP1994348463A

  • Digital twin with machine learning waveform generation including parameter control for device under test emulation

    WO2023023407A1