• Aucun résultat trouvé

Outils multirésolutions pour la gestion des interactions en simulation temps réel

N/A
N/A
Protected

Academic year: 2021

Partager "Outils multirésolutions pour la gestion des interactions en simulation temps réel"

Copied!
153
0
0

Texte intégral

(1)

HAL Id: tel-01355619

https://tel.archives-ouvertes.fr/tel-01355619

Submitted on 23 Aug 2016

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

Thomas Pitiot

To cite this version:

Thomas Pitiot. Outils multirésolutions pour la gestion des interactions en simulation temps réel.

Modélisation et simulation. Université de Strasbourg, 2015. Français. �NNT : 2015STRAD048�.

�tel-01355619�

(2)

N

d'ordre: 3157

Laboratoire des s ien es de l'ingénieur,

de l'informatique et de l'imagerie

É ole Do torale Mathématiques,

S ien es de l'Information et de l'Ingénieur

THÈSE

présentéepour obtenir legradede

Do teur de l'Université de Strasbourg

Dis ipline / Spé ialité : Informatique

par

Thomas PITIOT

Outils multirésolutions pour la gestion des

intera tions en simulation temps réel

Soutenue publiquement le17 Dé embre 2015

Membres du jury :

M. Philippe MESEURE ...Rapporteur

Professeur àl'Université dePoitiers

M. Julien PETTRE ...Rapporteur

Chargé de re her he HDRà l'INRIAde Rennes

Mme. Céline LOSCOS ...Examinatri e

Professeure à l'Universitéde ReimsChampagne-Ardenne

M. Fabri e JAILLET ...Examinateur

Maître de Conféren eHDRà l'UniversitéLyon1

M. David CAZIER ...Dire teur de thèse

(3)
(4)

Jeremer ietoutd'abordDavidCazierquiasumeguiderdepuismonstage

deMaster 2jusqu'àlande mathèse.Ilm'alaisséunegrandeautonomietout

en sa hant apporter les onseils etle re ul né essaire auxmomentsadéquats.

Je remer ie également les membres de mon jury d'avoir a epté d'évaluer

mes travaux et tout parti ulièrement mes rapporteurs Philippe Meseure et

Julien Pettré.

Mer i à toutes les personnes que j'ai pu roiser durant es années dans

l'équipe IGG qui a onstitué le adre prin ipal de ette thèse. Un lin d'oeil

parti ulier à Sylvain Théry et Pierre Kraemer qui ont été mes guides

CGo-GNesques, ThomasJund etLionel Untereinerqui ont eu lapatien e de

m'ex-pliquer dans les moindres détails de leur travaux et Arash Habibi qui m'a

a ompagné (parfois tard dans la nuit) pour la réalisation de belles vidéos.

Unepensée parti ulièrepour Noura, Sabah,Étienne,Vasyl,Amir,Kenneth et

Alexandre ave quij'ai leplus é hangédurant e temps aulaboratoire.

Je tiens à remer ier l'équipe MIMESIS qui m'a haleureusement a ueilli

durantmadernièreannéedethèse.Jepenseparti ulièrementàStéphaneCotin

quiasuivide prèsmes travauxetquireprésentepourmoiunexempleàsuivre

(5)

dé ouvrirlesjoiesde l'enseignement durantdeux annéesàl'IUT d'Haguenau.

Mer iàmesamisStrasbourgeois(ouex-Strasbourgeois)quim'onta ueilli

dans ette belle ville et qui m'ont a ompagné durant ette aventure jusqu'à

lasoutenan e.

Mer i à Simon, Ya ine et l'ensemble de la team Cureuil pour la bonne

ambian e, les dis ussions innies et par e que, même de loin, le soutien ça

ompte.

J'aimeraiségalement remer ier ma famille.Tout d'abord, mes parents qui

m'ont donné très tt la uriosité s ientique et le goût de l'informatique. Ils

m'onttoujours laissé hoisir mavoietout en soutenantmes dé isions. Ensuite

mes frères et soeur qui onstituent pour moiun so le àtoute épreuve.

Enn, un grand mer i à Leslie ave qui j'ai la han e de partager mon

quotidien. Elle m'a a ompagné et soutenu depuis le début de ette thèse

jusqu'à la rele ture appliquée de e mémoire. Cet a omplissement n'aurait

pasété possiblesansles oupsdeboostsqu'elle m'aapportédanslesmoments

(6)

1 Introdu tion 1

1.1 Contexte etobje tifs . . . 2

1.1.1 La simulationetle temps réel . . . 3

1.1.2 Le modèle d'intera tions . . . 6

1.2 Contributions . . . 10

1.3 Plan du mémoire . . . 12

I État de l'art 13 2 Les requêtes de proximité en environnement partitionné 15 2.1 Introdu tion . . . 16

2.2 Lesarbres et lesgraphes . . . 17

2.2.1 Les o trees etquadtrees . . . 17

2.2.2 Binary Spa e Partitioning . . . 18

2.2.3 Diagrammede Voronoï / Triangulationde Delaunay . . 19

2.3 Lesgrilles de voisinage . . . 21

2.4 Lesgrilles d'enregistrementrégulières . . . 22

2.4.1 Le spatialhashing. . . 23

3 Les artes ombinatoires 25 3.1 Présentation des artes ombinatoires . . . 26

3.1.1 Représentation . . . 26

3.1.2 Plongements. . . 30

3.2 Les artes multirésolutions . . . 31

3.2.1 Multirésolutionexpli ite . . . 34

3.2.2 Multirésolutionimpli ite . . . 36

3.3 Utilisationpour lesrequêtes de proximité . . . 37

4 Suivi de parti ules 41 4.1 Contexte . . . 42

4.2 Algorithmes . . . 42

(7)

4.2.3 Dépla ement depuis l'état arête . . . 48

4.2.4 Dépla ement depuis l'état sommet . . . 49

4.3 Con lusion . . . 50

II Contributions 51 5 Enregistrement des entités 53 5.1 Enregistrement de parti ules . . . 54

5.2 Mise àjour de l'enregistrement des parti ules . . . 56

5.3 Enregistrement d'arêtes. . . 57

5.4 Mise àjour de l'enregistrement des arêtes . . . 59

5.5 Enregistrement de surfa es . . . 61

5.6 Mise àjour de l'enregistrement des surfa es . . . 63

5.7 Con lusion . . . 64

6 Gestion de la multirésolution 65 6.1 Introdu tion . . . 66

6.2 La subdivision . . . 67

6.2.1 Les parti ules . . . 70

6.2.2 Les arêtes etles triangles. . . 71

6.3 La simpli ation . . . 73

6.3.1 Cas des parti ules . . . 76

6.4 Con lusion . . . 77

7 Suivi de parti ules dans des maillages non- onvexes 79 7.1 Cas problématiques . . . 80

7.2 Solution . . . 81

7.2.1 Orientation depuisun volume . . . 83

7.2.2 Orientation depuisune fa e . . . 87

7.2.3 Orientations depuisune arête et un sommet . . . 89

7.3 Cohéren e ave lesenregistrements . . . 90

7.4 Con lusion . . . 91

III Appli ations 93 8 Appli ation 2D : la simulation de foule 95 8.1 Présentation du sujet . . . 96

8.2 Le Comportement . . . 98

8.2.1 État de l'art sur le omportement externe . . . 99

8.2.2 Solutions retenues et optimisations . . . .103

(8)

8.3.2 S énarios . . . 109

8.3.3 Résultats . . . 114

8.4 Con lusion . . . 118

9 Appli ations 3D 119 9.1 Le hallengede la 3D . . . 120

9.1.1 La simulationde foule 3D :exploration . . . 120

9.1.2 L'insertion d'aiguille . . . 123

9.2 Con lusion etremarques . . . 130

Con lusion 131 1 Rappel des ontributions . . . 132

1.1 Généri ité . . . 132

1.2 Cohéren e . . . 133

1.3 E a ité. . . 133

2 Perspe tives . . . 134

2.1 L'optimisationdes algorithmesexistants . . . 134

2.2 Les extensions omportementales . . . 135

2.3 Les autressolutions de représentation . . . 135

(9)
(10)

Introdu tion

Sommaire

1.1 Contexteetobje tifs. . . 2

1.1.1 La simulationetletemps réel . . . 3

1.1.2 Le modèled'intera tions . . . 6

1.2 Contributions. . . 10

(11)

1.1 Contexte et obje tifs

Simulation :

Lasimulationinformatiqueounumériquedésignel'exé utiond'un

pro-gramme informatique sur un ordinateur ou réseau en vue de simuler

un phénomène physique réel et omplexe.

Les simulations d'environnements virtuels a tuelles sont de plus en plus

nombreuses et ambitieuses.Ellesre oupent diverses s ien es tellesque la

phy-sique, la mé anique, la biologie et l'informatique pour des appli ations dans

desdomaines allantde laméde ine auxjeux vidéoen passantpar l'urbanisme

et le inéma. Elles né essitent de représenter des environnements vastes et

dynamiquesparfois très omplexes. On peut distinguer deux atégories de

si-mulations:

Lasimulation ontinue,ousimulationapriori,oùlesystèmeseprésente

sous laforme d'équations diérentielles à résoudre.

La simulation dis rète, ou simulation a posteriori dans laquelle le

sys-tème est soumis à une su ession d'événements qui le modient. Ce type de

simulations a vo ation à appliquer des prin ipes simples à des systèmes de

grandetaille. Lasimulation dis rètepeut être syn hrone ouasyn hrone.

Dansunesimulationsyn hrone, on al ulel'arrivée dupro hain événement,et

onne simulequed'événementen événement.Dansunesimulationasyn hrone,

onsimuleà haque fois le passaged'un pas de temps sur tout le système.

Nous dis uterons i i uniquement aux simulations dis rètes asyn hrones.

Par la suite le terme simulation sera utilisé pour e type de simulations.

Dans de telles simulations, les objets présents sont soumis à trois modèles :

un modèle de rendu qui détient l'aspe t des objets, un modèle physique qui

détient leurs propriétés physiques et un modèle d'intera tions qui permet de

déte ter les ollisions et les onta ts. Ainsi, si une ollisionentre deux objets

a lieu, le modèle d'intera tions la déte te et permet au modèle physique de

al ulerles hangements à appliqueraumodèlede rendu.

Nousnous intéresserons i iplus parti ulièrementau modèle d'intera tions

quis'est omplexiéaulde l'évolutiondes modèlesgéométriquesutilisés.En

eet, les simulations a tuelles n'utilisent plus uniquement des primitives

géo-métriquessimplepourreprésenterlesobjets.Ellesutilisentpluttdesmaillages

détaillésparfois très omplexespour avoirle meilleur rendu visuelpossible et

simuler laréalité auplus pro he. Dansun premiertemps, intéressons nous de

(12)

1.1.1 La simulation et le temps réel

Si diverses que soient les simulations, elles respe tent un s héma de

fon -tionnementgénéralrelativementstandard.Nousallonsprésenter i i e s héma

d'exé ution lassique d'un pas de temps de simulation en détail. Par la suite

nous dis uterons de la omplexitéde telles simulations.

Le pipeline de simulation

La gure 1.1 présente le s héma lassique d'un pas de temps d'une si-mulation physique intera tive. Dans un premier temps, des for es provenant

des périphériquesd'intera tionetdumoteurphysiqueet omportementalsont

appliquéesaux objets. Ces objets sontaltérés par es for es auniveau

géomé-trique (déformation, dépla ement), topologique ( oupe, fusion , ...) ou visuel

( ouleur, luminosité).

Une fois les objets altérés, la présen e de ollisions ou d'interpénétrations

est vériée. Cette étape pré ise,sur laquelle nous reviendrons plus en détails,

né essite une onnaissan ede l'environnement.Ainsi,déte ter les ollisions

re-quiert d'ee tuer pour haque objet des requêtes de proximitéave lesautres

entités environnantes parti ipantaux ollisions.Unefois es requêtesétablies,

onobtient pour haque objet lesentités potentiellement en ollision.On peut

don envoyer es informationsaumoteur physiqueet omportemental an de

al ulerles for es à appliquerau pro hain pas de temps.

Danslessimulationsnonintera tives,lesobjetssontsoitrégisparunefor e

globalequel'onsouhaiteobserver(gravité,équationphysiqueàtester,...) soit

autonomesave un obje tifàatteindre.Nousnous intéresseronsen parti ulier

à e as de simulationd'objets autonomes appelés agentsdans le adre de

(13)

Moteur physique et

comportemental

Périphérique d'interactions

(souris, clavier, ...)

Forces

Changements de rendu

(déplacement, déformation,

couleur, ...)

Détection de collision

Un pas de temps de simulation

informations

de voisinage

envoyées pour

le prochain

pas de temps

Figure 1.1 : S héma d'exé ution lassique d'un pas de temps d'unesimulation

(14)

Le temps réel ou intera tif

Certaines simulationspeuventêtre très omplexes.Ellespeuventné essiter

un rendu parti ulièrement pré is et de haute dénition ( inéma), des al uls

physiqueslourds(méde ine)ouen oreêtredessimulationspossédantungrand

nombre d'entités (jeux vidéos, simulationde foule).

Danstous les as, ils'agitde trouverun ompromisentre lapré ision

dési-rée pour la simulation etle temps d'exé ution qu'elle va né essiter. Certaines

simulations pour le inéma passent outre e ompromis et visent la meilleure

qualité possible,même silerendu doit être al ulé pendant plusieursjours. Si

enrevan helasimulationestintera tive(méde ine,jeuxvidéos),le ompromis

à faire prend toute son importan e. Pour e type de simulations, l'ensemble

des pro essus misen pla e doit s'exé uter en temps réel, 'est à dire qu'il ne

doit pas y avoir de laten e trop importante entre deux pas de temps de la

simulation.

Le tempsréel au sens premier n'étant jamaisatteint, onutilise le plus

souvent etermepourparlerdetempsintera tif.Letempsréelouintera tifest

un temps d'exé ution permettant l'intera tion via une ontrainte temporelle.

Selon lessimulations onre her hera un système temps réel stri t ousouple.

Pour le temps réel stri t, au un dépassement de la ontrainte temporelle

du système n'est autorisé. Ce système doit être en pla e pour les simulations

ritiquestelles que lessimulationsmédi ales tempsréel. Dansle as du temps

réel souple,la ontraintetemporelle doit êtrerespe tée pour une moyenne des

exé utions, en autorisant don quelques dépassements appelés lags. Cette

ontraintetemporelles'exprimesouslaformed'unefréquen edemiseàjourde

lasimulation.Ellevarieselon lesmodes d'intera tions utilisés.Silasimulation

est uniquement visuelle, il est onsidéré qu'une fréquen e de 30 pas de temps

par se onde est susante. Si la simulation propose un retour haptique en

revan he, ette ontrainte sera plutt xée autour de 1000 pas de temps par

(15)

1.1.2 Le modèle d'intera tions

Déte tion de ollision :

Utilisation d'algorithmes pour tester les ollisions (interse tion entre

solidesdonnés), pour al ulerlestraje toires,lesdates d'impa tet les

pointsd'impa tdans une simulationphysique.

Le modèle d'intera tions d'une simulation permet de savoirquelles entités

entrent en jeu dans la déte tion de ollision et de réaliser ette dernière. Les

entités qui entrent en jeux peuvent être très omplexes par leur forme, leur

topologie et leur évolution au ours de la simulation. Selon le type d'entité

traitée les onsidérations ne sont pas les mêmes. En eet, si l'on traite un

objet rigide, on peut pré- al uler un ensemble d'informations le on ernant

quine vont pas hangerau oursdu temps.En revan he, dans le as d'objets

déformables, ilest né essaire de mettreàjour es informationsrégulièrement.

Nous pouvons ainsi établir une é helle de di ulté de simulationselon les

ara téristiqued'un objet:

 Objet statique : Objet dont lapositionn'est pas modiée.

 Objet dynamique : Objet se déplaçantdurant la simulation.

 Objet rigide : Objet dont laformene hange pas.

 Objet déformable:Objetquipeutsubirdes déformationsgéométriques

grâ e à saplasti ité etson élasti ité( il peut être tordu oué rasé ).

 Objet à topologie modiable : Objet pouvant subir des déformations

topologiques ommela outure ou ladé oupe.

Ces entités né essitent d'être approximées, au moins au niveau de la

déte -tion de ollision, si l'on veut pouvoir ee tuer la simulation en temps réel ou

intera tif. Voyons don les te hniques utilisées pour approximer es entités et

(16)

Boule

AABB

OBB

k-DOP

Enveloppe

convexe

Vitesse de calcul

Précision

Figure 1.2 : É hellede pré ision/vitessedesvolumes englobantsd'un objet.

La représentation des entités pour l'intera tion

Objet onvexe :

Un objet est dit onvexe si pour toute paire de points de et objet, le

segment qui lesjointest entièrement ontenu dans l'objet.

Il est ourant, et souvent né essaire, de hanger la représentation d'une

entité durantles diérentes étapesde lasimulation. Ainsi,un modèle n sera

utilisépour lerendunal tandisqu'unmodèlegrossierest souventutilisépour

les intera tions an d'a élérer les pro essus. Ce modèle plus grossier utilisé

orrespond soit àune version modiée de l'objetsoit àun volume englobant.

Ces volumesenglobantsprennentdiversesformesquel'onpeutrépartirsur

une é helle de pré ision/ oût omme illustré sur la gure 1.2. Plus le modèle est pro he delaformeréelledel'objetplusilest oûteuxà al uleretsimuler.

Inversement,pluslemodèleest simpleplusladéte tionde ollisionserarapide

mais impré ise. On retrouve sur ette é helle non-exhaustive :

 Laboule englobante ommeméthode la plus rapide.

 Laboîte englobantealignée sur l'axe(Axis Aligned Bounding Box).

 Laboîte englobanteorientée (Oriented Bounding Box).

 Le polytope à orientation dis rète de degré k (k-Dis rete Oriented

(17)

Cha unede esreprésentationsaleméritedefournirunereprésentation onvexe

de l'objet et on hoisira une représentation en fon tion du nombre d'objets à

traiteretde lapré ision désirée.Lastabilitéde l'objetsimpliéest également

à prendre en ompte. En eet, pour la simpli ation d'un objet déformable,

il faut être en mesure de per evoir les déformations. Il faut don avoir une

ertaine pré isionsans perdre en e a ité à ause des mises à jourfréquentes

du modèle.

Ces représentations plusoumoins simpliéesdes objets sont don utilisées

dans lesdiverses stratégies de déte tion de ollision.

La déte tion de ollision

Voisinage :

On appellevoisinagel'ensemble des entités onsidérées omme

poten-tiellementen intera tion ave une entité donnée.

Onpeut lasserlesstratégiesdedéte tionde ollisiondansplusieursgrandes

familles:les al ulsd'interse tionsentreobjetsrigides onvexes,leshiérar hies

de volumes englobants, les méthodes approximantes et lepartitionnement de

l'espa e.

Les méthodes réalisant des al uls d'interse tions entre objets

rigides onvexes se basent sur la onvexité des objets pour déterminer la

distan e minimaleentre deux objets.

Leshiérar hiesdevolumesenglobantspermettentdelimiterlenombre

detestsd'interse tionentre pairesd'objets.Lesvolumesenglobantsdesobjets

ou des parties d'un objet sont ainsi insérés dans une arbores en e. Si deux

volumes englobants ne s'interse tent pas, alors il n'y a pas de ollision entre

les deux objets. Les tests d'interse tions des boîtes englobantes sont fa ilités

si elles sont omposées de plans omme les boîtes OBB ou k-DOP. En

ef-fet, es plans permettent une appli ation dire te du théorème de l'hyperplan

séparateurde Minkowski.

Théorème de l'hyperplan séparateur de Minkowski :

SoitEun espa eanede dimension nie,

A

et

B

deux onvexesde

E

non videset disjoints.Alorsil existe un hyperplan séparant

A

et

B

.

(18)

Ce théorème s'applique par la présen e d'un axe séparateur entre deux

polyèdres onvexes

P

et

P

disjoints,ave et axe orthogonalà :

 une fa ede

P

 une fa ede

P

 une arête de ha un des deux polyèdres

Les méthodes approximantes se basent sur des approximations de

repré-sentation pour fournir un résultatde déte tion de ollision en respe tant

tou-joursuntemps ritiqued'exé ution.Cesméthodespartentduprin ipequ'ave

une approximationsusante, un humain nedéte tera pas lesquelques erreurs

dues à es approximations. Parmi es méthodes, les méthodes sto hastiques

réalisent un é hantillonnagedes objetsàtester, soitàl'aidede parti ules

évo-luantà leur surfa e, soiten testant de manièrealéatoiredes paires d'éléments

entre objets.

Enn, les méthodes basées sur un partitionnement de l'espa e vont

réaliserune dé ompositionde l'environnementen sous-ensembles disjoints.Ce

partitionnement permet de tester uniquement les entités présentes dans un

ensemble de ellules voisines. Nous nous intéresserons parti ulièrement à e

genrede te hniquesetnouslesdétailleronsdansnotreétatdel'art.Nousavons

basé nos travauxde thèse sur une de es méthodes :les artes ombinatoires.

Quelque soit la stratégie hoisie, on peut dé omposer la déte tion de

ol-lision en deux phases. Une première phase de requêtes de proximités où l'on

her he àré upérer des informationsde proximitéentre lesentités pour

déter-minerdesvoisinages.Unese onde phaseoùl'ondéterminesidesobjetsvoisins

sont en ollisionou devront être inuen és onjointement.

Nous nous intéresserons i i tout parti ulièrement à ette première phase

de requêtes de proximité en explorant les diverses solutions proposées dans

la littérature. Nous présenterons par la suite la solution généraliste que nous

avons utiliséequi allielesfor es des diérentsmodèles de l'étatde l'art.

Notre obje tif prin ipalest de réaliserde manièreoptimaledes requêtesde

proximité entre objets (autonomes ou dirigés intera tivement) évoluant dans

une simulation en temps réel. Nous présenterons les atouts et dénirons le

(19)

Autres intera tions

Simulation de foule :

La simulation de foule est le pro essus de simulation du mouvement

d'ungrandnombred'entitésoudepersonnagesappelésagentsdans

un environnement virtuel. Ce termeest utilisé ommunément dans les

domaines de l'informatique graphique. Il est notamment destiné aux

lms etjeux vidéos.

Certainessimulationsvisentdesintera tionsautresqueladéte tionde

olli-sion.Parexemple,dansledomainede lasimulationdefoule,plusieurstravaux

se sont intéressés à des intera tions omportementales évoluées telles que la

réationde groupes de dépla ement ou l'évitement de zones de ongestion de

lafoule.

Cesintera tionsné essitentunenotionplusétenduedevoisinageave

éven-tuellement diérents niveaux. En eet, un agent ne peut pas éviter des zones

de ongestion s'il prend en ompte uniquement les agents les plus pro hes de

lui.Inversement,si un agenta un trop grandvoisinagepour déte ter de telles

zones,ses onsidérationsseronttropgrandespour ee tuerdemanièree a e

ladéte tion de ollision.

Cette notion de voisinage, qui est au oeur du sujet de l'intera tion, est

dire tement liée à la stru ture hoisie pour la déte tion de ollision. Nous

in-sisteronsdon parti ulièrementsur ettenotionetson impa tdansladiversité

de simulation.

1.2 Contributions

Nos travaux sont dans la ontinuation des travaux de T.Jund sur le suivi

en temps réel de parti ules dans des environnements partitionnés.

T. Jund a onçu des parti ules élémentaires apables d'évoluer dans un

environnementdé omposéen ellules onvexesen déte tantleurs hangements

de ellule.Ces travauxpermettent de suivre en temps réel es parti ules etde

déte ter les ollisions entre les parti ules et les ellules de l'environnement

désignées ommeobsta le.En revan he, es parti ules n'ont pas de notion

(20)

Nous avons réalisé des enregistrements permettant d'ee tuer la tâ he de

requêtes de proximité, fondamentale pour la déte tion de ollision des objets

entre eux,et non plus seulement entre lesobjetset l'environnement.Nos

tra-vaux peuvent être dé omposés en trois ontributions.

Enregistrementdetraje toiresdansunenvironnement omplexe:

La première ontribution majeure est la réation d'outilsétendant le suivi de

parti ulesen enregistranteten maintenantl'enregistrementd'entités dansdes

artes ombinatoires. Ces entités peuvent être des objets non-pon tuels tels

que des arêtes etdes surfa es.

Enregistrement multirésolution et densité de la simulation : La

se onde ontribution majeure est l'extension de es outils à des artes

multi-résolutions. L'aspe t multirésolution de notre arte d'enregistrement permet

de onserver des al uls de ollisions temps réel, dans des s énarios vastes

présentantungrandnombred'entités.Eneet, nousadaptonslatailledes

el-lulesd'enregistrementenfon tiondeladensitéd'objetsprésentsdans elles- i.

Nous onservons ainsi un nombre d'entités voisines borné au fur et à mesure

de la simulation. De plus, la multirésolution ore la possibilité de traiter des

voisinagesde diérents niveaux pour des intera tions plus omplexes.

Ces ontributions majeures permettent don de simuler en temps réel un

grand nombre d'objets pouvant être représentés par des parti ules, des arêtes

ou des surfa es, évoluant dans une subdivision de l'espa e en ellules dont le

degré de subdivision est adaptatif. Ces travaux ont été validés dans le adre

d'appli ationsutilisantdes maillagessurfa iques etvolumiques.

Dans le adre surfa ique,notre appli ationde simulationde foulefait

évo-luer des entités appeléesagents sur des surfa es adaptatives.

Dans le adre volumique, nos travaux ont été utilisés pour la simulation

d'opération médi ales utilisant des maillagesdé omposés en hexaèdres

défor-mables. Cette ontrainte de représentation, qui ne permet pas de garantir la

onvexitédes ellulesdurantlasimulation,nousamenéàétendrenotremodèle

de suivi de parti ules ades ellules non- onvexes.

Enregistrement dans des ellules non- onvexes :Ladernière

ontri-bution,plus te hnique, on erneainsi l'extensiondu modèle de suivide

parti- ulesdeT.Jundàdes ellulespotentiellementnon- onvexes.Nousavonsaaibli

la ontraintede onvexité à une ontrainte géométrique appelée BC pour

bien entré , permettant l'approximation de la ellule en un ensemble de

tétraèdres. Cette ontrainte sera présentée en détailsdans la partie7.2.Cette ontributionétenddon nos travauxd'enregistrement aux ellules BCetnous

(21)

1.3 Plan du mémoire

Les hapitres 2, 3 et4 présentent l'état de l'art des travaux on ernant la simulationen environnement partitionné.

Le hapitre 2 introduitles diérentes stru ture existantes pour ee tuer lesrequêtes de proximitédans une simulationen environnement partitionné.

Le hapitre 3détaillelastru ture quenousavons utilisépour es travaux de thèse : les artes ombinatoires.

Le hapitre 4 présente les travaux sur le suivi de parti ules en temps réel. Ces travaux sont notamment utiles pour optimiser les mises à jour des

stru tures de requêtes de proximité.

Les hapitres5, 6et 7présentent nos ontributions en détails.

Le hapitre 5 dé rit les te hniques utilisées pour ee tuer l'enregistre-ment des diérents objets dans notre stru ture, ainsi que le maintien de et

enregistrement durantla simulation.

Le hapitre 6 dé ritleste hniquesutiliséespour tenir àjour l'enregistre-ment lorsdu pro essus de multirésolution.

Le hapitre 7 présente la dénition de notre ontrainte BC et les exten-sionsréalisées pour lesuivi de parti ules dansdes maillagesà ellules

élémen-taires BC.

Les hapitres 8et9présentent lesappli ationsde nos travauxdans divers domaines de la simulation.

Le hapitre 8 montre nos résultatssur une appli ation de simulation de foule en 2D et 2D surfa ique. Ces simulations omportent un grand nombre

d'objetsdans des environnementsvastes.

Le hapitre 9 détaillenos extensions en simulationsphysiques 3D temps réel. Nous y dé rivons notre exploration de la simulation de foule 3D ainsi

qu'une appli ation médi ale en temps réel ouplée au moteur d'intera tions

physiquesSOFA. Cette appli ationmédi ale omporte un environnement

for-tement déformable, oùévoluent des outils hirurgi aux devant être modélisés

pré isément.

Enn, e mémoireseterminepar une on lusionportantsur l'ensemblede

(22)
(23)
(24)

Les requêtes de proximité en

environnement partitionné

Sommaire

2.1 Introdu tion . . . 16 2.2 Lesarbres etlesgraphes . . . 17 2.2.1 Leso treesetquadtrees . . . 17 2.2.2 BinarySpa ePartitioning . . . 18 2.2.3 Diagrammede Voronoï/ Triangulation deDelaunay 19 2.3 Lesgrillesde voisinage . . . 21 2.4 Lesgrillesd'enregistrement régulières . . . 22 2.4.1 Le spatialhashing . . . 23

Ce hapitre présente un panel des diérentes méthodes et stru tures

utili-sées dans lalittérature pour ee tuerdes requêtes de proximitéen

environne-mentpartitionné.

Nous allons distinguer les te hniques selon leur appro he géométrique ou

topologiquedelanotiondevoisinage.Nousverronsainsidesstru turesd'arbres

oudegraphes,desgrillesdevoisinagesetdesgrillesd'enregistrementrégulières.

(25)

2.1 Introdu tion

Nousrappelons i ique notre obje tif est d'ee tuer des requêtes de

proxi-mité entre diverses entités présentes dans une s ène. En d'autres termes, il

s'agitdere ueillirdes informationsdedistan e oud'interpénétrationentredes

pairesd'entités.

I i,nous utiliserons leterme entité pour parlerdu modèlede

représen-tationd'uneentité ommeprésentédans lapartie 1.1.2. Cesentités sont don pla éesdansunestru turepermettantd'obtenirdesinformationsdeproximité.

Noustraiterons uniquement des stru tures de partitionnement de l'espa e.

Un partitionnement de l'espa e onsiste à subdiviser l'environnement en

sous-ensembles disjoints. Il est réalisé soitde manière géométrique, en

subdi-visant l'environnement en ellules qui vont ontenir une ou plusieurs entités,

soit de manière topologique, en se basant sur les entités elles-mêmes et leur

adja en e.

Cette subdivision permet de tester pour la ollision uniquement les

enti-tés présentes dans un voisinage déni par un ritère. Par exemple, ertaines

te hniquesdénissentdeszonesdevoisinageparun ritèred'adja en e

géomé-trique,minimisantainsiladistan eentrelesentitésvoisines.D'autresutilisent

un ritèretopologiqueetré upèrentlesentités lesplus pro hes danstoutesles

dire tions, sans limitede distan e.

Ces diérentes appro hes semesurent en terme de nombre d'entité testées

etderapiditéd'a èsà esvoisinsdéte tés.Demanièregénérale,ilestpluslent

de déte ter les voisins les plus importants ave pré ision mais ette pré ision

diminue le nombre de tests à réaliser sur es voisins par la suite. Il onvient

don de hoisir laméthode en fon tion des tests quel'on désireréalisersur les

voisinsetdenotredénitiondevoisinage.Pourl'évaluationdesstru turesnous

noterons

N

d

lenombred'entitésdynamiquesd'unesimulationet

N

f

lenombre d'entités xes.

N = N

d

+ N

f

sera don le nombre d'entités total à simuler. On notera également

N

m

le nombre moyen d'entités dans un voisinage. Ce nombredépenddeladensitédesentitésdanslas ènepour ertainesstru tures

que nous allons présenter. Ave es notations, nous évaluerons la omplexité

temporelle de onstru tion ou de mise à jour des stru tures et la omplexité

temporelle de ré upérationdu voisinage d'une entité donnée.

Nousne présenteronspas i ilemodèlede artes ombinatoiresquisera

(26)

2.2 Les arbres et les graphes

Les arbres et les graphes orrespondent à une dé omposition irrégulière

de l'espa e. Cette dé omposition, entrée sur les entités présentes dans

l'es-pa e, est très utile pour représenter des environnements où les entités sont

distribuées de manière non-uniforme. Cette méthode de représentation très

répanduesoure d'un oûtdemise àjourimportantdanslessimulations

d'en-vironnementsdynamiques. Eneet, dans es s ènes, larépartition des entités

est onstamment en hangement. Ainsi, il est souvent moins oûteux de

re- onstruirel'arbrepartiellementouenentier.Cette onstru tionoumiseàjour

est réalisée en

O(N ∗ log(N))

à haque pas de temps [4℄. Certains travaux proposent des approximationspour réduirele oût eta élérer lessimulations

mais nous nous fo aliserons sur lessimulationsexa tes i i.

Con ernantl'a èsauvoisinaged'uneentitédonnée,onnoteunediéren e

entre lesarbres etlesgraphes. Eneet, ommemontré dans [9℄en appliquant

N

m

fois lare her he du voisin le plus pro he, ona un a ès pour un arbre est en

O(N

m

∗ log(N))

. Pour les graphes tels que lesgraphes de Voronoï, l'a ès est en

O(N

m

)

ar le voisinage d'une entité est dire tementlié à ette dernière et né essite d'être par ouru.

Voyonsdésormaislesdétailsde esdiérenteste hniquesave desexemples.

2.2.1 Les o trees et quadtrees

Une méthode répandue en partitionnement 3D est elle des o trees qui

onsiste en une subdivision de l'espa e en huit sous-espa es en fon tion du

nombred'entitésprésentes. Lagure2.1montreun exempled'unetelle subdi-visionpour un modèle 3D de lapin. La ra inede l'arbreest le ube ontenant

tout l'espa e. En partant de ette ra ine, on rée 8 noeuds en subdivisant

l'espa e en 8 ubes selon les axes médians. Pour haque noeud, on répète le

pro essus jusqu'à e qu'un noeud soit videou qu'ilaitatteintun ritère

d'ar-rêt. Ce ritèrepeut être une tailleminimalexée ouun nombre de primitives

ontenues xé. Un telnoeud terminalest appeléfeuille.Nous avons don une

arbores en e ave des feuilles vides et des feuilles ontenant une se tion

élé-mentaire de la surfa e du lapin.

Ave ette stru ture, des algorithmes de par ours de l'arbre permettent

d'a éder auvoisinage d'une feuille.

(27)

Figure 2.1 : Exemplede partitionnementparun o tree.[25℄

2.2.2 Binary Spa e Partitioning

Le Binary Spa e Partitioning (BSP) est une méthode de partitionnement

de l'espa e en ellules onvexes séparées par des hyperplans. Ces ellules sont

sto kées dans un arbre binaire qui est rapide à onstruire et pour lequel les

a ès sont très e a es. L'usage de ette te hnique est répandu, notamment

dans le domaine des jeux vidéos. La gure 2.2 présente un exemple d'arbre BSP représentant une s ène.

Un as parti ulier de BSP souvent utilisé est le kD-tree[12℄.Ce partition-nement onsiste en un arbre BSP où haque noeud est un pointde dimension

k. A haque étape de la onstru tion, on séle tionne un point ou une entité

quiservira de référen epour ledé oupage de l'espa eselon un ertainaxe.Le

pro essusest réitérésurlesdeuxsous-espa es réésen hangeantd'axejusqu'à

obtenirdes feuillesne ontenant qu'un seul pointoudes feuillesvides.

(28)

Figure 2.2 : Exemplede partitionnementparunarbre BSP.

2.2.3 Diagramme de Voronoï / Triangulation de Delaunay

Un diagramme de Voronoï est un partitionnement de l'espa e à partir de

points appelés germes. Chaque ellule du partitionnement ontient un et

un seul germe et représente l'ensemble des points plus pro hes de e germe

par rapport aux autres germes. Un diagramme de Voronoï est le dual d'une

triangulation de Delaunay 2.3. Dans une telle triangulation, au un sommet d'un triangle n'appartient au er le ir ons rit des autres triangles. De plus,

haque sommetestreliéàses pluspro hes voisins.Cettestru tureparaîtdon

adaptée ànotre problème du fait de sa ohéren e ave la notion de proximité

et [20℄ fournit un algorithme en

O(N ∗ log(N))

pour sa onstru tion, quelque soitla distan e entre lesentités.

Les travaux de Lamar he et Donikian [19℄ utilisent ette stru ture pour deux aspe ts diérents de leur simulationde foule 2D.

Leur première utilisationprends lessommets de l'environnement2D pour

réaliserune triangulation.Onextraitde ettetriangulationunedé omposition

en zones ir ulables pour réaliserla re her he de hemin.

Leur deuxième utilisation on erne notre problème de re her he de

voi-sins. Comme présenté dans la gure 2.4, haque entité pon tuelle représente un sommet de la triangulation de Delaunay. Cette triangulation est ensuite

ltrée ave un ritère de visibilité(segments en vert). Il en résulte un graphe

d'adja en e et de visibilité en noir qui permet de retrouver les voisins d'une

entité dire tement.

(29)

Figure2.3:UndiagrammedeVoronoïenrougeetsatriangulationdeDelaunayduale

ennoir.

(30)

2.3 Les grilles de voisinage

Figure 2.5 : Grille de voisinageave , en vert,unvoisinagede Moorede taille1.[3℄

Nousnousintéressonsi iàunestru ture apparue dans[3℄appelée grillede voisinage.Dans es travaux,les auteurs sesont intéressés aux simulations3D

de foulesgigantesques d'entités appelées boids.

La stru ture qu'ilsutilisent,présentée sur la gure 2.5, est une grilledans laquelle haque ellule ontient une entité à simuler. Les entités sont triées

dans la grille selon leur position dans l'espa e à haque pas de temps. Cette

grillepermet don d'a éderfa ilementaux boids pré édents et suivantsdans

touteslesdire tions autourd'un boid. Ce voisinage orrespond àun voisinage

de Moore sur ette grille.

Cette représentationaété utilisée pour réaliserdes simulationsde millions

d'entités sur GPU. Pour atteindre de telles performan es de simulations les

auteurs ont fortement paralléliséles pro essus sur GPU ave CUDA. Le

pro- essus de tri n'est réalisé que partiellement à haque pas de temps sur les

indi es pairs ouimpairs de la grille.

Cettete hniqueestdon impressionnanteparsesperforman es,en

permet-tant de simuler des foules gigantesques mais de manière impré ise. En eet,

les te hniques d'a élération peuvent amener à des erreurs de déte tion,

no-tamment le fait de ne trier qu'une moitié de la grilleà haque pas de temps.

De plus la notion de voisinage utilisée i i est très spé ique, et les auteurs

onsidèrentuniquementlesdeuxpremiersvoisinsdans haquedire tion.Cette

(31)

2.4 Les grilles d'enregistrement régulières

Nous allons voir i i des dé ompositions régulières de l'espa e à travers les

grillesd'enregistrementrégulières.Cettete hnique alquel'espa e(en3D)oule

plan(en2D)surune grille,dontles asesvont ontenirdes informationssurla

zonede l'environnement orrespondante. Ce type de stru ture non-adaptative

demeure lamême durant la simulationet fa ilitedon lareprésentation.

Dans de telles grilles, la notion de voisinage est souvent purement

géomé-trique. Les voisins sont don les entités présentes dans la même ellule de la

grillemais aussi elles présentes dans les ellules voisines. I i, selon la nesse

de la grille et la visibilité que l'on désire donner aux entités, on hoisira un

voisinage de Moore d'ordre1 ou2.

Certaines optimisationstellesque l'enregistrement des entités dansles

el-lulesvoisinesetladéte tiondes sortiesde ellulepermettent d'optimiser ette

te hnique. Eneet, dans e genrede modèle,toutes lesentités présentes dans

unemême elluleontlemêmevoisinage.À haque pasdetemps, haque entité

interroge don la ellule dans laquelle ellese trouve pour ré upérer son

voisi-nage. Ainsi, ette information qui orrespond à un par ours du voisinage de

Moore hoisipeutêtreenregistréepour haque elluleandene pasrépéterles

par ourspour haque entitéprésentedans une ellule.Ave etteoptimisation

les requêtes de proximité pour haque entité de la simulation sont en temps

onstantet sontdon évaluées pour toute lasimulation à

O(N

d

)

.

La déte tion de sortie de ellule pour les entités permet de mettre à jour

lastru ture moins souvent. Il est en eet moins oûteux de déte ter les

han-gements de ellule pour haque entité que de les réenregistrer toutes. Si on a

une grillede M ellules, ladéte tion des hangements est en

O(N

d

)

etla mise à jour de toutes les ellules est en

O(M ∗ N

m

)

. En pratique, selon la taille des ellules de la grille,très peu d'entités hangent de elluleet la omplexité

maximaleest don rarement atteinte.

Dans[30℄,lesauteursutilisentunedoublestru ture. D'une partune stru -ture hiérar hique de type quadtree pour ee tuer la re her he de hemin,

d'autrepart une grillerégulièrepour lesrequêtes de proximité.

Ces méthodes sont de manière générale très e a es, mais leur réussite

dépend grandement de la résolution hoisie pour la grille. Si les ellules de la

grillesont trop grandes, trop d'entités sont onsidérées omme voisines et les

al ulsexplosent.Silagrilleesttropne,lesentitéssont onstammententrain

(32)

Voyons plus en détaillaméthode de la littératurela plus e a e à e jour

utilisantune grillerégulière: le spatialhashing.

2.4.1 Le spatial hashing

Figure 2.6 : La boîte AABB du triangle traverse des ellules liées à la table de

ha hage.[32℄

Dans [32℄, Tes hner et oll. présentent un algorithme de spatial hashing permettant de déte ter en temps réel les ollisions et auto- ollisions d'objets

représentés par des maillages tétraédriques. Cette méthode repose sur une r

présentation simpliée de l'environnement par une grillerégulière

potentielle-mentinnie, asso iée à une table de ha hage.

L'algorithme se dé ompose en 3 étapes:

 Tout d'abord les sommets des tétraèdres sont enregistrés dans latable

de ha hage selon leur position et lataille

L

d'une ellule de la grille.  Dansunse ondtemps,on al ulelesvaleursdeha hagedes ellules

tra-versées par lesboîtes AABBdes tétraèdres pour ré upérer lessommets

enregistrés à es indi es.

 Les sommets ré upérés n'appartenant pas au tétraèdre sont testés par

(33)

oor-Lagure2.6présente laphase 2de et algorithmedansle as2D. Onpeut y trouver la boîte AABB d'un triangle et les ellules qu'elle re oupe grisées.

Les indexes de es ellules dans la table de ha hage permettent de ré upérer

un ensemble de sommets.

Cette méthode s'appuie sur l'e a ité des tables de ha hage en e qui

on erne leur apa ité à emmagasinerdes grandes quantités de données. Elle

fon tionnedon très bien même dans des environnementsvastes ets'applique

autant en 2D qu'en 3D. Toutefois, elle soure des mêmes problèmes de

réso-lutionque les autreste hniques reposantsur des grilles régulières. De plus, la

onsidérationduvoisinagepar les ellulesoùest présentelaboîteAABB d'un

tétraèdre ne permet pas d'éviter les ollisions mais plutt de les gérer après

(34)

Les artes ombinatoires

Sommaire

3.1 Présentation des artes ombinatoires . . . 26 3.1.1 Représentation . . . 26 3.1.2 Plongements . . . 30 3.2 Les artesmultirésolutions . . . 31 3.2.1 Multirésolutionexpli ite . . . 34 3.2.2 Multirésolutionimpli ite . . . 36 3.3 Utilisationpour les requêtes deproximité . . . 37

Nousprésentonsi ilastru turede arte ombinatoire,àmi- heminentreles

graphes etles grillesd'enregistrement,alliantlesfor es de es deux stru tures

que nous avons vues pré édemment.

Nous verrons dans un premiertemps la onstru tionet lesatouts de ette

stru ture, avant de nous intéresser à ses extensions multirésolutions qui sont

labase surlaquelle s'appuient nostravauxde thèse.Cetteprésentation,qui se

veut on ise,aété réaliséenotammentàpartirdes travauxde P. Kraemer[18℄ pour les généralités sur les artes, et eux de L.Untereiner [35℄ pour l'aspe t multirésolution.

Nous désirons utiliser ette stru ture omme représentation de

l'environ-nement, pour optimiser nos requêtes de proximité. Nous on lurons don e

(35)

3.1 Présentation des artes ombinatoires

Les artes ombinatoires sont un modèle de représentation topologique.

Ellespermettent de représenter un objet ouun environnement partitionnéen

ellulespartageant desrelationsd'adja en e etd'in iden e.Ainsi,un objetde

dimension

n

est dé omposé en un ensemble de k- ellules où

k ∈ [0, n]

est la dimension de la ellule. Une 0- ellule est don un sommet, une 1- ellule est

unearête,une2- elluleestunefa e,une3- elluleestun volume,et ...Lebord

d'une k- ellule est un ensemble de (k-1)- ellules ave

k ∈ [1, n]

, une 0- ellule n'ayant pas de bord.

Une ellule

a

estin identeàune ellule

b

si

a

faitpartiedubordde

b

,ousi

b

faitpartiedubordde

a

.Cesrelationspermettentunereprésentationpurement topologiquedes objetssansau une notionde géométrie.Lelienàlagéométrie

estrétablivial'utilisationd'unmodèlede plongement.Unplongementest une

informationquel onqueasso iée àune ellule dupartitionnement.Demanière

générale, les plongements sont utilisés pour asso ier une entité géométrique

à son équivalent topologique. Par exemple, on peut asso ier un point de

R

3

ave ses oordonnéesàune 0- ellule.Mais es plongementspeuventégalement

ontenir des informations plus ri hes, omme des notions physiques sur les

ellulesouen oredesenregistrementsd'entitésplongéesdansl'environnement.

Nousavons don un modèle dans lequel on séparefran hement lesnotions

topologiquedesinformationsgéométriques.Voyonsendétailslareprésentation

de es artes ombinatoires, etleur modèlede plongement.

3.1.1 Représentation

Les relations d'in iden e entre ellules permettent une représentation par

une graphe orienté appelé graphe d'in iden e. Les noeuds du graphe sont les

ellules,etles ar s sont lesrelations d'in iden eentre deux ellules ayant une

dimension d'é art. La gure 3.1 présente un graphe d'in iden e ontenant 2 fa es, 6 arêtes et 5 sommets en A, et un plongement géométrique potentiel

asso ié à e grapheen B.

On utilise plus souvent la représentation B ar elle donne une idée de la

(36)

d'in i-Figure 3.1 : Un graphe d'in iden e etun plongementpossibleasso ié.[18℄

Figure 3.2 : Lareprésentationparbrins en B orrespond aux hemins du graphe en

A.[18℄

Le modèle des artes ombinatoires généralisées ou G- artes propose une

représentation des quasi-variétés,orientables ounon, sans bord, à travers une

entité unique : le brin . Un brin orrespond à un hemin du graphe

d'in- iden e allantd'une ellule de plus grande dimension jusqu'à une 0- ellule en

suivant lesrelationsd'in iden e.

La gure 3.2 donne un exemple de représentation par brins en B ave les hemins du graphe orrespondant en A. On dénit i i que deux brins sont

i-adja entss'ilspartagent lesmêmes ellulesàl'ex eption de ellede dimension

i.Cetterelationd'adja en epermet dedénirune opération

α

i

permettantde trouverà partird'un brinson brin i-adja ent. Ilest importantde noterque la

(37)

Figure 3.3 : Les relations

α

i

permettentde par ourir uneG- arte.[18℄

Figure 3.4 : Lesk- ellules sontretrouvéesen utilisant lesrelations

α

i

.[18℄

La gure 3.3représente une G- arte dont les ar s sont les relations

α

0

en pointillés,

α

1

en trait plein et

α

2

en doubletrait. Ces relationspermettent de par ouririntégralementla arteetderetrouverlesk- ellulesoriginelles omme

onpeutle onstatersurlagure3.4.Eneet,onretrouveunei- elluleàpartir d'un brin

b

en utilisant ré ursivement toutes les opérations

α

j

∀j ∈ [0...n]

et

j 6= i

.Cetensembledebrinsqui ontientunei- elluleestappeléi-orbite.Ainsi, on a en A les 0-orbites en vert ontenant les sommets, en B les 1-orbites en

bleu ontenantlesarêtesetenCles2-orbitesenrouge ontenantlesfa es.Plus

(38)

Figure 3.5 : Lareprésentationnaled'une 3- arte.[35℄

Enn, ettereprésentationaétéallégéeenselimitantauxobjetsorientables

sans bord dans les n- artes ombinatoires. Pour réaliser ette simpli ation il

sut de supprimer une des orientations présentes dans lesG- artes. Les deux

orientationsétant liées par larelation

α

0

un nouvel opérateurde par ours est réé :

∀i ∈ [1...n] Φ

i

= α

i

◦ α

0

.

Nouspouvonsdon dé rireformellementunen- arte ommele(n+1)-uplet

C = (B, Φ

1

, ..., Φ

n

)

ave

B

un ensemble ni de brins,

Φ

1

une permutation sur

B

et les

Φ

i

ave

2 ≤ i ≤ n

sont des involutionssur

B

[18℄.

La gure 3.5 donne un exemple de la représentation d'une 3- arte. Dans ette représentation nale,lesbrins sont des è hes représentant leur relation

Φ

1

ave lebrin suivantdans une fa e.Les relations

Φ

2

reliantlesorbites fa es d'une même orbite volume, et

Φ

3

reliant les diérents orbites volumes entres elles sontrespe tivement en rougeetjaune. Dans lerestede e mémoire, 'est

ettestru turequiserasous-ja entedansl'intégralitédesmaillagesreprésentés.

(39)

3.1.2 Plongements

Lesplongementsquenousallonsprésenter sontnotammentla ontribution

des travaux de thèse de SylvainThery [34℄.

Une k- ellule étant représentée par un ensemble de brins, les plongements

orrespondants à ette ellule doivent être les mêmes pour tous ses brins. Un

plongement a don une dimension orrespondant à la dimension de la ellule

possédantles ara téristiques.De manièresymétrique,étantdonnéqu'un brin

représente

n + 1

ellules diérentes, il peut posséder

n + 1

plongements dié-rents.Unplongement orresponddon àdesinformationsliantdesbrinsd'une

même orbite qui pointent vers la même adresse de plongementpour ette

or-bite.Lors deladénitionde plongements,l'informationasso iée àuneadresse

de plongementest modiée.

Un exemple de plongement typique est le marquage, 'est à dire le

plon-gement sur un booléen. Le marquage permet d'étendre la représentation des

artes ombinatoires aux quasi-variétés possédant un bord, sans altérer les

ontraintes d'intégrité de la arte. Ainsi, les brins orrespondants au bord de

la artesontmarquésand'êtrere onnusdanslesalgorithmesdepar ours.

De manière symétrique, on asso ie un brin à un plongement, e qui

per-met de réaliser des par ours rapidesde la arte appelés traversées. Si l'on

souhaite par ourir les sommets de la arte, il sut d'utiliser un traverseur

qui va ré upérer le brin asso iéà haque plongement de type sommet. On ne

par ourra ainsi queles brins traversés, 'est àdire un par orbite sommet.

D'autres outils sont disponibles en e qui on erne les par ours des artes

etdes divers plongements.Lesopérationsd'adja en e etd'in iden esont

par-ti ulièrementoptimiséesave des traverseurs d'adja en eoud'in iden ed'une

k- ellule. Ainsi, on peut par exemple aisément ré upérer les 3- ellules

(vo-lumes)0-adja ents(adja ents parsommet)àun volumedonné.Laplateforme

open-sour e CGoGN [6℄regroupe notamment et ensemble d'outilset permet une utilisationfa ilitée de e modèlede représentation.

On a don bien un modèle à mi- hemin entre grille d'enregistrement et

graphede voisinage.Les ellulesd'enregistrementsontlesfa esoulesvolumes

de la arte selon la dimension. Le graphe de voisinage est fourni par les

re-lations d'adja en e et d'in iden e entre ellules. L'avantage que nous voulons

(40)

C'est sur ettebase dereprésentation,d'opérationsdepar ours etde

plon-gementsquenousallonsvoirlesextensionsmultirésolutionsde emodèle.Nous

nous intéresserons ensuite de plus près à son utilisation pour notre problème

d'enregistrement.

3.2 Les artes multirésolutions

Les artes multirésolutionpermettentde représenter des maillages

adapta-tifs. Sur un maillage adaptatif on peut réaliser les opérations de subdivision

et de simpli ationsur les ellules lo alement pour en adapter la taille. Nous

appellerons es opérationsdes opérationsde mise à l'é helle.

Lesmaillagesadaptatifs lassiquespermettentd'a éderàl'étatdumaillage

à un instant donné. Le maillage pré édant une opération de mise à l'é helle

est perdu etseule la version ourante du maillage est a essible.

Lemodèledereprésentationmultirésolutionretienttouteslesversionsd'un

maillage aufur et à mesure de ses hangements. Chaque taillede subdivision

orrespond à un niveau de résolution du maillage et haque niveau est

a es-sible à tout moment, d'où leterme de multirésolution.Le prin ipe du modèle

des artes ombinatoires multirésolutions est d'ajouter de nouveaux brins au

furet àmesurede lamodi ation de la arte,par des opérateurs élémentaires

tels quela subdivision d'arête, la subdivision de fa e, et . Ces opérateurs

élé-mentairesgarantissentquela arte résultantevérie les ontraintes d'intégrité

d'une arte ombinatoire.

La gure 3.6 montre l'imbri ationdes ensembles de brins dans une arte multirésolution. Les brins d'origine de la arte dans l'ensemble

B

0

sont

éga-lement présents dans l'ensemble

B

1

des brins présents au niveau 1 où sont

également apparus les brins oranges. Il en va de même pour le niveau 2 et les

niveaux suivants.

Les brins ajoutés possèdent un niveau d'introdu tion et de nouvelles

liai-sons topologiques sont dénies à haque niveau. Les brins de niveau inférieur

sonttoujoursprésentsdansunniveausupérieur.Seulsleslienstopologiques,et

don lespar ours, hangent.Pournepasperdrelesliensdesniveauxinférieurs,

ondoit retenirl'informationde liaison de haque brin sur haque niveau.

En e qui on erne les plongements des brins, ils sont potentiellement

(41)

Figure 3.6 : Imbri ationdesensemblesde brins de diérents niveaux dansune arte

ombinatoiremultirésolution[18℄.

Ande dé rireles diérentes représentations multirésolutions,nous allons

dénir qu'un niveau de résolution est dit expli ite si tous les brins qui le

omposent possèdent des liens topologiques permettant de le par ourir

dire -tement.

La gure 3.7 présente une 2- arte multirésolution de niveau 2 subdivisée de manière adaptative.Les brins de niveau 0 sont noirs, les brins de niveau 1

sont violets et les brins de niveau 2 sont oranges. Le lien topologique par la

relation

Φ

1

est indiqué par la è he sur la représentation des brins et le lien

Φ

2

est un traitrouge.Sil'onometlesè hes vertes, onpeut voirqueleniveau 2 de résolution de ette arte est expli ite, ar tous les liens topologiques y

sont dire tementprésents.Enrevan he, sil'onsepla eauniveau0de la arte

où seuls les brins noirs existent, au un lien n'est présent. On peut rendre e

niveau 0 expli ite pour larelation

Φ

1

en y rajoutant lesliens indiqués par les è hes vertes. Sil'on expli iteégalement larelation

Φ

2

auniveau 0,toutesles relationsseront dire tement présentes dans e niveau et ilsera don expli ite.

(42)
(43)

Deux versionsde représentationsont été présentées dans [35℄:

 Une première représentation dite expli ite où l'on rée expli itement

haque niveau de résolution en dupliquant et en enri hissant les

infor-mations du niveau pré édent.

 Une se onde version dite impli ite où seul le niveau de résolution le

plus n est expli ité etles autres niveaux sont re onstruits de manière

impli iteà la demande.

Ces représentations se distinguent notamment par les s hémas de

subdivi-sion qu'elles supportent. Lorsqu'il s'agit de subdiviser des ellules, plusieurs

appro hes sont on urrentes. De manière générale on les lassie en deux

a-tégoriesappelées ranement primal etranement dual.

Dans un ranement primal, les an iens sommets sont onservés et les

fa essontsubdivisées, réantdenouveaux sommetsdanslesfa eset/ousurles

arêtes.Dansun ranementdual,lessommetsetlesarêtessonté latéspour

réerdes fa es.Lagure 3.8présente es deux typesdes hémade subdivision appliquésaumêmemaillaged'origine.Onytrouvelasubdivisionprimaleen A

ave onservationdes sommetsd'origine,etlasubdivision dualeen B é latant

lessommets. Certaines te hniques sortent de es atégories, ommele s héma

de subdivision

3

, quisubdivise depuisun point entral en reliant e point à haque sommeteten faisantensuitebas uler lesan iennes arêtes pour former

lesnouvelles fa es.

Voyonsdésormais su in tement lespossibilitésoertespar es

représenta-tions etleurs diéren es d'utilisation.

3.2.1 Multirésolution expli ite

Une représentation multirésolution expli ite orrespond à l'implantation

dire ted'unmodèle multirésolution.Chaqueniveauest réé indépendamment

desautres,mêmes'ilsontdesbrinsen ommun,l'informationestdupliquée.On

peutdon sepla eràn'importequelniveauderésolutionetutiliserdire tement

lesrelationsentre lesbrins présentes à e niveau pour le par ourir.

Lagure3.9présentelagestiondes relationstopologiquespour deux brins

d1

et

d2

d'une arte multirésolution de dimension 3 possédant 3 niveaux de résolution. Les brins sont asso iés à un tuple liaisons/attributs qui détermine

leurs voisins par les relations

Φ

1

, Φ

2

et

Φ

3

et leurs attributs de sommet (

S

) etde volume(

V

) asso iés. On peut onstater que le brin

d2

a été introduit au niveau 1, et que pour haque niveau, un brin pointe potentiellement vers un

nouveau tuple de liaisons/attributs. Le brin d1 n'a pas eu de modi ation de

(44)

A

B

Figure 3.8 : Diérentss hémasde subdivision :les hémaprimalen Aet dualen B.

(45)

Cette représentation a un oût onstantpour ee tuerles requêtesde

voi-sinage,quelque soitleniveaude résolution. Ellesupporte touttypede

rane-ment de la topologie, que e soitprimal, dual,

3

, et . Son in onvénient est d'êtreplus oûteuse en mémoireque d'autres stru tures.

3.2.2 Multirésolution impli ite

Dans un modèlede représentation multirésolutionimpli ite,seul leniveau

de résolution le plus n est expli ité. Ce type de représentation fon tionne

uniquement sur les s hémasde subdivisions primaux. Son prin ipeest d'avoir

a èsuniquementaudernierniveau de résolution ommedans un modèle

mo-norésolutionan d'éviter les redondan es.

On simuleainside manièreimpli itelesautresniveaux de résolution grâ e

àun systèmed'étiquetage de brins.Les étiquettesservent àretrouverles liens

permettantderéaliserlespar oursde plushautniveau.Lagure3.10présente ettete hnique surune2- artepossédant3niveaux derésolution.On retrouve

enA lelien

Φ

0

1

, 'està direlelien

Φ

1

auniveaude résolution 0,entre lesbrins

d1

et

d2

quel'on her he àre réerde manièreimpli iteenpar ourantleniveau 2 ommeillustréenB.Pour ee tuer e par ours,onsuitleslienstopologiques

Φ

1

et

Φ

2

au niveau 2 de résolution, pour retrouver le numéro d'étiquette de départ,i i 1. On suit ette étiquette jusqu'à trouverun brin de même niveau

d'introdu tion qued1, don un brin noir.

Commeonutiliseuns hémadesubdivisionprimal,lessommetsne hangent

pas et il est susant d'utiliser des étiquettes d'arêtes sur une 2- arte et des

étiquettesd'arêtes et de fa es sur une 3- arte.[35℄a déterminé quele nombre d'étiquettes né essaires est limité au nombre maximum d'arêtes adja entes à

unsommetintroduitparleranement.Ilsutdon de3étiquettesdiérentes

pourunesubdivisiondetriangle, ommedansnotreexemple,etde2étiquettes

pour une quadrangulationde fa espolygonales.

Nous avons don une gestion des par ours grâ e à es étiquettes, voyons

désormais la gestion des plongements dans de telles artes. Comme les

som-mets sont xes dans e mode de représentation, leurs attributs peuvent être

gérésaisément.Con ernant lesautresattributs, àsavoir d'arête,de fa eoude

volume, lasolutiontrouvée est de ré upérer l'indi ede plongementdu dernier

brininsérédansl'orbite.Unbrindeniveau0posséderatouteslesinformations

de plongement de niveau 0. En revan he, à un niveau

k 6= 0

, pour trouver le plongement de la n-orbite il est né essaire de par ourir ette orbite pour

(46)

d1

d2

1

1

1

1

1

1

3

2

2

2

A

B

Figure 3.10 : On retrouve le par ours

Φ

1

de d1 vers d2 au niveau 0 grâ e à un par oursen suivant de manièreimpli iteles bonnesétiquettes auniveau 2.[35℄

[36℄ réalise la omparaison de performan e entre les modèles expli ites et impli ites. Sa on lusion est que le modèle impli ite oûte 15% de plus en

termede temps de par ours des diérents niveaux de résolution, et oûte33%

et 14% de moins d'espa e mémoirerespe tivement pour les as 2D et3D.

Cette représentation impli ite a don l'avantage d'avoir un oût en

mé-moiretrèsfaiblepour unestru turereprésentantune onne tivité omplète de

haqueniveaudelahiérar hie.Enrevan he,elleestrestreinteauxsubdivisions

primaleset rée un sur oût des requêtes de voisinage àhaut niveau.

3.3 Utilisation pour les requêtes de proximité

L'idée quenousdéfendons est d'utiliserune arte ombinatoirepour

repré-senter l'environnement de la simulation. Comme dans les grilles

d'enregistre-ment lassiques, nous désirons enregistrer des entités dans des ellules de la

arteet ommedansleste hniquesutilisantdes graphes,nousdésironsutiliser

lesrelations d'adja en e des ellulespour optimiserlesrequêtes de proximité.

Lesenregistrementsdansune arte ombinatoire orrespondentàdes

plon-gements omplexes. Comme nous l'avons évoqués au début de ette se tion,

(47)

Plongement de face :

1 vecteur de points :

1 vecteur d'arêtes :

Plongement d'arêtes :

1 marquage : Obstacle

2 réels : coordonnées

du centre de la face

Figure 3.11 : Les enregistrements des entités sont une information de plongement

parmid'autres.

On peut représenter l'environnement par une arte ombinatoireet se

ser-virdesplongementspourenregistrerlesentités présentes dansunesimulation.

Lagure 3.11 présente un exemple de simulation de foule ave diverses infor-mationsplongées dans l'environnement.Parmi es informations,lesentités de

lasimulation,i ilespointsetles arêtes,ont été plongésdans des ve teurs sur

lesfa esde la arte représentant l'environnement.On peut égalementtrouver

d'autres informations, par exemple, des arêtes de la arte marquées omme

obsta leou en ore des informationsgéométriques omme le entre de gravité

d'unefa e.

Cesinformationsdeplongement,asso iéesauxopérationsdepar ours,

per-mettent de re ueillir rapidement l'ensemble des entités enregistrées dans le

voisinage d'une ellule de l'environnement. I i, la notion de voisinage est

to-pologique et on va dénir qu'une  ellule de la arte est l'orbite de plus

grandedimensiondans lasubdivision.Ainsi,une elluled'une2- artesera une

2-orbite orrespondantàunefa e,etune elluled'une3- arteseraune3-orbite

orrespondant àun volume. Ave ette dénition de ellule, onpeut dénirle

voisinage d'une ellule:

Dénition du voisinage d'une ellule C : :

Le voisinage d'une ellule C est l'ensemble des ellules qui lui sont

adja entes par sommet, 'est à dire 0-adja ente.

(48)

Nous avons don une dénition de voisinage et un modèle basé sur une

représentation topologiquede l'environnement,très e a e pour ee tuer des

requêtesdeproximité.Cemodèlepermetdereprésentern'importequelle

quasi-variété, e qui nous donne une grande liberté de hoix pour notre

environne-ment de simulation. Son modèle de plongement nous permet d'asso ier des

information potentiellement de très haut niveau dans haque ellule et même

haque orbite, grâ e à un a ès similaire pour toutes les entités du maillage

(sommets, arêtes, fa es et volumes). Ses performan es et sa stabilité ont été

prouvées mathématiquement dans divers travaux. Nous avons don hoisi e

modèle omme base de nos travauxde thèse.

Durant notre exploration des méthodes basées sur des grilles

d'enregistre-ment de la se tion2.4, nous avons déterminé quel'e a ité de la mise à jour des enregistrements dépend de la taille des ellules de la subdivision. Ainsi,

danslessituationsde fortedensitéd'entités,il onvient deréduirelevoisinage

d'une entité et don la tailledes ellules pour fa iliterses al uls de ollision.

Dans des situations de faible densité d'entités, de grande ellules permettent

de limiter les hangements de ellule des entités et don de ne pas avoir à

mettreàjour lesenregistrements.Nousavons don hoisid'utiliserun modèle

adaptatif pour réaliser nos simulations. La résolution du maillage est anée

selon les zonesde densitéd'entités plongées dans la arte.

La représentation impli ite multirésolution semble plus adaptée à notre

obje tif et nous avons don hoisi de travailler ex lusivement sur e modèle.

Pour le reste de e mémoire, il sera don question de modèle de

multirésolu-tion impli ite. En eet, dans nos simulations, les re her hes de voisinages se

font toujours au niveau le plus n de résolution, et on a ède très rarement

auxniveaux supérieurs.Deplus,less hémasde subdivisionprimauxsontplus

avantageux pour suivre nos enregistrements. En 2D, ave un s héma primal,

lorsqu'une fa eest subdivisée, la formedes fa es0-adja entes n'est pas

modi-ée. Cette propriété permet de hanger uniquement les enregistrements de la

fa e en question. Ce système de multirésolution est don utilisé pour limiter

la tailledes voisinagesetoptimiser notresimulation.

Enn, la omplexité de e modèle est la même que pour les grilles

d'enre-gistrement régulières pour nos ritères de omparaison, àsavoir :



O(N

d

)

pour lamise àjour de lastru ture ave une déte tion des han-gements de ellules.



O(N

d

)

pour la ré upération du voisinage des entités mobiles soit

O(1)

pour haque entité.

Avantdevoirdanslespartiessuivantes nos travauxautourde e modèle,nous

(49)
(50)

Suivi de parti ules

Sommaire

4.1 Contexte . . . 42 4.2 Algorithmes . . . 42 4.2.1 Dépla ement depuisl'état volume . . . 45 4.2.2 Dépla ement depuisl'état fa e . . . 47 4.2.3 Dépla ement depuisl'état arête . . . 48 4.2.4 Dépla ement depuisl'état sommet. . . 49 4.3 Con lusion . . . 50

Ce hapitreprésentedemanièresynthétiquelestravauxdethèsedeThomas

Jund [15℄ sur le suivi de parti ules dans un environnement partitionné en ellules onvexes. Nous présenterons i ile ontexte d'appli ation ainsi que les

algorithmes de suivi de parti ules dans un environnement 3D.

Ces travaux, en asso iation ave le modèle de artes ombinatoires

multi-résolution, onstituent la base sur laquelle s'établissent nos travaux de thèse

Références

Documents relatifs

Les difficultés à surmonter dans le cadre d’une validation Temps réel par interface logicielle ou matérielle sont alors : – la présence de convertisseurs statiques de part

On peut ainsi imaginer l’utilisation du mod`ele d’interaction dans le cadre du passage d’un flux de fluide dans un tuyau qui s’´elargirait sous l’effet de la pression ou des

Résumé : en prenant le véhicule conventionnel comme référence, les gains en consommation obtenus avec les deux stratégies de commande temps réel proposées (  _ PRES

[r]

La figure ci-contre pr´ ecise l’´ evolution temporelle de la vitesse de filage et de la consigne de traction, reproduire cette figure sur votre copie et tracer

ىفطصه سىكزه د : ةشقانملا ةنجل ءاضعأ هو تعهاج ـــــــ ىاش 0 ًلاعلا نٍلعتلا راتسأ ا ـــــــــــــ سٍئس تفشعىب سداقلا ذبع هو تعهاج ـــــــ ىاش 0 ًلاعلا نٍلعتلا

- 26 -  .ﻖﻴﺿ قﺎﻄﻧ ﻰﻠﻋ عوﺮﺸﳌا ﺐﻳﺮﲡ  .ﺔﻋﻮﺿﻮﳌا ﺔﻄﳋا قﺎﻄﻧ ﻰﻠﻋ ﲑﻴﻐﺘﻟا ﺬﻴﻔﻨﺗ  ﻢﻴﻋﺪﺗ .ﲑﻴﻐﺘﻟا  .ﻪﻴﺟﻮﺘﻟاو ﺔﻌﺑﺎﺘﳌا (د :ﲑﻴﻐﺘﻟا ﻢﻴﻴﻘﺗ ﺔﻠﺣﺮﻣ

Elle correspond cependant à une démarche à la fois naturelle et puissante car elle permet de traiter des cas complexes à partir de modkles de base extrêmement simples.Une