Mémoire : Modélisation de zones urbaines virtuelles
Upcoming SlideShare
Loading in...5
×
 

Mémoire : Modélisation de zones urbaines virtuelles

on

  • 7,949 views

La modélisation précise de zones urbaines étendues représente un défi en informatique graphique. Une ville réelle répond à des règles de construction (implicites ou explicites) et reflète ...

La modélisation précise de zones urbaines étendues représente un défi en informatique graphique. Une ville réelle répond à des règles de construction (implicites ou explicites) et reflète souvent de multiples influences historiques, culturelles et sociales à travers le temps. Atteindre une précision suffisante pour qu’une ville virtuelle soit crédible, pour un utilisateur la visitant au niveau du sol, demande une modélisation extrêmement détaillée qui exige bien trop de temps et d’efforts de la part d’un concepteur même expérimenté. L’émergence de nouveaux problèmes liés à l’urbanisation de masse, tels que l’influence des rayonnements électromagnétiques, la préparation de plans d’évacuation ou la prévision de l’évolution nécessaire des moyens de transports urbains, entraîne des besoins croissants en matière d’études et de prévisions. La capacité à générer rapidement des maquettes virtuelles crédibles permet de répondre à ces besoins et constitue donc un sujet d’avenir appelé à se développer car les résultats actuels ne satisfont pas les critères précédemment définis.

Nous présentons donc en premier lieu une synthèse des travaux dans ce domaine. Cette synthèse est décomposée selon six étapes de génération, les résultats de chaque étape représentant un niveau de détail logique de la zone urbaine. Nos travaux portent principalement sur deux étapes distinctes du processus de génération d’une zone urbaine virtuelle.

La première étape étudiée traite du placement automatique du mobilier dans une pièce. Nous présentons une étude de l’application de méthodes issues de la recherche locale pour résoudre le placement d’objets au sein d’un problème défini par des contraintes. Les objets traités sont définis par leur boîte englobante, et peuvent prendre une orientation quelconque (non isothétique). Nous décrivons également le modeleur déclaratif DEMONS LE qui a été développé pour évaluer la
pertinence de cette approche.

La seconde étape étudiée traite de la génération automatique d’extérieurs de bâtiments (façades, fondations et toits). Notre méthode est basée sur la définition de gabarits de bâtiments qui sont appliqués à des descriptions de bâtiments. Une description est uniquement constituée de l’embase tridimensionnelle, de la hauteur de toit et de la hauteur des murs du bâtiment. Ensuite, les façades de bâtiments sont créées en utilisant une grammaire de murs tridimensionnelle isométrique, basée sur un ensemble de règles. Ces règles peuvent être simples ou bien très détaillées en fonction des besoins de l’utilisateur.

En conclusion, nous présentons les perspectives concernant la poursuite de ces travaux, plusparticulièrement pour les deux étapes que nous avons étudiées en profondeur, mais aussi pour les autres étapes de génération.

Statistics

Views

Total Views
7,949
Views on SlideShare
7,921
Embed Views
28

Actions

Likes
0
Downloads
2,038
Comments
0

1 Embed 28

http://www.scoop.it 28

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

 Mémoire : Modélisation de zones urbaines virtuelles Mémoire : Modélisation de zones urbaines virtuelles Document Transcript

  • Universit´ Paul Sabatier – Toulouse 3 e ´ Ecole Doctorale Informatique et T´l´communications ee Mod´lisation automatique de zones e urbaines THESE pr´sent´e et soutenue publiquement le 30 septembre 2008 e e pour l’obtention du Doctorat de l’Universit´ Paul Sabatier e (Sp´cialit´ Informatique) e e par Mathieu Larive Composition du jury Pr´sident : e Mr Jean Pierre Jessel, professeur ` l’Universit´ Paul Sabatier de Toulouse a e Rapporteurs : Mr Mohamed Slimane, professeur ` l’Universit´ de Tours a e Mr Marc Daniel, professeur ` l’Ecole Sup´rieure d’Ing´nieurs de Luminy a e e Examinateurs : Mr Yann Dupuy, ing´nieur, Oktal Synthetic Environment e Mme V´ronique Gaildrat, Mdc HdR, Universit´ Paul Sabatier (directeur de th`se) e e e Institut de Recherche en Informatique de Toulouse — UMR CNRS 5505
  • Auteur : Mathieu LariveTitre : Mod´lisation de zones urbaines virtuelles eDirecteur de th`se : V´ronique Gaildrat e eLieu et date de soutenance : Toulouse, septembre 2008Discipline administrative : InformatiqueR´sum´ La mod´lisation pr´cise de zones urbaines ´tendues repr´sente un d´fi en informatique e e e e e e egraphique. Une ville r´elle r´pond ` des r`gles de construction (implicites ou explicites) et refl`te e e a e esouvent de multiples influences historiques, culturelles et sociales ` travers le temps. Atteindre aune pr´cision suffisante pour qu’une ville virtuelle soit cr´dible, pour un utilisateur la visitant au e eniveau du sol, demande une mod´lisation extrˆmement d´taill´e qui exige bien trop de temps et e e e ed’efforts de la part d’un concepteur mˆme exp´riment´. L’´mergence de nouveaux probl`mes e e e e eli´s ` l’urbanisation de masse, tels que l’influence des rayonnements ´lectromagn´tiques, la e a e epr´paration de plans d’´vacuation ou la pr´vision de l’´volution n´cessaire des moyens de trans- e e e e eports urbains, entraˆ des besoins croissants en mati`re d’´tudes et de pr´visions. La capacit´ ıne e e e ea e e` g´n´rer rapidement des maquettes virtuelles cr´dibles permet de r´pondre ` ces besoins et e e aconstitue donc un sujet d’avenir appel´ ` se d´velopper car les r´sultats actuels ne satisfont pas ea e eles crit`res pr´c´demment d´finis. e e e eNous pr´sentons donc en premier lieu une synth`se des travaux dans ce domaine. Cette synth`se e e eest d´compos´e selon six ´tapes de g´n´ration, les r´sultats de chaque ´tape repr´sentant un e e e e e e e eniveau de d´tail logique de la zone urbaine. Nos travaux portent principalement sur deux ´tapes e edistinctes du processus de g´n´ration d’une zone urbaine virtuelle. e eLa premi`re ´tape ´tudi´e traite du placement automatique du mobilier dans une pi`ce. Nous e e e e epr´sentons une ´tude de l’application de m´thodes issues de la recherche locale pour r´soudre le e e e eplacement d’objets au sein d’un probl`me d´fini par des contraintes. Les objets trait´s sont d´finis e e e epar leur boˆ englobante, et peuvent prendre une orientation quelconque (non isoth´tique). Nous ıte ed´crivons ´galement le modeleur d´claratif DEMONS LE qui a ´t´ d´velopp´ pour ´valuer la e e e ee e e epertinence de cette approche.La seconde ´tape ´tudi´e traite de la g´n´ration automatique d’ext´rieurs de bˆtiments (fa¸ades, e e e e e e a cfondations et toits). Notre m´thode est bas´e sur la d´finition de gabarits de bˆtiments qui e e e asont appliqu´s ` des descriptions de bˆtiments. Une description est uniquement constitu´e de e a a el’embase tridimensionnelle, de la hauteur de toit et de la hauteur des murs du bˆtiment. En- a 1
  • suite, les fa¸ades de bˆtiments sont cr´´es en utilisant une grammaire de murs tridimension- c a eenelle isom´trique, bas´e sur un ensemble de r`gles. Ces r`gles peuvent ˆtre simples ou bien tr`s e e e e e ed´taill´es en fonction des besoins de l’utilisateur. e eEn conclusion, nous pr´sentons les perspectives concernant la poursuite de ces travaux, plus eparticuli`rement pour les deux ´tapes que nous avons ´tudi´es en profondeur, mais aussi pour e e e eles autres ´tapes de g´n´ration. e e eMots-cl´s : synth`se d’images, r´alit´ virtuelle, mod´lisation, architecture, urbanisme, m´thodes e e e e e eproc´durales, mod´lisation d´clarative e e eLaboratoire : IRIT, Universit´ Paul Sabatier, 118 route de Narbonne, F-31062 Toulouse Cedex e9 2
  • RemerciementsJ’aimerais remercier en premier lieu Mme V´ronique Gaildrat pour avoir encadr´ mon stage de e emaˆ ıtrise, puis continu´ en ´tant mon directeur de stage de DEA et enfin pour avoir m’avoir e econfi´ ce sujet de th`se. J’aimerais surtout la remercier pour la qualit´ des ses nombreuses re- e e electures, j’atteste ici qu’elle ne saurait ˆtre tenue responsable des abominations grammaticales eet orthographiques qui demeurent dans ce m´moire. eJe remercie ´galement M Jean Latger pour avoir accept´ ma pr´sence dans l’entreprise qu’il e e edirige, Oktal Synthetic Environment, dans le cadre de cette th`se CIFRE. J’aimerais remercier eparticuli`rement les personnes d’OktalSE qui m’ont apport´ leur aide et leur soutien pendant e eces ann´es, que ce soit Paul Pitot, Yann Dupuy ou Carole Nissoux, car j’ai ´norm´ment appris e e een travaillant avec elles.Je remercie messieurs Marc Daniel et Mohamed Slimane pour m’avoir fait l’honneur de s’int´resser ea` ce travail. Les commentaires pertinents qu’ils ont su formuler ont grandement contribu´ ` e aam´liorer la qualit´ de ce manuscrit. e eJe remercie M Jean Pierre Jessel, responsable de l’´quipe Vortex, pour sa disponibilit´, sa gen- e etillesse et son ´coute qui m’ont ´t´ fort pr´cieuses pour ma vie de doctorant et aussi pour mes e ee ediverses exp´riences professionnelles. Je ne sais pas si beaucoup d’´tudiants en DEA ont la pos- e esibilit´ d’aller assister ` des colloques, mais j’ai ´norm´ment appr´ci´ l’honneur que tu as fait e a e e e een m’y emmenant.Il y a quelques ann´es, j’avais f´licit´ M Mathias Paulin pour sa patience et sa pers´v´rance dans e e e e eses tentatives de ”¡pingouinisation”¿ de la soci´t´. Je ne sais pas ce qu’il en est de la soci´t´, mais ee eepour le parc de machines de l’´quipe, ¸a prend bonne tournure. Merci encore de ton enthousiasme e cet de ton ´nergie, et surtout, merci de m’avoir d´march´ pour le DEA, il y a d´j` fort longtemps. e e e eaJ’aimerais t´moigner ici de l’affection et du respect que j’´prouve pour toutes les personnes que e ej’ai eu l’occasion de croiser durant ces ann´es ` l’IRIT. Que ce soit Lo¨ Barthe et ses s´minaires e a ıc etenus ` bout de bras (que j’ai particuli`rement appr´ci´s), Patrice Torguet et Roger Pujado a e e e 3
  • pour leur accueil toujours chaleureux ` chacune de mes questions saugrenues ou encore tous les a´tudiants en DEA (et maintenant master) et en th`se. Je garderai longtemps un souvenir ´mue e edu mail que Ga¨l nous a envoy´ en rentrant d’un pot ` 2h du matin, ou des moments pass´s en e e a ecompagnie d’Antoine.Je remercie enfin mon entourage pour leur pr´sence et toutes leurs qualit´s que je ne saurai e etoutes ´num´rer. Mention sp´ciale ` Elodie pour sa relecture de manuscrit pas du tout au der- e e e anier moment (je me demanderai longtemps comment tu as fait pour faire un travail pareil en sipeu de temps). Je souhaite ` Romain que sa fin de doctorat soit aussi agr´able que la mienne et a eau final trois docteurs pour trois enfants, merci beaucoup ` nos parents de nous avoir support´s a edans nos ´tudes. eJe profite ´galement de ces lignes pour adresser un grand merci ` la joyeuse troupe que nous e aavons constitu´e ces derni`res ann´es, que les noms de Bibinne, Gerd, Censhi, D´zou, Ecknouille e e e eet autres Sysy et Baba nous accompagnent encore de longues ann´es. eEt enfin, last but definitively not least, j’adresse un ´norme merci du fond de mon coeur ` Lætitia. e aMe supporter ` tous les sens du terme est d´j` un exploit en soi, mais ce que tu fais tous les a eajours avec moi et pour moi, ainsi que tout ce que nous construisons ensemble me donne uneenvie folle de me d´passer pour vous. Je termine ce paragraphe avec un petit mot pour Emma, equand tu liras ce texte, passe donc faire un cˆlin ` ton p`re. a a e 4
  • Table des mati`res eTable des figures 9Glossaire 13Introduction 17 1 Objectifs de l’´tude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 21 2 Cadre de l’´tude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 22 3 Structure du rapport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.1 Etat de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.2 Placement automatique d’objets . . . . . . . . . . . . . . . . . . . . . . . 24 3.3 G´n´ration automatique d’ext´rieur de bˆtiment . . . . . . . . . . . . . . e e e a 25 3.4 Annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Chapitre 1 Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e 29 1.1 Zone urbaine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.2 R´seau routier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 30 1.2.1 Pr´sentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 30 1.2.2 M´thodes issues de l’analyse d’image . . . . . . . . . . . . . . . . . . . . . e 32 1.2.3 M´thode quasi-s´mantique . . . . . . . . . . . . . . . . . . . . . . . . . . . e e 34 1.2.4 G´n´ration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e e 34 1.2.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 1.3 Blocs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 1.4 Parcelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 1.4.1 Pr´sentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 43 1.4.2 G´n´ration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e e 43 1.4.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 1.5 Ext´rieurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 47 1.5.1 M´thodes non automatiques . . . . . . . . . . . . . . . . . . . . . . . . . . e 47 1.5.2 M´thodes automatiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 49 5
  • Table des mati`res e 1.5.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 1.6 Plan de bˆtiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 58 1.6.1 Alg`bre de Manhattan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 58 1.6.2 EAAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 1.6.3 ARCHIPLAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 1.6.4 HM2PH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 1.7 Int´rieurs meubl´s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e e 61 1.7.1 Approches manuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 1.7.2 Approches semi-automatiques . . . . . . . . . . . . . . . . . . . . . . . . . 62 1.7.3 Approches automatiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 1.8 Conclusion et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 1.8.1 Niveaux de d´tail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 75 1.8.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 1.8.3 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Chapitre 2 Placement automatique d’objets 77 2.1 M´taheuristiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 82 2.1.1 Panorama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 2.1.2 Diff´rents types de m´taheuristiques . . . . . . . . . . . . . . . . . . . . . e e 86 2.1.3 Analyse des m´taheuristiques . . . . . . . . . . . . . . . . . . . . . . . . . e 91 2.2 Mise en œuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 2.2.1 Op´rateurs de Minkowski pour les contraintes g´om´triques . . . . . . . . e e e 96 2.2.2 Domaines et objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 2.2.3 Contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 2.3 Limitations actuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 2.3.1 Limitation ` la convexit´ . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 a e 2.3.2 Du placement al´atoire dans un polygone . . . . . . . . . . . . . . . . . . 105 e 2.3.3 Ni 2D, ni 3D : 2D et demi . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 2.4 R´sultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 e 2.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109Chapitre 3 G´n´ration de fa¸ades e e c 113 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 3.2 Gabarits de Fa¸ades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 c 3.2.1 Grammaire de murs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 3.2.2 Mise en œuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 3.3 Gabarits de toits et de fondations . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 6
  • 3.3.1 Gabarits de fondations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 3.3.2 Gabarits de toits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 3.4 Resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 3.4.1 Format de fichier et mode op´ratoire . . . . . . . . . . . . . . . . . . . . . 131 e 3.4.2 Performance et complexit´ . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 e 3.4.3 Exemple de gabarit de fa¸ades . . . . . . . . . . . . . . . . . . . . . . . . 134 c 3.5 Discussions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 3.6 Conclusions et travaux futurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138Conclusions et perspectives 141Annexes 147Annexe A Oktal Synthetic Environment 147 A.1 Identit´ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 e A.2 Comp´tences g´n´rales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 e e e A.3 Les clients d’OktalSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148Annexe B Approche CSP 151 B.1 D´finition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 e B.2 R´solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 e B.3 Filtrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 B.4 Types de CSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 B.4.1 CSP num´riques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 e B.4.2 CSP hi´rarchiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 e B.4.3 CSP dynamiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 B.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153Annexe C L-System 155 C.1 Origine (sic) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 C.2 Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 C.3 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156Annexe D Mod´lisation d´clarative e e 159 D.1 Pr´sentation g´n´rale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 e e e D.2 Les trois phases de la mod´lisation d´clarative . . . . . . . . . . . . . . . . . . . . 162 e e D.2.1 La phase de description . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 D.2.2 La phase de g´n´ration e e . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 D.2.3 La phase de visualisation . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 7
  • Table des mati`res eAnnexe E Approches manuelles 167Bibliographie 171 8
  • Table des figures1 Les trois phases de la mod´lisation d´clarative. . . . . . . . . . . . . . . . . . . . e e 192 Visualisation vectorielle, visible et infrarouge d’une partie de l’a´roport de Blagnac 20 e3 D´composition hi´rarchique de la g´n´ration d’une ville . . . . . . . . . . . . . . e e e e 244 Exemple de r´sultats obtenus avec notre outil de g´n´ration de fa¸ades de bˆtiments 26 e e e c a1.1 D´tail du centre ville de Canberra (Australie) . . . . . . . . . . . . . . . . . . . . e 311.2 Diff´rents types de tron¸ons d’un r´seau routier dans VUEMS [Don04] . . . . . . e c e 351.3 Un r´seau routier g´n´r´ ` partir de donn´es en entr´e [PM01] . . . . . . . . . . e e eea e e 371.4 Exemple de sch´mas urbains [Li`96], de gauche ` droite : (a) concentrique, (b) e e a radial, (c) ´chiquier, (d) diamant. . . . . . . . . . . . . . . . . . . . . . . . . . . . e 391.5 Diff´rentes ´tapes successives de g´n´ration de g´om´trie complexe ` base de e e e e e e a graphtales [MBST01] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401.6 G´n´ration d’une zone urbaine ` partir d’un L-System et de r`gles de contraintes e e a e environnementales et topographiques [MBST01] . . . . . . . . . . . . . . . . . . . 411.7 De gauche ` droite : routes, blocs et parcelles [PM01] . . . . . . . . . . . . . . . . a 431.8 Exemples de parcellisation de blocs [Per06] . . . . . . . . . . . . . . . . . . . . . 451.9 Exemple d’espace de solution r´duit ` cause de la discretisation de l’espace [Li`96] 46 e a e1.10 Exemple de r´alisations du projet LaHave [RMS96] . . . . . . . . . . . . . . . . . e 481.11 Exemple de chateau-fort g´n´r´ avec le Castle Construction Kit [GBHF05] . . . . e ee 491.12 Diff´rentes ´tapes de d´rivation [PM01] . . . . . . . . . . . . . . . . . . . . . . . e e e 501.13 Reconstruction de l’Empire State Building (New York City) [PM01] . . . . . . . 511.14 Reconstruction d’un bˆtiment existant (` gauche) ` Rennes. Le mod`le virtuel, a a a e utilisant les FL-system est montr´ ` droite[Per06] . . . . . . . . . . . . . . . . . . ea 52 9
  • Table des figures1.15 Un autre bˆtiment de Rennes. Ce mod`le utilise le mˆme FL-system que la figure a e e pr´c´dente, seuls les ´l´ments terminaux et les textures ont ´t´ modifi´s.[Per06] . e e ee ee e 521.16 Cette image montre plusieurs bˆtiments g´n´r´s ` l’aide des split grammar [WWSR03] 53 a e ee a1.17 De gauche ` droite : (a) donn´e en entr´e (image rectifi´e d’une fa¸ade), (b) a e e e c fa¸ade automatiquement subdivis´e et encod´e comme un arbre de forme, (c) c e e mod`le polygonal et enfin (d) rendu du r´sultat final incluant ombres et r´flections e e e rendues possibles par les informations s´mantiques [MZWG07] . . . . . . . . . . e 531.18 Incoh´rences g´om´triques r´solues dans [MWS+ 06] . . . . . . . . . . . . . . . . e e e e 551.19 Exemples de bˆtiments g´n´r´s par BatiMan [Cha98] a e ee . . . . . . . . . . . . . . . 561.20 Exemple de bˆtiment g´n´r´s par AGETIM [LLGC+ 05] . . . . . . . . . . . . . . a e ee 561.21 3 solutions au probl`me de Maculet [Mac91] . . . . . . . . . . . . . . . . . . . . . e 581.22 Exemples de r´sultats obtenus par EAAS [Cha95] . . . . . . . . . . . . . . . . . . e 591.23 Deux solutions g´om´triques diff´rentes avec la mˆme topologie [MY01] . . . . . e e e e 601.24 Sc`ne comprenant environ 500 objets g´n´r´e en 25min grˆce ` CAPS (par pla- e e ee a a cement et ajustements interactifs) . . . . . . . . . . . . . . . . . . . . . . . . . . 631.25 Exemples de r´sultats de WordsEyes ` partir de descriptions textuelles`. . . . . . e a e 641.26 Oranos dans DEM2 ONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671.27 Un exemple de sc`ne g´n´r´e par Manhattan [LRG03] . . . . . . . . . . . . . . . e e ee 691.28 Probl`me de placement bidimensionnel dans un environnement fig´ [LR03] . . . . e e 711.29 Image reconstruite ` partir des r´sultats obtenus avec le solveur DEMONS-GA a e [SRGL03] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 732.1 Exemples de vall´es et plateaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 862.2 Importance du choix de la caract´ristique tabou. . . . . . . . . . . . . . . . . . . e 882.3 Somme de Minkowski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982.4 Soustraction de Minkowski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992.5 Occupation au sol : rectangle englobant (gauche) et enveloppe convexe (droite) . 1002.6 Choix des contraintes ` satisfaire lors de l’ajout d’un nouvel objet dans la sc`ne. a e 1012.7 Contraintes d’orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042.8 Probl`mes faciles et difficiles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 e2.9 Distances minimale et maximale entre le point de r´f´rence et l’enveloppe dans le ee cas d’un rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 10
  • 2.10 Premi`re sc`ne r´sultat e e e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1082.11 Seconde sc`ne r´sultat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 e e2.12 Interface de DEMONS LE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103.1 De haut en bas : donn´es d’entr´e (embase de bˆtiment), premi`re ´tape de e e a e e d´rivation, pr´paration des extrusions et bˆtiment final. . . . . . . . . . . . . . . 113 e e a3.2 D´tails du bˆtiment d´crit dans la Figure 3.1. . . . . . . . . . . . . . . . . . . . . 116 e a e3.3 Diagramme de classes de notre syst`me de g´n´ration de fa¸ades . . . . . . . . . 116 e e e c3.4 Un exemple de suppression des faces de fond d’un pan de mur . . . . . . . . . . . 1193.5 Exemple de mur ` bordures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 a3.6 Mur extrud´ avec une profondeur n´gative. . . . . . . . . . . . . . . . . . . . . . 121 e e3.7 Un exemple de mur extrud´ r´f´ren¸ant un objet tridimensionnel (les piliers au e ee c premier plan). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1213.8 Un exemple de grille de mur horizontale. . . . . . . . . . . . . . . . . . . . . . . . 1223.9 Un exemple de grille de mur bidirectionelle. . . . . . . . . . . . . . . . . . . . . . 1223.10 Un exemple de liste de mur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1233.11 R`gle de redimensionnement pour une liste de murs verticales. . . . . . . . . . . 124 e3.12 Les trois diff´rents types de gabarits de fondations. De gauche ` droite, z min, z e a max et extrud´. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 e3.13 Axe m´dian (au centre) et squelette droit (` droite) d’un polygone simple . . . . 127 e a3.14 Vue de profil d’un toit ` deux pentes standard. . . . . . . . . . . . . . . . . . . . 128 a3.15 Vue de profil d’un toit ` deux pentes mansard´. . . . . . . . . . . . . . . . . . . . 128 a e3.16 Vue de profil d’un toit ` deux pentes de type grange. . . . . . . . . . . . . . . . . 128 a3.17 Exemples de toits g´n´r´s par diff´rents gabarits de toits ` deux pentes. De gauche e ee e a ` droite : deux pentes standard, mansard´, grange. . . . . . . . . . . . . . . . . . 129 a e3.18 Vue de profil d’un toit ` quatre pentes de type porche. . . . . . . . . . . . . . . . 130 a3.19 Vue de profil d’un toit ` quatre pentes de type alsacien. . . . . . . . . . . . . . . 130 a3.20 Exemples de toits pour divers gabarits de toits ` quatre pentes. De gauche ` a a droite : quatre pentes standard, mansard´, pagode, porche, alsacien. . . . . . . . 131 e3.21 Trois bˆtiments g´n´r´s ` partir de la mˆme embase. . . . . . . . . . . . . . . . . 132 a e ee a e ´3.22 Etat actuel de notre ´diteur de gabarit de bˆtiments. . . . . . . . . . . . . . . . . 133 e a 11
  • Table des figures3.23 Zone urbaine constitu´e de 17 362 bˆtiments, la g´n´ration s’effectue en 7mn 55 e a e e sec pour 920 182 faces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1343.24 Exemple de bˆtiment g´n´r´ ` partir du gabarit de fa¸ades d´crit en 3.4.3. . . . . 135 a e eea c e3.25 Exemple de grammaire utilis´e pour g´n´rer le bˆtiment pr´sent´ dans la Figure e e e a e e 3.24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1363.26 D´tails des diff´rents pas de d´rivations n´cessaires ` la cr´ation du bˆtiment e e e e a e a pr´sent´s dans la Figure 3.25 . e e . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1371 Cette image montre l’espace perdu ` cause des ouvertures pour le placement des a meubles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1422 Exemple des donn´es multim´dia disponibles pour la place du Capitole ` Toulouse e e a au sein du logiciel Google Earth . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1433 Exemple de zones urbaines g´n´r´ en couplant notre syst`me de g´n´ration de e ee e e e bˆtiments avec le prototype de notre m´thode de g´n´ration de r´seau routier. . 144 a e e e e4 Exemple de partition d’un ´tage de bˆtiment en pi`ces par notre m´thode. . . . . 145 e a e eC.1 Plante g´n´r´e par un L-System simple . . . . . . . . . . . . . . . . . . . . . . . . 158 e eeD.1 La mod´lisation d´clarative : un domaine pluri-disciplinaire. Sch´ma initial par e e e Champciaux [Cha98], ´tendu par Gaildrat [Gai03] . . . . . . . . . . . . . . . . . 162 eD.2 Les trois phases de la mod´lisation d´clarative [CDMM97]. . . . . . . . . . . . . 163 e eD.3 Interaction multimodale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164E.1 Plan et vue crystal view d’une maison cr´e par Architecte 3D (Punch Software) e 167E.2 Plan et fa¸ade d’une maison cr´e par Architecte et Construction 3D (Anuman c e Interactive) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168E.3 Exemple d’interface graphique, 3D Architecte Expert CAD 2008 (´dit´ par Micro e e Application) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168E.4 Exemple de rendu final, 3D Architecte Expert CAD 2008 (´dit´ par Micro Ap- e e plication) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 12
  • GlossaireSiglesCAO Conception assist´e par ordinateur eCAPS Constraint-based Automatic Placement System : Syst`me de placement automatique e bas´ sur les contraintes eCSP Constraint Satisfaction Problem : Probl`me de satisfaction de contraintes eDEM2 ONS DEclarative Multimodal MOdeliNg SystemDHNCSP Dynamic Hierarchic Numeric CSPEAAS Environnement d’aide ` l’am´nagement spatial a eMGII Mod´lisation g´om´trique et infographie interactive e e eIA Intelligence artificielleIHM Interaction Homme MachineIRIN Institut de recherche en informatique de NantesIRIT Institut de recherche en informatique de ToulouseRO Recherche op´rationnelle eRV R´alit´ virtuelle e eSIRV Synth`se d’images et r´alit´ virtuelle e e eMod´lisation d´clarative e eCSP L’approche probl`me de satisfaction de contraintes (CSP) [Mac77] est une famille de tech- e niques constructives g´n´rales. Cette approche est constructive : la solution est construite e e 13
  • Glossaire graduellement. Comme ces algorithmes sont bas´s sur un processus d’´num´ration, ils sont e e e d´terministes et exhaustifs donc complets. Un CSP est un triplet P = (V, D, C) d´fini par : e e – un ensemble de variables V = X1 , ..., Xn . – un ensemble de domaines D = D1 , ..., Dn , o` Di un ensemble de valeurs, est le domaine u associ´ ` la variable Xi . ea – un ensemble de contraintes C = C1 , ..., Cm , o` Ci est une contrainte d´finie par une u e relation sur un sous-ensemble des variables.D´ictique El´ment de linguistique qui sert ` montrer, ` d´signer un objet singulier d´termin´ e e a a e e e dans la situation.Isoth´tique Parall`le ou perpendiculaire aux axes du syst`me de coordonn´es cart´siennes de e e e e e notre monde virtuel.Mod´lisation d´clarative La mod´lisation d´clarative est un cadre conceptuel pour la concep- e e e e tion assist´e de sc`nes ou de formes virtuelles. Son but est de soulager l’utilisateur lors e e de la tˆche de conception en rendant possible la description d’un mod`le par le biais de a e commandes d’un haut niveau d’abstraction, le lib´rant ainsi du mod`le g´om´trique sous- e e e e jacent. Trois phases principales peuvent ˆtre distingu´es lors de l’utilisation d’un modeleur e e d´claratif : e 1. la phase de description durant laquelle l’utilisateur d´crit la sc`ne en ´non¸ant un e e e c ensemble de commandes de haut niveau, appel´es propri´t´s dans la plupart des e ee modeleurs d´claratifs ; e 2. la phase de g´n´ration qui calcule les solutions correspondantes [LDG05] ; e e 3. la phase de prise de connaissances qui permet ` l’utilisateur de visualiser et de choisir a une solution particuli`re dans le cas de l’exploration d’un domaine de recherche. e Ces trois phases sont parcourues successivement au sein d’un processus it´ratif en spirale, e i.e. l’utilisateur peut affiner sa description en fonction des solutions obtenues.Multimodal Combinant souris, clavier, geste, reconnaissance parole, casque de R´alit´ Vir- e e tuelle pour construire un seul ´v´nement multimodal ` partir de divers ´v´nements mono- e e a e e modaux.NP complet Non d´terministe polynˆmial complet e oNP-difficile Probl`me au moins aussi complexe que n’importe lequel des probl`mes NP. e e 14
  • M´taheuristiques eBacktrack Retour arri`re, m´thodes permettant de revenir en arri`re afin de corriger la variable e e e qui bloque la recherche de la solutionConfiguration compl`te Affectation de toutes les variables (les contraintes ne sont, a priori, e pas satisfaites).Heuristique M´thode con¸ue pour un probl`me d’optimisation donn´, qui produit une solution e c e e non n´cessairement optimale lorsqu’on lui fournit une instance d’un probl`me. e eM´canisme d’exploration Proc´dure qui pr´cise comment passer d’une configuration A ` e e e a une autre configuration A’ appartenant au voisinage de A.Mouvement Op´ration ´l´mentaire permettant de passer d’une solution A ` une solution A’ e ee a voisine de A.Optimisation combinatoire Consiste ` trouver le meilleur choix entre un nombre fini de a choix. Autrement dit, minimiser une fonction, avec contraintes, sur un ensemble fini.Plateau Ensemble de solutions de mˆme coˆt, connexes par voisinage. e uSolution Affectation de toutes les variables (les contraintes ne sont, a priori, pas satisfaites).Solution optimale Solution optimisant la valeur de la fonction de coˆt. uVoisinage de A Ensemble des solutions A’ accessibles ` partir de A en r´alisant un seul mou- a e vement.G´n´ration urbaine e eSIG Un syst`me d’information g´ographique (SIG) permet de g´rer des donn´es alphanum´ri- e e e e e ques spatialement localis´es, ainsi que les donn´es graphiques permettant d’afficher ou e e d’imprimer plans et cartes. Ses usages couvrent les activit´s g´omatiques de traitement et e e diffusion de l’information g´ographique. e Le rˆle du syst`me d’information est de proposer une repr´sentation plus ou moins r´aliste o e e e de l’environnement spatial en se basant sur des primitives graphiques telles que des points, ` des vecteurs (arcs), des polygones ou des maillages (raster). A ces primitives sont associ´es e des informations qualitatives telles que la nature (route, voie ferr´e, forˆt, etc.) ou toute e e autre information contextuelle. 15
  • GlossaireL’information g´ographique peut ˆtre d´finie comme l’ensemble de la description d’un e e eobjet et de sa position g´ographique ` la surface de la Terre. e aEn France, dans son acceptation courante, le terme fait r´f´rence aux outils logiciels. eeCependant, le concept englobe l’ensemble constitu´ par les logiciels, les donn´es, le mat´riel e e eet les savoir-faire li´s ` l’utilisation de ces derniers. e a 16
  • IntroductionCette th`se s’inscrit dans le cadre d’une collaboration CIFRE entre le groupe de recherche eVORTEX (Visual Objects : from Reality To EXpression) de l’IRIT (Institut de Recherche enInformatique de Toulouse) d’une part, et la soci´t´ Oktal Synthetic Environment (c.f. Annexe A) eed’autre part.Le groupe de recherche VORTEX1 aborde par ses diff´rents travaux l’ensemble des probl´mati- e eques des objets visuels, qu’il s’agisse d’images, de vid´os, de sc`nes 2D et 3D. Ces probl´matiques e e eenglobent les m´thodes, les mod`les et les outils utilis´s pour traiter les objets visuels, r´els, e e e evirtuels et mixtes, en allant jusqu’` les doter, par cr´ation ou par enrichissement, d’´l´ments a e eepermettant de les utiliser. Tout utilisateur, qu’il soit scientifique, ing´nieur, artiste, formateur eou m´decin peut alors s’exprimer, ind´pendamment de son niveau de maˆ e e ıtrise technique.Au sein du groupe de recherche VORTEX, la composante Mod´lisation, encadr´e par V´ronique e e eGaildrat, ´tudie les outils de mod´lisation d’environnements virtuels, et plus pr´cis´ment les e e e eoutils de mod´lisation d´clarative (cf. Figure 1). Ces travaux sur la mod´lisation d´clarative e e e es’int`grent dans une chaˆ compl`te de production d’images de synth`se, en apportant une aide e ıne e eau concepteur dans la cr´ation d’objets et de sc`nes. Au final, le processus aboutit ` la cr´ation e e a ed’un environnement virtuel dans lequel le concepteur-utilisateur pourra ensuite ´voluer. Le pro- ejet DEM2 ONS (DEclarative Multimodal MOdeliNg System) regroupe les travaux de rechercheautour de la mod´lisation d´clarative. Ces travaux ont conduit au d´veloppement de plusieurs e e esyst`mes de g´n´ration qui ont permis d’´valuer la pertinence de diff´rentes approches pour le e e e e eplacement contraint d’objets dans une sc`ne tridimensionnelle. e 1 Cr´´ en 2007 par la fusion des ´quipes SIRV (Synth`se d’Images et R´alit´ Virtuelle) et VPCAB (VISION ee e e e ePAR CALCULATEUR ANDRE BRUEL). 17
  • IntroductionContrairement aux approches classiques (ou imp´ratives) qui n´cessitent des donn´es num´riques e e e een entr´e, la mod´lisation d´clarative offre la possibilit´ de d´crire une entit´ ou une sc`ne ` e e e e e e e amod´liser en exprimant une simple image mentale de la sc`ne (cette image peut ˆtre floue). e e eLe concepteur n’a qu’` ´noncer les attributs g´om´triques, photom´triques et physiques de a e e e el’environnement ainsi que les relations entre ces ´l´ments dans un langage quasi-naturel. Ces eepropri´t´s permettent, ` l’aide d’un ordre unique, de r´aliser une op´ration qui aurait demand´ ee a e e eun nombre important d’actions ´l´mentaires avec un modeleur g´om´trique imp´ratif classique. ee e e eCes propri´t´s sont ensuite interpr´t´es en contraintes r´solues par le syst`me de g´n´ration ee ee e e e epour fournir un mod`le solution (cf Figure 1). Le but de la mod´lisation d´clarative n’est pas e e ede se substituer ` la mod´lisation g´om´trique imp´rative, mais plutˆt de l’enrichir en four- a e e e e onissant des m´canismes permettant de faciliter la g´n´ration de sc`nes r´alistes. Pour cela, la e e e e emod´lisation d´clarative cherche ` tirer parti de toutes les informations s´mantiques sur l’en- e e a evironnement et les objets ` placer, de fa¸on ` automatiser le mieux possible ce placement, en a c a´vitant au concepteur des tˆches r´p´titives et fastidieuses. En plus de permettre un maniemente a e eaccessible ` tous, le recours ` la mod´lisation d´clarative engendre donc un gain de temps certain. a a e eLe second initiateur de cette th`se est la soci´t´ Oktal SE. Cette soci´t´ a d´velopp´ une gamme e ee ee e ed’outils de visualisation capables d’effectuer des rendus d’une mˆme sc`ne dans plusieurs do- e emaines spectraux : infrarouge (bande I, II et III), radar, BNL (bas niveau de lumi`re), acoustique eet bien sˆr visible. Pour g´n´rer ces sc`nes, Oktal SE utilise un modeleur de terrain multi-senseur u e e eappel´ AGETIM (Atelier de GEn´ration de TerraIn Multi senseur). Le logiciel AGETIM per- e emet de g´n´rer un environnement virtuel 3D ` des fins de simulation ou de mod´lisation ` un e e a e aniveau de r´alisme fix´ par l’utilisateur. Ce logiciel fournit des moyens d’int´gration de donn´es e e e ecartographiques existantes, de correction ou d’enrichissement de ces donn´es, des processus de eg´n´ration automatique d’environnement virtuel 3D et d’exploitation simple de cet environne- e ement. Afin d’offrir une plus grande simplicit´ d’utilisation et une ergonomie adapt´e au traite- e ement de l’information cartographique h´t´rog`ne, l’outil AGETIM s’appuie sur un standard en ee emati`re de Syst`mes d’Information G´ographique (SIG), le logiciel GEOCONCEPT. e e eLes bases de donn´es 3D g´n´r´es en utilisant AGETIM peuvent ˆtre tr`s ´tendues : la plus vaste e e ee e e ecouvre actuellement le quart du territoire fran¸ais. Elles peuvent ´galement ˆtre tr`s d´taill´es, c e e e e een incluant par exemple les murs int´rieurs et le mobilier des bˆtiments. La Figure 2 pr´sente e a etrois repr´sentations des alentours de l’a´roport de Toulouse-Blagnac : repr´sentation vectorielle e e e 18
  • Figure 1. Les trois phases de la mod´lisation d´clarative. e e 19
  • Introduction Figure 2. Visualisation vectorielle, visible et infrarouge d’une partie de l’a´roport de Blagnac equi donne un aper¸u de la complexit´ g´om´trique de la sc`ne, repr´sentation dans le domaine c e e e e evisible et enfin une repr´sentation en infrarouge. eComme on peut le constater sur la Figure 2, la mod´lisation des alentours de l’a´roport apporte e eune r´elle plus value afin d’observer l’objet de l’´tude dans son environnement naturel. Ne pas e eint´grer l’environnement imm´diat au sujet ´tudi´, fait courir le risque aux utilisateurs de ne pas e e e eprendre en compte les influences de l’environnement proche dans leur analyse et ce, quelque soitla qualit´ de la mod´lisation du sujet principal. Par exemple, si l’on se restreint ` une visualisation e e adans le domaine visible, la pr´sence de l’environnement permet de se rendre r´ellement compte e edes notions d’´chelles, de visibilit´ ou de distance. La mod´lisation du voisinage est encore e e eplus critique dans le cadre d’une visualisation dans les domaines infrarouge, ´lectromagn´tiques e eou BNL (bas niveau de lumi`re, i.e. vision nocturne). Une visualisation ´lectromagn´tique qui e e ene prendrait pas en compte des syst`mes radars situ´s ` l’´cart des bˆtiments principaux de e e a e al’a´roport perdrait en r´alisme. e e 20
  • 1 Objectifs de l’´tude eCette th`se a pour but d’´tudier la possibilit´ d’enrichir AGETIM avec des modules de g´n´ration e e e e eautomatique de zones urbaines.En effet, lors de l’expression d’un besoin en terme de mod´lisation, il n’est pas rare que le eclient soit sensible au fait qu’en plus de la mod´lisation fine (et exacte) de son sujet d’int´rˆt, e eeses abords soient aussi mod´lis´s. Par exemple, si la mairie de Toulouse lance un appel d’offre e econcernant la maquette 3D du Capitole (qui regroupe l’hˆtel de ville et l’op´ra de Toulouse), un o eprestataire capable de fournir non seulement ce bˆtiment, mais aussi un trajet pi´tonnier autour a edu centre d’int´rˆt avec des bˆtiments cr´dibles, b´n´ficie de solides atouts pour emporter le ee a e e emarch´. Cependant, mˆme si le voisinage du centre d’int´rˆt n’a pas ` ˆtre finement mod´lis´, e e ee ae e eil reste que la surface et le volume occup´s par le voisinage sont g´n´ralement bien plus impor- e e etants que ceux du centre d’int´rˆt. Il est donc n´cessaire d’ˆtre capable de g´n´rer rapidement ee e e e eun ensemble de bˆtiments g´osp´cifiques 2 , reprenant globalement les dimensions des bˆtiments a e e ar´els, leurs aspects et d´corations (balcons, renfoncements, etc.). e eLa mod´lisation de vastes bases de donn´es 3D pr´sente aussi un besoin particulier en terme de e e emod´lisation de zone urbaine. Une des r´alisations d’AGETIM a notamment consist´ ` mod´liser e e ea eun quart du territoire fran¸ais ` des fins de simulation a´riennes. Une telle surface contient c a eun grand nombre de zones urbaines, allant du hameau ` la capitale r´gionale. Les outils de a emod´lisation actuels (dont fait partie AGETIM) sont capables de traiter les bases de donn´es car- e etographiques afin de g´n´rer des maquettes virtuelles repr´sentant les ensembles g´ographiques e e e eexistants :– reliefs,– cours d’eau et lacs,– contours maritimes.Les outils plus avanc´s sont capables de repr´senter les forˆts ainsi que les r´seaux routiers. Selon e e e ela finesse des bases de donn´es cartographiques utilis´es, les informations disponibles concernant e eles zones urbaines peuvent ´norm´ment varier. Voici un aper¸u des informations disponibles, e e cclass´es de la plus vague ` la plus pr´cise : e a e– seules les limites de la zone urbaine sont disponibles, sous forme d’un polygone,– ses grands axes de circulation sont pr´sents (ou esquiss´s), e e 2 G´osp´cifique : un bˆtiment g´osp´cifique est la mod´lisation (potentiellement approch´e) d’un bˆtiment r´´l. e e a e e e e a ee 21
  • Introduction– des axes interm´diaires sont disponibles, et on observe un classement par rˆle des parties de e o cette ville (habitations, bureaux, industrie, centre commercial, espace vert, lac, etc.),– la totalit´ du r´seau routier est disponible, avec ´galement les plans cadastraux (la limitation e e e des parcelles),– enfin, on peut disposer dans le cas le plus pr´cis, des contours ext´rieurs de tous les bˆtiments, e e a voire de leurs hauteurs.Cette liste montre bien la difficult´ inh´rente ` l’int´gration d’un outil de g´n´ration de zone e e a e e eurbaine au sein d’un modeleur de terrain. Cet outil doit ˆtre capable de prendre en compte des edonn´es parcellaires, potentiellement erron´es. En plus des capacit´s d’analyse et de rectification e e ede la donn´e source, un outil de g´n´ration de zones urbaines doit ˆtre capable de cr´er des e e e e einformations cr´dibles. Ces informations ainsi cr´´es doivent ˆtre g´otypiques3 afin de ne pas e ee e eperturber l’utilisateur parcourant la base de donn´es. eLe premier objectif de cette th`se est de r´aliser une ´tude des solutions existantes pour r´pondre e e e ea` ces deux besoins :– ˆtre capable de g´n´rer des zones urbaines ` partir d’informations g´osp´cifiques disponibles, e e e a e e– ˆtre capable de cr´er de la donn´e source g´otypique. e e e eDans un second temps, nous avons d´cid´ de d´velopper nos axes de travail en fonction de e e el’int´rˆt potentiel d’un nouveau travail de recherche par rapport aux m´thodes existantes ainsi ee equ’aux besoins sp´cifiques d’AGETIM. e2 Cadre de l’´tude eLes progr`s r´cents des applications de r´alit´ virtuelle, des jeux vid´o ainsi que des simulations e e e e ed’expansion urbaine ont augment´ la pertinence de l’utilisation de maquettes virtuelles pour les e´tudes d’urbanisme. Par exemple, la croissance des cit´s entraˆ des probl`mes ´mergents quie e ıne e en´cessitent la mise en place d’outils de pr´vision. Des mod`les peuvent permettre de prendre en e e ecompte l’influence des radiations ´lectromagn´tiques, la pr´diction de la propagation du bruit par e e edes mod`les de pollution sonore ou encore l’anticipation des r´seaux de transports n´cessaires. e e ePar ailleurs, la prochaine g´n´ration de Syst`mes Globaux de Navigation par Satellite (SGNS) e e etirera avantage de l’utilisation de mod`les de villes tridimensionnels. Ainsi, ˆtre capable de e e 3 G´otypique : sp´cifique ` une zone g´ographique et ` une ´poque donn´es e e a e a e e 22
  • g´n´rer rapidement des mod`les de villes cr´dibles permettra d’aider l’utilisateur ` effectuer ses e e e e a´tudes de fa¸on plus rapide et plus efficace.e cLa mod´lisation d´taill´e de zones urbaines repr´sente un d´fi en informatique graphique. Une e e e e eville r´elle r´pond ` des r`gles de construction (implicites ou explicites) et refl`te souvent de e e a e emultiples influences historiques, culturelles et sociales ` travers le temps. Atteindre une pr´cision a esuffisante pour qu’une ville virtuelle soit cr´dible pour un utilisateur la visitant au niveau du esol, demande une mod´lisation extrˆmement d´taill´e qui exige bien trop de temps et d’efforts e e e ede la part du concepteur. La capacit´ ` g´n´rer rapidement des maquettes virtuelles cr´dibles ea e e epermet de r´pondre ` ce besoin et constitue donc un sujet d’avenir qui doit se d´velopper car e a eles r´sultats actuels ne satisfont pas les besoins pr´c´demment d´finis. e e e e3 Structure du rapportCe m´moire s’articule en trois parties, ´tat de l’art, placement automatique d’objets et enfin e eg´n´ration de automatique de zones urbaines. e e3.1 Etat de l’artLa premi`re partie de ce m´moire propose un ´tat de l’art des m´thodes existantes permettant e e e ela g´n´ration, automatique ou non, de zones urbaines. e eUne zone urbaine repr´sente, la plupart du temps, un ensemble de donn´es trop important e epour ˆtre appr´hend´, mod´lis´ ou mˆme visualis´ directement. Utiliser une approche multi- e e e e e e er´solution, ` base de structures logiques imbriqu´es, permet de d´composer directement cet e a e eensemble en niveaux de d´tail successifs, afin de permettre un traitement plus cibl´. Il s’agit e eici de niveaux de d´tail logiques et non pas uniquement de niveaux de d´tail comme objets e ede substitution lors d’une visualisation tridimensionelle. La pertinence de l’approche multi-r´solution, nous am`ne ` pr´senter un ´tat de l’art des diff´rentes techniques mises en œuvre e e a e e epour g´n´rer automatiquement une zone ur baine, conform´ment au d´coupage en niveau de e e e ed´tail. eLa Figure 3 pr´sente un d´coupage hi´rarchique de la tˆche de g´n´ration d’une ville en sept e e e a e e´tapes. Inspir´ par les travaux de Parish et M¨eller dans [PM01], ce d´coupage est utilis´ commee e u e eplan de cet ´tat de l’art pour exposer les diff´rentes m´thodes existantes. Certains travaux e e ecouvrent plusieurs ´tapes, ils seront donc cit´s plusieurs fois. En fonction de la complexit´ de e e e 23
  • Introduction Figure 3. D´composition hi´rarchique de la g´n´ration d’une ville e e e echaque ´tape, nous proposons une br`ve pr´sentation du formalisme et des donn´es trait´es ainsi e e e e equ’une discussion sur les m´thodes de g´n´ration pr´sent´es. Une ´tape peut ˆtre assimil´e ` un e e e e e e e e aniveau de d´tail lors d’une repr´sentation multi-´chelle de la ville. e e e3.2 Placement automatique d’objetsNous avons ensuite ´tudi´ le probl`me de placement d’objets, qui correspond ` la derni`re des e e e a e´tapes pr´sent´es ` la Figure 3. Cette ´tape prend la suite de travaux d´j` effectu´s au sein dee e e a e ea enotre ´quipe. Nous pr´sentons dans cette partie une ´tude de l’application de m´thodes issues de e e e ela recherche locale pour r´soudre le placement d’objets au sein d’un probl`me mod´lis´ par des e e e econtraintes. Les objets trait´s sont d´finis par l’enveloppe convexe de leur projection orthogra- e ephique au sol, et peuvent prendre une orientation quelconque. Pour pouvoir prendre en compteces deux particularit´s, nous avons eu recours aux op´rateurs de Minkowski sur les polygones e econvexes pour le calcul de la validit´ de nos contraintes. eNous pr´sentons le modeleur d´claratif DEMONS LE qui a ´t´ d´velopp´ pour ´valuer la per- e e ee e e etinence de cette approche. Ce modeleur est une variante du modeleur DEM2 ONS d´velopp´ e epr´c´demment dans notre ´quipe. Ce d´veloppement a servi de base ` l’´valuation de l’utilisa- e e e e a etion des m´taheuristiques issues de la recherche locale ainsi que des op´rateurs de Minkowski. e e 24
  • De plus, ce travail nous a permis de proposer la possibilit´ ` un utilisateur, non expert dans la eamod´lisation 3D, de g´n´rer facilement, rapidement et intuitivement des sc`nes complexes. Ceci e e e ese traduit non seulement au niveau de la sp´cification de l’interface utilisateur, mais ´galement e edans l’expression des propri´t´s entre les objets de la sc`ne. ee e3.3 G´n´ration automatique d’ext´rieur de bˆtiment e e e aLe troisi`me chapitre s’attache ` pr´senter l’outil que nous avons d´velopp´ dans le cadre de e a e e ecette th`se pour la g´n´ration automatique de bˆtiments (sans int´rieurs). Cet outil a pour but e e e a ede cr´er la maquette num´rique d’un bˆtiment, d´compos´ en fondations, fa¸ades et toits. Notre e e a e e cm´thode est bas´e sur la d´finition de gabarits de bˆtiments qui sont appliqu´s ` des descriptions e e e a e ade bˆtiments. Une description est constitu´e de l’embase tridimensionnelle, de la hauteur de toit a eet de la hauteur des murs du bˆtiment. Nous proposons plusieurs modes de g´n´ration pour a e echacune de ces composantes. La contribution la plus notable de cette partie est la g´n´ration e edes fa¸ades de bˆtiments ` partir de gabarits de fa¸ades. Les fa¸ades de bˆtiments sont cr´´es en c a a c c a eeutilisant une grammaire de murs tridimensionnelle isom´trique, bas´e sur un ensemble de r`gles. e e eCes r`gles peuvent ˆtre simples ou tr`s d´taill´es en fonction des besoins de l’utilisateur. e e e e eLa Figure 4 pr´sente un exemple de r´sultat obtenu avec notre outil de g´n´ration de fa¸ades de e e e e cbˆtiments. Nous pouvons y voir les d´tails de deux fa¸ades de bˆtiments qui entourent la place a e c adu Capitole ` Toulouse. Les textures utilis´es pour le rez-de-chauss´e correspondent aux devan- a e etures r´elles. Une fois l’arche de l’arcade mod´lis´e manuellement, toute la g´om´trie restante e e e e e(notamment les d´crochements autour de chaque fenˆtre) a ´t´ g´n´r´e de fa¸on automatique e e ee e ee cpar notre outil. Le gabarit ainsi cr´´, bien que correspondant ` un bˆtiment r´el, peut ˆtre ee a a e eappliqu´ ` une description quelconque de bˆtiment, et s’y adaptera au mieux, en faisant varier ea ale nombre d’´tages ou de fenˆtres dans les limites permises par le gabarit. e e3.4 AnnexesAfin de faciliter la lecture et la compr´hension des trois principaux chapitres de ce m´moire, e enous avons report´ en annexe un certain nombre de d´finitions et descriptions. e eL’annexe A pr´sente la soci´t´ Oktal Synthetic Environment ainsi que ses activit´s. e ee eL’annexe B propose une d´finition et un aper¸u de l’approche CSP (probl`me de satisfaction de e c econtrainte) qui est utilis´e dans certains travaux de notre ´tat de l’art (notamment la g´n´ration e e e ede plans de bˆtiments ainsi que les probl`mes d’am´nagement d’int´rieurs). a e e e 25
  • IntroductionFigure 4. Exemple de r´sultats obtenus avec notre outil de g´n´ration de fa¸ades de bˆtiments e e e c a 26
  • L’annexe C pr´sente les L-System, auxquels font appel les ´tapes de g´n´ration de r´seau urbain e e e e eet fa¸ades de bˆtiments. c aL’annexe E d´crit certains logiciels du commerce permettant de cr´er des mod`les num´riques e e e ede bˆtiments. aL’annexe D pr´sente les concepts et les d´finitions relatifs ` la mod´lisation d´clarative utilis´e e e a e e epour la g´n´ration de bˆtiments et le placement des objets dans les pi`ces. e e a e 27
  • Chapitre 1 Etat de l’art relatif ` la g´n´ration a e e d’environnements urbainsDans ce chapitre, nous utilisons le terme g´n´rique de ville pour d´signer une zone dans laquelle e e eon trouve un r´seau routier et des bˆtiments. Cette zone peut aussi bien d´finir un hameau e a equ’une m´gapole. e1.1 Zone urbaineLa g´n´ration d’une ville n´cessite au minimum de connaˆ ses limites physiques (ou g´ogra- e e e ıtre ephiques). Nous consid´rons comme niveau le plus vague d’information, la d´finition de la surface e eque couvre (ou doit recouvrir) cette ville.Cette information est g´n´ralement d´finie au sein d’un SIG (Syst`me d’Information G´o- e e e e egraphique). Il est ´galement possible de contraindre la d´finition de la zone urbaine afin de e eprendre en compte des donn´es suppl´mentaires en entr´e. Ces informations compl´mentaires e e e esont g´n´ralement donn´es sous forme de cartes : e e e– altim´triques : les routes sont g´n´ralement perpendiculaires ou parall`les aux lignes de ni- e e e e veaux ;– hydrographiques (surfaciques : mer, lac, ´tang, delta, etc. ou vectorielles : fleuve, rivi`re) : e e le r´seau routier traite diff´remment ces zones, en les ´vitant, ou en les traversant (pont ou e e e tunnel) ;– de v´g´tation : g´n´ralement les zones de v´g´tation sont contourn´es par le r´seau routier ; e e e e e e e e 29
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e– de densit´ de population : cette donn´e modifie de deux fa¸ons le r´seau routier, premi`re- e e c e e ment, le r´seau routier secondaire est affect´ (rue, r´sidence), ensuite le r´seau routier primaire e e e e pr´sente des axes ` plusieurs voies qui relient les zones ` forte densit´ de population (auto- e a a e routes, voies rapides) ;– de sch´mas de construction de r´seau routier. e eA partir des informations donn´es lors de la d´finition de la zone urbaine, les diff´rentes ´tapes e e e ede g´n´ration permettent de mod´liser la ville dans son int´gralit´. La premi`re de ces ´tapes, e e e e e e equi g´n`re le r´seau routier, est la seule ` traiter la zone urbaine dans son ensemble. Les deux e e e a´tapes suivantes, qui g´n`rent les blocs et les parcelles, r´alisent deux partitions successives dee e e ela zone urbaine ce qui permet de r´duire la complexit´ de ces tˆches. Enfin, les trois derni`res e e a e´tapes traitent des bˆtiments, de la g´n´ration des ext´rieurs (fa¸ades, fondations et toits), `e a e e e c acelle des plans de bˆtiments pour finir avec le placement de mobilier au sein des pi`ces. a e1.2 R´seau routier e1.2.1 Pr´sentation eLa forme la plus couramment rencontr´e pour repr´senter les r´seaux routiers est le graphe. Un e e egraphe valu´ permet de stocker, en plus de la g´om´trie, des informations telles que la densit´ e e e ede trafic, le nombre et la largeur des voies ou leur sens de circulation. Les algorithmes existantsen th´orie des graphes permettent d’obtenir des donn´es suppl´mentaires, comme par exemple, e e ele plus court chemin d’un point ` un autre. aMˆme s’il paraˆ illusoire de tenter de caract´riser les villes existantes selon des sch´mas pr´d´finis e ıt e e e ede trac´ de routes, certains sch´mas, notamment ceux pr´sent´s dans la Figure 1.4 peuvent e e e eˆtre utilis´s lors de la g´n´ration. On peut, par exemple, constater que la plupart des villese e e eam´ricaines sont con¸ues selon un sch´ma de damier, tandis que les villes europ´ennes reposent e c e eplus souvent sur un sch´ma radiocentrique. N´anmoins, ces observations sont ` pond´rer par le e e a efait que la structure d’une ville est amen´e ` ´voluer dans le temps en fonction de contraintes e aeg´ographiques, sociales et ´conomiques. En pratique, on observe plutˆt une composition de e e osch´mas au sein d’une mˆme ville. La Figure 1.1 montre un r´seau routier qui pr´sente la e e e ecomposition de plusieurs sch´mas, principalement les sch´mas radiocentriques et en damier. e e 30
  • On reconnaˆ en bas de l’image deux noyaux de sch´mas routier radiocentriques. Tandis que les quartier au nord ıt epr´sentent les caract´ristiques de sch´mas routiers en damier. e e e Figure 1.1. D´tail du centre ville de Canberra (Australie) e 31
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e1.2.2 M´thodes issues de l’analyse d’image e1.2.2.1 Extraction du r´seau routier eIl existe trois familles de m´thodes d’extraction de r´seaux routiers ` partir d’image (photogra- e e aphique ou radar) :– les m´thodes d’extraction locale ; e– les m´thodes de poursuite ; e– les m´thodes de reconnexion de graphes. eDans la plupart des approches, le probl`me peut ˆtre ramen´ ` un probl`me d’extraction de e e e a estructures lin´aires. e1.2.2.2 Les m´thodes locales eCe premier type de m´thode vise ` d´tecter dans une image des zones pr´sentant les ca- e a e eract´ristiques locales d’une route. Ces m´thodes recherchent des segments (ou des points) pou- e evant appartenir ` des routes. En pratique, on simplifie le probl`me initial de d´tection des a e etron¸ons de routes en un probl`me de d´tection de structures lin´aires fortement contrast´es c e e e eavec leur voisinage imm´diat (i.e. de radiom´trie fonc´e ou claire). e e eLes principales m´thodes locales reposent sur la morphologie math´matique [CML01] ou la trans- e eform´e de Hough [DG02]. Ces m´thodes ne sont, la plupart du temps, pas capables de d´tecter e e ele r´seau routier dans sa totalit´, mais elles sont en mesure d’en trouver les portions princi- e epales. Elles peuvent cependant g´n´rer un taux significatif d’erreur. Les m´thodes locales sont e e erarement utilis´es seules, toutefois, elles pr´sentent un int´rˆt certain en r´alisant un traitement e e ee einitial des donn´es pour obtenir une amorce de r´seau routier. e eNous allons ` pr´sent d´tailler les m´thodes de poursuite et de reconnexion, des algorithmes de a e e eplus haut niveau qui peuvent utiliser cette amorce pour r´aliser l’extraction de la totalit´ du e er´seau routier. e1.2.2.3 Les m´thodes de poursuite eCes m´thodes d’extraction sont bas´es sur le suivi de structures. Elles sont it´ratives et ont pour e e eprincipe le chaˆ ınage successif de tous les pixels d’une structure en partant d’une amorce.Pour chaque section de la structure lin´aire d´crivant le r´seau routier en cours d’extraction, le e e esyst`me s’efforce de choisir le prochain pixel qui permettra de faire croˆ cette structure. e ıtre 32
  • Les m´thodes de poursuite ont en commun la n´cessit´ de connaˆ e e e ıtre une structure initiale(potentiellement ponctuelle). Celle-ci peut avoir ´t´ renseign´e par l’utilisateur ou obtenue ee ede fa¸on automatique par une des m´thodes locales pr´c´demment d´crites. Ces algorithmes c e e e epr´sentent l’avantage (propre aux algorithmes it´ratifs) d’´voluer de fa¸on autonome. Cepen- e e e cdant, ils peuvent ˆtre d´licats ` contrˆler si les crit`res de poursuite n’ont pas ´t´ correctement e e a o e eed´finis (en fonction du type de r´seau routier). e eParmi les m´thodes de poursuite, nous pouvons par exemple citer les m´thodes dites de suivi e estructurel (ou de ”tracking”) [GJ96] et celles ` base de programmation dynamique [GL95]. a1.2.2.4 Les m´thodes de reconnexion eCes m´thodes r´alisent l’extraction du r´seau routier par reconnexion de graphes. Elles sont e e eutilis´es principalement en sortie des m´thodes de poursuite et des m´thodes locales, car elles e e epermettent de lever deux des d´fauts inh´rents ` ces m´thodes. e e a ePremi`rement, les m´thodes de reconnexion permettent de valider les r´sultats en supprimant e e eles fausses alarmes (d´tection d’erreur). Deuxi`mement, elles sont ` mˆme de compl´ter un e e a e er´sultat en connectant divers tron¸ons de la mˆme route. Les m´thodes de reconnexion reposent e c e esur l’utilisation de la topologie des objets ` extraire, et permettent, dans notre cas, de passer ad’un r´sultat compos´ d’une nu´e de tron¸ons de routes ` la repr´sentation globale d’un r´seau e e e c a e eroutier.De nombreux travaux sont class´s parmi ces m´thodes : certains reposent sur une approche baye- e esienne [Tup97], d’autres sur l’approche des processus ponctuels marqu´s [Sto01], sur la logique efloue [WHMJ98] ou encore les algorithmes g´n´tiques [HL01]. e eLes diff´rentes m´thodes cit´es ci-dessus ont pour point commun de s’efforcer de cr´er la re- e e e epr´sentation virtuelle d’un r´seau routier existant. Ce r´seau routier peut ˆtre utilis´ comme e e e e edonn´e d’entr´e pour un syst`me de g´n´ration de zone urbaine. Cependant, certaines applica- e e e e etions requi`rent des donn´es de plus haut niveau s´mantique, ou des mod`les plus simples pour e e e ela navigation temps r´el. C’est pourquoi il nous a paru interessant de privil`gier l’´tude des e e em´thodes proc´durales. Celles-ci ont ´galement pour but d’ˆtre capables de cr´er des r´seaux e e e e e eroutiers non existants. 33
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e1.2.3 M´thode quasi-s´mantique e eNous reprenons ici la description r´alis´e par Julien Perret dans son manuscrit de th`se [Per06] e e edes travaux r´alis´s au sein de son ´quipe de recherche par ses encadrants, St´phane Donikian e e e eet Gw´nola Thomas. eL’application propos´e par l’´quipe SIAMES4 [Tho99] en collaboration avec la soci´t´ IVT com- e e eebine les contraintes de g´n´ration d’informations s´mantiques et de contrˆle de la complexit´ e e e o edu mod`le. En effet, l’objectif de cette application est la visualisation en temps r´el de pi´tons e e een environnement urbain inform´ s´mantiquement (voies de circulation pi´tons/v´hicules, sens, e e e eetc.). Une approche (quasi) s´mantique est justifi´e dans ce cadre, puisque les humano¨ e e ıdes, afind’ˆtre autonomes, n´cessitent des informations autres que celles concernant la g´om´trie. e e e eAinsi, l’environnement de mod´lisation VUEMS5 [Don97, Tho99] est utilis´ pour traiter une e ebase de donn´es existante et permet l’introduction du r´seau routier, de la signalisation, du e emobilier urbain, des bˆtiments, des places et des espaces verts. L’environnement ainsi construit aest utilis´ par une application simulant le d´placement de centaines de pi´tons autonomes et la e e enavigation en temps r´el. Dans cette phase de ses travaux, l’´quipe SIAMES ne s’int´resse pas e e ea` la partie simulation du mod`le mais plutˆt aux repr´sentations de l’environnement urbain. e o eAinsi, afin de repr´senter la voirie, chaque rue est d´compos´e en tron¸ons. e e e cDe plus, un corpus de 12 types de tron¸ons de r´seau routier a ´t´ d´fini et est illustr´ par la c e ee e eFigure 1.2. Chaque tron¸on est lui-mˆme compos´ de tron¸ons ´l´mentaires, ce qui permet de c e e c eeconstruire le graphe de connexit´ entre les diff´rents tron¸ons. e e cPour compl´ter le graphe ainsi constitu´, un tissu urbain compos´ de bˆtiments, d’espaces verts e e e aet d’autres zones de circulation est ajout´, ainsi qu’un second graphe de passages qui est utilis´ e epour la navigation des pi´tons virtuels [Don04]. e1.2.4 G´n´ration e eNous allons ` pr´sent d´crire des m´thodes de g´n´ration automatique de r´seaux urbains. Si le a e e e e e ebut de ces m´thodes peut occasionnellement ˆtre de recr´er des r´seaux urbains existants, leur e e e eint´rˆt principal r´side dans leur capacit´ ` g´n´rer des r´seaux urbains cr´dibles ` partir de ee e e a e e e e adonn´es r´elles ou imaginaires. Cette particularit´ rend ces approches tr`s utiles pour fournir e e e edes donn´es d’entr´e afin d’´valuer les m´thodes de g´n´ration de bˆtiments. e e e e e e a 4 Synth`se d’Images, Animation, Mod´lisation Et Simulation e e 5 A Virtual Urban Environment Modeling System 34
  • Figure 1.2. Diff´rents types de tron¸ons d’un r´seau routier dans VUEMS [Don04] e c e 35
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eDiff´rents travaux de recherche ont ´t´ men´s afin de proposer des solutions pour cette ´tape. Ces e ee e etravaux font appel ` diff´rents m´canismes, notamment les L-System, la mod´lisation d´clarative a e e e eet les graphtales.1.2.4.1 L-SystemParmi les travaux qui utilisent les L-System (voir Annexe C), CityEngine [PM01] propose desr´sultats particuli`rement int´ressants. e e eCityEngine est constitu´ d’une chaˆ enti`re d’outils couvrant les quatres premi`res ´tapes e ıne e e epr´sent´es dans cet ´tat de l’art. A savoir : la g´n´ration du r´seau routier, les ´tapes de par- e e e e e e etitionnement des blocs et parcelles, ainsi que la g´n´ration des ext´rieurs des bˆtiments. La e e e acontribution la plus remarquable de ces travaux au probl`me de g´n´ration de zones urbaines e e eest l’utilisation d’une extension des L-System pour la cr´ation d’un r´seau routier. e eConcevoir un syst`me complexe de r`gles pour cr´er un r´seau routier conduit ` introduire e e e e aun grand nombre de param`tres et de conditions qui doivent ˆtre int´gr´s dans la grammaire e e e eformelle sur laquelle le L-System est bas´. L’introduction d’une nouvelle contrainte oblige ` e ar´´crire de nombreuses r`gles, ce qui rend difficile l’extension du syst`me. Au lieu de faire croˆ ee e e ıtrel’ensemble des r`gles de fa¸on exponentielle, les auteurs ont d´fini une extension des L-System e c equi cr´e ` chaque ´tape de d´rivation des successeurs g´n´riques appel´s successeurs id´aux. e a e e e e e eLes param`tres de ces successeurs ne sont pas instanci´s. C’est l’appel ` une fonction objectif e e aglobal qui instancie ces param`tres de fa¸on ` ce qu’elle soit satisfaite. Ensuite, le syst`me v´rifie e c a e eque ces param`tres satisfont les contraintes locales et les modifient si besoin. eLes fonctions d’objectifs globaux (dont les zones d’influence sont d´finies par l’utilisation des ecartes d´finies en 1.1) ´valuent la validit´ des param`tres des segments de route en cours de e e e econstruction (cf. Figure 1.3) :– densit´ de population : les zones les plus peupl´es doivent ˆtre reli´es par des routes, tandis e e e e que les rues doivent se d´velopper dans les zones r´sidentielles et ˆtre reli´es ` la route la plus e e e e a proche ;– sch´mas du r´seau routier : cet objectif global assure la coh´rence de la ville avec les sch´mas e e e e choisis.La fonction de contraintes locales ajuste les param`tres propos´s par la fonction d’objectif global e eafin de satisfaire les contraintes environnementales locales. Par exemple, un nouveau segment deroute peut voir sa direction initialement d´finie par la fonction d’objectif global (relier deux zones e 36
  • A gauche : cartes d’hydrographie, d’´l´vation et de densit´ de population d’une ville virtuelle ee e Figure 1.3. Un r´seau routier g´n´r´ ` partir de donn´es en entr´e [PM01] e e e ea e e 37
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e etr`s peupl´es) modifi´e afin de tenir compte des caract´ristiques locales (pr´sence d’une falaise). e e e e eLorsque aucun ajustement n’est possible, le segment de r´seau routier concern´ est effac´ grˆce e e e aa` une r`gle de production du L-System. Cet effacement peut ˆtre la cons´quence de la rencontre e e ed’un certain nombre de situations : r´seau routier suffisamment fin dans la zone trait´e, pr´sence e e ed’une surface interdite au r´seau routier (parc, plan d’eau, zone g´n´r´e manuellement) ou e e eerencontre avec un ´l´ment du relief incompatible avec les capacit´s de franchissement (longueur ee emaximale d’un segment) du segment de r´seau routier actif (cas d’une falaise ou d’une rivi`re). e eLes L-System n’ont pas ´t´ cr´´s pour repr´senter des graphes cycliques (circuits), mais dans un e e ee er´seau routier, les diff´rentes routes et rues sont g´n´ralement connexes et les impasses sont peu e e e enombreuses. Il faut donc consid´rer le L-System non plus comme un arbre, mais plutˆt comme e oun r´seau. Pour ce faire, la distance entre le segment cr´´ et le r´seau existant est test´e et e ee e een dessous d’un seuil de proximit´, l’extr´mit´ du segment est modifi´ de fa¸on ` rejoindre le e e e e c ar´seau. Ces modifications permettent de regrouper les intersections entre les axes aux extr´mit´s e e edes segments de rues, cr´ant naturellement des croisements entre plusieurs axes (plus de de deux eaxes).1.2.4.2 Mod´lisation d´clarative de segments de droite e eDans [Li`96], Sylvain Li`ge applique au domaine de la conception urbaine l’approche de la e emod´lisation d´clarative (cf. Annexe D). Il met en ´vidence les notions d’´l´ments urbains qui e e e eepeuvent ˆtre combin´s afin de composer des figures urbaines plus complexes. Le processus de e edescription du r´seau routier est men´ de fa¸on hi´rarchique et incr´mentale [LH97]. Le concep- e e c e eteur d´bute par une description grossi`re, donnant uniquement les traits caract´ristiques tels e e eque grands axes et croisements. Cette description est utilis´e pour proposer une ou plusieurs esolutions que le concepteur pourra affiner. Le processus de g´n´ration est bas´ sur un algorithme e e ede propagation de contraintes et un mod`le de sc`ne. e eLe principal inconv´nient du processus de g´n´ration choisi est qu’il repose sur un espace faible- e e ement discr´tis´, ce qui restreint la quantit´ de configurations possibles et donc de solutions. e e e1.2.4.3 G´n´ration de motifs pseudo-urbains e e ´Le laboratoire ARIA6 de l’Ecole d’Architecture de Lyon poss`de une th´matique de recherche e equi s’articule selon deux directions : un g´n´rateur de graphtale qui, ` partir de simples r`gles e e a e 6 Applications et Recherches en Informatique pour l’Architecture - www.aria.archi.fr 38
  • (a) (b) (c) (d) Figure 1.4. Exemple de sch´mas urbains [Li`96], de gauche ` droite : (a) concentrique, (b) e e a radial, (c) ´chiquier, (d) diamant. ebinaires bas´es sur le formalisme des L-System, produit rapidement des g´om´tries complexes e e e(Figure 1.5) et un g´n´rateur de sch´mas multi-´chelle qui utilise le pr´c´dent moteur bas´ sur e e e e e e eles L-System et des r`gles de contraintes environnementales et topographiques (Figure 1.6). eLa combinaison de l’approche fractale avec un moteur de g´n´ration bas´ sur les L-System e e epermet d’obtenir rapidement des r´sultats vari´s. Malheureusement, cette rapidit´ entraˆ aussi e e e ınedes imperfections telles que des collisions de bˆtiments ou des r´seaux routiers sans coh´rence. a e e1.2.5 DiscussionLes deux m´thodes proc´durales bas´es sur les L-System (CityEngine et une partie des travaux e e edu laboratoire ARIA) proposent des r´sultats ` l’´chelle d’une ville. Parmi les travaux de re- e a echerche existants dans ce domaine, CityEngine fait office de r´f´rence. La diversit´ des ´tapes ee e etrait´es, le degr´ de r´alisme atteint ainsi que la capacit´ ` prendre en compte des donn´es e e e e a esocio-statistiques existantes, ont ouvert la voie ` un grand nombre de travaux de recherche. aCityEngine a ´t´ enrichi grˆce aux travaux de Peter Wonka [WWSR03] ce qui a conduit aux ee ar´sultats d´crits en 1.5.2.2. e eL’approche issue de la mod´lisation d´clarative d´crit des sch´mas urbains non encore g´r´s au e e e e eesein des approches proc´durales (tel le sch´ma en diamant pr´sent´ ` droite de la Figure 1.4). e e e eaMalheureusement, la m´thode de g´n´ration qui a ´t´ utilis´e dans [Li`96] (solveur de contraintes e e e ee e enum´riques dans un espace discret) ne permet pas une r´solution ` l’´chelle d’une ville. Pour e e a egarantir une plus grande diversit´ de l’ensemble des r´seaux routiers pouvant ˆtre g´n´r´s, il e e e e eeserait bon d’int´grer au formalisme des L-System les sch´mas urbains non encore disponibles e emais pr´sents dans les ouvrages d’urbanisme tels que ceux auxquels se r´f`re S. Li´ge [Li`96]. e ee e e 39
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eFigure 1.5. Diff´rentes ´tapes successives de g´n´ration de g´om´trie complexe ` base de e e e e e e agraphtales [MBST01] 40
  • Figure 1.6. G´n´ration d’une zone urbaine ` partir d’un L-System et de r`gles de e e a econtraintes environnementales et topographiques [MBST01] 41
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eUne fois le r´seau routier g´n´r´, il est possible de r´aliser une partition de la ville en blocs. Ce e e ee epassage d’un probl`me de grande taille ` plusieurs probl`mes similaires mais de plus petite taille e a eest comparable au paradigme de conception algorithmique r´cursif appel´ divide and conquer. e e1.3 BlocsBloc Nous d´finissons comme bloc une surface connexe entour´e de routes. On peut aussi trouver e e le terme ˆ urbain pour d´crire cette entit´. ılot e eLe processus de g´n´ration associ´ ` cette ´tape est d’une complexit´ n´gligeable par rapport ` e e ea e e e acelle de l’´tape de g´n´ration du r´seau routier. Elle est, de fait, souvent r´alis´e automatique- e e e e e ement durant la g´n´ration du r´seau routier. Il s’agit, le plus souvent, uniquement d’un calcul e e ed’intersections sur les voies du r´seau routier, comme dans la Figure 1.7. N´anmoins, il peut e eˆtre utile d’int´grer ` ce traitement des raffinements suppl´mentaires :e e a e– fusion des zones trop petites ;– prise en compte des donn´es hydrographiques et des espaces verts ; e– sp´cification des blocs : zones commerciales, de bureau, r´sidentielle, industrielle, scolaire, e e hospitali`re, etc. eLe d´coupage de la ville en blocs permet une premi`re ´tape de hi´rarchisation. Ceci diminue le e e e enombre de contraintes ` g´rer, notamment dans le cas de la prise en compte de la contrainte de a enon-chevauchement. Le format utilis´ pour d´crire un bloc est le polygone, mais une restriction e eaux polygones convexes est g´n´ralement faite (comme dans [PM01] ou [Li`96]), de fa¸on ` e e e c aprofiter de la moindre complexit´ des algorithmes de traitement g´om´trique pour ce type de e e epolygones. Des informations suppl´mentaires peuvent ˆtre associ´es ` ces polygones, comme par e e e aexemple le nombre de personnes habitant ou travaillant au sein de ces blocs, ou encore leur type(r´sidentiel, bureau, immeuble, centre commercial, etc.). eSi la g´n´ration des blocs ` partir des r´seaux routiers est d’une faible complexit´, elle reste e e a e en´cessaire pour diminuer la complexit´ g´n´rale de la g´n´ration de villes. L’´tape suivante e e e e e e eprofite de ce niveau de d´tail logique pour restreindre les calculs et les contraintes au bloc en ecours.Apr`s l’´tape de d´coupage du r´seau routier en bloc, la g´n´ration des parcelles ` partir des e e e e e e ablocs constitue une nouvelle ´tape dans le processus de hierarchisation de la sc`ne. e e 42
  • Figure 1.7. De gauche ` droite : routes, blocs et parcelles [PM01] a1.4 ParcellesParcelle Surface poss´dant une mˆme adresse postale, les parcelles sont les zones sur lesquelles e e seront plac´s les bˆtiments (le contour d’un bˆtiment est inclus dans une unique parcelle, e a a mais une parcelle peut accueillir plusieurs bˆtiments). a1.4.1 Pr´sentation eLes similitudes entre les ´tapes de g´n´ration route → blocs et blocs → parcelles sont tr`s fortes : e e e ele format utilis´ est g´n´ralement le polygone, le plus souvent convexe (comme dans [PM01] ou e e e[Li`96]). Il est possible de g´n´rer s´par´ment la parcellisation de chaque bloc, puis de relancer e e e e ela g´n´ration uniquement pour les blocs dont les parcelles ne correspondent pas aux attentes de e el’utilisateur.1.4.2 G´n´ration e eComme pour les r´seaux routiers, la d´finition des parcelles au sein d’un bloc est g´n´ralement e e e eeffectu´e selon un sch´ma pr´d´fini. Cette similitude de description ne s’´tend pas aux m´thodes e e e e e ede g´n´ration : les dimensions restreintes des blocs ne n´cessitent pas l’utilisation de L-System. e e eLes m´thodes utilis´es sont plutˆt bas´es sur un partitionnement purement g´om´trique ou e e o e e el’instanciation d’un sch´ma. e1.4.2.1 Parcellisation g´om´trique e eAlgorithme dichotomique Dans [PM01], les blocs sont d´coup´s en parcelles par un pro- e ecessus r´cursif qui coupe la plus grande parcelle au milieu de son plus grand cˆt´. Le processus e oes’arrˆte quand la surface de la plus grande parcelle est inf´rieure ` un seuil pr´d´fini. Ensuite e e a e e 43
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eun post-filtrage est effectu´ sur les parcelles de fa¸on ` ´liminer les parcelles trop petites ainsi e c aeque celles qui n’ont pas acc`s ` une route. Cette m´thode de raffinement successif limite la e a eparcellisation au sch´ma en damier. Cette m´thode souffre ´galement de plusieurs d´fauts : e e e e– sensibilit´ aux param`tres (seuil) ; e e– traitement restreint aux blocs d´crits par un seul polygone convexe ; e– g´n´ration de parcelles d´finies par un seul polygone convexe ; e e eDiagramme de Vorono¨ Dans [Per06], Julien Perret fait appel au diagramme de Vorono¨ (dont ı ıon peut trouver les d´tails d’une mise en œuvre informatique dans [Gho90]) et ` l’algorithme du e asquelette droit [FO98], afin d’automatiser le processus de parcellisation des blocs. L’utilisationde cet algorithme lui permet de proposer une m´thode applicable aux polygones simples, et non eplus uniquement aux polygones convexes.Dans le contexte urbain, cette m´thode propose l’utilisation de crit`res simples, tels que la e esurface, la largeur et la profondeur. Ainsi, pour un ˆ donn´, plusieurs variables sont position- ılot enables :– la surface moyenne, minimale et maximale de chaque parcelle,– la largeur moyenne, minimale et maximale de chaque parcelle,– la profondeur moyenne, minimale et maximale de chaque parcelle.La Figure 1.8 pr´sente diff´rents ensembles de parcelles g´n´r´s ` partir d’un bloc. On peut e e e ee ad´celer dans la derni`re image des artefacts de g´n´ration (parcelles tr`s peu larges ou triangu- e e e e elaire avec un angle tr`s ferm´). e e1.4.2.2 Parcellisation selon un sch´ma eDans [Li`96], l’environnement de d´part est une surface plane discr´tis´e, repr´sentant le bloc. e e e e eUn point de la grille est choisi de fa¸on arbitraire, puis un autre point est recherch´ de fa¸on c e ca e` cr´er un segment compatible avec le sch´ma ` utiliser. La recherche guid´e de l’extr´mit´ du e a e e esegment permet de r´duire efficacement l’espace de recherche. La m´thode de parcellisation est e eutilis´e pour l’ensemble de l’ossature du sch´ma. Pour les segments qui s´parent les parcelles e e eentre elles, une autre discr´tisation est effectu´e. Celle-ci porte sur les segments constituant le e esquelette int´rieur du sch´ma. Les points ainsi d´finis sont nomm´es points d’ancrage. Chaque e e e epoint d’ancrage est ensuite appari´ ` un ou plusieurs points de l’enveloppe ext´rieure de fa¸on ea e ca e` cr´er une parcellisation conforme au sch´ma. e 44
  • Figure 1.8. Exemples de parcellisation de blocs [Per06] 45
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eLes probl`mes potentiels de cette m´thode sont l’utilisation d’une discr´tisation initiale grossi`re e e e eainsi que le guidage strict de la recherche qui peuvent conduire ` ne pas trouver de solutions apour certains probl`mes. eFigure 1.9. Exemple d’espace de solution r´duit ` cause de la discretisation de l’espace [Li`96] e a e1.4.3 DiscussionLes m´thodes pr´sent´es ici sont extrˆmement diff´rentes. e e e e eCityEngine propose une approche efficace en terme de performances mais fournit des r´sultats epeu vari´s et est limit´ aux polygones convexes en entr´e (blocs) et en sortie (parcelles). e e eL’approche bas´e sur les diagrammes de Vorono¨ permet de s’affranchir de la limitation aux e ıpolygones convexes et propose une gamme de r´sultats plus vari´s, malheureusement desservie e epar des parcelles r´sultats qui sont impossibles (certainement ´vitable par un post-traitement e edes donn´es). eEnfin, l’approche issue de la mod´lisation d´clarative offre la plus grande diversit´ de r´sultats e e e emais utilise un processus de g´n´ration bas´ sur une ´num´ration d’un ensemble, ce qui conduit e e e e ea` restreindre le domaine d’application.Chacune de ces m´thodes peut donc ˆtre choisie selon le degr´ de r´alisme et d’efficacit´ (et de e e e e evariation dans les sch´mas) souhait´. Il apparaˆ n´anmoins n´cessaire d’am´liorer les travaux e e ıt e e eexistants, que ce soit en ajoutant un post traitement sur les parcelles pour l’approche bas´e sur eles diagrammes de Vorono¨ ou en perfectionnement le processus de discr´tisation du monde pour ı el’approche issue de la mod´lisation d´clarative. e e 46
  • 1.5 Ext´rieurs eDans cette section, nous allons utiliser la notion d’embase. L’embase (ou empreinte) d’un bˆtiment arepr´sente l’intersection du bˆtiment avec le terrain. Elle est g´n´ralement repr´sent´e par un e a e e e epolygone non plan (le terrain ne pr´sente pas forcement une altim´trie constante autour du e ebˆtiment). aL’instanciation d’un bˆtiment est contrainte par la sp´cificit´ du paysage urbain environnant a e ela parcelle. Par exemple, placer des bˆtiments en centre ville conduit g´n´ralement ` respecter a e e aune continuit´ des fa¸ades ainsi qu’une homog´n´it´ des hauteurs des diff´rents bˆtiments. Dans e c e e e e ace cas, les embases des bˆtiments doivent ˆtre jointives et align´es par rapport ` la route. Au a e e acontraire, dans un quartier r´sidentiel, ou au sein d’un village, le placement vise ` positionner le e abˆtiment ` distance de la route et des bˆtiments situ´s sur les parcelles mitoyennes, ainsi qu’` a a a e alimiter le plus possible l’inter-visibilit´ des ouvrants ext´rieurs (portes, fenˆtres) des diff´rents e e e ebˆtiments. Les variables ` instancier durant cette ´tape sont : la forme, la hauteur et l’orientation a a edu bˆtiment, ainsi que les distances aux diff´rentes fronti`res de la parcelle. a e eCertains travaux [PM01, Li`96] cr´ent et positionnent les bˆtiments en se basant uniquement e e asur des op´rations g´om´triques : ils effectuent une ´rosion (i.e. une diff´rence de Minkowski e e e e e[Min97]) de la surface de la parcelle de fa¸on ` obtenir l’embase du bˆtiment. Pour ces m´thodes, c a a eles variables d´finies ci-dessus ne sont donc pas r´ellement prises en compte. e eUne fois les variables n´cessaires d´finies, plusieurs techniques existent pour g´n´rer les bˆtiments. e e e e aElles sont d´crites dans la suite de cette section. e1.5.1 M´thodes non automatiques eEn plus des travaux de recherche d´crits dans les prochains paragraphes, il existe des logiciels edestin´s au grand public qui proposent de g´n´rer des bˆtiments, en prenant en compte les e e e aext´rieurs et les int´rieurs (plan et ameublement). L’objectif initial des premi`res versions de e e eces logiciels ´tait la g´n´ration des plans de bˆtiments ; nous d´crirons rapidement certains de e e e a eces outils en Annexe E.1.5.1.1 Grammaire de formesLe projet Lahave House, d´crit par Rau-Chaplin dans [RMS96], est principalement bas´ sur e el’´tude du design architectural industriel dans le but de cr´er des bˆtiments ` partir de librairies e e a a 47
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e ede classes d’agencements d’´l´ments architecturaux. Cet outil est destin´ ` aider le concepteur ` ee ea aconcevoir des habitations esth´tiques, fonctionnelles et architecturalement r´alisables. Une ´tude e e eexhaustive des maisons vernaculaires (un bˆtiment vernaculaire est caract´ristique d’une zone a eg´ographique et d’une ´poque donn´e) construites autour de la rivi`re La Have au Canada a e e e epermis de cr´er un ensemble de grammaires de formes. A partir de ces grammaires, une librairie ede mod`les d’agencements d’´l´ments architecturaux est g´n´r´e puis utilis´e pour visualiser les e ee e ee er´sultats en trois dimensions (Figure 1.10). Un mod`le est constitu´ de la description g´om´trique e e e e eet de la configuration des niveaux de l’habitation. Des ´l´ments (cuisine, salle de bain, etc.) sont eepr´d´finis et associ´s aux volumes correspondants. Ce syst`me est capable de cr´er des bˆtiments e e e e e asuffisamment d´taill´s et parfaitement d´finis pour d´terminer automatiquement le coˆt final de e e e e uconstruction.L’un des objectifs de nos travaux ´tant d’inclure la capacit´ ` d´finir des formes non-existantes, e ea esans ˆtre restreint ` l’assemblage d’´l´ments pr´existants, l’approche du projet Lahave House e a ee epr´sente quelques inconv´nients. En effet, cette approche repose sur le fait qu’elle est restreinte e ea` un type de bˆtiments vernaculaires (sp´cifiques ` une zone g´ographique donn´e). De plus, ce a e a e esyst`me n’est pas capable de traiter des formes qui n’ont pas ´t´ d´crites durant la cr´ation de e ee e ela librairie d’´l´ments architecturaux. ee Figure 1.10. Exemple de r´alisations du projet LaHave [RMS96] e1.5.1.2 Castle Construction KitLes travaux d´crits Gerth et Haveman dans [GBHF05, Hav05] pr´sentent quelques caract´ristiques e e ecommunes aux nˆtres. Les r´sultats de ces travaux montrent que les outils de mod´lisation qui o e ey sont propos´s sont adapt´s sp´cifiquement au domaine ´tudi´. Ces outils sont d´velopp´s pour e e e e e e e 48
  • permettre ` des personnes n´ophytes en mod´lisation tridimensionnelle d’exprimer leurs id´es a e e eou connaissances par eux-mˆmes en cr´ant leurs propres maquettes num´riques (Figure 1.11). e e eNotamment, les cibles vis´es par ces travaux peuvent aussi bien ˆtre des arch´ologues que des e e ehistoriens de l’art qui poss`dent de grandes connaissances sur les sites et monuments historiques. eLes auteurs ont identifi´ des mod`les r´alistes de chˆteaux forts comme un outil potentiellement e e e autile pour les chercheurs, les conservateurs de mus´es ainsi que pour les organisateurs d’exposi- etion. Figure 1.11. Exemple de chateau-fort g´n´r´ avec le Castle Construction Kit [GBHF05] e e e1.5.2 M´thodes automatiques eDepuis 1975, les grammaires, les L-System [PL91] ou les grammaires de formes [Sti75] ont ´t´ eeutilis´s en mod´lisation architecturale afin de d´crire des bˆtiments ou de cr´er des alg`bres de e e e a e econstruction (voir [Mit90]). Ces m´thodes ont ´t´ r´cemment mise en œuvre au sein de diff´rents e ee e eprojets portant sur la g´n´ration de maquettes num´riques de bˆtiments. e e e a1.5.2.1 L-SystemCityEngine D´crit dans [PM01], permet de g´n´rer des bˆtiments simples, en faisant appel e e e a` un L-System vertical (une d´finition des L-System peut ˆtre trouv´e dans l’Annexe C). Lesa e e ebˆtiments g´n´r´s sont de type gratte-ciel, c’est ` dire qu’ils partent d’un rectangle au sol a e ee aet s’affinent en progressant en hauteur (Figure 1.12). Dans cette approche, le syst`me peut erapidement cr´er un grand nombre de bˆtiments, mais les fa¸ades de ces bˆtiments sont limit´es e a c a ea` des faces plates sans aucun d´tail g´om´trique, auxquelles on applique une texture. e e e 49
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e Figure 1.12. Diff´rentes ´tapes de d´rivation [PM01] e e eFL-system Dans son m´moire de th`se [Per06], Julien Perret propose les FL-system, un lan- e egage fonctionnel de mod´lisation g´om´trique. Les FL-system ´tendent le formalisme propos´ par e e e e ePrusinkiewicz [PL91] en y ajoutant la notion d’objets g´n´riques comme param`tres, le contrˆle e e e ode l’application des r`gles, et surtout l’utilisation de fonctions comme ´l´ments terminaux et e eecomme op´rateurs sur les param`tres. e eLa motivation principale du d´veloppement et de l’utilisation des FL-system est la souplesse eapport´e lors de la g´n´ration. En effet, les L-system manquent de souplesse car les objets e e eg´om´triques g´n´r´s par homomorphisme sont implicites, c’est-`-dire que l’utilisateur n’a pas e e e ee ad’autre moyen que de modifier la fonction pour pouvoir modifier les propri´t´s des objets. eeDe plus, ` l’exception du mod`le propos´ par Prusinkiewicz [PL91] pour la mod´lisation de a e e eph´nom`nes continus, le temps est, lui aussi, exprim´ de fa¸on implicite, ce qui ne permet pas e e e cde contrˆler des s´quences de fa¸on simple. o e cJulien Perret propose ´galement deux strat´gies de r´´criture pour ces syst`mes. Il d´crit la pos- e e ee e esibilit´ de g´n´rer un mod`le g´om´trique au fil de la r´´criture (ce qui pr´sente un int´rˆt pour e e e e e e ee e eeg´n´rer divers mod`les d’un mˆme objet pour une utilisation des niveaux de d´tail graphiques), e e e e eainsi qu’un syst`me de cache visant ` am´liorer les performances de la r´´criture. e a e ee1.5.2.2 M´thodes bas´es sur les grammaires de formes e eInstantArchitecture Le projet Instant Architecture, d´crit Peter Wonka dans [WWSR03], epermet d’obtenir des bˆtiments ` partir de split grammar. Ce type de grammaire est un ensemble a ade grammaires param´triques bas´es sur le concept de forme. Ce syst`me utilise ´galement un e e e esecond type de grammaire, la control grammar afin de contrˆler la propagation des attributs de ola split grammar. En faisant appel ` ces deux types de grammaires, le syst`me peut cr´er des a e ebˆtiments r´alistes ` partir de descriptions qui peuvent ˆtre pr´cises ou vagues. Dans le cas d’une a e a e edescription vague, la control grammar se chargera de donner des valeurs pr´cises aux attributs. e 50
  • Figure 1.13. Reconstruction de l’Empire State Building (New York City) [PM01] 51
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eFigure 1.14. Reconstruction d’un bˆtiment existant (` gauche) ` Rennes. Le mod`le virtuel, a a a eutilisant les FL-system est montr´ ` droite[Per06] eaFigure 1.15. Un autre bˆtiment de Rennes. Ce mod`le utilise le mˆme FL-system que la a e efigure pr´c´dente, seuls les ´l´ments terminaux et les textures ont ´t´ modifi´s.[Per06] e e ee ee e 52
  • Figure 1.16. Cette image montre plusieurs bˆtiments g´n´r´s ` l’aide des split grammar a e e e a [WWSR03]R´cemment, ces travaux ont ´t´ ´tendus dans [MZWG07] afin d’automatiser la tˆche de cr´ation e e ee a ede la grammaire. L’utilisation conjointe de m´thodes issues de l’analyse d’images et de leurs etravaux ant´rieurs sur la mod´lisation proc´durale leur permet de proposer deux nouvelles ap- e e eplications de leurs approches :– reconstruction urbaine ` partir d’images a´riennes basse r´solution, a e e– reconstruction de fa¸ades ` partir d’images terrestres haute r´solution, c a e (a) (b) (c) (d) Figure 1.17. De gauche ` droite : (a) donn´e en entr´e (image rectifi´e d’une fa¸ade), a e e e c (b) fa¸ade automatiquement subdivis´e et encod´e comme un arbre de forme, (c) mod`le c e e e polygonal et enfin (d) rendu du r´sultat final incluant ombres et r´flections rendues possibles e e par les informations s´mantiques [MZWG07] eDans cette approche, les bˆtiments produits sont extrˆmement r´alistes. Le recours ` une unique a e e abase de r`gles permet ` l’utilisateur de cr´er diff´rents types de bˆtiments, mais une longue e a e e ap´riode d’apprentissage est requise avant d’ˆtre capable de maˆ e e ıtriser la complexit´ du syst`me. e e 53
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eIl faut, en effet, connaˆ et comprendre deux bases de r`gles et deux grammaires diff´rentes. ıtre e eL’apprentissage le plus d´licat ´tant celui des split grammar et celle du syst`me de base de e e edonn´es de r`gles. En outre, ce syst`me tend facilement ` cr´er des bˆtiments comportant un e e e a e agrand nombre de faces (de 1 000 ` 100 000 faces par bˆtiments), et comme pr´c´demment ´nonc´, a a e e e eil reste trop g´n´rique pour atteindre nos objectifs en termes de simplicit´ d’utilisation et de e e eprise en main.CGA shape Dans [MWS+ 06], Parish et M¨eller [PM01] et Peter Wonka [WWSR03] ont upr´sent´ un syst`me bas´ sur les grammaires de formesqui est compatible avec des bˆtiments e e e e ad´finis par des plans de masse complexes. Cet outil de mod´lisation de bˆtiments, bas´ sur une e e a eapproche proc´durale autour de mod`les de masse consistants, permet de cr´er des bˆtiments e e e acomplexes. Les diff´rentes parties des bˆtiments g´n´r´s tiennent compte les unes des autres lors e a e eede la g´n´ration des fa¸ades. Cette propri´t´ permet aux split grammar utilis´es de prendre en e e c ee ecompte les fa¸ades qui sont susceptibles de se chevaucher : par exemple, une fenˆtre d’une fa¸ade c e cdonn´e ne sera pas masqu´e par un ´l´ment d’une autre fa¸ade. En utilisant les split grammar et e e ee cles plans de masse, les auteurs sont capables de mod´liser des bˆtiments tr`s complexes, tels que e a eles tours Petronas de Kuala Lumpur (Malaisie). De la mˆme fa¸on que les travaux d´crits dans e c e[WWSR03], les m´thodes utilis´es dans [MWS+ 06] traitent la g´om´trie de fa¸on g´n´rique. e e e e c e eLa Figure 1.18 pr´sente le type de probl`me que les auteurs veulent r´soudre. Le bˆtiment e e e amod´lis´ consiste en quatorze primitives volum´triques (cubes, toits, etc.) plac´s grˆce ` une e e e e a agrammaire stochastique de forme. L’image de gauche de la Figure 1.18 pr´sente le r´sultat e eimparfait qu’obtiendraient les m´thodes existantes. Ce r´sultat peut ˆtre obtenu par l’utilisa- e e etion de textures sur chaque volume individuel [PM01] ou par l’utilisation de r`gles de d´coupe e e(split grammar) [WWSR03]). Dans les deux cas, il apparaˆ des intersections involontaires ıtentres diff´rents ´l´ments (principalement des fenˆtres partiellement cach´es par des murs dans e ee e el’exemple). Ceci arrive car les volumes n’ont pas connaissance les uns des autres. Dans l’imagede droite, la nouvelle approche d´velopp´e dans [MWS+ 06] permet la r´solution de ces conflits. e e eDe plus, cette approche permet un affinement de la g´om´trie du bˆtiment (les rainures sur e e ale toit). Cet exemple a ´t´ cr´´ en utilisant uniquement six r`gles (dont une pour les toits en e e ee epente, une pour les toits plats, une pour les fa¸ades qui utilisent deux r`gles diff´rentes pour les c e efenˆtres). e 54
  • Figure 1.18. Incoh´rences g´om´triques r´solues dans [MWS+ 06] e e e e1.5.2.3 Mod´lisation d´clarative e eBatiMan [Cha98] est un modeleur d´claratif (cf. Annexe D) de quelques bˆtiments (le terme e aquelques est de l’auteur). BatiMan est l’illustration de deux principaux axes de recherche. Lepremier de ces axes repose sur les processus d’apprentissage issus de l’Intelligence Artificielleafin d’am´liorer, au fur et ` mesure de ses utilisations, les performances du modeleur. Cette e aam´lioration se fait sous la forme d’un ´lagage (ou cycle recherche/suppression) des valeurs e econnues comme menant ` un ´chec. Le second axe de recherche est la classification des solutions a epermettant de proposer ` l’utilisateur un nombre restreint de solutions caract´ristiques. La a enotion de prototype de forme prend ici tout son int´rˆt : un modeleur d´claratif peut trouver un ee etr`s grand nombre de solutions et seule la capacit´ ` les classifier peut permettre ` l’utilisateur e ea ad’avoir une vue d’ensemble des solutions distinctes.La m´thode de g´n´ration utilis´e au sein de BatiMan fait appel ` un solveur bas´ sur l’approche e e e e a eCSP (cf. Annexe B) sur les domaines finis. Le nombre de variables d´finissant un bˆtiment peut e aaller jusqu’` une vingtaine. Mais le domaine de ces variables est limit´ avec peu (entre cinq a eet dix) de valeurs possibles par variable. La Figure 1.19 pr´sente des bˆtiments g´n´r´s par e a e eeBatiMan 55
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e Figure 1.19. Exemples de bˆtiments g´n´r´s par BatiMan [Cha98] a e e e1.5.2.4 Mod´lisation g´om´trique e e eAGETIM [LLGC+ 05] est une suite logicielle int´gr´e permettant de g´n´rer un environne- e e e ement virtuel 3D, ` des fins de simulation ou de mod´lisation. AGETIM fournit des moyens a ed’int´gration de donn´es cartographiques existantes, des moyens de correction ou d’enrichisse- e ement de ces donn´es (caract´risation ´lectromagn´tique, infrarouge et acoustique), des proces- e e e esus de g´n´ration automatique d’environnement virtuel 3D, ainsi que des moyens d’exploitation e esimple de cet environnement. Le module GenVillage permet de cr´er des bˆtiments ` partir de e a aleur embase (cr´´e de fa¸on automatique ou manuelle) en utilisant des gabarits pr´d´finis. Ces ee c e egabarits sont restreints ` quelques textures, les fa¸ades sont forc´ment planes. La Figure 1.20 a c epr´sente un bˆtiment g´n´r´ par AGETIM. e a e ee Figure 1.20. Exemple de bˆtiment g´n´r´s par AGETIM [LLGC+ 05] a e e e 56
  • 1.5.3 DiscussionL’´tape de g´n´ration des ext´rieurs de bˆtiments est importante pour la qualit´ du r´sultat e e e e a e efinal. Les m´thodes d´crites pour cette ´tape r´pondent ` des besoins diff´rents. La m´thode la e e e e a e eplus adapt´e ` un cas s´lectionn´ varie selon que l’utilisateur recherche une g´n´ration rapide, e a e e e eune grande finesse g´om´trique ou la possibilit´ de chiffrer le coˆt du bˆtiment. e e e u aSeule la m´thode du projet La Have [RMS96] permet de chiffrer le coˆt de construction d’un e ubˆtiment, mais l’´tablissement de la librairie n´cessaire ` l’utilisation d’une grammaire de formes a e e an´cessite d’importants moyens et n’est pas r´utilisable si le type de bˆtiment ´volue. e e a eLes bˆtiments cr´´s par CityEngine [PM01] sont g´n´r´s tr`s rapidement et peuvent donc ˆtre a ee e ee e eutilis´s pour prototyper la zone urbaine, mais ne sont ni assez g´n´riques (ils sont restreints aux e e eseuls gratte-ciels) ni assez d´taill´s (le rendu final est bas´ sur une seule texture). e e eLa mod´lisation d´clarative [Cha98] permet de cr´er facilement une biblioth`que de bˆtiments e e e e agrˆce ` la classification qui permet de regrouper les bˆtiments ayant des caract´ristiques com- a a a emunes.La m´thode GenVillage [LLGC+ 05], bas´e sur la mod´lisation g´om´trique est con¸ue essentiel- e e e e e clement pour faciliter l’instanciation de bˆtiments dans un paysage. Mais son cˆt´ automatique a oeest restreint ` une gestion intelligente de la r´p´tition de texture (pour ´viter de couper une a e e eouverture par un angle de mur).Des m´thodes pr´sent´es ici, les m´thodes bas´es sur les split grammar nous semblent les plus e e e e eprometteuses. La capacit´ de g´n´rer avec le mˆme outil n’importe quel type de bˆtiment, tout e e e e aen proposant des r´sultats satisfaisants d’un point de vue esth´tique, apporte r´ellement une e e eplus-value par rapport aux limitations des autres approches.N´anmoins ces m´thodes souffrent de plusieurs d´fauts, notamment une utilisation ardue (l’ap- e e eprentissage du double syst`me de grammaire semblant en ˆtre la cause) et un relatif manque de e econtrˆle de la complexit´ du r´sultat final (en terme de nombre de polygones). o e eDans le cadre de cette ´tude, nous avons d´velopp´ une nouvelle m´thode pour g´n´rer des e e e e e eext´rieurs de bˆtiments. Cette m´thode, initialement inspir´e des travaux de Peter Wonka e a e e[WWSR03] vise ` g´n´rer rapidement des bˆtiments r´alistes, tout en ´tant facile et rapide a e e a e ea` comprendre et maˆ ıtriser pour un non sp´cialiste. Nous pr´sentons nos travaux dans le Cha- e epitre 3. 57
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e1.6 Plan de bˆtiments aCe probl`me architectural bidimensionnel a fait l’objet de nombreux travaux [Mac91, Cha95, eMY01]. Il correspond ` une activit´ de partitionnement du plan d’un bˆtiment en pi`ces. C’est a e a eun probl`me non trivial, et pour lequel il n’est pas possible de trouver une solution en un temps epolynomial dans le cas o` de nombreuses contraintes ont ´t´ exprim´es pour de nombreuses u ee epi`ces. Il a ´t´ essentiellement ´tudi´ comme une recherche de la solution optimale ` un probl`me e ee e e a ede satisfaction de contraintes utilisant l’approche CSP (cf. Annexe B) pour sa r´solution. eIl existe de nombreux logiciels grand public ayant pour vocation de permettre ` tout un chacun ade (re)cr´er son habitation. Comme ces outils ne sont pas automatiques, nous les pr´sentons en e eAnnexe E.1.6.1 Alg`bre de Manhattan eDans ses travaux, R. Maculet [Mac91] pr´sente la conception de bˆtiments comme un processus e ade satisfaction de contraintes. Afin d’ˆtre capable de d´finir les contraintes spatiales relatives e ea` ce probl`me, R. Maculet a plus particuli`rement ´tudi´ la repr´sentation des connaissances e e e e espatiales en architecture, notamment l’articulation entre les connaissances spatiales symboliques(topologiques) et les connaissances spatiales num´riques qui avaient encore ´t´ peu ´tudi´es en e ee e eIA.La repr´sentation spatiale des objets sur lesquels portent ces connaissances est effectu´e par l’uti- e elisation des boˆ de Manhattan qui sont des rectangles isoth´tiques d´finis dans un monde dis- ıtes e ecretis´. Les boˆ de Manhattan, ainsi que les diff´rentes op´rations associ´es, forment l’alg`bre e ıtes e e e ede Manhattan. Ce choix a ´t´ guid´ par son ad´quation avec la r´alit´ architecturale ; l’auteur ee e e e erappelle qu’un bˆtiment est g´n´ralement un ensemble complexe de formes simples. a e e Figure 1.21. 3 solutions au probl`me de Maculet [Mac91] e 58
  • Les probl`mes de placement sont repr´sent´s par un r´seau de contraintes. La r´solution s’effectue e e e e epar un m´canisme de propagation statique des contraintes, guid´ par des heuristiques en fonction e edes contraintes pour le choix de l’ordre de placement des objets.1.6.2 EAASEAAS (Environnement d’aide ` l’am´nagement spatial) est un ensemble d’outils pour l’aide ` a e al’am´nagement spatial con¸u et r´alis´ par P. Charman [Cha95]. N’entrant pas directement dans e c e ele cadre de la mod´lisation d´clarative (car plutˆt orient´ CAO et solveur de contraintes), il peut e e o ecependant y ˆtre rattach´, principalement ` cause de la phase de g´n´ration et par le niveau e e a e ed’abstraction utilis´. e Figure 1.22. Exemples de r´sultats obtenus par EAAS [Cha95] eL’´l´ment principal de EAAS est son solveur de contraintes fond´ sur une extension des CSP, ee eles Spatial-CSP. Ce mod`le a ´t´ d´velopp´ sp´cialement par l’auteur pour tenir compte des e ee e e ecaract´ristiques g´om´triques des probl`mes d’am´nagement spatial. Les m´thodes d´velopp´es e e e e e e e edans EAAS, notamment une nouvelle technique de filtrage (l’arc-coh´rence semi-g´om´trique) e e eainsi que l’implantation d’un large choix d’heuristiques et de techniques de backtrack, garan-tissent une r´solution efficace dans de nombreux cas. Ce mod`le permet donc de pr´voir les e e ecollisions au plus tˆt (pendant les phases de filtrage), ce qui limite d’autant l’espace de recherche oet le nombre de tentatives pour parvenir ` une solution. aEAAS a ´t´ d´velopp´ pour r´soudre des probl`mes d’am´nagement spatial dans le plan. De ee e e e e eplus, les orientations g´r´es sont r´duites ` 0, 90, 180 et 270 degr´s, ce qui limite le monde ` des ee e a e aobjets isoth´tiques, plus exactement ` des objets dont la boˆ englobante est un parall´l´pip`de e a ıte ee eisoth´tique. De fait, EAAS est limit´ (comme les autres m´thodes pr´sent´es ici) au partitionne- e e e e e 59
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e ement de bˆtiments dont les ´tages sont des rectangles. De plus, les pi`ces cr´´es seront forc´ment a e e ee eelles aussi des rectangles.1.6.3 ARCHIPLANDans ARCHiPLAN [MY01], B. Medjoub et B. Yannou proposent une am´lioration des ap- eproches pr´c´dentes par l’utilisation d’heuristiques dynamiques d’ordonnancement spatial. Ces e eheuristiques, inspir´es des heuristiques d’ordonnancement dynamique de variables, introduisent eune caract´risation topologique de l’espace des solutions. Cette introduction de notions topolo- egiques permet de diminuer la combinatoire du probl`me et donc de simplifier la recherche d’une esolution. L’avantage d’un niveau topologique de solutions est la restriction d’un point de vuetopologique du nombre de solutions existantes diff´rentes, ce nombre rendant possible la visua- elisation de la totalit´ des solutions par l’utilisateur final. Ceci permet d’avoir une vue globale de el’espace des solutions puis d’´tudier en d´tail uniquement la partie de l’espace des solutions qui e ecorrespond ` l’image mentale du concepteur. a Figure 1.23. Deux solutions g´om´triques diff´rentes avec la mˆme topologie [MY01] e e e e1.6.4 HM2PHLe projet HM2PH (Habitat Modulaire et Mobile pour Personnes Handicap´es), d´velopp´ par e e el’´quipe HaNT (Handicap et Nouvelles Technologies) du Laboratoire d’Informatique de l’Uni- eversit´ de Tours, vise ` utiliser les nouvelles technologies pour am´liorer le cadre de vie des e a epersonnes handicap´es. eDans son m´moire de doctorat [Pur07], Arnaud Puret r´alise une synth`se des m´thodes d´crites e e e e epr´c´demment dans cette section en les appliquant ` un probl`me concret. Ce probl`me peut e e a e eˆtre d´fini comme le d´veloppement d’une application capable de g´n´rer des plans d’habitationse e e e eadapt´es aux handicaps d’une personne. ePour d´finir les contraintes r´sultantes de ces handicaps pour la d´finition des plans de ces e e ehabitations, les auteurs ont cr´e une base de donn´es ` partir des normes et recommandations e e a 60
  • existantes d´finies par les organismes officiels, les associations et les fournisseurs de mat´riel e e(d´finissant l’espace n´cessaire au d´placement d’un lit m´dicalis´, par exemple). En plus des e e e e ehandicaps moteurs, certains handicaps sp´cifiques sont aussi trait´s, tels les handicaps visuels, e eauditifs ou ceux li´s au vieillissement. eLa g´n´ration des habitations d´duit les dimensions minimales des pi`ces (de vie et de com- e e e emunication) des contraintes s´lectionn´es. Le moteur de g´n´ration par contraintes g´n`re un e e e e e egrand nombre de solutions qui sont ensuite classifi´es de fa¸on topologique. A partir d’une ou e cplusieurs solutions topologiques, l’utilisateur peut modifier g´om´triquement les pi`ces de fa¸on e e e ca` satisfaire ses propres pr´f´rences (taille relative des pi`ces, positionnement des ouvrants). ee eL’outil d´velopp´ permet de transformer la liste des contraintes d’am´nagement d’un bˆtiment e e e a(contraintes ´conomiques, contraintes li´es ` l’emplacement du bˆtiment ou contraintes li´es e e a a eaux handicap ou aux d´sirs de l’habitant) en plans compr´hensibles par l’utilisateur, ce qui lui e epermet de choisir par lui-mˆme sa future habitation. eLa possibilit´ pour l’utilisateur d’appr´hender de fa¸on autonome les diff´rents r´sultats pos- e e c e esibles est encore facilit´e par l’´tude et la r´alisation d’un outil de visualisation qui pr´sente les e e e emaquettes tridimensionnelles des solutions topologiques retenues.Nous allons ` pr´sent ´tudier l’´tape de placement des meubles ` l’int´rieur des bˆtiments. a e e e a e a1.7 Int´rieurs meubl´s e eIl a ´t´ prouv´ que le probl`me d’am´nagement spatial est un probl`me NP-complet, ce qui im- ee e e e eplique qu’il n’existe pas d’algorithme le r´solvant en temps polynomial. Cette complexit´ en fait e eun domaine d’application privil´gi´ en mod´lisation d´clarative afin d’´valuer les performances e e e e edes processus de g´n´ration. e eIl est possible de d´finir enti`rement l’instanciation d’un objet au sein d’un mod`le 3D par la e e edonn´e de sa description g´om´trique et les variables qualifiant son orientation, sa position et e e eses dimensions (ces derni`res ´tant le plus souvent fix´es). e e e1.7.1 Approches manuellesEn plus des travaux de recherche d´crits dans les prochains paragraphes, il existe des logiciels edestin´s au grand public qui proposent de g´n´rer des bˆtiments, en prenant en compte les e e e a 61
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eext´rieurs et int´rieurs (plans et ameublement). Comme ces outils ne pr´sentent pas d’approche e e eautomatique, nous avons report´ leurs descriptions en Annexe E. e1.7.2 Approches semi-automatiques1.7.2.1 CAPSCAPS (Constraint-based Automatic Placement System : Syst`me de placement automatique ebas´ sur les contraintes) a ´t´ d´velopp´ en 2001 par K. Xu [XSF02] au sein du d´partement e ee e e eComputer Science de l’Universit´ de Toronto. eCAPS s’attache ` construire une seule sc`ne de fa¸on it´rative en laissant l’utilisateur d´cider du a e c e eplacement des objets. Il agit plus comme une assistance au placement interactif que comme unmodeleur. CAPS utilise de nombreuses techniques pour faciliter la cr´ation de sc`nes complexes : e e– implantation d’une pseudo-physique, mod`le physique simplifi´ (disparition des acc´l´rations e e ee et des vitesses) qui maintient une sc`ne coh´rente par rapport ` la gravit´, e e a e– utilisation des sommes et diff´rences g´om´triques de Minkowski pour acc´l´rer le placement e e e ee (en r´duisant les domaines de recherche), e– utilisation de contraintes 2D, il rejoint ici la mod´lisation d´clarative, e e– d´veloppement d’une base de donn´es s´mantique qui d´finit les zones de placements autoris´es e e e e e (zones o` placer des assiettes sur une table par exemple) et interdites. uLes r´sultats (cf. figure 1.24) que pr´sente K. Xu, notamment ceux concernant les temps de e eg´n´ration de sc`nes relativement complexes (plusieurs centaines d’objets), repr´sentent une e e e er´f´rence ` laquelle les modeleurs futurs devront se mesurer. N´anmoins, ses travaux ne sont ee a epas directement comparables ` ceux effectu´s dans le cadre du projet DEM2 ONS ´tant donn´ a e e el’absence d’un moteur de maintien de contraintes. Par exemple, si des objets ont ´t´ plac´s sur ee eune table, le fait de d´placer cette table plus tard durant le processus de mod´lisation ne les e econservera pas sur la table. Or, un modeleur d´claratif doit pouvoir maintenir les contraintes pr´- e e´tablies satisfaites, mˆme en cas de d´placement d’un des objets mis en jeu dans une contrainte.e e e1.7.2.2 WordsEyesAlors que les modeleurs pr´sent´s sont tous issus de la recherche acad´mique, WordsEyes [CS01] e e ea ´t´ d´velopp´ dans un des laboratoires de recherche de AT&T. Cette sp´cificit´ se traduit ee e e e edirectement par la taille des ´quipes impliqu´es. e e 62
  • Figure 1.24. Sc`ne comprenant environ 500 objets g´n´r´e en 25min grˆce ` CAPS (par e e e e a aplacement et ajustements interactifs) 63
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eLe texte suivant produit la premi`re image. The Broadway Boogie Woogie vase is on the Richard Sproat coffee etable. The table is in front of the brick wall. The van Gogh picture is on the wall. The Matisse sofa is next to thetable. Mary is sitting on the sofa. She is playing the violin. She is wearing a straw hat.Le texte suivant produit la seconde image. John uses the crossbow. He rides the horse by the store. The store isunder the large willow. The small allosaurus is in front of the horse. The dinosaur faces John. A gigantic teacupis in front of the store. The gigantic mushroom is in the teacup. The castle is to the right of the store. Figure 1.25. Exemples de r´sultats de WordsEyes ` partir de descriptions textuelles`. e a e 64
  • Le syst`me WordsEyes se base sur une description enti`rement textuelle, associ´e ` des in- e e e aformations s´mantiques, pour g´n´rer une sc`ne (text-to-scene system). Le texte fourni par le e e e econcepteur est analys´ pour construire un graphe de d´pendances, qui est ensuite interpr´t´ de e e eefa¸on ` produire une repr´sentation s´mantique. Celle-ci est alors convertie en un ensemble de c a e edescripteurs, relativement ` un ensemble de r`gles, permettant la mise en place d’objets 3D dans a eune sc`ne (cf. figure 1.25) respectant au mieux la description fournie. eCette technique, qui donne des r´sultats remarquables, repose sur deux parties essentielles : e– une analyse linguistique pouss´e, permettant l’interpr´tation des ´nonc´s fournis par le concep- e e e e teur (on peut noter l’utilisation de WordNet7 comme syst`me de r´f´rence lexical), e ee– une base de connaissances extrˆmement riche (et coˆteuse ` construire) contenant des objets e u a 3D associ´s ` des caract´ristiques qui permettent de les positionner au mieux en fonction du e a e contexte, de fa¸on ` respecter leurs fonctionnalit´s et l’attitude des personnages utilisant ces c a e objets (couleur, relations spatiales, etc).1.7.3 Approches automatiques1.7.3.1 Approche CSPDurant ces dix derni`res ann´es, plusieurs solveurs de contraintes bas´s sur l’approche CSP e e eont ´t´ d´velopp´s dans le domaine de la mod´lisation d´clarative pour r´soudre le probl`me ee e e e e e ed’am´nagement d’int´rieurs. Ces solveurs peuvent ˆtre divis´s en deux classes : e e e e– ceux restreints ` un placement parall`le aux axes de la sc`ne (isoth´tique), ces solveurs [Kwa98, a e e e BP99, LR03] ont ´t´ historiquement les premiers ´tudi´s, ee e e– ceux capables de placer les objets avec une orientation quelconque [RP02, LR03].Au sein de notre ´quipe, les diff´rents travaux de recherche concernant le placement automatique e ed’objet dans un monde tridimensionel sont regroup´s au sein du projet DEM2 ONS8 . eDEM2 ONS Le projet DEM2 ONS est assimilable ` un atelier de mise en sc`ne multimodal, a eayant pour but de simplifier et d’acc´l´rer la conception et la cr´ation d’environnements virtuels. ee eBas´ sur l’interaction multimodale et la mod´lisation d´clarative, le but de ce syst`me est d’offrir e e e e 7 WordNet est un syst`me de r´f´rence lexical en ligne dont le fonctionnement est inspir´ par les th´ories e ee e epsycholinguistiques actuelles concernant la m´moire lexicale humaine. e 8 DEclarative Multimodal MOdeliNg System 65
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eau concepteur un ensemble d’outils de haut niveau d’abstraction, capables de l’assister pendantles diff´rentes ´tapes de la conception d’une sc`ne tridimensionnelle complexe. e e eLes propri´t´s ´nonc´es par le concepteur doivent ˆtre interpr´t´es pour ˆtre traduites dans le for- ee e e e ee emalisme sous-jacent, de fa¸on ` ˆtre trait´es lors de la phase de g´n´ration. Ce formalisme, interne c ae e e eau syst`me de g´n´ration, est constitu´ de contraintes (actuellement g´om´triques) associ´es ` e e e e e e e ades m´thodes de r´solution qui permettent de d´finir pr´cis´ment l’effet d’une telle contrainte e e e e esur l’environnement. La phase de g´n´ration est effectu´e par un solveur de contraintes dont le e e erˆle est de satisfaire un ensemble de contraintes g´om´triques afin de fournir une solution au o e eprobl`me pos´. La d´finition des propri´t´s de type relations spatiales ainsi que la d´finition des e e e ee econtraintes g´om´triques correspondantes a ´t´ men´e en collaboration avec l’´quipe LRC9 de e e ee e el’IRIT.Plusieurs m´thodes ont ´t´ ´tudi´es pour r´soudre les contraintes dans le cadre de DEM2 ONS, e eee e ecertaines bas´es sur les CSP, d’autres sur les algorithmes g´n´tiques ou les m´ta-heuristiques de e e e evoisinage.ORANOS [KGC97] (cf. Figure 1.26) est un solveur de contraintes destin´ ` la mod´lisation ea ed´clarative et utilis´ dans la phase de g´n´ration du modeleur de sc`nes de DEM2 ONS ` la e e e e e afin des ann´es 90. Con¸u et r´alis´ par G. Kwaiter [Kwa98], ce solveur s’appuie sur un mod`le e c e e e´tendu de CSP d´velopp´ par l’auteur : les DHNCSP10 . Bas´ sur les CSP num´riques et l’analysee e e e epar intervalle [Moo79], ce mod`le introduit une hi´rarchisation des contraintes afin de pouvoir e eautomatiquement en relˆcher certaines dans les cas sur-contraints. Il pr´sente des caract´ristiques a e etr`s int´ressantes pour un solveur dans le cadre de la mod´lisation d´clarative : e e e e– bas´ sur une hi´rarchie de boˆ e e ıtes englobantes afin de r´duire la complexit´ des sc`nes (les e e e objets plac´s dans des conteneurs diff´rents s’ignorent au sens des contraintes), e e– utilisant une gestion dynamique et incr´mentale du syst`me de g´n´ration afin de permettre e e e e son int´gration dans une application interactive. eLe principal inconv´nient d’ORANOS est, comme pour EAAS, la restriction ` un placement de e aboˆ ıtes englobantes isoth´tiques. Les solveurs d´velopp´s par O. Le Roux dans le cadre de ses e e e 9 ´ LRC : Equipe Langage Raisonnement et Calcul. 10 DHNCSP : Dynamic Hierarchic Numeric CSP. 66
  • Figure 1.26. Oranos dans DEM2 ONS 67
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e erecherches pour DEM2 ON03 l`vent pour certains le probl`me du placement isoth´tique et de la e e erestriction aux boˆ englobantes. ıtesManhattan [LRG03, LR03] est un outil de g´n´ration exclusivement d´di´ ` l’agencement de e e e eaboˆ isoth´tiques tridimensionnelles orient´es. Il est issu des trois constats suivants : ıtes e e– dans la cr´ation d’un environnement virtuel, l’agencement isoth´tique des objets est tr`s e e e courant (la plupart des meubles dans une pi`ce, les livres dans une armoire, les murs d’une e maison) ;– des outils comme Oranos (CSP num´riques) [Kwa98], comme le solveur de contraintes du e syst`me MultiFormes4 (CLP(FD)11 ) [Bon99] ou encore comme le noyau de g´n´ration de e e e MultiCad (Prolog) [Fri03] permettent de r´soudre ce probl`me particulier, mais s’av`rent trop e e e g´n´raux pour s’acquitter de cette tˆche efficacement. En effet, ils ne tirent pas parti de e e a toutes les caract´ristiques intrins`ques de l’agencement isoth´tique : la nature des domaines e e e utilis´s par ces outils ne permet pas d’exploiter pleinement l’information contenue dans les e contraintes. La r´duction de l’espace de recherche est effective, mais les contraintes molles e (comme la contrainte de disjonction) limitent notablement la port´e du filtrage ; e– tous les outils de g´n´ration que nous avons recens´s se limitent au placement de boˆ e e e ıtes ou de rectangles non-orient´s ou avec un nombre d’orientations tr`s restreint (deux pour EAAS). e e Or, les objets que nous cherchons ` placer poss`dent une s´mantique propre qui impose de a e e consid´rer l’orientation des boˆ englobantes associ´es. e ıtes eAvec le solveur de contraintes Manhattan, O. Le Roux a apport´ au projet sa contribution pour el’ensemble de ces pr´occupations. Cet outil, bas´ sur l’approche CSP, permet en effet de recher- e echer de fa¸on syst´matique les solutions d’un probl`me de placement de boˆ tridimensionnelles c e e ıtesorient´es, soumises ` un ensemble de contraintes g´om´triques. L’algorithme de recherche, noyau e a e edu solveur, est constitu´ d’un processus de backtrack li´ ` une puissante technique de filtrage e eaissue du mod`le g´om´trique appropri´ au probl`me. Pour am´liorer les performances du solveur e e e e e eet le r´alisme des sc`nes engendr´es, O. Le Roux propose en outre un ensemble d’heuristiques e e edynamiques en rapport avec le placement d’objet.Manhattan est un solveur de contraintes optimis´ pour un probl`me tr`s pr´cis. Cette sp´cialisa- e e e e etion empˆche d’´tendre l’utilisation de cet outil ` des situations plus g´n´rales. Pour augmenter le e e a e e 11 Constraint Logic Programming on Finite Domains 68
  • Gauche : description d’une sc`ne sous forme de script. eDroite : projection orthographique d’une sc`ne r´sultat. Cette sc`ne contient 28 objets. Chaque objet peut prendre e e el’une des 4 orientations isoth´tiques possibles autour de l’axe vertical ; dans ce sch´ma, les triangles symbolisent e el’orientation.Temps de calcul : env. 10 secondes. Ce probl`me est largement sous-contraint. eLa mˆme sc`ne export´e en VRML avec un rendu type lancer de rayons. e e e Figure 1.27. Un exemple de sc`ne g´n´r´e par Manhattan [LRG03] e e e e 69
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e er´alisme des sc`nes et fournir une palette de possibilit´s beaucoup plus riche, il est n´cessaire de e e e edisposer d’un outil de g´n´ration plus g´n´rique. La contrepartie de cette g´n´ricit´ est souvent e e e e e e eune vitesse de r´solution des probl`mes plus lente. e eLe solveur de contraintes num´riques Admunsen Dans le cadre du projet DEM2 ONS, eO. Le Roux propose de remplacer le solveur Oranos par Admunsen [LR03]. Admunsen exploiteles possibilit´s de l’approche num´rique. En effet : e e– la richesse des possibilit´s offertes par la mod´lisation math´matique (´quations/in´quations) e e e e e permet d’aborder une grande vari´t´ de probl`mes. Utilis´ dans un espace de recherche continu, ee e e un solveur de contraintes num´riques se r´v`le par cons´quent un outil particuli`rement e e e e e g´n´rique. En s’appuyant sur les math´matiques li´es au placement des objets dans l’es- e e e e pace, il est par ailleurs possible de mod´liser des probl`mes de placement d’objets r´alistes e e e extrˆmement vari´s ; e e– une strat´gie de recherche bas´e sur un d´coupage r´cursif du probl`me (strat´gie de branch e e e e e e and prune : ´lagage) permet de r´soudre de fa¸on garantie un syst`me compos´ d’´quations e e c e e e et in´quations quelconques. Les progr`s effectu´s depuis la cr´ation d’Oranos [KGC97] dans le e e e e domaine de la r´solution des CSP num´riques permettent d’atteindre l’objectif de robustesse, e e tout en conservant des performances tr`s correctes (tant que le probl`me poss`de plusieurs e e e solutions).Bien que s’inspirant d’Oranos, Admunsen offre de multiples avantages en termes de fonctionna-lit´s et de performances. Voici les distinctions les plus significatives : e– Admunsen explore l’espace de recherche de mani`re exhaustive (` une pr´cision fix´e par e a e e l’utilisateur) : il s’affranchit ainsi du m´canisme de discr´tisation utilis´ par Oranos. Il utilise e e e pour cela un d´coupage du domaine guid´ par des heuristiques. Cette caract´ristique per- e e e met notamment d’aborder la r´solution de syst`mes d’´quations complexes (en particulier e e e non-lin´aires). Cette propri´t´ se r´v`le utile pour r´soudre, par exemple, des probl`mes de e ee e e e e construction d’objets ;– Admunsen abandonne l’algorithme de filtrage fort utilis´ dans Oranos au profit de techniques e de r´duction de l’espace de recherche plus efficaces ; e 70
  • Probl`me 2D comprenant 32 objets et 60 contraintes. eLe pavage indique les positions possibles pour l’origine du rep`re du nouvel objet. e Figure 1.28. Probl`me de placement bidimensionnel dans un environnement fig´ [LR03] e e– il contient plusieurs heuristiques dynamiques (comme ARCHiPLAN) adapt´es ` l’am´nage- e a e ment spatial. Ces heuristiques permettent ` la fois d’am´liorer le r´alisme des sc`nes g´n´r´es a e e e e ee et d’acc´l´rer consid´rablement la vitesse de g´n´ration des sc`nes dans le cas g´n´ral ; ee e e e e e e– enfin, Admunsen peut prendre en compte n’importe quelle expression math´matique sans e avoir recours au processus de d´composition du probl`me. Par rapport ` Oranos, cette ca- e e a ract´ristique ´vite l’introduction de variables suppl´mentaires (variables muettes) et limite e e e notablement le travail du concepteur qui n’a plus ` programmer des fonctions sp´cifiques de a e filtrage pour chaque type de contraintes.Concernant le placement r´aliste d’objets g´om´triques complexes dans un environnement vir- e e etuel, Admunsen int`gre une mod´lisation math´matique du probl`me bas´e sur l’utilisation de e e e e efonctions quadriques. Cette approche offre un vaste ´ventail de possibilit´s ` l’utilisateur (niveau e e ade d´tail important, contraintes de placement tr`s vari´es, etc.). e e eLa r´solution de probl`mes non-isoth´tiques en mod´lisation d´clarative constitue une nouveaut´ e e e e e eet une sp´cificit´ importante de notre projet DEM2 ONS. e eL’inefficacit´ de l’approche CSP pour des probl`mes de grande taille et difficiles, ainsi que leur e etendance ` cr´er des mondes trop ordonn´s a conduit ` l’´tude des m´thodes stochastiques. a e e a e e 71
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e1.7.3.2 M´taheuristiques eLes m´thodes stochastiques (ou heuristiques) ont ´t´ initialement ´tudi´es dans le cadre de e ee e el’optimisation combinatoire en Recherche Op´rationnelle et en Intelligence Artificielle. Si la ecompl´tude n’est pas essentielle, elles constituent une alternative int´ressante aux m´thodes e e ecompl`tes pour trouver des solutions aux probl`mes difficiles de grandes dimensions. Les premi`res e e eheuristiques ont ´t´ d´velopp´es pour r´soudre des probl`me sp´cifiques. Durant les quinze ee e e e e ederni`res ann´es, les m´thodes stochastiques ont sensiblement progress´ avec l’´mergence d’une e e e e enouvelle g´n´ration d’outils puissants et g´n´riques appel´s m´taheuristiques [Glo86]. On appelle e e e e e em´taheuristique une heuristique de plus haut niveau d’abstraction. eParmi les diff´rentes m´taheuristiques existantes, peu ont ´t´ ´tudi´es pour le probl`me d’am´- e e eee e e enagement d’int´rieurs : e– les algorithmes g´n´tiques [Hol75] bas´s sur le principe darwinien de l’´volution des esp`ces e e e e e ont ´t´ ´tudi´s pour la mod´lisation d´clarative dans [SRGL03, VMC+ 02], eee e e e– la recherche tabou a ´t´ propos´e par Glover et Hansen [Glo86, Han86] pour permettre aux ee e m´thodes de recherche locale de d´passer les optima locaux. Le chapitre 2 pr´sente l’utilisation e e e de la recherche tabou pour l’am´nagement d’int´rieurs. e eDEMONS-GA DEMONS-GA est un solveur de contraintes g´om´triques complexes bas´ sur e e eun algorithme g´n´tique. Principalement d´velopp´ par S. Sanchez [SRGL03], cet outil est d´di´ e e e e e ea` l’agencement d’objets tridimensionnels pour la construction de mondes virtuels r´alistes. eAlgorithme g´n´tique e e Les algorithmes g´n´tiques [Hol75] classiques reposent sur un codage e euniversel sous la forme de chaˆ ınes de bits (0/1) de longueur fixe ainsi que sur des op´rateurs ed’´volution g´n´tiques : la mutation, l’inversion et le croisement. Les individus cod´s de cette e e e emani`re sont appel´s chromosomes. Les op´rateurs agissent sur un ou plusieurs individus sans e e econnaissance de ce qu’ils manipulent (ni du probl`me ` resoudre). e aLes op´rateurs g´n´tiques sont compl´mentaires : l’un concentre, l’autre diversifie, alors que e e e ele croisement (mono ou multipoint) ´change des sous-chaˆ e ınes de bits sans cr´er de nouvelles evaleurs. La mutation qui consiste ` changer al´atoirement la valeur de certains bits permet de a ecr´er des variantes jusque-l` absentes dans la population. e a 72
  • Aujourd’hui consid´r´s comme appartenant aux m´thodes d’optimisation, les algorithmes g´n´tiques ee e e eont ´t´ initialement d´velopp´s comme un syst`me d’apprentissage g´n´ral, robuste et adaptatif, ee e e e e epouvant s’appliquer ` une large classe de probl`mes. Cette d´marche est ` l’origine de l’universa- a e e alit´ des algorithmes g´n´tiques : ni le codage, ni les op´rateurs d’´volution ne prennent en compte e e e e eles sp´cificit´s du probl`me. Cela a permis des analyses th´oriques conduisant ` la th´orie des e e e e a esch´mas, ` la caract´risation du rˆle et de l’importance du croisement ainsi qu’` des r´sultats e a e o a econcernant leur convergence.En pratique, alors que les cr´ateurs des algorithmes g´n´tiques en ont toujours vant´ l’univer- e e e esalit´, cette approche conduit ` des probl`mes d’efficacit´ si les choix concernant le codage des e a e eindividus ainsi que celui des op´rateurs sont r´alis´s sans prendre en compte les sp´cificit´s e e e e edu probl`me. La restriction ` des op´rateurs aveugles entraˆ un d´savantage lors d’une com- e a e ıne eparaison avec les m´thodes de voisinage. Comme en optimisation combinatoire classique, pour eam´liorer ces algorithmes, il est n´cessaire d’am´liorer les op´rateurs d’´volution al´atoires (croi- e e e e e esement, mutation) en tenant compte des sp´cificit´s du probl`me. e e e Figure 1.29. Image reconstruite ` partir des r´sultats obtenus avec le solveur DEMONS-GA a e [SRGL03]Sp´cificit´s de DEMONS-GA e e A partir de la d´finition des algorithmes g´n´tiques expos´e e e e eci-dessus, on peut donner l’acceptation des termes calqu´s sur la biog´n´tique et employ´s com- e e e emun´ment par les AG, relativement ` l’application d’am´nagement spatial : e a e 73
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e e 1. chromosome : repr´sente une s´rie d’objets ` placer dans la sc`ne selon une combinaison e e a e de contraintes ` leur appliquer ; a 2. g`ne : correspond ` un seul objet : e a – la position du point de r´f´rence de la boˆ englobante, ee ıte – l’orientation de la boˆ englobante par rapport ` la verticale, ıte a – les dimensions au sol de la boˆ englobante ; ıte 3. all`le : (position (x, y, z), orientation o, dimensions (dx, dy)) ; e 4. adaptation (fitness) d’un individu : ´valuation des g`nes par rapport aux contraintes puis e e ´valuation de la note finale de l’individu ; e 5. g´notype ou g´nome : e e – pour un objet ` placer : un chromosome ` un g`ne, a a e – pour 10 objets de mˆmes contraintes : un chromosome ` 10 g`nes, e a e – pour 10 objets de mˆmes contraintes et 3 objets avec d’autres contraintes : 1 chromosome e a ` 10 g`nes et 1 chromosome ` 3 g`nes. e a eLes probl`mes que le solveur peut traiter sont exprim´s sous forme de conjonctions ou de dis- e ejonctions de contraintes ´l´mentaires. Une mˆme contrainte peut ˆtre appliqu´e ` un ensemble ee e e e ad’objets et sera introduite dans le syst`me de r´solution grˆce ` un seul chromosome. e e a aUn chromosome a autant de g`nes que d’objets concern´s par la contrainte qu’il repr´sente. e e eUn individu, qui est une solution possible du probl`me, est constitu´ d’autant de chromosomes e eque de s´ries d’objets ` placer selon une combinaison de contraintes ´l´mentaires. e a eeR´sultats e Les r´sultats sont prometteurs et permettent de penser que les algorithmes g´n´ti- e e eques sont un bon moyen de r´soudre un ensemble important de contraintes sur un grand nombre ed’objets, ce qui actuellement impossible pour une m´thode compl`te (temps de calculs trop e eimportants et croissants de fa¸on exponentielle selon le nombre d’objets ` placer dans le cas c ad’un probl`me difficile). eLes temps de calculs, avec les techniques ´volutives, d´pendent essentiellement du nombre de e eg´n´rations n´cessaires pour obtenir un individu solution. Ils restent g´n´ralement sup´rieurs ` e e e e e e ala minute, mais pour les probl`mes envisag´s, les temps de placement avec des outils imp´ratifs e e eclassique sont au moins ´quivalents et souvent nettement sup´rieurs. e e 74
  • La convergence de l’algorithme peut ˆtre am´lior´e en rendant le solveur interactif : l’utilisateur e e epeut visualiser les r´sultats partiels en cours de r´solution pour l’orienter vers un choix de e esolutions possibles.Cette technique est par nature fortement parall´lisable, ce qui devrait entraˆ e ıner une nette dimi-nution des temps de calculs dans les cas les plus favorables (qui restent ` ´tudier). aeLes possibilit´s de combinaison de contraintes sont extrˆmement ´lev´es, rendant l’expression e e e ede propri´t´s particuli`rement riche pour le concepteur. ee e1.8 Conclusion et perspectives1.8.1 Niveaux de d´tail eLa gestion des niveaux de d´tail g´om´triques au sein d’un syst`me int´grant les diff´rentes ´tapes e e e e e e epr´sent´es dans cet ´tat de l’art peut ˆtre complexe. Les niveaux de d´tail logiques d´crits ici e e e e e ecorrespondent ` un ´chantillonnage discret du processus de g´n´ration d’une ville et donc ` des a e e e atransitions brutales. Ces transitions s’effectuant ` un niveau logique, il est possible de proposer ades solutions sp´cifiques ` chaque ´tape pour am´liorer la visualisation. Par exemple, pour les e a e eblocs et les parcelles, nous pouvons approcher leur rendu par l’affichage de poly`dres ayant pour ehauteur l’´l´vation maximale des bˆtiments les recouvrant. Pour les bˆtiments en eux-mˆmes, ee a a eil est possible d’afficher une simple texture ` grande distance, qui sera remplac´e par une boite a etextur´e, puis par un mod`le simplifi´ (sans d´tails g´om´triques), et enfin, par un ext´rieur de e e e e e e ebˆtiment d´taill´. Le niveau de d´tail g´om´trique le plus fin comprendra ´galement les objets a e e e e e epr´sents ` l’int´rieur du bˆtiment. e a e aLe recours aux niveaux de d´tail logiques devrait permettre de contrˆler au sein du graphe de e osc`ne, la complexit´ de la visualisation et donc la fluidit´ de l’affichage de la maquette virtuelle. e e e1.8.2 ConclusionLes travaux pr´sent´s dans cet ´tat de l’art montrent la diversit´ des approches existantes pour e e e ela g´n´ration de villes. Si Parish et M¨eller[PM01] pr´sentent un syst`me int´gr´ prenant en e e u e e e echarge les quatre premi`res ´tapes de g´n´ration, il n’existe pas actuellement d’outil proposant e e e eune solution pour l’int´gralit´ de la chaˆ de g´n´ration. Les m´thodes ´tudi´es provenant e e ıne e e e e ede diff´rents domaines de recherche, il est difficile de les comparer. Une mise en parall`le est e ed’autant plus ardue que l’on ne dispose pas d’outils de comparaison ou de sc`nes de r´f´rence. e ee 75
  • Chapitre 1. Etat de l’art relatif ` la g´n´ration d’environnements urbains a e eIl faut cependant pond´rer ce constat par le fait que l’´ventail des travaux pr´sent´s dans ce e e e echapitre semble montrer qu’il est possible d’obtenir des r´sultats pour l’ensemble des phases, tout een permettant de choisir la finesse souhait´e (ou le temps de g´n´ration maximum admissible). e e e1.8.3 PerspectivesCertaines des six ´tapes de g´n´ration pr´sent´es dans ce chapitre ont fait l’objet de recherche e e e e eplus approfondies que d’autres.L’´tape de g´n´ration des parcelles est actuellement g´r´e comme un probl`me purement g´o- e e e ee e em´trique, et il nous semble n´cessaire de se rapprocher davantage de la r´alit´ des codes urbains e e e eafin d’en am´liorer la qualit´. e eAu vu des diff´rentes m´thodes existantes pour chaque ´tape, il paraˆ envisageable de proposer e e e ıtune suite logicielle prenant en compte l’int´gralit´ du processus de g´n´ration d’une ville. Cette e e e esuite permettrait de g´n´rer automatiquement une ville, dont l’organisation r´pondrait ` des e e e acontraintes de diff´rents types (hydrographie, reliefs, densit´ de population) et dans laquelle e eil serait possible d’entrer dans tous les bˆtiments et d’interagir avec les objets meublant ces abˆtiments. aDans cet ´tat de l’art, nous nous sommes attach´ ` pr´senter des m´thodes manuelles, semi- e e a e eautomatiques et automatiques pour g´n´rer des maquettes num´riques de zones urbaines r´elles e e e eou imaginaires. Les chapitres suivant sont consacr´s aux diff´rents travaux que nous avons ef- e efectu´s dans certains de ces domaines. eDans un premier temps nous chercherons ` ´valuer l’int´rˆt des m´taheuristiques issues de la ae ee erecherche locale pour le probl`me d’ameublement d’int´rieurs. Dans un second temps, nous e epr´senterons notre m´thode de g´n´ration d’ext´rieurs de bˆtiments ainsi que les r´sultats que e e e e e a enous avons pu obtenir. 76
  • Chapitre 2 Placement automatique d’objetsCes derni`res ann´es ont vu croˆ l’int´rˆt port´ aux images de synth`se ainsi qu’aux syst`mes e e ıtre ee e e ede r´alit´ virtuelle. Alors que les champs d’application12 et le nombre d’utilisateurs (qu’ils e esoient infographistes, usager ou spectateur) de ces syst`mes ne cesse d’augmenter, les outils ede mod´lisation n’ont gu`re ´volu´. Les principaux outils de mod´lisation existants13 proposant e e e e ea e` pr´sent des versions d’apprentissage gratuites, tout utilisateur d’un ordinateur peut potentiel-lement devenir un cr´ateur d’images, voire de mondes virtuels. eLes logiciels actuels, d´velopp´s depuis plus de dix ans pour certains, sont parfaitement maˆ es e e ıtris´par les sp´cialistes du domaine et permettent de g´n´rer des sc`nes de grande qualit´. Malgr´ e e e e e eles tr`s bons r´sultats qu’ils permettent d’atteindre, il apparaˆ que ce sont ces logiciels qui e e ıtconstituent le facteur limitant pour le d´veloppement de la mod´lisation vers le grand public. e eBien que d´velopp´s par des ´quipes diff´rentes, ces logiciels pr´sentent la plupart du temps les e e e e emˆmes sp´cificit´s, que l’on pourrait consid´rer comme des d´fauts dans le cadre d’une utilisation e e e e epar le grand public :– les mod`les num´riques sous-jacents sont omnipr´sents, ce qui demande une connaissance e e e approfondie de ces mod`les de la part de l’utilisateur, e– les possibilit´s d’abstraction sont r´duites ` une portion congrue du logiciel, obligeant l’utili- e e a sateur ` raisonner en termes de primitives g´om´triques ou d’entit´s de tr`s bas niveau plutˆt a e e e e o qu’au niveau des objets qu’il manipule, 12 En voici un ´chantillon, bien loin d’ˆtre exhaustif : simulateurs (vol, conduite, m´t´orologique, etc), architec- e e e eture, audiovisuel, jeux vid´o. e 13 Citons 3DS-Max de Discreet, Maya de Alias/Wavefront ou encore LightWave de Newtek 77
  • Chapitre 2. Placement automatique d’objets– enfin, les interfaces ont souvent pour point commun de d´courager instantan´ment toute e e personne n’´tant pas tr`s motiv´e par l’apprentissage du logiciel. e e eTypiquement, lors de la mod´lisation d’une sc`ne, l’utilisateur part d’une image mentale de la e esc`ne et va tenter, par it´rations successives en ajoutant ou en modifiant des objets, de g´n´rer e e e ele mod`le tridimensionnel correspondant. L’image mentale est g´n´ralement assez floue, ce qui e e epermet ` plusieurs mod`les finaux d’y correspondre. Les modeleurs actuels ne permettent pas a ecette d´marche et imposent ` l’utilisateur de fixer tr`s tˆt des positions, des orientations, c’est e a e oa` dire des valeurs num´riques, alors que le concepteur raisonne plutˆt en terme d’objets. Pour e od´velopper des modeleurs tridimensionnels sachant accompagner le raisonnement humain, il est en´cessaire d’utiliser des approches telles que la mod´lisation par contrainte, la mod´lisation e e ed´clarative ou l’interaction multimodale tout en int´grant des lois physiques simples (gravit´ e e eprincipalement).Dans ce chapitre, nous envisageons l’am´nagement spatial d’une sc`ne tridimensionnelle par des e em´thodes d´claratives. Plus pr´cis´ment nous nous int´ressons au probl`me du canap´ [How68], e e e e e e equi peut ˆtre ´nonc´ ainsi [LR99] : e e e ´ Etant donn´ un espace de placement born´ (le salon), des objets (les meubles), et e e un ensemble de contraintes sur ces objets (la chaise devant la table, l’armoire contre le mur, la lampe sur la table, etc.) il faut d´terminer les emplacements, les orientations e et ´ventuellement les dimensions des objets dans cet espace pour satisfaire au mieux e ces contraintes.L’exemple du salon sera utilis´ dans la suite de ce chapitre pour illustrer certains fondements eth´oriques ainsi que le cadre de l’utilisation de notre modeleur. Pr´cisons ici que notre ´tude ne e e etraite pas de redimensionnement d’objets en fonction de contraintes.L’optimisation combinatoire14 est une voie d’´tudes importante en recherche op´rationnelle, en e emath´matiques discr`tes et en informatique. Typiquement, les probl`mes d’optimisation com- e e ebinatoire sont faciles ` d´finir mais difficiles ` r´soudre. En effet, la plupart de ces probl`mes a e a e eappartiennent ` la classe des probl`mes NP-difficiles15 et ne poss`dent donc pas ` ce jour de a e e asolution algorithmique efficace [GJ79]. 14 L’optimisation combinatoire consiste ` trouver le meilleur entre un nombre fini de choix. Autrement dit, aminimiser une fonction, avec contraintes, sur un ensemble fini (http ://www-leibniz.imag.fr/). 15 NP-difficile : probl`me au moins au moins aussi complexe que n’importe lequel des probl`mes NP. e e 78
  • De nombreuses m´thodes ont ´t´ d´velopp´es en Recherche Op´rationnelle (RO) et en Intelli- e ee e e egence Artificielle (IA) afin de r´soudre ces probl`mes. Ces m´thodes peuvent ˆtre class´es en e e e e edeux grandes cat´gories : e– les m´thodes exactes (compl`tes) capables de trouver la solution optimale si elle existe et de e e prouver l’inconsistance du probl`me dans le cas contraire, e– les m´thodes approch´es (incompl`tes) qui perdent la compl`tude afin de gagner en efficacit´. e e e e eCertaines m´thodes exactes (bas´es sur les CSP16 ; voir Annexe B) ont d´j` ´t´ ´tudi´es dans le e e eaeee ecadre de la mod´lisation d´clarative [Cha95, Kwa98], elles ont permis de trouver des r´sultats e e eoptimaux pour des probl`mes de taille raisonnable. eLes travaux r´alis´s dans notre ´quipe concernant les solveurs de contraintes [Kwa98, LR99, e e eLRG03, SRGL03] ont principalement port´ sur les m´thodes de r´solution compl`tes (sauf e e e e[SRGL03] qui a recours aux algorithmes g´n´tiques). L’int´rˆt principal de ces m´thodes est e e ee el’assurance de trouver toutes les solutions existantes, et de pouvoir garantir le cas ´ch´ant qu’il e en’en existe aucune. Principalement bas´es sur les CSP, elles h´ritent de leur principal d´faut : e e eelles sont de complexit´ th´orique exponentielle, comme tous les probl`mes NP-complets17 , ` e e e apartir d’un certain nombre de donn´es (ici des objets ` placer) la charge de calcul d´passe les e a ecapacit´s des machines existantes et futures. eLe but de cette ´tude est de proposer des r´ponses suppl´mentaires ` la question suivante : e e e aQuels solveurs de contraintes sont applicables ` la mod´lisation d´clarative ? Apr`s l’´tude des a e e e ealgorithmes g´n´tiques [SRGL03] et des CSP [Kwa98, LR99, LRG03], ce chapitre pr´sente nos e e erecherches sur les m´taheuristiques de voisinage. Dans ces travaux, nous avons souhait´ mettre e el’accent sur le cˆt´ interaction et ´volution incr´mentale. oe e eContribution et d´marche eDans son m´moire de th`se [LR03], O. Le Roux a pr´sent´ deux solveurs de contraintes, qui e e e ecapitalisent huit ann´es de recherche dans ce domaine au sein de notre ´quipe : e e– l’un, Admunsen, bas´ sur l’analyse d’intervalles comme Oranos [KGC97], l`ve la restriction e e isoth´tique d’Oranos mais conserve la limitation au placement de boˆ englobantes, e ıtes 16 CSP : Constraint Satisfaction Problem, probl`me de satisfaction de contrainte e 17 NP complet : non-d´terministe polynˆmial complet (le temps de calcul croˆ de fa¸on exponentielle avec le e o ıt cnombre de variables. 79
  • Chapitre 2. Placement automatique d’objets CSP Algorithme M´taheu- e g´n´tique e e ristique de voisinage Oranos Admunsen Manhattan [SRGL03] [Kwa98] [LRG03] [LRG03]garantie non (dis- oui oui non non cret)aspect na- non non oui oui ouiturelinteractivit´ non e non non non ouinature du (in)´quations (in)´quations g´om´trique g´om´trique g´om´trique e e e e e e e eprobl`me e non lin´aires non lin´aires e erestriction oui non oui non nonisoth´tique erestriction oui oui oui oui nonboˆ ıtesenglobantesincremental oui non (par- non (par- non oui tiel) tiel)Remarques param`tres e a ` fixerCible recherche recherche recherche recherche grand public Table 2.1. DEM2 ONS 80
  • – l’autre, Manhattan, est fond´ sur des contraintes g´om´triques (comme notre outil ou celui e e e d´velopp´ par S. Sanchez [SRGL03]), et conserve les limitations d’Oranos (boˆ englobantes e e ıtes isoth´tiques). eCes deux algorithmes sont une grande avanc´e en termes de robustesse et de performance mais, ede par leur conception, ils conservent des limitations dont notre outil entend s’affranchir :– non-interactivit´, e– restriction aux boˆ englobantes, ıtes– non utilisable par le grand public.La particularit´ de nos travaux est de d´velopper un modeleur d´claratif bas´ sur des techniques e e e enon encore appliqu´es ` ce domaine. Pour ce projet, nous avons fix´ les imp´ratifs suivants : e a e e– l’agencement doit ˆtre naturel (les objets plac´s plutˆt au centre de leurs domaines de place- e e o ment et non aux bords)18 ,– le but vis´ est l’interactivit´, e e– le placement des objets est non-isoth´tique19 , e– l’algorithme doit ˆtre incr´mental et stable d’une situation ` la suivante. e e aDans le but de satisfaire ces crit`res dont certains s’av`rent pour le moins antagonistes (ex : e einteractivit´ et optimisation), nous nous sommes tourn´s vers les m´taheuristiques d´riv´es de la e e e e erecherche locale. Les m´taheuristiques permettent de cr´er naturellement des sc`nes ´quilibr´es, e e e e eplus proche d’une sc`ne r´elle que celles g´n´r´es par un solveur bas´ sur les CSP. De plus, elles e e e ee epr´sentent l’avantage de pouvoir ˆtre facilement contraintes temporellement20 . e eIl existe une grand diversit´ parmi les modeleurs d´claratifs. Malgr´ cela, et ` cause de la relative e e e ajeunesse du domaine, de nombreuses voies de recherche n’ont pas encore ´t´ explor´es. Dans la ee ephase de g´n´ration, les solveurs de contraintes sont bas´s sur les CSP ou bien sur les algorithmes e e eg´n´tiques. Dans d’autres domaines, les probl`mes o` ces deux techniques sont utilis´es sont aussi e e e u e 18 Ce crit`re induit un probl`me d’optimisation non lin´aire non trivial. Par exemple : maximiser la distance e e eentre les objets de la sc´ne : Σi,j d(obji , objj ). e 19 Isoth´tique : parall`le ou perpendiculaire aux axes du syst`me de coordonn´es cart´siennes de notre monde e e e e evirtuel. 20 Si elles sont arrˆt´es ` un instant quelconque, elles donneront un r´sultat (mˆme s’il n’est pas optimal). ee a e e 81
  • Chapitre 2. Placement automatique d’objetstrait´s par le recours aux m´thodes issues de la recherche locale. Il ´tait donc naturel de nous e e eint´resser ` ces techniques dans le cadre de notre probl`me de placement tridimensionnel. e a eCe chapitre se d´compose en deux parties principales, suivies d’une conclusion pr´sentant les e eperspectives futures.La premi`re partie s’attache ` d´crire les diff´rentes m´thodes stochastiques existantes, pour la e a e e eplupart provenant de la recherche op´rationnelle. eDans la seconde partie, nous proposerons une pr´sentation des op´rateurs de Minkowski, ainsi e eque des d´tails de leur mise en œuvre, puis nous pr´senterons notre solution pour r´pondre aux e e ebesoins sp´cifiques de cette ´tude et expliciterons les choix effectu´s lors du d´veloppement de e e e enotre solveur.2.1 M´taheuristiques eLes m´thodes exactes rencontrent des difficult´s dans le cas de probl`mes de taille importante e e efortement contraints, car le temps de calcul n´cessaire pour trouver une solution peut croˆ de e ıtrefa¸on exponentielle avec la taille du probl`me. c eLes m´thodes approch´es constituent une alternative tr`s int´ressante pour trouver des solutions e e e eaux probl`mes difficiles si la compl´tude n’est pas primordiale. Les premi`res recherches autour e e edes m´thodes approch´es ont ´t´ initi´es pour r´pondre ` des probl`me sp´cifiques. e e ee e e a e eDepuis une quinzaine d’ann´es, les m´thodes approch´es ont progress´ notamment avec l’appari- e e e etion d’une nouvelle g´n´ration de m´thodes puissantes et g´n´rales, souvent appel´es m´taheuri- e e e e e e estiques [Glo86]. P. Galinier et M. Habib proposent la d´finition suivante pour une m´taheuristique e edans [HGH99] o` une synth`se des principales m´taheuristiques est ´galement r´alis´e, Jin-Kao u e e e e eHao, : Une m´taheuristique est constitu´e d’un ensemble de concepts fondamentaux et e e des m´canismes d’intensification et de diversification, qui permettent d’aider ` la e a conception de m´thodes heuristiques 21 pour un probl`me d’optimisation. e e 21 Une heuristique est une m´thode, con¸ue pour un probl`me d’optimisation donn´, qui produit une solution e c e enon n´cessairement optimale lorsqu’on lui fournit une instance d’un probl`me. e e Une m´taheuristique est d´finie de mani`re similaire, mais ` un niveau d’abstraction plus ´lev´ [HGH99]. e e e a e e 82
  • La diff´rence principale entre une m´taheuristique et une heuristique se situe sur le niveau e ed’abstraction o` elles op`rent, les premi`res agissant ` un plus haut niveau. Les m´taheuristiques u e e a epeuvent ˆtre class´es en trois familles : e e– les m´thodes de voisinage, citons le recuit simul´ et la recherche tabou, e e– les algorithmes ´volutifs comme les algorithmes g´n´tiques et les strat´gies d’´volution, e e e e e– enfin les m´thodes hybrides qui combinent des techniques issues des deux premi`res familles. e eAfin de replacer les m´taheuristiques dans leur contexte, nous pr´sentons dans ce chapitre un e eaper¸u des m´thodes de r´solution. Le lecteur souhaitant se documenter sur ce domaine et c e eobtenir une bibliographie compl`te peut se r´f´rer ` [HGH99]. e ee a2.1.1 PanoramaUn probl`me d’optimisation combinatoire est d´fini par un ensemble de variables. A chaque e evariable du probl`me est associ´ un ensemble de configurations22 S, un sous-ensemble X de S e erepr´sentant les configurations admissibles (r´alisables), et une fonction de coˆt ϕ (ou fonction e e uobjectif). R´soudre un tel probl`me consiste ` trouver une solution s* ∈X (solution optimale 23 ) e e aoptimisant la valeur de la fonction de coˆt ϕ. uUn tr`s grand nombre de m´thodes de r´solution ont ´t´ d´velopp´es en RO et en IA pour e e e ee e el’optimisation combinatoire et l’affectation sous contraintes. On peut classer sommairement cesm´thodes selon l’approche choisie pour la recherche de la solution : e 1. l’approche de construction, 2. l’approche de relaxation, 3. l’approche de voisinage, 4. l’approche d’´volution. eLes m´taheuristiques combinant principalement les approches de construction et de voisinage, enous allons ` pr´sent les d´tailler. a e e2.1.1.1 Approche de constructionProbablement la plus ancienne et encore tr`s r´pandue, l’approche de construction ´labore de e e efa¸on it´rative une configuration en affectant une valeur ` toutes les variables libres du probl`me. c e a e 22 Configuration : affectation de toutes les variables (les contraintes ne sont, a priori, pas satisfaites). 23 Solution optimale : configuration optimisant la valeur de la fonction de coˆt. u 83
  • Chapitre 2. Placement automatique d’objetsD´butant avec une configuration partielle vide, elle cherche ` l’´tendre en affectant ` chaque e a e a´tape une nouvelle variable libre. Elle effectue des choix (guid´s par des heuristiques) poure ed´terminer la prochaine variable ` instancier ainsi que la valeur associ´e. Les m´thodes de cette e a e eapproche diff`rent entre elles par ces heuristiques. La performance d’une de ces m´thodes d´pend e e eg´n´ralement de l’ad´quation des heuristiques retenues avec le probl`me. e e e eLes m´thodes gloutonnes sont des m´thodes de construction [BR64]. Une instanciation gloutonne e edes variables d’un probl`me consiste ` choisir ` chaque ´tape la valeur d’une variable sans e a a emodifier les affectations des variables pr´c´demment choisies. Ces m´thodes sont tr`s rapides e e e emais fournissent des r´sultats de qualit´ m´diocre, et notamment ne garantissent pas de retourner e e eun optimum mˆme local. eLes m´thodes ` retour arri`re (backtrack) [BR75] sont un autre exemple de m´thode de construc- e a e etion. On peut les caract´riser comme le parcours d’un arbre de recherche en profondeur d’abord, ecompl´t´ par une d´tection des erreurs (g´n´ralement l’ensemble des valeurs possibles pour la ee e e evariable courante est nul). Lorsque un ´chec est d´tect´, le processus effectue un retour arri`re e e e esur la derni`re variable instanci´e, offrant une instanciation alternative. Ces m´thodes sont le e e eplus souvent compl`tes et de complexit´ exponentielle. Afin de r´duire la complexit´, on utilise e e e edes techniques de filtrage permettant de d´tecter les ´checs. Ces techniques ont d´j` ´t´ ´tudi´es e e eae ee een mod´lisation d´clarative au sein de notre ´quipe ([LR03, Kwa98]). e e e2.1.1.2 Approche de voisinage, recherche localeLa recherche locale, appel´e aussi la descente [Flo56] ou l’am´lioration it´rative, est historique- e e ement une des m´thodes de voisinage. N´anmoins, ce terme tend ` d´signer aujourd’hui toutes e e a eles m´thodes de voisinage. Contrairement ` l’approche de construction, la recherche locale ne e amanipule que des configurations au cours de la recherche.Ces m´thodes sont bas´es sur la notion de voisinage. Nous allons d´finir cette notion ainsi que e e equelques notions associ´es : eUne m´thode typique de voisinage d´bute avec une configuration initiale (souvent un tirage e eal´atoire dans l’espace des configurations), puis r´alise un processus it´ratif qui consiste ` effec- e e e atuer un mouvement 24 choisi par le m´canisme d’exploration 25 en tenant compte de la fonction e 24 Mouvement : op´ration ´l´mentaire permettant de passer d’une configuration A ` une configuration A’ voisine e ee ade A. 25 M´canisme d’exploration : proc´dure qui pr´cise comment passer d’une configuration A ` une autre configu- e e e aration A’ appartenant au voisinage de A. 84
  • de coˆt. Ce processus s’arrˆte et retourne la meilleure configuration trouv´e une fois que la u e econdition d’arrˆt est satisfaite. La condition d’arrˆt peut porter sur le nombre d’essais effectu´s, e e esur une limite temporelle ou sur le degr´ de qualit´ de la meilleure configuration courante. Cette e eversatilit´ permet de contrˆler le temps de calcul. La qualit´ de la solution optimale trouv´e e o e es’am´liorant au cours du temps, l’utilisateur est libre d’arrˆter l’ex´cution au bout du temps e e echoisi (dans notre cas, temps interactif voire temps r´el, entre 0.04 et 0.2 secondes soit entre 5 eet 25 images par secondes). A* ←creerUneSolution() pour t = 1 ` MAXESSAIS faire a A ←newSol() pour m = 1 ` MAXMVTS faire a A’ ←choisirVoisin() δ ← ϕ(A’) - ϕ(A) si accepter(δ) alors A ← A’ fin pour si ϕ(A*) ¿ ϕ(A) alors A* ←A fin pour retourner A*, ϕ(A*) Algorithme 1. Recherche localeL’algorithme 1 pr´sente le d´roulement classique d’une m´thode de recherche locale. Les m´thodes e e e ede voisinage diff`rent essentiellement entre elles par le voisinage 26 utilis´ et la strat´gie de par- e e ecours de ce voisinage. La recherche locale ´tant ` la base des m´taheuristiques, nous pr´sentons e a e eici les heuristiques les plus r´pandues la concernant. eLe m´canisme d’exploration peut consister en une ´num´ration des voisins : le choix portera sur e e ele premier voisin am´liorant (au sens de la fonction de coˆt) strictement la configuration. Il est e u´galement possible d’´valuer tous les voisins afin de s´lectionner le meilleur ; cette heuristique este e eplus coˆteuse mais permet une ´volution plus rapide vers un optimum. Comme cette m´thode u e ene s’appuie que sur un voisinage restreint, elle ne retourne que des minima locaux.Comme les m´thodes gloutonnes, cette approche est simple ` mettre en œuvre et rapide ` e a al’ex´cution. La principale limitation provient du fait qu’elle retourne le premier optimum local e 26 Voisinage de A : ensemble des configurations A’ accessibles ` partir de A en r´alisant un seul mouvement. a e 85
  • Chapitre 2. Placement automatique d’objetsrencontr´. On peut contourner cette limitation en relan¸ant le processus apr`s avoir g´n´r´ une e c e e eenouvelle configuration al´atoire, ou bien en ´tendant le choix du meilleur voisin aux meilleurs e evoisins de mˆme valeur (lever la condition stricte d’am´lioration), afin de pouvoir se d´placer e e esur des plateaux 27 .Sur ce profil,et dans le cadre d’un probl`me de minimisation : 1 est un optimum global, 2, 3 et 4 sont des optima elocaux, 3 est un plateau, enfin les quatre points caract´ris´s se trouvent au fond d’une vall´e. e e e Figure 2.1. Exemples de vall´es et plateaux eLe terme plateau fait r´f´rence au profil d’une chaˆ de montagne. Un autre terme provenant ee ınede la mˆme origine est employ´ en optimisation combinatoire, c’est celui de vall´e 28 . La figure e e e2.1 permet de visualiser le choix de ces appellations.2.1.2 Diff´rents types de m´taheuristiques e e2.1.2.1 M´thodes de voisinage eRecuit simul´ (Simulated Annealing) e La m´thode du recuit simul´ [KGV83, MRR+ 53] e es’inspire d’un ph´nom`ne physique utilis´ en m´tallurgie, le recuit. Afin d’am´liorer la qualit´ e e e e e ed’un solide, la mati`re est port´ ` tr`s haute temp´rature, bien au-del` de la temp´rature de e e a e e a efusion, puis la mati`re est ramen´e par palier ` la temp´rature de solidification, en lui laissant e e a ele temps de parvenir ` un ´quilibre thermodynamique ` chaque ´tape. a e a eLe m´canisme de parcours associ´ ` cette m´thode consiste ` r´aliser un tirage al´atoire au sein e ea e a e edu voisinage de la configuration courante. Si la configuration trouv´e am´liore (au sens de la e efonction de coˆt) la configuration courante, le mouvement est effectu´. Sinon, le mouvement est u e 27 Plateau : ensemble de configurations de mˆme coˆt, connexes par voisinage. e u 28 Vall´e : dans un probl`me de minimisation, ce terme caract´rise un minimum (local ou global). e e e 86
  • −∆ϕeffectu´ avec une probabilit´ suivant la loi de probabilit´ d´finie par p(∆ϕ, T ) = e e e e e T o` T est uun param`tre de contrˆle (la temp´rature du syst`me) et ∆ϕ la diff´rence entre la configuration e o e e ecourante et la configuration tir´e al´atoirement au sens de la fonction de coˆt ϕ. e e uLe recuit simul´ peut ˆtre vu comme une version ´tendue de la m´thode de descente. L’am´lio- e e e e eration principale consiste en la possibilit´ (contrˆl´e) d’accepter des mouvements qui d´gradent e oe ela fonction de coˆt. Cette d´gradation est accept´e en fonction de son importance et de la u e etemp´rature du syst`me. La temp´rature est d´finie par une fonction d´croissante qui contrˆle e e e e e ol’´volution du syst`me. L’algorithme s’arrˆte lorsque aucune configuration n’a ´t´ accept´e depuis e e e ee eun certain temps, depuis un certain nombre d’it´rations, ou bien lorsque la temp´rature atteint e ela valeur de solidification (g´n´ralement z´ro). Il a ´t´ prouv´ qu’` la limite (i.e. si la temp´rature e e e ee e a edescend infiniment lentement) cette m´thode est compl`te. e eLes algorithmes d’acceptation avec seuil (Threshold algorithms) Ces algorithmes[DS90] sont des variantes du recuit simul´. Ils en diff`rent par la fonction d’acceptation de e ed´gradation. Pour le recuit simul´, ce choix est fait selon une loi de probabilit´. Pour cette e e em´thode, il est fait de fa¸on d´terministe. L’acceptation d’un mouvement est valid´e par la sa- e c e etisfaction de l’in´galit´ suivante : r(s, s ) < Tk . Dans le cas le plus simple, r(s, s ) = ∆ϕ et e ele seuil Tk a la mˆme fonction que la temp´rature dans le cas du recuit simul´. Il est initi´ ` e e e eaune valeur ´lev´e puis d´croˆ progressivement apr`s un certain nombre (variable) d’it´rations. e e e ıt e eLes seuils forment une suite d´croissante avec lim Tk → 0 afin de diminuer au cours du temps la epossibilit´ d’accepter une configuration qui d´grade la fonction de coˆt. e e uM´thodes de bruitage La m´thode de bruitage [CH93] s’applique ` des probl`mes dont les e e a econfigurations portent sur des domaines continus. Elle fait appel ` une notion de bruitage de la adonn´e qui est effectu´ en ajoutant ` chaque r´el de la donn´e initiale une composante calcul´e e e a e e ecomme le produit de trois termes : 1. une fonction al´atoire ` valeur sur l’intervalle [0, 1], e a 2. un param`tre qui contrˆle le niveau de bruit, e o 3. le plus grand des r´els concern´s, dans le but de normaliser le niveau de bruit par rapport e e a ` la donn´e. eA chaque ´tape, il est effectu´ une descente par rapport ` la donn´e bruit´e et le niveau de e e a e ebruit est progressivement diminu´. Il existe des variantes pour cette m´thode, par exemple il e e 87
  • Chapitre 2. Placement automatique d’objetsest possible d’effectuer ` chaque ´tape une descente sur la donn´e non bruit´e et de s´lectionner a e e e ele meilleur candidat. Il est ´galement envisageable de remplacer r´guli`rement la configuration e e ecourante par la meilleure trouv´e depuis l’initialisation de la m´thode. e eL’utilisation du bruitage permet ` la recherche de ne pas rester bloqu´e dans le voisinage d’un a eminimum local (possibilit´ de sortir d’une vall´e). e eRecherche tabou Cette m´thode [Glo86, Han86] fait appel ` des concepts et m´canismes e a eg´n´raux pour ex´cuter la recherche dans l’ensemble des configurations de mani`re plus intelli- e e e egente. Soit un probl`me ede placement en deux dimensions. L’image de gauche repr´sente l’´tape courante. Le carr´ en noir correspond ` e e e ala configuration courante. La caract´ristique choisie pour figurer dans la liste tabou est l’ordonn´e. e eLa figure de droite met en ´vidence les configurations interdites par la liste tabou. On constate que quatre econfigurations non test´es sont interdites. e Figure 2.2. Importance du choix de la caract´ristique tabou. eAlors que la m´thode du recuit simul´ tire al´atoirement une configuration dans le voisinage de la e e econfiguration courante, la recherche tabou examine un ´chantillon de configurations du voisinage e(potentiellement toutes) et r´alise le mouvement en direction de la meilleure configuration de cet e´chantillon. Ce mouvement peut conduire ` d´grader la fonction de coˆt, ce qui permet de nee a e upas stopper la recherche sur le premier optimum local rencontr´. N´anmoins, cette heuristique e ede choix est extrˆmement vuln´rable aux cycles : si deux configurations voisines forment un e eplateau, la recherche ne sortira jamais de ce cycle de longueur 2. Pour lever cette limitation, il a´t´ introduit le concept de liste tabou qui m´morise les k derni`res configurations visit´es par laee e e erecherche. Comme l’exprime le terme tabou, ces configurations ne pourront pas ˆtre s´lectionn´es e e ea` nouveau au cours de la recherche. Cette liste permet de s’affranchir des cycles de longueurinf´rieure ou ´gale ` k. La valeur de k doit ˆtre choisie en consid´rant le probl`me ` r´soudre, elle e e a e e e a epeut aussi ˆtre modifi´e dynamiquement durant la recherche. Comme pour le recuit simul´, dans e e ele cas limite (i.e. k tend vers le cardinal de l’espace de recherche), la recherche tabou s’apparentea` une m´thode compl`te. e e 88
  • Dans un probl`me de placement g´rant un millier d’objets, chacun d´fini par six degr´s de libert´ e e e e e(trois pour le positionnement, trois pour l’orientation), la sauvegarde dans la liste tabou peuttr`s rapidement ˆtre trop coˆteuse en espace m´moire et en temps de calcul. Pour ´viter ce e e u e eprobl`me, la liste tabou ne stocke pas les configurations compl`tes mais des caract´ristiques de e e eces configurations. Concr`tement, apr`s qu’un mouvement ait ´t´ effectu´, on stocke la variable e e ee emodifi´e par ce mouvement, ainsi que son ancienne valeur. Ce couple est m´moris´, et devient e e edonc interdit pour les k prochains mouvements. L’ancienne configuration ne pourra plus ˆtre evisit´e, ainsi que toutes les configurations qui affectent la valeur tabou ` la variable tabou. e aNous avons vu (cf. Figure 2.2) que la sauvegarde des caract´ristiques interdisait de facto l’acc`s e ea` certaines configurations non test´es. Pour assouplir cette restriction, il a ´t´ d´velopp´ un e ee e em´canisme particulier, l’aspiration qui permet de lever un statut tabou sans introduire un risque ede cycle dans la recherche. La mani`re la plus simple consiste ` lever le statut tabou si le mou- e avement conduit ` une configuration de qualit´ sup´rieure ` la meilleure configuration courante a e e a(au sens de la fonction de coˆt). uIl a ´t´ introduit d’autres techniques pour am´liorer la recherche tabou, citons : ee e– l’intensification qui consiste ` m´moriser les crit`res communs aux meilleures configurations a e e pour orienter la recherche pr´f´rentiellement dans leurs directions, ee– la diversification, qui, au contraire, tend ` diriger la recherche vers des zones inexplor´es de a e l’espace des configurations.La recherche tabou peut ˆtre caract´ris´e par une strat´gie agressive de recherche (par la s´lection e e e e ed’un des meilleurs mouvements), ainsi que par les nombreuses techniques d´velopp´es pour e eam´liorer la recherche. Cette diversit´ a un prix, qui est l’obligation d’adapter la recherche au e eprobl`me ` r´soudre. e a e2.1.2.2 Algorithmes ´volutifs eDans cette cat´gorie de m´taheuristiques, on retrouve tous les algorithmes bas´s sur le pro- e e ecessus naturel (darwiniste) d’´volution du vivant. Un algorithme ´volutif typique r´unit trois e e ecomposants : 1. une population qui regroupe plusieurs individus (en optimisation combinatoire classique : configuration du probl`me), e 2. une fonction d’adaptation (fitness) qui ´value la performance d’un individu par rapport e au milieu (en optimisation combinatoire classique : fonction de coˆt), u 89
  • Chapitre 2. Placement automatique d’objets 3. un m´canisme d’´volution, compos´ de plusieurs op´rateurs de modification et de s´lection. e e e e eTypiquement, un algorithme ´volutif d´bute avec une population (g´n´ralement obtenue de fa¸on e e e e cal´atoire), puis r´p`te la boucle suivante (le terme employ´ est g´n´ration ` la place de celui e e e e e e ahabituel d’it´ration) : e 1. ´valuer chaque individu de la population, e 2. s´lectionner des individus, e 3. produire des nouveaux individus par recombinaison des individus s´lectionn´s. e eLes diff´rences principales entre les algorithmes ´volutifs et les m´thodes classiques d’optimisa- e e etion combinatoire sont les phases de s´lection et d’´volution. La s´lection permet de choisir les e e emeilleurs individus et c’est ` partir de ceux-ci que l’on construit la g´n´ration suivante. On peut a e ela rapprocher du m´canisme d’intensification de la recherche tabou appliqu´ de fa¸on massive- e e cment parall`le. L’´volution repose sur deux principaux op´rateurs, la recombinaison qui combine e e eplusieurs individus parents pour cr´er des individus enfants pour la g´n´ration suivante, et la e e emutation qui alt`re l´g`rement certains individus. e e eLes algorithmes ´volutifs les plus souvent rencontr´s sont les algorithmes g´n´tiques (pr´sent´s e e e e e een 1.7.3.2.0) et les strat´gies d’´volution [Rec73]. e e2.1.2.3 M´thodes hybrides eLes m´thodes hybrides combinent des m´thodes issues de la recherche locale classique (descente), e edes m´taheuristiques locales et des algorithmes d’´volution. e eAlgorithmes m´m´tiques La m´m´tique est l’´tude des m`mes, autrement dit d’entit´s e e e e e e er´plicatives d’information. Le terme de m´m´tique a ´t´ propos´ pour la premi`re fois par e e e ee e eRichard Dawkins dans son œuvre The Selfish Gene (1976), et provient d’une association entreg`ne et mimesis (du grec ”imitation”). eCette approche [Mos89] combine la puissance de recherche des m´thodes de voisinage avec celle ede recombinaison des algorithmes ´volutifs. Un algorithme m´m´tique utilise des m´thodes de e e e evoisinage sur les individus d’une population pendant un certain nombre d’it´rations ou jusqu’` la e ad´couverte d’un ensemble d’optima locaux, puis utilise un m´canisme de recombinaison adapt´ e e eau probl`me pour cr´er une nouvelle population. e e 90
  • Cette m´thode, bien que tr`s puissante, souffre de d´fauts r´dhibitoires : les temps de calcul e e e epeuvent devenir prohibitifs lors de l’utilisation de population de grande taille, ce probl`me epouvant ˆtre contourn´ par l’utilisation de machines distribu´es qui sont bien adapt´es aux e e e ealgorithmes m´m´tiques. e eGRASP (Greedy Randomized Adaptive Search Procedure) Cette m´thode hybride e[FR89] cherche ` combiner les avantages des heuristiques gloutonnes, de la recherche al´atoire a eet des m´thodes de voisinage. Un algorithme GRASP peut ˆtre d´fini comme une boucle com- e e eportant deux ´tapes : e 1. la construction d’une configuration de fa¸on it´rative (cf. 2.1.1.1), en choisissant ` chaque c e a ´tape la valeur ` instancier dans le voisinage de fa¸on al´atoire, e a c e 2. une descente (cf. 2.1.1.2) est effectu´e pour am´liorer cette configuration. e eCes deux ´tapes sont r´p´t´es jusqu’` satisfaction de la condition d’arrˆt. Une fois cette condi- e e ee a etion satisfaite, la proc´dure retourne la meilleure configuration trouv´e. Les param`tres de cette e e em´thode sont la m´thode de d´termination du voisinage ainsi que le nombre d’it´rations auto- e e e eris´es. e2.1.3 Analyse des m´taheuristiques eApr`s avoir pr´sent´ les diff´rentes m´thodes existantes bas´es sur les m´taheuristiques, nous e e e e e e enous appliquerons ` pr´sent ` les analyser. a e a2.1.3.1 Exploitation et explorationLes notions compl´mentaires d’exploitation et d’exploration ont ´t´ introduites par les inventeurs e eedes algorithmes g´n´tiques. L’exploitation consiste ` rechercher plus particuli`rement dans les e e a ezones de recherches d´j` d´finies (strat´gie de recherche en profondeur d’abord), tandis que ea e el’exploration r´alise un survol de l’ensemble de l’espace des configurations afin de d´couvrir des e ezones prometteuses (strat´gie de recherche en largeur d’abord). Ces deux notions ne sont pas erestreintes aux algorithmes g´n´tiques mais concernent l’ensemble des m´thodes de recherche et e e epeuvent servir ` caract´riser ces m´thodes. a e eExploitation Les m´thodes de voisinage utilisent la fonction de voisinage afin de diriger ra- epidement la recherche vers des configurations de qualit´. En cherchant les candidats potentiels e 91
  • Chapitre 2. Placement automatique d’objetsuniquement ` faible distance des meilleures configurations retenues, elles r´alisent de fait une a erecherche ax´e sur l’exploitation. eLes algorithmes g´n´tiques font reposer la notion d’exploitation sur le m´canisme de croisement e e ealors que les m´thodes de voisinage utilisent la s´lection des meilleurs mouvements. Certaines e em´thodes ont, par ailleurs, d´velopp´ des m´canismes de renforcement de cette exploitation e e e ecomme, par exemple, l’intensification pour la recherche tabou.Une utilisation exclusive du principe d’exploitation ne suffit pas ` donner des r´sultats satisfai- a esants. En effet, ce principe ne conduit qu’` des optima locaux, qui peuvent se r´v´ler ˆtre des a e e esolutions m´diocres. Ceci est dˆ au fait qu’une infime partie de l’espace des configurations a ´t´ e u eeexplor´e durant la recherche. La solution pour s’affranchir de ce probl`me consiste ` mettre en e e aplace des m´canismes correctifs, utilisant la notion d’exploration. eExploration La premi`re strat´gie envisageable est la relance. Elle consiste ` recommencer e e aenti`rement le processus de recherche (en gardant la meilleure configuration obtenue pr´c´dem- e e ement) ` partir d’un nouveau tirage al´atoire dans l’espace des configurations. a eLa seconde strat´gie, qui est aussi simple ` mettre en œuvre que la pr´c´dente, consiste ` e a e e aintroduire des perturbations al´atoires au cours de la recherche. Cette strat´gie a donn´ naissance e e ea` la notion de mutation pour les algorithmes ´volutifs, ainsi qu’` la m´thode qui g´n`re un voisin e a e e eal´atoire pour le recuit simul´. Dans les deux cas, la configuration courante est perturb´e de e e emani`re al´atoire et un m´canisme d’acceptation est appliqu´ a posteriori. e e e eLa troisi`me strat´gie consiste ` m´moriser les caract´ristiques des r´gions visit´es et ` inciter e e a e e e e ala recherche ` s’´loigner de ces zones. On retrouve cette strat´gie dans la recherche tabou par la a e emise en œuvre de la liste tabou (court terme) et de la diversification (long terme). On peut re-marquer que cette strat´gie est plus complexe ` implanter que les pr´c´dentes et qu’elle n´cessite e a e e el’utilisation d’une m´moire. eRecombinaison Cette notion compl`te (voire combine) les deux pr´c´dentes afin d’essayer e e ed’atteindre des zones non encore explor´es. Ces m´thodes permettent de commencer la recherche e edans une nouvelle r´gion tout en ayant d´j` des individus satisfaisants au sens de la fonction de e eacoˆt. Initialement issue des algorithmes g´n´tiques (le croisement), elle consiste ` recombiner u e e aplusieurs configurations int´ressantes pour en cr´er de nouvelles. e e 92
  • Cette notion est en fait la base principale des algorithmes hybrides qui allient une m´thode de evoisinage et la recombinaison. On retrouve ces deux principes ´galement dans le recuit simul´ e eo` le contrˆle s’effectue en r´glant la temp´rature. u o e e2.1.3.2 Sp´cificit´ contre g´n´ralit´ e e e e eHistoriquement, les premiers algorithmes d´velopp´s l’ont ´t´ pour un probl`me sp´cifique. Les e e ee e em´taheuristiques ´tant con¸ues ` un niveau d’abstraction plus ´lev´, elles peuvent ˆtre adapt´es e e c a e e e ea` des classes tr`s larges de probl`mes. Pour expliquer l’efficacit´ d’un algorithme sp´cifique, e e e el’argument le plus souvent avanc´ est la prise en compte des caract´ristiques du probl`me. e e eUn des avantages le plus souvent cit´ par les pr´curseurs des algorithmes g´n´tiques est leur e e e eg´n´ricit´. Si le comportement global de l’algorithme est bien le mˆme quel que soit le probl`me, e e e e ece n’est pas le cas du codage des individus qui d´termine aussi la fonction de croisement ainsi que ela d´finition de la fonction d’adaptation. Cette n´cessit´ d’int´grer les sp´cificit´s du probl`me e e e e e e eest ´galement pr´sente pour les autres m´taheuristiques. e e eLa fa¸on la plus imm´diate d’am´liorer les performances d’une m´taheuristique pour un probl`me c e e e edonn´ est d’adapter ses op´rateurs en fonction des connaissances sp´cifiques que poss`de le e e e econcepteur sur ce probl`me. Cette adaptation (si les connaissances n´cessaires sont dispo- e enibles) demande un effort de conception pour sp´cialiser l’op´rateur. Ainsi, la recherche tabou e ese sp´cialise selon le choix des caract´ristiques sauvegard´es dans la liste tabou. Les algorithmes e e eg´n´tiques, autrefois parangons de la g´n´ricit´, proposent ` pr´sent des op´rateurs sp´cifiques e e e e e a e e eainsi que des codages des individus ne reposant plus uniquement sur les chaˆ ınes de bits. D’unautre cˆt´, le recuit simul´ est un exemple de m´thode facile ` adapter ` un probl`me et ne oe e e a a edemandant pas de connaissances sp´cifiques. e2.1.3.3 Choisir une m´taheuristique eDans [HGH99], J. Hao, P. Galinier et M. Habib proposent une grille permettant de choisir unem´taheuristique en fonction d’un probl`me. e e 93
  • Chapitre 2. Placement automatique d’objets A.I. R.S. R.T. A.G. A.H. Simplicit´ e 0 - - - – Facilit´ d’adaptation e 0 0 - - - Connaissance 0 0 + + + Qualit´ e 0 + ++ + ++(+++) Rapidit´ e 0 - - – – Table 2.2. Comparaison g´n´rale des principales m´taheuristiques [HGH99] e e eDans le tableau 2.2, les six m´taheuristiques compar´es sont les suivantes : e eA.I. : am´lioration it´rative (descente) avec relance, e eR.S. : recuit simul´, eR.T. : recherche tabou,A.G. : algorithme g´n´tique adapt´, e e eA.H. : algorithme hybride.La m´thode d’am´lioration it´rative est utilis´e comme point de r´f´rence pour l’ensemble des e e e e eem´thodes : les signes -, 0, + indiquent des performances respectivement inf´rieures, ´gales ou e e esup´rieures ` celles obtenues par l’am´lioration it´rative. e a e eLes crit`res de comparaison retenus sont les suivants : e– simplicit´ de la m´taheuristique, i.e. simplicit´ de la m´thode elle-mˆme, e e e e e– facilit´ d’adaptation au probl`me, e e– possibilit´ d’int´grer des connaissances sp´cifiques du probl`me, e e e e– qualit´ des meilleures configurations trouv´es, e e– rapidit´, i.e. le temps de calcul n´cessaire pour trouver une telle configuration (la valeur entre e e parenth`ses correspond ` une architecture distribu´e). e a e2.1.3.4 DiscussionLes m´taheuristiques partagent un certain nombre d’avantages, parmi lesquels nous pouvons eciter :– Une mise en œuvre facilit´e par le fait qu’il suffit d’avoir une fonction d’´valuation (par e e opposition aux algorithmes de parcours d’arbre et de filtrage n´cessaire pour l’approche CSP). e 94
  • – La possibilit´ de limiter le temps d’ex´cution ce qui permet d’envisager des syst`mes interac- e e e tifs. En effet il est possible d’obtenir tr`s vite une configuration du probl`me, qui ne sera pas e e forcement une solution. Plus il sera laiss´ de temps ` l’algorithme, meilleure sera la solution e a (sauf si la solution est d´j` optimale). ea– La capacit´ de traiter de tr`s vastes domaines de recherche. Une fois de plus, c’est surtout par e e opposition aux CSP que cet avantage prend tout son sens.– Enfin, ils sont tr`s facilement parall´lisables. Par exemple, dans le cas de la Recherche Tabou, e e seule la liste tabou est ` partager entre les diff´rents processus. Ce sont le peu d’information ` a e a partager et la possibilit´ de lancer des nouvelles recherches ` partir d’un ´tat initial diff´rent e a e e qui rendent la parall´lisation ais´e. e eBien entendu, les m´taheuristiques souffrent aussi de certains d´fauts compar´es ` l’approche e e e aCSP :– Une solution optimale au probl`me peut ne pas ˆtre trouv´e. Ceci d´coule de l’aspect stochas- e e e e tique de ces m´thodes. e– L’inconsistance d’un probl`me ne peut pas ˆtre prouv´e. Contrairement ` l’approche CSP e e e a qui ´limine de grands pans du domaine de recherche grˆce au filtrage, les m´taheuristiques e a e ne parcourent pas l’ensemble de ce domaine. Mˆme si une liste tabou de longueur infinie e pourrait permettre de tester l’inconsistance d’un probl`me, il ne s’agirait plus r´ellement e e d’une m´taheuristique mais plutˆt d’une m´thode backtrack particuli`rement inefficace. e o e e– Les meilleurs r´sultats (en termes de fonction d’´valuation ou en temps de recherche) sont e e atteints avec des param`tres id´aux qui sont g´n´ralement trouv´s de mani`re empirique. e e e e e e2.1.3.5 Ad´quation ` notre probl`me e a eLes m´taheuristiques sont particuli`rement adapt´es ` notre probl`me de r´solution de contraintes. e e e a e eEn effet celui-ci pr´sente : e– Un domaine de recherche tr`s vaste, chaque objet pouvant avoir jusqu’` neuf degr´s de libert´. e a e e– Certaines contraintes, notamment la plus utilis´e qui est la contrainte de non-intersection, ne e sont pas diff´rentiables. e– Il est pr´f´rable que les objets de la sc`ne ne soient pas dispos´s de fa¸on trop r´guli`re. ee e e c e e Contrairement aux syst`mes d´terministes, les approches stochastiques tendent ` cr´er des e e a e sc`nes plus r´alistes car moins ordonn´es. e e e 95
  • Chapitre 2. Placement automatique d’objets– Certaines de nos descriptions de probl`mes pr´sentent des graphes de contraintes cycliques, e e toujours d´licats ` traiter. e aNous allons maintenant pr´senter notre modeleur d´claratif, capable de traiter des sc`nes com- e e eplexes en un temps interactif (entre 5 et 25 images par seconde). Le recours aux m´taheuristiques enous permet de contrˆler la dur´e de la phase de g´n´ration. Ainsi, notre modeleur peut s’adap- o e e eter ` la plateforme d’ex´cution et aux attentes de l’utilisateur en choisissant le nombre d’essais a een fonction des capacit´s de la machine. Un tel contrˆle nous permet de cr´er des sc`nes avec e o e eplusieurs centaines d’objets et ceci de fa¸on interactive. c2.2 Mise en œuvreJusqu’` pr´sent, les solveurs de contraintes utilis´s en mod´lisation d´clarative ont souffert de a e e e eleur limitation aux objets isoth´tiques et au placement d’objets bas´s sur leurs boˆ e e ıtes englo-bantes. Notre approche nous permet de prendre en compte la g´om´trie des objets de mani`re e e eplus satisfaisante en utilisant l’enveloppe convexe de leur projection verticale au sol.Pour illustrer les travaux d´crits dans ce chapitre, nous avons d´velopp´ un modeleur d´claratif e e e einteractif : DEMONS LE. Ceci nous a permis de tester l’interactivit´ r´elle de notre approche. e eDans un premier temps, nous pr´sentons notre mise en œuvre des op´rateurs de Minkowski sur e eles polygones convexes qui permettent ` notre modeleur de mieux prendre en compte la g´om´trie a e edes objets de la sc`ne. Ensuite, nous d´crivons le mod`le qui int`gre la prise en compte de ces e e e eop´rateurs ainsi que les domaines et objets manipul´s. Enfin, nous d´taillons les contraintes e e eutilis´es ainsi que leur mise en œuvre dans le modeleur. e2.2.1 Op´rateurs de Minkowski pour les contraintes g´om´triques e e eDepuis le d´but du d´veloppement de DEM2 ONS, les solveurs de contraintes utilis´s, et donc e e ele modeleur en lui-mˆme, ont ´t´ restreints au placement de boˆ englobantes (le plus souvent e ee ıtesisoth´tiques). Cette restriction fait que DEM2 ONS r´alise essentiellement un placement en deux e edimensions (les objets peuvent toutefois ˆtre plac´s les uns sur les autres). Le placement en deux e edimensions peut ˆtre vu comme un cas particulier des probl`mes de planification de trajectoire 29 , e e 29 Motion planning. 96
  • rencontr´s en robotique. Ce cheminement nous a conduit ` ´tudier les techniques utilis´es dans e ae ece domaine.Dans un probl`me de placement en deux dimensions, les diff´rents objets du monde peuvent ˆtre e e erepr´sent´s par des polygones. Cette repr´sentation conduit ` consid´rer ce probl`me comme e e e a e eune recherche d’intersection ou d’inclusion entre polygones. Parmi les outils math´matiques eexistants pour ces recherches, les plus utilis´s en planification de trajectoire sont ceux bas´s sur e eles op´rateurs de Minkowski. eLes sommes et diff´rences de Minkowski [Min97] sont utilis´es dans notre outil afin de calculer e ele degr´ de satisfaction des contraintes entre les objets. Ces objets sont plac´s actuellement en e emanipulant le contour qu’ils projettent verticalement sur le sol. Nous allons ` pr´sent nous atta- a echer ` d´finir les op´rateurs de Minkowski, puis ` pr´senter leur mise en œuvre au sein de notre a e e a eoutil.Les d´finitions suivantes sont issues de [Gho90]. e2.2.1.1 Somme de MinkowskiLa somme de Minkowski peut ˆtre vue comme l’op´rateur addition dans l’espace des polygones. e eElle est g´n´ralement d´crite comme une croissance ou une dilatation30 d’un polygone par un e e eautre polygone (cf. figure 2.3).Somme de Minkowski Soit B et T deux ensembles de points de Rn . La somme de Minkowski S de B et de T est obtenue en positionnant B sur chaque point de T , c’est ` dire en ajoutant a vectoriellement tout les points de B ` ceux de T . Nous notons ceci par : a S = B ⊕ T = { b + t : b ∈ B, t ∈ T }avec ⊕ repr´sentant l’op´rateur somme de Minkowski. e eSi on note Ap , le r´sultat de la transformation de l’ensemble A par le vecteur p, et si l’on note eb et t des points inclus dans B et T on peut noter la somme de Minkowski ainsi : S = T ⊕B = B ⊕T = Btp = Tbp p∈T p∈BDans [O’R98], J. O’Rourke ´nonce ce th´or`me qui relie la somme de Minkowski ` notre probl`me e e e a ede placement : 30 Elle est d’ailleurs utilis´e sous ces termes en analyse d’images. e 97
  • Chapitre 2. Placement automatique d’objets Soit B, un polygone ` placer et r ∈ B son point de r´f´rence. Soit P , un polygone a ee obstacle. Alors le polygone P + = P ⊕ −B est l’ensemble des points interdits ` r a dans le sens o` : u 1. Si B est translat´ de fa¸on ` ce que r soit strictement int´rieur ` P + , alors B e c a e a chevauche P . 2. Si B est translat´ de fa¸on ` ce que r repose sur l’enveloppe de P + , alors P et e c a B se touchent. 3. Si B est translat´ de fa¸on ` ce que r soit strictement ext´rieur ` P + , alors P e c a e a et B sont disjoints.Ici, −R repr´sente le sym´trique de B par rapport ` r. e e aLe triangle B repr´sente le contour de l’objet que l’on souhaite placer. eLa croix int´rieure ` ce triangle en est le point de r´f´rence. e a eeLe triangle −B est le sym´trique de B par rapport ` son point de r´f´rence. e a eeLe rectangle P repr´sente la forme que ne doit pas chevaucher le triangle. eLe pentagone P + est le r´sultat de la somme de Minkowski de P et −B ePour que les deux formes soient disjointes, il suffit de placer le point de r´f´rence ` l’ext´rieur de ce pentagone. ee a e Figure 2.3. Somme de Minkowski 98
  • 2.2.1.2 Soustraction de MinkowskiLa soustraction de Minkowski est l’op´ration inverse de la somme. Elle est g´n´ralement d´crite e e e ecomme un op´rateur d’´rosion ou d’effacement (cf. figure 2.4). e eSoustraction de Minkowski Soit B et T deux ensembles de points de Rn . La soustraction de Minkowski S de B par T est d´finie par : e S = B T = Btp p∈T ¯avec T correspondant ` l’ensemble sym´trique de T par rapport ` l’origine du rep`re. a e a eLe rectangle (A) ` l’int´rieur du pentagone (S) repr´sente la soustraction de Minkowski du pentagone plein (S) a e epar le triangle (-B).Si le point de r´f´rence du triangle (B) est ` l’int´rieur du contour du rectangle (A), alors le triangle (B) est inclus ee a edans le pentagone (S). Figure 2.4. Soustraction de Minkowski2.2.2 Domaines et objetsLe domaine de placement, au sein duquel de nouveaux objets sont ajout´s, est un espace tridi- emensionnel limit´. Cet espace est bas´ sur une forme polygonale (pour le contour de la zone) et e eune hauteur. Lorsque aucune contrainte explicite n’est d´finie, ce polygone repr´sente le sol du e emonde ainsi que la surface de support par d´faut. Si une contrainte plus restrictive est d´finie, e ele domaine est plus sp´cifique. Par exemple, dans le cas de la contrainte Pos´ sur, la surface de e esupport doit ˆtre l’une des surfaces de support de l’objet site. e 99
  • Chapitre 2. Placement automatique d’objetsLes objets peuvent prendre n’importe quelle orientation. Actuellement DEMONS LE peut uni-quement g´rer les rotations autour de l’axe vertical, c’est une cons´quence de l’absence de moteur e ephysique. Lorsqu’un objet pr´sente des sym´tries autour de l’axe vertical, le domaine associ´ ` e e eal’angle de rotation est r´duit en fonction (par exemple, dans le cas d’une table carr´e, ce domaine e esera r´duit ` des valeurs appartenant ` [0° ; 90°[). e a a Figure 2.5. Occupation au sol : rectangle englobant (gauche) et enveloppe convexe (droite)Dans sa version actuelle, DEMONS LE place les objets en utilisant l’enveloppe convexe dela projection orthographique au sol des sommets de l’objet. La Figure 2.5 pr´sente la surface egagn´e en utilisant cette approche en lieu et place des rectangles englobants pr´c´demment e e eutilis´s. Dans le cas le plus favorable (lorsque que cette projection a une forme triangulaire), le erecours ` l’enveloppe convexe permet d’utiliser moiti´ moins de place que l’approche bas´e sur a e ele rectangle englobant.Bien que cette technique permette des r´sultats plus pr´cis que l’approche bas´e sur les boˆ e e e ıtesenglobantes, elle ne reste qu’une ´tape avant l’utilisation de la v´ritable forme tridimensionnelle e edes objets.2.2.3 ContraintesLes contraintes pr´sentes au sein de notre modeleur sont bas´es sur celles propos´es par Philippe e e eCharman dans son m´moire de th`se [Cha95]. Nous utilisons des contraintes binaires, qui mettent e een relation seulement deux objets. Nos contraintes d´crivent un probl`me local de placement e eque le solveur peut facilement traiter afin de trouver une solution satisfaisante. N´anmoins, de etelles contraintes peuvent ˆtre ais´ment combin´es dans le but de cr´er des propri´t´s de plus e e e e eehaut niveau. Par exemple, placer cinq objets A autour d’un objet B et tourn´vers B. eToutes nos contraintes utilisent la terminologie de Vandeloise [Van86] dans laquelle l’objet cibleest ` placer relativement ` l’objet site : a a 100
  • Objetcible Contrainte(p) ObjetsiteLorsque que l’utilisateur veut ajouter un Objetcible au sein de la sc`ne, il s´lectionne un Objetsite e edans la fenˆtre o` la sc`ne tridimensionnelle est visualis´e et exprime les contraintes de la section e u e esuivante qui doivent ˆtre satisfaites entre ces deux objets. La Figure 2.6 pr´sente ce processus. e eDans cette image, l’utilisateur a choisi d’ajouter une chaise en bois ` la sc`ne, alors qu’une chaise ` roulettes ´tait a e a es´lectionn´e dans la fenˆtre 3D. Le modeleur propose les choix possibles de contraintes entre ces objets. e e e Figure 2.6. Choix des contraintes a satisfaire lors de l’ajout d’un nouvel objet dans la sc`ne. ` eDans la suite de cette section, nous pr´sentons une liste non exhaustive des contraintes mises en eœuvre dans notre outil. Ces contraintes fournissent un r´sultat exprimant, en pourcentage, leur edegr´ de satisfaction. Pr´f´r´e aux classiques r´ponses bool´ennes, cette approche permet une e eee e enotation plus fine de la qualit´ d’une solution. Ces contraintes sont dites explicites ou implicites. e 101
  • Chapitre 2. Placement automatique d’objetsUne contrainte est implicite si elle n’a pas besoin d’ˆtre sp´cifiquement ´nonc´e par l’utilisateur e e e e(contrainte de non-chevauchement).2.2.3.1 Contraintes topologiquesCette cat´gorie rassemble les contraintes qui d´finissent la position des objets les uns par rapport e eaux autres.Voici quelques-unes de ces contraintes :– au dessus,– ` l’int´rieur, a e– en face de,– derri`re, e– ` gauche, a– ` droite. aLa premi`re contrainte, dite de superposition, utilise une liste de surfaces de support, propres ea` l’objet site. Ces surfaces correspondent ` la partie sup´rieure de l’objet site. Si l’on prend a el’exemple d’une biblioth`que, la liste des surfaces de support serait restreinte ` la partie sup´rieure e a edu meuble.La seconde contrainte, dite d’inclusion, utilise aussi une liste de surfaces correspondant aux zonessur lesquelles on peut placer l’objet cible pour qu’il soit ` l’int´rieur de l’objet site. En reprenant a el’exemple de la biblioth`que, la liste des surfaces supports contiendrait toutes les ´tag`res. e e eCes contraintes sont bas´es sur la diff´rence de Minkowski. Les objets ´tant plac´s soit sur le e e e esol, soit sur un autre objet, il faut ´galement v´rifier que l’objet ne d´borde pas du haut de la e e esc`ne ou hors de la surface support de l’objet site. eLes quatre autres contraintes sont calcul´es comme les contraintes d’orientation. e2.2.3.2 Contraintes physiquesLes contraintes physiques de disjonction et de gravit´ sont actuellement les seules contraintes eimplicites pr´sentes au sein de notre modeleur. eLa premi`re, la contrainte de disjonction ou non-chevauchement, est ajout´e automatiquement e eentre tout nouvel objet du monde et chacun des objets d´j` plac´s sur la mˆme surface de ea e esupport. La contrainte de disjonction fait g´n´ralement l’objet de beaucoup d’attention dans e ele d´veloppement d’un modeleur d´claratif. En effet, pour un monde contenant n objets, cette e e 102
  • n(n−1)contrainte est utilis´e e 2 fois. De son efficacit´ et de sa robustesse d´pendent le confort e ed’utilisation et la r´activit´ d’un modeleur. Pour ces raisons, nous avons d´cid´ d’utiliser les e e e eop´rateurs de Minkowski sur les polygones pour calculer cette contrainte. eLa seconde contrainte physique, celle de gravit´, n’est pas encore r´ellement prise en compte par e enotre modeleur mais le placement des objets est restreint aux surfaces horizontales valides (i.e.de support). La prise en charge de cette contrainte serait facilit´e par l’utilisation d’un moteur ephysique, mais la mise en œuvre d’un tel outil d´passe les limites de notre cadre de travail. e2.2.3.3 Contraintes de distanceLes contraintes de distance sont param´tr´es par une variable d. Nous utilisons trois contraintes e ede ce type :– distance ´gale ` d, e a– distance inf´rieure ` d, e a– distance sup´rieure ` d. e aNous disposons actuellement de 2 mani`res de traiter ces contraintes. La premi`re est bas´e e e esur les op´rations de Minkowski sur les polygones convexes, la seconde sur le calcul de distance epolygone-polygone (calcul sommets-arˆtes). eEn effet, pour placer un objet ` moins d’une distance d d’un autre objet, nous r´duisons le a edomaine de placement ` la somme de Minkowski des enveloppes convexes des deux objets et a dd’un cercle de rayon 2 alors que pour placer un objet exactement ` la distance d d’un autre aobjet, nous r´duisons le domaine de placement au contour de cette somme. Enfin, pour placer eun objet ` plus d’une certaine distance d d’un autre objet, nous ne restreignons pas le domaine ade placement et ´valuons a posteriori la distance entre les objets. e2.2.3.4 Contrainte d’orientationComme pr´cis´ en Annexe D.2.1, il existe deux types d’orientations possibles pour les objets : e ed´ictique et intrins`que. e eD´ictique : ´l´ment de linguistique qui sert ` montrer, ` d´signer, un objet singulier d´termin´ e ee a a e e e dans la situation. 103
  • Chapitre 2. Placement automatique d’objetsA est l’objet site et B est l’objet cible.Soit vB , le vecteur de direction de B.Soit vAB , le vecteur allant du point de r´f´rence de A au point de r´f´rence de B. ee eeLes contraintes suivantes entre A et B peuvent ˆtre ´valu´e grˆce au produit scalaire : e e e aB est en face de A si et seulement si vA · vAB = 1.B est orient´ vers A si et seulement si vB · vAB < 0. eB est dans la mˆme direction que A si et seulement si vB · vA = 0. eB est plutˆt orient´ dans la direction oppos´ ` A si et seulement si vB · vAB > 0. o e eaB est orient´ dos ` A si et seulement si vA · vAB = −1. e a Figure 2.7. Contraintes d’orientationIntrins`que : la gauche intrins`que d’un objet est fixe (ou inexistante dans le cas d’un objet e e sans direction privil´gi´e, ex : une boule), alors que sa gauche d´ictique d´pend de la e e e e position d’un r´f`rent. eeDans un modeleur, o` l’utilisateur peut placer et orienter le point de vue comme bon lui semble u(voire en inversant la direction verticale), il a ´t´ choisi de ne g´rer que les orientations in- ee etrins`ques. Ce choix r´sulte d’un souci de simplification au niveau de la gestion des interactions e eentre l’utilisateur et le modeleur.Ce choix fait, il est encore possible de trier les objets selon la possibilit´ d’appliquer ou non ces eorientations. Par exemple, parler de la gauche intrins`que d’une table rectangulaire n’a pas de esens.Les contraintes d’orientation n´cessitent qu’au moins l’un des deux objets cible et site dispose ed’une orientation intrins`que. Elles sont au nombre de cinq, et sont d´taill´es dans la Figure e e e2.7 :– En face de : les objets sont exactement face-`-face, ils ont tous les deux une orientation a intrins`que, e– Orient´ vers : l’objet B (qui a une orientation intrins`que) est tourn´ vers l’objet A (qui n’a e e e pas forcement une orientation intrins`que), e 104
  • – Parall`le : les deux objets partagent la mˆme orientation, ils ont tous les deux une orientation e e intrins`que, e– Orient´ oppos´ ` : l’objet B (qui a une orientation intrins`que) est tourn´ dans la direction e ea e e oppos´e ` l’objet A (qui n’a pas forcement une orientation intrins`que), e a e– Dos ` : les objets sont exactement dos ` dos, ils ont tous les deux une orientation intrins`que. a a eComme montr´ dans la Figure 2.7 nous ´valuons ces contraintes par un calcul de produit scalaire. e e2.3 Limitations actuelles2.3.1 Limitation ` la convexit´ a eNotre modeleur se limite au placement d’enveloppes convexes d’objets. Bien que constituantune avanc´e par rapport au placement de boˆ englobantes par la prise en compte la forme des e ıtesobjets, ce placement reste encore impr´cis. D’autres approches, ` base de hi´rarchie de boˆ e a e ıtesenglobantes orient´es par exemple, permettent une gestion plus fine de la g´om´trie des objets. e e e2.3.2 Du placement al´atoire dans un polygone eDans la version actuelle de notre outil, quand un objet est ajout´ dans le monde sans contrainte eparticuli`re, sa position et son orientation sont d´termin´es de fa¸on al´atoire sans prendre en e e e c ecompte les autres objets du monde. Dans une seconde phase, en cas de chevauchement, ce tirageal´atoire est relanc´ jusqu’` ce que l’objet ne soit plus en collision avec les objets ou les fronti`res e e a edu monde. Cette m´thode permet de proposer des sc`nes vari´es, et son avantage ´vident est la e e e efacilit´ de sa mise en œuvre : un simple tirage al´atoire en x et en y dans le rectangle englobant e ele monde.Cependant cette m´thode se r´v`le plutˆt inefficace dans un cas fortement contraint, comme e e e opar exemple lorsque de nombreux objets sont d´j` plac´s dans le monde (cf Figure 2.8). Une ea eam´lioration de cette m´thode pourrait ˆtre de retrancher ` l’espace de placement du point de e e e ar´f´rence de l’objet l’union des sommes de Minkowski de l’enveloppe convexe de l’objet ` placer ee aavec celles des objets d´j` plac´s. Dans ce cas, il parait difficile de conserver la caract´ristique ea e ed’interactivit´. e 105
  • Chapitre 2. Placement automatique d’objetsDans la sc`ne de droite, il n’y a qu’une seule position possible pour ajouter une nouvelle table (` proximit´ du e a ecentre du mur de gauche). Si le domaine initial de placement ne prend pas en compte les objets d´j` pr´sents ea edans la sc`ne, cette solution ne sera probablement pas trouv´e. e e Figure 2.8. Probl`mes faciles et difficiles. e2.3.2.1 Prise en compte de la forme du mondeUne des m´thodes envisag´es pour prendre en compte la forme du monde est de discr´tiser cette e e eforme en l’´chantillonnant par une grille. Le tirage al´atoire du placement est ensuite r´alis´ e e e eparmi les points de la grille. Cette technique pr´sente l’avantage de pouvoir ˆtre adapt´e aux e e eperformances de la machine sur laquelle est utilis´e l’application en faisant varier dynamiquement ele pas d’´chantillonnage. eDans une optique d’int´gration des m´thodes issues de la recherche locale, les points de la grille e epeuvent ˆtre utilis´s pour amorcer le processus de recherche, s´quentiellement pour une m´thode e e e eclassique, simultan´ment pour une m´thode hybride. e e2.3.2.2 Prise en compte des objets du mondePour prendre en compte les objets du monde, l’utilisation d’une grille permet de balayer l’espacede recherche en classant les candidats selon leur qualit´. Pour mesurer cette qualit´, il est e en´cessaire d’introduire les notions de distance minimale dM in et de distance maximale dM ax e(cf. figure 2.9).Si on consid´re p le point de r´f´rence d’un objet, sm le point de son enveloppe le plus proche e eede p et sM le point de son enveloppe le plus ´loign´ de p, nous pouvons alors d´finir : e e e– dM in comme la distance minimale par rapport ` p en de¸` de laquelle un point est obligatoi- a ca rement ` l’int´rieur de l’objet, a e 106
  • Figure 2.9. Distances minimale et maximale entre le point de r´f´rence et l’enveloppe dans ee le cas d’un rectangle– dM ax comme la distance maximale par rapport ` p au-del` de laquelle un point ne peut pas a a ˆtre ` l’int´rieur de l’objet. e a eCes distances introduites, il est possible de caract´riser les points de la grille : pour les objets eles plus proches d’un point de la grille, on calcule la distance d de leur point de r´f´rence avec eele point courant de la grille. Notons Osite l’objet ` placer et Oi les objets les plus proches. a site i– si d < OdM in +OdM in , alors les deux objets s’intersecteront quelles que soient leurs orientations respectives, site i site i– si OdM in + OdM in ≤ d ≤ OdM ax + OdM ax , alors en fonction de leurs orientations respectives, les deux objets peuvent ˆtre disjoints, e site i– si d > OdM ax +OdM ax , alors les deux objets sont disjoints, quelles que soient leurs orientations respectives.2.3.3 Ni 2D, ni 3D : 2D et demiL’utilisation des op´rateurs de Minkowski permet ` notre outil de g´n´rer des sc`nes plus e a e e er´alistes31 que les approches pr´c´dentes. Le gain de r´alisme n’est qu’un des avantages que e e e epeuvent apporter les op´rateurs de Minkowski ` la mod´lisation d´clarative. Les contraintes de e a e etemps ne nous ont cependant pas permis une mise en œuvre approfondie de toutes les fonction-nalit´s envisag´es (recours ` la planification de mouvement pour guider les d´placements d’un e e a e 31 Essentiellement au sens o` les objets sont plac´s par rapport ` leur forme et non plus par leurs boˆ u e a ıtesenglobantes. 107
  • Chapitre 2. Placement automatique d’objetsobjet ` placer, aide interactive au positionnement en affichant les zones autoris´es ou interdites, a eetc.).Depuis le d´but du d´veloppement par notre ´quipe du projet DEM2 ONS, les solveurs de e e econtraintes utilis´s, et donc le modeleur en lui-mˆme, ont ´t´ restreints au placement de rec- e e eetangles englobants (le plus souvent isoth´tiques). Cette restriction fait que DEM2 ONS r´alise e eessentiellement un placement en deux dimensions (les objets peuvent toutefois ˆtre plac´s les e euns sur les autres). Cette m´thode est ´galement utilis´e dans DEMONS LE, ` ceci pr`s que e e e a el’utilisation des op´rateurs de Minkowski permet de d´finir plus pr´cis´ment les surfaces de pla- e e e ecement. Par cons´quent, DEMONS LE peut utiliser des polygones convexes d’une orientation equelconque ` la place des rectangles englobants isoth´tiques pr´c´demment utilis´s. a e e e e2.4 R´sultats eActuellement, il n’existe pas de tests standardis´s pour comparer des approches de placements ed’objet 3D. Cependant, les atouts de DEMONS LE sont sa facilit´ d’utilisation et sa rapidit´. e eNous pr´sentons quelques sc`nes 3D g´n´r´es par DEMONS LE sur notre plateforme de test, e e e eeconstitu´e d’un processeur ` 733MHz. e aLa premi`re de ces sc`nes, pr´sent´e dans la Figure 2.10, contient 120 objets et a ´t´ g´n´r´e e e e e ee e eeen 3 minutes. Une grande partie de ce temps a ´t´ utilis´e ` placer certains objets (ceux par ee e arapport auxquels les autres objets sont plac´s). Ces objets ont ensuite servis comme objet site epour le placement d’un ensemble d’objets identique. Figure 2.10. Premi`re sc`ne r´sultat e e e 108
  • La seconde sc`ne contient 431 objets et est pr´sent´e dans la Figure 2.11. Le placement de ces e e eobjets est d´fini par 50065 contraintes et a demand´ 4 minutes de mod´lisation. Dans ce case, e e eles temps d’interaction sont minimes car un grand nombre d’objets identiques sont plac´s avec eles mˆmes contraintes. e Figure 2.11. Seconde sc`ne r´sultat e eLa Figure 2.12 pr´sente l’interface de DEMONS LE. La partie sup´rieure de l’interface comprend e ela barre de menu (` gauche) ainsi que la liste des objets 3D pr´sents dans la biblioth`que d’objets. a e eLa partie centrale contient la fenˆtre de visualisation 3D de la sc`ne. Enfin, la partie gauche e epr´sente la liste des objets plac´s dans la sc`ne (les objets qui n’ont pas pu ˆtre plac´s sont e e e e edans le second onglet) ainsi que le temps maximum de calcul allou´ par objet et un indicateur ed’avancement pour l’op´ration de placement en cours. e2.5 ConclusionL’´tude qui a port´ sur les m´taheuristiques a permis d’identifier une dizaine de m´thodes ou de e e e eprincipes diff´rents, susceptibles d’ˆtre utilis´s en mod´lisation d´clarative. Concernant la mise e e e e een œuvre au sein de DEMONS LE, nous nous sommes focalis´s sur l’int´gration de la recherche e etabou.Id´alement, chaque m´taheuristique devrait faire l’objet d’une mise en œuvre compl`te au sein e e ed’un mˆme outil afin de disposer d’une plateforme de test permettant de quantifier l’ad´quation e ed’une m´thode ` un probl`me. e a e 109
  • Chapitre 2. Placement automatique d’objetsFigure 2.12. Interface de DEMONS LE 110
  • DEMONS LE est le premier modeleur d´claratif d´velopp´ dans notre ´quipe ` offrir ` un utili- e e e e a asateur, non expert en la mod´lisation 3D, la possibilit´ de g´n´rer facilement et intuitivement des e e e esc`nes complexes. Cet outil a ´t´ pens´ pour ˆtre facile ` appr´hender et ` utiliser. L’utilisateur e ee e e a e apeut choisir le temps maximum de calcul pour chaque op´ration de placement, ce qui permet ede s’adapter ` la puissance de calcul disponible ainsi qu’aux d´sirs de l’utilisateur en terme de a etemps d’attente. Les m´thodes stochastiques utilis´es au sein de DEMONS LE permettent de e eg´n´rer des sc`nes plus r´alistes que les approches pr´c´dentes bas´es sur les CSP. e e e e e e eDans le chapitre suivant, nous pr´sentons l’outil que nous avons d´velopp´ pour traiter l’´tape e e e ede la g´n´ration automatique d’ext´rieurs de bˆtiments. e e e a 111
  • Chapitre 3 G´n´ration de fa¸ades e e c Figure 3.1. De haut en bas : donn´es d’entr´e (embase de bˆtiment), premi`re ´tape de e e a e e d´rivation, pr´paration des extrusions et bˆtiment final. e e aCe chapitre a pour objectif de pr´senter la technique que nous avons d´velopp´e pour la g´n´ration e e e e eautomatique des ext´rieurs de bˆtiments. Notre m´thode est bas´e sur la d´finition de gabarits e a e e ede bˆtiments qui sont appliqu´s ` des descriptions de bˆtiments. Une description est constitu´e a e a a ede l’embase tridimensionnelle, de la hauteur de toit et de la hauteur des murs du bˆtiment. a 113
  • Chapitre 3. G´n´ration de fa¸ades e e cCes informations sont stock´es au sein d’un Syst`me d’Information G´ographique (SIG). La e e er´p´tition de textures est la m´thode la plus souvent utilis´e par les infographistes pour cr´er e e e e edes fa¸ades bˆtiments. La texture est r´p´t´e de fa¸on ` couvrir la fa¸ade, mais les dimensions c a e ee c a cde la fa¸ade ne sont pas forc´ment des multiples de celles de la texture, certains ´l´ments de la c e eetexture peuvent ˆtre coup´s aux bordures de la fa¸ade. Nous avons remarqu´ que le manque de e e c eflexibilit´ de cette m´thode limite le degr´ de r´alisme des r´sultats g´n´r´s. C’est en partant de e e e e e e eece constat que nous avons souhait´ d´velopper une nouvelle technique de g´n´ration de bˆtiments e e e e aaussi facile ` utiliser que la r´p´tition de texture, mais permettant d’atteindre un plus haut ni- a e eveau de r´alisme ainsi qu’une plus grande diversit´ dans les bˆtiments produits. Nos fa¸ades e e a cde bˆtiments sont compos´es en utilisant une grammaire de murs tridimensionnelle isom´trique a e ebas´e sur un ensemble de r`gles. Ces r`gles peuvent ˆtre simples ou ´galement tr`s d´taill´es e e e e e e e een fonction des besoins de l’utilisateur. Dans ce chapitre, nous d´crirons essentiellement notre em´thode de g´n´ration de fa¸ades. e e e cCe chapitre est organis´ de la fa¸on suivante. Apr´s une br`ve introduction et une pr´sentation e c e e edes travaux connexes, nous exposerons tout d’abord la grammaire de murs utilis´e pour g´n´rer e e enos fa¸ades dans la section 3.2. Nous d´taillerons ensuite nos gabarits de toits et de fondations c edans la section 3.3, avant de pr´senter nos r´sultats dans la section 3.4 que nous commenterons e eensuite dans la section 3.5. Enfin nous conclurons ce chapitre par la section 3.6 dans laquellenous d´taillerons nos conclusions ainsi que les perspectives de ces recherches. e3.1 IntroductionDans ce chapitre, nous analysons l’´tape qui traite de la g´n´ration des ext´rieurs de bˆtiments e e e e aet nous proposons une m´thode pour traiter cette ´tape par le biais de gabarits de bˆtiments. Ce e e am´canisme est constitu´ de trois diff´rents ensembles de gabarits (de toits, de fondations et de e e efa¸ades). La g´n´ration des fondations cr´e des polygones connectant l’embase tridimensionnelle c e e edu bˆtiment avec ses fa¸ades alors que la g´n´ration des toits fait appel ` l’algorithme du squelette a c e e adroit [FO98, EE98] afin de cr´er diff´rents types de toits. Enfin la g´n´ration des fa¸ades utilise e e e e cune grammaire de murs qui est une grammaire de formes tridimensionnelles isom´triques. Les edeux premi`res ´tapes ´tant une application de m´thodes existantes (que nous avons enrichies e e e epour nos besoins sp´cifiques), nos recherches ont principalement port´ sur la g´n´ration des e e e efa¸ades et la grammaire de murs associ´e. c e 114
  • L’objectif des travaux d´crits dans ce chapitre est dans un premier temps de concevoir un syst`me e equi importe des embases de bˆtiments d´finies par un polygone tridimensionnel, une hauteur par a erapport au sol (pour les murs) et une hauteur de toit. Ce syst`me utilise ensuite ces donn´es pour e eg´n´rer un mod`le tridimensionnel de bˆtiments, tout en satisfaisant aux besoins ´nonc´s par e e e a e el’utilisateur. Un cas d’utilisation typique d´bute avec la d´finition d’un mod`le tridimensionnel e e ede terrain au sein d’un Syst`me d’Information G´ographique (SIG). La seconde phase consiste e een la cr´ation des contours de bˆtiments et des hauteurs ; cette ´tape pouvant ˆtre automatique, e a e esemi-automatique (seules les hauteurs sont obtenues automatiquement) ou manuelle au sein duSIG (c’est le cas de l’exemple pr´sent dans la figure 3.23). Il faut ensuite assigner les gabarits de ebˆtiments aux contours ; ceci peut-ˆtre fait manuellement, de fa¸on al´atoire ou en se basant sur a e c edes informations socio-statistiques disponibles par le biais du SIG pour une zone donn´e. Une efois la pr´paration des donn´es accomplie, notre syst`me g´n`re la g´om´trie des bˆtiments en e e e e e e e atenant compte des informations pr´alablement mises ` disposition. e aLes travaux pr´sent´s dans ce chapitre s’inspirent initialement de ceux propos´s par Wonka e e edans [WWSR03]. Dans cet article, Peter Wonka d´crit un syst`me capable de g´n´rer dans leurs e e e emoindres d´tails des fa¸ades de bˆtiments. Ce syst`me permet de prendre facilement en compte e c a eles r´p´titions et alignements horizontaux et verticaux que l’on retrouve dans presque toutes e eles constructions humaines. Le m´canisme de split grammar, qui a ´t´ d´velopp´ pour atteindre e ee e eces objectifs, cr´e des r´sultats impressionnants, mais l’obligation de d´crire chaque d´coration e e e ede fa¸ade par ses propri´t´s g´om´triques rend son utilisation peu intuitive et son apprentis- c ee e esage d´licat. Ces inconv´nients sont principalement dˆs ` la g´n´ricit´ de cette approche qui e e u a e e ene b´n´ficie pas de l’utilisation des propri´t´s et informations pr´sentes au sein des fa¸ades de e e ee e cbˆtiments. C’est pour ces raisons que nous avons souhait´ cr´er un syst`me sp´cifique, bas´ sur a e e e e edes grammaires de murs, qui soit capable de reproduire les r´sultats pr´sent´s dans [WWSR03]. e e eAfin de simplifier son utilisation et de tirer parti des sp´cificit´s des constructions, notre gram- e emaire a ´t´ uniquement sp´cifi´e pour des fa¸ades de bˆtiments. Un autre objectif de nos travaux ee e e c aa ´t´ de faciliter le recours aux sch´mas de r´p´tition sur toutes les parties de nos fa¸ades ainsi ee e e e cque l’utilisation de mod`les tridimensionnels pr´c´demment g´n´r´s (comme des balcons ou cor- e e e e eeniches). 115
  • Chapitre 3. G´n´ration de fa¸ades e e c Figure 3.2. D´tails du bˆtiment d´crit dans la Figure 3.1. e a eFigure 3.3. Diagramme de classes de notre syst`me de g´n´ration de fa¸ades e e e c 116
  • 3.2 Gabarits de Fa¸ades cGabarit : Un gabarit est la description abstraite d’un objet. Cette description contient les pa- ram`tres n´cessaires ` l’instanciation g´om´trique de cet objet sur une courbe, un contour e e a e e ou une forme tri-dimensionnelle. Il existe des gabarits de routes, forˆts et ` pr´sent de e a e bˆtiments. aCette section constitue la contribution majeure de notre travail de recherche sur l’´tape de eg´n´ration des ext´rieurs de bˆtiments. Un gabarit de fa¸ades contient une liste de mots-clefs, e e e a cun mur primaire et potentiellement un mat´riau par d´faut. Un gabarit de fa¸ades peut ˆtre e e c echoisi pour une fa¸ade donn´e si et seulement si il est compatible g´om´triquement avec cette c e e efa¸ade (i.e. ses hauteurs et largeurs maximales et minimales sont compatibles avec celles de cla fa¸ade). Parmi les gabarits qui correspondent ` la fa¸ade en cours de traitement, le choix c a cd´pend des mots-clefs stock´s dans les donn´es de l’embase du bˆtiment et au sein du gabarit. e e e aPar exemple, l’utilisateur peut d´finir le mot-clef aveugle pour une fa¸ade sans ouverture, ou e cbien le mot-clef porte d’entr´e pour la partie frontale de l’embase d’un bˆtiment. Dans ces cas e ade figure, les gabarits de fa¸ades contenant les mot-clefs correspondants seront appliqu´s de c efa¸on pr´f´rentielle. Les murs du gabarit de fa¸ades pour lesquels aucun mat´riau de fond n’a c ee c e´t´ d´fini font appel au mat´riau par d´faut. Ce m´canisme est utilis´ de fa¸on ` assurer laee e e e e e c acoh´rence graphique du bˆtiment. e a3.2.1 Grammaire de mursNous avons choisi une repr´sentation ` base de grammaire formelle pour d´crire nos fa¸ades de e a e cbˆtiments. En prenant en compte les r´sultats impressionnants trouv´s dans [WWSR03], nous a e eavons voulu proposer un syst`me aussi efficace, mais plus simple ` appr´hender et ` utiliser. e a e aNous avons d´cid´ de travailler sur une grammaire de murs qui peut ˆtre d´finie comme une e e e esplit grammar qui utiliserait des murs comme constituants (plutˆt que des formes g´om´triques). o e eNous avons atteint un ensemble minimum de cinq r`gles : une r`gle terminale (voir 3.2.1.2), e edeux r`gles de positionnement (voir 3.2.1.3 et 3.2.1.4) et deux r`gles de r´p´tition (voir 3.2.1.6 e e e eet 3.2.1.5). Ce choix nous permet de g´rer ais´ment les instanciations et r´p´titions de n’importe e e e equel mur donn´. eGrammaire formelle : une grammaire formelle est compos´e d’un ensemble fini de symboles e terminaux (les lettres du langage formel), d’un ensemble fini de symboles non-terminaux, 117
  • Chapitre 3. G´n´ration de fa¸ades e e c d’un symbole initial et d’un ensemble fini de r`gles de production avec une partie gauche e form´e d’une lettre du langage et une partie droite compos´e d’un mot du langage (form´ e e e de symboles terminaux et non terminaux). A −→ BChaque r`gle (mur) est ` mˆme de d´terminer la place dont elle a besoin (i.e. dimensions e a e eminimales et maximales dans les directions horizontales et verticales) par un simple calculr´cursif sur elle-mˆme et ses r`gles filles. Parmi les r`gles g´om´triquement possibles (gaba- e e e e e erit de fa¸ades), une r`gle est s´lectionn´e pour la fa¸ade courante, ce choix ´tant guid´ par les c e e e c e emot-clefs ´ventuellement pr´sents au sein du gabarit et de la description du bˆtiment. e e a3.2.1.1 Mur abstrait (W )La classe abstraite Wall stocke les informations qui sont partag´es par les diff´rentes r`gles (cf. e e eFigure 3.3 pour le diagramme de classe associ´). Elle contient le mat´riau de fond ainsi que e eles dimensions finales du mur (horizontale et verticale). Les dimensions minimales et maximalessont calcul´es en fonction des dimensions des ´l´ments internes du mur. De plus, l’utilisateur e eepeut d´finir des dimensions pr´f´rentielles qui seront automatiquement employ´es si elles sont e ee eg´om´triquement valides. e eDans les descriptions suivantes, W peut repr´senter n’importe quelle instance d’une classe fille ed’un mur abstrait.3.2.1.2 Pan de mur (W P )Le pan de mur (ou Wall Panel) est l’´l´ment le plus simple de notre syst`me et, actuellement, ee enotre unique symbole terminal. En plus des informations stock´es dans le mur abstrait, un pan de emur peut r´f´rencer un objet tridimensionnel ou un mat´riau de d´coration comme par exemple, ee e eune texture de fenˆtre. Dans le premier cas, l’objet tridimensionnel sera instanci´ au centre de e ela surface du pan de mur. Quand un tel objet est instanci´, l’utilisateur peut d´cider de cr´er e e eles faces du polygone du pan de mur.Grˆce ` ces choix, un certain nombre de cas probl´matiques peut ˆtre g´r´. Ce m´canisme est a a e e ee eutile par exemple dans le cas d’emploi d’objets mod´lisant des halls d’entr´e : si les faces du e e 118
  • pan de mur ´taient g´n´r´es, elles masqueraient l’objet instanci´ ` l’int´rieur du bˆtiment (cf. e e ee ea e aFigure 3.4). Figure 3.4. Un exemple de suppression des faces de fond d’un pan de mur3.2.1.3 Mur ` bordures (BW ) aUn mur ` bordures (Bordered Wall) est un mur avec quatre marges (gauche, droite, haut et abas) et un ´l´ment central qui r´f´rence un mur (cf. Figure 3.5-gauche). Chaque marge poss`de ee ee eune taille et une politique de redimensionnement qui peut ˆtre minimum, maximum ou fixe. La evaleur par d´faut d’une marge est minimum, ce qui signifie que la bordure associ´e ne peut pas e eˆtre plus petite que la valeur de sa taille.e BW −→ W3.2.1.4 Mur extrud´ (EW ) eUn mur extrud´ (Extruded Wall) est un mur qui extrude selon une certaine profondeur le mur equ’il r´f´rence (cf. Figure 3.5-droite et 3.7). Cette profondeur peut ˆtre positive (resp. n´gative) : ee e ele mur fils et les faces de profondeurs seront plac´s devant le plan de la fa¸ade (resp. derri`re). e c eLa Figure 3.6 illustre l’utilisation de la profondeur. Quatre bool´ens sont utilis´s pour d´finir si e e eles faces de profondeur doivent ˆtre g´n´r´es. De plus, un mur extrud´ peut r´f´rencer un objet e e ee e eetridimensionnel qui sera instanci´ ` sa surface (i.e. avec une profondeur nulle). Cet objet est e autilis´ ` des fins d´coratives comme la rambarde de la Figure 3.5. ea e EW −→ W 119
  • Chapitre 3. G´n´ration de fa¸ades e e cFigure 3.5. Exemple de mur ` bordures. a 120
  • Figure 3.6. Mur extrud´ avec une profondeur n´gative. e e Figure 3.7. Un exemple de mur extrud´ r´f´ren¸ant un objet tridimensionnel (les piliers e ee c au premier plan).3.2.1.5 Grille de mur (W G)Une grille de mur contient un unique mur qui sera r´p´t´ dans une ou deux directions (verti- e eecalement et/ou horizontalement). Pour chacune de ces directions, le nombre de r´p´titions est e econtrˆl´ par les cardinalit´s maximales et minimales (h fois dans la direction horizontale et v oe efois dans la direction verticale). 121
  • Chapitre 3. G´n´ration de fa¸ades e e c W G −→ W (1−h)(1−v) Figure 3.8. Un exemple de grille de mur horizontale. Figure 3.9. Un exemple de grille de mur bidirectionelle.3.2.1.6 Liste de murs (W L)Une liste de murs (Wall List) contient plusieurs murs ainsi qu’une orientation qui peut ˆtre ho- erizontale ou verticale. Les murs contenus dans la liste de murs seront instanci´s de la gauche vers ela droite (pour une orientation horizontale) ou de bas en haut (pour une orientation verticale)afin de couvrir la zone de fa¸ade affect´e ` la liste de murs. La r´partition de l’espace d´di´ c e a e e ea` la liste de murs entre ses diff´rents composants prend en compte les dimensions maximales, eminimales et pr´f´rentielles de chacun des composants. l’algorithme choisi est d´crit dans le ee eparagraphe 3.2.2. W L −→ W1 W2 ...Wn3.2.2 Mise en œuvreLe diagramme de classes de la Figure 3.3 pr´sente la hi´rarchie de classes de notre syst`me de e e er`gles. Les fonctions les plus complexes sont celles qui calculent la taille des murs d´riv´s d’un e e e 122
  • Figure 3.10. Un exemple de liste de mur.mur donn´. Cette fonction de redimensionnement est d´finie de fa¸on virtuelle au sein de la e e cclasse qui g`re les murs abstraits, puis red´finie pour chacune des classes filles. L’Algorithme e e3.11 d´taille la mise en œuvre de cette fonction pour la r`gle liste de murs. e eDans cet algorithme, R est la r`gle liste de murs, F est la zone de fa¸ade au sein de laquelle e con essaye d’instancier la liste de murs et les W sont les murs contenus dans cette liste demurs. Les valeurs WHmin , WHmax et WHpref repr´sentent les dimensions minimales, maximales eet pr´f´r´es de chacun des murs fils. Ces trois dimensions ont ´t´ calcul´es pr´alablement par eee ee e echacun de ces murs. Le redimensionnement s’effectue de fa¸on ` s´lectionner pour chacun des c a emurs une dimension aussi proche que possible de la dimension pr´f´rentielle. ee3.3 Gabarits de toits et de fondations3.3.1 Gabarits de fondationsLa g´n´ration des fondations est n´cessaire ` la coh´rence visuelle des r´sultats atteints. Les e e e a e efondations sont utilis´es pour ajuster chaque bˆtiment avec le sol sur lequel il est construit. Une e aembase de bˆtiment peut ˆtre un polygone non plan mais le sol d’un bˆtiment est suppos´ plat a e a e 123
  • Chapitre 3. G´n´ration de fa¸ades e e c//Test de la validit´ horizontale efor each W ∈ R if (WHmin > FH and WHmax < FH ) then return FALSEend for//Test de la validit´ verticale eif (ΣWV min > FV and ΣWV max < FV ) then return FALSE//Nous essayons d’utiliser les Vprefif (ΣWV min ≤ FV − ΣWV pref and ΣWV max ≥ FV − ΣWV pref ) then//Si W poss`de un V pref , nous l’utilisons e WV = WV pref//Si W ne possede pas de V pref ,nous utilisons un ratio pour partager l’espace restant p = (FV − ΣWV pref )/ΣWV min WV = p × ΣWV minend if//Pour les cas non r´solus pr´c´demment, e e enous favorisons les V prefwhile ∃W uninstantied if (ΣWV min > FV − ΣWV pref or ΣWV max < FV − ΣWV pref ) then WV = WV min × FV /ΣWV min end if else if ∃WV pref then WV = WV pref else WV = WV min × FV /ΣWV min end elseend while Figure 3.11. R`gle de redimensionnement pour une liste de murs verticales. e 124
  • et horizontal. Un gabarit de fondations contient un type de fondation, ainsi que un mat´riau de efondation.Les diff´rents types de fondations actuellement disponibles sont : eZ min les murs du bˆtiment sont g´n´r´s ` l’altitude minimale des sommets de l’embase, il n’y a e ee a a pas de faces g´n´r´es pour les fondations, mais une partie des murs peut ˆtre enterr´e e ee e e (certaines ouvertures peuvent ˆtre sous terre). Ce type de gabarit de fondations est prin- e cipalement utilis´ lorsque les variations d’altitude sont localement faibles, ou lorsque le e gabarit a ´t´ con¸u pour g´rer ces variations (cas d’un chalet ou d’une maison sur pilotis). ee c eZ max les murs du bˆtiments sont g´n´r´s ` l’altitude maximale des sommets de l’embase, il n’y a e ee a a pas de faces g´n´r´es pour les fondations. Dans ce cas, certains murs du bˆtiment flottent e ee a dans le vide au-dessus du sol. Ce type de fondation est int´ressant lorsque l’utilisateur e souhaite traiter lui-mˆme les fondations (i.e. les retoucher de fa¸on manuelle). e cExtrud´ les murs du bˆtiment sont g´n´r´s ` l’altitude maximale des sommets de l’embase e a e ee a et des faces de fondations sont cr´es afin d’assurer la liaison entre les murs et le sol. e Pour chaque segment de l’embase du bˆtiment, des faces verticales sont g´n´r´es entre ce a e ee segment et l’embase originale en dessous. Figure 3.12. Les trois diff´rents types de gabarits de fondations. De gauche ` droite, z min, e a z max et extrud´. eLa figure 3.12 montre ces diff´rents types de fondations. Il est ` noter que seul le type extrud´ e a eg´n`re des fondations. Dans ce cas, les fondations sont repr´sent´es par un poly`dre dont la e e e e epartie sup´rieure est constitu´e d’un seul polygone plan horizontal (le sol du bˆtiment) qui est e e araccord´ uniquement ` des polygones verticaux qui rejoignent la surface du terrain. La partie e ainf´rieure du poly`dre repr´sentant les fondations est donc constitu´e de l’intersection entre le e e e e 125
  • Chapitre 3. G´n´ration de fa¸ades e e ccontour du bˆtiment et la surface du terrain. Le polygone tridimensionnel r´sultant n’est donc a epas plan au contraire de celui constituant la partie sup´rieure des fondations. eLe mat´riau de fondation est utilis´ uniquement dans le cas de fondations extrud´es. Si ce e e emat´riau n’est pas d´fini dans le gabarit de fondations, ces faces utiliseront le mat´riau par e e ed´faut du gabarit de bˆtiments, ceci permettant d’assurer la coh´rence graphique du bˆtiment. e a e a3.3.2 Gabarits de toitsL’un des objectifs de nos travaux est d’essayer ne pas limiter la cr´ativit´ de l’utilisateur. e eL’objectif sous-jacent est de lui permettre de se consacrer librement ` sa mod´lisation, sans a equ’il ait ` prendre en compte les limitations du syst`me. Cet objectif se concr´tise par la vo- a e elont´ d’accepter le plus grand nombre d’embases de bˆtiment comme postulat de d´part. Dans e a ela r´alit´, les bˆtiments peuvent avoir des contours concaves, convexes et peuvent ´galement e e a epr´senter des cours int´rieures (cas du polygone ` trou). Nous avons donc souhait´ ˆtre ` mˆme e e a ee a ede traiter tous ces cas. La seule restriction actuelle consiste en l’interdiction des polygones auto-intersectants (en forme de huit par exemple), ce genre de polygones ´tant impossible ` utiliser e apour d´crire un bˆtiment. Cette r´flexion nous a men´ ` l’utilisation de la m´thode du squelette e a e ea edroit [FO98, EE98] sur les polygones qui d´crivent nos embase de bˆtiments. e aSquelette droit Le squelette droit d’un polygone simple est d´fini comme le r´tr´cissement du e e e polygone, obtenu en translatant chacun de ses segments ` une vitesse constante. Le sque- a lette droit est le r´sultat de l’union des segments parcourus pas les sommets du polygone e a ` chaque ´tape de r´tr´cissement. e e eLe squelette droit est assez proche de l’axe m´dian (comme le montre la Figure 3.13), les deux etechniques fournissent mˆme un r´sultat identique dans le cas de polygones convexes. N´anmoins, e e ele squelette droit d’un polygone non convexe contient moins de bords que l’axe m´dian et tous eses bords sont des segments de droite alors que l’axe m´dian pr´sente des bords paraboliques. e eCet algorithme ´tant valide sur les types de polygones que nous utilisons, nous sommes en emesure de proposer diff´rents types de toits qui seront toujours applicables ` nos descriptions e ade bˆtiments. aLes types de toits disponibles peuvent ˆtre class´s en 4 cat´gories distinctes : les toits plats, les e e etoits ` une pente, les toits ` deux pentes et les toits ` quatre pentes. Les deux premi`res cat´gories a a a e ene contiennent actuellement qu’un type de toit. Les toits plats peuvent avoir un rebord, dont la 126
  • Figure 3.13. Axe m´dian (au centre) et squelette droit (` droite) d’un polygone simple e ahauteur est donn´e par la hauteur du toit. Les toits ` une pente sont obtenus en pla¸ant le plus e a cgrand segment du contour du bˆtiment ` la hauteur du toit et le segment du contour qui en est a ale plus ´loign´ ` la hauteur des murs. Comme nos embases de bˆtiments ne sont pas restreintes ` e ea a ades quadrilat`res, la principale diff´rence entre les toits ` deux pentes et les toits ` quatre pentes e e a aest la pr´sence de pignon au sein des toits g´n´r´s : en effet, seuls les toits ` deux pentes en e e ee acontiennent. Nous allons ` pr´sent d´tailler nos gabarits de toits ` deux et quatre pentes. Les a e e ad´veloppements effectu´s pour ces gabarits s’inspirent initialement des propositions sur les toits e ea` deux pentes que l’on peut trouver dans les travaux de Laycock [LD03]. Afin de clarifier lesdistinctions entre les gabarits, nous introduisons la notion de pan de toit. En partant du sommetdu toit, un pan de toit est une surface plane d’une inclinaison donn´e. Chaque changement ed’inclinaison d´finit un nouveau pan de toit. eNous allons commencer par d´crire les diff´rents types de gabarits de toits ` deux pentes dont e e aun exemple est pr´sent dans la Figure 3.17 : eDeux pentes standard : ce type de gabarit de toits cr´e des faces verticales de pignon pour e les plus petits cˆt´s de l’embase du bˆtiment. Ces faces sont textur´es avec le mat´riau par oe a e e d´faut du gabarit de bˆtiments afin d’assurer un aspect coh´rent au bˆtiment. Elles sont e a e a cr´´es en d´pla¸ant des points du squelette droit vers une arˆte de l’embase du bˆtiment ee e c e a (en prolongeant la direction du segment du squelette). Les faces de toit r´guli`res (celles e e qui ne sont pas des pignons) sont cr´´es d’un seul tenant, avec un seul pan de toit. Ce type ee de gabarit de toits est pr´sent´ par une vue de profil dans la Figure 3.14. e eMansard´ : ce type de gabarit cr´e des toits ` deux pentes dont les faces r´guli`res sont e e a e e compos´es de deux pans. Le pan inf´rieur pr´sente une pente plus forte que le pan sup´rieur. e e e e Ce type de gabarit de toits est pr´sent´ par une vue de profil dans la Figure 3.15. e e 127
  • Chapitre 3. G´n´ration de fa¸ades e e cGrange : ce type de gabarit cr´e des toits ` deux pentes dont les faces r´guli`res sont compos´es e a e e e de trois pans. Il peut ˆtre d´crit comme l’ajout d’un pan de toit quasi horizontal sous un e e toit mansard´. Ce type de gabarit de toits est pr´sent´ par une vue de profil dans la Figure e e e 3.16. Figure 3.14. Vue de profil d’un toit ` deux pentes standard. a Figure 3.15. Vue de profil d’un toit ` deux pentes mansard´. a e Figure 3.16. Vue de profil d’un toit ` deux pentes de type grange. aA pr´sent, nous allons d´tailler les types de gabarits de toits ` quatre pentes que l’on peut e e atrouver dans la Figure 3.20 :Quatre pentes standard : ce type de gabarit de toits cr´e uniquement des faces r´guli`res, e e e avec une inclinaison constante (i.e. un seul pan par face).Mansard´ : ce type de gabarit de toits peut ˆtre consid´r´ comme une extension du type de e e ee gabarit de toits ` deux pentes mansard´. Chaque face est compos´e de deux pans, le pan a e e inf´rieur pr´sentant une pente plus forte que le pan sup´rieur. e e ePagode : ce type de gabarit de toits peut ˆtre consid´r´ comme une extension du type de e ee gabarit de toits ` deux pentes grange. Il peut ˆtre d´crit comme l’ajout d’un pan de toit a e e quasi horizontal sous un toit mansard´. e 128
  • Figure 3.17. Exemples de toits g´n´r´s par diff´rents gabarits de toits ` deux pentes. De e e e e agauche ` droite : deux pentes standard, mansard´, grange. a e 129
  • Chapitre 3. G´n´ration de fa¸ades e e cPorche : chaque face de ce type de gabarit de toits contient deux pans, le pan sup´rieur e pr´sentant une pente plus forte que le pan inf´rieur. Ce type de gabarit de toits est pr´sent´ e e e e par une vue de profil dans la Figure 3.18.Alsacien : les toits cr´es par ce type de gabarit sont des toits hybrides compos´s de deux e e parties. La partie sup´rieure est constitu´e d’un toit quatre pentes standard pos´ sur un e e e toit deux pentes standard (donc avec pignons). Ce type de gabarit de toits est pr´sent´ e e par une vue de profil dans la Figure 3.19. Figure 3.18. Vue de profil d’un toit ` quatre pentes de type porche. a Figure 3.19. Vue de profil d’un toit ` quatre pentes de type alsacien. aUn gabarit de toits est d´fini par la donn´e d’un type de toit, d’un type de d´bord de toit, de e e esupport et par des mat´riaux (pour les faces de toit, pignon, d´bord et support). Le support e econsiste en des faces verticales construites en prolongement des murs du bˆtiment. Les d´bords a eet supports peuvent ˆtre utilis´s pour chacun de nos types de toits. Lorsque l’utilisateur souhaite e ecr´er des toits plus larges que l’embase du bˆtiment, il fait appel aux d´bords de toit. Il peut e a eensuite d´cider si ces d´bords seront ouverts, ferm´s ou avec support. e e eLa prochaine ´volution de nos gabarits de toits visera ` proposer ` l’utilisateur la possibilit´ de e a a ecr´er des toits plus d´taill´s contenant des r´f´rences externes ` des objets : fenˆtres, chemin´es, e e e ee a e eetc. 130
  • Figure 3.20. Exemples de toits pour divers gabarits de toits ` quatre pentes. De gauche ` a a droite : quatre pentes standard, mansard´, pagode, porche, alsacien. e3.4 Resultats3.4.1 Format de fichier et mode op´ratoire eNotre syst`me a ´t´ mis en œuvre en C++, tandis que nos gabarits de bˆtiments sont d´crits e ee a eet stock´s grˆce ` une structure XML. Ce projet a ´t´ d´velopp´ dans le but de cr´er une e a a ee e e eg´om´trie abstraite afin de pas d´pendre directement d’un logiciel ou d’une librairie particuli`re. e e e eActuellement, deux mises en œuvre sont disponibles.La premi`re est l’int´gration au sein du modeleur de terrain multisenseur AGETIM v2 de la e esoci´t´ Oktal SE. Ce modeleur de terrain est bas´ sur un Syst`me d’Information G´ographique ee e e e(actuellement Geoconcept [Geo]). Cette int´gration nous permet d’importer divers types de edonn´es d’entr´e comme les formats VMap, DTED, DFAD SEDRIS ou DXF. Cette mise en e eœuvre a pour objectif la g´n´ration de larges zones (actuellement jusqu’` plusieurs centaines de e e amilliers de kilom`tres carr´s). e eLa seconde mise en œuvre est une version en ligne de commande que nous avons d´velopp´ afin e ede r´aliser facilement nos tests de validit´ et de performance. Cette version cr´e des sc`nes qui e e e epeuvent ˆtre parcourues avec un outil de visualisation bas´ sur OpenGL Performer. e eApr`s avoir con¸u et r´alis´ notre syst`me de gabarits de bˆtiments, nous avons souhait´ offrir e c e e e a ea` l’utilisateur une interface intuitive pour lui permettre de cr´er ses propres gabarits. En effet, el’´dition directe de la structure XML demande des connaissances informatiques et reste assez e 131
  • Chapitre 3. G´n´ration de fa¸ades e e cEn haut : un building hausmanien avec un toit alsacien (94 faces).Au centre : un bˆtiment vitr´, avec deux r´f´rences externes pour les entr´es et un toit plat (350 faces). a e ee eEn bas : un bˆtiment faisant massivement appel ` l’extrusion, couvert d’un toit ` quatre pentes (5600 faces) a a a Figure 3.21. Trois bˆtiments g´n´r´s ` partir de la mˆme embase. a e e e a e 132
  • fastidieuse. La Figure 3.22 pr´sente l’´tat actuel de notre ´diteur de gabarits de bˆtiments. e e e aLe panneau situ´ dans le coin sup´rieur gauche contient le gabarit de bˆtiments en cours de e e ad´finition. Celui situ´ au centre de l’´diteur sur la gauche montre les murs disponibles : ils e e epeuvent appartenir au gabarit courant, ou avoir ´t´ import´s de gabarits pr´c´demment g´n´r´s. ee e e e e eeLe panneau inf´rieur gauche contient, quant ` lui, la liste des mat´riaux disponibles. Enfin, le e a epanneau situ´ en haut ` droite pr´sente un aper¸u tridimensionnel du gabarit courant. e a e c ´ Figure 3.22. Etat actuel de notre ´diteur de gabarit de bˆtiments. e a3.4.2 Performance et complexit´ eL’une de nos sc`nes de test contient 17362 bˆtiments. Les embases de bˆtiments ont ´t´ ren- e a a eeseign´es ` partir d’un fichier de planim´trie IGN (Institut G´ographique National), la donn´e e a e e eg´om´trique ainsi que la hauteur de chaque embase ont ´t´ renseign´es manuellement par un e e ee einfographiste. Ensuite, cet utilisateur a cr´´ ses propres gabarits de bˆtiments et les a appliqu´s ee a eaux bˆtiments d´finis. Un aper¸u de la sc`ne finale est propos´ dans la Figure 3.23. La g´n´ration a e c e e e edes bˆtiments a demand´ moins de huit minutes, pour un total de 920 182 faces g´n´r´es. a e e eeAfin d’´valuer les performances de notre syst`me, nous avons utilis´ deux configurations diff´rentes e e e ede gabarits de bˆtiments sur cette mˆme sc`ne. En utilisant le plus simple de nos gabarits (com- a e eparable ` ceux pr´sent´s dans la partie sup´rieure de la Figure 3.21), nous avons obtenu une a e e esc`ne contenant 618 050 faces en 6 minutes et 51 secondes. Nous avons ensuite appliqu´ l’un e e 133
  • Chapitre 3. G´n´ration de fa¸ades e e c Figure 3.23. Zone urbaine constitu´e de 17 362 bˆtiments, la g´n´ration s’effectue en 7mn e a e e 55 sec pour 920 182 facesde nos gabarits les plus complexes (comparable ` ceux pr´sent´s dans la partie inf´rieure de la a e e eFigure 3.21). Dans ce cas, la g´n´ration s’est effectu´e en 3 heures et 27 minutes pour un total e e ede 25 449 776 faces.Ces r´sultats ont ´t´ obtenus sur une plate forme bas´e sur un AMD Ahtlon 64 cadenc´ ` 2Ghz. e ee e eaLes vues pr´sentes dans ce chapitre ont ´t´ r´alis´es ` l’aide d’un moteur de lancer de rayon e ee e e amultisenseur (Figure 3.1, 3.17, 3.20 et 3.21) et d’un outil de visualisation temps r´el bas´ sur e eOpenGL Performer (Figure 3.2 et 3.23).3.4.3 Exemple de gabarit de fa¸ades cLa Figure 3.24 pr´sente un exemple de l’application de la grammaire ´nonc´e en 3.25. Par souci e e ede clart´, nous nommons chaque r`gle par sa partie gauche dans le paragraphe suivant. e eLa r`gle ω fait d´river le symbole initial ω en la premi`re liste de murs. La r`gle W L↑ d´finit e e e e 1 ecelle-ci comme une liste de murs verticale compos´e de trois ´l´ments : la r`gle W L→ en charge e ee e 2du rez-de-chauss´e, la r`gle W L→ qui g`re les ´tages suivants et un mur extrud´ qui cr´e la e e 3 e e e ecorniche en haut de la fa¸ade. c 134
  • Figure 3.24. Exemple de bˆtiment g´n´r´ ` partir du gabarit de fa¸ades d´crit en 3.4.3. a e e ea c eLa r`gle W L→ entoure la porte d’entr´e (d´crite par un mur ` bordure) par deux instances d’une e 2 e e agrille de mur horizontale d´crite par la r`gle W G→ . Celle-ci contient une liste de murs verticale e e 2faite de deux mur ` bordure. Le premier contient une fenˆtre, tandis que le second contient une a ecorniche.La r`gle W L→ est une liste de murs qui contient quatre murs. Les premiers et derniers murs de e 3cette liste sont des instances de la mˆme liste de murs verticale W L↑ . Celle-ci est compos´e de e 5 edeux grilles de mur, l’une bidirectionnelle W G↑→ , l’autre horizontale W G→ . 5 6Le second ´l´ment de la r`gle W L→ est la grille de murs verticale W G↑ qui contient un mur ee e 3 3extrud´ (pour l’escalier) compos´ d’une grille de mur horizontale. Le troisi`me ´l´ment de la e e e eer`gle W L→ est une grille de murs verticale. e 33.5 DiscussionsNombre de r`gles. Mˆme s’il est th´oriquement possible de cr´er un unique gabarit de bˆtiments e e e e aqui contiendrait tous les gabarits de fa¸ades pr´sents dans une ville donn´e, notre syst`me a c e e eessentiellement ´t´ con¸u pour d´crire un seul type de bˆtiment par gabarit. Une approche ee c e adistincte, bas´e sur l’utilisation d’une seconde base de r`gle, permet aux utilisateurs de d´crire e e e 135
  • Chapitre 3. G´n´ration de fa¸ades e e c ω −→ W L1 W L↑ −→ W L2 W L3 W G1 1 W L→ −→ W G2 BW1 W G2 2 W G→ −→ W L4 2 W L↑ −→ BW2 BW3 4 W L→ −→ W L5 W G3 W G4 W L5 3 W L↑ −→ W G5 W G6 5 W G↑→ −→ BW4 5 W G→ −→ BW5 6 W G↑ −→ EW3 3 EW3 −→ W G7 W G→ −→ BW4 7 W G↑ −→ BW5 4 W G→ −→ W P1 1Figure 3.25. Exemple de grammaire utilis´e pour g´n´rer le bˆtiment pr´sent´ dans la e e e a e eFigure 3.24. 136
  • Figure 3.26. D´tails des diff´rents pas de d´rivations n´cessaires ` la cr´ation du bˆtiment e e e e a e apr´sent´s dans la Figure 3.25 . e e 137
  • Chapitre 3. G´n´ration de fa¸ades e e cleurs bˆtiments en utilisant uniquement des attributs de plus haut niveau (cf. [WWSR03]). aCependant, les auteurs de cette approche lui reprochent une grande complexit´ d’apprentissage eet d’utilisation. C’est cette complexit´ du syst`me bas´ sur deux bases de r`gle (dont une base e e e ede r`gles abstraites) qui nous fait pr´f´rer une approche plus sp´cialis´e. e ee e eFacilit´ d’utilisation du syst`me. Plusieurs des gabarits de bˆtiments pr´sent´s dans ce chapitre e e a e eont ´t´ cr´´ par un infographiste. Une fois qu’un utilisateur a appr´hend´ un gabarit existant, e e ee e eil peut commencer ` cr´er ses propres gabarits en modifiant les mat´riaux. Il peut ensuite a e eapprofondir son apprentissage en proc´dant ` des modifications des param`tres de ce gabarit e a e(dimensions, cardinalit´s d’une grille de murs, taille et politique de redimensionnement pour un emur ` bordure, etc.). Une fois ces deux phases d’apprentissage accomplies, l’utilisateur connaˆ a ıtles cinq diff´rentes sortes de r`gles ainsi que leurs param`tres. A partir de l`, il est capable de e e e acr´er lui-mˆme ses propres gabarits. e eComplexit´ g´om´trique. e e e Comme montr´ dans la Figure 3.21, nous sommes en mesure de econtrˆler le nombre de faces d’un bˆtiment. Puisque l’utilisateur peut d´finir la complexit´ o a e eg´om´trique des gabarits, notre syst`me peut aussi bien ˆtre utilis´ pour g´n´rer des cit´s e e e e e e e er´alistes (i.e. pr´cises et d´taill´es) que pour cr´er de vastes zones urbaines pour la simula- e e e e etion a´rienne. En effet, dans ce domaine, les d´tails s’av`rent moins importants que la capacit´ e e e ede la simulation ` assurer un survol en temps r´el. Le contrˆle de la complexit´ g´om´trique a e o e e es’effectue par l’utilisation de niveaux de d´tail ainsi qu’en simplifiant la g´om´trie lors de la e e eg´n´ration (en fusionnant des faces coplanaires) et en d´finissant de mani`re ad´quate les gaba- e e e e erits appropri´s. Il est ´galement possible de contrˆler la complexit´ en instanciant plus souvent e e o eles plus vastes morceaux de fa¸ade i.e. ceux contenant moins de polygones par unit´ de surface. c e3.6 Conclusions et travaux futursDans ce chapitre, nous avons pr´sent´ un nouveau syst`me pour g´n´rer des bˆtiments ` partir e e e e e a ade leurs embases. Les principaux avantages de nos travaux sont :– G´n´ration ` partir de n’importe quelle embase de bˆtiment, convexe ou non, mˆme trou´e e e a a e e– Cr´ation de gabarits simples ou complexes, en fonction des besoins de l’utilisateur. e– Mise ` disposition de types de toits vari´s, ind´pendamment de la complexit´ de l’embase. a e e e– Technique d´j` mise en œuvre (et utilis´e) au sein d’un modeleur de terrain bas´ sur un ea e e Syst`me d’Information G´ographique. e e 138
  • – Possibilit´ de recr´er des fa¸ades de bˆtiments existants (` partir de photographies). e e c a aUn exemple d’utilisation actuelle de notre syst`me est la g´n´ration de mod`les tridimensionnels e e e ede villes pour la calibration de radar ` ouverture synth´tique (SAR), telles que celles d´crites a e edans [SMTS05]. La possibilit´ de faire varier la complexit´ g´om´trique de nos mod`les permet e e e e ed’´valuer les performances puis de valider les r´sultats de ce type de simulation. e eNotre approche poss`de de nombreux avantages par rapport aux travaux ant´rieurs. e eNous pouvons g´n´rer tout types de bˆtiments, sans ˆtre restreint ` un type de bˆtiment donn´ e e a e a a ecomme le projet Lahave House [RMS96] ou le Castle Construction Kit [GBHF05, Hav05]. Cetteam´lioration est rendue possible par le fait qu’il est facile de cr´er un nouveau gabarit de e ebˆtiments. aNotre m´thode ´tend les capacit´s de GenVillage [LLGC+ 05] en introduisant des raffinements e e eg´om´triques (d´rochements, balcons, etc.) et la capacit´ ` ne pas avoir qu’une texture par e e e e afa¸ade. Nous sommes aussi en mesure de fournir plusieurs versions de nos bˆtiments afin d’au- c atomatiser la gestion des niveaux de d´tail par bˆtiment. e aEnfin, notre approche reprend les qualit´s d’Instant Architecture [WWSR03] concernant la qua- elit´ du r´sultat final et la diversit´ des bˆtiments g´n´rables. Notre syst`me pr´sente l’avantage e e e a e e e ed’ˆtre facile ` utiliser et rapide ` appr´hender, alors que le syst`me de double grammaires et e a a e ed’une base de donn´es regroupant tout les bˆtiments rend Instant Architecture d´licat ` mani- e a e apuler. 139
  • Conclusions et perspectivesContributionsDans ce m´moire de th`se, nous avons pr´sent´ un ´tat de l’art de la mod´lisation de maquettes e e e e e evirtuelles de zones urbaines ainsi que deux nouvelles approches pour traiter des ´tapes de cette emod´lisation. eDans l’´tat de l’art, nous avons d´compos´ la mod´lisation de zones urbaines en un ensemble e e e ede sept ´tats et de six ´tapes de g´n´ration. Pour chacune des ´tapes de g´n´ration, nous e e e e e e eavons d´taill´ plusieurs approches qui permettent de traiter ces ´tapes. Il est int´ressant de e e e enoter que ces approches sont souvent issues de domaines de recherche diff´rents, Si certains etravaux couvrent plusieurs ´tapes, aucun des projets actuels n’est en mesure de traiter dans son eint´gralit´ la chaˆ de traitement consistant ` passer de la d´finition vague d’une zone urbaine, e e ıne a ea` une zone urbaine compl`te et cr´dible, int´grant jusqu’a l’int´rieur des bˆtiments. Il nous pa- e e e e arait n´cessaire d’ˆtre en mesure de coupler au sein de chaque ´tape de g´n´ration des m´thodes e e e e e eg´n´rant des maquettes g´otypiques et g´osp´cifiques. L’´tape de g´n´ration du r´seau routier e e e e e e e e eillustre cette n´cessit´. En effet, un outil de mod´lisation capable de recr´er un r´seau routier e e e e eexistant ` partir de cartes ou de photos satellites, et d’autre part apte ` constituer un nouveau a ar´seau routier ` partir des donn´es de la zone urbaine, couvrirait tous les besoins exprimables e a epour cette ´tape. eLa premi`re ´tape de g´n´ration que nous avons approfondie est celle qui r´alise le place- e e e e ement d’objets au sein des int´rieurs de bˆtiments. Afin de traiter ce probl`me de placement e a ed´fini par des contraintes, nous avons ´tudi´ l’int´rˆt d’un solveur de contraintes bas´es sur les e e e ee em´taheuristiques issues de la recherche locale, et plus particuli`rement la recherche tabou. Pour e e 141
  • Conclusions et perspectivesr´aliser cette ´tude, nous avons d´velopp´ DEMONS LE, un modeleur d´claratif qui tire partie e e e e edes sp´cificit´s de notre solveur de contraintes de mani`re ` proposer une utilisation la plus in- e e e ateractive possible. Les m´thodes stochastiques utilis´es au sein de DEMONS LE ont donn´ lieu e e ea` une cr´ation de sc`nes plus r´alistes que les sc`nes g´n´r´es grˆce aux approches pr´c´dentes e e e e e ee a e ebas´es sur les CSP. eLes diff´rents outils existants traitent cette ´tape, soit en inventant le placement des objets, soit e een proposant ` l’utilisateur de placer les objets virtuels ` la mˆme place que les objets r´els. a a e eL’´tape de placement des meubles (et dans une moindre mesure celle de d´finition des cloisons e eint´rieures) peut ˆtre grandement acc´l´r´e si on accepte de faire des compromis sur la diversit´ e e ee e edu monde. Par exemple, dans le cas d’un immeuble, on peut d´cider de ne g´n´rer que le rez- e e ede-chauss´e (´tage particulier ` cause de ses ouvertures de communication avec l’ext´rieur) et e e a eun seul ´tage. Cet ´tage pourra ensuite ˆtre dupliqu´ autant de fois qu’on le souhaite dans la e e e edirection verticale. Les ouvertures (int´rieures et ext´rieures), les cloisons et le mobilier seront e edonc identiques d’un ´tage ` l’autre. e aIl est ´galement possible de simplifier cette ´tape en regroupant de fa¸on logique certains objets e e cafin de n’avoir ` placer que l’objet les regroupant. Une table et ses chaises, ou encore un lit aet deux tables de nuit se prˆtent bien ` ce genre de simplification. Par contre, cette m´thode e a ecomplique le placement lorsque la pi`ce est de petite taille ou lorsque la pr´sence de nombreuses e eouvertures r´duit l’espace de placement disponible (cf. Figure 1) ; un objet ne peut pas ˆtre e epositionn´ devant une porte ou une fenˆtre. e e Figure 1. Cette image montre l’espace perdu ` cause des ouvertures pour le placement des a meubles 142
  • La seconde ´tape de g´n´ration que nous avons ´tudi´ est celle portant sur la g´n´ration des e e e e e e eext´rieurs de bˆtiments. Nous avons d´velopp´ une approche capable de g´n´rer rapidement e a e e e edes bˆtiments complexes tout en ´tant simple d’apprentissage et d’utilisation. Notre approche a eest bas´e sur la notion de gabarits de bˆtiments et nous permet de cr´er des bˆtiments r´els e a e a eou imaginaires avec une complexit´ g´om´trique fix´e par l’utilisateur. Au sein d’un gabarit de e e e ebˆtiments, nous avons regroup´ des gabarits de fa¸ades, de toits et de fondation, ce qui nous a e cpermet de proposer la cr´ation de bˆtiments vari´s et adapt´s au terrain sur lequel ces bˆtiments e a e e aseront positionn´s. Nous proposons ´galement un ´diteur de gabarits permettant de concevoir e e eet modifier facilement nos gabarits de bˆtiments. aC’est la qualit´ des mod`les tridimensionnels g´n´r´s lors de cette ´tape qui conditionne la e e e ee equalit´ finale de la zone urbaine. Dans le cas de la mod´lisation de zones urbaines r´elles, les e e etravaux permettant de cr´er automatiquement un gabarit de bˆtiment ` partir de photographies e a a[MZWG07] pr´sentent un int´rˆt certain pour acc´l´rer la cr´ation des gabarits de bˆtiments. e ee ee e aLa derni`re version du logiciel de mappemonde virtuel Google Earth int`gre la technologie Street e eView qui propose des vues panoramiques (en orange dans la Figure 2) ainsi que des photographiesclassiques (en bleu dans la Figure 2) au sein de l’affichage 3D du logiciel. Ces photographiesd´taill´es, dont le nombre croˆ tr´s rapidement, permettent d’envisager de cr´er les gabarits e e ıt e ede bˆtiments sans avoir ` r´aliser une campagne photographique pour chaque nouvelle zone ` a a e amod´liser. Le couplage des m´thodes automatiques de g´n´ration de bˆtiments avec ces nouvelles e e e e asources de donn´es locales semble ˆtre une ´volution logique pour cette ´tape de g´n´ration. e e e e e e Figure 2. Exemple des donn´es multim´dia disponibles pour la place du Capitole ` Toulouse e e a au sein du logiciel Google Earth 143
  • Conclusions et perspectivesPerspectivesAu cours de cette th`se, nous avons cherch´ ` d´terminer quelle ´tait la meilleure approche pour e ea e echacune des six ´tapes de g´n´ration. La r´ponse ` cette question d´pend de crit`res d´pendant e e e e a e e edu but ` atteindre. Selon que l’on cherche ` reproduire une zone urbaine existante ou plutˆt ` a a o acr´er une zone urbaine virtuelle cr´dibles, les approches s´lectionn´es ne sont pas les mˆmes. e e e e eNous pr´sentons ici les m´thodes que nous trouvons les plus pertinentes pour la g´n´ration d’une e e e ezone urbaine virtuelle. Les travaux les plus significatifs sur l’´tape de g´n´ration de r´seaux rou- e e e etiers sont bas´s sur les L-System [PM01], il parait donc naturel d’utiliser cette approche (cf. eFigure 3). L’´tape de g´n´ration des blocs peut ˆtre trait´e de fa¸on compl`te par de simples e e e e e c e Figure 3. Exemple de zones urbaines g´n´r´ en couplant notre syst`me de g´n´ration de e e e e e e bˆtiments avec le prototype de notre m´thode de g´n´ration de r´seau routier. a e e e ecalculs g´om´triques et ne pr´sente pas d’int´rˆt particulier en terme de recherche. A partir e e e eedes blocs, la g´n´ration des parcelles se prˆte bien au recours ` des m´thodes g´om´triques e e e a e e eavanc´es, bas´es sur les diagrammes de Vorono¨ l’axe m´dian et les squelettes droits. Les tra- e e ı, evaux pr´sent´s dans [Per06] utilisent ces m´thodes, mais doivent ˆtre approfondis de fa¸on ` ne e e e e c ag´n´rer que des parcelles valides (un post traitement adapt´ devrait suffire ` r´gler ce probl`me). e e e a e eLa m´thode que nous pr´sentons au Chapitre 3 permet de traiter de fa¸on efficace l’´tape de e e c eg´n´ration des ext´rieurs de bˆtiments et permet de cr´er ais´ment des bˆtiments vari´s. Les e e e a e e a em´thodes existantes pour l’´tape de g´n´ration des cloisons int´rieures font appel ` des solveurs e e e e e a 144
  • de contraintes bas´s sur l’approche CSP. Le recours ` ces solveurs limite la taille maximale des e abˆtiments auxquels on peut appliquer ces m´thodes ` cause de la complexit´ exponentielle de a e a ece probl`me, c’est pour cette raison que nous utilisons un d´coupage de l’espace par dichoto- e emie pour cette ´tape. Mˆme si les r´sultats sont moins vari´s que ceux des autres approches, e e e enous sommes en mesure d’obtenir un r´sultat correct de mani`re rapide (cf. Figure 4). Pour e e Figure 4. Exemple de partition d’un ´tage de bˆtiment en pi`ces par notre m´thode. e a e efinir, les approches bas´es sur les m´taheuristiques semblent les plus ` mˆme de traiter l’´tape e e a e ede placement des meubles au sein des pi`ces. Elles sont, en outre, facilement parall´lisables, ce e equi pr´sente un avantage certain lorsque l’on souhaite traiter toutes les pi`ces d’une zone urbaine. e eSi nous sommes ` pr´sent ` mˆme de proposer une solution pour chacune des ´tapes de g´n´ration, a e a e e e ela mise en œuvre de toutes ces m´thodes au sein d’une unique application n´cessite cependant e edes moyens d´passant le cadre de cette th`se. La r´alisation de cette application implique d’ˆtre e e e ecapable de r´soudre des probl`mes non triviaux en terme de volumes de donn´es ` stocker, e e e aanalyser et utiliser. La seule sp´cification de l’interface d’un syst`me ` mˆme de manipuler des e e a eentit´s de dimensions aussi diff´rentes qu’un r´seau routier et un meuble donne un aper¸u de e e e cl’´tendue du travail ` effectuer. e aLa r´alisation compl`te d’une application permettant de g´n´rer automatiquement une zone e e e eurbaine reste donc un probl`me ouvert, mais qui ne semble pas pour autant hors de port´e. e e 145
  • Annexe A Oktal Synthetic EnvironmentA.1 Identit´ eOKTAL-SE fait partie du Groupe SOGECLAIR, sp´cialis´e dans les environnements synth´tiques e e eet la simulation multi senseurs. Cr´´e le 2 F´vrier 2001 ` Toulouse, OKTAL-SE poss`de un ca- ee e a epital de 754 k¿, et un chiffre d’affaire de 2,2 M¿ en 2004.OKTAL-SE est une petite structure r´active sp´cialis´e dans la simulation ` forte valeur ajout´e e e e a escientifique bas´e sur les technologies de synth`se d’images appliqu´e au domaine de la simulation e e emulti senseurs et de la mod´lisation de l’environnement synth´tique. e eOKTAL-SE est un acteur engag´ dans le march´ de la r´alit´ virtuelle et la simulation. Au sein e e e ede cet ´norme domaine technique, OKTAL-SE adresse tout particuli`rement le segment de niche e edes logiciels de simulation multi-senseurs d’environnements synth´tiques. L’offre d’OKTAL-SE ecible les domaines de l’optronique, de l’´lectromagn´tisme et de l’acoustique et se compose d’un e eensemble d’outils logiciels associ´s ` des prestations de services d’accompagnement (i.e. conseil, e a´tudes, maintenance, support technique, etc.).eA.2 Comp´tences g´n´rales e e eL’offre OKTAL SE s’adresse aux secteurs de la D´fense ainsi qu’aux march´s de l’automobile, des e et´l´communications, du spatial, de l’am´nagement du territoire et de l’aviation civile. Dans ce ee esegment, OKTAL SE est reconnu comme un acteur poss´dant un savoir faire pointu et fortement ediff´renci´. e eOKTAL-SE poss`de aujourd’hui 3 noyaux de comp´tence forts et reconnus : e e 147
  • Annexe A. Oktal Synthetic Environment 1. Logiciels de simulation senseurs – Catalogue de produits sur ´tag`re e e – Formation sur mesure ´ – Etudes bas´es sur ses produits e – Session de formation g´n´rale e e – Maintenance 2. Services sp´cialis´s e e ´ – Etudes scientifiques sur la simulation – R´gie ` haute valeur ajout´e e a e – D´veloppement logiciels sp´cifiques e e – Int´gration logicielle e – Int´gration mat´rielle e e 3. Mod´lisation d’environnement synth´tique e e – Catalogue de terrains et d’objets 3D – Production de terrains 3D sur demande – Production de terrains 3D sur demande – Mod´lisation de l’atmosph`re e eA.3 Les clients d’OktalSEIl existe quatre types de clients : 1. Les grands industriels (de la d´fense ou civils) : Ils interviennent comme int´grateur de e e leurs solutions dans des syst`mes complexes et ` forte valeur ajout´e : e a e – France T´l´com RD ee – Renault Recherche – MBDA (fournisseur de syst`mes d’armes) e – SAGEM (fournisseurs de senseurs) – Dassault – SNECMA – EADS – OKTAL – BGT 148
  • – LFK2. Les minist`res de la D´fense fran¸ais ou ´trangers ` travers leurs centres d’expertise tech- e e c e a nique et leurs services programme : – SPART – SPA´ e – SPOTI – CELAR,ETBS, ETAS, CTA, CEG, LRBA,CEV – WTD81 – FMV – MOD Cor´e du Sud e3. Les soci´t´s ou centres de recherche civils ou militaires fran¸ais et ´trangers : ee c e – ONERA – FOI – FGAN – CEA – CNES – ISL4. Les organismes pouvant prendre en charge des programmes de recherche fran¸ais ou eu- c rop´ens : e – L’ESA/ESTEC – La communaut´ europ´enne ` travers ses programmes FP e e a – Le minist`re de la recherche ` travers des proc´dures types RNRT, RNTL e a e – Le minist`re des transports au travers des proc´dures PREDIT e e 149
  • Annexe A. Oktal Synthetic Environment150
  • Annexe B Approche CSPLa programmation par contraintes d´signe ` la fois la repr´sentation des probl`mes par un en- e a e esemble de contraintes, ainsi que la r´solution de ces probl`mes par satisfaction de ces mˆmes e e econtraintes. L’approche probl`me de satisfaction de contraintes (CSP) est une famille de tech- eniques constructives g´n´rales. Elle permet la r´solution de diff´rents probl`mes (num´rique, e e e e e esymbolique, g´om´trique, etc.) avec une structure de graphe quelconque. Cette approche est e econstructive : la solution est construite graduellement. Comme ces algorithmes sont bas´s sur eun processus d’´num´ration, ils sont d´terministes et exhaustifs. Cette approche a prouv´e son e e e eefficacit´ pour r´soudre des probl`mes sous-contraints ou sur-contraints. e e eB.1 D´finition eUn CSP est un triplet P = (V, D, C) d´fini par : e– un ensemble de variables V = X1 , ..., Xn .– un ensemble de domaines D = D1 , ..., Dn , o` Di un ensemble de valeurs, est le domaine associ´ u e a ` la variable Xi .– un ensemble de contraintes C = C1 , ..., Cm , o` Ci est une contrainte d´finie par une relation u e sur un sous-ensembles des variables.A tout probl`me P, on peut associer un graphe appel´ graphe de contraintes, dont les noeuds e erepr´sentent les variables et les arcs les contraintes. Une solution d’un CSP, P = (V, D, C), eest une assignation de chacune des variables de V (dans son domaine respectif) qui satisfaitl’ensemble des contraintes. 151
  • Annexe B. Approche CSPB.2 R´solution eLa r´solution d’un CSP combine deux phases. Une phase effectue un filtrage afin de r´duire le e eplus possible les domaines de d´part selon les possibilit´s de la technique de filtrage employ´e. e e eUne autre phase consiste en une recherche de solution satisfaisant les contraintes, de fa¸on ` c afournir une valeur ` l’ensemble des variables du probl`me, dans les domaines de validit´ produits a e epar la phase de filtrage.Les techniques de recherche de solution s’appuient sur un backtracking intelligent, continuant ` aeffectuer un filtrage tout au long de la phase de recherche de solution, dans le but d’am´liorer eles performances.B.3 FiltrageLes techniques de filtrage cherchent ` ´tablir une coh´rence totale ou partielle en transformant ae ele CSP initial en un CSP ´quivalent, dont ont ´t´ supprim´s les ´l´ments inconsistants. Le choix e ee e eed’une technique de filtrage d´pend du type de l’application. Un premier algorithme r´alisant e eune propagation de contraintes par arc-consistance a ´t´ propos´ par Waltz puis am´lior´ par ee e e eMackworth pour donner l’algorithme AC-3. Par la suite plusieurs am´liorations de AC-3 ont ´t´ e eepropos´es afin de r´duire la complexit´ de la technique [Tsa93]. e e eL’algorithme de Waltz de filtrage par arc-consistance a ´t´ modifi´ pour prendre en compte les ee econtraintes num´riques pour aboutir ` la propagation d’intervalles. Il utilise les propri´t´s de e a eel’arithm´tique d’intervalles [Sny92] en permettant de calculer directement la projection d’une econtrainte sur une variable pour restreindre son domaine [Hyv92, Lho93]. Les travaux de [DB01]pr´sentent de plus amples d´veloppements concernant la r´solution des CSP. e e eB.4 Types de CSPB.4.1 CSP num´riques eUn NCSP est un CSP dont les variables sont num´riques, les domaines sont des intervalles de evaleurs num´riques et les contraintes sont des relations num´riques entre les variables. Cette e ecat´gorie particuli`re de CSP est tr`s int´ressante car elle permet de mod´liser des probl`mes e e e e e eformul´s ` partir de variables continues. Pour envisager la r´solution d’un NCSP, les techniques e a ede consistance partielle (notamment arc-consistance) s’av`rent inutilisables car il n’est pas en- e 152
  • visageable, lorsqu’on filtre le domaine d’une variable continue, de tester tous les ´l´ments de ce eedomaine.Dans un NCSP, les contraintes sont donn´es sous forme d’´quations ou d’in´quations et les e e evariables peuvent en th´orie prendre un nombre infini de valeurs. En pratique, les domaines esont repr´sent´s par des intervalles de flottants dont seulement les bornes sont m´moris´es. La e e e er´duction d’un domaine consiste ` rapprocher les bornes inf´rieures et sup´rieures en ´liminant e a e e ede l’intervalle les parties non consistantes, c’est-`-dire les sous-intervalles dont on est sˆr qu’ils a une contiennent aucune solution.B.4.2 CSP hi´rarchiques eLa hi´rarchisation des contraintes va fournir un m´canisme permettant de traiter les probl`mes e e esur-contraints en relˆchant les contraintes les plus faibles en cas de conflit. Le concepteur va apouvoir exprimer des priorit´s sur les contraintes pour signifier quelles sont les contraintes qui edoivent toujours ˆtre satisfaites et les contraintes secondaires qui peuvent ne pas ˆtre satisfaites. e eLa flexibilit´ dans les CSP a ´t´ ´tudi´e par [FW92]. H´l`ne Fargier a propos´ un mod`le e ee e e ee e ede contraintes flexibles s’appuyant sur la notion de relation floue [SFV95] o` la pr´f´rence u eeentre valeurs est repr´sent´e par un degr´ de satisfaction proche de la fonction d’appartenance e e epermettant de d´finir un ensemble flou. L’algorithme de Waltz [Wal75] a ainsi ´t´ ´tendu aux e eeecontraintes floues.B.4.3 CSP dynamiquesLa notion de CSP dynamiques a ´t´ propos´e par [DM89]. Un DCSP ´quivaut ` une s´quence de ee e e a eCSP, chacun diff´rant du pr´c´dent par l’ajout ou le retrait de contraintes. Plusieurs algorithmes e e epermettant d’´tablir l’arc-consistance d’un DCSP fini et discret ont ´t´ propos´s [Bes91] et e ee e[Jeg91]. D’autres ´tudes se sont dirig´es vers la recherche d’une nouvelle solution apr`s ajout de e e econtraintes [Ber92].B.5 ConclusionLa difficult´ principale, rencontr´e lors de la r´solution d’un CSP, vient de la tr`s forte combi- e e e enatoire du probl`me. Le nombre d’assignations possibles de l’ensemble des variables est ´gal au e ecardinal du produit cart´sien de tous les domaines. Plus pr´cis´ment on montre que la r´solution e e e e 153
  • Annexe B. Approche CSPd’un CSP est un probl`me NP-Complet. Il n’existe donc pas d’algorithmes qui s’ex´cutent en e etemps polynomial, capables de r´soudre un tel probl`me. En revanche, la v´rification d’une so- e e elution s’effectue en un temps polynomial. La cons´quence directe est que les CSP sont insolubles ed`s que le nombre de variables et/ou la taille des domaines deviennent trop importants. eEn pratique, cette cons´quence tr`s fˆcheuse n’est pas r´dhibitoire : e e a e– les probl`mes de petite taille (peu de variables) peuvent ˆtre r´solus en des temps acceptables e e e pour le concepteur ;– la palette d’outils aujourd’hui disponibles permet de r´soudre des probl`mes r´cemment inen- e e e visageables ;– la plupart des probl`mes pos´s par la mod´lisation d´clarative ne sont pas des probl`mes e e e e e durs : – ils sont fortement sous-contraints et le nombre de solutions est important, ce qui facilite la recherche d’une sc`ne respectant les propri´t´s initiales ; e ee – ou bien ils sont sur-contraints, ce qui est g´n´ralement ais´ment d´tectable par les techniques e e e e de filtrage ; – si la compl´tude n’est pas n´cessaire pour le type d’application, les techniques stochastiques e e permettent d’envisager des probl`mes d’une plus grande complexit´. e eL’approche CSP est compl`te : la m´thode peut potentiellement explorer tout l’espace de so- e elution, ce qui lui permet de garantir de trouver l’optimum global si il existe ou a contrario deprouver qu’il n’existe pas de solution. 154
  • Annexe C L-SystemUn L-System ou Lindenmayer system est la grammaire formelle (un ensemble de r`gles et de esymboles) la plus couramment utilis´e pour mod´liser les processus de croissance des plantes. e eUn L-system est aussi capable de mod´liser la morphologie d’une vari´t´ d’organismes. Les L- e eeSystem peuvent aussi ˆtre utilis´s pour g´n´rer des fractales. Ils ont ´t´ introduits et d´velopp´s e e e e ee e een 1968 par le biologiste et botaniste Aristid Lindemayer (1925-1989) de l’Universit´ d’Utrecht e[Lin68].Bas´e sur une forme r´cursive de grammaire g´n´rative, cette grammaire a ´t´ approfondie et e e e e eemise en œuvre graphiquement par Przemyslaw Prusinkiewicz [PL91] dans les ann´es 1980. eC.1 Origine (sic)En tant que biologiste, Lindenmayer a travaill´ sur les levures et les champignons filamenteux et ea ´tudi´ les sch´mas de croissance de diff´rents types d’algues. A l’origine, les L-System ont ´t´ e e e e eecon¸us pour fournir une description formelle de l’´laboration de ces organismes multicellulaires c esimples, et illustrer les relations de voisinage entre les cellules v´g´tales. Plus tard, ce syst`me a e e e´t´ ´tendu pour d´crire les plantes plus ´volu´es et les structures ` branchements complexes.eee e e e aC.2 StructureLe caract`re r´cursif des L-system a conduit ` l’autosimilarit´ et par cons´quent les formes proche e e a e edes fractales sont faciles ` d´crire avec un L-system. Les mod`les de plantes et les organismes a e epr´sentant des formes organiques sont ´galement faciles ` d´finir : en augmentant le nombre e e a e 155
  • Annexe C. L-Systemd’it´rations, le niveau de r´cursivit´ s’accroˆ et la forme devient plus complexe, simulant un e e e ıtprocessus de croissance. Ces syst`mes sont aussi souvent utilis´s pour la g´n´ration de la vie e e e eartificielle.Les grammaires des L-System sont proches des grammaires de Chomsky. Un L-System est d´crit epar un quadruplet G = (V, S, ω, P ) dans lequel :V (l’alphabet) est un ensemble de symboles qui contient les symboles non-terminaux, i.e. qui peuvent ˆtre remplac´s, V + repr´sente l’ensemble des mots construits ` base des symboles de e e e a V,S est un ensemble de symboles contenant des ´l´ments qui restent fixes (symboles terminaux ), eeω (d´but, axiome ou initiateur) est une chaˆ de symboles de {V} d´finissant l’´tat initial du e ıne e e syst`me eP est un ensemble de r`gles de d´rivation d´finissant comment des symboles non-terminaux e e e peuvent ˆtre remplac´s par une combinaison d’´l´ments terminaux et non-terminaux. Une e e ee r`gle de production est constitu´e d’une partie gauche (pr´d´cesseur) et d’une partie droite e e e e (successeur).Les r`gles de la grammaire d’un L-System sont appliqu´es de fa¸on it´rative ` partir d’un ´tat e e c e a einitial. Le fait que chaque it´ration d´rive autant de r`gles que possible distingue les L-system e e ed’un langage formel g´n´r´ par une grammaire. Si les r`gles de production ´taient appliqu´es les e ee e e eunes ` la suite des autres, le r´sultat serait un langage et non un L-System. Les L-System sont a edonc un sous ensemble strict des langages.Un L-System est context-free si chaque r`gle de production se r´f`re uniquement ` un symbole e ee aindividuel, et pas ` ses voisins. Les L-System context-free sont ainsi souvent sp´cifi´s par une a e egrammaire r´guli`re. e eSi une r`gle ne d´pend pas seulement d’un unique symbole, mais aussi de ses voisins, alors il e es’agit d’un L-System context-sensitive.S’il existe une unique r`gle de production pour chaque symbole non-terminal, alors le L-System eest dit d´terministe. Dans le cas inverse, et si le choix d’une r`gle repose ` chaque it´ration sur e e a eune probabilit´, alors le L-System est dit stochastique. eC.3 ExempleLa Figure C.1 pr´sente un exemple de plante g´n´r´e par le L-System suivant : e e ee 156
  • G = (V, S, ω, P ) avecV contient X et F ,S contient + et −,ω est X,P contient 2 r`gles de d´rivation : X → F − [[X] + X] + F [+F X] − X) et (F → F F ) e eDans cet exemple, F signifie dessine droit, − tourne ` gauche de 25 degr´s, + tourne ` droite de a e a25 degr´s. X ne correspond pas une action de dessin, mais est utilis´ pour contrˆler l’´volution e e o ede la courbe. Enfin, le symbole [ d´clenche une sauvegarde des valeurs de position et d’angle ecourants, qui sont restaur´es par l’ex´cution de la commande ]. e e 157
  • Annexe C. L-SystemFigure C.1. Plante g´n´r´e par un L-System simple e e e 158
  • Annexe D Mod´lisation d´clarative e eD.1 Pr´sentation g´n´rale e e eLa mod´lisation d´clarative propose des moyens de s’affranchir des d´fauts de la mod´lisation e e e eclassique (dite imp´rative). Elle est une voie de recherche relativement r´cente, initi´e par M. e e eLucas en 1989 qui la d´finit de la sorte : e L’objectif de la mod´lisation d´clarative de formes est de permettre d’engendrer e e des formes (ou des ensembles de formes) par la simple donn´e d’un ensemble de e propri´t´s ou de caract´ristiques. L’ordinateur est charg´ d’extrapoler l’univers des ee e e formes potentielles, afin de s´lectionner celles correspondantes ` la d´finition donn´e. e a e e Le concepteur n’a plus qu’` choisir, ` l’aide d’outils appropri´s, la ou les formes qui a a e lui conviennent.Cette d´finition correspond bien aux travaux men´s ` Nantes sous la direction de M. Lucas e e a(projet ExploFormes) et ` Limoges sous celle de D. Plemenos (projet MultiFormes). Elle a ´t´ a ee´tendue par V. Gaildrat [Gai03] qui la formule ainsi :e Le but de la mod´lisation d´clarative est d’offrir ` un concepteur la possibi- e e a lit´ de d´crire une entit´ ou une sc`ne ` mod´liser, non plus en fournissant des e e e e a e donn´es num´riques, mais en exprimant l’image mentale qu’il a de la sc`ne grˆce e e e a a ` un ensemble de propri´t´s ´nonc´es dans un langage quasi-naturel. Le concepteur ee e e donne les propri´t´s g´om´triques, photom´triques et physiques de l’environnement ee e e e en ´non¸ant les caract´ristiques des diff´rents ´l´ments de la sc`ne ainsi que les e c e e ee e relations entre ces ´l´ments. ee 159
  • Annexe D. Mod´lisation d´clarative e e Ces propri´t´s permettent, ` l’aide d’un ordre (instruction) unique, de r´aliser ee a e une op´ration complexe qui aurait impliqu´ un nombre important d’actions ´l´mentaires e e ee avec un modeleur g´om´trique imp´ratif. e e eLa mod´lisation d´clarative a pour but d’ajouter de la s´mantique dans un domaine qui ´tait e e e ejusqu’` pr´sent uniquement math´matique. Cette approche rejoint une tendance majeure de l’in- a e eformatique actuellement, qui est de d´l´guer les tˆches ingrates ` l’ordinateur pour que l’utilisa- ee a ateur n’ait plus qu’` effectuer les tˆches nobles ou cr´atives. L’utilisateur ayant pr´f´rentiellement a a e eeacc`s ` un haut niveau d’abstraction32 , on peut faire un parall`le en associant les modeleurs e a ed´claratifs aux langages ` objets tandis que les modeleurs imp´ratifs seraient plutˆt les langages e a e od’assemblage [LR99]. En outre, on est en droit d’attendre d’un modeleur d´claratif qu’il d´tecte e eet mette en exergue les incoh´rences potentielles de la description fournie en entr´e. e eLe groupe de travail GEODE33 a d´crit les diff´rences entre mod´lisation d´clarative et mod´lisation e e e e eeffectu´e ` l’aide d’un modeleur imp´ratif (cf tableau D.1). e a eUne cons´quence ´vidente des d´finitions pr´c´dentes est que le d´veloppement d’un modeleur e e e e e ed´claratif doit faire appel ` des comp´tences ext´rieures au seul domaine de la synth`se d’images e a e e e(cf figure D.1) :– de nombreuses ´tudes ont montr´ l’int´rˆt des interactions multimodales34 pour un modeleur e e ee d´claratif et de leurs apports dans la conception d’une interface conviviale, ces techniques e sont issues du domaine de l’IHM,– la possibilit´ d’expression orale doit s’appuyer sur une reconnaissance et une analyse du lan- e gage,– les diff´rents principes de g´n´ration employ´s reposent sur des techniques d´velopp´es en e e e e e e intelligence artificielle et en recherche op´rationelle, e– enfin, un modeleur d´claratif ou non peut ˆtre consid´r´ comme un outil de conception assist´e e e ee e par ordinateur. 32 si il le d´sire, rien ne l’empˆche d’acc´der aux donn´es de bas niveau. e e e e 33 GEODE est une ´quipe du GDR-PRC AMI. Elle est constitu´e de l’´quipe MGII de l’IRIN, du CERMA e e e e e e ´de l’´cole d’architecture de Nantes, et de l’´quipe synth`se d’images de l’Ecole des Mines de Nantes(www.emn.fr/dept info/GEODE). 34 Multimodal : combinant souris, clavier, geste, reconnaissance parole, casque de RV pour construire un seul´v´nement multimodal ` partir de divers ´v´nements monomodaux.e e a e e 160
  • Modeleur imp´ratif e Modeleur d´claratif eLe concepteur a une id´e d’objet ` e a A partir de l’id´e : description d’une sc`ne e emod´liser e ou de la forme d’un objet ` partir de ses a propri´t´s eeUn processus mental doit amener de l’id´e e L’image mentale de l’objet solution n’esta` un ensemble d’op´rations ´l´mentaires e ee pas directement utilis´e pour la concep- efournies par le modeleur tionConstruction de l’objet par planification Le modeleur fournit les solutions ` partir amentale des op´rations ´l´mentaires e ee de propri´t´s ⇒ pas n´cessaire de v´rifier ee e e la validit´ eR´alisation des op´rations ´l´mentaires, e e ee A partir des solutions obtenues : pro-pas ` pas a cessus incremental de modification des sp´cifications eTests de validit´ n´gatifs ⇒ reprendre la e e Le concepteur peut se concentrer sur desd´composition e tˆches de haut niveau d’abstraction a Le modeleur d´claratif fournit un mod`le e e de solutions ` partir desquelles il est pos- a sible d’obtenir une ` une, plusieurs ou l’en- aModification ` apporter ⇒ reprendre le a semble des solutions.processus de conception depuis le d´but e Le mod`le g´om´trique sous-jacent est to- e e e talement cach´ au concepteur e Table D.1. Comparaison entre modeleur imp´ratif et d´claratif (GEODE) e e 161
  • Annexe D. Mod´lisation d´clarative e e Figure D.1. La mod´lisation d´clarative : un domaine pluri-disciplinaire. Sch´ma initial e e e par Champciaux [Cha98], ´tendu par Gaildrat [Gai03] eD.2 Les trois phases de la mod´lisation d´clarative e eLes travaux r´alis´s au sein de l’´quipe GEODE [CDMM97] ont mis en ´vidence la pr´sence e e e e ede 3 phases successives au sein d’un modeleur g´om´trique (cf figure D.2). Ces trois phases se e esucc`dent au cours d’un processus it´ratif qui permet, par affinage successif de la description, e ed’obtenir une solution qui satisfait l’utilisateur. Il est int´ressant de pr´ciser que la solution e eg´n´r´e peut-ˆtre totalement diff´rente de l’image mentale initiale de l’utilisateur, tout en cor- e ee e erespondant pourtant ` la description qu’il avait fournie (ceci est particuli`rement vrai dans a e[EV01]).L’un des avantages que tire la mod´lisation d´clarative de ce processus it´ratif, est la possibilit´ e e e epour l’utilisateur (ou pour le modeleur lui-mˆme) de d´tecter des incoh´rences ou des probl`mes e e e etr`s tˆt dans le processus de conception. Ceci est rendu possible par la capacit´ d’un modeleur e o ed´claratif ` pr´senter des sc`nes tr`s tˆt (des esquisses) alors que tous les param`tres ne sont e a e e e o epas fix´s. eD.2.1 La phase de descriptionDurant cette phase, l’utilisateur d´crit la sc`ne ou modifie une description ant´rieure apr`s e e e evisualisation. Le principal probl`me de cette phase consiste ` utiliser un syst`me permettant e a e 162
  • Figure D.2. Les trois phases de la mod´lisation d´clarative [CDMM97]. e ed’´viter autant que possible toute ambigu¨ e dans la description. Notamment, la notion de gauche e ıt´et de droite n’est pas a priori clairement d´finie si on ne pr´cise pas que l’on parle de la gauche de e el’utilisateur ou de celle de l’objet concern´ (on parle d’orientation d´ictique 35 ou intrins`que 36 ). e e eUne phase de description peut proposer divers moyens d’interaction ` l’utilisateur : a– interface graphique ` base de menus d´roulants et de boˆ de dialogue [Kwa98, Cha95], a e ıtes– langage interpr´t´, ee– langage naturel [BGC94].Il est aussi possible d’utiliser divers p´riph´riques d’interaction pour cette phase. On peut ima- e eginer une interface multimodale combinant :– clavier,– souris,– parole,– geste (par cam´ra ou gants de donn´es), e e– p´riph´riques ` retour d’effort. e e a 35 D´ictique : ´l´ment de linguistique qui sert ` montrer, ` d´signer un objet singulier d´termin´ dans la situation. e ee a a e e e 36 Par exemple, la gauche intrins`que d’un objet est fixe (ou inexistante dans le cas d’un objet sans direction eprivil´gi´e, ex : une boule), alors que sa gauche d´ictique d´pend de la position d’un r´f`rent. e e e e ee 163
  • Annexe D. Mod´lisation d´clarative e e Figure D.3. Interaction multimodale.D.2.2 La phase de g´n´ration e eDurant cette phase, le modeleur tente de g´n´rer les sc`nes correspondant ` la description de e e e al’utilisateur. Si la description est incoh´rente, il peut n’y avoir aucune solution, auquel cas le emodeleur devra ˆtre capable de d´tecter la partie de la description qui pose probl`me pour e e eproposer ` l’utilisateur des m´thodes qui ´vitent le blocage. Si la description est coh´rente, mais a e e eencore impr´cise, il peut y avoir une ´norme quantit´ de solutions, et, dans ce cas, le traitement e e evarie selon les approches :– g´n´ration d’une unique solution (g´n´ralement la premi`re mˆme si elle est rarement ´quilibr´e), e e e e e e e e– g´n´ration de toutes les solutions, e e– g´n´ration d’un ´chantillon de solutions. e e eCes variantes ont un coˆt tr`s variable en terme d’occupation m´moire et de temps de calcul. En u e efonction de la complexit´ du probl`me et dans une optique visant des temps interactifs, on peut e eenvisager que le modeleur choisisse la variante ad´quate. Pour effectuer cette phase, diff´rentes e etechniques ont ´t´ envisag´es : ee e– arbres de parcours explicite,– grammaires g´n´ratives, e e– approche proc´durale sp´cifique [CS01, XSF02], e e– transformation de la description en un ensemble de r`gles et utilisation d’un moteur d’inf´rence e e capable de cr´er de nouveaux faits et de d´duire des caract´ristiques g´om´triques [Ple91], e e e e e– transformation de la description en un ensemble de contraintes et utilisation d’un algorithme num´rique ou d’un solveur de contraintes pour la r´solution du syst`me [BP99, Ruc01, Kwa98, e e e LR99, LRG03, Cha95],– application de techniques stochastiques [San00, SRGL03], 164
  • – application d’un optimiseur num´rique [DH93]. eComme pour les moyens de description, la meilleure fa¸on de r´aliser un modeleur d´claratif c e eg´n´rique serait qu’il int`gre le plus de techniques possibles, n´anmoins le choix de la technique e e e ead´quate par rapport au probl`me est loin d’ˆtre un probl`me trivial. e e e eD.2.3 La phase de visualisationSi aucune sc`ne n’a pu ˆtre g´n´r´e, alors le modeleur doit communiquer ` l’utilisateur ses e e e ee arecommandations afin de trouver une solution (quels objets ou contraintes posent probl`me). Si eau contraire de nombreuses sc`nes ont ´t´ g´n´r´es, alors plusieurs solutions sont possibles : e ee e ee– filtrer l’ensemble des solutions en rajoutant des contraintes (instancier certaines valeurs num´riques e par exemple),– trier et classer l’ensemble des solutions de fa¸on ` pr´senter ` l’utilisateur un individu repr´sentatif c a e a e de chaque classe [Cha98], probl`me tr`s vaste et a priori quasiment impossible ` appliquer ` e e a a un modeleur g´n´rique, e e– comparer les diff´rentes solutions en mettant en valeur les similitudes et les diff´rences (mˆme e e e remarque que pour la classification).On est en droit d’attendre de la part d’un modeleur 3D une visualisation dans l’espace desr´sultats. Pour cela, des travaux de recherche ont port´ sur une pr´sentation des r´sultats en e e e epla¸ant le point de vue [Dor01] et le chemin ´ventuel de la cam´ra de fa¸on automatique ; ici c e e cencore la recherche de la g´n´ricit´ pour le modeleur entraˆ l’abandon de cette voie. Pour aider e e e ınele concepteur ` visualiser les sc`nes g´n´r´es, il est envisageable de r´utiliser les p´riph´riques a e e ee e e ede la phase de description pour naviguer dans l’espace des solutions, puis ` l’int´rieur mˆme a e edes solutions. Une utilisation des p´riph´riques de r´alit´ virtuelle comme les casques 3D et les e e e egants de donn´es paraˆ particuli`rement adapt´e. e ıt e e 165
  • Annexe D. Mod´lisation d´clarative e e166
  • Annexe E Approches manuellesFigure E.1. Plan et vue crystal view d’une maison cr´e par Architecte 3D (Punch Software) eIl existe de nombreux logiciels grand public ayant pour vocation de permettre ` tout un cha- acun de (re)cr´er son habitation. On peut citer trois principaux logiciels : 3D Architecte ´dit´ e e epar Micro Application (Figures E.3 et E.4), Architecte 3D ´dit´ par Punch Software (Figure e eE.1) et Architecte et construction 3D ´dit´ par Anuman Interactive (Figure E.2). Chacun de e eces produits est d´clin´ en un grand nombre de variantes (parfois plus d’une vingtaine) allant e ede la mod´lisation d’une chambre ` celle d’une maison de campagne en passant par la version e asp´cifiquement d´di´e aux piscines. e e eCes derni`res ann´es, les interfaces de ces logiciels ont progress´ (voir Figure E.3), et les versions e e eles plus compl`tes de chaque suite savent g´rer les demi-niveaux, terrasses ou am´nagement des e e ejardins. 167
  • Annexe E. Approches manuellesFigure E.2. Plan et fa¸ade d’une maison cr´e par Architecte et Construction 3D (Anuman c eInteractive)Figure E.3. Exemple d’interface graphique, 3D Architecte Expert CAD 2008 (´dit´ par e eMicro Application) 168
  • Ces outils proposent ` pr´sent la possibilit´ d’obtenir un rendu final incluant les ombres port´es, a e e ela prise en charge de conditions atmosph´riques et des ´clairages d’int´rieurs (cf Figure E.4). e e e Figure E.4. Exemple de rendu final, 3D Architecte Expert CAD 2008 (´dit´ par Micro e e Application) 169
  • Annexe E. Approches manuelles170
  • Bibliographie[Ber92] P. Berlandier. Etude des m´canismes d’interpr´tation de contraintes et de leur e e int´gation dans un syst`me ` base de connaissance. PhD thesis, Universit´ de Nice, e e a e Sophia-Antipolis, 1992.[Bes91] C. Bessi`re. Arc-consistency in dynamic constraint satisfaction problems. In 9th e National conference on artificial intelligence (AAAI’93), Washington DC, pages 211–226, 1991.[BGC94] O. Balet, V. Gaildrat, and R. Caubet. Composed dynamic links for declarative modeling. International Journal of CADCAM and Computer Graphics, Vol 9, 1994.[Bon99] Pierre-Francois Bonnefoi. Techniques de satisfactions de contraintes pour la mod´lisation d´clarative. Application ` la g´n´ration concurrentes de sc`nes. PhD e e a e e e thesis, Universit´ de Limoges, 1999. e[BP99] Pierre-Francois Bonnefoi and Dimitri Plemenos. Object oriented constraint satis- faction for hierarchical declarative scene modeling. WSCG’99, 1999.[BR64] P. Bertier and B. Roy. Proc´dure de r´solution pour une classe de probl`me pou- e e e vant avoir un caract`re combinatoire. In Cahiers du Centre d’Etudes de Recherche e Op´rationnelle, 6 :202-208. ., 1964. e[BR75] J.R. Bitner and E.M. Reingold. Backtracking programming techniques. In Com- munications of the ACM 18(11) :651-656, 1975.[CDMM97] C. Colin, E. Desmontils, J. Martin, and J-P. Mounnier. Working modes with a declarative modeler. Compugraphics’97, 1997.[CH93] I. Charon and O. Hudry. The noising method : a new method for combinational optimization. In Operations Research Letters, 14 :133-137, 1993. 171
  • Bibliographie[Cha95] Philippe Charman. Gestion des contraintes g´om´triques pour l’aide ` e e a l’am´nagement spatial. PhD thesis, Ecole Nationale des Ponts et Chaussees, 1995. e[Cha98] Laurent Champciaux. Gestion des contraintes g´om´triques pour l’aide ` e e a l’am´nagement urbain. PhD thesis, Ecole des Mines de Nantes, 1998. e[CML01] J. Chanussot, G. Mauris, and P. Lambert. Fuzzy fusion techniques for linear features detection in multitemporal sar images. IEEE Trans. on Geoscience and Remote Sensing, 37(3) :1292–1305, 2001.[CS01] B. Coyne and R. Sproat. Wordseyes : an automatic text-to-scene conversion system. SIGGRAPH’01, 2001.[DB01] R. Debruyne and C. Bessiere. Domain filtering consistencies. Journal of AI research, 2001.[DG02] F. Dell’Acqua and P. Gamba. Extaction and fusion of street networks from fine resolution sar data. In IEEE Proc. IGARSS’02, International Conference on Geos- cience and Remote Sensing, Toronto, Canada, 2002.[DH93] D. Donikian and G. H´gron. A declarative design method for 3d scenes sketch e modeling. Eurographics’93, pp 223-236, 1993.[DM89] R. Dechter and I. Meiri. Experimental evaluation of pre-processing techniques in csp. In 11eme Joint Conference on Artificial Intelligence (IJCAI’89), Detroit, pages 271–277, 1989.[Don97] St´phane Donikian. Vuems : a virtual urban environment modeling system. Com- e puter Graphics International, pages 84–92, 1997.[Don04] St´phane Donikian. Mod´lisation, contrˆle et animation d´agents virtuels auto- e e o e nomes ´voluant dans des environnements inform´s et structur´s. PhD thesis, Uni- e e e versit´ de Rennes 1, IFSIC (Habilitation ` diriger des recherches), 2004. e a[Dor01] ´ G. Dorme. Etude et r´alisation de techniques de prise de connaissance de sc`nes e e tridimensionnelles. PhD thesis, Th`se de doctorat, Universit´ de Limoges, juin e e 2001., 2001.[DS90] G. Ducek and T. Scheuer. Threshold accepting : a general purpose optimization algorithm. In Journal of Computational Physics, 90 :161-175, 1990. 172
  • [EE98] David Eppstein and Jeffrey Gordon Erickson. Raising roofs, crashing cycles, and playing pool : applications of a data structure for finding pairwise interactions. In Proc. 14th Symp. Computational Geometry, pages 58–67. ACM, 1998.[EV01] C. Essert-Villard. S´lection dans l’espace des solutions engendr´es par un plan de e e construction g´om´trique. PhD thesis, Th`se de doctorat, Universit´ Louis Pasteur e e e e de Strasbourg, novembre 2001., 2001.[Flo56] M.M. Flood. The traveling-talesman problem. In Operation research, 4 :61-7, 1956.[FO98] Petr Felkel and Stepan Obdrzalek. Straight skeleton implementation. In L´szl´ Szir- a o may Kalos, editor, SCCG 98 : Proceedings of the 14th Spring Conference on Com- puter Graphics, pages 210–218. Comenius University. Bratislava, 6 1998.[FR89] T.A. Feo and M.G.C. Resende. A probabilistic heuristic for a computationally difficult set covering problem. In Operations Research Letters, 8 :67-71, 1989.[Fri03] Pascale Fribault. Mod´lisation d´clarative d’espaces habitables. PhD thesis, Univer- e e sit´ de Limoges, 2003. e[FW92] E. Feuder and R. Wallace. Partial constraint satisfaction. Artificial Intelligence, 58 :21–71, 1992.[Gai03] V´ronique Gaildrat. Mod´lisation d´clarative d’environnements virtuels : Cr´ation e e e e de sc`nes et de formes complexes par l’´nonc´ de propri´t´s et l’emploi d’interac- e e e ee tions gestuelles. PhD thesis, Habilitation ` diriger des recherches, Universit´ Paul a e Sabatier, janvier 2003., 2003.[GBHF05] Bj¨rn Gerth, Ren´ Berndt, Sven Havemann, and Dieter W. Fellner. 3d modeling for o e non-expert users with the castle construction kit v0.5. In Ryan et Scopigno Mudge, editor, Proceedings of ACM/EG VAST 2005, pages 49–57, 2005.[Geo] Geoconcept. Geographic information system developped by the geoconcept sa com- pany.[Gho90] P. K. Ghosh. A solution of polygon containment, spatial planning, and other rela- ted problems using minkowski operators. Computer Vision, Graphics and Images Processing, 49 :1-35, 1990.[GJ79] M.R. Garey and D.S. Johnson. Computers and intractability : a guide to the theory of NP-completeness. W.H. Freeman and Company, 1979. 173
  • Bibliographie[GJ96] D. Geman and B. Jedynak. An active testing model for tracking roads in satellite images. IEEE Trans. on Pattern Analysis and Machine Intelligence, 18(1), 1996.[GL95] A. Gruen and H. Li. Road extraction from aerial and satellite images by dynamic programming. ISPRS Journal of Photogrammetry and Remote Sensing, 50(4) :11– 20, 1995.[Glo86] Fred Glover. Future paths for integer programming and links to artificial intelli- gence. Computers and Operations Research, 13 :533-549, 1986.[Han86] P. Hansen. The steepest ascent mildest descent heuristic for combinatioral pro- gramming. Congress on Numerical Methods in Combinatioral Optimization, 1986.[Hav05] Sven Haveman. Generative Mesh Modeling. PhD thesis, TU Braunshweig, Germany, 2005.[HGH99] J-K Hao, P. Galinier, and M. Habib. M´taheuristiques pour l’optimisation combi- e natoire et l’affectation sous contraintes. Revue d’Intelligence Artificielle, 1999.[HL01] R. Huber and K. Lang. Road extraction from high resolution airborne sar using operator fusion. In Proc. IGARSS’01, International Conference on Geoscience and Remote Sensing, Sydney-Australia, 2001.[Hol75] J. H. Holland. Adaptation in natural and artificials systems. The University of Michigan Press, 1975.[How68] W. E. Howden. The sofa problem. Computer Journal, 11 :299–301, 1968.[Hyv92] E. Hyv¨nen. Constraint reasoning based on interval arithmetic’s : the tolerance o propagation approach. Artificial Intelligence, 58 :71–112, 1992.[Jeg91] P. Jegou. Contribution ` l’´tude des probl`mes de satisfaction de contraintes. PhD a e e thesis, Universit´ Montpellier des sciences et techniques du Languedoc, 1991. e[KGC97] Ghassan Kwaiter, V´ronique Gaildrat, and Ren´ Caubet. Oranos : Un solveur e e dynamique de contraintes hi´rarchiques et g´om´triques. In MICAD, 1997. e e e[KGV83] S. Kirkpatrick, C.D. Gelatt, and P.M. Vecchi. Optimization by simulated annealing. Science, 220 :671–680, 1983.[Kwa98] Ghassan Kwaiter. Mod´lisation d´clarative de sc`nes : ´tude et r´alisation de sol- e e e e e veurs de contraintes. PhD thesis, Universit´ Paul Sabatier, Toulouse, 1998. e 174
  • [LD03] R. G. Laycock and A. M. Day. Automatically generating roof models from building footprints. In WSCG, 2003.[LDG05] Mathieu Larive, Yann Dupuy, and V´ronique Gaildrat. Automatic generation of e urban zones. WSCG’2005, pages 9–12, 2005.[LH97] Sylvain Li`ge and G´rard H´gron. An incremental declarative modelling applied to e e e urban layout and design. WSCG’97, 1997.[Lho93] O. Lhomme. Consistency techniques for numeric csp. In 13th International Joint Conference on IA, 1993.[Li`96] e Sylvain Li`ge. La Mod´lisation D´clarative Incr´mentale : Application ` la Concep- e e e e a tion Urbaine. PhD thesis, Ecole des Mines de Nantes, 1996.[Lin68] Aristide Lindenmayer. Mathematical models for cellular interaction in development. Journal of Theoretical Biology 18 :280-289, 1968.[LLGC+ 05] Jean Latger, Alain Le Goff, Nicolas Champseix, Thierry Cathala, and Mathieu La- rive. Automatic 3d virtual scenes modeling for multi sensors simulation. to appear. In Proceedings of SPIE Defense and Security Symposium, 2005.[LR99] ´ Olivier Le Roux. Solveur de contrainte pour la mod´lisation d´clarative : Etude e e du probl`me de l’am´nagement spatial de sc`nes tridimensionelles sous contraintes. e e e Master’s thesis, Universit´ Paul Sabatier, Toulouse, 1999. e[LR03] Olivier Le Roux. Mod´lisation d´clarative d’environnements virtuels : contribution e e a e ` l’´tude des techniques de g´n´ration par contraintes. PhD thesis, Universit´ Paul e e e Sabatier, 2003.[LRG03] Olivier Le Roux and V´ronique Gaildrat. Constraint-based 3d isothetic object e layout for declarative scene modeling. CISST’03, 2003.[Mac77] A. Mackworth. Consistency in networks of relations. Artificial intelligence, 1977.[Mac91] Robert Maculet. Archipel : intelligence artificielle et conception assist´e par ordi- e nateur en architecture. PhD thesis, Universit´ Paris 6, 1991. e[MBST01] Xavier Marsault, Christophe Bertrand, Renato Saleri, and Jo¨lle Thollot. Bases e de donn´es urbaines 3d complexes. mod´lisation et restitution. Technical report, e e MAP-Aria, ´quipe iMAGIS/GRAVIR, 2001. e[Min97] H. Minkowski. Allgemein lehrs¨tze uber konvexe polyeder. Nach. Ges. Wiss. G¨ttin- a ¨ o gen :198 :219, 1897. 175
  • Bibliographie[Mit90] William J. Mitchell. The Logic of Architecture : Design, Computation,and Cogni- tion. MIT Press., 1990.[Moo79] R. Moore. Methods and Applications of Interval Analysis. Ed. SIAM, 1979.[Mos89] P. Moscato. On evolution, search, optimization, genetic algorithms and martial arts : towards memetic algorithms. Technical report, Caltech Concurrent Computation Program, C3P Report 826, 1989.[MRR+ 53] N. Metropolis, A. Rosenbluth, M. Rosenbluth, A. H. Teller, and E. Teller. Equation of state calculation by fast computing machines. J. Chem. Phys., vol. 21, 1953.[MWS+ 06] Pascal M¨ller, Peter Wonka, Haegler Simon, Andreas Ulmer, and Luc Van Gool. u Procedural modeling of buildings. In SIGGRAPH, 2006.[MY01] B. Medjoub and B. Yannou. Dynamic space ordering at a topological level in space planning. Artificial Intelligence in engineering, 15 :47-60, 2001.[MZWG07] Pascal M¨ller, Gang Zeng, Peter Wonka, and Luc Van Gool. Image-based procedural u modeling of facades. In Proceedings of ACM SIGGRAPH 2007 / ACM Transactions on Graphics, 2007.[O’R98] J. O’Rourke. Computational Geometry in C second edition. Cambridge University Press, 1998.[Per06] Julien Perret. Mod´lisation d’environnements urbains virtuels. PhD thesis, Univer- e sit´ de Rennes 1, 2006. e[PL91] P. Prusinkiewicz and A. Lindenmayer. The Algorithmic Beauty of Plants. Springer Verlag, 1991.[PM01] Y. Parish and P. M¨ller. Procedural modeling of cities. ACM SIGGRAPH, 2001. u[Pur07] Arnaud Puret. Projet HM2PH, G´n´ration automatique de plan et visite virtuelle e e d’habitats adapt´s pour personnes handicap´es. PhD thesis, Univerit´ Francois Ra- e e e belais de Tours, 2007.[Rec73] I. Rechenberg. Evolutionasstrategie : optimierung technisher systeme nach prinzi- pien der biologischen evolution. Frommann-Holzboog, 1973.[RMS96] A. RauChaplin, B. MacKayLyons, and P. Spierenburg. The lahave house project : Towards an automated architectural design service. Cadex’96, pp. 24-31, 1996. 176
  • [RP02] William Ruchaud and Dimitri Plemenos. Multiformes : a declarative modeller as a 3d scene sketching tool. ICCVG’2002, 2002.[Ruc01] Wiiliam Ruchaud. Etude et r´alisation d’un moteur de r´solution de contraintes e e g´om´triques pour la mod´lisation d´clarative. PhD thesis, Universit´ de Limoge, e e e e e 2001.[San00] Stephane Sanchez. Solveur de contraintes g´om´triques pour la mod´lisation e e e d´clarative, r´solution d’un probl`me d’am´nagement spatial ` l’aide d’un algo- e e e e a rithme’. Master’s thesis, Universit´ Paul Sabatier, Toulouse, 2000. e[SFV95] T. Schiex, H. Fargier, and G. Verfaillie. Valued constraint satisfaction problems : Hard and easy problems. In Morgan Kaufmann, editor, 14th Inter. Joint Conf. on Artificial Intelligence (IJCAI’95), 1995.[SMTS05] U. Soergel, E. Michaelsen, U. Thoennessen, and U. Stilla. Potential of high- resolution sar images for urban analysis. In URBAN, 2005.[Sny92] J. M. Snyder. Interval analysis for computer graphics. In SIGGRAPH’9, Computer Graphics, 1992.[SRGL03] Stephane Sanchez, Olivier Le Roux, V´ronique Gaildrat, and Herv´ Luga. e e Constraint-based 3d-object layout using a genetic algorithm. 3IA’03, 2003.[Sti75] Georges Stiny. Pictorial and formal aspects of shape and shape grammars : on computer generation of aesthetic objects. Birkhauser, 1975.[Sto01] R. Stoica. Processus ponctuels pour l’extraction de r´seaux lin´iques dans les images e e satellitaires et a´riennes. PhD thesis, Universit´ de Nice-Sophia Antipolis, 2001. e e[Tho99] Gwenola Thomas. Environnements virtuels urbains : mod´lisation des informations e n´cessaires ` la simulation d’humano¨ e a ıdes. PhD thesis, Universit´ Rennes I, IRISA, e Rennes, 1999.[Tsa93] E. Tsang. Foundation of constraint satisfaction. Academic press, London, 1993. ISBN 0-12-701610-4.[Tup97] F. Tupin. Reconnaisance de formes et analyse de sc`nes en imagerie radar ` ouver- e a ture synth`tique. PhD thesis, Ecole Nationale Sup´rieure des T´l´communications e e ee de Paris, 1997.[Van86] Claude Vandeloise. L’espace en francais. Le Seuil, 1986. 177
  • Bibliographie[VMC+ 02] N. Vassilas, G. Miaoulis, D. Chronopoulos, E. Konstantinidis, I. Ravani, and D. Ple- menos. Multicad-ga : A system for the design of 3d forms based on genetic algo- rithms and human evaluation. SETN, pp. 203-214, 2002.[Wal75] D. Waltz. Understanding line drawings of scenes with shadows. The psychology of computer vision, pages 19–91, 1975.[WHMJ98] C. Wiedemann, C. Heipke, H. Mayer, and O. Jamet. Empirical evaluation methods in computer vision, chapter Empirical evaluation of automatically extracted road axes, pages 172–187. K.J. Bowyer and P.J. Phillips Eds., 1998.[WWSR03] Peter Wonka, Michael Wimmer, Fran¸ois Sillion, and William Ribarsky. Instant ar- c chitecture. ACM Transactions on Graphics, 4(22) :669–677, july 2003. Proceedings of ACM SIGGRAPH 2003.[XSF02] K. Xu, J. Stewart, and E. Fiume. Constraint-based automatic placement for scene composition. Graphics Interface’02, 2002. 178