EP4330846A1 - Simulation numérique d'un phénomène physique complexe multi-échelle par apprentissage automatique - Google Patents
Simulation numérique d'un phénomène physique complexe multi-échelle par apprentissage automatiqueInfo
- Publication number
- EP4330846A1 EP4330846A1 EP21736004.9A EP21736004A EP4330846A1 EP 4330846 A1 EP4330846 A1 EP 4330846A1 EP 21736004 A EP21736004 A EP 21736004A EP 4330846 A1 EP4330846 A1 EP 4330846A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- simulation
- neural network
- layer
- representative
- interest
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 200
- 238000010801 machine learning Methods 0.000 title description 3
- 238000013528 artificial neural network Methods 0.000 claims abstract description 70
- 239000012530 fluid Substances 0.000 claims abstract description 15
- 238000012549 training Methods 0.000 claims abstract description 13
- 238000004364 calculation method Methods 0.000 claims abstract description 12
- 238000012546 transfer Methods 0.000 claims abstract description 8
- 238000000034 method Methods 0.000 claims description 49
- 239000013598 vector Substances 0.000 claims description 49
- 239000011159 matrix material Substances 0.000 claims description 25
- 230000002596 correlated effect Effects 0.000 claims description 17
- 238000005259 measurement Methods 0.000 claims description 14
- 238000011176 pooling Methods 0.000 claims description 10
- 230000003247 decreasing effect Effects 0.000 claims description 8
- 230000006835 compression Effects 0.000 claims description 6
- 238000007906 compression Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 5
- 238000013527 convolutional neural network Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 2
- 210000002569 neuron Anatomy 0.000 claims description 2
- 238000005070 sampling Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000000875 corresponding effect Effects 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000003746 surface roughness Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 108020001568 subdomains Proteins 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000005514 two-phase flow Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/28—Design optimisation, verification or simulation using fluid dynamics, e.g. using Navier-Stokes equations or computational fluid dynamics [CFD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Definitions
- the field of the invention is that of digital simulation.
- the invention relates to a method for the digital simulation of a complex multi-scale physical phenomenon by automatic learning.
- the invention finds applications in particular, for simulating a complex physical phenomenon of the fluidic type (for example: flow of a fluid, two-phase flow, tracking of particles, etc.), of the structural type (for example: resistance of a structure) and/or thermal type (e.g. conduction, convection, radiation).
- a complex physical phenomenon of the fluidic type for example: flow of a fluid, two-phase flow, tracking of particles, etc.
- structural type for example: resistance of a structure
- thermal type e.g. conduction, convection, radiation
- the invention aims at a neural network configured for a digital simulation of a physical phenomenon, such as a flow of a fluid, a heat transfer or a calculation of mechanical structure, in a space comprising a plurality of surface points of interest linked to a geometry comprised in space.
- the space can be arbitrary, generally comprising an object around which and/or in which the flow to be simulated takes place.
- the surface points of interest generally correspond to points on the surface of the object. They can also be points serving as boundary conditions on the edge of the space used for the simulation.
- Volume interest points generally corresponding to so-called measurement points for which simulation data are expected, can also be defined in the simulation space.
- the digital simulation object of the configuration of the neural network is defined by at least one condition of the digital simulation.
- Such a condition of the numerical simulation generally corresponds to a boundary condition such as for example a velocity linked to the geometry in the simulation space in the case of a flow around a moving geometry, an ambient temperature , a turbulence coefficient, etc.
- the neural network comprises:
- a layer for generating a simulation result comprising simulation values according to at least two different types from the vector representative of the simulation, the simulation values of different types being correlated with each other;
- each layer of the neural network being configured by parameters previously generated during a learning phase of a plurality of so-called training digital simulations.
- correlated simulation values which can also be called correlated data, generally interact with each other in the equations governing the physical phenomenon object of the simulation and that it is therefore advantageous to learn this correlation between data of different types when setting up the neural network.
- Simulation values of different types can be spatially and/or temporally correlated.
- simulation values are of distinct types included among:
- volume data such as a pressure or a velocity vector
- an overall coefficient such as a heat transfer coefficient or an overall drag force
- Volume data means data linked to observation points in the 3D space surrounding the geometry (area data).
- a volume datum is for example a pressure or a velocity vector.
- Surface data means data located on a surface.
- a surface datum is for example a pressure force or a temperature.
- global coefficient we mean a parameter resulting from a global integral over all the physical dimensions of the simulated problem.
- a coefficient global corresponds for example to the integral of the pressure forces on the geometry of a boat.
- a global coefficient is for example a heat transfer coefficient or a global drag force.
- the pressure is directly related to the vector-velocity of the fluid at this point of interest and those in a close neighborhood of the volume.
- the temperature of the fluid at this point is also linked to the velocity vector but also to the heat transfer coefficient.
- This correlation may also be more global. For example, there is a correlation between the drag behind a wing or a boat and the pressure force in front of the wing or the boat.
- the generation layer of a simulation result comprises:
- the space also includes a plurality of volume points of interest around the geometry and the neural network includes an encoding layer for all or part of the points of interest.
- the generation layer of a simulation result includes:
- the encoding layer of the surface points of interest and the condition(s) of the digital simulation comprises:
- - a module for generating the vector representative of the simulation by association of the intermediate vector representative of the geometry with a vector comprising the condition(s) of the simulation.
- the layer for encoding surface points of interest comprises an intermediate sub-layer for encoding surface points of interest in a matrix representative of the geometry.
- the module for generating the intermediate vector representative of the geometry comprises a sub-module for compressing the matrix representative of the geometry in order to obtain the intermediate vector representative of the geometry .
- the compression sub-module is one of "Max Pooling", “Average Pooling” or “Sum Pooling”.
- the compression sub-module corresponds to a decreasing cascade of sub-layers of the neural network.
- the intermediate sub-layer for encoding the surface points of interest corresponds to an increasing cascade of sub-layers of the neural network.
- This increasing cascade makes it possible in particular to increase the number of characteristics associated with each surface point of interest, with the aim of having a better understanding of the neural network and consequently a better prediction in the end.
- the number of features used by the encoding can be compared to the spatial resolution of an image. The greater the spatial resolution, the more the image is defined and has fine detail.
- the increase is generally gradual, going for example to 128 characteristics, 512 characteristics then to 2048 characteristics. It should be emphasized that the number of features which corresponds in other words to an encoding resolution is different from the number of features physically associated with the surface point of interest, such as the coordinates in three-dimensional space, the normal of the surface, radius of curvature, or physical data such as surface temperature, surface roughness, etc.
- the generation layer of a simulation result comprises a decreasing cascade of sub-layers of the neural network configured to generate at least one simulation value.
- the generation layer of a result which corresponds in other words to a decoding thus uses a decreasing cascade in which the number of characteristics associated with the points of interest is progressively reduced in order to obtain interpretable physical characteristics , that is, the values of the simulation result.
- the neural network is of the “Multi-Layer Perception” (MLP) type or of the “Convolutional Neural Network” (CNN) type.
- MLP Multi-Layer Perception
- CNN Convolutional Neural Network
- An MLP-like neural network can also be called a multi-layer perceptron.
- the invention also relates to a method, implemented by computer, of digital simulation of a physical phenomenon, such as a flow of a fluid, a heat transfer or a calculation of mechanical structure, in a space comprising a plurality of surface points of interest linked to a geometry comprised in space.
- a physical phenomenon such as a flow of a fluid, a heat transfer or a calculation of mechanical structure
- Such a digital simulation method advantageously comprises a step of predicting a simulation result via a neural network according to any one of the preceding embodiments, the simulation result comprising values of simulation according to at least two different types, correlated with each other.
- the method also comprises a learning phase during which parameters configuring each layer of the neural network are generated by learning a plurality of so-called digital simulations training.
- the encoding is performed using a cascade of increasing sampling feature numbers and/or the decoding is performed using a cascade of decreasing sampling feature numbers.
- the invention also relates to a computer program product, stored in a computer memory, comprising instructions configuring a computer processor for the implementation of a digital simulation method according to any one of the implementation modes. previous works.
- the computer memory includes in particular the instructions for implementing the neural network according to any of the preceding embodiments.
- the invention relates to a method for configuring a computer processor to simulate a physical phenomenon according to the implementation of a simulation method conforming to any one of the preceding modes of implementation, comprising steps of:
- the simulation result comprising simulation values according to at least two different types, correlated with each other.
- Figure 2 is a block diagram of the digital simulation process of Figure 1;
- FIG. 3 is a block diagram of a process for configuring a computer processor for implementing the digital simulation process of Figures 1 and 2.
- Figure 1 illustrates a non-limiting example of an embodiment of a neural network 500 according to the invention, implemented during a digital simulation process of a physical phenomenon, the instructions of which are processed by a computer processor 100.
- the neural network 500 is advantageously configured according to the invention to make it possible to perform a digital simulation of the physical phenomenon in a more efficient manner compared to the simulation methods of the prior art.
- the physical phenomenon object of the simulation illustrated in Figure 1 corresponds in this non-limiting example of the invention to a flow of a fluid near a geometry 110. More precisely, the geometry 110 is here a profile of airplane wing moving at a constant speed in the air. Those skilled in the art will be able to adapt this example without difficulty to the simulation of other types of physical phenomena, whether or not combining one or more types, in particular among fluidic, structural and thermal. A simulation of a flow in whole or in part inside a geometry can also be considered.
- the simulation is in this non-limiting example of the invention defined by a condition, namely the speed of the geometry 110 in the simulation space which is two-dimensional for the sake of clarity of the illustration.
- the simulation is carried out in a three-dimensional simulation space.
- a time variable can also be integrated on another scale, third or fourth scale depending on the case, to perform a dynamic simulation.
- the points of interest A t are here central points of the elements defining the surface of the object of the simulation.
- Each point of interest A t is here defined by / physical characteristics, including in particular the coordinates of the point of interest A t , or even the normal vector N t or physical values such as a surface temperature or a surface roughness coefficient .
- the neural network 500 comprises a layer 510 for encoding the surface points of interest A t and the conditions of the digital simulation in a vector 150 representative of the simulation.
- the surface points of interest A t are first encoded in a matrix 145 of size nxp by a sub-layer 515 of the encoding layer 510 of the neural network 500.
- the integer p greater than the number / of physical characteristics, corresponds to a sampling characteristic number making it possible to detail the surface points A t .
- the greater the sampling characteristic number the better the surface points A t will be characterized in a precise manner.
- the characteristic sampling number can be considered in the same way as a spatial resolution of an image. The higher the spatial resolution (for example 300 instead of 100 dpi), the better the image will be defined and the more the details of the image will be precise.
- the sub-layer 515 can in practice correspond to an increasing cascade of sub-layers of the neural network, increasing at each successive sub-layer the number of sampling characteristics, such as for example 128, 512, 2048, in order to to increase the precision of the encoded points and therefore the prediction obtained in the end. It should indeed be emphasized that the greater the number of sampling characteristics, the more the physical phenomena with a strong gradient can be well defined.
- the matrix 145 is then compressed in a second step by a compression module 148 commonly known by the English term “Max Pooling”.
- This “Max Pooling” processing makes it possible to reduce the matrix 145 to a vector 147 of size p, which is representative of the geometry 110, in particular by taking the maximum value of each column of the matrix 145.
- other processings of compression of a matrix into a vector can be envisaged, such as performing a sum or an average of the values of a column for example.
- These techniques are generally known respectively by the English terms of “Sum Pooling” and “Average Pooling”.
- a top-down cascade of neural network sub-layers can also be considered to reduce matrix 145.
- the vector 147 of size p obtained is then advantageously concatenated with a vector 149 comprising the conditions of the simulation, here the speed of the geometry 110 which is here a two-dimensional vector but which can be a three-dimensional vector in within the framework of a three-dimensional simulation, in order to obtain a vector 150 of size p+k representative of the simulation to be calculated.
- a vector 149 comprising the conditions of the simulation, here the speed of the geometry 110 which is here a two-dimensional vector but which can be a three-dimensional vector in within the framework of a three-dimensional simulation, in order to obtain a vector 150 of size p+k representative of the simulation to be calculated.
- several conditions of the simulation can be concatenated to the vector of size p, such as for example an ambient temperature, an atmospheric pressure, etc.
- m′ points are selected corresponding to so-called measurement points, for which simulation values around the geometry are expected.
- the neural network 500 then comprises a layer 520 for encoding volume points of interest B j in a matrix 146, of size mxq which is then reduced, via a module 143 of the neural network 500 to a matrix 144 representative of the measurement volume points, of size m′ xq, by selecting the m′ measurement volume points from among the m volume points of interest B j for which a physical value is expected.
- Each point of interest B j is here defined by g physical characteristics, including in particular the coordinates of the point of interest B j , or even physical values such as for example a temperature, a speed or a pressure.
- encoding layer 520 may include an increasing cascade of neural network sub-layers, increasing with each successive sub-layer the number of sampling features.
- the layers 510 and 520 are thus included in a first part 530 of the neural network 500, called encoding.
- encoding a first part 530 of the neural network 500
- successive encodings can be performed in the encoding layers 510 and 520 by increasing the characteristic number of sampling at each step in order to capture more and more precise details.
- the representative vector 150 of the simulation and the matrix 144 representative of the measurement volume points is then used by a second part 550 of the neural network 500, called decoding, making it possible to predict the result of the simulation of the physical phenomenon.
- the second part 550 of the neural network 500 comprises a layer 560 for generating a simulation value for all or part of the surface points of interest A t of the geometry 110, namely n' points of surface interests A it from a matrix 160 formed by n′ representative vectors 150 of the simulation, ie one vector 150 per surface point of interest A t for which a simulation value is expected.
- the simulation values thus obtained are illustrated on image 170.
- the decoding part 550 of the neural network 500 also comprises a layer 570 for generating a global parameter c g , as a simulation value, from the vector 150 representing the simulation. It should be noted that several global parameters can also be predicted by the 570 layer.
- the decoding part 550 of the neural network 500 also includes a layer 580 for generating a simulation value for all or part of the points of interest B j , here for the m′ measurement volume points, from the vector 150 representative of the simulation and the matrix 144 representative of the measurement volume points. More precisely, the layer 580 processes a matrix 175 associating the matrix 146 representative of the m' measurement volume points with m! vectors 150 representative of the simulation. The simulation values at the volume interest points B j thus obtained are illustrated on image 180.
- successive decodings can be carried out in the decoding layers 560 and 580 by reducing the characteristic number of sampling at each step in order to extract more and more precise values from the result simulation. A cascade of decreasing characteristic number of sampling is thus implemented.
- simulation values are thus obtained, each characterized respectively by f characteristics and g' characteristics, for example a pressure, a speed, a temperature , etc.
- the number f is of course less than (p + k), while the number g' is less than (p + k + q).
- the neural network 500 which here is of the MLP type, has been advantageously trained beforehand during a learning phase on a plurality of digital training simulations in order to generate the parameters of each layer 510, 520, 560, 570, 580 of the neural network 500.
- the results obtained with the computer processor 100 are significantly better with the digital simulation method of the invention than those of the prior art.
- a gain in precision and in calculation time has thus been observed compared to the method of simulation by prediction as described in patent application No. 1914967 of the Applicant.
- the error rate has been reduced to a value below 5%.
- the calculation time to obtain the simulation results with the same convergence criteria has meanwhile been reduced by a factor of the order of 10. It should indeed be emphasized that the simulation result is predicted directly by the network. of 500 neurons without the use of iterations, consuming computer resources, as in the previous method of simulation by prediction.
- the simulation method 200 is advantageously stored in the form of instructions in a computer memory 190 connected to the computer processor 100.
- Figure 2 represents the method 200 of digital simulation of the physical phenomenon in the form of a block diagram.
- the method 200 comprises a first step 210 of initializing the simulation parameters, and in particular of encoding the surface A t and volume B j points of interest and the simulation conditions by the encoding part 530 of the neural network 500.
- the first step 210 comprises a first sub-step 211 of encoding the surface points of interest A t and the conditions of the digital simulation in the vector 150 representative of the simulation.
- This encoding implemented by the layer 510 of the neural network 500, is in particular based on an architect of the PointNet type making it possible to classify points of a geometry, or even to perform a segmentation of the geometry.
- Such a method is for example described in Qi, Charles R., et al. "Pointnet: Deep learning on point sets for 3d classification and segmentation.” (Proceedings of the IEEE conference on computer vision and pattern recognition. 2017).
- the first step 210 can also include a second sub-step 212 of encoding the volume points of interest B j in the matrix 144 representative of the measurement volume points, which can generally correspond to a reduction of the matrix 146 encoding the volume points of interest B j when a selection of measurement points from among the volume points B j is performed.
- This second sub-step 212 is implemented by the optional layer 520 of the neural network 500.
- volumetric interest points B j in the regions of interest can be advantageously carried out in order to learn the spatial frequencies of the underlying functions, for example pressure or speed.
- a larger sampling of the volumetric interest points B j in the regions of interest can be advantageously carried out in order to learn the spatial frequencies of the underlying functions, for example pressure or speed.
- large variations in flow are present near the geometry.
- y t represents the projection of x t on the x axis (considering for example that the geometry is centered around the x axis), x t the points of the geometry on a given 3D grid, and h a hyperparameter that controls how the Gaussian probability curve decays to zero.
- h the sampling of points is greater near the x-axis.
- the 3D coordinates of the points B j are directly provided as input, the 3D coordinates are associated with a larger three-dimensional space in order to better learn the high-frequency functions based on the Fourier characteristics, such as described in the article by Tancik et al. entitled “Fourier features let networks learn high frequency functions in low dimensional domains” (preprint arXiv, 2020).
- the prediction of the simulation result is performed during a second step 220 of the method 200, thanks to the second part 550 of the neural network 500.
- the decoding part 550 predicts in this non-limiting example of the invention simulation values according to at least two types of correlated data among: - a global parameter c g of simulation thanks to the layer 570 of the neural network 500 during a sub-step 221;
- a surface datum that is to say a physical datum at at least one surface point of interest A t thanks to the layer 560 of the neural network 500 during a sub-step 222;
- volume datum that is to say a physical datum at at least one volume point of interest Bj, thanks to the layer 580 of the neural network 500 during a sub-step 223.
- Weight matrices can be used during the prediction in order to better estimate the simulation values at the surface A t and/or volume Bj points of interest.
- parameters configuring each layer of the neural network 500 are generated by learning a plurality of so-called training digital simulations during a preliminary phase 250 called training. learning.
- the training of the neural network 160 is generally essentially performed on simulation results of a similar physical phenomenon.
- the prediction has as its object a simulation of a fluid flow
- the learning is carried out essentially on simulations of a fluid flow.
- the learning of the neural network 500 is better and provides a configuration of the neural network 500, and therefore of the computer processor 100, that is more effective in predicting consistent simulation results. It should indeed be emphasized that the learning of correlated data between them makes it possible to obtain in the end a better prediction because preserving the correlation of the data which are in interaction with each other in the physical equations governing the simulated physical phenomenon.
- Figure 3 shows in the form of a block diagram a method 300 of configuring the computer processor 100 to simulate the physical phenomenon.
- the configuration method 300 comprises a first step 310 of receiving the instructions of the simulation method 200, which are stored in the computer memory 190.
- the neural network is configured to process and predict only either data coefficients and global coefficients, either surface data and volume data, or global coefficients and volume data.
- At least one time evolution curve can be used, as input or output, as a replacement or in addition to one of the data types used or predicted by any of the neural networks described above.
- the invention can be configured to process and predict any number of correlated data at the same time, such as, without limitation, global coefficients, areal data, volume data and/or or curves of temporal evolutions.
- the representative vector of the simulation is in fact a matrix comprising h rows instead of a single row.
- the numbers n' and m' are then chosen as being a multiple of h.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Fluid Mechanics (AREA)
- Algebra (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
L'invention concerne un réseau de neurones (500) configuré pour une simulation numérique d'un phénomène physique, tel qu'un écoulement d'un fluide, un transfert thermique ou un calcul de structure mécanique, par un apprentissage conjoint de données physiques de plusieurs types corrélés entre eux provenant d'une pluralité de simulations numériques dites d'entraînement.
Description
Simulation numérique d’un phénomène physique complexe multi- échelle par apprentissage automatique
DOMAINE TECHNIQUE DE L’INVENTION
[1] Le domaine de l’invention est celui de la simulation numérique.
[2] Plus précisément, l’invention concerne un procédé de simulation numérique d’un phénomène physique complexe multi-échelle par apprentissage automatique.
[3] L’invention trouve notamment des applications, pour simuler un phénomène physique complexe de type fluidique (par ex : écoulement d’un fluide, écoulement diphasique, suivi de particules, etc.), de type structurel (par ex : résistance d’une structure) et/ou de type thermique (par ex : conduction, convection, rayonnement). Une application particulière de l’invention est la simulation multiphysique, combinant plusieurs types de phénomènes, comme par exemple une convection naturelle ou forcée autour d’un objet, etc.
ÉTAT DE LA TECHNIQUE
[4] Il est connu de l’art antérieur des techniques de simulation d’un phénomène physique en discrétisant un espace par un maillage continu d’éléments dans lesquels des équations différentielles représentatives du phénomène physique sont calculées. La simulation est obtenue lorsque le calcul converge vers un résultat respectant des conditions aux limites prédéterminées ainsi qu’une continuité des données physiques entre deux éléments contigus discrétisant l’espace. Ce type de simulation porte généralement le nom de CFD (acronyme anglais de « Computational Fluid Dynamics ») lorsque l’on simule un écoulement d’un fluide, ou d’analyse par éléments finis FEA (acronyme anglais de « Finite Elément Analysis ») dans le cadre d’un calcul sur une structure mécanique, par exemple de type résistance des matériaux.
[5] L’inconvénient majeur de ces techniques antérieures est qu’elles sont généralement très consommatrices en ressources informatiques, fonction de la taille du maillage utilisé pour discrétiser l’espace de la simulation. Par exemple, il est courant d’obtenir un résultat de simulation cohérent après des centaines voire des milliers d’heures CPU (acronyme anglais de « Computer Processor Unit »), rendant la
simulation numérique onéreuse et difficilement applicable dans le cadre d’une optimisation.
[6] Afin d’améliorer l’efficacité du temps de calcul des simulations, il a été développé des techniques de simulation numérique par apprentissage automatique, également connu sous le terme anglais de « Machine Learning », mettant en œuvre des techniques d’apprentissage profond, plus connues sous le terme anglais « Deep Learning », afin de permettre d’obtenir un résultat par prédiction par rapport à des résultats calculés antérieurement sur des problèmes similaires.
[7] Il est par exemple connu de l’art antérieur, la technique de simulation numérique décrite dans l’article de Li étal qui a été publié en 2019 et qui a pour objet un solveur variationnel à apprentissage profond basé sur une méthode de décomposition de domaines, appelée méthode de décomposition profonde de domaine D3M (acronyme anglais de « deep décomposition method ») pour mettre en œuvre des calculs parallèles dans des sous-domaines physiques de la simulation.
[8] L’inconvénient majeur de cette technique est qu’elle est basée sur une reconstitution de la simulation à partir du résultat de la simulation dans chaque sous- domaine. Or l’intersection entre chaque sous-domaine pose des difficultés notables dans la simulation car les conditions aux limites ne sont mises à jour qu’après reconstitution, entraînant ainsi une surconsommation de temps de calcul.
[9] Afin d’améliorer l’efficacité du calcul et par conséquent la consommation en ressources informatiques, la Demanderesse a déposé dans ce domaine, la demande de brevet français n°1914967 qui porte sur une méthode de simulation numérique par apprentissage automatique, basée sur des prédictions locales réalisées séquentiellement à partir d’apprentissage automatique de simulations globales réalisées précédemment.
[10] Il existe toutefois un besoin d’améliorer d’avantage l’efficacité du calcul lors de la simulation numérique d’un phénomène physique complexe. La présente invention s’inscrit dans ce cadre.
EXPOSÉ DE L’INVENTION
[11] À cet effet, l’invention vise un réseau de neurones configuré pour une simulation numérique d’un phénomène physique, tel qu’un écoulement d’un fluide, un transfert thermique ou un calcul de structure mécanique, dans un espace comportant
une pluralité de points d’intérêts surfaciques liés à une géométrie comprise dans l’espace.
[12] L’espace peut être quelconque, comprenant généralement un objet autour duquel et/ou dans lequel s’effectue l’écoulement à simuler. Les points d’intérêts surfaciques correspondent généralement à des points de la surface de l’objet. Il peut également s’agir de points servant de conditions aux limites sur le bord de l’espace utilisé pour la simulation.
[13] Il convient de souligner que la géométrie peut être comprise à l’intérieur de l’espace de simulation, comme dans le cas d’un écoulement autour d’une aile d’avion et/ou au bord de l’espace de simulation, comme dans le cas d’un écoulement dans un canal.
[14] Des points d’intérêts volumiques correspondant généralement à des points dit de mesure pour lesquels des données de simulation sont attendues, peuvent également être définis dans l’espace de la simulation.
[15] Par ailleurs, la simulation numérique objet de la configuration du réseau de neurones est définie par au moins une condition de la simulation numérique.
[16] Une telle condition de la simulation numérique correspond généralement à une condition aux limites comme par exemple une vitesse liée à la géométrie dans l’espace de simulation dans le cas d’un écoulement autour d’une géométrie en mouvement, une température ambiante, un coefficient de turbulence, etc.
[17] Selon l’invention, le réseau de neurones comprend :
- une couche d’encodage des points d’intérêts surfaciques et de la ou des condition(s) de la simulation numérique dans un vecteur représentatif de la simulation ; et
- une couche de génération d’un résultat de simulation comprenant des valeurs de simulation selon au moins deux types différents à partir du vecteur représentatif de la simulation, les valeurs de simulation de différents types étant corrélées entre elles ;
[18] chaque couche du réseau de neurones étant configurée par des paramètres préalablement générés lors d’une phase d’apprentissage d’une pluralité de simulations numériques dites d’entraînement.
[19] Ainsi, grâce à l’apprentissage de données corrélées entre elles, issues d’une, ou préférentiellement de plusieurs, simulation(s) numérique(s) d’entraînement, il est possible d’obtenir un résultat de simulation de manière plus efficace en réduisant
la consommation énergétique d’un processeur informatique traitant le procédé de simulation numérique. En effet, en mélangeant lors de l’apprentissage des données de différents types - à savoir des données surfaciques, des données volumiques et/ou des coefficients globaux -, les résultats de la simulation d’un phénomène physique dans l’espace de simulation, discrétisé par un maillage, peuvent être obtenus plus efficacement car le résultat est obtenu en prédisant concomitamment des valeurs de simulation corrélées de plusieurs types. En d’autres termes, les valeurs de simulation étant corrélées, elles permettent d’améliorer très nettement la prédiction obtenue par l’algorithme d’apprentissage automatique, en conservant la cohérence entre les valeurs de simulation de différents types.
[20] Il convient de souligner que les valeurs de simulation corrélées, pouvant également être appelées données corrélées, interagissent généralement entre elles dans les équations régissant le phénomène physique objet de la simulation et qu’il est par conséquent avantageux d’apprendre cette corrélation entre les données de différents types lors de la configuration du réseau de neurones.
[21] Les valeurs de simulation de différents types peuvent être corrélées spatialement et/ou temporellement.
[22] Préférentiellement, les valeurs de simulation sont de types distincts compris parmi :
- une donnée volumique telle qu’une pression ou un vecteur-vitesse ;
- une donnée surfacique telle qu’une force de pression ou une température ;
- un coefficient global tel qu’un coefficient de transfert thermique ou une force globale de trainée ;
- une courbe évolutive en temps d’une donnée volumique ;
- une courbe évolutive en temps d’une donnée surfacique ;
- une courbe évolutive en temps d’un coefficient global.
[23] On entend par donnée volumique une donnée liée à des points d’observation dans l’espace 3D entourant la géométrie (donnée surfacique). Une donnée volumique est par exemple une pression ou un vecteur-vitesse.
[24] On entend par donnée surfacique une donnée localisée sur une surface. Une donnée surfacique est par exemple une force de pression ou une température.
[25] On entend par coefficient global, un paramètre résultant d’une intégrale globale sur l’ensemble des dimensions physiques du problème simulé. Un coefficient
global correspond par exemple à l’intégrale des forces de pression sur la géométrie d’un bateau. Un coefficient global est par exemple un coefficient de transfert thermique ou une force globale de trainée.
[26] Par exemple, sur un point d’intérêt à la surface d’un objet, la pression est directement liée au vecteur-vitesse du fluide à ce point d’intérêt et ceux dans un voisinage proche du volume. La température du fluide en ce point est également liée au vecteur-vitesse mais aussi au coefficient de transfert thermique.
[27] Cette corrélation peut également être plus globale. Par exemple, il y a une corrélation entre la trainée derrière une aile ou un bateau et la force de pression devant l’aile ou le bateau.
[28] Dans des modes de réalisation particuliers de l’invention, la couche de génération d’un résultat de simulation comprend :
- une sous-couche de génération d’au moins une valeur de simulation pour tout ou partie des points d’intérêts surfaciques à partir du vecteur représentatif de la simulation ;
- une sous-couche de génération d’au moins une valeur de simulation en tant que paramètre global de la simulation à partir du vecteur représentatif de la simulation.
[29] Dans des modes de réalisation particuliers de l’invention, l’espace comporte également une pluralité de points d’intérêts volumiques autour de la géométrie et le réseau de neurones comprend une couche d’encodage de tout ou partie des points d’intérêts volumiques dans une matrice dite représentative des points volumiques de mesure. En outre, la couche de génération d’un résultat de simulation comprend :
- une sous-couche de génération d’au moins une valeur de simulation pour tout ou partie des points d’intérêts volumiques à partir du vecteur représentatif de la simulation et d’une matrice représentative des points volumiques de mesure ;
[30] et au moins une sous-couche parmi :
- une sous-couche de génération d’au moins une valeur de simulation pour tout ou partie des points d’intérêts surfaciques à partir du vecteur représentatif de la simulation ;
- une sous-couche de génération d’au moins une valeur de simulation en tant que paramètre global de simulation à partir du vecteur représentatif de la simulation.
[31] Dans des modes de réalisation particuliers de l’invention, la couche d’encodage des points d’intérêts surfaciques et de la ou des condition(s) de la simulation numérique comprend :
- un module d’élaboration d’un vecteur intermédiaire représentatif de la géométrie et
- un module de génération du vecteur représentatif de la simulation par association du vecteur intermédiaire représentatif de la géométrie avec un vecteur comportant la ou les condition(s) de la simulation.
[32] Dans des modes de réalisation particuliers de l’invention, la couche d’encodage des points d’intérêts surfaciques comprend une sous-couche intermédiaire d’encodage des points d’intérêts surfaciques dans une matrice représentative de la géométrie.
[33] Dans des modes de réalisation particulier de l’invention, le module de génération du vecteur intermédiaire représentatif de la géométrie comprend un sous- module de compression de la matrice représentative de la géométrie afin d’obtenir le vecteur intermédiaire représentatif de la géométrie.
[34] Dans des modes de réalisation particuliers de l’invention, le sous-module de compression est d’un type parmi « Max Pooling », « Average Pooling » ou « Sum Pooling ».
[35] Dans des modes de réalisation particuliers de l’invention, le sous-module de compression correspond à une cascade décroissante de sous-couches du réseau de neurones.
[36] Grâce à la cascade décroissante, la matrice représentative de la géométrie est progressivement réduite en nombre de lignes jusqu’à obtenir le vecteur intermédiaire représentatif de la géométrie.
[37] Dans des modes de réalisation particuliers de l’invention, la sous-couche intermédiaire d’encodage des points d’intérêts surfaciques correspond à une cascade croissante de sous-couches du réseau de neurones.
[38] Cette cascade croissante permet notamment d’augmenter le nombre de caractéristiques associées à chaque point d’intérêt surfacique, dans le but d’avoir une meilleure compréhension du réseau de neurones et par conséquent une meilleure
prédiction au final. Le nombre de caractéristiques utilisé par l’encodage peut être comparé à la résolution spatiale d’une image. Plus la résolution spatiale est importante, plus l’image est définie et présente des détails précis.
[39] L’augmentation est généralement graduelle, passant par exemple à 128 caractéristiques, 512 caractéristiques puis à 2048 caractéristiques. Il convient de souligner que le nombre de caractéristiques qui correspond en d’autres termes à une résolution d’encodage est différent du nombre de caractéristiques physiquement associé au point d’intérêt surfacique, comme les coordonnées dans l’espace tridimensionnel, la normale de la surface, le rayon de courbure, ou des données physiques comme une température de surface, une rugosité de surface, etc.
[40] Dans des modes de réalisation particuliers de l’invention, la couche de génération d’un résultat de simulation comprend une cascade décroissante de sous- couches du réseau de neurones configurée pour générer au moins une valeur de simulation.
[41] La couche de génération d’un résultat qui correspond en d’autres termes à un décodage, utilise ainsi une cascade décroissante dans laquelle le nombre de caractéristiques associés aux points d’intérêts est progressivement réduit afin d’obtenir des caractéristiques physiques interprétables, c’est-à-dire les valeurs du résultat de simulation.
[42] Dans des modes de réalisation particuliers de l’invention, le réseau de neurones est de type « Multi-Layer Perception » (MLP) ou de type « Convolutional Neural Network » (CNN).
[43] Un réseau de neurones de type MLP peut également être appelé perceptron multi-couches.
[44] L’invention vise également un procédé, mis en œuvre par ordinateur, de simulation numérique d’un phénomène physique, tel qu’un écoulement d’un fluide, un transfert thermique ou un calcul de structure mécanique, dans un espace comportant une pluralité de points d’intérêts surfaciques liés à une géométrie comprise dans l’espace.
[45] Un tel procédé de simulation numérique comprend avantageusement une étape de prédiction d’un résultat de simulation par l’intermédiaire d’un réseau de neurones selon l’un quelconque des modes de réalisation précédents, le résultat de simulation comprenant des valeurs de simulation selon au moins deux types différents, corrélées entre elles.
[46] Dans des modes de mise en œuvre particuliers de l’invention, le procédé comprend également une phase d’apprentissage au cours de laquelle des paramètres configurant chaque couche du réseau de neurones sont générés par apprentissage d’une pluralité de simulations numériques dites d’entraînement.
[47] Dans des modes de mise en œuvre particuliers de l’invention, l’encodage est effectué en utilisant une cascade de nombre caractéristiques d’échantillonnage croissant et/ou le décodage est effectué en utilisant une cascade de nombre caractéristiques d’échantillonnage décroissant.
[48] L’invention vise également un produit programme d’ordinateur, stocké dans une mémoire informatique, comprenant des instructions configurant un processeur informatique pour la mise en œuvre d’un procédé de simulation numérique selon l’un quelconque des modes de mise en œuvre précédents.
[49] La mémoire informatique comprend notamment les instructions de mise en œuvre du réseau de neurones selon l’un quelconque des modes de réalisation précédents.
[50] Enfin, l’invention vise un procédé de configuration d’un processeur informatique pour simuler un phénomène physique selon la mise en œuvre d’un procédé de simulation se conformant à l’un quelconque des modes de mise en œuvre précédents, comprenant des étapes de :
- réception des instructions du procédé de simulation, stockées dans une mémoire informatique ;
- obtention d’un résultat de simulation du phénomène physique à partir du traitement desdits instructions, le résultat de simulation comprenant des valeurs de simulation selon au moins deux types différents, corrélées entre elles.
BRÈVE DESCRIPTION DES FIGURES
[51] D’autres avantages, buts et caractéristiques particulières de la présente invention ressortiront de la description non limitative qui suit d’au moins un mode de réalisation particulier des dispositifs et procédés objets de la présente invention, en regard des dessins annexés, dans lesquels :
- la figure 1 est une vue schématique d’un exemple de mode de réalisation d’un réseau de neurones selon l’invention, mis en œuvre pour effectuer une simulation numérique d’un phénomène physique ;
- la figure 2 est un schéma synoptique du procédé de simulation numérique de la figure 1 ;
- la figure 3 est un schéma synoptique d’un procédé de configuration d’un processeur informatique pour la mise en œuvre du procédé de simulation numérique des figures 1 et 2.
DESCRIPTION DÉTAILLÉE DE L’INVENTION
[52] La présente description est donnée à titre non limitatif, chaque caractéristique d’un mode de réalisation pouvant être combinée à toute autre caractéristique de tout autre mode de réalisation de manière avantageuse.
[53] On note, dès à présent, que les figures ne sont pas à l’échelle.
Exemple d’un mode de réalisation particulier
[54] La figure 1 illustre un exemple non limitatif de mode de réalisation d’un réseau de neurones 500 selon l’invention, mis en œuvre au cours d’un procédé de simulation numérique d’un phénomène physique dont les instructions sont traitées par un processeur informatique 100. Le réseau de neurones 500 est avantageusement configuré selon l’invention pour permettre d’effectuer une simulation numérique du phénomène physique de manière plus efficace par rapport aux procédés de simulation de l’art antérieur.
[55] Le phénomène physique objet de la simulation illustrée en figure 1 correspond dans le présent exemple non limitatif de l’invention à un écoulement d’un fluide à proximité d’une géométrie 110. Plus précisément, la géométrie 110 est ici un profilé d’aile d’avion se déplaçant à une vitesse constante dans l’air. L’homme du métier pourra sans difficultés adapter le présent exemple à la simulation d’autres types de phénomènes physiques combinant ou non un ou plusieurs types notamment parmi fluidique, structurel et thermique. Une simulation d’un écoulement en tout ou partie à l’intérieur d’une géométrie peut également être envisagée.
[56] La simulation est dans le présent exemple non limitatif de l’invention définie par une condition, à savoir la vitesse de la géométrie 110 dans l’espace de simulation qui est bidimensionnel dans un souci de clarté de l’illustration.
[57] Dans des variantes de ce mode de mise en œuvre particulier de l’invention, la simulation est effectuée dans un espace de simulation tridimensionnel. Une variable temps peut également être intégrée sur une autre échelle, troisième ou quatrième échelle selon les cas, pour effectuer une simulation dynamique.
[58] La surface de la géométrie 110 est représentée par des points d’intérêts Ai (i = l..n) dits surfaciques, illustrées sur l’image d’entrée 120, éventuellement associés chacun avec un vecteur normal Nt à la surface. Les points d’intérêt At sont ici des points centraux des éléments définissant la surface de l’objet de la simulation. Chaque point d’intérêts At est ici défini par / caractéristiques physiques, dont notamment les coordonnées du point d’intérêt At, voire le vecteur normal Nt ou des valeurs physiques comme une température à la surface ou un coefficient de rugosité de surface.
[59] Le réseau de neurones 500 comprend une couche 510 d’encodage des points d’intérêts surfaciques At et des conditions de la simulation numérique dans un vecteur 150 représentatif de la simulation.
[60] À cet effet, les points d’intérêts surfaciques At sont encodés dans un premier temps dans une matrice 145 de taille n x p par une sous-couche 515 de la couche 510 d’encodage du réseau de neurones 500. Le nombre entier p, supérieur au nombre / de caractéristiques physiques, correspond à un nombre caractéristique d’échantillonnage permettant de détailler les points surfaciques At. Plus le nombre caractéristique d’échantillonnage est important, mieux les points surfaciques At seront caractérisés de manière précise. En d’autres termes, le nombre caractéristique d’échantillonnage peut être considéré au même titre qu’une résolution spatiale d’une image. Plus la résolution spatiale est importante (par exemple 300 au lieu de 100 ppp), mieux l’image sera définie et plus les détails de l’image seront précis.
[61] Il convient de souligner que pour l’encodage des points surfaciques, la prise en compte des normales Nt peut être avantageusement effectuée afin d’obtenir un encodage plus représentatif du volume de la géométrie 110, notamment pour connaître l’orientation de la géométrie 110 par rapport à l’écoulement.
[62] La sous-couche 515 peut en pratique correspondre à une cascade croissante de sous-couches du réseau de neurones, augmentant à chaque sous- couche successive le nombre de caractéristiques d’échantillonnage, comme par exemple 128, 512, 2048, afin d’augmenter la précision des points encodés et donc la
prédiction obtenue au final. Il convient en effet de souligner que plus le nombre de caractéristiques d’échantillonnage est important, plus les phénomènes physiques à fort gradient pourront être bien définis.
[63] La matrice 145 est ensuite compressée dans un deuxième temps par un module 148 de compression couramment connue sous le terme anglais de « Max Pooling ». Ce traitement de « Max Pooling » permet de réduire la matrice 145 à un vecteur 147 de taille p, qui est représentatif de la géométrie 110, en prenant notamment la valeur maximale de chaque colonne de la matrice 145. Alternativement, d’autres traitements de compression d’une matrice en un vecteur peuvent être envisagés comme par exemple effectuer une somme ou une moyenne des valeurs d’une colonne par exemple. Ces techniques sont généralement connues respectivement sous les termes anglais de « Sum Pooling » et de « Average Pooling ». Une cascade descendante de sous-couches du réseau de neurones peut également être envisagée pour réduire la matrice 145.
[64] Le vecteur 147 de taille p obtenu est ensuite avantageusement concaténé avec un vecteur 149 comportant les conditions de la simulation, ici la vitesse de la géométrie 110 qui est ici un vecteur à deux dimensions mais qui peut être un vecteur à trois dimensions dans le cadre d’une simulation tridimensionnelle, afin d’obtenir un vecteur 150 de taille p + k représentatif de la simulation à calculer. Il convient de souligner que dans des variantes de mise en œuvre de l’invention, plusieurs conditions de la simulation peuvent être concaténées au vecteur de taille p, comme par exemple une température ambiante, une pression atmosphérique, etc.
[65] Des points d’intérêts Bj (J = 1.. m) dits volumiques peuvent également être choisis dans l’écoulement du fluide à proximité de la géométrie 110. Parmi les m points d’intérêts volumiques Bj illustrés sur la deuxième image d’entrée 130, sont sélectionnés m' points correspondant à des points, dits de mesure, pour lesquelles des valeurs de simulation autour de la géométrie sont attendues.
[66] Le réseau de neurones 500 comprend alors une couche 520 d’encodage des points d’intérêts volumiques Bj dans une matrice 146, de taille m x q qui est ensuite réduite, par l’intermédiaire d’un module 143 du réseau de neurones 500 à une matrice 144 représentative des points volumiques de mesure, de taille m' x q, en sélectionnant les m' points volumiques de mesure parmi les m points d’intérêts volumiques Bj pour lesquels une valeur physique est attendue.
[67] Chaque point d’intérêts Bj est ici défini par g caractéristiques physiques, dont notamment les coordonnées du point d’intérêt Bj, voire des valeurs physiques comme par exemple une température, une vitesse ou une pression.
[68] Comme pour la sous-couche 515, la couche 520 d’encodage peut comprendre une cascade croissante de sous-couches du réseau de neurones, augmentant à chaque sous-couche successive le nombre de caractéristiques d’échantillonnage.
[69] Les couches 510 et 520 sont ainsi comprises dans une première partie 530 du réseau de neurones 500, dite d’encodage. Au cours de cette première partie 530, des encodages successifs peuvent être effectués dans les couches 510 et 520 d’encodage en augmentant à chaque étape le nombre caractéristique d’échantillonnage afin de capter des détails de plus en plus précis.
[70] Le vecteur représentatif 150 de la simulation et la matrice 144 représentative des points volumiques de mesure est ensuite utilisé par une deuxième partie 550 du réseau de neurones 500, dite de décodage, permettant de prédire le résultat de la simulation du phénomène physique.
[71] À cet effet, la deuxième partie 550 du réseau de neurones 500 comprend une couche 560 de génération d’une valeur de simulation pour tout ou partie des points d’intérêts surfaciques At de la géométrie 110, à savoir n' points d’intérêts surfaciques Ai t à partir d’une matrice 160 formée par n' vecteurs représentatifs 150 de la simulation, soit un vecteur 150 par point d’intérêt surfacique At pour lequel une valeur de simulation est attendue. Les valeurs de simulation ainsi obtenues sont illustrées sur l’image 170.
[72] La partie 550 de décodage du réseau de neurones 500 comprend également une couche 570 de génération d’un paramètre global cg, en tant que valeur de simulation, à partir du vecteur 150 représentatif de la simulation. Il convient de souligner que plusieurs paramètres globaux peuvent également être prédits par la couche 570.
[73] Lorsque des points d’intérêts volumiques Bj sont initialisés, la partie 550 de décodage du réseau de neurones 500 comprend également une couche 580 de génération d’une valeur de simulation pour tout ou partie des points d’intérêts Bj, ici pour les m' points volumiques de mesure, à partir du vecteur 150 représentatif de la simulation et de la matrice 144 représentative des points volumiques de mesure. Plus
précisément, la couche 580 traite une matrice 175 associant la matrice 146 représentative des m' points volumiques de mesure avec m! vecteurs 150 représentatifs de la simulation. Les valeurs de simulation aux points d’intérêts volumiques Bj ainsi obtenues sont illustrées sur l’image 180.
[74] Inversement à la partie 530 d’encodage, des décodages successifs peuvent être effectués dans les couches 560 et 580 de décodage en réduisant à chaque étape le nombre caractéristique d’échantillonnage afin d’extraire des valeurs de plus en plus précises du résultat de simulation. Une cascade de nombre caractéristique d’échantillonnage décroissant est ainsi mise en œuvre.
[75] Pour chaque point d’intérêt surfacique At et pour chaque point d’intérêt volumique Bj sont ainsi obtenues des valeurs de simulation caractérisées chacune respectivement par f caractéristiques et g' caractéristiques, par exemple une pression, une vitesse, une température, etc. Le nombre f est bien entendu inférieur à (p + k), tandis que le nombre g' est inférieur à (p + k + q).
[76] Il convient de souligner que le réseau de neurones 500, qui est ici du type MLP, a été avantageusement entraîné auparavant au cours d’une phase d’apprentissage sur une pluralité de simulations numériques d’entraînement afin de générer les paramètres de chaque couche 510, 520, 560, 570, 580 du réseau de neurones 500.
[77] Ainsi, grâce à cet entraînement conjoint de l’ensemble des couches du réseau de neurones 500, la corrélation des données de différents types (surfaciques, volumiques, coefficients globaux) est avantageusement conservée par l’apprentissage. Les résultats de simulation prédits par le réseau de neurones 500 restent par conséquent cohérents.
[78] À titre d’exemple, les résultats obtenus avec le processeur informatique 100 sont nettement meilleurs avec le procédé de simulation numérique de l’invention que ceux de l’art antérieur. Un gain en précision et en temps de calcul a ainsi été observé par rapport au procédé de simulation par prédiction tel que décrit dans la demande de brevet n°1914967 de la Demanderesse. Le taux d’erreur a notamment été réduit à une valeur inférieure à 5 %. Le temps de calcul pour obtenir les résultats de simulation avec les mêmes critères de convergence a quant à lui été réduit d’un facteur de l’ordre de 10. Il convient en effet de souligner que le résultat de simulation est prédit directement par le réseau de neurones 500 sans utilisation d’itérations,
consommatrices de ressources informatiques, comme dans le précédent procédé de simulation par prédiction.
[79] Le procédé 200 de simulation est avantageusement stocké sous la forme d’instructions dans une mémoire informatique 190 reliée au processeur informatique 100.
[80] La figure 2 représente le procédé 200 de simulation numérique du phénomène physique sous la forme d’un schéma synoptique.
[81] Le procédé 200 comprend une première étape 210 d’initialisation des paramètres de la simulation, et notamment d’encodage des points d’intérêts surfaciques At et volumiques Bj et des conditions de la simulation par la partie d’encodage 530 du réseau de neurones 500.
[82] La première étape 210 comprend une première sous-étape 211 d’encodage des points d’intérêts surfaciques At et des conditions de la simulation numérique dans le vecteur 150 représentatif de la simulation. Cet encodage, mis en œuvre par la couche 510 du réseau de neurones 500, est notamment basé sur une architecte de type PointNet permettant de classifier des points d’une géométrie, voire d’effectuer une segmentation de la géométrie. Une telle méthode est par exemple décrite dans Qi, Charles R., et al. "Pointnet: Deep learning on point sets for 3d classification and segmentation." (Proceedings of the IEEE conférence on computer vision and pattern récognition. 2017).
[83] La première étape 210 peut également comprendre une deuxième sous- étape 212 d’encodage des points d’intérêts volumiques Bj dans la matrice 144 représentative des points volumiques de mesure, pouvant correspondre généralement à une réduction de la matrice 146 encodant les points d’intérêts volumiques Bj lorsqu’une sélection des points de mesure parmi les points volumiques Bj est effectuée. Cette deuxième sous-étape 212 est mise en œuvre par la couche optionnelle 520 du réseau de neurones 500.
[84] Au cours de cet encodage, un échantillonnage plus important des points d’intérêts volumiques Bj dans les régions d’intérêts peut être avantageusement effectué afin d’apprendre les fréquences spatiales des fonctions sous-jacentes, par exemple de pression ou de vitesse.
[85] Par exemple, dans le cas d’une simulation d’un écoulement autour d’une géométrie longiligne, telle par exemple qu’une rame d’un train, de grandes variations de débit sont présentes à proximité de la géométrie.
[86] Il peut ainsi être avantageux de considérer la probabilité de distribution d’un point lors de la simulation en tenant compte de cet axe privilégié, correspondant par exemple à l’axe x. Dans cet exemple particulier, la probabilité de distribution d’un point Bj peut alors s’écrire :
[87] où yt représente la projection de xt sur l’axe x (en considérant par exemple que la géométrie est centrée autour de l’axe x), xt les points de la géométrie sur une grille 3D donnée, et h un hyperparamètre qui contrôle comment la courbe gaussienne de la probabilité décroit à zéro. Lorsque la valeur de h est petite, l’échantillonnage des points est plus important à proximité de l’axe des x.
[88] Dans le présent exemple de simulation autour d’un profilé d’aile d’avion, illustré en figure 1 , l’échantillonnage des points d’intérêts volumiques Bj est plus important dans la région immédiatement à proximité de l’aile 110 d’avion. Cette région est considérée comme une région d’intérêt pour la simulation.
[89] Optionnellement, lorsque les coordonnées 3D des points Bj sont directement fournies en entrée, les coordonnées 3D sont associées à un espace tridimensionnel plus important afin de de mieux apprendre les fonctions hautes fréquences en se basant sur les caractéristiques de Fourrier, telles que décrites dans l’article de Tancik et al. intitulé « Fourier features let networks learn high frequency functions in low dimensional domains » (preprint arXiv, 2020).
[90] Lorsque les données d’entrée de la simulation sont encodées, la prédiction du résultat de simulation est effectuée au cours d’une deuxième étape 220 du procédé 200, grâce à la deuxième partie 550 du réseau de neurones 500.
[91] La partie 550 de décodage prédit dans le présent exemple non limitatif de l’invention des valeurs de simulation selon au moins deux types de données corrélées parmi :
- un paramètre global cg de simulation grâce à la couche 570 du réseau de neurones 500 au cours d’une sous-étape 221 ;
- une donnée surfacique, c’est-à-dire une donnée physique à au moins un point d’intérêt surfacique At grâce à la couche 560 du réseau de neurones 500 au cours d’une sous-étape 222 ; et
- une donnée volumique, c’est-à-dire une donnée physique à au moins un point d’intérêt volumique Bj, grâce à la couche 580 du réseau de neurones 500 au cours d’une sous-étape 223.
[92] Des matrices de poids peuvent être utilisées au cours de la prédiction afin de mieux estimer les valeurs de simulation aux points d’intérêts surfaciques At et/ou volumiques Bj.
[93] Il convient également de souligner que selon le nombre de caractéristiques utilisé lors de l’échantillonnage, les prédictions sont plus ou moins fines. Par exemple, il n’est pas à exclure que les résultats obtenus soient lissés à cause d’un nombre de caractéristiques insuffisant car les fonctions à hautes fréquences peuvent alors être moyennées dans un intervalle trop important. Un choix judicieux lors de l’échantillonnage des points surfaciques At et volumiques Bj peut ainsi être effectué pour améliorer les résultats de la prédiction, en raffinant les points dans les zones susceptibles d’avoir un fort gradient.
[94] Afin de prédire un résultat de simulation qui soit cohérent, des paramètres configurant chaque couche du réseau de neurones 500 sont générés par apprentissage d’une pluralité de simulations numériques dites d’entraînement au cours d’une phase préalable 250 dite d’apprentissage.
[95] Il convient de souligner que les simulations numériques d’entraînement sont généralement calculées par des méthodes classiques de CFD en utilisant des maillages très raffinés afin de permettre un meilleur apprentissage des données. La base de données d’entraînement comprenant ces simulations numériques peut également être complétées par des simulations numériques issues de prédiction par exemple par le présent procédé de simulation.
[96] Par ailleurs, lorsque le réseau de neurones 160 est configuré pour prédire des données de simulation d’un phénomène physique donné, l’apprentissage du réseau de neurones 160 est généralement essentiellement effectué sur des résultats de simulation d’un phénomène physique similaire. Par exemple, lorsque la prédiction
a pour objet une simulation d’un écoulement fluide, l’apprentissage est effectué essentiellement sur des simulations d’un écoulement fluide.
[97] Grâce à l’apprentissage conjoint des différentes couches d’encodage et de décodage sur des données de différents types (coefficients globaux, valeurs surfaciques voire valeurs volumiques) mais corrélées entre elles, l’apprentissage du réseau de neurones 500 est meilleur et permet d’obtenir une configuration du réseau de neurones 500 et par conséquent du processeur informatique 100, qui soit plus efficace pour prédire des résultats de simulation cohérents. Il convient en effet de souligner que l’apprentissage de données corrélées entre elles permet d’obtenir au final une meilleure prédiction car conservant la corrélation des données qui sont en interaction les unes avec les autres dans les équations physiques régissant le phénomène physique simulé.
[98] Plusieurs combinaisons de phénomènes physiques peuvent également être avantageusement utilisées lors de l’apprentissage afin d’améliorer les paramètres du réseau de neurones 500 et par conséquent la prédiction effectuée, notamment dans le cadre de simulation multi-physique. Par exemple, pour une simulation d’une convection autour d’un objet, comprenant une problématique d’écoulement fluide, de thermique, de conduction dans l’objet, voire de déformation mécanique de l’objet, il peut être avantageux d’entrainer le réseau de neurones avec une pluralité de simulation combinant chacune une ou plusieurs de ces problématiques, l’ensemble des problématiques étant comprises dans la base de données d’apprentissage.
[99] La figure 3 représente sous la forme d’un schéma synoptique un procédé 300 de configuration du processeur informatique 100 pour simuler le phénomène physique.
[100] Le procédé 300 de configuration comprend une première étape 310 de réception des instructions du procédé 200 de simulation, qui sont stockées dans la mémoire informatique 190.
[101] Ces instructions sont ensuite traitées au cours d’une deuxième étape 320 afin d’obtenir le résultat de simulation du phénomène physique, le résultat comprenant des données corrélées.
Autres avantages et caractéristiques optionnelles de l’invention
[102] Dans des variantes de l’exemple de mode de réalisation précédent, le réseau de neurones est configuré pour traiter et prédire uniquement soit des données
surfaciques et des coefficients globaux, soit des données surfaciques et des données volumiques, soit des coefficients globaux et des données volumiques.
[103] Il convient également de souligner qu’au moins une courbe d’évolution temporelle peut être utilisés, en entrée ou en sortie, en remplacement ou en complément de l’un des types de données utilisés ou prédits par l’un quelconque des réseaux de neurones décrits auparavant.
[104] Il convient également de souligner que l’invention peut être configurer pour traiter et prédire n’importe quel nombre de données corrélées en même temps, comme par exemple sans limitation, des coefficients globaux, des données surfaciques, des données volumiques et/ou des courbes d’évolutions temporelles.
[105] Dans des variantes de réalisation, le vecteur représentatif de la simulation est en fait une matrice comprenant h lignes au lieu d’une seule ligne. Les nombres n' et m' sont alors choisis comme étant un multiple de h.
Claims
1. Réseau de neurones (500) configuré pour une simulation numérique d’un phénomène physique, tel qu’un écoulement d’un fluide, un transfert thermique ou un calcul de structure mécanique, dans un espace comportant une pluralité de points d’intérêts surfaciques At liés à une géométrie (110) comprise dans l’espace, la simulation numérique étant définie par au moins une condition de la simulation numérique, caractérisé en ce qu’il comprend :
• une couche (510) d’encodage des points d’intérêts surfaciques At et de la ou des condition(s) de la simulation numérique dans un vecteur (150) représentatif de la simulation ; et
• une couche (550) de génération d’un résultat de simulation comprenant des valeurs de simulation selon au moins deux types différents à partir du vecteur (150) représentatif de la simulation, les valeurs de simulation de différents types étant corrélées entre elles ; chaque couche du réseau de neurones étant configurée par des paramètres préalablement générés lors d’une phase d’apprentissage d’une pluralité de simulations numériques dites d’entraînement.
2. Réseau de neurones (500) selon la revendication 1, dans lequel les valeurs de simulation sont de types compris parmi :
• une donnée volumique ;
• une donnée surfacique ;
• un coefficient global ;
• une courbe évolutive en temps d’une donnée volumique ;
• une courbe évolutive en temps d’une donnée surfacique ;
• une courbe évolutive en temps d’un coefficient global.
3. Réseau de neurones (500) selon l’une quelconque des revendications 1 à 2, dans lequel les valeurs de simulation de différents types sont corrélées spatialement et/ou temporellement.
4. Réseau de neurones (500) selon l’une quelconque des revendications 1 à 3, dans lequel la couche (550) de génération d’un résultat de simulation comprend :
• une sous-couche (560) de génération d’au moins une valeur de simulation pour tout ou partie des points d’intérêts surfaciques At à partir du vecteur (150) représentatif de la simulation ;
• une sous-couche (570) de génération d’au moins une valeur de simulation en tant que paramètre global de la simulation à partir du vecteur (150) représentatif de la simulation.
5. Réseau de neurones (500) selon l’une quelconque des revendications 1 à 3, dans lequel l’espace comporte également une pluralité de points d’intérêts volumiques Bj autour de la géométrie (110), dans lequel le réseau de neurones comprend une couche (520) d’encodage de tout ou partie des points d’intérêts volumiques Bj dans une matrice (144) dite représentative des points volumiques de mesure, et dans lequel la couche (550) de génération d’un résultat de simulation comprend :
• une sous-couche (580) de génération d’au moins une valeur de simulation pour tout ou partie des points d’intérêts volumiques Bj à partir du vecteur (150) représentatif de la simulation et d’une matrice (144) représentative des points volumiques de mesure ; et au moins une sous-couche parmi :
• une sous-couche (560) de génération d’au moins une valeur de simulation pour tout ou partie des points d’intérêts surfaciques At à partir du vecteur (150) représentatif de la simulation ;
• une sous-couche (570) de génération d’au moins une valeur de simulation en tant que paramètre global de simulation à partir du vecteur (150) représentatif de la simulation.
6. Réseau de neurones selon l’une quelconque des revendications 1 à 5, dans lequel la couche (510) d’encodage des points d’intérêts surfaciques At et de la ou des condition(s) de la simulation numérique comprend :
• un module (148) d’élaboration d’un vecteur (147) intermédiaire représentatif de la géométrie (110) et
• un module de génération du vecteur (150) représentatif de la simulation par association du vecteur intermédiaire représentatif de la géométrie avec un vecteur comportant la ou les condition(s) de la simulation.
7. Réseau de neurones selon la revendication 6, dans lequel la couche d’encodage des points d’intérêts surfaciques At comprend une sous-couche (151) intermédiaire d’encodage des points d’intérêts surfaciques At dans une matrice (145) représentative de la géométrie (110).
8. Réseau de neurones selon la revendication 7, dans lequel le module de génération du vecteur intermédiaire représentatif de la géométrie comprend un sous-module de compression (148) de la matrice représentative de la géométrie (110) afin d’obtenir le vecteur intermédiaire représentatif de la géométrie (110).
9. Réseau de neurones selon la revendication 8, dans lequel le sous-module de compression est d’un type parmi « Max Pooling », « Average Pooling » ou « Sum Pooling »
10. Réseau de neurones selon la revendication 8, dans lequel le sous-module de compression correspond à une cascade décroissante de sous-couches du réseau de neurones.
11. Réseau de neurones selon l’une quelconque des revendications 7 à 10, dans lequel la sous-couche (151) intermédiaire d’encodage des points d’intérêts surfaciques At correspond à une cascade croissante de sous-couches du réseau de neurones.
12. Réseau de neurones selon l’une quelconque des revendications 1 à 11, dans lequel la couche (550) de génération d’un résultat de simulation comprend une cascade décroissante de sous-couches du réseau de neurones configurée pour générer au moins une valeur de simulation.
13. Réseau de neurones selon l’une quelconque des revendications précédentes, caractérisé en ce qu’il est de type « Multi-Layer Perceptron » (MLP) ou de type « Convolutional Neural Network » (CNN).
14. Procédé (200), mis en œuvre par ordinateur, de simulation numérique d’un phénomène physique, tel qu’un écoulement d’un fluide, un transfert thermique ou un calcul de structure mécanique, dans un espace comportant une pluralité de points d’intérêts surfaciques At liés à une géométrie (110) comprise dans l’espace, caractérisé en ce que le procédé de simulation numérique comprend une étape (220) de prédiction d’un résultat de simulation par l’intermédiaire d’un réseau de neurones selon l’une quelconque des revendications 1 à 13, le résultat de simulation comprenant des valeurs de simulation selon au moins deux types différents, corrélées entre elles.
15. Procédé de simulation numérique selon la revendication 14, comprenant également une phase (250) d’apprentissage au cours de laquelle des paramètres configurant chaque couche du réseau de neurones sont générés par apprentissage d’une pluralité de simulations numériques dites d’entraînement.
16. Produit programme d’ordinateur, stocké dans une mémoire informatique (190), comprenant des instructions configurant un processeur informatique (100) pour la mise en œuvre d’un procédé de simulation numérique selon l’une quelconque des revendications 14 à 15.
17. Procédé (300) de configuration d’un processeur informatique pour simuler un phénomène physique dans un espace, selon la mise en œuvre d’un procédé (200) de simulation se conformant à l’une quelconque des revendications 15 à 16, comprenant des étapes de :
• réception (310) des instructions du procédé de simulation, stockées dans une mémoire informatique ;
• obtention (320) d’un résultat de simulation du phénomène physique à partir du traitement desdits instructions, le résultat de simulation comprenant des valeurs de simulation selon au moins deux types différents, corrélées entre elles.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/FR2021/050721 WO2022229517A1 (fr) | 2021-04-26 | 2021-04-26 | Simulation numérique d'un phénomène physique complexe multi-échelle par apprentissage automatique |
Publications (1)
Publication Number | Publication Date |
---|---|
EP4330846A1 true EP4330846A1 (fr) | 2024-03-06 |
Family
ID=76695775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP21736004.9A Pending EP4330846A1 (fr) | 2021-04-26 | 2021-04-26 | Simulation numérique d'un phénomène physique complexe multi-échelle par apprentissage automatique |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240211664A1 (fr) |
EP (1) | EP4330846A1 (fr) |
WO (1) | WO2022229517A1 (fr) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024200918A1 (fr) | 2023-03-30 | 2024-10-03 | Extrality | Procédé de réalisation d'un objet technique via une simulation numérique implicite et continue d'un phénomène physique complexe multi-échelle par apprentissage profond |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11295045B2 (en) * | 2019-04-03 | 2022-04-05 | GM Global Technology Operations LLC | Tools and methods for aerodynamically optimizing the geometry of vehicle bodies |
-
2021
- 2021-04-26 EP EP21736004.9A patent/EP4330846A1/fr active Pending
- 2021-04-26 WO PCT/FR2021/050721 patent/WO2022229517A1/fr active Application Filing
- 2021-04-26 US US18/556,950 patent/US20240211664A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022229517A1 (fr) | 2022-11-03 |
US20240211664A1 (en) | 2024-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108073876B (zh) | 面部解析设备和面部解析方法 | |
US20180181867A1 (en) | Artificial neural network class-based pruning | |
Dimitrievski et al. | Learning morphological operators for depth completion | |
CN111340754A (zh) | 一种基于飞机蒙皮表面缺陷检测和分类的方法 | |
CN108171122A (zh) | 基于全卷积网络的高光谱遥感图像的分类方法 | |
EP2297564A1 (fr) | Procédé et dispositif d'analyse fréquentielle de données | |
EP0473476A1 (fr) | Procédé et dispositif de localisation en temps réel de contours rectilignes dans une image numérisée, notamment pour la reconnaissance de formes dans un traitement d'analyse de scène | |
US11164306B2 (en) | Visualization of inspection results | |
Ouyang et al. | Vehicle target detection in complex scenes based on YOLOv3 algorithm | |
EP2364490A1 (fr) | Dispositif a architecture pipeline de flot de donnees pour la reconnaissance et la localisation d'objets dans une image par balayage de fenetres de detection | |
EP4330846A1 (fr) | Simulation numérique d'un phénomène physique complexe multi-échelle par apprentissage automatique | |
FR2966951A1 (fr) | Procede de simulation pour determiner des coefficients aerodynamiques d'un aeronef | |
CN113989631A (zh) | 一种基于卷积神经网络的红外图像目标检测网络压缩方法 | |
JP7188856B2 (ja) | 動的な画像解像度評価 | |
EP4030333A1 (fr) | Simulation du comportement d'un vehicule dans un fluide par reseau de neurones hamiltonien | |
EP2270679A1 (fr) | Procédé de contrôle optimal d'un système modélisable par des équations de Hamilton Jacobi Bellman | |
CN111915621B (zh) | 一种融合深度神经网络与cv模型的污损图像分割方法 | |
Salvador et al. | A Bayesian approach for natural image denoising | |
CN112270265B (zh) | 基于分裂-聚合卷积网络的sar图像舰船检测方法 | |
WO2024200918A1 (fr) | Procédé de réalisation d'un objet technique via une simulation numérique implicite et continue d'un phénomène physique complexe multi-échelle par apprentissage profond | |
EP4325388B1 (fr) | Apprentissage automatique pour récupération de cao topologiquement sensible | |
Yi et al. | Rock classification model based on transfer learning and convolutional neural network | |
EP0749014A1 (fr) | Procédé de reconstruction d'un champ dense de caractéristiques associées à un phénomène physique | |
WO2024133952A1 (fr) | Procédé et système informatisé de détermination d'une cartographie d'un champ de vitesse d'une surface maritime | |
FR2669137A1 (fr) | Procede de reconnaissance d'objets tridimensionnels par analyse d'image. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20231127 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) |