Systems and methods for neural network-based behavior determination of physical object
The system addresses the challenge of predicting 3D object behavior by integrating 3D shape and finite element solver learning, using neural networks to efficiently determine object behavior without repetitive physics simulations, applicable in engineering and virtual reality.
Patent Information
- Application Number
- JP2025075434
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-30
- Filing Date
- 2025-04-30
- Publication Date
- 2025-11-12
AI Technical Summary
Existing computer-based systems face challenges in accurately and efficiently determining the behavior of 3D objects with complex material properties and interactions, often requiring pre-labeled parameters and repetitive computationally expensive physics calculations.
The system integrates 3D shape learning and finite element solver learning to build graph/multigraph representations, leveraging past physics-based simulation data for efficient prediction of object behavior using neural networks, including recurrent architectures and operators.
This approach enables rapid and accurate prediction of 3D object behavior, reducing the need for repetitive physics-based simulations and supporting applications in engineering, computer games, and virtual reality.
Smart Images

Figure 2025169228000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a system and method for neural network-based behavior determination of physical objects. [Background technology]
[0002] Many existing products and simulation systems are available on the market for designing and simulating objects, such as vehicles. These systems typically employ computer-aided design (CAD) and computer-aided engineering (CAE) programs. These systems allow users to build, manipulate, and simulate complex three-dimensional models of objects or assemblies of objects. These CAD and CAE systems provide model representations of objects, such as real-world objects, using edges or lines, and in certain cases, edges or lines with faces. The lines, edges, faces, or polygons may be represented in various ways, such as, for example, non-uniform rational B-splines (NURBS).
[0003] These systems manage the parts or assembly of parts of the modeled object, primarily the specification of the shape. In particular, a CAD file contains the specifications from which the shape is generated. From the shape, a three-dimensional (3D) CAD model or model representation is generated.
[0004] The advent of CAD and CAE systems has enabled a wide range of representation possibilities for objects. Exemplary computer-based models used by CAD and CAE systems include CAD models and finite element (FE) models (i.e., meshes). Computer-based models may be programmed to have the properties (e.g., based on physical, material, or other physics) of the underlying real-world object they represent. Exemplary properties include stiffness (ratio of force to displacement), plasticity (irreversible strain), and viscosity (resistance to flow of one layer over an adjacent layer), among other examples. When a CAD model or other such computer-based model known in the art is programmed in such a manner, it can be used to perform a simulation of the object it represents. For example, a mesh-based model can be used to represent the interior cavity of a vehicle, an acoustic fluid surrounding a structure, or any number of real-world objects. Furthermore, CAD and CAE systems, along with computer-based models, can be utilized to simulate real-world physical systems, e.g., engineering systems such as automobiles, airplanes, buildings, and bridges, among other examples. Furthermore, CAE systems can be used to simulate any variety and combination of the behavior of these physics-based systems, such as noise and vibration. [Prior art documents] [Non-patent literature]
[0005] [Non-Patent Document 1] Ferguson, K., et al., “Scalar field prediction on topologically-varying graphs using spectral shape encoding,” International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, Vol. 86229, American Society of Mechanical Engineers, 2022. [Non-patent document 2] Mozaffar, M., et al., “Geometry-agnostic data-driven thermal modeling of additive manufacturing processes using graph neural networks,” Additive Manufacturing 48(2021):102449. [Non-patent document 3] Choi, Y., et al., “Graph neural network-based surrogate model for granular flows,” Computers and Geotechnics 166 (2024):106015. [Non-patent document 4] Gladstone, RJ, et al., “Mesh-based GNN surrogates for time-independent PDEs,” Scientific Reports 14.1(2024):3394. [Non-patent document 5] Pfaff, T., et al., “Learning mesh-based simulation with graph networks,” International Conference on Learning Representations, 2020. Summary of the Invention
[0006] A technical problem in existing computer-based systems that determine object behavior, e.g., FE systems, is how to learn the shape of a 3D object using techniques that are generalizable to a variety of physics problems involving complex material properties and interactions. Another technical problem in conventional systems is, for example, how to avoid using pre-labeled parameters, which may lack the necessary information to fit new geometric features. Yet another technical problem in conventional systems is how to leverage past physics-based data in machine learning (ML) solutions without repeatedly performing computationally expensive physics calculations. Past implementations for determining object behavior have not addressed these challenges. Therefore, there is a need for functionality with improved accuracy, flexibility, and efficiency. Embodiments provide such functionality.
[0007] Embodiments are discussed herein in the context of FE solutions as a source of data for training purposes to specifically illustrate how example embodiments work. However, embodiments may be implemented using simulation data derived from any other simulation technique, including, but not limited to, finite volume, lattice Boltzmann methods, statistical energy analysis methods, etc. These techniques may be collectively referred to as conventional numerical methods (TNM).
[0008] Embodiments integrate information learned from, for example, (a) a pre-existing 3D shape of a design (e.g., a design similar to the object whose behavior is to be determined); (b) a computer-based, e.g., finite element, model, architecture, including, but not limited to, nodes, element topological connectivity, boundary conditions, loading conditions, material properties, constraints, and / or contact interactions; and (c) a simulation, e.g., finite element, solution, and physics results at specific locations in space and specific time instances. Embodiments may then build a graph / multi-graph representation of the same design via 3D graphs, sequences, parts, and / or assemblies. Embodiments learn from local and global FE model mesh-based results and physics understanding data to predict physics understanding for new designs represented by mesh discretizations in a fraction of the time compared to traditional FE analysis.
[0009] Among other features, embodiments are distinct from anything else in the literature and public domain in that they integrate 3D shape learning and FE solver learning. Furthermore, embodiments leverage existing FE model architectures used to solve industrial multiphysics multiscale problems to build detailed 3D model representations, 3D graphs, time series, specific descriptions of industrial models, and / or specific features to construct graph / multigraph representations. Embodiments also provide models that are continuously trainable and transferably trainable given new geometry, material properties, and / or loading conditions, etc., and model inputs.
[0010] Training generalizable ML models based on past physics-based simulation data requires more advanced ML techniques. Embodiments provide such functionality. Embodiments may utilize information from previously existing designs and / or detailed information about the associated physics that exists from past realistic industrial simulations, and may also consider modeling techniques, such as all modeling techniques, included in the physics-based model, e.g., contact conditions, boundary conditions, constraints, and / or other special features. Subsequent evaluations of novel but similar design solutions can be generated without the need to re-run numerous computationally expensive traditional physics-based solvers.
[0011] Embodiments solve the problems of existing approaches and provide modern ML techniques to understand 3D geometric designs and predict FE solutions much more quickly than performing real physics-based simulations.
[0012] Additionally, embodiments may generate virtual simulations of physical objects for use in, for example, computer games, engineering systems, product design (such as conceptual or detailed design), performance evaluation, safety evaluation, virtual reality systems, augmented reality systems, and computer augmentation.
[0013] Embodiments may use features of TNM or physics-based solver models in the graphical representation.
[0014] Additionally, embodiments may utilize known geometric parameters, such as morphing at different levels, latent parameters, and shape descriptors, or non-geometric parameters.
[0015] Embodiments may employ recurrent architectures with neighborhood aggregation, pooling (e.g., of different types), and / or flexible use of processing techniques / models such as recurrent neural networks (RNNs), transformers, and operators.
[0016] Additionally, embodiments can generate multi-graph representations for assemblies of connected, constrained, separated, or touched parts.
[0017] Embodiments can create sequence representations with time-dependent attributes.
[0018] Additionally, some embodiments relate to simulations.
[0019] Some embodiments may utilize a combination of different neural network architectures to enable effective and efficient model training using 3D graph representations as initial neural network input.
[0020] An exemplary embodiment is directed to a computer-implemented method for neural network-based behavior determination of a physical object. The method begins by processing a 3D numerical model representing the physical object to extract (i) 3D geometric data and (ii) simulation data associated with the physical object. The method then converts the extracted 3D geometric data and simulation data into a 3D multigraph. The 3D multigraph is then processed with one or more deep neural networks (DNNs) and one or more operators to determine behavior, such as any physics-based behavior (which may be referred to as key performance indicators (KPIs)), such as deformation, distortion, stress, strain, reaction forces, and time-dependent forces of the physical object.
[0021] In an exemplary embodiment, the 3D numerical model may represent an assembly made up of parts, connections between the parts, and interactions between the parts. According to one such embodiment, the assembly may be a vehicle, an aircraft, an antenna, a mitral valve, a structural system, a fluid system, an electromagnetic system, or an acoustic system, among other examples.
[0022] According to an example embodiment, the 3D numerical model may be a CAD model, a FE model, a finite volume model, a lattice Boltzmann model, a statistical energy analysis model, or a numerical model.
[0023] In an exemplary embodiment, the simulation data may include at least one of boundary conditions, excitation conditions, interaction conditions, physical quantities, and results from one or more numerical methods.
[0024] According to an example embodiment, converting the extracted 3D geometric data and simulation data into a 3D multigraph may include (1) determining at least one of a sequence representation and a connection representation associated with the 3D numerical method model, and (2) representing the determined at least one sequence representation and a connection representation in the 3D multigraph.
[0025] Exemplary embodiments may further include (1) acquiring at least one model parameter and (2) including a representation of the acquired at least one model parameter in a 3D multigraph. According to one such embodiment, the acquired at least one model parameter may relate to a node level, a local level, or a multigraph level. In another such embodiment, the acquired at least one model parameter may include at least one of a CAD parameter, a morphing shape parameter, an encoded latent parameter, and a non-geometric parameter. According to yet another such embodiment, the non-geometric parameter may include at least one of a material indicator, a thickness indicator, an indication of load magnitude, an indication of load direction, an indication of load velocity, a sliding interaction condition, and a physical property.
[0026] According to example embodiments, the one or more operators may include at least one of a convolution operator, an aggregation operator, an encoding operator, a decoding operator, a transformer operator, a normalization operator, a concatenation operator, an Einstein reduction operator, a pooling operator, an unpooling operator, a dense pooling operator, a non-representational sparse pooling operator, an representational sparse pooling operator, and an operator network.
[0027] In example embodiments, the determined behavior of the physical object may include a respective local behavior solution for each of a plurality of subcomponents of the physical object. Such embodiments may further include assembling each respective local behavior solution using at least one of encoding, pooling, and regression to determine an overall behavior of the physical object.
[0028] According to an example embodiment, processing the 3D multigraph may include iteratively (i) determining a predicted solution for the behavior of the physical object using a current neural network and one or more current operators; (ii) comparing the determined predicted solution with a solution of a numerical solver to determine an error metric; and (iii) updating at least one of the one or more DNNs and one or more operators based on the determined error metric until the determined predicted solution satisfies at least one convergence criterion. The determined predicted solution that satisfies the at least one convergence criterion may be a determined behavior of the physical object. In a first iteration, the current neural network and the current one or more operators may be one or more DNNs and one or more operators. In a second iteration and subsequent iterations, the current neural network and the current one or more operators may be updated at least one of the one or more DNNs and one or more operators. In one such embodiment, the updating may include performing automatic differentiation.
[0029] In embodiments, the DNN may include any DNN known in the art. According to example embodiments, the one or more DNNs may include at least one of a feedforward neural network (FNN), a convolutional neural network (CNN), a graph neural network (GNN), an RNN, and a transformer neural network (TNN).
[0030] Another exemplary embodiment is directed to a computer-based system for neural network-based behavior determination of physical objects. The system includes a processor and a memory having computer code instructions stored thereon. The processor and memory are configured to use the computer code instructions to cause the system to implement any embodiment or combination of embodiments described herein.
[0031] Yet another embodiment is directed to a computer program product for neural network-based behavior determination of physical objects, the computer program product including a non-transitory computer-readable medium having stored thereon computer code instructions that, when executed by a processor, are configured to cause a device associated with the processor to implement any embodiment or combination of embodiments described herein.
[0032] It should be noted that the methods, systems, and computer program product embodiments may be configured to implement any embodiment or combination of embodiments described herein. [Brief explanation of the drawings]
[0033] The foregoing will be apparent from the following more particular description of exemplary embodiments, as illustrated in the accompanying drawings, in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating embodiments.
[0034] [Figure 1] 1 is a flowchart of a method for 3D discretization-based TNM learning from historical data, according to an example embodiment. [Figure 2] FIG. 1 illustrates an exemplary TNM model, according to one embodiment. [Figure 3] FIG. 2 illustrates an exemplary multi-graph representation, according to one embodiment. [Figure 4] FIG. 10 illustrates an example of a multi-graph representation according to another embodiment. [Figure 5] 1A, 1B, and 1C are diagrams illustrating examples of graphical representations of 3D shapes, respectively, according to one embodiment. [Figure 6] 5A and 5B are exemplary visualization enlargements showing node and edge representations, respectively, of the 3D shape of FIG. 5A, according to one embodiment. [Figure 7] FIG. 2 illustrates an exemplary FNN, according to one embodiment. [Figure 8] FIG. 1 illustrates an exemplary graph processor for a GNN, according to one embodiment. [Figure 9] FIG. 1 illustrates an exemplary Graph U-Net architecture for a GNN, according to one embodiment. [Figure 10] 1A, 1B, and 1C illustrate examples of learning local geometric features and embeddings, respectively, with neural network and operator layers, according to one embodiment. [Figure 11] 5A and 5B show neural network prediction and FE analysis, respectively, of 3D deformation for the test geometry of FIG. 5B, according to one embodiment. [Figure 12A] FIG. 1 illustrates an exemplary automotive crash box design, according to one embodiment. [Figure 12B] 12B illustrates an exemplary deformed configuration of the crash structure in FIG. 12A after axial impact, according to one embodiment. [Figure 12C] 12B is a plot showing the 3D displacement field of the shock train in FIG. 12A after dynamic impact, according to one embodiment. [Figure 12D]12B is a plot showing the 3D displacement field of the shock train in FIG. 12A after dynamic impact, according to one embodiment. [Figure 13] 10 is an exemplary plot comparing TNM reaction force history solutions with neural network predictions, according to one embodiment. [Figure 14] FIG. 1 illustrates an example of a multiphysics hemodynamic simulation model of the mitral valve, according to one embodiment. [Figure 15] 15A and 15B show neural network predictions and co-simulation results, respectively, of the 3D deformation of the leaflets of the mitral valve model of FIG. 14 in a closed state, according to one embodiment. [Figure 16] 1 is an illustration of a flowchart of a method for neural network-based behavior determination of a physical object in accordance with an illustrative embodiment; [Figure 17] 1 is a schematic diagram of a computer network in which embodiments may be implemented; [Figure 18] 18 is a block diagram illustrating an exemplary embodiment of a computer node in the computer network of FIG. 17. DETAILED DESCRIPTION OF THE INVENTION
[0035] A description of an exemplary embodiment follows.
[0036] In one embodiment, an "operator" as used herein may refer to a specific design of a fixed or trainable mathematical function or neural network, a portion of a particular neural network type, or a combination of different types of neural networks. According to another embodiment, an operator may be used to (i) determine the nodes in a node's neighborhood, (ii) aggregate neighborhood information to the current local node / neighborhood, (iii) determine the importance between neighbors / neighbors, (iv) encode information, for example, through a nonlinear transformation, (v) decode information into a physical result field, and / or (vi) pool local / non-local information from the node level to a higher level.
[0037] According to one embodiment, as used herein, a "multigraph" may refer to a collection of subgraphs that represent parts in an assembly that are logically connected but have different properties. For example, an antenna assembly may include metal components joined (e.g., in a "Z" shape) with panels made from plastic. In one embodiment, types of edges in a multigraph may include, for non-limiting examples, "real" edges of continuous material, "tie" edges of parts in the assembly that move together, and "contact" edges of parts that touch each other.
[0038] Many existing approaches attempt to use ML techniques to simulate objects, e.g., determine object behavior. These approaches may employ ML surrogate models that are trained using results obtained from traditional physics-based solver techniques. The overwhelming interest in industry is to use historical simulation data that exists within any company, collected over many years from the design of similar products, e.g., automobiles.
[0039] However, most successful existing approaches rely on parametric descriptions of the geometric shapes to be solved and corresponding physics-based traditional solver data, such as finite elements, finite volumes, etc. While these approaches can be useful for accelerating the parametric design process, they are limited to using geometric design data with a small number of consistent geometric parameters. Furthermore, in traditional approaches, design and simulation data with inconsistent or unknown geometric design parameters cannot be used for training, and ML models are limited in their applicability.
[0040] Some conventional approaches focus on addressing the above problems by using specific types of neural networks, such as CNNs or GNNs, with preprocessed / designed local / global features. One existing technique uses CNNs to extract local features, while spectral decomposition is used to extract global features. Another conventional technique uses deep graph CNNs (DGCNNs), which rely on human-designed local input features, such as element occurrence flags and timing, layer height to boundary, and distance to laser, to learn from additive manufacturing process simulations.
[0041] Many conventional approaches also focus on two-dimensional (2D) problems consisting of a single part with a uniform material, while some existing techniques also train 3D problems with very limited scope. One conventional approach employs a graph convolutional network (GCN) architecture with smoothing and skip connections to train computational fluid dynamics (CFD) laminar flows for approximately 2,000 random 2D shapes. Another conventional approach uses a GCN to train powder flow dynamics in 2D. One of our current research projects is studying the effects of edge augmentation and graph coarsening on 2D static problems. Existing techniques employ graph networks on a time-rolling basis to train 3D physics-based simulations, but limitations in time integration, mesh and contact physics reconstruction, and cumulative error make these techniques difficult to generalize to a variety of physics problems with complex material properties and interactions.
[0042] The overwhelming interest in existing industrial practice is in 3D applications. However, the majority of current research projects are highly 2D limited and rely on pre-processing / design local / global features that cannot be generalized to different physical phenomena or add complexity to the model in terms of geometric parts and assemblies.
[0043] Another existing approach to data-based physics-enabled design exploration utilizes pre-labeled parameters in the form of CAD parameters or morphing parameters. These parameters serve as local or global shape descriptors and can be used as input features to neural networks for surrogate learning. However, these parameterized and morphed forms may have certain limitations when dealing with specific boundary / loading conditions and historical data sets. When there are variations in excitation position / direction / magnitude, the pre-labeled / manipulated parameters may not contain the information necessary to describe the local excitation environment and neighborhood conditions. Furthermore, in the case of new geometric variations or new conceptual designs, the pre-labeled parameters may not contain the information necessary to fit the new geometric features.
[0044] Embodiments provide an advanced approach that can learn from any desired 3D discretization, e.g., mesh, tessellation, CAD model, or other computer-based representation, and comprehensive TNM modeling features from historical data without pre-labeled geometric parameters, which may optionally include known CAD, morphed, or coded latent parameters, locally or globally, at different model levels and non-geometric parameters.
[0045] FIG. 1 is a flowchart of a method 100 for training a neural network model by learning from 3D discretization and past TNM modeling data, according to one embodiment.
[0046] In step 101, TNM model information, e.g., FE model information for any desired number of parts and / or products recorded in a TNM model (e.g., 200 (FIG. 2)), is obtained and processed to extract geometry, mesh, boundary conditions, and / or excitations, among other examples. In one embodiment, the TNM model information obtained in step 101 may include, by way of non-limiting example, node and element definitions, node set and element set definitions, material assignments, section characteristics such as constraints and connections, boundary conditions and excitations, and model physics and output requirements. According to another embodiment, a TNM model may typically include model data and result data.
[0047] In step 102, the relevant processed TNM model information, e.g., FE model information, obtained in step 101 is converted into a corresponding 3D multi-graph model, sequence, and / or connection representation (e.g., 300 (FIG. 3)) or 400 (FIG. 4) form. In an embodiment, the TNM model architecture, e.g., FE model architecture, obtained in step 101 may be maintained as needed to apply TNM model features. Optionally, in step 108, if model parameters are available in the form of CAD parameters, morphing parameters, encoded latent parameters, and non-geometric parameters such as material selection or load magnitude, the model parameters may be added locally or at different model levels for neighborhood reinforcement surrogate learning compared to the default data-driven approach.
[0048] In one embodiment, the graph / multigraph representation (e.g., 300 (FIG. 3) or 400 (FIG. 4)) constructed in step 102 may include the TNM model data and result data obtained in step 101. According to another embodiment, the graph / multigraph representation may represent the same 3D shape as the TNM model, but may contain only the necessary TNM model and result information converted into a different data format suitable for training a neural network. In one embodiment, the graph / multigraph representation may also include enriched or extended neural network specific data to suit the design of a particular neural network model.
[0049] In step 103, a neural network, e.g., a DNN, and different types of operators, as well as combinations thereof, are applied to process the localization model representation and generate a localization prediction or solution according to the function and nature of the feature data. In one embodiment, neighborhood information may be considered via a neighborhood set. For example, the neighborhood of a graph node may be determined by element / edge connections with the node or by an attention operator that assigns a higher level of relevance to specific neighbors of the node. According to another embodiment, neighborhoods may be spatially close to the node (e.g., a single edge or "hop") or may be in the far-field (e.g., multiple edges or hops). In one embodiment, the DNN and different types of operators may encode local information into a local object understanding field while taking neighborhood information into account.
[0050] In step 104, the local predictions or local solutions generated in step 103 are assembled to form a global solution through specialized encoding, pooling (e.g., graph pooling), and / or regression techniques. In one embodiment, a regression model or technique may involve a process of modeling and predicting a continuous or continuous-like output variable given one or more input variables. The regression technique may be, for non-limiting examples, linear regression, polynomial regression, Gaussian process regression, or neural network regression.
[0051] In step 105, the neural network model predicted local solution field and / or global solution generated in step 104 is compared to the TNM solver solution from applying the TNM model features to the model architecture in step 102, and an error or model loss is calculated. The method 100 is iterated 106 until a model convergence criterion is met. The iteration 106 includes performing automatic differentiation and updating in step 107 on the neural network and operators utilized in step 103 using the model loss calculated in step 105.
[0052] In one embodiment, as an illustrative example of the TNM model information obtained in step 101 of method 100, the Abaqus® output database (“.odb” file) object model may include a container and / or a single object that describes both model data and results data. The TNM model may be a single part or an assembly of connected / disconnected parts. The TNM model data, such as node definitions, element definitions, parts, sections, material definitions, and results data (e.g., 3D field data and historical / sensor data), may be stored in a container within the Abaqus® output database object model. The TNM model information used to train the neural network can be accessed from the Abaqus® .odb file and converted into a graph dataset.
[0053] According to another embodiment, as a further illustrative example, an Abaqus® model may include node definitions such as: NID_1, X_1, Y_1, Z_1 … NID_100, X_100, Y_100, Z_100 is.
[0054] The above exemplary node definitions may be defined, for example, in a model (.cae) file or a text input (.inp) file, where fields such as NID_1 are customizable / specifiable node IDs (NIDs) and fields such as X_1 / Y_1 / Z_1 are node positions / coordinates, which may be preprocessed, for example, by Abaqus® Pre and saved in a model object (.odb) file.
[0055] In one embodiment, the graph representation may use normalized node coordinates and may not support NID customization / specification. For example, the graph representation may instead use tensor row numbers to identify specific nodes (e.g., as saved in a text or binary file) at step 102 of method 100, as follows: Normalization X_1, Normalization Y_1, Normalization Z_1 … Normalization X_100, Normalization Y_100, Normalization Z_100 is.
[0056] Therefore, any NID skipping, NID renumbering, and / or use of non-increasing NID ordering in the TNM model (e.g., Abaqus® .odb file) may be renumbered in the graphical representation in step 102 of method 100.
[0057] 2 is an example of a TNM model 200, e.g., an Abaqus® model, according to one embodiment. As shown in FIG. 2, the TNM model 200 may include element definitions for EID_1 with nodes NID_1, NID_2, NID_3, NID_4, and for EID_2 with nodes NID_4, NID_3, NID_5, NID_6, where EID_1 and EID_2 are customizable / specifiable element IDs (EIDs) and NID_1, NID_2, NID_3, NID_4, NID_5, NID_6 are customizable / specifiable NIDs.
[0058] In one embodiment, as yet another illustrative example of the TNM model information obtained in step 101 of method 100, a model object (.odb) file may be used to store the element definitions shown in FIG. 2 in the following format: EID_1, NID_1, NID_2, NID_3, NID_4 EID_2, NID_4, NID_3, NID_5, NID_6 … is.
[0059] According to one embodiment, the graph representation may use directed / undirected edge definitions and may not support EID customization / specification. For example, the graph representation may instead represent the same elements as shown in FIG. 2 using undirected graph edge tensors (e.g., stored as rows / columns in a text or binary file) in step 102 of method 100 as follows: NID_1, NID_2, NID_2, NID_3, NID_3, NID_4, NID_4, NID_1, NID_3, NID_5, NID_5, NID_6, NID_6, NID_4 NID_2, NID_1, NID_3, NID_2, NID_4, NID_3, NID_1, NID_4, NID_5, NID_3, NID_6, NID_5, NID_4, NID_6 … is.
[0060] In one embodiment, the two example element definitions EID_1 and EID_2 of FIG. 2 may be processed in step 102 of method 100 to construct an undirected graph and converted into the 14-column edge definition shown above. Each column of the edge tensor above may represent the start or end node of one directed edge. For example, in the first row, the edges may be (NID_1, NID_2), (NID_2, NID_3), (NID_3, NID_4), (NID_4, NID_1), (NID_3, NID_5), (NID_5, NID_6), and (NID_6, NID_4). According to another embodiment, because the NIDs may not be customizable, as discussed herein above, the NIDs may be renumbered in step 102 of method 100 to match the row numbering of the node feature tensor.
[0061] According to one embodiment, the node feature tensor constructed in step 102 of method 100 may include normalized node coordinates and any other relevant model information at the node level. For example, the node feature tensor constructed in step 102 of method 100 may include boundary and load conditions, and material properties in the following format (e.g., stored in a text or binary file): Normalized X_1, Normalized Y_1, Normalized Z_1, Boundary_1, Load_1, Thickness_1 … Normalized X_100, Normalized Y_100, Normalized Z_100, Boundary_100, Load_100, Thickness_100 is.
[0062] In one embodiment, the TNM result information obtained in step 101 of method 100 may be stored (e.g., in a text or binary file) in a separate tensor of a graphical representation in the following exemplary format: Displacement X_1, displacement Y_1, displacement Z_1 … Displacement X_100, Displacement Y_100, Displacement Z_100 There is.
[0063] Figure 3 is an example multi-graph representation 300, according to one embodiment. As shown in Figure 3, the multi-graph representation 300 includes an assembly of two contacting / constraining parts 342a and 342b. In one embodiment, contact / constraint edge types 344a-344n can be established between parts 342a and 342b based on a contact / constraint definition (not shown).
[0064] According to one embodiment, a multi-graph (e.g., 300) may be constructed in step 102 of method 100 to represent constrained / connected / disconnected parts (e.g., 342a and 342b). For example, one sub-graph (e.g., 342a) may represent part 1, and another sub-graph (e.g., 342b) may represent part 2. In another embodiment, node and / or edge properties may vary between parts (e.g., 342a and 342b). According to one embodiment, static edge connections and / or properties may be defined based on constraint definitions. In another embodiment, dynamic edge connections and / or properties may be assigned and / or updated based on contact detection and / or contact stiffness calculations.
[0065] 4 is an exemplary multi-graph representation 400 according to another embodiment. As shown in FIG. 4, the multi-graph representation 400 may be divided into four sub-graphs 442a-442d. In one embodiment, the sub-graphs 442a-442d may be used for attention training to find more influential neighbors / sub-graphs. According to another embodiment, the sub-graphs 442a-442d may also or alternatively be used for training in parallel, for example, on four respective graphics processing unit (GPU) cores.
[0066] In one embodiment, a computer program may be written to automate the process of reading the TNM model and result data (e.g., 200 (FIG. 2)) in step 101 of method 100, process the necessary data, and transform the data in step 102 of method 100 to form a graph / multigraph dataset (e.g., 300 (FIG. 3) or 400 (FIG. 4)) ready for storage and / or neural network training.
[0067] 5A-5C, 6A, and 6B, described below, show exemplary 3D shapes and their graphical representations according to embodiments.
[0068] 5A-5C illustrate exemplary graph representations of bottle 3D shapes 500a-500c, respectively, according to an embodiment. For illustrative purposes, FIGS. 5A-5C illustrate a spatial visualization of node locations, elements, and edge connections of the exemplary 3D shapes 500a-500c, but do not depict representations of all other features, such as preloads, boundary and loading conditions, material properties (such as thickness), contact conditions, and local and / or global physical information. In one embodiment, shapes 500a-500c may be a 3D representation of a TNM model, e.g., 200 (FIG. 2). According to another embodiment, the model may include multiple elements of bottle shape 500a, e.g., cap 594a and body 594b, each having a different material. A further example of this is a car constructed of different materials, such as metal and plastic, joined together with constraints, such as spot welds, adhesives, bolts, and / or rivets. In one embodiment, element sets or sections may be used to represent different materials within an assembly of parts.
[0069] 6A is an exemplary visualization of a small portion of node and edge representation 600a of 3D shape 500a of FIG. 5A, according to one embodiment. In one embodiment, as shown in FIG. 6A, a 3D graph representation of a shape may include node and edge representations, e.g., 600a. According to another embodiment, nodes, e.g., 16912, 16913, 16648, and 16649, may represent a set of 3D point clouds on the surface of the exemplary shape, e.g., 600a. In one embodiment, edges, e.g., 602a-602d, may connect the nodes or points, thereby forming elements for each smallest patch, e.g., 604.
[0070] 6B is an exemplary visualization close-up of a small portion of an optional element representation of the 3D shape 500a of FIG. 5A, according to one embodiment. In one embodiment, as shown in FIG. 6B, the 3D graph representation of the shape may optionally include element representations, e.g., 600b. According to another embodiment, the elements may be three-node, e.g., 16631, or four-node, e.g., 16202, for a 3D surface representation. In one embodiment, for other applications, examples may include four-node or eight-node elements for a 3D solid representation (not shown).
[0071] According to one embodiment, the graph representations, e.g., 500a-500c, may be unstructured, meaning that any desired topology may be encompassed with any suitable number of nodes and / or elements.
[0072] In one embodiment, nodes may be associated with node attributes and / or properties such as, for example, for non-limiting examples, in the data structure and memory, such as local node coordinates, boundary conditions, and / or load conditions. According to another embodiment, edges may also be associated with properties such as, for example, for non-limiting examples, in the data structure and memory, such as edge attributes and / or local edge type and / or edge length. Optionally, in one embodiment, elements and / or numerical integration points may also be associated with integration point attributes and / or properties such as, for example, for non-limiting examples, local material properties and / or material orientation. Optionally, according to another embodiment, node and edge attributes and / or properties may include, for non-limiting examples, shape descriptors in the form of CAD parameters, morphing parameters, and / or encoded local / global latent parameters.
[0073] According to one embodiment, graph / multigraph representations, e.g., 500a-500c, can be created with connections modeled via different types of edges, e.g., ties and spot welds, associated with contacts that are associated with specific properties, e.g., spring stiffness or contact pressure.
[0074] In one embodiment, model representations may be connected or disconnected. For example, connected models may represent connected parts and assemblies. Disconnected models may represent separated parts and structures.
[0075] According to one embodiment, sequence representations can be created with time-dependent attributes. For example, time-dependent node transformations for a dynamics problem can be represented as sequence data and associated with particular nodes, for example, in a data structure and memory. Any desired load history can also be represented as sequence data.
[0076] Figure 7 illustrates an exemplary FNN 700, according to one embodiment. As shown in Figure 7, the FNN 700 may include an input layer 706, one or more hidden layers 708a-708h, and an output layer 712.
[0077] In one embodiment, a graph / multigraph representation stored or serialized in a text file (e.g., a binary file or other suitable known file format) may be used as input to the FNN 700. For example, the binary file may contain one or more matrices (e.g., PyTorch® tensors) including matrices of node x / y / z coordinates and node features, e.g., material properties, boundaries, etc. The x, y, and z coordinates of each node in the text file may be processed by inputs 796a, 796b, and 796c, respectively, of layer 706, while the node features may be processed by input 796d. According to another embodiment, the binary file may also contain matrices of edge properties, such as length and x / y / z projections. The edge properties may be processed, for example, by a second neural network (not shown), and the results of the processing may be merged with the output 712 of the FNN 700.
[0078] According to one embodiment, the hidden layer in the FNN
[0079]
number
[0080] For example, the equations for the outputs of 708b-708h may have the following exemplary form:
[0081]
number
[0082] However, -σ is the activation function, -W T is the transposed weight matrix, -b is the bias matrix.
[0083] FIG. 8 illustrates an exemplary graph processor 800 for a GNN, according to one embodiment.
[0084] FIG. 8 illustrates an example of processing a graph representation 878. In FIG. 8, the top diagram illustrates an exemplary node feature processor 846, and the bottom diagram illustrates an exemplary edge feature processor 848. The circles / points in FIG. 8, e.g., 874a-874e, represent nodes. The lines in FIG. 8, e.g., 876a-876g, represent edges. In one embodiment, the starting graph 878 may be the result of transforming TNM model data, e.g., nodes, elements, and properties, in step 102 of method 100. To proceed, an encoder block 852 of the node feature processor 846 may encode physics features 882, e.g., node coordinates, node curvature, thickness, stiffness, boundaries, and loading conditions, at the node level into a transformed space (not shown) of a desired number of dimensions. For example, block 852 may encode the preceding original features into a latent feature space with many more dimensions. In block 852, a node, for example, circle / point 874a, may not have information from any other node in graph 878.
[0085] Continuing with FIG. 8 , in subsequent message passing block 856, each node, e.g., 874a, may receive and aggregate information from neighboring nodes, e.g., 874b-874e, such as by averaging the values of neighboring nodes 874b-874e and adding the averaged value with the value of node 874a. According to one embodiment, neighboring nodes 874b-874e may initially be selected via predefined edge connections. In another embodiment, neighboring nodes 874b-874e may be updated based on predefined criteria, such as the most influential features, e.g., top-k pooling, or based on trained attention scores, e.g., via a graph attention layer. According to one embodiment, as more graph processing layers are added, neighboring nodes 874b-874e may be extended to further distant nodes (not shown) either by edge hopping or further iterations of updated edge connections via predefined criteria. After completion of block 856, a node, eg, circle / point 874a, may have gathered information from neighboring nodes in graph 878, eg, 874b-874e.
[0086] Continuing with FIG. 8 , after message passing block 856, decoder block 858 may nonlinearly convert the node information aggregated by block 856, e.g., at node 874a, into a local physics field (not shown). In one embodiment, residual connections 884 may be added to enable passing local information, such as thickness, time-dependent values, etc., of the original physics representation to decoder block 858 for more efficient training. Following block 858, integrator block 862 may integrate the local information from nodes 874a-874e, e.g., for subdomains partitioned by a circle 898 defined by a radius (not shown) from node 874a, to form a condensed subdomain and higher-level graph representation (not shown). Other types of subdomain decompositions are also suitable.
[0087] 8, in one embodiment, edge feature processor 848 may follow a similar procedure to node processor (e.g., 846), except that edge features 864 may be processed and / or updated instead of node features (e.g., 882). According to another embodiment, edge processing 848 may optionally include previously updated node features.
[0088] 9 illustrates an exemplary graph U-Net architecture 900 for a GNN, according to one embodiment. In one embodiment, the architecture 900 can be used to process features, such as node features 882 (FIG. 8), edge features 864 (FIG. 8), integral features, etc., from a local to a global level.
[0089] According to one embodiment, each of the arrows labeled 966a-966e in FIG. 9 represents a graph processor, e.g., 800 (FIG. 8). In another embodiment, starting from an original graph 978a, which may be converted from TNM model data in, for example, step 102 of method 100, at level 968a, graph processor 966a may be trained to output a hidden graph representation 978b (e.g., node features, edge features, integral features, etc.). According to one embodiment, an operator 972a may be added to the hidden graph representations 978b to condense them into a higher-level graph representation 978c at level 968b. In another embodiment, operator 972a may be a predefined or trainable pooling operator (e.g., to obtain an average or averaging) or a predefined or trainable local integration operator. According to one embodiment, the aforementioned condensation process may proceed to operator 972b to extract a graph representation 978e at a higher level, e.g., 968c. In another embodiment, unpooling or interpolation, e.g., 972c or 972d, can be added to a condensed graph, e.g., 978f or 978h, to reconstruct a graph representation, e.g., 978g or 978i, at a base level, e.g., 968b or 968a. According to one embodiment, skip connections, e.g., 986a or 986b, can be added for passing information at the same level, e.g., 968a or 968b. In another embodiment, an attention layer (not shown) can be included in graph processors 966a-966e for neighborhood aggregation from local graph regions (not shown) that have a greater impact on the physics field (not shown).
[0090] In one embodiment, neural networks and / or operators may be applied on local patches of the mesh representation to learn local geometric features and / or embeddings, such as in step 103 of method 100. For example, an FNN, e.g., 700, may be applied to embed local input features. A GNN, e.g., 800 or 900, may be applied to learn embeddings for local geometric properties and neighborhood weights and boundary conditions. The GNN may aggregate and merge local solution fields into a higher-level or global embedding using graph pooling, e.g., 972a or 972b, such as in step 104 of method 100. An RNN and / or TNN may be applied to learn embeddings for sequence data.
[0091] According to one embodiment, a concise graph pooling operation, e.g., equation 972a or 972b, that may be applied by a GNN, e.g., in step 104 of method 100, may have the following exemplary form:
[0092]
number
[0093] However, -z u is the node embedding, -f n is any desired normalization function, -V is the set of nodes in the graph G.
[0094] According to one embodiment, a single-step graph message passing technique for a GNN, e.g., message passing block 856 of GNN 800, may utilize the following exemplary equation:
[0095]
number
[0096] However, -k is the number of message passing iterations, -
[0097]
number
[0098] is the embedding of node u at iteration k+1, −N(u) is the set of nodes v in the graph neighborhood of node u.
[0099] In one embodiment, the attention operator may be applied to neighborhood selection and message passing / aggregation.
[0100] According to another embodiment, the two-step graph message passing technique may utilize the following exemplary equation: -Aggregation:
[0101]
number
[0102] -update:
[0103]
number
[0104] However, -k is the number of message passing iterations, - Updates and aggregations can be any desired differentiable functions, -
[0105]
number
[0106] is the message aggregated from node u's graph neighborhood N(u), -Update message
[0107]
number
[0108] the previous iterative embedding
[0109]
number
[0110] Combine with.
[0111] In one embodiment, attention operators and / or other operators may be applied to neighbor selection and message passing / aggregation.
[0112] According to one embodiment, a gated recurrent unit type of an RNN may include the following exemplary equation:
[0113]
number
[0114] However, -x t is the input, -z t is the update gate, -r t is the reset gate, -
[0115]
number
[0116] is the candidate activation, -h t is the new hidden state.
[0117] In another embodiment, a long short-term memory (LSTM) type of RNN or TNN may be applied.
[0118] 10A-10C illustrate an example of learning local geometric features and embeddings of a local graph representation 1000 with additional neural network and operator layers, according to one embodiment. As shown in FIGURES 10A-10C, in one embodiment, the local geometric features and / or embeddings can be learned, for example, at step 103 of method 100, by considering neighborhood information for graph neighborhoods 1038a-1038c and messages aggregated (e.g., via the example graph message passing techniques described herein above) from the graph neighborhoods 1038a-1038c with additional neural network layers.
[0119] 10A-10C illustrate example neighborhood sets that may be implemented, for example, in step 103 of method 100, according to one embodiment. In FIG. 10A, neighborhood information for graph neighborhood 1038a may be considered. Next, in FIG. 10B, neighborhood information for graph neighborhood 1038b may be considered, which includes additional nodes neighboring neighborhood 1038a. Next, in FIG. 10C, neighborhood information for graph neighborhood 1038c may be considered, which includes additional nodes neighboring neighborhood 1038b.
[0120] According to another embodiment, Figures 10A-10C may depict a multi-scale graph and / or a coarser mesh overlaid on a finer mesh. In yet another embodiment, Figures 10A-10C may illustrate the use of attention operators to select particular neighborhoods, e.g., 1038a-1038c, e.g., as part of a graph attention layer.
[0121] In one embodiment, local embedding can be used to construct encoded local solution functions, e.g., at step 103 of method 100, which may finally be assembled to form a global solution, e.g., at step 104 of method 100. According to another embodiment, the neural network architecture can be defined to accommodate learning different physics features and equations by utilizing a multi-scale multi-physics TNM architecture with controlling physics conditions. For example, displacements can be local nodal quantities, forces can be quantities integrated over specific patches / surfaces, e.g., 1000, and loads can be distributed over local patches / surfaces, e.g., 1000, or can depend on contacts and constraints. In one embodiment, the neural network can learn about 3D shapes and their corresponding FE model features and physics conditions, as well as the corresponding FE solution. Given a new FE input model file, an exemplary embodiment can identify local and global characteristics and make predictions.
[0122] 11A and 11B show neural network prediction results 1100a and FE analysis results 1100b, respectively, of the 3D deformation of the test bottle shape 500b of FIG. 5B, according to one embodiment. Figures 11A and 11B show an example comparison between the neural network predicted X-displacement field 1100a (shown in shading) of an example embodiment and the actual FE analysis results 1100b (shown in shading) at the end of a buckling analysis on the test shape 500b. As shown in FIGS. 11A and 11B, a display 1188 indicates the x-, y-, and z-directions.
[0123] FIG. 12A illustrates an exemplary automobile crash member 1200 designed to deform and absorb impact energy, according to one embodiment.
[0124] Figure 12B illustrates an exemplary deformed configuration of crash structure 1200 after an axial impact, according to one embodiment. The shading in Figure 12B indicates the X-direction magnitude of the strain or deformation component.
[0125] FIG. 12B illustrates the deformation of the exemplary crash structure 1200 when impacted from the left by rigid wall 1214a while in contact with fixed rigid wall 1214b on the right. In one embodiment, contact interactions may be modeled between rigid walls 1214a and 1214b and the exemplary crash structure 1200, as well as between folding pieces 1216a-1216f of the crash structure 1200 itself. According to another embodiment, to evaluate the crash resistance of the structural design 1200, contact pressures may be collected between rigid walls 1214a or 1214b and edges 1218a or 1218b, respectively, of the crash structure 1200. As shown in FIG. 12B, a representation 1288 indicates the x, y, and z directions.
[0126] In one embodiment, to enable learning from a historical database, the example physics problem of Figure 12B may be modeled as three separate graphs with edges for material types and features, such as thickness of node connections within collision structure 1200 and contact features between rigid walls 1214a or 1214b and edges 1218a or 1218b, respectively, of collision structure 1200. According to another embodiment, boundary conditions and load conditions may be labeled as node features.
[0127] According to one embodiment, pooling may be performed to collect collision forces from nodes on the edge 1218a or 1218b of the collision structure 1200 where contact occurs in order to calculate the collision force / resistance.
[0128] 12C and 12D are plots showing the 3D displacement field of the impact train 1200 of FIG. 12A after dynamic impact, according to one embodiment.
[0129] FIG. 12C shows the FE analytical solution for the 3D deformation and contour plot of X displacement (U, U1) 1292a, according to one embodiment.
[0130] FIG. 12D shows a neural network solution for 3D deformation and contour plot of X displacement (ML, ML1) 1292b, according to one embodiment.
[0131] In one embodiment, after neural network training is performed and the trained neural network is used during inference, the neural network model can predict nodal level (e.g., nodal displacements, stresses, and strains), local level (e.g., contact reaction forces), and / or graph level (e.g., energy absorption) features. The predicted data can be processed for 3D visualization in a TNM solver / viewer, e.g., Abaqus / CAE.
[0132] For example, according to one embodiment, an Abaqus® output database (.odb file) object model may include a container and / or a single object that describes both model data and results data and can be edited to add external results fields and / or historical / sensor data. In another embodiment, a computer program may be written to automate this editing process, predict results, and write them to the TNM object model. A TNM solver / viewer, e.g., Abaqus / CAE, can then be used to visualize the neural network predictions, such as in FIG. 12D.
[0133] Figure 13 is an exemplary plot 1300 of a TNM reaction force history solution 1322 compared to a neural network predicted solution 1324, according to one embodiment. As shown in Figure 13, one embodiment compares the TNM crash force history 1322 in reaction force 1326 (units: Newtons (N)) versus time 1328 to the neural network predicted crash force history 1324 of a newly designed crash structure, e.g., 1200 (Figure 12A). Figure 13 reflects a good correlation between the TNM baseline results 1322 and the neural network predictions 1324 of the exemplary embodiment.
[0134] FIG. 14 illustrates an example of a multiphysics hemodynamic simulation model 1400 of the mitral valve, according to one embodiment.
[0135] As another example to illustrate TNM modeling features that may be utilized by embodiments, e.g., at step 102 of method 100, exemplary mitral valve multiphysics model 1400 may be trained via a multigraph to represent anterior leaflet 1432a and posterior leaflet 1432b with viscous hyperelastic properties and shared nodes, e.g., node sharing between 1432a and 1432b. In one embodiment, mitral valve chordae tendineae 1434a and 1434b may be modeled as having connector-type edges with hyperelastic properties. According to another embodiment, tie connections / edges may be defined to connect mitral valve 1436 and chordae tendineae 1434a and 1434b. In one embodiment, pressure history from a circulatory model may be used as a driving boundary condition to mitral valve model 1400. According to another embodiment, non-geometric parameters, such as material property parameters, papillary muscle position parameters, chordae length parameters, and other influencing parameters, may be added to the graph as node and / or edge features. In FIG. 14, shading may indicate different components 1432 a , 1432 b , 1434 a , and 1434 b of the model 1400 .
[0136] Optionally, in one embodiment, the multi-graph dataset may be divided into subgraphs and / or subdomains for parallel training with or without cross-subgraph / subdomain attention, and / or to fit within a processor, e.g., GPU, memory. According to one embodiment, local features, e.g., nodes and / or edges, on domain boundaries may be updated and used for neighborhood aggregation for cross-domain message passing.
[0137] Figures 15A and 15B show neural network predictions 1500a and co-simulation results 1500b, respectively, according to one embodiment, of the 3D deformation of the cusps 1432a and 1432b (Figure 14) of the mitral valve model 1400 of Figure 14 in the closed state. The shading in Figures 15A and 15B indicates the magnitude of the strain or deformation component in the x-direction. As shown in Figures 15A and 15B, a representation 1588 indicates the x-, y-, and z-directions.
[0138] 15A and 15B show an exemplary comparison between the neural network predicted leaflet closure 1500a of an exemplary embodiment and exemplary results 1500b from an actual co-simulation using, for example, Dymola® / Abaqus® for a test geometry. In one embodiment, non-geometric parameters including material properties, papillary muscle positions, chordae tendineae lengths, and other influencing parameters can be added in the multigraph as additional node and / or edge features.
[0139] Exemplary Method Embodiments 16 is a flowchart of a method 1600 for neural network-based behavior determination of a physical object, according to one embodiment. The method 1600 may be computer-implemented or performed using any computing device or combination of computing devices known to those skilled in the art, e.g., a processor.
[0140] Method 1600 begins at step 1601 by processing (i) 3D geometric data, e.g., 500a (FIG. 5A), 500b (FIG. 5B), or 500c (FIG. 5C), associated with a physical object and (ii) a 3D numerical model, e.g., 200 (FIG. 2), representing the physical object to extract simulation data. Next, at step 1602, method 1600 converts the extracted 3D geometric data and simulation data into a 3D multigraph, e.g., 300 (FIG. 3), 400 (FIG. 4), 878 (FIG. 8), or 978a (FIG. 9). In step 1603, the 3D multigraph is then processed by one or more DNNs, such as FNN 700 (FIG. 7), GNN 800 (FIG. 8), or GNN 900 (FIG. 9), and one or more operators, such as 972a-972d (FIG. 9), to determine the behavior of the physical objects.
[0141] As noted, method 1600 is computer-implemented, such that the functionality and efficient operations, e.g., processes (1601, 1603) and transforms (1602), may be implemented automatically by one or more digital processors. Method 1600 may also be implemented using any computer device or combination of computing devices known in the art. Among other embodiments, method 1600 may be implemented using computers / devices 50 and / or 60 described herein below in connection with Figures 17 and 18.
[0142] In an exemplary embodiment of method 1600, the 3D numerical model may represent an assembly comprised of multiple parts, connections between the multiple parts, and interactions between the multiple parts. According to one such embodiment, the assembly may be a vehicle, an aircraft, an antenna, a mitral valve, e.g., 1436 (FIG. 14), a structural system, a fluid system, an electromagnetic system, or an acoustic system. In another embodiment, the 3D numerical model may be processed in step 1601 of method 1600 in the manner described herein above with respect to obtaining TNM model information in step 101 of method 100 (FIG. 1).
[0143] According to an exemplary embodiment of method 1600, the 3D numerical model may be any computer-based model known to those skilled in the art. Among other examples, the numerical model may be a CAD model, a FE model, a finite volume model, a lattice Boltzmann model, a statistical energy analysis model, or a numerical model.
[0144] An exemplary embodiment of method 1600 includes generating a 3D numerical model prior to step 1601. In one embodiment, the numerical model represents a proposed design for a physical object, and the numerical model is created by an object designer according to principles known to those skilled in the art. In such an embodiment, method 1600 is used to determine the behavior of a physical object having the proposed design. Based on the results of such an embodiment, design changes may be identified and / or the design of the physical object may be optimized or validated according to criteria. The physical object may then be manufactured according to the optimized / validated design according to criteria.
[0145] In another embodiment, a numerical model is created prior to step 1601 to represent the real-world object, where the numerical model is generated by first taking measurements, for example, using one or more sensors on the real-world object itself. The measurements are then used to create a numerical model that represents the real-world object. In this manner, such an embodiment ultimately determines the behavior of the real-world object. The determined behavior can be used to determine design changes or improvements to the real-world object. For example, the numerical model may represent a real-world bridge that must handle an additional load. Method 1600 may determine the buckling behavior of the bridge in response to this new load and, based on the determined behavior, can identify a design change to enable the bridge to handle the additional load. This design change can then be implemented in the real world.
[0146] In an exemplary embodiment of method 1600, the simulation data extracted in step 1601 may include at least one of boundary conditions, excitation conditions, interaction conditions, physical quantities, and results from one or more numerical methods. According to another embodiment, the simulation data may be extracted from a corresponding simulation object via a physical simulation model object application programming interface (API). For example, a computer program may be written and used to access a physical simulation model object, such as 200 (FIG. 2). A physical simulation model database may be accessed to extract model descriptions, such as coordinate systems, node definitions, element formulations and definitions, node set and element set definitions, connection and constraint definitions, contact definitions, boundary conditions, and load conditions. Similarly, a results database may be accessed to extract physical simulation results, such as field outputs, such as displacement and stress / strain fields; history outputs, such as time-dependent reaction forces; frequency-dependent noise levels; sensor outputs, such as connector forces. The computer program can then convert the relevant information into a graph / multigraph representation, e.g., 300 (Figure 3), 400 (Figure 4), 878 (Figure 8), or 978a (Figure 9), and write them as a graph / multigraph dataset.
[0147] According to an exemplary embodiment of method 1600, converting the extracted 3D geometric data and simulation data into a 3D multigraph in step 1602 may include (1) determining at least one of a sequence representation and a connection representation associated with the 3D numerical model and (2) representing the determined at least one sequence representation and connection representation in a 3D multigraph. In another embodiment, a multigraph, e.g., a 3D multigraph, may be used to represent an assembly of connected / isolated / interacting physical objects in a physical system. For example, an automobile door assembly may include a door frame, interior panels, exterior panels, impact beams, and reinforcing rails joined together via spot welds, nuts and bolts, hinges, etc. The multigraph may model each part of the assembly as a subgraph with edge connections representing joint types, or may model each subdomain with connections based on domain boundaries. Additionally, the multigraph may represent a physical system of unconnected but interacting parts. For example, an automobile crash train, e.g., 1200 (FIG. 12A), may be designed as one single part, but may interact / contact with rigid barriers, e.g., 1214a and / or 1214b (FIG. 12B). A multigraph may model each part or object in such a physical system as a subgraph with edge connections representing the type of contact / interaction, or may model each subdomain with connections based on domain boundaries. In one embodiment, time / frequency-dependent model inputs (e.g., time-dependent environmental temperature conditions), time / frequency-dependent outputs (e.g., frequency-dependent noise levels), and / or subgraphs of the multigraph (e.g., a tree architecture of parts under an assembly) may be determined or utilized as sequence data or representations. According to another embodiment, the extracted 3D geometric data and simulation data may be converted to a 3D multigraph at step 1602 of method 1600, as described above, in connection with converting the processed TNM model information to a corresponding 3D graph / multigraph representation at step 102 of method 100.
[0148] In an exemplary embodiment, method 1600 may further include (1) obtaining at least one model parameter and (2) including a representation of the obtained at least one model parameter in a 3D multigraph. According to one such embodiment, the obtained at least one model parameter may be associated with a node level, a local level, or a multigraph level. In another such embodiment, the obtained at least one model parameter may include at least one of a CAD parameter, a morphing shape parameter, an encoded latent parameter, and a non-geometric parameter. According to yet another such embodiment, the non-geometric parameter may include at least one of a material indicator, a thickness indicator, an indication of load magnitude, an indication of load direction, an indication of load velocity, a sliding interaction condition, and a physical property. In one embodiment, the model parameters may be obtained, for example, by accessing a physics simulation object, e.g., model data, which may include, for non-limiting examples, node coordinates, information regarding connections and / or constraint definitions between parts.
[0149] According to an example embodiment of method 1600, the one or more operators utilized in step 1603 may include at least one of a convolution operator, an aggregation operator, an encoding operator (e.g., 852 (FIG. 8)), a decoding operator (e.g., 858 (FIG. 8)), a transformer operator, a normalization operator, a concatenation operator, an Einstein contraction operator, a pooling operator (e.g., 972a or 972b (FIG. 9)), an unpooling operator (e.g., 972c or 972d (FIG. 9)), a dense pooling operator, a non-representational sparse pooling operator, a representative sparse pooling operator, and an operator network. In another embodiment, the operators may be used to (i) determine the nodes in the neighborhood of a node, (ii) aggregate neighborhood information to the current local node / neighborhood, (iii) determine importance between neighbors / neighbors, (iv) encode information, for example, through a non-linear transformation, (v) decode information into a physics result field, and / or (vi) pool local / non-local information from the node level to a higher level.
[0150] In an example embodiment of method 1600, the determined behavior of the physical object may include a respective local behavior solution for each of a plurality of subcomponents of the physical object. The method may further include assembling each respective local behavior solution using at least one of encoding, pooling, and regression to determine an overall behavior of the physical object.
[0151] According to an exemplary embodiment of method 1600, processing the 3D multigraph in step 1603 may include iteratively (i) determining a predicted solution for the behavior of the physical object using a current neural network and one or more current operators; (ii) comparing the determined predicted solution with a solution of a numerical solver (i.e., for the behavior of the physical object) to determine an error metric; and (iii) updating at least one of the one or more DNNs and one or more operators based on the determined error metric until the determined predicted solution satisfies at least one convergence criterion. The determined predicted solution that satisfies at least one convergence criterion may be the determined behavior of the physical object. In a first iteration, the current neural network and the current one or more operators may be one or more DNNs and one or more operators. In a second iteration and subsequent iterations, the current neural network and the current one or more operators may be updated at least one of the one or more DNNs and one or more operators. In one such embodiment, the updating may include performing automatic differentiation.
[0152] In an exemplary embodiment of method 1600, the one or more DNNs may include at least one of an FNN, e.g., 700 (FIG. 7), a CNN, a GNN, e.g., 800 (FIG. 8) or 900 (FIG. 9), an RNN, and a TNN.
[0153] Embodiments, such as method 1600, can be used as part of a manufacturing method. For example, method 1600 can be used in an optimization loop that uses method 1600 to determine the behavior of a real-world object. In such embodiments, the design of the real-world object can be approved or defects can be identified based on the determined behavior. In response to identifying defects, the design can be modified, for example, in the FE model, and after these changes are made, the new design can be evaluated using method 1600. This process can be repeated until a design that meets the requirements is identified. After determining a design that meets the requirements, the real-world object that meets the requirements can be manufactured. Furthermore, embodiments can begin by measuring or obtaining data about the real-world object and creating a FE model that represents the real-world object. This FE model can then be used in embodiments to determine the behavior of the real-world object. This FE model can also be used in the aforementioned optimization loop to (i) determine an improved design for the real-world object and (ii) manufacture an improved version of the real-world object, e.g., a version that meets the behavior criteria.
[0154] [Examples of benefits] Embodiments can utilize TNM solutions to comprehensively describe numerous physical phenomena (e.g., statics, dynamics, buckling, heat transfer, acoustics, fluid dynamics, and electromagnetics) and manufacturing processes (e.g., stamping, welding, or additive manufacturing).
[0155] Furthermore, embodiments may integrate learning the 3D shapes of complex products, such as parts and assemblies of parts, and their connections and physics-based solvers, at least in non-limiting exemplary forms: a) Parameterized forms, such as forms of CAD parameters such as length, width, radius, curvature, overall shape, etc. This may involve running a series of Design of Experiment (DOE) simulations on the parameter space. b) Morphing parameters such as morphing vectors and on / off switches for geometric features. This aspect may also involve running a series of DOE simulations on the morphing parameter space. c) Any desired 3D discretization, e.g., non-parameterized forms such as meshes, tessellations, and / or other forms of CAD representation, which do not involve DOE execution but may use past TNM simulation data for training. d) Any desired combination of forms a), b), and / or c).
[0156] Embodiments can be applied to both time-domain and frequency-domain physics, and can provide continuously trainable and improveable models. With sufficient training that does not need to occur all at once, embodiments can achieve sufficiently high accuracy for a given range of engineering interest so that embodiments can be used reliably, for example, early in the design cycle where TNMs are not currently used because their computational cost is too high to keep up with the rapid pace of many design changes.
[0157] Furthermore, embodiments may accelerate the adoption of physics-based simulation methods, for example, in the early stages of a product design cycle, and may, for example, integrate any or a combination of the following non-limiting examples: a) Historical physics-based simulation data available from a given company or in the public domain. b) Collective learning of both 3D geometric design representations and their traditional physics-based solutions. c) Embodiments can continuously learn from an existing or expanding collection of prior simulations.
[0158] Embodiments can evaluate new geometric design alternatives for overall key performance indicators in seconds.
[0159] [Computer Support] Embodiments may be implemented in existing software and CAD and CAE platforms. For example, embodiments may be implemented using the features and functionality of 3DS SIMULIA® software.
[0160] 17 is a schematic diagram of a computer network in which embodiments may be implemented. Client computers / devices 50 and server computers 60 provide processing, storage, and input / output (I / O) devices for running application programs and the like. Client computers / devices 50 may also be linked to other computing devices, including other client devices / processors 50 and server computers 60, via a communications network 70. Communications network 70 may be part of a remote access network, a global network (e.g., the Internet), a collection of computers worldwide, a local area or wide area network, and gateways that currently communicate with each other using their respective protocols (e.g., TCP / IP, Bluetooth, etc.). Other electronic device / computer network architectures are also suitable.
[0161] FIG. 18 is a block diagram illustrating an exemplary embodiment of a computer node (e.g., client processor / device 50 or server computer 60) in the computer network of FIG. 17. Each computer node 50, 60 includes a system bus 79, which is a set of hardware lines used to transfer data between components of a computer or processing system. The bus 79 is essentially a shared conduit connecting various different elements of a computer system (e.g., processor, disk storage, memory, I / O ports, network ports, etc.) and enabling information transfer between the elements. Attached to the system bus 79 is an I / O device interface 82 for connecting various input / output devices (e.g., keyboard, mouse, display, printer, speakers, etc.) to the computer node 50, 60. A network interface 86 enables the computer node to connect to various other devices connected to a network (e.g., network 70 of FIG. 17). A memory 90 provides volatile storage for computer software instructions 92a and data 94a used to implement embodiments of the present invention (e.g., method 100 (FIG. 1), method 1600 (FIG. 16), etc.). Disk storage 95 provides non-volatile storage for computer software instructions 92b and data 94b used to implement embodiments of the present disclosure. A central processing unit 84 is also connected to system bus 79 and is provided for executing computer instructions.
[0162] In one embodiment, the processor routines 92a-92b and data 94a-94b are a computer program product (generally referred to as 92) that includes a computer-readable medium (e.g., a removable storage medium such as a DVD-ROM, CD-ROM, diskette, tape, etc.) that provides at least a portion of the software instructions for the system described herein. The computer program product 92 can be installed by any suitable software installation procedure, as known in the art. In another embodiment, at least a portion of the software instructions may also be downloaded via a cable, communication, and / or wireless connection. In other embodiments, the disclosed program is a computer program propagated signal product embodied in a propagated signal on a propagated medium (e.g., radio waves, infrared waves, laser waves, sound waves, or electric waves propagated over a global network such as the Internet or other networks). Such a carrier medium or signal provides at least a portion of the software instructions for the routines / programs 92 of the present disclosure.
[0163] In alternative embodiments, the propagated signal is an analog carrier wave or a digital signal carried on a propagation medium. For example, the propagated signal may be a digital signal propagated over a global network (e.g., the Internet), a communications network, or other network (e.g., network 70 of FIG. 17). In one embodiment, the propagated signal is a signal transmitted over a propagation medium over a period of time, such as instructions for a software application transmitted in packets over a network over a period of milliseconds, seconds, minutes, or longer. In another embodiment, the computer-readable medium of computer program product 92 is a propagation medium that computer system 50 can receive and read, for example, by receiving the propagation medium and identifying the propagated signal embodied in the propagation medium, as described above for computer program propagated signal products.
[0164] In general, the term "carrier medium" or transient carrier encompasses the aforementioned transient signals, propagated signals, propagated media, storage media, and the like.
[0165] In other embodiments, program product 92 may be implemented as a so-called Software as a Service (SaaS) or other installation or communication supporting end users.
[0166] The embodiments or aspects thereof may be implemented in the form of hardware, including but not limited to hardware circuits, firmware, or software. If implemented in software, the software may be stored on any non-transitory computer-readable medium configured to allow a processor to load the software, or a subset of its instructions. The processor is then configured to execute the instructions to operate a device or cause a device to operate in a manner described herein.
[0167] Furthermore, hardware, firmware, software, routines, or instructions may be described herein as performing certain operations and / or functions of a data processor, although it will be understood that such descriptions contained herein are merely for convenience and that such operations actually result from a computing device, processor, controller, or other device executing firmware, software, routines, instructions, etc.
[0168] It will be understood that the flow diagrams, block diagrams, and network diagrams may include more or fewer elements, may be arranged differently, or may be represented differently, but it will also be understood that a particular implementation may implement the block diagrams and network diagrams, and the number of block diagrams and network diagrams illustrating the implementation of an embodiment, in a particular way.
[0169] Accordingly, further embodiments may also be implemented in various computer architectures, physical computers, virtual computers, cloud computers, and / or some combination thereof, and therefore the data processors described herein are intended to be illustrative only and not limiting of embodiments.
[0170] The teachings of all patents, published applications, and references cited herein are incorporated by reference in their entirety.
[0171] While exemplary embodiments have been particularly shown and described, those skilled in the art will understand that various changes in form and details can be made therein without departing from the scope of the embodiments encompassed by the appended claims.
[0172] For example, the foregoing description and details of the illustrated embodiments refer, by way of example and not limitation, to Applicant-Assignee (Dassault Systemes Americas Corporation) and Dassault Systemes tools and platforms. Other similar tools and platforms are suitable.
Claims
1. 1. A computer-implemented method for determining neural network-based behavior of a physical object, comprising: processing a three-dimensional (3D) numerical model representing the physical object to extract (i) 3D geometric data and (ii) simulation data associated with the physical object; converting the extracted 3D geometric data and simulation data into a 3D multigraph; processing the 3D multi-graph using one or more deep neural networks (DNNs) and one or more operators to determine behavior of the physical objects; 11. A computer-implemented method comprising:
2. The computer-implemented method of claim 1 , wherein the 3D numerical model represents an assembly made up of a plurality of parts, connections between the plurality of parts, and interactions between the plurality of parts.
3. The computer-implemented method of claim 2 , wherein the assembly is a vehicle, an aircraft, an antenna, a mitral valve, a structural system, a fluid system, an electromagnetic system, or an acoustic system.
4. 2. The computer-implemented method of claim 1, wherein the 3D numerical model is a computer-aided design (CAD) model, a finite element (FE) model, a finite volume model, a lattice Boltzmann model, a statistical energy analysis model, or a numerical model.
5. The computer-implemented method of claim 1 , wherein the simulation data includes at least one of boundary conditions, excitation conditions, interaction conditions, physical quantities, and results from one or more numerical methods.
6. converting the extracted 3D geometric data and simulation data into the 3D multigraph; determining at least one of a sequence representation and a connection representation associated with the 3D numerical model; representing the determined at least one sequence representation and connection representation in the 3D multigraph; The computer-implemented method of claim 1 , comprising:
7. obtaining at least one model parameter; including a representation of said obtained at least one model parameter in said 3D multigraph; The computer-implemented method of claim 1 , further comprising:
8. The computer-implemented method of claim 7 , wherein the obtained at least one model parameter is at a node level, a local level, or a multi-graph level.
9. The computer-implemented method of claim 7 , wherein the obtained at least one model parameter comprises at least one of a CAD parameter, a morphing shape parameter, an encoded latent parameter, and a non-geometric parameter.
10. 9. The computer-implemented method of claim 8, wherein the non-geometric parameters include at least one of a material indicator, a thickness indicator, an indication of load magnitude, an indication of load direction, an indication of load velocity, a sliding interaction condition, and a physical property.
11. 2. The computer-implemented method of claim 1, wherein the one or more operators comprise at least one of a convolution operator, an aggregation operator, an encoding operator, a decoding operator, a transformer operator, a normalization operator, a concatenation operator, an Einstein contraction operator, a pooling operator, an unpooling operator, a dense pooling operator, a non-representational sparse pooling operator, a representational sparse pooling operator, and an operator network.
12. the determined behavior of the physical object includes a respective local behavior solution for each of a plurality of subcomponents of the physical object; Assembling each respective local behavior solution using at least one of encoding, pooling, and regression to determine a global behavior of the physical object. The computer-implemented method of claim 1 , further comprising:
13. processing the 3D multigraph, iteratively (i) determining a predicted solution for the behavior of the physical object using a current neural network and current one or more operators; (ii) comparing the determined predicted solution with a solution of a numerical solver to determine an error metric; and (iii) updating at least one of the one or more DNNs and the one or more operators based on the determined error metric until the determined predicted solution satisfies at least one convergence criterion, wherein: (a) the determined predicted solution that satisfies the at least one convergence criterion is the determined behavior of the physical object; (b) in a first iteration, the current neural network and current one or more operators are the one or more DNNs and the one or more operators; and (c) in a second iteration and subsequent iterations, the current neural network and current one or more operators are the updated one or more DNNs and at least one of the one or more operators. The computer-implemented method of claim 1 .
14. The updating is Performing automatic differentiation The computer-implemented method of claim 13, comprising:
15. 2. The computer-implemented method of claim 1, wherein the one or more DNNs comprise at least one of a feedforward neural network (FNN), a convolutional neural network (CNN), a graph neural network (GNN), a recurrent neural network (RNN), and a transformer neural network (TNN).
16. 1. A computer-based system for neural network-based behavior determination of a physical object, comprising: a processor; a memory having computer code instructions stored therein; Equipped with The processor and the memory use the computer code instructions to cause the computer-based system to: processing a three-dimensional (3D) numerical model representing the physical object to extract (i) 3D geometric data and (ii) simulation data associated with the physical object; converting the extracted 3D geometric data and simulation data into a 3D multigraph; processing the 3D multi-graph using one or more deep neural networks (DNNs) and one or more operators to determine behavior of the physical objects; configured to cause Computer-based systems.
17. In converting the extracted 3D geometric data and simulation data into the 3D multigraph, the processor and the memory use the computer code instructions to cause the computer-based system to: determining at least one of a sequence representation and a connection representation associated with the 3D numerical model; representing the determined at least one sequence representation and connection representation in the 3D multigraph; 17. The computer-based system of claim 16, configured to:
18. The processor and the memory use the computer code instructions to cause the computer-based system to: obtaining at least one model parameter; including a representation of said obtained at least one model parameter in said 3D multigraph; 17. The computer-based system of claim 16, further configured to:
19. When processing the 3D multigraph, the processor and the memory use the computer code instructions to cause the computer-based system to: iteratively (i) determining a predicted solution for the behavior of the physical object using a current neural network and current one or more operators; (ii) comparing the determined predicted solution with a solution of a numerical solver to determine an error metric; and (iii) updating at least one of the one or more DNNs and the one or more operators based on the determined error metric until the determined predicted solution satisfies at least one convergence criterion, wherein: (a) the determined predicted solution that satisfies the at least one convergence criterion is the determined behavior of the physical object; (b) in a first iteration, the current neural network and current one or more operators are the one or more DNNs and the one or more operators; and (c) in a second iteration and subsequent iterations, the current neural network and current one or more operators are the updated one or more DNNs and at least one of the one or more operators.
17. The computer-based system of claim 16.
20. 1. A computer program product for determining neural network-based behavior of a physical object, the computer program product comprising a non-transitory computer-readable medium having stored thereon computer code instructions, the computer code instructions, when executed by a processor, causing a device associated with the processor to: processing a three-dimensional (3D) numerical model representing the physical object to extract (i) 3D geometric data and (ii) simulation data associated with the physical object; converting the extracted 3D geometric data and simulation data into a 3D multigraph; and processing the 3D multi-graph with one or more deep neural networks (DNNs) and one or more operators to determine behavior of the physical object.
Citation Information
Patent Citations
Information processing system, information processing method and program
JP2021111066A
Simulation of physical environments using mesh representations and graph neural networks
JP2023544175A
Simulating physical environments using fine-resolution and coarse-resolution meshes
WO2023227586A1