WO2019103773A1 - Automatically identifying alternative functional capabilities of designed artifacts - Google Patents

Automatically identifying alternative functional capabilities of designed artifacts Download PDF

Info

Publication number
WO2019103773A1
WO2019103773A1 PCT/US2018/047024 US2018047024W WO2019103773A1 WO 2019103773 A1 WO2019103773 A1 WO 2019103773A1 US 2018047024 W US2018047024 W US 2018047024W WO 2019103773 A1 WO2019103773 A1 WO 2019103773A1
Authority
WO
WIPO (PCT)
Prior art keywords
functional
system design
listing
traits
digital twin
Prior art date
Application number
PCT/US2018/047024
Other languages
French (fr)
Inventor
Reed Williams
Thomas Gruenewald
Livio Dalloro
Suraj Ravi MUSUVATHY
Original Assignee
Siemens Aktiengesellschaft
Siemens Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Aktiengesellschaft, Siemens Corporation filed Critical Siemens Aktiengesellschaft
Publication of WO2019103773A1 publication Critical patent/WO2019103773A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Definitions

  • the system design in response to presenting the listing of functional traits, is mod ified based on one or more commands received from the user.
  • a new digital twin graph representative of the modified system design is then generated.
  • the machine learning model may then be applied to the new digital twin graph to identify a new listing of functional traits provided by the system design,
  • FIG. I provides a conceptual overview of how ? alternative functional capabilities of a system can be identified, according to some embodiments.
  • FIG. 2 illustrates a computer-implemented method for automatically identifying alternative functional capabilities of designed artifacts, according to some embodiments.
  • FIG. 3 provides an example of a parallel processing memory architecture that may be utilized to perform computations related to execution of the various workflows discussed herein, according to some embodiments of the present invention.
  • the following disclosure describes the present invention according to several embodiments directed at methods and apparatuses for automatical! ⁇ ' identifying alternative functional capabilities of designed artifact.
  • the techniques described herein allow the designer, at design time, to understand when their design provides unintended or undesired functionality.
  • a heat shield that also provides radiation shielding or a structure that provides stiffness but also thermal insulation.
  • FIG. 1 provides a conceptual overview of how alternative functional capabilities of a system can be identified, according to some embodiments.
  • the user specifies a new design 105 that may include, for example, a functional specification, a description of materials used by the design, models of the volumes and shapes used in the design, etc.
  • a digital twin graph (DTG) 1 10 representative of the system is generated and analyzed by a knowledge system 115 to generate a functional description 120 of the system.
  • DTG digital twin graph
  • a digital twin is a digital version of a machine. Once created, the DT can be used to represent the machine in a digital representation of a real world system. The DT is created such that it is identical in form and behavior of the corresponding machine. Additionally, the DT may mirror the status of the machine within a greater system. For example, sensors may be placed on the machine to capture real-time (or near real-time) data from the physical object to relay it back to a remote DT, The DT can then make any changes necessary to maintain its correspondence to the physical twin.
  • the DTG is a graph structure where nodes correspond to DTs and edges correspond to data flowing between DTs.
  • the agent can observe the state of the environment and choose to act on the state, similar to a trial-and-error search, maximizing the future reward signal received as a response from the environment.
  • the environment may be modeled by simulation or operation which gives positive and negative rewards to the current state.
  • the knowledge system 115 also includes a classifier 1 15B determining whether the functional traits identified by the machine learning model 115A are beneficial or detrimental to the system design.
  • the classifier 1 15B may also determine that certain functional traits are entirely irrelevant to the system designer.
  • Various types of classifiers can be used including, for example, generative learning models, predictive learning models, decision trees, etc. It should be noted that, although the classifier 115B is shown as a separate component than the machine learning model 115A in FIG. 1 , in some embodiments the two components 1 15 A, 115B can be combined in a single machine learning model that both generates the functional traits and classifies the traits as beneficial, detrimental, etc.
  • the classifier 1 15B could be trained to use the file type as an input, along with the other characteristics of the system design.
  • the knowledge system 1 15 may learn that every time that design is based on a file with a PRT file extension, it is structural and the designer does not care about thermal properties. Conversely, if the design is based on a DMZ file, the user may only care about thermal properties. Eventually, when the knowledge system 115 is presented with a PRT file, it will stop providing thermal functional traits are output. Similarly, when presented with a DMZ file, the knowledge system 1 15 may only provide thermal functional traits as output.
  • FIG. 2 illustrates a computer-implemented method 200 for automatically identifying alternative functional capabilities of designed artifacts, according to some embodiments.
  • This method 200 may be implemented generally using any computing system known in the art. For large, complex digital twin graphs, a parallel processing system such as described in FIG. 3 may be employed.
  • the computing system receives a system design comprising a functional specification of a product. This step may entail, for example, capturing past designs and tacit knowledge from engineers.
  • any technique known in the art may be used for communicating the system design to the computing system implementing the method 200. For example, in one embodiment, the computing system retrieves the functional specification from a database or some other form of local storage.
  • a computing system applies a machine learning model to the digital twin graph to identify a listing of functional traits provided by the system design.
  • a classifier is applied to the listing to generate an updated listing of the functional traits that classifies them into one or more classes.
  • three classes are noted (beneficial, detrimental, and irrelevant); however, in principle, the classifier can be trained to classify the functional design into any number of classes. This may allow further granularity to be used in classification. For example, a company may employ a classification system that will indicate that a functional trait is not relevant to a particular product; however the functional trait may be relevant to another company manufactured or sold by the company.
  • FIG. 3 provides an example of a parallel processing memory architecture 300 that may be utilized to perform computations related to execution of the various workflows discussed herein, according to some embodiments of the present invention.
  • This architecture 300 may be used in embodiments of the present invention where NVIDIATM CIJDA (or a similar parallel computing platform) is used.
  • the architecture includes a host computing unit (“host”) 305 and a graphics processing unit (GPU) device (“device”) 310 connected via a bus 315 (e.g., a PCIe bus).
  • the host 305 includes the central processing unit, or“CPU” (not shown in FIG. 3), and host memory 325 which is accessible to the CPU.
  • each kernel is performed by a grid of thread blocks (described in greater detail below).
  • the architecture 300 of FIG. 3 may be used to parallelize modification or analysis of the digital twin graph.
  • the operation s of the big data platform may be partitioned such that mul tiple kern els analyze different sub-graphs of a DT G simultaneously.
  • the thread blocks 330 are organized in a two dimensional grid structure with m+1 rows and n+1 columns. Generally, threads in different thread blocks of the same grid cannot communicate or synchronize with each other. However, thread blocks in the same grid can run on the same multiprocessor within the GPU at the same time. The number of threads in each thread block may be limited by hardware or software constraints. [0032] Continuing with reference to FIG. 3, registers 355, 360, and 365 represent the fast memory available to thread block 330. Each register is only accessible by a single thread. Thus, for example, register 355 may only be accessed by thread 340. Conversely, shared memory is allocated per thread block, so ail threads in the block have access to the same shared memory.
  • the embodiments of the present disclosure may be implemented with any combination of hardware and software.
  • standard computing platforms e.g., servers, desktop computer, etc.
  • the embodiments of the present disclosure may be included in an article of manufacture (e.g., one or more computer program products) having, for example, computer-readable, non-transitory media.
  • the media may' have embodied therein computer readable program code for providing and facilitating the mechanisms of the embodiments of the present disclosure.
  • the article of manufacture can be included as part of a computer system or sold separate! ⁇ '.
  • An executable application comprises code or machine readable instructions for conditioning the processor to implement predetermined functions, such as those of an operating system, a context data acquisition system or other information processing system, for example, in response to user command or input.
  • An executable procedure is a segment of code or machine readable instruction, sub-routine, or other distinct section of code or portion of an executable application for performing one or more particular processes. These processes may include receiving input data and/or parameters, performing operations on received input data and/or performing functions in response to received input parameters, and providing resulting output data and/or parameters.

Abstract

A computer-implemented method for automatically identifying alternative functional capabilities of designed artifacts includes receiving a system design comprising a functional specification of a product and generating a digital twin graph representative of the system design. The method further includes applying a machine learning model to the digital twin graph to identify a listing of functional traits provided by the system design. The listing of functional traits may then be presented to a user.

Description

AUTOMATICALLY IDENTIFYING ALTERNATIVE FUNCTIONAL CAPABILITIES
OF DESIGNED ARTIFACTS
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application Serial No. 62/590,683 filed November 27, 2017, which is incorporated herein by reference in its entirety.
TECHNICAL FIELD
[0002] The present disclosure generally relates to systems, methods, and apparatuses for the method and apparatus for automatically identifying alternative functional capabilities of designed artifacts. The techniques described herein may be applied, for example, to integrate sensor recommendations into functional design tools.
BACKGROUND
[0003] In engineering design, typically, the workflow is an iterative process which involves design synthesis, analysis, manufacture, and testing. This process is rife with loops where a return to the design stage is required due to some unforeseen consequence of an arbitrary design decision. Many times, the problem could be a voided by a functional understanding of the specified design. That is, if all of the functional capabilities of all of the design features and assemblies were understood automatically at the design stage, rather than only the functional capabilities for which the item(s) are being intentionally designed, problems leading to expensive redesign processes could be avoided.
[0004] The traditional engineering design solution to this problem is the design-analysis- manufacture-testing loop, a very costly and inefficient loop structure which slows development to a crawl. More recent attempts to shorten this loop include steps to integrate analysis tools directly into design software (CAD/CAM/CAE) and design guidance/advisor systems (such as those in Siemens NX). Despite these efforts, identifying alternative functional capabilities is still a very inefficient practice in convention systems. SUMMARY
[0005] Embodiments of the present invention address and overcome one or more of the above shortcomings and drawbacks, by providing methods and apparatuses for automatically identifying alternative functional capabilities of designed artifacts.
[0006] According to some embodiments, a computer-implemented method for automatically identifying alternative functional capabilities of designed artifacts includes receiving a system design comprising a functional specification of a product. The system design may include, for example, an indication of materials to be used in constructing the product, an indication of volumes to be used in constructing the product, and an indication of shapes to be used in constructing the product. A digital twin graph representative of the system design is then generated. The method further includes applying a machine learning model to the digital twin graph to identify a listing of functional traits provided by the system design. The listing of functional traits may then be presented to a user.
[0007] In some embodiments of the aforementioned method, in response to presenting the listing of functional traits, the system design is mod ified based on one or more commands received from the user. A new digital twin graph representative of the modified system design is then generated. The machine learning model may then be applied to the new digital twin graph to identify a new listing of functional traits provided by the system design,
[0008] In some embodiments of the aforementioned method, a classifier is applied to the listing of functional traits to generate an updated listing of functional traits indicating whether each functional trait is beneficial to the system design or detrimental to the system design. Alternatively (or additionally), the updated listing of functional traits may include a measurement for each functional trait indicating the degree to which the functional trait is beneficial to the system design. This listing of functional traits may then be presented to the user in the updated l isting of functional traits. Additionally, in one embodiment, the functional specification of the product may be modified based on a user selection of one or more functions on the updated listing of functional traits to a user. Next, a new digital twin graph representative of the modified system design is generated. Then, the machine learning model is applied to the new digital twin graph to identify a new listing of functional traits provided by the system design. [0009] In other embodiments, a computer-implemented method for automatically identifying alternative functional capabilities of designed artifacts includes generating a digital twin graph representative of the system design. The system design comprises a functional specification of a product. A machine learning model is applied to the digital twin graph to identify' a listing of functional traits provided by the system design. A classifier is applied to the listing of functional traits to generate an updated listing of functional traits that cl assifies each functional trait into one of a plurality of classes. The listing of functional traits may then be presented to a user.
[0010] According to another aspect of the present invention, a computer system comprises one or more processors and a non-volatile memory, and the non-volatile memory' stores instructions that, when executed by the one or more processors, cause the one or more processors to perform one or both of the methods discussed above.
[0011] Additional features and advantages of the invention will be made apparent from the following detailed description of illustrative embodiments that proceeds with reference to the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] The foregoing and other aspects of the present invention are best understood from the following detailed description when read in connection with the accompanying drawings. For the purpose of illustrating the invention, there is shown in the drawings embodiments that are presently preferred, it being understood, however, that the invention is not limited to the specific instrumentalities disclosed. Included in the drawings are the following Figures;
[0013] FIG. I provides a conceptual overview of how? alternative functional capabilities of a system can be identified, according to some embodiments;
[0014] FIG. 2 illustrates a computer-implemented method for automatically identifying alternative functional capabilities of designed artifacts, according to some embodiments; and
[0015] FIG. 3 provides an example of a parallel processing memory architecture that may be utilized to perform computations related to execution of the various workflows discussed herein, according to some embodiments of the present invention. DETAILED DESCRIPTION
[0016] The following disclosure describes the present invention according to several embodiments directed at methods and apparatuses for automatical!}' identifying alternative functional capabilities of designed artifact. Through an automatic understanding of the multidomain functional capabilities of the designed system, the techniques described herein allow the designer, at design time, to understand when their design provides unintended or undesired functionality. Moreover, by enabling the designer to understand unintended functionality of their design in progress, it may be possible to improve the design by allowing multiple functions to be performed by the same geometry. For example, a heat shield that also provides radiation shielding or a structure that provides stiffness but also thermal insulation.
[0017] FIG. 1 provides a conceptual overview of how alternative functional capabilities of a system can be identified, according to some embodiments. The user specifies a new design 105 that may include, for example, a functional specification, a description of materials used by the design, models of the volumes and shapes used in the design, etc. A digital twin graph (DTG) 1 10 representative of the system is generated and analyzed by a knowledge system 115 to generate a functional description 120 of the system.
[0018] As is generally understood in the art, a digital twin (DT) is a digital version of a machine. Once created, the DT can be used to represent the machine in a digital representation of a real world system. The DT is created such that it is identical in form and behavior of the corresponding machine. Additionally, the DT may mirror the status of the machine within a greater system. For example, sensors may be placed on the machine to capture real-time (or near real-time) data from the physical object to relay it back to a remote DT, The DT can then make any changes necessary to maintain its correspondence to the physical twin. The DTG is a graph structure where nodes correspond to DTs and edges correspond to data flowing between DTs. Even though the DTG may comprise a large graph with billions of nodes and edges, existing databases (e.g., GraphX, Linked Data) and algorithms (e.g., Pregel, MapReduce) running in parallel processing platforms (see FIG. 3) may be used to efficiently search and update the DTG. Alternatively, a specialized database that uses graph structures for semantic queries (i.e., a“graph database”) may be used in some embodiments. [0019] This functional description 120 includes a listing of one or more“functional traits” related to the system design. In this context, the term“functional trait” refers to a quality or characteristic of the system design that provides a certain function. In the example of FIG. 1 , these functional traits indicate that the design is not permeable to radiation, it has acoustic damping properties, and it is an insulator. This information may confirm expectations of the design, or reveal unknown desired or undesired functional artifacts. For example, radiation permeability may be an unknown value-add, given the intended use of the designed system. Conversely, the insulating features may be undesired. As another example, if a designer specifies a Young’s modulus of ~70Gpa and a Poisson’s ratio of -0.33, a design system may recommend 6061 aluminum. The additional layer provided by the knowledge system will raise functional concerns immediately. This includes functional traits that are generally considered positive (e.g., high weldability, low relative weight) and functional traits which are good or bad or not of concern, depending on the application (no real fatigue limit, non-ferromagnetic, relatively high coefficient of thermal expansion, possibility of galvanic corrosion depending on materials used in other contacting parts).
[0020] The knowledge system 115 is a software system that generates the functional traits based on an input of a DTG 1 10, and possibly other inputs. For example, in some embodiments, deep learning neural networks may be employed such as feed-forward neural networks, convolutional neural networks, or recurrent neural networks. In other embodiments, the knowledge system 1 15 employs a Reinforcement Learning (RL) machine learning model. As is generally understood in the art, RL facilitates learning as an end-to-end cognitive process for an artificial agent, instead of a predefined methodology. One RL setting is composed by an artificial agent that can interact with an uncertain environment (e.g., a new system design with unknown functional traits) with the target of reaching pre-determined goals (e.g., providing a list of relevant functional traits). The agent can observe the state of the environment and choose to act on the state, similar to a trial-and-error search, maximizing the future reward signal received as a response from the environment. The environment may be modeled by simulation or operation which gives positive and negative rewards to the current state.
[0021] The knowledge system 115 also includes a classifier 1 15B determining whether the functional traits identified by the machine learning model 115A are beneficial or detrimental to the system design. The classifier 1 15B may also determine that certain functional traits are entirely irrelevant to the system designer. Various types of classifiers can be used including, for example, generative learning models, predictive learning models, decision trees, etc. It should be noted that, although the classifier 115B is shown as a separate component than the machine learning model 115A in FIG. 1 , in some embodiments the two components 1 15 A, 115B can be combined in a single machine learning model that both generates the functional traits and classifies the traits as beneficial, detrimental, etc.
[0022] In these embodiments, the machine learning model 115A and/or classifier 115B may be trained to some degree prior to deployment at a user site. Over time, as the user creates new designs, they are used to retrain the machine learning model 115A and/or classifier 115B. For example, designers of a video game system such as the Microsoft Xbox™ may not care whether a system design is watertight, or whether the system design will or will not float. However, these designers may have a strong interest in determining whether certain design components are good insulators. Thus, the classi fier 1 1 SB can learn what properties are more important to which groups of designers or for which kind of designs. This technique can even be extended to the types of files used during a design. That is, the classifier 1 15B could be trained to use the file type as an input, along with the other characteristics of the system design. For example, the knowledge system 1 15 may learn that every time that design is based on a file with a PRT file extension, it is structural and the designer does not care about thermal properties. Conversely, if the design is based on a DMZ file, the user may only care about thermal properties. Eventually, when the knowledge system 115 is presented with a PRT file, it will stop providing thermal functional traits are output. Similarly, when presented with a DMZ file, the knowledge system 1 15 may only provide thermal functional traits as output.
[0023] In some embodiments, the classifier 115B generates an updated listing of functional traits indicating whether each function is beneficial to the system design or detrimental to the system design. For example, the functional traits generated by machine learning model 115A can be given a binary value indicating whether the trait is beneficial or detrimental. This concept can be extended to three numbers to further indicate that a trait is not relevant. In other embodiments, the classifier 1 15B may provide a measurement for each function trait indicating how beneficial the function trait is to the system design. For example, a measurement of 90% of a particular trait would indicate that the trait is highly relevant, while a measurement of 10% would indicate that a trait is highly irrelevant. The use of measurement scores has the added benefit that the traits can be sorted in a particular order according to score (e.g., ascending order, with largest score is best). Techniques for generating a measurement score using a classifier are generally known in the art and, thus, these techniques are not described in detail herein. As an example, in some embodiments, a probabilistic classifier may be used which outputs a probability of a trait being a member of each of the possible classes (e.g., beneficial, detrimental, irrelevant, etc.). This probability can then be used as the measurement score.
[0024] Continuing with reference to FIG. 1 , based on information provided in the functional description 120, the system designer may revise the design and the process repeats using the revised design as the new design 105. This loop can execute as many times as necessary until the functional description 120 matches the desires and expectations of the designer. In some embodiments, the revisions made by the system designer may be used for training the machine learning model 115A and/or classifier 1 15B. As a simple example, if the system designer indicates that a particular set of functional traits are not relevant, the classifier 115B may use this information to make the traits as irrelevant when presented with similar knowledge graphs in the future.
[0025] FIG. 2 illustrates a computer-implemented method 200 for automatically identifying alternative functional capabilities of designed artifacts, according to some embodiments. This method 200 may be implemented generally using any computing system known in the art. For large, complex digital twin graphs, a parallel processing system such as described in FIG. 3 may be employed. Starting at step 205 in FIG. 2, the computing system receives a system design comprising a functional specification of a product. This step may entail, for example, capturing past designs and tacit knowledge from engineers. In general, any technique known in the art may be used for communicating the system design to the computing system implementing the method 200. For example, in one embodiment, the computing system retrieves the functional specification from a database or some other form of local storage. In other embodiments, the method 200 is integrated into a design tool such that the functional design is available in the same memory space within the computing system as the software executing the method 200. [0026] Continuing with reference to FIG. 2, at step 210, the computing system generates a digital twin graph representative of the system design. Various techniques may be used for generating a digital twin graph. For example, in some embodiments, a requirement distiller receives the design documents, extracts useful information, and stores that information as an ontology that can, in turn, he used to form a graph. One example of generating a digital twin graph from a functional specification is described in PCT/US2018/024490 entitled “System for Automated Generative Design Synthesis using Data from Design Tools and Knowledge from a Digital Twin” filed on March 27, 2018, the entirety of which is incorporated herein by reference.
[0027] At step 215, a computing system applies a machine learning model to the digital twin graph to identify a listing of functional traits provided by the system design. Then, at step 220, a classifier is applied to the listing to generate an updated listing of the functional traits that classifies them into one or more classes. In FIG. 2, three classes are noted (beneficial, detrimental, and irrelevant); however, in principle, the classifier can be trained to classify the functional design into any number of classes. This may allow further granularity to be used in classification. For example, a company may employ a classification system that will indicate that a functional trait is not relevant to a particular product; however the functional trait may be relevant to another company manufactured or sold by the company. Finally, once the updated listing of the functional traits is generated, it may be presented to a user at step 225 on a display connected to the computing system. It should be noted that the display is not necessarily local to the computing system. For example, in some embodiments, the method 200 is executed on a cloud-based computing system and the updated listing is presented to the user via a web browser or mobile application.
[0028] FIG. 3 provides an example of a parallel processing memory architecture 300 that may be utilized to perform computations related to execution of the various workflows discussed herein, according to some embodiments of the present invention. This architecture 300 may be used in embodiments of the present invention where NVIDIA™ CIJDA (or a similar parallel computing platform) is used. The architecture includes a host computing unit (“host”) 305 and a graphics processing unit (GPU) device (“device”) 310 connected via a bus 315 (e.g., a PCIe bus). The host 305 includes the central processing unit, or“CPU” (not shown in FIG. 3), and host memory 325 which is accessible to the CPU. The device 310 includes the graphics processing unit (GPU) and its associated memory 320, referred to herein as device memory. The device memory 320 may include various types of memory, each optimized for different memory usages. For example, in some embodiments, the device memory includes global memory, constant memory', and texture memory'.
[0029] Parallel portions of a big data platform and/or big simulation platform may be executed on the architecture 300 as“device kernels” or simply“kernels.” A kernel comprises parameterized code configured to perform a particular function. The parallel computing platform is configured to execute these kernels in an optimal manner across the architecture 300 based on parameters, settings, and other selections provided by the user. Additionally, in some embodiments, the parallel computing platform may include additional functionality to allow for automatic processing of kernels in an optimal manner with minimal input provided by the user.
[0030] The processing required for each kernel is performed by a grid of thread blocks (described in greater detail below). Using concurrent kernel execution, streams, and synchronization with lightweight events, the architecture 300 of FIG. 3 (or similar architectures) may be used to parallelize modification or analysis of the digital twin graph. For example, in some embodiments, the operation s of the big data platform may be partitioned such that mul tiple kern els analyze different sub-graphs of a DT G simultaneously.
[0031] The device 310 includes one or more thread blocks 330 which represent the computation unit of the device 310. The term thread block refers to a group of threads that can cooperate via shared memory and synchronize their execution to coordinate memory accesses. For example, in FIG. 3, threads 340, 345 and 350 operate in thread block 330 and access shared memory 335. Depending on the parallel computing platform used, thread blocks may be organized in a grid structure. A computation or series of computations may then be mapped onto this grid. For example, in embodiments utilizing CUDA, computations may be mapped on one-, two-, or three-dimensional grids. Each grid contains multiple thread blocks, and each thread block contains multiple threads. For example, in FIG. 3, the thread blocks 330 are organized in a two dimensional grid structure with m+1 rows and n+1 columns. Generally, threads in different thread blocks of the same grid cannot communicate or synchronize with each other. However, thread blocks in the same grid can run on the same multiprocessor within the GPU at the same time. The number of threads in each thread block may be limited by hardware or software constraints. [0032] Continuing with reference to FIG. 3, registers 355, 360, and 365 represent the fast memory available to thread block 330. Each register is only accessible by a single thread. Thus, for example, register 355 may only be accessed by thread 340. Conversely, shared memory is allocated per thread block, so ail threads in the block have access to the same shared memory. Thus, shared memory 335 is designed to be accessed, in parallel, by each thread 340, 345, and 350 in thread block 330. Threads can access data in shared memory 335 loaded from device memory 320 by other threads within the same thread block (e.g., thread block 330). The device memory 320 is accessed by all blocks of the grid and may be implemented using, for example, Dynamic Random-Access Memory (DRAM).
[0033] Each thread can have one or more levels of memory access. For example, in the architecture 300 of FIG. 3, each thread may have three levels of memory access. First, each thread 340, 345, 350, can read and write to its corresponding registers 355, 360, and 365. Registers provide the fastest memory access to threads because there are no synchronization issues and the register is generally located close to a multiprocessor executing the thread. Second, each thread 340, 345, 350 in thread block 330, may read and write data to the shared memory' 335 corresponding to that block 330. Generally, the time required for a thread to access shared memory exceeds that of register access due to the need to synchronize access among all the threads in the thread block. However, like the registers in the thread block, the shared memory is typically located close to the multiprocessor executing the threads. The third level of memory access allows all threads on the device 310 to read and/or write to the device memory. Device memory requires the longest time to access because access must be synchronized across the thread blocks operating on the device. Thus, in some embodiments, the processing of each sub-graph is coded such that it primarily utilizes registers and shared memory and only utilizes device memory as necessary' to move data in and out of a thread block.
[0034] The embodiments of the present disclosure may be implemented with any combination of hardware and software. For example, aside from parallel processing architecture presented in FIG. 3, standard computing platforms (e.g., servers, desktop computer, etc.) may be specialty configured to perform the techniques discussed herein. In addition, the embodiments of the present disclosure may be included in an article of manufacture (e.g., one or more computer program products) having, for example, computer-readable, non-transitory media. The media may' have embodied therein computer readable program code for providing and facilitating the mechanisms of the embodiments of the present disclosure. The article of manufacture can be included as part of a computer system or sold separate!}'.
[0035] While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
[0036] An executable application, as used herein, comprises code or machine readable instructions for conditioning the processor to implement predetermined functions, such as those of an operating system, a context data acquisition system or other information processing system, for example, in response to user command or input. An executable procedure is a segment of code or machine readable instruction, sub-routine, or other distinct section of code or portion of an executable application for performing one or more particular processes. These processes may include receiving input data and/or parameters, performing operations on received input data and/or performing functions in response to received input parameters, and providing resulting output data and/or parameters.
[0037] A graphical user interface (GUI), as used herein, comprises one or more display images, generated by a display processor and enabling user interaction with a processor or other device and associated data acquisition and processing functions. The GUI also includes an executable procedure or executable application. The executable procedure or executable application conditions the display processor to generate signals representing the GUI display images. These signals are supplied to a display device which displays the image for viewing by the user. The processor, under control of an executable procedure or executable application, manipulates the GUI display images in response to signals received from the input devices. In this way, the user may interact with the display image using the input devices, enabling user interaction with the processor or other de vice.
[0038] The functions and process steps herein may be performed automatically or wholly or partially in response to user command. An activity' (including a step) performed automatically' is performed in response to one or more executable instructions or device operation without user direct initiation of the activity.
[0039] The system and processes of the figures are not exclusive. Other systems, processes and menus may be derived in accordance with the principles of the invention to accomplish the same objectives. Although this invention has been described with reference to particular embodiments, it is to be understood that the embodiments and variations shown and described herein are for illustration purposes only. Modifications to the current design may be implemented by those skilled in the art, without departing from the scope of the invention. As d escribed herein, the various systems, subsystems, agents, managers and processes can be implemented using hardware components, software components, and/or combinations thereof. No claim element herein is to be construed under the provisions of 35 U.S.C. 112(f), unless the element is expressly recited using the phrase "means for.”

Claims

CLAIMS We claim:
1. A computer-implemented method for automatically identifying alternative functional capabilities of designed artifacts, the method comprising:
receiving a system design comprising a functional specification of a product;
generating a digital twin graph representative of the system design ;
applying a machine learning model to the digital twin graph to identify a listing of functional traits provided by the system design;
presenting the listing of functional traits to a user,
2. The method of claim 1, further comprising:
in response to presenting the listing of functional traits, modifying the system design based on one or more commands received from the user;
generating a new digital twin graph representative of the modified system design; and applying the machine learning model to the new digital twin graph to identify a new listing of functional traits provided by the system design.
3. The method of claim 1, further comprising:
applying a classifier to the listing of functional traits to generate an updated listing of functional traits indicating whether each functional trait is beneficial to the system design or detrimental to the system design,
wherein the listing of functional traits presented to the user is the updated listing of functional traits.
4. The method of claim 3, further comprising:
modifying the functional specification of the product based on a user selection of one or more functions on the updated listing of functional traits to a user;
generating a new' digital twin graph representative of the modified system design; and applying the machine learning model to the new digital twin graph to identify a new listing of functional traits provided by the system design.
5. The method of claim 1, further comprising:
applying a classifier to the listing of functional traits to generate an updated listing of functional traits comprising a measurement for each functional trait indicating the degree to which the functional trait is beneficial to the system design,
wherein the listing of functional traits presented to the user is the updated l isting of functional traits.
6. The method of claim 5, further comprising:
modifying the functional specification of the product based on a user sel ection of one or more functions on the updated listing of functional traits to a user;
generating a new digital twin graph representative of the modified system design; and applying the machine learning model to the new digital twin graph to identify a new' listing of functional traits provided by the system design.
7. The method of claim 1, wherein the system design further comprises an indication of materials to be used in constructing the product,
8. The method of claim 1, wherein the system design further comprises an indication of volumes to be used in constructing the product.
9. The method of claim 1, wherein the system design further comprises an indication of shapes to be used in constructing the product.
10. A computer- implemented method for automatically identifying alternative functional capabilities of designed artifacts, the method comprising:
generating a digital twin graph representative of the system design, wherein the system design comprises a functional specification of a product;
applying a machine learning model to the digital twin graph to identify a listing of functional traits provided by the system design; applying a classifier to the listing of functional traits to generate an updated listing of functional traits that classifies each functional trait into one of a plurality of classes;
presenting the updated listing of functional traits to a user.
11. The method of claim 10, further comprising:
in response to presenting the updated listing of functional traits, modifying the system design based on one or more commands received from the user;
generating a new di gital twin graph representative of the modified system design; and applying the machine learning model to the new digital twin graph to identify a new listing of functional traits provided by the system design.
12. The method of claim 10, wherein the updated listing of functional traits to a user provides a single class for each functional trait indicating whether the functional trait is beneficial, detrimental, or irrelevant to the product.
13. The method of claim 12, further comprising:
modifying the functional specification of the product based on a user selection of one or more functions on the updated listing of functional traits to a user;
generating a new digital twin graph representative of the modified system design; and applying the machine learning model to the new digital twin graph to identify a new listing of functional traits provided by the system design.
14. The method of claim 10, wherein the updated listing of functional traits to a user provides a measurement value for each class indicating the degree to which each functional trait corresponds to the class.
15. The method of claim 14, further comprising:
modifying the functional specification of the product based on a user selection of one or more functions on the updated listing of functional traits to a user;
generating a new digital twin graph representative of the modified system design; and applying the machine learning model to the new digital twin graph to identify a new listing of functional traits provided by the system design.
16. The method of claim 10, wherein the system design further comprises an indication of materials to be used in constructing the product,
17. The method of claim 10, wherein the system design further comprises an indication of volumes to be used in constructing the product.
18. The method of claim 10, wherein the system design further comprises an indication of shapes to be used in constructing the product.
19. A computer system comprising one or more processors and a non-volatile memory, wherein the non-volatile memory stores instructions that, when executed by the one or more processors, cause the one or more processors to perform a method comprising:
receiving a system design comprising a functional specification of a product;
generating a digital twin graph representative of the system design;
applying a machine learning model to the digital twin graph to identify a listing of functional traits provided by the system design;
applying a classifier to the listing of functional traits to generate an updated listing of functional traits comprising a measurement for each functional trait indicating the degree to which the functional trait is beneficial to the system design; and
presenting the updated listing of functional traits to a user.
PCT/US2018/047024 2017-11-27 2018-08-20 Automatically identifying alternative functional capabilities of designed artifacts WO2019103773A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762590683P 2017-11-27 2017-11-27
US62/590,683 2017-11-27

Publications (1)

Publication Number Publication Date
WO2019103773A1 true WO2019103773A1 (en) 2019-05-31

Family

ID=63668000

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2018/047024 WO2019103773A1 (en) 2017-11-27 2018-08-20 Automatically identifying alternative functional capabilities of designed artifacts

Country Status (1)

Country Link
WO (1) WO2019103773A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112084569A (en) * 2019-06-14 2020-12-15 通用电气公司 Additive manufacturing coupled digital twin ecosystem based on multivariable distribution model of performance
EP3796109A1 (en) * 2019-09-18 2021-03-24 Siemens Aktiengesellschaft System, apparatus and method for predicting attributes of an asset

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017132134A1 (en) * 2016-01-25 2017-08-03 Siemens Product Lifecycle Management Software Inc. Methods and system to predict hand positions for multi-hand grasps of industrial objects

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017132134A1 (en) * 2016-01-25 2017-08-03 Siemens Product Lifecycle Management Software Inc. Methods and system to predict hand positions for multi-hand grasps of industrial objects

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JIN WENJING ET AL: "CPS-enabled worry-free industrial applications", 2017 PROGNOSTICS AND SYSTEM HEALTH MANAGEMENT CONFERENCE (PHM-HARBIN), IEEE, 9 July 2017 (2017-07-09), pages 1 - 7, XP033233544, DOI: 10.1109/PHM.2017.8079208 *
KAZI MASUDUL ALAM ET AL: "C2PS: A Digital Twin Architecture Reference Model for the Cloud-Based Cyber-Physical Systems", IEEE ACCESS, vol. 5, 13 March 2017 (2017-03-13), pages 2050 - 2062, XP055520614, DOI: 10.1109/ACCESS.2017.2657006 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112084569A (en) * 2019-06-14 2020-12-15 通用电气公司 Additive manufacturing coupled digital twin ecosystem based on multivariable distribution model of performance
EP3796109A1 (en) * 2019-09-18 2021-03-24 Siemens Aktiengesellschaft System, apparatus and method for predicting attributes of an asset
WO2021052777A1 (en) * 2019-09-18 2021-03-25 Siemens Aktiengesellschaft System, apparatus and method for predicting attributes of an asset

Similar Documents

Publication Publication Date Title
US20210342699A1 (en) Cooperative execution of a genetic algorithm with an efficient training algorithm for data-driven model creation
US20210034980A1 (en) Real-time visualization of machine learning models
US20190130277A1 (en) Ensembling of neural network models
US7266534B2 (en) System and method and product of manufacture for automated test generation via constraint satisfaction with duplicated sub-problems
US11397633B2 (en) Unifying semi-supervised approach for machine condition monitoring and fault diagnosis
JP7413392B2 (en) Computer model machine learning based on correlation of training data with performance trends
Fock Global sensitivity analysis approach for input selection and system identification purposes—A new framework for feedforward neural networks
CN108509324B (en) System and method for selecting computing platform
US11907821B2 (en) Population-based training of machine learning models
US11347864B2 (en) Ace: assurance, composed and explained
JPWO2017159638A1 (en) Capability grant data generator
JP6187977B2 (en) Analysis device, analysis method, and program
WO2019103773A1 (en) Automatically identifying alternative functional capabilities of designed artifacts
US20190005169A1 (en) Dynamic Design of Complex System-of-Systems for Planning and Adaptation to Unplanned Scenarios
Huegle et al. MPCSL-a modular pipeline for causal structure learning
KR102054500B1 (en) Method for providing design drawing
JP4994199B2 (en) Machine learning apparatus and machine learning method
JP2020190959A (en) Model generation device, system, parameter computation device, model generation method, parameter computation method, and program
EP3968202A1 (en) Customizable reinforcement of learning column placement in structural design
US20080140364A1 (en) Computer Program Product & Computer with Program to Execute a Well-Posed Mathematical Method
WO2020218246A1 (en) Optimization device, optimization method, and program
JP2015114987A (en) Processing device, processing method, and program
WO2019103775A1 (en) Method and apparatus for automated suggestion of additional sensors or inputs from equipment or systems
JP5633961B2 (en) Simulation system, method and program
Ackermann et al. Principal component analysis for detection of globally important input parameters in nonlinear finite element analysis

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18773676

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18773676

Country of ref document: EP

Kind code of ref document: A1