Digital twin system for physical modeling and dynamic adjustment based on multi-source data
Through spatial alignment, attribute integration and Bayesian inference of multi-source data, combined with real-time adjustment algorithms, the problem of insufficient modeling efficiency and accuracy of digital twin systems is solved, and high-precision and real-time physical modeling is achieved.
Patent Information
- Application Number
- CN202510564216.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-30
- Publication Date
- 2025-08-15
AI Technical Summary
In the prior art, digital twin systems are insufficient in efficiency and accuracy in physical modeling, and cannot adjust model parameters in real time.
Through spatial alignment and attribute integration of multi-source data, combined with Bayesian inference, heterogeneous data are processed, a unified digital twin model is generated, and the model is adjusted in real time using adaptive Kalman filters to improve simulation accuracy and real-time performance.
High-precision modeling and real-time update of physical objects are realized. The system can maintain adaptability and real-time in changing environments, improving the simulation accuracy and accuracy of analysis results.
Smart Images

Figure CN120493711A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of data processing technology, and specifically relates to a digital twin system based on physical modeling and dynamic adjustment of multi-source data. Background Art
[0002] Digital twin is an emerging technology concept that refers to a virtual replica or model of real-world entities (such as devices, systems, and processes). By leveraging real-time data collection, sensors, the Internet of Things (IoT), and machine learning, digital twins synchronize and simulate the state, performance, and behavior of physical entities in a digital space. Digital twins are widely used in various fields, including manufacturing, construction, healthcare, and transportation, helping companies improve production efficiency, optimize resource allocation, reduce risks, and enable smarter decision-making.
[0003] In the prior art, for example, the technical solution described in the patent with publication number CN118965748A is: a twin physical modeling method, which determines the number of active parts and displacement parameters of the target through image information collected by the monitoring end, calculates the complex characterization parameters of the twin simulation, and summarizes them to divide the complex categories of joint simulation.
[0004] In the existing technology, the number of active components and displacement parameters are determined only by collecting image information at the detection end. In actual use, physical modeling cannot be completed efficiently and accurately, and changes in model parameters cannot be adjusted in real time. Summary of the Invention
[0005] The purpose of the present invention is to provide a digital twin system based on physical modeling and dynamic adjustment of multi-source data to solve the problems in the existing technology proposed in the background technology, that is, the inability to complete physical modeling efficiently and accurately, and the inability to adjust the changes in model parameters in real time.
[0006] In order to solve the above technical problems, the technical solution adopted by the present invention is:
[0007] A digital twin system based on physical modeling and dynamic adjustment of multi-source data includes the following steps:
[0008] Step S1: Establish a digital twin model based on multi-source data: spatially align and integrate geometric data and attribute data from different sources, process heterogeneous data through Bayesian reasoning, and combine information from different sources to generate a unified digital twin model;
[0009] Step S2: Real-time adjustment of the model’s physical properties and structure based on new data input: The system receives input from the data source in real time, detects changes in the state of the physical object, and updates the digital twin model through a dynamic adjustment algorithm;
[0010] In step S3, the digital twin model is divided into macro and micro levels through a hierarchical management method to improve the simulation accuracy and real-time performance of the system.
[0011] According to the above technical solution, in step S1, the collected geometric data needs to be processed first, including data cleaning, spatial alignment and resampling.
[0012] According to the above technical solution, data cleaning includes noise removal and data format conversion;
[0013] De-noising: Filter the collected geometric data to remove noise points using a point cloud filtering algorithm; Data format conversion: Ensure that all data can be processed uniformly and convert data in different formats into a standardized format;
[0014] Spatial alignment includes coarse alignment and local optimization;
[0015] Coarse alignment: Preliminary alignment of data from different sources through feature matching or global pose estimation technology;
[0016] Local optimization: Use nonlinear least squares or other optimization techniques to fine-tune the alignment results to improve the overlap of geometric data;
[0017] Based on the results of spatial alignment, attribute data from different sources are calibrated so as to be integrated into a unified model;
[0018] Resampling: Resample different data sources to ensure spatial consistency and eliminate resolution differences.
[0019] According to the above technical solution, Bayesian reasoning processes heterogeneous data as follows:
[0020] Select a prior distribution: Define a prior distribution for each attribute that reflects the belief about the attribute when no other data is observed;
[0021] Calculate likelihood: Based on the observed geometric data and attribute data, calculate the likelihood of the attribute P(D|H), that is, the probability of observing the data given the attribute hypothesis;
[0022] Update the posterior distribution: Use Bayes’ theorem to calculate the posterior distribution P(H|D), which is the updated belief about the attribute after observing the data; this can generate a new distribution for each attribute, combining information from various data sources, and the calculation formula is as follows:
[0023]
[0024] Where P(H|D) is the posterior probability, which refers to the probability that hypothesis H is true after observing data D; (P(D|H): likelihood probability, which is the probability of observing data D when hypothesis H is true, which measures the ability of hypothesis H to explain the observed data D; (P(H): prior probability, which is the probability that hypothesis H is true in the absence of any new data, which represents the initial degree of trust in hypothesis H; (P(D): evidence factor, which is the probability of observing data D, which normalizes the posterior probability;
[0025] Generate a unified digital twin model.
[0026] According to the above technical solution, the unified digital twin model is generated as follows:
[0027] First, the normal of the output downsampled point cloud is estimated; the normal direction of each point in the point cloud is calculated and estimated using the weighted average method of the neighborhood points;
[0028] Geometric feature extraction: define geometric features, including point features, line features, and surface features;
[0029] Point feature extraction: Using curvature analysis, we can identify corners and edges by calculating the local curvature of each point.
[0030] Line feature extraction: Use Hough transform or RANSAC to detect and fit straight line segments and curves;
[0031] Surface feature extraction: Extract plane features through plane fitting technology and identify the boundaries of different surfaces;
[0032] Geometric constraint extraction: Calculate relevant geometric dimensions among the identified features;
[0033] Topological relationship extraction: construct a topological relationship network between features, identify the connection relationship between features, and use graph theory methods to represent the topological structure between features;
[0034] Feature association and modeling: Match the extracted geometric features with the preset geometric template to ensure that the extracted features can be mapped to specific modeling requirements;
[0035] Constraint application: Automatically generate geometric constraints based on the extracted dimensions and topological relationships to ensure that subsequent modeling complies with design specifications.
[0036] According to the above technical solution, in step S2, the dynamic adjustment is specifically as follows: by analyzing the physical property data collected in real time, the system uses an adaptive Kalman filter to estimate the state change of the physical object and adjust the physical properties of the model.
[0037] According to the above technical solution, the Kalman filter is used to analyze the physical property data collected in real time to estimate the state changes of the physical object and adjust the physical properties of the model, specifically:
[0038] Assuming the current state is xk, the state at the next moment can be expressed as:
[0039] x k =AX k-1 +BU k-1 +w k-1
[0040] Where: A is the state transfer matrix, which describes how the state is transferred from the previous moment to the current moment; B is the control input matrix, which describes the external input u k-1 How to affect the system status; W k-1 is the process noise, usually assumed to be zero-mean Gaussian noise with covariance Q;
[0041] Observation equation: describes the physical property data z collected by the sensor k Relationship to the real state:
[0042] Z k =Hx k +v k
[0043] Among them, H is the observation matrix, which describes how the system state is mapped to the observation space, v k is the measurement noise, usually assumed to be zero-mean Gaussian noise with covariance R;
[0044] At the current time k, based on the state estimate at the previous time k-1, predict the state at the next time k;
[0045] Status prediction:
[0046]
[0047] in Represents the prior state estimate at time k, that is, the predicted state before considering the current observation data; covariance prediction:
[0048]
[0049] in is the prior estimation error covariance matrix, which reflects the uncertainty of the forecast and expands with time;
[0050] When observing new data z k Then, update the state estimate.
[0051] According to the above technical solution, geometry update and attribute adjustment: when the geometric shape change of the model is detected, the system will use the finite element method to locally update the model;
[0052] Based on the material's physical properties and stress changes, use material nonlinear analysis tools to update the model's stress distribution and deformation state to maintain consistency with the real object;
[0053] For moving objects, the system uses multi-body dynamics or rigid body dynamics models to calculate their motion paths in real time and update the model's position and posture.
[0054] According to the above technical solution, in step S3, the digital twin model is divided into macro and micro levels through a hierarchical management method. Specifically:
[0055] First, the entire simulation task is divided into multiple independent subtasks; each subtask can be calculated independently. The task division methods include:
[0056] Data-based task division: The simulation task is divided into multiple data blocks according to different parts of the input data set and assigned to different processing units;
[0057] Task division based on computational process: Decompose the simulation task into multiple computational stages according to different stages or steps of the computational process;
[0058] Scheduling strategy: The core task of the scheduling strategy is to reasonably allocate tasks to different computing nodes or processors based on the availability of computing resources, task priorities and dependencies.
[0059] According to the above technical solution, simulation tasks are assigned to different computing nodes through distributed computing. Specifically, through the MPI_Send and MPI_Recv functions, the master node can assign different data blocks or subtasks to each slave node for calculation;
[0060] Data synchronization: To ensure the consistency of parallel computing, MPI provides a synchronization mechanism. Through functions such as MPI_Barrier, it ensures that all nodes will not proceed to the next step of calculation before a specific stage is completed.
[0061] Load balancing: MPI supports dynamic load balancing. The master node can dynamically adjust task allocation based on the execution progress of each slave node to ensure that the workload of all nodes is as balanced as possible.
[0062] Parallel computing consistency: In a distributed environment, ensuring task consistency is key to computing resource scheduling. Through message passing and synchronization mechanisms, all computing nodes are guaranteed consistent access to shared data. Scheduling strategies are used to ensure consistency across all nodes at specific computational stages, avoiding time step discrepancies between different nodes. After the task is completed, the computation results of each node are aggregated to ensure the correctness and consistency of the entire simulation task.
[0063] Data fusion: Using weighted average analysis method, data from different levels are integrated to ensure that the model can reflect the actual physical situation; specifically:
[0064]
[0065] in, is the result of weighted average; y i is the value of the i-th data source; ω i is the weight of the i-th data source; n is the number of data sources; in this way, it is ensured that data with larger weights have a greater impact on the results, and conversely, data with smaller weights contribute less.
[0066] Compared with the prior art, the present invention has the following beneficial effects:
[0067] In the present invention, by spatially aligning and integrating the geometric data and attribute data from different sources, a more accurate digital twin model can be generated, thereby promoting the true reflection of the physical object.
[0068] The system can receive new data inputs in real time, detect changes in the state of physical objects in a timely manner, and quickly update the model through dynamic adjustment algorithms, so that the digital twin system can maintain real-time and adaptability in a changing environment; through a hierarchical management method, the model is divided into macro and micro levels, and analysis and optimization are performed at different levels; the hierarchical structure improves the simulation accuracy of the system and enables different application scenarios to obtain more appropriate analysis results.
[0069] By using Bayesian reasoning to process heterogeneous data, the system can adaptively combine information from different sources under uncertainty and change, further improving the system's performance. BRIEF DESCRIPTION OF THE DRAWINGS
[0070] Figure 1 A flow chart is established for the digital twin system of the present invention. DETAILED DESCRIPTION
[0071] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0072] Example 1
[0073] like Figure 1 As shown, a digital twin system based on physical modeling and dynamic adjustment of multi-source data includes the following steps:
[0074] Step S1: Establish a digital twin model based on multi-source data: spatially align and integrate geometric data and attribute data from different sources, process heterogeneous data through Bayesian reasoning, and combine information from different sources to generate a unified digital twin model;
[0075] Step S2: Real-time adjustment of the model’s physical properties and structure based on new data input: The system receives input from the data source in real time, detects changes in the state of the physical object, and updates the digital twin model through a dynamic adjustment algorithm;
[0076] In step S3, the digital twin model is divided into macro and micro levels through a hierarchical management method to improve the simulation accuracy and real-time performance of the system.
[0077] In the present invention, by spatially aligning and integrating the geometric data and attribute data from different sources, a more accurate digital twin model can be generated, thereby promoting the true reflection of the physical object.
[0078] The system can receive new data inputs in real time, detect changes in the state of physical objects in a timely manner, and quickly update the model through dynamic adjustment algorithms, so that the digital twin system can maintain real-time and adaptability in a changing environment; through a hierarchical management method, the model is divided into macro and micro levels, and analysis and optimization are performed at different levels; the hierarchical structure improves the simulation accuracy of the system and enables different application scenarios to obtain more appropriate analysis results.
[0079] By using Bayesian reasoning to process heterogeneous data, the system can adaptively combine information from different sources under uncertainty and change, further improving the system's performance.
[0080] Example 2
[0081] This embodiment provides a specific implementation method.
[0082] Step 1: Automatically generate a digital twin model of the physical object based on multi-source data.
[0083] Step 101, Multi-Source Data Preprocessing: During the spatial alignment and attribute integration of geometric and attribute data from different sources, Bayesian reasoning can effectively process heterogeneous data and combine information from different sources to generate a unified digital twin model. The following is a detailed description of this process.
[0084] Collect data:
[0085] Collect geometric and attribute data from various sensors, laser scans, CAD / BIM models, and more. This data may be in different formats, scales, and resolutions. Examples include point clouds and mesh models, while attribute data may include material properties, dimensional information, and other metadata.
[0086] Data cleaning:
[0087] Denoising: Filter the collected geometric data to remove noise points, using point cloud filtering algorithms (such as VoxelGridDownsampling).
[0088] Data format conversion: To ensure that all data can be processed uniformly, it may be necessary to convert data in different formats into a standardized format (such as point clouds into mesh models).
[0089] Spatial alignment:
[0090] Coarse alignment: Data from different sources are preliminarily aligned through feature matching (such as key point matching) or global pose estimation technology (such as the ICP algorithm).
[0091] Specific algorithms and processes for coarse alignment, feature matching algorithms:
[0092] Keypoint-based matching: For example, SIFT (Scale Invariant Feature Transform) or SURF (Speeded Up Robust Features) algorithms. First, keypoints are detected in data from different sources. These keypoints have the property of being invariant under scale, rotation, and illumination changes. Then, the local area around the keypoints is described, and matching point pairs are found by comparing the keypoint descriptors in different data. For example, in 3D model data collected from two different perspectives, the corresponding keypoints are found using the SIFT algorithm. These keypoints can be used as reference points for subsequent alignment.
[0093] Matching based on shape features: For data with specific geometric shapes, shape features can be extracted for matching. For example, for a 3D model of a mechanical part, shape features such as its outline and geometric center can be extracted and compared to achieve preliminary alignment.
[0094] Global pose estimation technology:
[0095] Iterative Closest Point (ICP) algorithm (initial pose estimation version): Before performing a precise ICP, a simplified ICP can be used to estimate the global pose. The basic idea is to find the closest point in each point in two point cloud datasets and estimate the initial pose by minimizing the distance between corresponding points. For example, in the coarse alignment of two sets of spatial point cloud data, corresponding point pairs are found through continuous iteration and the rotation and translation matrices that minimize the distance are calculated.
[0096] Local optimization: Use nonlinear least squares or other optimization techniques to fine-tune the alignment results to improve the overlap of geometric data.
[0097] Local optimization specifically includes:
[0098] Nonlinear least squares method:
[0099] Objective function construction: The distance between data points is used as the optimization target. For example, for two point cloud datasets that have been roughly aligned, let the point in the point cloud be p i and q i , the rotation and translation parameters based on the rough alignment are R and t, then the objective function can be expressed as:
[0100]
[0101] A series of points p transformed by the rotation matrix R and the translation vector t i , and the corresponding target point q i The sum of the squares of the distances between them,||·|| 2 Represents the norm operation, and the second norm is the Euclidean length of the vector.
[0102] Optimization solution: Use a nonlinear least squares optimization algorithm such as the Levenberg-Marquardt algorithm to solve the objective function and find the rotation and translation parameters that minimize the objective function, thereby fine-tuning the rough alignment results.
[0103] Other optimization techniques (such as graph-based optimization methods):
[0104] Graph construction: Data points are used as nodes of the graph, and the spatial relationships between points are used as edges. For example, in 3D point cloud data, adjacent points form edges, and the weight of the edge can be based on the distance between the points or other similarity measures.
[0105] Optimization goal: With the goal of minimizing the energy of the edges in the graph (such as the length of the edges or the difference between the nodes connected by the edges), the positions of the points are adjusted through optimization algorithms (such as the application of gradient descent on the graph) to achieve local optimization alignment.
[0106] Based on the results of spatial alignment, attribute data from different sources are calibrated so that they can be integrated into a unified model. Attribute data calibration based on the results of spatial alignment includes the following steps:
[0107] Calibration process:
[0108] Coordinate mapping: When the geometric data is spatially aligned, the coordinate systems of the attribute data from different sources are also unified accordingly. For each attribute data point, according to its coordinate position in the original data, it is mapped to a unified coordinate system through the transformation relationship determined by the spatial alignment (such as rotation and translation matrix). For example, if there is temperature attribute data collected by a sensor, its coordinates in the original coordinate system are (x s ,y s , z s ), the transformation matrix obtained by space alignment is T, then the coordinates in the unified coordinate system are T(x s ,y s , z s ).
[0109] Attribute association: Based on the mapped coordinate position, the attribute data is associated with the corresponding geometric data. For example, in a 3D model, the temperature attribute data is associated with the corresponding geometric facets or voxels, so that in a unified digital twin model, each geometric element has its corresponding attribute information. For discrete attribute data, the nearest neighbor principle can be used for association, that is, each geometric element is associated with the attribute represented by the attribute data point closest to it in space; for continuous attribute fields (such as temperature fields, stress fields, etc.), the attribute values can be distributed to the entire geometric model through interpolation methods (such as linear interpolation, spline interpolation, etc.).
[0110] Resampling: Resample different data sources to ensure spatial consistency and eliminate resolution differences. Resampling specifically includes the following steps:
[0111] Voxel-based resampling:
[0112] Voxelization: Dividing space into a regular voxel grid. For input geometric data of varying resolutions, project it onto the voxel grid. For example, for 3D point cloud data or 3D models, determine the voxel in which each point or model element resides.
[0113] Attribute calculation: Within each voxel, a representative attribute is calculated based on the attributes of the original data points or model elements that fall into that voxel (e.g., geometry, physical properties, etc.). For geometry, the average position or center of gravity of the points within the voxel can be used as a representation; for physical properties (e.g., density, temperature, etc.), weighted average or other statistical methods can be used.
[0114] Resampled output: Generate new, spatially consistent resampled data based on the voxel's attributes and position. For example, when generating new point cloud data, the voxel's centroid is used as the new sampling point and assigned the calculated attribute value.
[0115] Interpolation-based resampling:
[0116] Interpolation function selection: Common interpolation methods include linear interpolation, bilinear interpolation (for 2D data), trilinear interpolation (for 3D data), and spline interpolation. Choose an appropriate interpolation function based on the characteristics and requirements of the data. For example, for data with smoothly varying physical properties, spline interpolation may better preserve data continuity.
[0117] Sampling point determination: Within the spatial range that needs to be resampled, the new sampling point locations are determined according to certain rules (such as uniform grid).
[0118] Interpolation calculation: For each new sampling point, the attribute value of the sampling point is calculated using the selected interpolation function based on the attribute values of the surrounding original data points. For example, in bilinear interpolation, for a new sampling point (x, y) on the 2D plane, the attribute value z of the point (x, y) is calculated through linear combination based on the attribute values z1, z2, z3, and z4 of the four surrounding known data points (x1, y1), (x1, y2), (x2, y1), and (x2, y2).
[0119] For laser scanning data, use point cloud filtering algorithms (such as Voxel Grid Downsampling) to reduce noise and increase processing speed; specifically:
[0120] Defining the Voxel Grid: First, you need to define the size of a voxel. This is a cube in three-dimensional space, with each voxel containing a set of point cloud data. The voxel size is typically determined by parameter settings. Larger voxels can significantly reduce the number of points in the cloud, but may lose some detail; smaller voxels preserve more detail but increase the number of points. Spatial Segmentation: Based on the extent of the point cloud, the three-dimensional space is divided into a grid of evenly sized voxels. The entire point cloud is mapped onto this voxel grid.
[0121] Map a point cloud to a voxel grid:
[0122] Voxel index calculation: For each point in the point cloud, calculate its index position in the voxel grid. This is done by dividing the point's coordinates by the voxel size and rounding down to get the coordinates of the voxel to which each point belongs.
[0123] Voxel data collection: Assign each point to its corresponding voxel to form a point set. Each voxel will store the data of all points inside it.
[0124] Feature extraction and downsampling:
[0125] Point convergence: For each voxel, calculate the convergence features of all points inside it, usually using the following methods:
[0126] Center point selection: Select the centroid or center point of the points within the voxel as the representative point of the voxel.
[0127] Mean point calculation: Calculate the mean position of all points within the voxel as the downsampling result.
[0128] Other statistical features: Other features (such as maximum, minimum, normal direction, etc.) can be extracted to obtain more information.
[0129] Create a downsampled point cloud: The representative points calculated for each voxel are aggregated to form a new downsampled point cloud.
[0130] Noise reduction:
[0131] Removing isolated points: Through the voxelization process, isolated noise points are usually not sampled in the same voxel, so they are naturally excluded during convergence, thus achieving the denoising effect.
[0132] Smoothing effect: Since the points are aggregated to the voxel center, this method also smoothes the point cloud to a certain extent, reducing the impact of noise on subsequent processing.
[0133] Output downsampled point cloud: Output the filtered point cloud. This downsampled point cloud has less data volume and lower noise level, making it more suitable for subsequent processing (such as feature recognition and surface reconstruction).
[0134] Step 102, defining an attribute model; attribute data modeling: selecting an appropriate mathematical model (such as linear regression, classification model, etc.) for the attribute data to facilitate subsequent reasoning.
[0135] Identify important properties: Based on application requirements, select which properties are critical for model generation, such as material type, size, function, etc.
[0136] Attribute data fusion: Based on the results of spatial alignment, attribute data from different sources are calibrated so that they can be integrated into a unified model.
[0137] Step 103, Bayesian reasoning;
[0138] Choose a prior distribution: Define a prior distribution for each attribute that reflects the belief about the attribute when no other data is observed.
[0139] The specific attributes of belief are:
[0140] In the context of Bayesian reasoning, "property belief" refers to a subjective estimate or prior knowledge of the likely value of a property, in the absence of additional data. For example, before any measurements are taken of the material hardness property of a physical object, based on past experience with similar materials, it is believed that the property likely follows a certain probability distribution (such as a normal distribution). This prior probability distribution for the hardness property is a belief about the property. This belief reflects the uncertainty and expectations about the property in the absence of new data.
[0141] Calculate likelihood: Based on the observed geometric data and attribute data, calculate the likelihood of the attribute P(D|H), that is, the probability of observing the data given the attribute hypothesis.
[0142] The calculation process of likelihood calculation: Let the observed geometric data and attribute data be D, and the attribute hypothesis be H. The calculation of likelihood P(D|H) depends on the type of data and the assumed attribute model.
[0143] Discrete attribute case:
[0144] For example, suppose the attribute is a categorical variable with a finite number of discrete values (e.g., the material type can be metal, plastic, or ceramic), and the conditional probability of observing a specific geometric data feature under each material type is known. If the probability that the observed geometric data feature matches the geometric feature corresponding to the metal material is 0.7, then the likelihood P(D|H) of observing the current geometric data given that the material type is metal (attribute hypothesis H) is 0.7.
[0145] Continuous attribute situation:
[0146] Assume that the attribute is a continuous variable (such as the length of an object), and it is known that the geometric data observed under a given length assumption (such as the distance between multiple points measured) obeys a certain probability distribution (such as a normal distribution). Let the length assumption be l, and the observed distance data be d1, d2, ..., d n , and it is known that when the length is l, the distance data obeys the normal distribution N(μ(l),σ(l)) with mean μ(l) and standard deviation σ(l), then the likelihood P(D|H) is:
[0147]
[0148] Where, P(d1, d2, ..., d n |l) means that under the condition of given parameter l, the observation values d1, d2, ..., d n , the probability of occurrence; This means multiplying the corresponding expressions from (i=1) to (i=n). This means multiplying n expressions of the same form. It is the coefficient part of the probability density function of the normal distribution. Among them, σ(l) represents the standard deviation, which describes the degree of dispersion of the data. The larger σ(l) is, the more dispersed the data is. is a fixed constant used to ensure that the integral value of the probability density function over the entire domain is 1. is the exponential part of the probability density function of the normal distribution, μ(l) represents the mean, which determines the center position of the normal distribution, d i is the i-th observation value, (d i -μ(l)) 2 Measured the observed value d i The square of the degree of deviation from the mean μ(l). The entire exponential part reflects the impact of the degree of deviation of the observed value from the mean on the probability density. The greater the degree of deviation, the smaller the corresponding probability density.
[0149] Update the posterior distribution: Use Bayes’ theorem to calculate the posterior distribution P(H|D), which is the updated belief about the attribute after observing the data. This can generate a new distribution for each attribute, combining information from various data sources. The calculation formula is as follows:
[0150]
[0151] Where P(H|D) is the posterior probability, which refers to the probability that hypothesis H is true after observing data D (evidence, new information). It reflects the update of the credibility of hypothesis H after obtaining new data. (P(D|H): Likelihood probability, which is the probability of observing data D when hypothesis H is true. It measures the explanatory power of hypothesis H for observed data D. (P(H): Prior probability, which is the probability that hypothesis H is true in the absence of any new data (evidence), represents the initial level of trust in hypothesis H. (P(D): Evidence factor, which is the probability of observing data D. It normalizes the posterior probability and ensures that (P(H|D) is a legal probability value (between 0 and 1).
[0152] Integrate geometry and attributes: Integrate aligned and attribute-fused data to build a unified digital twin model. Geometric data can be represented as a triangulated mesh or point cloud, and attribute data can be attached to the model to form a complete model.
[0153] The specific steps for generating a unified digital twin model are as follows.
[0154] Step 104: Generate a unified digital twin model; the system uses machine learning feature extraction methods to extract feature points or boundary features from inputs such as point cloud data and images. Specifically:
[0155] First, the normal of the output downsampled point cloud is estimated; the normal direction of each point in the point cloud is calculated, usually using the weighted average method of neighborhood points, which helps in subsequent feature recognition.
[0156] Normal estimation plays a crucial role in building digital twin models. It facilitates subsequent geometric feature extraction, lighting calculations, and physical simulations. For example, when rendering a digital twin model, the direction of the normal determines the surface lighting, making the model appear more realistic. In physical simulations, the direction of the normal is crucial for calculating physical phenomena such as friction and collision response.
[0157] The specific process of normal estimation (weighted average method of neighborhood points):
[0158] Neighborhood selection: For each point p in the point cloud i , select the neighborhood points around it. The size of the neighborhood can be determined according to the density of the point cloud and the required accuracy. Usually, a fixed radius or a fixed number of points is used to select the neighborhood. For example, with point p i As the center, all points within a radius of r are selected as neighborhood points.
[0159] Weighted calculation: calculate point p by weighted averaging of neighborhood points i The normal direction of the neighboring point p. i The closer the distance, the greater the weight of the point. Let the neighborhood point be p ij , and its corresponding weight is w ij , then point p i Normal direction n i It can be calculated by the following formula:
[0160]
[0161] Where × represents the vector cross product and |·| represents the vector modulus. In this way, the normal direction of each point in the point cloud can be obtained.
[0162] Geometric feature extraction: First, you need to define geometric features, including point features (such as corner points, edges), line features (such as straight line segments), surface features (such as planes, curved surfaces), etc.
[0163] Point feature extraction: Using curvature analysis, corners and edges are identified by calculating the local curvature of each point (such as Gaussian curvature and mean curvature).
[0164] Specific method of point feature extraction (curvature analysis):
[0165] Local curvature calculation:
[0166] Fitting a quadratic surface based on neighborhood points: For each point p in the point cloud i, select its neighborhood points and fit a quadratic surface by the least square method. For example, in 3D space, the quadratic surface equation can be expressed as z = ax 2 +by 2 +cxy+dx+ey+f, and obtain the coefficients a,b,c,d,e,f through fitting.
[0167] Curvature calculation: According to the quadratic surface equation obtained by fitting, calculate the point p i Curvature. Mathematically, there is a corresponding curvature calculation formula for quadratic surfaces. For example, the principal curvatures k1 and k2 can be calculated using the surface coefficients.
[0168] Corner and edge detection:
[0169] Based on curvature threshold: Set a curvature threshold. When the local curvature of a point exceeds the threshold, it is identified as a corner point or edge point. For example, for a point cloud model of a mechanical part, if either the principal curvature k1 or k2 of a point is greater than the set threshold, and the curvature of the neighboring points of the point varies significantly, the point is marked as a corner point or edge point.
[0170] Line feature extraction: Use Hough transform or RANSAC (Random Sampling Consensus Algorithm) to detect and fit straight line segments and curves.
[0171] Specific method of line feature extraction:
[0172] Hough transform:
[0173] Parameter space conversion: For two-dimensional data (such as points on a plane), if you want to detect a line, convert the rectangular coordinates (x, y) to polar coordinates (ρ, θ), where ρ is the vertical distance from the point to the line, and θ is the angle between the normal direction of the line and the x-axis. The equation of the line can be expressed in polar coordinates as:
[0174] ρ=xcosθ+ysinθ
[0175] Voting statistics: For each point in the point cloud, a vote is performed in the parameter space (ρ-θ space). That is, for each point, the corresponding straight line equation is calculated under different values (ρ, θ), and the corresponding position in the parameter space is voted (accumulated).
[0176] Line detection: In the parameter space, find the peak points where the number of votes exceeds a certain threshold. The (ρ, θ) values corresponding to these peak points are the detected line parameters, thus obtaining the line segment.
[0177] RANSAC (Random Sample Consensus):
[0178] Random sampling: randomly extract a small number of points from the point cloud (for example, when two points determine a straight line, randomly extract two points) and fit a straight line based on these two points.
[0179] Inlier evaluation: Calculate the distance from other points in the point cloud to the fitted line, and consider points with distances less than a certain threshold as inliers.
[0180] Model evaluation and iteration: Repeat the random sampling and inlier evaluation process, and select the line model with the most inliers as the final detected line. If multiple lines need to be detected, each time a line is detected, its inliers can be removed from the point cloud and detection can continue.
[0181] Face feature extraction:
[0182] Plane features are extracted through plane fitting techniques (such as the least squares method) and the boundaries of different surfaces are identified.
[0183] Specific method of surface feature extraction (plane fitting technology): plane equation selection: In 3D space, the general form of the plane equation is:
[0184] ax+by+cz+d=0
[0185] Least squares fit:
[0186] Point selection: For a subset of points in the point cloud (either through random sampling or region-based selection), try to fit a plane.
[0187] Error minimization: By using the least squares method, minimize the sum of the squares of the distances from the point to the plane. Let the point in the point cloud be (x i ,y i , z i ), the plane equation is ax+by+cz+d=0, then the error function is:
[0188]
[0189] The fitting plane is obtained by solving the a, b, c, and d values that minimize the error function.
[0190] Boundary identification: After fitting a plane, the plane's boundaries are identified by analyzing the distribution of the point cloud around the plane. For example, the distance from a point to the plane is calculated. When points within a certain distance range form a continuous region, the edge of that region is the plane's boundary.
[0191] Geometric constraint extraction: Calculate the relevant geometric dimensions (such as length, width, height) of the identified features (such as edges and faces), usually by analyzing the distance and angle between features.
[0192] The process of associating geometric constraint extraction with the previous two steps: After identifying corner points and edge points in point feature extraction, the distance, angle and other relationships between these feature points can be used as geometric constraints. For example, the distance between two corner points is a geometric constraint. In line feature extraction, the parallel and perpendicular relationships between straight line segments, as well as the length of straight line segments, are also geometric constraints. In surface feature extraction, the angle and parallel relationship between planes, as well as the area of the planes, are also geometric constraints. By analyzing and calculating these extracted features, the relevant geometric dimensions and relationships are obtained to determine the geometric constraints. For example, in a digital twin model of a mechanical assembly, by extracting the planar features of the part surface, the parallelism and spacing between the two assembly surfaces are calculated as the geometric constraints of the assembly.
[0193] Material type identification: If material property data is provided, the material type is extracted through feature association;
[0194] Understanding and implementation of material type identification methods:
[0195] Method Understanding: When material property data is available, this data may be associated with geometric features. For example, objects made of different materials may have different geometric shapes and surface features. By establishing this feature association, the material type can be inferred from the geometric features.
[0196] Implementation method:
[0197] Feature vector construction: Extracted geometric features (such as curvature and shape descriptors) are combined into a feature vector. For example, for a 3D object, the curvature of its corners, the length of its edges, and other features form a feature vector.
[0198] Classification model training and application: Using sample data of known material types (this sample data contains both geometric feature vectors and known material types), a classification model (such as a support vector machine or neural network) is trained. When identifying the material type, the geometric feature vectors of the object to be identified are input into the trained classification model to obtain a prediction of the material type.
[0199] Material type identification: If material property data is provided (such as material information in the BIM model), the material type is extracted through feature association (for example, matching the feature ID with the material properties in the material library).
[0200] Topological relationship extraction: Construct a topological relationship network between features, identify the connection relationships between features (such as boundaries, intersections, and adjacent relationships), and use graph theory methods to represent the topological structure between features.
[0201] Graph theory method for topological relationship extraction:
[0202] Node definition: Extracted geometric features (such as points, lines, and surfaces) are used as nodes in the graph. For example, in a digital twin model of a building, each room (surface feature), corridor (line feature), and key connection points (point feature) can all be used as nodes in the graph.
[0203] Edge Definition: Graph edges are defined based on the connections between geometric features. If two faces are adjacent, an edge is created between the nodes representing those faces. If a line intersects two faces, then the node corresponding to that line has edges connected to the nodes of both faces.
[0204] Identify connection relationships:
[0205] Adjacency matrix: The connection relationship between nodes can be represented by constructing an adjacency matrix. For a graph with n nodes, the adjacency matrix A is an n×n matrix, where the element a ij Indicates whether nodes i and j are connected. If they are connected, a ij =1 (or assign corresponding weights according to actual conditions, such as the strength of the connection, etc.), otherwise a ij =0.
[0206] Traversal Algorithm: Use graph traversal algorithms, such as depth-first search (DFS) or breadth-first search (BFS), to determine the connectivity between nodes. For example, starting from a node, DFS can be used to find all nodes connected to that node, thereby determining the topological relationship between the geometric features represented by these nodes.
[0207] Feature association and modeling: Match the extracted geometric features with the preset geometric templates to ensure that the extracted features can be mapped to specific modeling requirements.
[0208] Feature association and modeling include the following steps:
[0209] For the extracted geometric features, their feature descriptors are calculated. For example, for a 3D shape's surface features, its area, perimeter, curvature histogram, and other descriptors can be calculated; for a line feature, its length, curvature, direction, and other descriptors can be calculated; for a point feature, its coordinates, curvature, and other descriptors can be calculated.
[0210] Template matching:
[0211] Similarity measurement: Compare the extracted feature descriptor with the feature descriptor of the preset geometric template using similarity measurement methods such as Euclidean distance, cosine similarity, etc. Suppose the extracted feature descriptor vector is:
[0212] F=[f1,F2,…,f n ]
[0213] The feature descriptor vector of the template is:
[0214] T=[t1,t2,…,t n ]
[0215] Euclidean distance similarity:
[0216]
[0217] Cosine similarity:
[0218]
[0219] Matching decision: Based on a set similarity threshold, the extracted feature is considered to match the template when the similarity exceeds the threshold. For example, in a mechanical part model, if the Euclidean distance similarity between an extracted face feature and a face feature in the template is less than the set threshold, the extracted face feature is mapped to the corresponding face feature in the template to meet the modeling requirements.
[0220] Constraint application: Automatically generate geometric constraints based on the extracted dimensions and topological relationships to ensure that subsequent modeling complies with design specifications. For example, constraints such as size constraints and parallelism constraints can be automatically added. Constraint applications include:
[0221] Dimensional constraint generation
[0222] Based on the extracted geometric dimensions (such as length, angle, area, etc.), corresponding constraints are generated during the modeling process. For example, if the angle between two planes is obtained as θ during geometric feature extraction, in the subsequent modeling, constraints are added to ensure that the angle between the two planes always remains at θ.
[0223] For linear dimensions, such as the distance d between two points, the distance constraint can be achieved by setting the coordinate relationship of the points during modeling. For example, if the coordinates of the two points are (x1, y1, z1) and (x2, y2, z2), the constraint equation is:
[0224] (x2-x1) 2 +(y2-y1) 2 +(z2-z1) 2 =d 2 .
[0225] Topology constraint generation:
[0226] Generate topological constraints based on the results of topological relationship extraction. For example, if a face is determined to be bounded by several edges, ensure that the connection and order of these edges conform to the topological structure during modeling. This can be achieved by setting the association between edges and faces in the modeling software or algorithm to ensure that the face boundary is composed of the correct edges.
[0227] Result Verification: Use visualization tools to verify the extracted features and constraints to ensure the accuracy of the recognition process.
[0228] Algorithm optimization: Based on user feedback and actual application results, the algorithm is iteratively optimized. For example, reinforcement learning or parameter adjustment can be used to improve the accuracy and efficiency of feature recognition.
[0229] Geometry reconstruction algorithm: Use triangulation algorithm (Delaunay Triangulation) or point-based mesh generation (Surface Reconstruction from Point Clouds) to generate the initial surface of the model.
[0230] For complex structures, deep learning (such as neural networks) is used to reconstruct 3D models. Deep learning methods (such as neural networks) are used; the following are the steps for 3D reconstruction using deep learning:
[0231] Dataset construction: Collect 2D images from different perspectives and the corresponding 3D model data to form a training dataset. Commonly used public datasets include ShapeNet and ModelNet.
[0232] Data augmentation: Data augmentation is performed on images through rotation, scaling, cropping, etc. to improve the generalization ability of the model.
[0233] Choose a model architecture: Choose an appropriate deep learning model architecture. Common ones include: 3DCNN: A convolutional neural network for processing 3D volume data. Point Cloud Networks: Networks specifically designed for processing point cloud data (such as PointNet). Convolutional Neural Networks (CNN): Traditional CNNs for extracting features from 2D images.
[0234] Model training: The selected model is trained using the training dataset, and the network weights are adjusted through an optimization algorithm (such as Adam or SGD) to minimize the reconstruction error.
[0235] Input image processing: Input new image data into the trained deep learning model for feature extraction and reconstruction.
[0236] 3D model generation: The model outputs a corresponding 3D representation (such as voxel grid, point cloud, or triangular mesh), which is selected according to the needs of the specific application.
[0237] Post-processing: Smoothing, refining and denoising are performed on the generated 3D model to improve the quality of the model.
[0238] Fusion: If there are models generated from multiple perspectives, they can be fused through methods such as weighted averaging and Bayesian reasoning to obtain a more complete three-dimensional model.
[0239] Step 105: Model verification and optimization:
[0240] Model validation: Check the accuracy and consistency of the model by comparing it with the actual object, and adjust the model if necessary.
[0241] Feedback adjustment: Utilize user feedback or new observation data to continuously update the model and optimize the prior distribution and model parameters in Bayesian inference.
[0242] Step 2: Adjust the model's physical properties and structure in real time based on new data input. The system continuously monitors changes in the state of physical objects through IoT devices, sensors, and machine vision. The system supports the input of multiple physical quantities (such as temperature, pressure, and velocity) and enables real-time data access and transmission through a data stream processing engine.
[0243] Step 201, dynamic adjustment: By analyzing the real-time collected physical property data, the system uses an adaptive Kalman filter to estimate the state changes of the physical object and adjust the physical properties of the model. Dynamic adjustment includes:
[0244] System Modeling
[0245] First, the state of the physical object is represented as a vector x k , which contains the physical quantities that need to be estimated, such as position, velocity, acceleration, etc. For example, for an object moving in one-dimensional space, x k =[p k , v k ] T , where p k is the position, v k It's speed.
[0246] Establish the state transfer equation:
[0247] x k+1 =F k x k +w k
[0248] Among them, F k is the state transition matrix, w k is the process noise.
[0249] For the above one-dimensional moving object:
[0250]
[0251] Where Δt is the time interval, w k Usually Gaussian noise with zero mean is assumed.
[0252] Measurement equation establishment:
[0253] Determine the measurement equation:
[0254] z k =H k x k +v k
[0255] Among them, z k is the measurement vector, H k is the measurement matrix, v k is the measurement noise. For example, if you are measuring the position of an object, (measured position), H k =[1,0],v k It is also Gaussian noise with zero mean.
[0256] Initialization: Setting the initial state estimate And the initial covariance matrix P0. The initial state estimate can be determined based on prior knowledge, and the covariance matrix reflects the uncertainty of the initial state estimate.
[0257] Prediction step: Predict the state at the next moment based on the state transition equation:
[0258] and covariance where Q k-1 is the process noise covariance matrix.
[0259] Update step: Calculate the Kalman gain where R k is the measurement noise covariance matrix.
[0260] Update state estimate and covariance P k|k =(IK k H k )P k|k-1 .
[0261] By repeatedly repeating the prediction and update steps, the state changes of the physical object are estimated in real time, and the physical properties of the digital twin model are adjusted based on the estimation results.
[0262] The Kalman filter algorithm is specifically:
[0263] The Kalman filter is a recursive algorithm used to estimate the state of a dynamic system. It updates the state estimate through observation and prediction, even in the presence of noise and uncertainty. It is widely used in fields such as sensor fusion, trajectory tracking, and dynamic system modeling, and is particularly well-suited for the design of feedback mechanisms. The Kalman filter analyzes real-time physical property data to estimate state changes of physical objects and adjust the physical properties of the model.
[0264] State equation: Assume the current state is x k , then the state at the next moment can be expressed as:
[0265] x k =Ax k-1 +Bu k-1 +W k-1
[0266] Where: A is the state transition matrix, which describes how the state is transferred from the previous moment to the current moment. B is the control input matrix, which describes the external input u k-1 How to affect the system state. k-1 is the process noise, usually assumed to be zero-mean Gaussian noise. Observation equation: describes the physical property data z collected by the sensor k Relationship to the real state:
[0267] z k =H k x k +v k
[0268] Where H is the observation matrix, which describes how the system state is mapped to the observation space. k is the measurement noise, which is usually assumed to be zero-mean Gaussian noise with covariance R.
[0269] State prediction: At the current moment, the state of the next moment is predicted based on the state estimation of the previous moment. Prior state estimation The calculation formula for (that is, the predicted state before considering the current observation data) is as follows:
[0270]
[0271] in: The prior state estimate at time k. k : State transition matrix, which describes the evolution of the system state from time k-1 to time k. The posterior state estimate at time k-1 is the state estimate obtained after considering the observation data at time k-1. k : Control input matrix, used to describe the control input u kImpact on system status. k : The control input vector at time k.
[0272] Covariance prediction: predict the prior estimate error covariance matrix P k|k-1 , which reflects the uncertainty of the forecast and generally increases with time. The calculation formula is as follows:
[0273] Where: P k|k-1 : The prior estimation error covariance matrix at time k. P k-1|k-1 : The posterior estimation error covariance matrix at time k-1. Q k : The process noise covariance matrix describes the uncertainty of system model errors and external disturbances.
[0274] Kalman gain calculation: Kalman gain K k Determines the weight of the impact of the predicted value and the observed value on the final estimated value, which is calculated by minimizing the estimation error. The calculation formula is as follows:
[0275]
[0276] Among them: K k : Kalman gain matrix at time k. H k : Observation matrix, which describes the relationship between the system state and the observation value. k : The measurement noise covariance matrix describes the noise uncertainty in the observation data.
[0277] State update: using the current observation data z k Correct the predicted state to obtain the posterior state estimate The calculation formula is as follows:
[0278]
[0279] in: The posterior state estimate at time k. k : The observation vector at time k. Observation residual (innovation term), which represents the difference between the observed value and the predicted value.
[0280] Covariance update: Update the covariance matrix P k|k , represents the error uncertainty under new observation conditions. The calculation formula is as follows:
[0281] P k|k =(IK k H k )P k|k-1
[0282] Where: P k|k: The covariance matrix of the posterior estimation error at time k. I: The identity matrix.
[0283] Parameter adjustment of adaptive Kalman filter: In the feedback mechanism design, the adaptive Kalman filter will dynamically adjust the model parameters according to real-time data, such as the process noise covariance Q k and the measurement noise covariance R k , in order to improve the performance of the filter. Common adaptive adjustment methods are:
[0284] Residual-based adaptive adjustment: Q is adjusted by analyzing the statistical characteristics of the observation residuals k and R k For example, R can be dynamically adjusted based on the covariance estimate of the residuals. k , which enables the filter to better adapt to changes in observation noise.
[0285] Adaptive adjustment based on fuzzy logic or neural network: Utilize intelligent algorithms such as fuzzy logic or neural network to automatically adjust Q according to the system's operating status and residual information. k and R k The value of is used to improve the robustness and adaptability of the filter.
[0286] The accuracy of process noise Q and measurement noise R significantly impacts filter performance. In an adaptive Kalman filter, the accuracy of the filter estimate is determined by real-time monitoring of the observation residual (innovation term). Large observation residuals indicate that the current model may be deviating from reality, and the filter will appropriately increase process noise Q to enhance its response to new data. Conversely, small residuals indicate a relatively accurate estimate, reducing process noise and enhancing filter stability.
[0287] The adaptive Kalman filter adjusts its filtering parameters based on real-time changes in the system, making the estimation of physical properties more accurate to the actual situation. For example, when the system state fluctuates significantly, the filter increases its trust in new observations; when the system state is relatively stable, it relies more on historical estimates.
[0288] Feedback mechanism design: In the digital twin system, the real-time collected physical property data is gradually adjusted through the feedback mechanism of the adaptive Kalman filter:
[0289] The system continuously collects physical property data, such as temperature, pressure, and velocity, and compares this data with the model's physical properties using observation equations, generating residuals. Through the Kalman filter's prediction and update steps, the system continuously adjusts the state estimate of the physical object and corrects the model's physical properties. This process occurs in real time, enabling the model to quickly respond to external changes and maintain highly accurate state estimates.
[0290] The adaptive filtering mechanism dynamically adjusts the filter parameters according to environmental changes, ensuring that in a rapidly changing environment, the model can promptly follow the state changes of physical objects and maintain the stability and accuracy of the system.
[0291] Step 202, geometry update and attribute adjustment: When a change in the geometry of the model is detected, the system will use the finite element method (FEM) to locally update the model.
[0292] Finite Element Method with Geometry Update (Local Update)
[0293] Meshing: When a geometric change in the model is detected, a finite element mesh is generated for the changed area. Based on the model's geometry and size, the appropriate mesh type (e.g., triangular, quadrilateral, etc.) and mesh size are selected. For example, for a complex structural component, a triangular mesh is used in the area of shape change to better accommodate the complex boundary.
[0294] Element Analysis: For each finite element, the element stiffness matrix is established based on the material constitutive relations (such as elastic modulus, Poisson's ratio, etc.) and the geometry. For example, for a two-dimensional plane stress problem, the stiffness matrix of a triangular element can be calculated using the element's nodal coordinates, material parameters, etc.
[0295] Assemble the overall stiffness matrix: Assemble the stiffness matrices of each element into the overall stiffness matrix. According to the correspondence between the element nodes and the overall nodes, add the elements in the element stiffness matrix to the corresponding positions in the overall stiffness matrix.
[0296] Apply boundary conditions and loads: Apply boundary conditions (such as fixed constraints, displacement constraints, etc.) and external loads (such as force, pressure, etc.) to the model based on the actual situation. For example, in a finite element model of a mechanical structure, if one end is fixed, apply a fixed constraint to the corresponding node.
[0297] Solve the linear system: Establish the overall equilibrium equation KΔu = F, where K is the overall stiffness matrix, Δu is the nodal displacement vector, and F is the load vector. By solving this linear system, the nodal displacements are obtained.
[0298] Update geometry: Update the geometry of the model based on the node displacement. The new positions of the nodes are calculated to obtain the updated model geometry.
[0299] Use material nonlinear analysis tools to update the model’s stress distribution and deformation state based on the material’s physical properties and stress changes, maintaining consistency with the real object.
[0300] Updated stress distribution and deformation state for material nonlinear analysis:
[0301] Constitutive model selection: Select an appropriate nonlinear constitutive model for the material based on the material type. For example, for metal materials with large deformations, an elastoplastic constitutive model might be selected; for hyperelastic materials such as rubber, an appropriate hyperelastic constitutive model, such as the Mooney-Rivlin model, might be selected.
[0302] Iterative solution: A nonlinear problem is transformed into a series of linear problems for iterative solution. In each iteration, the material's tangent modulus is updated based on the current stress and strain state. For example, in an elastic-plastic problem, whether the current stress reaches the yield strength determines whether the elastic modulus or the elastic-plastic tangent modulus is used for the calculation.
[0303] Stress-strain updates: Update the stress state based on the strain increments obtained through iterative calculations and the material constitutive relationship. By integrating the stress-strain relationship, the stress distribution and deformation state at each node or element of the model are obtained, ensuring that the stress and deformation of the digital twin model are consistent with the real object.
[0304] For moving objects, the system uses multi-body dynamics (MBD) or rigid body dynamics models to calculate their motion paths in real time and update the model's position and posture.
[0305] For system modeling using multibody dynamics (using the Lagrange equations as an example): Determine the system's generalized coordinates. For systems composed of multiple objects, choose independent coordinates that describe the system's position and orientation. For example, for a double pendulum system, choose the angle between the two pendulum members as the generalized coordinate.
[0306] Calculate the kinetic energy T and potential energy V of the system. Kinetic energy and potential energy are functions of generalized coordinates and their derivatives. For example, for a rigid body moving in a plane, the kinetic energy is:
[0307]
[0308] Where m is the mass, I is the moment of inertia, are the translational velocity and the rotational angular velocity respectively.
[0309] Establishment and solution of Lagrange equation: According to Lagrange equation: L = TV and where q i is the generalized coordinate, Q i It is a generalized force, which establishes the dynamic equation of the system.
[0310] By solving the dynamic equations through numerical methods (such as the fourth-order Runge-Kutta method), the changes in generalized coordinates over time, that is, the motion path, position and posture of the object, are obtained, and the digital twin model is then updated.
[0311] Rigid body dynamics (taking the Newton-Euler equations as an example)
[0312] Force and moment analysis
[0313] Perform force analysis on the rigid body, including external forces (such as gravity, friction, etc.) and internal forces (such as constraints at connection points, etc.). At the same time, analyze the torque acting on the rigid body.
[0314] Establishment and solution of Newton-Euler equation
[0315] According to Newton's second law F=ma (translation) and Euler's equation M=Iα (rotation), where F is the resultant force, m is the mass, a is the acceleration, M is the resultant torque, I is the moment of inertia, and α is the angular acceleration, the dynamic equation of the rigid body is established.
[0316] By solving these equations, the translational and rotational states of the rigid body are obtained, the motion path of the moving object is calculated in real time, and the position and posture of the model are updated.
[0317] Step 3: Model hierarchical management and multi-scale modeling; the system divides the digital twin model into macro and micro levels through a hierarchical management method.
[0318] Macroscopic level: used for overall structural simulation, focusing on global physical properties, such as overall stress distribution or temperature field.
[0319] Microscopic level: focuses on local details such as crack development, material loss or local deformation.
[0320] Step 301, layered simulation and interaction:
[0321] Using a multi-threaded or distributed computing architecture, models at different levels are simulated independently on their own computing resources. Through synchronization strategies, simulation results between different levels are integrated to ensure the coordination of the overall model.
[0322] Consistency Assurance: Global constraints (such as boundary conditions and physical conservation laws) are used to ensure consistency of physical properties across different layers. The system automatically and interactively adjusts the global and local models based on simulation results to maintain overall coordination.
[0323] Hierarchical simulation is to perform parallel simulation calculations at different levels (macro and micro) to ensure the coordination between the overall structure and local details. Its implementation process includes:
[0324] Using a multi-threaded or distributed computing architecture, each level of the model is simulated on an independent computing unit. The system uses computing resource scheduling algorithms, such as task-based scheduling strategies or distributed computing frameworks (such as MPI), to allocate simulation tasks and ensure the consistency of parallel computing. Specifically:
[0325] In complex simulation tasks, computing resource scheduling algorithms can effectively manage and allocate computing resources, ensuring efficient execution of simulation tasks in multi-core, multi-node environments. By using task scheduling strategies or distributed computing frameworks (such as MPI), task allocation and coordination can be achieved in parallel computing environments, ensuring the consistency of simulation task parallelization.
[0326] First, the entire simulation task is divided into multiple independent or partially dependent subtasks. Each subtask can be calculated independently, but may have some data dependencies that require synchronization. The purpose of task division is to fully utilize the parallel computing resources of multiple cores or multiple nodes. Typical task division methods include:
[0327] Data-based task division: According to different parts of the input data set, the simulation task is divided into multiple data blocks and assigned to different processing units.
[0328] Task division based on computational process: Decompose the simulation task into multiple computational stages according to different stages or steps of the computational process.
[0329] Scheduling strategy: The core task of the scheduling strategy is to reasonably allocate tasks to different computing nodes or processors based on the availability of computing resources, task priorities and dependencies. Common scheduling strategies include:
[0330] Static scheduling: The task allocation for each compute node is determined before the task begins. This method is suitable for scenarios where the task execution time is known and the load is balanced.
[0331] Dynamic Scheduling: Task allocation is dynamically adjusted during the simulation process based on the real-time load of the nodes. Dynamic scheduling can effectively address load imbalance issues.
[0332] Priority scheduling: Based on the importance or urgency of the tasks, high-priority tasks are scheduled first to meet the performance requirements of the simulation system.
[0333] Step 302, Distributed Computing Framework (MPI): MPI is a standard distributed computing framework, mainly used for parallel computing in a multi-node environment. Through MPI, simulation tasks can be assigned to different computing nodes and coordinated through message passing.
[0334] Task allocation: Through the MPI_Send and MPI_Recv functions, the master node can assign different data blocks or subtasks to each slave node for calculation.
[0335] Data synchronization: To ensure the consistency of parallel computing, MPI provides a synchronization mechanism that uses functions such as MPI_Barrier to ensure that all nodes do not enter the next step of calculation before a specific stage is completed.
[0336] Load balancing: MPI supports dynamic load balancing. The master node can dynamically adjust task allocation based on the execution progress of each slave node to ensure that the workload of all nodes is as balanced as possible.
[0337] Parallel Computing Consistency: In a distributed environment, ensuring task consistency is crucial for computing resource scheduling. Message passing and synchronization mechanisms ensure consistent access to shared data across all computing nodes. Scheduling policies ensure consistency across all nodes at specific computational stages, preventing timestep discrepancies between nodes.
[0338] After the task is completed, the calculation results of each node are summarized to ensure the correctness and consistency of the entire simulation task.
[0339] Simulation consistency is ensured: During each simulation iteration, the system synchronizes and calibrates models at different levels according to global constraints (such as energy conservation and boundary conditions). Through a feedback mechanism, the system updates the state of each model level after each simulation cycle, ensuring the coordination of macro and micro models.
[0340] Interactive and multi-scale operation: Users can switch between different levels of model view (such as local or global), and the system will automatically adjust the calculation accuracy and display content based on the selected view. Use dynamic LOD (Level of Detail) strategy to switch the model's precision at different levels of simulation.
[0341] Step 303, cross-level data transfer and fusion: Cross-level data transfer and fusion ensure the mutual influence and data consistency of multi-scale models.
[0342] Data transfer mechanism: A bidirectional data transfer mechanism enables real-time synchronization between macro and micro models. For example, when local material changes occur, the system transfers these changes to the global model through physical parameters to reflect their impact on overall performance.
[0343] The system uses a bidirectional data transfer mechanism to transfer data between models at different levels. For example, changes in the global stress field of the macro model will affect the material state of the local model; conversely, local stress concentrations in the micro model will also be fed back into the stress distribution of the macro model.
[0344] Use global data buffer to store simulation data at different levels to ensure the synchronization of data transmission.
[0345] Data fusion algorithm: uses weighted average analysis method to fuse data from different levels to ensure that the model can reflect the actual physical situation. Specifically:
[0346] The core idea of the weighted average method is to combine the values of multiple data sources according to certain weights and calculate a weighted average. The choice of weights depends on the reliability, importance, or influence of the data source in a specific situation. The formula is as follows:
[0347] The formula for weighted average is:
[0348]
[0349] in, is the result of weighted average; y i is the value of the i-th data source; ω i is the weight of the i-th data source; n is the number of data sources.
[0350] In practical applications, if all weights w i The sum of is 1, and the formula can be simplified to:
[0351]
[0352] In this way, the result of weighted averaging is the sum of the product of the value of each data source and its weight.
[0353] In this way, it is ensured that data with larger weights have a greater impact on the results, and conversely data with smaller weights contribute less.
[0354] Data fusion scenarios and applications: In model simulation, physical phenomena may involve multiple levels of data, which come from different observation scales or different data collection methods. For example, in stress analysis of material mechanics, data fusion may be required.
[0355] Macro-level stress data: These data usually come from large-scale physical measurements or simulation results and reflect the stress distribution of the entire material.
[0356] Microscopic stress data: These data come from finer-grained measurements, such as the stress values in certain local areas of the material's crystal structure, reflecting microscopic physical phenomena.
[0357] Data preprocessing and weight assignment: Before performing weighted average fusion, data from different sources must be preprocessed, including data alignment, normalization, and other operations to ensure comparability between the data.
[0358] Data alignment: Since data from different layers may have different temporal or spatial scales, they need to be aligned temporally or spatially.
[0359] Normalization: Data from different sources may have different dimensions, so normalization is required so that different data can be compared and integrated at the same scale.
[0360] Weighting: Assign appropriate weights to each data source. The weights are usually determined based on the following factors:
[0361] Data reliability: measurement accuracy of data, reliability of source, etc.
[0362] Importance of data: The degree of influence of data at a certain level on the final result. Usually, micro data has a smaller weight, while macro data has a larger weight.
[0363] A weighted fusion strategy is used to integrate data at different levels. For example, a weighted average method is used to fuse stress values at the micro and macro levels to obtain a more accurate model simulation.
[0364] For situations involving multiple data sources (such as multi-physics fields such as temperature and stress), multi-physics field coupling methods (such as coupling thermodynamics and mechanical models) are used to achieve cross-level data fusion.
[0365] Through the above steps, the system can efficiently realize automated modeling, real-time dynamic adjustment, hierarchical simulation and data fusion of multi-source data, ensuring the accuracy and real-time performance of the digital twin model.
[0366] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that includes a list of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus.
[0367] Finally, it should be noted that the above descriptions are merely preferred embodiments of the present invention and are not intended to limit the present invention. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art will be able to modify the technical solutions described in the aforementioned embodiments or substitute equivalents for some of the technical features. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention shall be included within the scope of protection of the present invention.
Claims
1. A digital twin system based on physical modeling and dynamic adjustment of multi-source data, characterized by: The following steps are involved: Step S1: Establish a digital twin model based on multi-source data: spatially align and integrate geometric data and attribute data from different sources, process heterogeneous data through Bayesian reasoning, and combine information from different sources to generate a unified digital twin model; Step S2: Real-time adjustment of the model’s physical properties and structure based on new data input: The system receives input from the data source in real time, detects changes in the state of the physical object, and updates the digital twin model through a dynamic adjustment algorithm; In step S3, the digital twin model is divided into macro and micro levels through a hierarchical management method to improve the simulation accuracy and real-time performance of the system.
2. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 1, characterized in that: In step S1, the collected geometric data needs to be processed first, including data cleaning, spatial alignment, and resampling.
3. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 2, characterized in that: Data cleaning includes noise removal and data format conversion; De-noising: Filter the collected geometric data to remove noise points using a point cloud filtering algorithm; Data format conversion: Ensure that all data can be processed uniformly and convert data in different formats into a standardized format; Spatial alignment includes coarse alignment and local optimization; Coarse alignment: Preliminary alignment of data from different sources through feature matching or global pose estimation technology; Local optimization: Use nonlinear least squares or other optimization techniques to fine-tune the alignment results to improve the overlap of geometric data; Based on the results of spatial alignment, attribute data from different sources are calibrated so as to be integrated into a unified model; Resampling: Resample different data sources to ensure spatial consistency and eliminate resolution differences.
4. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 3, characterized in that: Bayesian reasoning processes heterogeneous data as follows: Select a prior distribution: Define a prior distribution for each attribute that reflects the belief about the attribute when no other data is observed; Calculate likelihood: Based on the observed geometric data and attribute data, calculate the likelihood of the attribute P(D|H), that is, the probability of observing the data given the attribute hypothesis; Update the posterior distribution: Use Bayes’ theorem to calculate the posterior distribution P(H|D), which is the updated belief about the attribute after observing the data; this can generate a new distribution for each attribute, combining information from various data sources, and the calculation formula is as follows: Where P(H|D) is the posterior probability, which refers to the probability that hypothesis H is true after observing data D; (P(D|H): likelihood probability, which is the probability of observing data D when hypothesis H is true, which measures the explanatory power of hypothesis H for observed data D; (P(H): prior probability, which is the probability that hypothesis H is true in the absence of any new data, which represents the initial degree of trust in hypothesis H; (P(D): Evidence factor, which is the probability of observing data D, normalizes the posterior probability; Generate a unified digital twin model.
5. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 4, characterized in that: Generate a unified digital twin model specifically as follows: First, the normal of the output downsampled point cloud is estimated; the normal direction of each point in the point cloud is calculated and estimated using the weighted average method of the neighborhood points; Geometric feature extraction: define geometric features, including point features, line features, and surface features; Point feature extraction: Using curvature analysis, we can identify corners and edges by calculating the local curvature of each point. Line feature extraction: Use Hough transform or RANSAC to detect and fit straight line segments and curves; Surface feature extraction: Extract plane features through plane fitting technology and identify the boundaries of different surfaces; Geometric constraint extraction: Calculate relevant geometric dimensions among the identified features; Topological relationship extraction: construct a topological relationship network between features, identify the connection relationship between features, and use graph theory methods to represent the topological structure between features; Feature association and modeling: Match the extracted geometric features with the preset geometric template to ensure that the extracted features can be mapped to specific modeling requirements; Constraint application: Automatically generate geometric constraints based on the extracted dimensions and topological relationships to ensure that subsequent modeling complies with design specifications.
6. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 5, characterized in that: In step S2, the dynamic adjustment is specifically as follows: by analyzing the physical property data collected in real time, the system uses an adaptive Kalman filter to estimate the state change of the physical object and adjust the physical properties of the model.
7. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 6, characterized in that: The Kalman filter is used to analyze the physical property data collected in real time to estimate the state changes of the physical object and adjust the physical properties of the model. Specifically: Assume the current state is x k , then the state at the next moment can be expressed as: x k =AX k-1 +BU k-1 +w k-1 Where: A is the state transfer matrix, which describes how the state is transferred from the previous moment to the current moment; B is the control input matrix, which describes the external input u k-1 How to affect the system status; k-1 is the process noise, usually assumed to be zero-mean Gaussian noise with covariance Q; Observation equation: describes the physical property data z collected by the sensor k Relationship to the real state: z k =Hx k +v k Among them, H is the observation matrix, which describes how the system state is mapped to the observation space, v k is the measurement noise, usually assumed to be zero-mean Gaussian noise with covariance R; At the current time k, based on the state estimate at the previous time k-1, predict the state at the next time k; Status prediction: in Represents the prior state estimate at time k, that is, the predicted state before considering the current observation data; covariance prediction: in is the prior estimation error covariance matrix, which reflects the uncertainty of the forecast and expands with time; When observing new data z k Then, update the state estimate.
8. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 7, characterized in that: Geometry update and attribute adjustment: When the geometric shape of the model is detected to change, the system will use the finite element method to locally update the model; Based on the material's physical properties and stress changes, use material nonlinear analysis tools to update the model's stress distribution and deformation state to maintain consistency with the real object; For moving objects, the system uses multi-body dynamics or rigid body dynamics models to calculate their motion paths in real time and update the model's position and posture.
9. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 8, characterized in that: In step S3, the digital twin model is divided into macro and micro levels through a hierarchical management method. Specifically: First, the entire simulation task is divided into multiple independent subtasks; each subtask can be calculated independently. The task division methods include: Data-based task division: The simulation task is divided into multiple data blocks according to different parts of the input data set and assigned to different processing units; Task division based on computational process: Decompose the simulation task into multiple computational stages according to different stages or steps of the computational process; Scheduling strategy: The core task of the scheduling strategy is to reasonably allocate tasks to different computing nodes or processors based on the availability of computing resources, task priorities and dependencies.
10. The digital twin system based on physical modeling and dynamic adjustment of multi-source data according to claim 9, characterized in that: The simulation tasks are distributed to different computing nodes through distributed computing. Specifically, through the MPI_Send and MPI_Recv functions, the master node can assign different data blocks or subtasks to each slave node for calculation; Data synchronization: To ensure the consistency of parallel computing, MPI provides a synchronization mechanism. Through functions such as MPI_Barrier, it ensures that all nodes will not proceed to the next step of calculation before a specific stage is completed. Load balancing: MPI supports dynamic load balancing. The master node can dynamically adjust task allocation based on the execution progress of each slave node to ensure that the workload of all nodes is as balanced as possible. Parallel computing consistency: In a distributed environment, ensuring task consistency is key to computing resource scheduling. Through message passing and synchronization mechanisms, all computing nodes are guaranteed consistent access to shared data. Scheduling strategies are used to ensure consistency across all nodes at specific computational stages, avoiding time step discrepancies between different nodes. After the task is completed, the computation results of each node are aggregated to ensure the correctness and consistency of the entire simulation task. Data fusion: Using weighted average analysis method, data from different levels are integrated to ensure that the model can reflect the actual physical situation; specifically: in, is the result of weighted average; y i is the value of the i-th data source; ω i is the weight of the i-th data source; n is the number of data sources; in this way, it is ensured that data with larger weights have a greater impact on the results, and conversely, data with smaller weights contribute less.
Citation Information
Patent Citations
Twin physical modeling method
CN118965748A