WO2006018570A2 - Procede et systeme d'identification de zones de proximite entre plusieurs objets geometriques simules numeriquement - Google Patents
Procede et systeme d'identification de zones de proximite entre plusieurs objets geometriques simules numeriquement Download PDFInfo
- Publication number
- WO2006018570A2 WO2006018570A2 PCT/FR2005/050597 FR2005050597W WO2006018570A2 WO 2006018570 A2 WO2006018570 A2 WO 2006018570A2 FR 2005050597 W FR2005050597 W FR 2005050597W WO 2006018570 A2 WO2006018570 A2 WO 2006018570A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- objects
- during
- session
- pions
- tournament
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 80
- 230000035772 mutation Effects 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims abstract description 7
- 241000920340 Pion Species 0.000 claims description 100
- 238000006073 displacement reaction Methods 0.000 claims description 24
- 238000004364 calculation method Methods 0.000 claims description 12
- 230000003252 repetitive effect Effects 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 238000005259 measurement Methods 0.000 claims description 4
- 238000006467 substitution reaction Methods 0.000 claims description 2
- 239000003550 marker Substances 0.000 abstract 1
- 101100505760 Mus musculus Gsap gene Proteins 0.000 description 33
- 238000004088 simulation Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 13
- 238000013459 approach Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000011156 evaluation Methods 0.000 description 7
- 230000003993 interaction Effects 0.000 description 7
- 239000003471 mutagenic agent Substances 0.000 description 7
- 238000012360 testing method Methods 0.000 description 7
- 230000010429 evolutionary process Effects 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000002146 bilateral effect Effects 0.000 description 2
- 238000005094 computer simulation Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011437 continuous method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000011438 discrete method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 238000001303 quality assessment method Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/21—Collision detection, intersection
Definitions
- the present invention relates to a method and system for identifying proximity areas and evaluating distances between several numerically simulated objects.
- An object is thus constituted by a geometry within a digital environment.
- a virtual reality platform ( Figure 1) includes interfaces 10 between the virtual environment and the operator (s) participating in the simulation. There are several types of interfaces, each for the stimulation of one of the senses of the operator or operators. It is thus possible to implement in an RV platform for example visual interfaces 11, auditory 12, haptics 13.
- An RV platform also includes a dynamic simulator
- a dynamic simulator 20 is comparable to a physical engine whose role will be to govern the evolution of a virtual world composed of objects having dynamic and geometric properties. This task can be broken down into two sub-tasks: the management of the dynamic of the virtual world (dynamic engine 21) and the management of the collisions that take place within it (collision engine 22).
- Figure 2 illustrates the operating diagram of a dynamic motor 21 in the case of a single object.
- the first step 211 consists in taking stock of the forces applied to the virtual object. These efforts to which the subject is subject may be of several origins: gravity, joint constraints (also called bilateral links), operator manipulation. Their accumulation will make it possible to obtain a static torsor of effort.
- the second step 212 will be determined the linear and angular accelerations of the object by applying the fundamental principle of dynamics (PFD).
- PFD fundamental principle of dynamics
- the new position and orientation are then directly determined by double integration during the third step 213. It seems interesting to observe that the fact of evolving in discrete time imposes to approximate the integration. For this, several methods are possible (Euler, Tustin, Runge-Kutta, ).
- the last step 214 is simply to update the position and orientation of the object under consideration.
- Collision engine 1 22 provides a task that is decomposable into two phases; collision detection and generation of contact forces. Collision detection can be carried out according to several techniques depending on the type of geometry used and the expected performance. In the context of the discrete methods, which constitute the great majority of the techniques used, this first phase consists in detecting the interpenetrations between the different pairs of objects at every moment. On the contrary, continuous methods detect the exact moment of the first contact between objects.
- this first phase is the heaviest task to be performed by the dynamic simulator. Indeed, the amount of computations to be performed as part of this detection is directly related to the nature of the objects evolving within the virtual world, particularly in terms of geometric complexities.
- this first phase of collision detection it remains to determine the forces resulting from collisions between the pairs of solids concerned. These are usually decomposed into a normal reaction force and a tangential friction force. It is thus necessary to model these collisions. To do this, three methods are mainly used: penalty, impulse and constraint.
- the first technique will consist in calculating, at any time, the minimum distance between two objects E and E2 of polyhedral type and thus know the geometric elements el, e2 closest (see Figure 3).
- Several approaches have thus been implemented in order to obtain this minimum distance as well as the geometric elements concerned.
- Most of these techniques consider convex objects. These The latter can still be used in the context of simulations involving concave objects by decomposition of the latter into convex elements.
- a first method for determining this minimum distance and the elements concerned was introduced by Gilbert, Johnson and Keerthi. This method, based on the Minkowsky difference and the convex optimization, makes it possible to determine the distance between two convex envelopes of two sets of points El and £ -?
- a second approach taking into account a hierarchy of enclosing volumes is to partition the spaces occupied by the objects composing the scene.
- each object will be approximated by a bounding volume itself decomposed into a tree of subvolumes (generally of similar topology to the enclosing volume "root").
- the strategy is to spatially locate areas that may be interpenetrating.
- the presence of overlapping bounding volumes of distinct objects is tested, and then, in the event of an overlap, a similar recursive test is performed at the level of the sub-volumes they contain.
- This strategy avoids a multitude of irrelevant tests and is widely used within existing physical engines.
- these overlap tests can be very numerous in some cases (plan / plan for example) and thus compromise the performance of the simulation.
- updating these volumes can be expensive.
- spheres 1 isothetic bounding boxes 2 (AABB) and oriented bounding boxes 3 (OBB) (see Figures 4a, 4b, 4c).
- the all-encompassing spheres have the main advantage of the simplicity of the overlap tests. Indeed, the test of overlap of two spheres is limited to a comparison between the distance separating their center and the sum of their respective rays. However, the spheres generally give a less optimal approximation of the geometry considered, in comparison with the OBBs for example which, despite much heavier overlapping tests (theorem of the separator axes), limit the execution of non-relevant tests by a minimum encompassed volume.
- the enclosing volume hierarchies are in the form of trees, often binary in order to optimize their course. We also talk about Octrees (8 branches / node), or Quadtrees (4 branches / node more suited to 2D geometries).
- the volume swept by a moving solid during a time interval corresponds to the union of the zones of space that it has occupied during this period.
- This geometric tool has several application domains: robotics workspace evaluation, geometric modeling in CAD.
- FIGS. 5a and 5b which respectively illustrate the initial 4 and final 5 positions of the object and the corresponding swept volume 6.
- Figures 7a and 7b show a technique based on a hybrid discretization using voxels (or “voxmap”) and the combination of point cloud (or “shell point”) and normals.
- This technique is illustrated in Figures 7a and 7b.
- Figure 7a shows a first original object 8 represented as voxels 8a and a second original object 9 represented as a cloud of points and normals 9a.
- FIG. 7b shows the detail of an interaction between a voxel 8a of a static surface of the object 8 and the cloud of points of the object 9 with the tangent plane 9b to the static surface and the force vector 9a according to the normal to the point cloud of object 9.
- This hybrid discretization technique requires a relatively long pre-computation phase but allows complex geometric data to be managed.
- Implicit surfaces are the set of points for which 0, the interior of the model being the points for which / ( ⁇ ,>', - :) ⁇ 0.
- This method is particularly interesting in the case where the collisions are not very frequent (the collision calculation, the determination of C ⁇ ( ⁇ , is expensive) and in the absence of friction, it has the advantage of not not have any adverse effects on the stability of the overall system.
- the pulse method is a kinematic approach that equates the interaction between two rigid objects to an impact.
- the collision is thus considered as a quasi-instantaneous event generating a significant effort (called impulse) on the objects concerned.
- impulse a significant effort
- the pulse is calculated to separate them into a single iteration. It is often the condition that the objects concerned have a ballistic trajectory in order to optimize the calculations.
- the penalty method makes it possible to manage repulsion efforts between rigid or deformable objects. It consists in applying to colliding objects 14, 15 a force proportional to the depth of interpenetration (we speak of stiffness). The "mechanism" of repulsion is thus often equated with a system 16 of derivative proportional type (see Figure 8). This method requires knowing the penetration vector (which can be expensive) and often generates instabilities (especially in cases of multi-point collisions). It follows from the foregoing that the evaluation of distances and the identification of proximity zones, and where appropriate the detection of collisions, between geometric objects evolving within a digital environment, is seen as an essential step in a a large number of disciplines, such as virtual reality or the scripting of robotic system movements.
- the present invention aims at remedying the drawbacks of the prior art and at making it possible to respond to most of the recurring problems in the evaluation of distances or the identification of proximity zones, and in particular in the detection of collisions by providing solutions. with reduced computation times compatible with real-time applications, with a high degree of performance and simplicity of implementation, even when the interacting objects have complex geometries or different natures or qualities.
- a method of identifying proximity zones between at least first and second digitally simulated objects characterized in that it comprises the following steps:
- tournament sessions are organized within the Npions of the created population, where during each session a percentage of the population is subjected to combat during which it is evaluated for each pair of pawns submitted to a fight. , based on an assessment of the quality defined by an aptitude criterion, which has won and which has lost and the winner and the loser are identified by marking which is different at the end of each session of the tournament, (d) after the tournament, an exploratory mutation of the pawns having lost during a first session is carried out, the pions which have lost during a second session are replaced by crossing randomly chosen pions and a redefinition is carried out random pieces lost during a third session,
- the distances between the identified proximity zones can be evaluated.
- the data for identifying areas of the space describing the geometry of at least one of the first and second numerically simulated objects may include polyhedral representations, voxel representations, parametric surface representations or point clouds.
- the aptitude criterion for evaluating the quality of a pion is constituted by a measurement of the distance separating the first and second nucleons defining this pion, the the quaiity of the pawn being all the greater as the measured distance is smaller. This measurement of the distance may for example take into account the square of the distance separating the first and second nucleons defining the pion.
- the method according to the invention may further comprise, after the step (a) of providing data describing the geometry of each of the first and second digitally simulated objects, the following steps:
- a proximity card is created containing information defining the proximity properties within the first and second objects and the information of this proximity card is stored in memory.
- the mutation of the pions having lost during a session of the tournament generating exploratory mutations for lost pions consists in moving the first and second nucleons composing a pion on the surface of the first and second objects to which these first and second nucleons respectively belong.
- At least one of the first and second nucleons composing this pawn and belonging to the one of the first and second objects represented in a polyhedral form is subjected to a succession of discrete center facet displacements in the facet center by considering the information defining the neighborhood properties stored in memory.
- At least one of the first and second nucleons composing this pion and belonging to one of the first and second objects represented in a polyhedral form is subjected to displacement on the same facet on a disk having as center the initial position of this point and for radius a maximum displacement amplitude which depends on the area of the facet on which the displacement is made.
- At least one of the first and second nucleons composing this pawn and belonging to one of the first and second objects represented in a polyhedral shape is subjected to a "wormhole" displacement from one vertex of one facet to another vertex close to another facet that is not necessarily connected, considering the information defining the proximity properties stored in memory.
- the first and second nucleons composing this pion and respectively belonging to the first and second objects each represented in a polyhedral form with triangular facets are positioned such that they delimit a segment defining the minimum distance between the two triangular facets to which these first and second nucleons respectively belong.
- the new pion when replacing a pawn having lost during a session of the tournament generating for the pions having lost substitutions by crossing randomly selected pions, to define the new pawn resulting from the crossing of a first and a second selected pawns randomly, the new pion is considered to be composed of the first nucleon of the first randomly selected pawn and the second nucleon of the second randomly selected pawn.
- the invention relates more generally to a method applied to a set of P objects simulated numerically with P> 2, characterized in that it comprises the following steps: (a) provides data describing the geometry of each of the P graphically simulated objects,
- tournament sessions are organized within the Npions of the created population, where during each session a percentage of the population is subjected to combat during which it is evaluated for each pair of pawns submitted to a fight. , based on an assessment of the quality defined by an aptitude criterion, which has won and which has lost and the winner and the loser are identified by marking which is different at the end of each session of the tournament,
- Geometric information is extracted on demand from an updated configuration of the pion population during repetitive execution.
- the method advantageously comprises the following additional steps after step (a) of providing data describing the geometry of the digitally simulated P objects:
- a proximity card is created containing information defining the proximity properties within each of the P objects and the information of this proximity card is stored in memory.
- the invention further relates to a proximity zone identification system between a number P of objects simulated numerically with P> 2, characterized in that it comprises;
- an initialization module for creating a population consisting of a set of N individuals called pions each defined by first and second nucleons themselves defined as points respectively belonging to the geometries of one of the P objects and another of the P objects,
- a central processing unit comprising at least:
- (c) means for selecting a percentage of the population of the N pions to be subjected to pairwise combat during a session of a tournament
- (c2) means of comparison and calculation for evaluating during a session of a tournament, for each pair of pawns submitted to a fight, the quality of each pawn of the pair of pawns based on an aptitude criterion
- (c3) marking means for identifying at each session of the tournament which pieces of a pair of pions subject to a fight has won, and which of the pieces of the said pair of pawns submitted to a fight has lost,
- (c4) iteration means for producing an evolution of the pions that have undergone at least one combat these iteration means being associated at least with an exploratory mutation operator of the pions having lost during a first session of the tournament, at a replacement operator of the pawns having lost during a second session of the tournament by crossing randomly selected pawns and to an operator of redefinition of the pawns having lost during a third session of the tournament, and
- the system may further include:
- the central processing unit may comprise a set of computing units operating in parallel.
- the method and the system according to the invention are thus based on an evolutionary process based on a stochastic approach. This evolutionary process deals with populations of individuals defined by real components and not simply binary.
- FIG. 1 is a block diagram representing the functional architecture of a virtual reality platform
- FIG. 2 is a flowchart showing the dynamic evolution diagram of an object contained in the virtual world according to the laws; of physics,
- FIG. 3 is a diagram illustrating a known method for calculating the minimum distance between two objects of the polyhedral type
- FIGS. 4a, 4b and 4c show three examples of approximating an object by a bounding volume
- FIG. 5a illustrates initial and final positions of a spherical object in translation
- FIG. 5b illustrates the swept volume corresponding to the translation of the object of FIG. 5a
- FIG. 6 illustrates an example of a voxelic decomposition of an object
- FIG. 7a shows an example of hybrid representation of an object in the form of voxels cooperating with another object represented in the form of a cloud of points and normals
- FIG. 7b represents the detail of an interaction zone of the two objects represented in a hybrid manner in FIG. 7a
- FIG. 8 illustrates the representation of two objects subjected to repulsion efforts according to the penalty method
- FIG. 9 is a diagram illustrating the genotype of an individual or pion used in the context of the invention
- FIG. 10 illustrates an example of discrete exploratory displacement of a point on a polyhedron, as part of a mutation
- FIG. 11 shows an example of an operating operator involved in a mutation
- FIG. 12a illustrates a process for identifying nearby elements in the context of objects represented in a polyhedral form
- FIG. 12b illustrates an example of a path without wormhole in the object represented in FIG. 12a
- FIG. 12c illustrates an example of a path through a wormhole in the object represented in FIG. 12a;
- FIG. 13 illustrates the principle of the crossing of two pions,
- FIG. 14 represents the three main phases of the process according to the invention.
- FIGS. 15a, 15b and 15c illustrate three examples of geometrical configurations making it possible to materialize the segment defining the minimum distance between two triangles of polyhedral representations of objects, to which belong the two points composing a pion,
- FIG. 16 illustrates the projection of ends of a segment on a plane containing a triangle as part of the determination of the segment defining the minimum distance between two triangles belonging to polyhedra representing two interacting objects
- FIGS. 17 and 18 illustrate, in the case of the process represented in FIG. 16, the determination of a segment defining a minimum distance, respectively in the case of segment-point and in the segment-segment case,
- FIG. 19 represents the genotype of several pions defined between different polyhedra representing different objects
- FIG. 20 illustrates the random replacement of a pawn in the case of an object represented in polyhedral form
- FIG. 21 illustrates the genotype of a pawn defined between two parameterized surfaces representing two objects
- FIG. 22 illustrates the genotype of a pawn defined between two point clouds representing two objects
- FIG. 23 illustrates the genotype of a pawn defined between two voxelic representations of objects
- FIG. 25 represents hybrid pins defined between geometries of different types representing objects
- FIG. 26 is a block diagram showing the main modules constituting an exemplary system according to the invention.
- the method and system according to the invention described according to a particular embodiment, make it possible, starting from digitally simulated objects, or virtual objects, to identify, throughout a real-time dynamic simulation featuring geometrical representations of objects, the geometric zones likely to collide, regardless of the geometric complexity and nature (convexity, rigidity) of the objects.
- the method according to the invention uses an evolutionary process. In general, it applies a strategy that consists of changing a population of individuals using variation operators (mutation, crossing) to converge this population to an optimal configuration.
- variation operators mutation, crossing
- the basic strategy of the method according to the invention consists in changing a population of individuals using variation operators (mutation, crossing) intended to converge the population (set of individuals). to an optimal configuration.
- Figure 9 illustrates an exemplary definition of the 51 genotype of an individual (which subsequently will also be called "pin") which is defined as a pair of nucleons constituted by points belonging respectively to each of the two meshes Objeti and Object 2 representing the first and second objects whose proximity we wish to evaluate.
- the genotype 51 of a pawn can thus be expressed as:
- Face indices (unsigned integers) represent the identifiers of the faces to which belong respectively the points defining the pion, a, and ⁇ t the coordinates of the point belonging to the first polyhedron in the base O 1 , e 2 ) of the relevant face , and respectively for ⁇ 2 and ⁇ 2 in the base (e ⁇ , e ⁇ ). (O ⁇ , ⁇ , 0 ⁇ l ⁇ , ⁇ , + ⁇ t ⁇ i).
- a pion is simply defined by two nucleons belonging respectively to two objects of any kind. If we consider for example the case of implicit surfaces, in this case a pawn will be defined by the coordinates (* ,, y x , z x ) of the first point and the coordinates (x 2 , y 2 , ⁇ 2 ) ⁇ u second. In the case of voxelic type geometries, the points may be defined by the index of the voxels concerned. Thus, the description of a pawn is directly related to the type of geometry used. It is also possible to define a pion between two geometries of different types, the coordinates of the points being systematically expressed in the Cartesian space at the time of the evaluation.
- the objective function ("fitness") or aptitude criterion for evaluating the quality of a pion is constituted by measuring the distance separating the first and second nucleons defining the pion. This measure can advantageously be chosen as being the square of the distance separating the two nucleons composing the pion.
- Quality quality (p) of an individual or p-p is inversely proportional to its fitness goal function (p).
- the mutation is an evolution operator that is definable as a more or less important variation of the genetic heritage of an individual.
- to mutate an individual consists in moving the points that compose it on the surface of the objects to which they belong.
- Figure 10 illustrates the discrete exploratory displacement of a point on a polyhedron with an amplitude of eight jumps, but this value is naturally given only as an example.
- An exploitation operator that corresponds to another type of mutation, illustrated in Figure 11, is intended to refine the positioning of the points that make up the individual concerned. Unlike the case of the exploratory mutation, these displacements are defined metrically. Thus each point will perform a displacement on a disk of radius ⁇ FxP i o , t i maximum displacement amplitude, having as center the initial position of the point.
- the maximum displacement amplitude (expressed in meters) may be dependent on the area of the face 56 on which the displacement is performed. Thus, this amplitude is calculated during the pre-calculation phase for each facet 56.
- Figure 12a illustrates the polyhedral representation 60 of an object having faces 61.
- the vertices 64, 65 are identified as being closest to the vertices 62, 63.
- Figure 12b illustrates an example of a path 66 without a wormhole, from the vertex 63 to a point 67.
- Figure 12c illustrates an alternative path using the "wormhole” mutation operator.
- the path from the top 63 to the point 67 includes a passage 68 of the "wormhole” type outside the representation 60 of the object, between the vertices 63 and 64 identified as being close.
- Mutation operators having functions similar to those of the three operators described above can be defined in the simulation framework involving other types of geometries.
- the invention also implements a variation operator, called "crossover", which is intended to accelerate the convergence of the population (FIG. 13).
- the principle is to generate a pawn (child) by coupling two pawns coming from the population (spawners).
- the new pawn thus has genetic properties specific to its two parents.
- this operator can be used in the following way: the pawn "child” has for nucleon 1 that of the first spawner and for nucleon 2 that of the second.
- FIG. 14 The general scheme of the method according to the invention is illustrated in FIG. 14, with a first initialization phase 71, a second tournament phase 72 and a third evolution phase 73.
- initialization phase 71 data is provided to identify points describing the geometry of each of the graphically simulated objects and stores these data in memory.
- a connectivity map is also created containing information defining the topological neighborhood properties within the objects and the information of this connectivity map is stored in memory.
- the initialization phase 71 also comprises the establishment of a proximity card containing information defining the proximity properties (wormhole) within the objects and the storage in memory of the information of this proximity card. Finally, during the initialization phase 71, a population consisting of a set of N individuals (which may be called pions) each defined by first and second nucleons constituted by points respectively belonging to the geometries of two objects is created. previously identified.
- Phase 72 tournament consists of the organization of fights between individuals.
- a fight between two individuals or pions consists of evaluating which of the two pions proves to be of better quality, that is to say which of the two pions has a goal function (or aptitude criterion) "fitness" the weakest.
- sessions are organized within the N pions of the created population where, during each of the sessions, a percentage of the population is subjected to fights during which it is evaluated for each pair of pieces. subject to a fight, based on a quality assessment defined on the basis of an aptitude criterion, which has won and which has lost and the winner and the loser are identified by a mark that is different at the end each session of the tournament.
- the various sessions of the tournament phase 72 may for example comprise a first session Mut% consisting of fights of a percentage of the population which will then generate mutations, a second session Cross% consisting of fights of a percentage of the population which will then generate crosses and a third session Rand% consisting of fights of a percentage of the population which will then generate random redefinitions.
- the first, second and third sessions, Mut%, Cross% and Rand% can take place in any order.
- the winning pieces are identified by a marking that is different from that of the losing pieces.
- the marking of the pieces also differs according to the session during which they have undergone one or more fights.
- the evolution phase 73 consists in applying the previously defined variation operators to the population according to the results of the tournament and thus includes the mutation of the pieces having lost during the first session Mut% of the tournament, the replacement of the pieces having lost during the second session Cross% of the tournament by crossing randomly selected pieces, and the redefinition of the pieces having lost during the third session Rand% of the tournament.
- the exploitation of the winners of the combats which are supposed to be good elements makes it possible to determine zones of proximity between two objects.
- the process is iterative and phases 72 and 73 can be repeated without stopping. It is possible at any moment to exploit an improved configuration by exploiting the only pawns then marked as being winners.
- the method according to the invention is little dependent on the geometric nature and the quality of the objects. It can be used in the context of simulations involving all types of geometries (polyhedra, voxels, parametric surfaces, etc.) as long as the appropriate variation operators are defined. In addition, it allows the mix of geometries, the points that make up the pions can evolve in a completely different way to the surface of the objects to which they respectively belong. The process is not sensitive to concavities, exploratory mutations and random redefinitions ensuring diversity of the population.
- an individual or pion of a population of N individuals is composed of two points which can also be called nucleons.
- This mutation operator makes it possible to minimize locally, according to a deterministic approach, the objective function (fitness) of the pion concerned.
- This mutation operator is intended to be applied to the elite of the individuals making up the population. It is intended to accelerate the convergence and increase the accuracy of the results resulting from the implementation of the method.
- the goal of this operator is to position the nucleons that make up the pion concerned so as to materialize the segment defining the minimum distance between the two triangles to which they respectively belong.
- Figures 15a, 15b, 15c show three different geometrical configurations with two triangles 81, 82; 83, 84 and 85, 86 respectively for which segment 87; 88; 89 respectively materializing the minimum distance between the two triangles corresponds to a vertex / face interaction, vertex / vertex and edge / edge.
- the first phase consists of orthogonally projecting the ends of the segment onto the plane containing the triangle.
- the combination of the positions of their projected relative to the triangle will make it possible to identify the possible geometrical configurations and the potentially affected elements.
- the positions of the projected relative to the triangle are formalized by their belonging to one of the plan portions defined by the straight lines bearing the sides of the triangle. For example, in the case illustrated in FIG. 16, the projections Pi, Qi of the ends Pet Q of the segment belong respectively to the zones Z 2 and Z 4 of the plane containing the triangle (A, B, C).
- the second phase will consist of determining the optimal counter.
- the goal is to determine the coefficient ⁇ such that: ⁇ e [0, l], V // e [0, l] (X-PQ) M ⁇ ( ⁇ -PQ) M ⁇
- the goal is to determine the coefficients X and ⁇ such that:
- the pions of the same population can evolve not only on one of the pairs of geometries contained in the simulation, but on all the pairs of geometries (or meshes) contained in the simulation.
- the genotype of a pion is expressed in the following way, with MeSh 1 and Mesh 2 which represent the identification of the meshes (polyhedra) of the objects to which the two points (nucleons) component belong.
- MeSh 1 and Mesh 2 represent the identification of the meshes (polyhedra) of the objects to which the two points (nucleons) component belong.
- indices Mesh and Face respectively represent the identifiers of the polyhedra and faces to which belong the nucleons defining the pion, ⁇ x and ⁇ x the coordinates of the point belonging to the first polyhedron in the base (e ,, e 2 ) of the face concerned, and respectively for a 2 and ⁇ 2 in the base (e ⁇ , e ' 2 ). (0 ⁇ 1 ⁇ 1, 0 ⁇ ⁇ , ⁇ 1, a 1 + ⁇ 1 ⁇ 1).
- Inter-geometry "jumps" of the nucleons are performed during the random replacement phase that covers the entire space to be traveled and not just one of the geometries.
- genotypes of the four pions in the example of Figure 19 are as follows;
- the invention is equally applicable to simulations involving polyhedral geometries, which are commonly used in a large number of fields of application such as virtual reality or computer graphics, or to simulations involving non-linear geometries. polyhedral.
- Figure 21 illustrates the case of objects represented by parametric surfaces (Bézier, B-Spline, %) called "patch”.
- each of the nucleons of a pion includes the identifier Patchi, resp. Patch 2 of the parametric surface to which it belongs and the coordinates U 1 Vi resp U 2 V 2 of this nucleon within this parameterized surface Patchi, resp Patch 2 to which it belongs.
- the genotype of a pawn is then the following:
- Mi and M 2 are the mathematical expressions that respectively define Patchi and Patch 2 .
- a random repositioning of a nucleon can be done by randomly changing its coordinates.
- the case of objects represented in the form of point clouds is illustrated in Figure 22 with two representations of objects referenced Nuagei and Nuag ⁇ 2.
- each of nucleons by the identifier pi resp p 2 from the point to which it belongs, as follows:
- Figure 23 illustrates the case of objects represented by voxelic geometries called Geometry and Geometry2.
- each of the nucleons is defined by the identifier ⁇ i resp ⁇ 2 of the voxel to which it belongs as indicated below:
- the previously defined genotype may be unsuitable in some cases (voxels of different sizes or too large). It may then be necessary to enrich the latter with the coordinates of the nucleons within their respective voxel.
- mutators can be defined as follows; Discrete Exploration: The nucleon moves from voxel to voxel using a pre-calculated proximity map.
- the nucleon can move on the surface of the voxel to which it belongs (stochastic variation of its coordinates within the voxel).
- Deterministic Exploitation The segment "materializing" the minimum distance between two cubes is trivially deterministically deterministic. Deterministic exploitation thus consists in locally minimizing a pawn within a pair of voxels.
- Random Replacement Random selection of new voxels.
- Figure 24 represents in its generality the crossing operator to produce from two pawns Géniteuri and Géniteur a child pawn composed of the first nucleon Nucléoni of the pion Géniteur ! and second nucleon Nucleon 2 the pin 2 progenitor.
- genotypes and mutators that have just been defined are presented as formalisms adapted to the definition and the evolution of nucleons within the different types of selected geometries.
- the evaluation of the quality of a pion is reduced to the evaluation of the Euclidean distance separating the nucleons that compose it.
- Figure 26 shows in block diagram form an exemplary proximity area identification system between a number P of graphically simulated objects, with P> 2, according to the invention.
- This system comprises a memory unit 110 with at least memory areas 111, 112, 113.
- a first memory area 111 makes it possible to store data describing the geometry of each of the P graphically simulated objects.
- a second memory area 112 stores information representing a connectivity map and defining neighborhood properties within each of the P objects.
- a third memory area 113 stores information representing a proximity map and defining the proximity properties within each of the P objects.
- An initialization module 120 makes it possible to create a population consisting of a set of N pions each defined by first and second points or nucleons respectively belonging to the geometries of one of the P objects and another of the P objects.
- a display screen 130 allows, if desired, to display the P simulated objects numerically.
- a central processing unit 140 comprises at least the following subassemblies 141 to 145;
- comparison and calculation means 142 for evaluating during a session of a tournament, for each pair of pions subjected to a fight, the quality of each of the pieces of the pair of pions based on a criterion of 'aptitude,
- marking means 143 for identifying at each session of the tournament which pieces of a pair of pawns submitted to a fight have won, and which pieces of said pair of pions subjected to a fight have lost, means for iteration 144 to produce an evolution of the pawns that have undergone at least one fight,
- an extraction module 145 for retaining only the best pions of the population according to the aptitude criterion, for the determination of the proximity zones between at least two of the P objects.
- the iteration means 144 are associated with at least one exploratory mutation operator of the pawns having lost during a first session of the tournament, to an operator replacing the pieces having lost during a second session of the tournament by crossing randomly chosen pieces and an operator redefining the pieces that lost during a third session of the tournament.
- the reference 150 designates an optional interface such as a haptic interface making it possible to exploit the selected and selected pieces. during the repetitive execution of tournaments and the evolutionary process.
- the invention avoids the sorting phases which are time consuming and, by virtue of the independence of the processing of the individuals, allows a process which is highly parallelizable with a possibility of distribution of the calculations on several microprocessors or microcontrollers, as well as for each nucleon of a pion the possibility of moving from one type of object geometry to another, which gives great flexibility of operation.
- Populations of individuals may include for example a few hundred individuals.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05792025A EP1779306A2 (fr) | 2004-07-22 | 2005-07-20 | Procede et systeme d'identification de zones de proximite entre plusieurs objets geometriques simules numeriquement |
JP2007521997A JP4829885B2 (ja) | 2004-07-22 | 2005-07-20 | いくつかのデジタルシミュレーション化幾何学的オブジェクト間で近接領域を同定する方法およびシステム |
US11/658,125 US7774180B2 (en) | 2004-07-22 | 2005-07-20 | Method and system for identifying proximity areas between several digitally simulated geometrical objects |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0408114 | 2004-07-22 | ||
FR0408114A FR2873472B1 (fr) | 2004-07-22 | 2004-07-22 | Procede et systeme d'identification de zones de proximite entre plusieurs objets geometriques simules numeriquement |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2006018570A2 true WO2006018570A2 (fr) | 2006-02-23 |
WO2006018570A3 WO2006018570A3 (fr) | 2006-03-30 |
Family
ID=34948231
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2005/050597 WO2006018570A2 (fr) | 2004-07-22 | 2005-07-20 | Procede et systeme d'identification de zones de proximite entre plusieurs objets geometriques simules numeriquement |
Country Status (5)
Country | Link |
---|---|
US (1) | US7774180B2 (fr) |
EP (1) | EP1779306A2 (fr) |
JP (1) | JP4829885B2 (fr) |
FR (1) | FR2873472B1 (fr) |
WO (1) | WO2006018570A2 (fr) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006055958A1 (de) * | 2006-11-24 | 2008-05-29 | Siemens Ag | Verfahren und Vorrichtung zum Speichern bzw. Darstellen von vorgegebenen geometrischen Objekten und Computerprogrammprodukt |
US10822687B2 (en) | 2016-02-29 | 2020-11-03 | General Electric Company | Environmental barrier coating and methods of preparation |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8669977B2 (en) | 2009-10-01 | 2014-03-11 | Intel Corporation | Hierarchical mesh quantization that facilitates efficient ray tracing |
JP5852384B2 (ja) * | 2010-09-27 | 2016-02-03 | 啓史 登尾 | 物体間接触相互作用模擬装置 |
US8810598B2 (en) | 2011-04-08 | 2014-08-19 | Nant Holdings Ip, Llc | Interference based augmented reality hosting platforms |
JP2015501984A (ja) | 2011-11-21 | 2015-01-19 | ナント ホールディングス アイピー,エルエルシー | 加入請求書サービス、システムおよび方法 |
US9582516B2 (en) | 2013-10-17 | 2017-02-28 | Nant Holdings Ip, Llc | Wide area augmented reality location-based services |
CN105488851B (zh) * | 2015-11-30 | 2017-07-07 | 腾讯科技(深圳)有限公司 | 实时虚拟场景中碰撞体之间碰撞探测的方法和装置 |
EP3822920A1 (fr) | 2019-11-18 | 2021-05-19 | Dassault Systèmes | Procédés pour localiser un objet modélisé numériquement par rapport à un espace modélisé numériquement et pour réaliser des requêtes volumétriques |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3401897B2 (ja) * | 1994-02-16 | 2003-04-28 | 株式会社セガ | 衝突判定処理システムおよびこれを用いた画像処理装置 |
CA2248909A1 (fr) * | 1996-03-15 | 1997-09-25 | Zapa Digital Arts Ltd. | Objets graphiques informatiques programmables |
US7196702B1 (en) * | 1998-07-23 | 2007-03-27 | Freedesign, Inc. | Geometric design and modeling system using control geometry |
DE19854011A1 (de) * | 1998-11-12 | 2000-05-25 | Knoll Alois | Einrichtung und Verfahren zum Vermessen von Mechanismen und ihrer Stellung |
JP2002063587A (ja) * | 2000-08-17 | 2002-02-28 | Sony Corp | 情報処理装置および方法、並びに記録媒体 |
US7200270B2 (en) * | 2001-12-13 | 2007-04-03 | Kabushiki Kaisha Toshiba | Pattern recognition apparatus and method using distributed model representation of partial images |
US7092110B2 (en) * | 2002-07-25 | 2006-08-15 | Timbre Technologies, Inc. | Optimized model and parameter selection for optical metrology |
US7030875B2 (en) * | 2002-09-04 | 2006-04-18 | Honda Motor Company Ltd. | Environmental reasoning using geometric data structure |
-
2004
- 2004-07-22 FR FR0408114A patent/FR2873472B1/fr not_active Expired - Fee Related
-
2005
- 2005-07-20 EP EP05792025A patent/EP1779306A2/fr not_active Withdrawn
- 2005-07-20 JP JP2007521997A patent/JP4829885B2/ja not_active Expired - Fee Related
- 2005-07-20 WO PCT/FR2005/050597 patent/WO2006018570A2/fr active Application Filing
- 2005-07-20 US US11/658,125 patent/US7774180B2/en not_active Expired - Fee Related
Non-Patent Citations (3)
Title |
---|
ELSHAMLI A ET AL: "Genetic algorithm for dynamic path planning" ELECTRICAL AND COMPUTER ENGINEERING, 2004. CANADIAN CONFERENCE ON NIAGARA FALLS, ONT., CANADA 2-5 MAY 2004, PISCATAWAY, NJ, USA,IEEE, US, 2 mai 2004 (2004-05-02), pages 677-680Vol2, XP010733537 ISBN: 0-7803-8253-6 * |
LACY, M.: "An Introduction to Genetic Algorithms In Java"[Online] 1 mars 2001 (2001-03-01), pages 1-6, XP002324703 Extrait de l'Internet: URL:http://sys-con.com/story/?storyid=36224&de=1> [extrait le 2005-04-12] * |
TOOGOOD R ET AL: "Robot path planning using genetic algorithms" SYSTEMS, MAN AND CYBERNETICS, 1995. INTELLIGENT SYSTEMS FOR THE 21ST CENTURY., IEEE INTERNATIONAL CONFERENCE ON VANCOUVER, BC, CANADA 22-25 OCT. 1995, NEW YORK, NY, USA,IEEE, US, vol. 1, 22 octobre 1995 (1995-10-22), pages 489-494, XP010194305 ISBN: 0-7803-2559-1 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006055958A1 (de) * | 2006-11-24 | 2008-05-29 | Siemens Ag | Verfahren und Vorrichtung zum Speichern bzw. Darstellen von vorgegebenen geometrischen Objekten und Computerprogrammprodukt |
US8417454B2 (en) | 2006-11-24 | 2013-04-09 | Continental Automotive Gmbh | Method and apparatus for storing or displaying prespecified geometric objects and computer program product |
US10822687B2 (en) | 2016-02-29 | 2020-11-03 | General Electric Company | Environmental barrier coating and methods of preparation |
Also Published As
Publication number | Publication date |
---|---|
WO2006018570A3 (fr) | 2006-03-30 |
JP4829885B2 (ja) | 2011-12-07 |
EP1779306A2 (fr) | 2007-05-02 |
US20080319718A1 (en) | 2008-12-25 |
FR2873472A1 (fr) | 2006-01-27 |
FR2873472B1 (fr) | 2007-02-09 |
JP2008507056A (ja) | 2008-03-06 |
US7774180B2 (en) | 2010-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Firman et al. | Structured prediction of unobserved voxels from a single depth image | |
Jain et al. | Autoencoders for level generation, repair, and recognition | |
EP3292541B1 (fr) | Procede des simplification de modele de geometrie | |
US11100710B2 (en) | Extracting a feature tree from a mesh | |
Weller | New geometric data structures for collision detection and haptics | |
Pediredla et al. | Ellipsoidal path connections for time-gated rendering | |
Dickinson et al. | Panel report: The potential of geons for generic 3-d object recognition | |
US20210383172A1 (en) | Three-dimensional map inconsistency detection using neural network | |
Hegeman et al. | Particle-based fluid simulation on the GPU | |
WO2021025761A1 (fr) | Système de simulation de données de sous-pixels | |
WO2006018570A2 (fr) | Procede et systeme d'identification de zones de proximite entre plusieurs objets geometriques simules numeriquement | |
Sagardia et al. | A new fast and robust collision detection and force computation algorithm applied to the physics engine bullet: Method, integration, and evaluation | |
Leistner et al. | Towards multimodal depth estimation from light fields | |
CN117078809A (zh) | 基于图像的动效生成方法、装置、设备和存储介质 | |
Dick et al. | A Bayesian estimation of building shape using MCMC | |
Džijan et al. | Towards fully synthetic training of 3D indoor object detectors: Ablation study | |
Kutzias et al. | Recent advances in procedural generation of buildings: From diversity to integration | |
Song et al. | Inferring 3d shapes of unknown rigid objects in clutter through inverse physics reasoning | |
EP1794718A2 (fr) | Procede de compression de donnees de visibilite, systeme de compression et decodeur | |
Tsirikoglou | Synthetic data for visual machine learning: A data-centric approach | |
Díaz-Más et al. | An octree-based method for shape from inconsistent silhouettes | |
Nunes | Procedural generation of synthetic forest environments to train machine learning algorithms | |
Alcorn et al. | Paved2Paradise: Cost-Effective and Scalable LiDAR Simulation by Factoring the Real World | |
GKIOULEKAS | Ellipsoidal Path Connections for Time-Gated Rendering | |
FR3112412A1 (fr) | Procédé de génération d’une maquette numérique |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2007521997 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REEP | Request for entry into the european phase |
Ref document number: 2005792025 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2005792025 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2005792025 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 11658125 Country of ref document: US |