Home

Rapport de synthèse du projet - Accueil, Maxime ANDRÉ, étudiant

image

Contents

1. Niveau de priorit Correspondance Tableau 2 Niveaux de priorit Niveau de Identifiant Besoin k A priorit BI Fonctions BI I Permettre l utilisateur de visualiser une simulation B1 12 Permettre aux utilisateurs de visualiser sans interruption une ni simulation de mouvements de foule dans une zone a roportuaire B1 13 Permettre aux utilisateurs de visualiser avec interruption une E simulation de mouvements de foule dans une zone a roportuaire BI 1 4 Permettre aux utilisateurs de visualiser une simulation sauvegard e BILLS Le syst me permet l utilisateur de revoir rapidement et facilemen E une simulation sauvegard e Permettre aux utilisateurs de sauvegarder les donn es d une BI 2 simulation interrompue dans un syst me de gestion de donn es adapt Le syst me permet l utilisateur de choisir les param tres B1 3 d utilisation du simulateur zoom nombre de personnages zone a roportuaire traiter B1 4 Le syst me conna t les coordonn es des points en haut gauche et i en bas droite de l image Le syst me utilise les algorithmes de Fast Marching et d Uzawa pour BI 5 permettre l utilisateur de visualiser le comportement d une foule dans une zone a roportuaire B2 Performances attendues B2 Les temps de calcul doivent tre quivalents ou plus faibles que ceux obtenus en ADA Projet JAVA Simulation de mouvements de fo
2. www virusphoto com 752 comprendre linterpolation numerique html 14 Class ConvolveOp http docs oracle com javase 7 docs api java awt image ConvolveOp html 15 Class AffineTransformOp http docs oracle com javase 7 docs api java awt image AffineTransformOp html 16 Algorithme de Bresenham http rvirtual free fr programmation OpenGl Sdin c 102 htm D Outils de codage 16 Java Platform Standard Edition 7 API Specification http docs oracle com javase 7 docs api Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 41
3. l utilisateur de sauvegarder la simulation en cours Permettre l utilisateur de charger et donc d afficher une image enregistr e Permettre l utilisateur de choisir les param tres de simulation Permettre l utilisateur de placer o il le souhaite les sorties Permettre l utilisateur de placer al atoirement les personnes CUI Lancement d une nouvelle simulation CU2 Lancement d une simulation sauvegard e CU3 Comparaison des r sultats CU4 Interrompre la simulation CUS Reprendre la simulation CU6 Enregistrement de la simulation CU7 Charger une image CUB8 Rentrer les param tres CU9 S lectionner les sorties CU10 Placer les personnes Tableau I Diff rents cas d utilisation du syst me avec leur description Les besoins sont pr sent s dans le tableau 3 ci dessous en prenant la classification suivante Besoins de type Fonctions Besoins de type Performances attendues Besoins de type Interfaces Besoins issus des Sc narios op rationnels Besoins de type Contraintes Ce tableau 3 regroupe tous les besoins issus des points forts et des points faibles du simulateur de mouvements de foule r alis en langage ADA phase 1 Les diff rents besoins sont regroup s par niveaux de priorit comme le montre le tableau 2 Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 37 ENAC
4. s de la traduction du traitement d image ainsi que de l impl mentation de l interface de notre simulateur et la sauvegarde des donn es Margaux a t nomm e chef de projet et s est donc charg e de la coordination des diff rentes phases de notre projet du bon suivi de notre planning des compte rendus d avancement Nous avons ainsi pu r aliser les premi res recherches sur nos parties et au fur et mesure de l avanc e de la conception objet nous avons pu commencer coder Le but tait de traduire rapidement ce qui avait t d j impl ment pour se pencher au plus vite sur les nouveaut s du cahier des charges En parall le nous devions avancer le plan de projet le dossier des besoins le dossier de conception orient e objet le rapport de synth se et le plan de v rification et validation Le regroupement de nos deux parties a d but d but juin Par manque d heures de projet programm es et au vu du retard pris dans la compr hension de l algorithme d Uzawa s av rant plus complexe que pr vu le regroupement a pris un peu de retard sur notre planification La qualit de nos d veloppements et leur conformit avec la conception nous a permis de regrouper rapidement le code et d obtenir de bons r sultats sur le programme commun Les pr cautions et l organisation prises d s le d but du projet nous ont donc tr s fortement aid et permis d avancer tr s rapidement dans un processus o nous pensions
5. En effet le rendu des diff rents rapports ainsi que des codes sources doit se faire sur cette plateforme Cependant nous avons rencontr quelques difficult s lors de son installation n cessaire mais n anmoins complexe et son adaptation dues nos diff rents syst mes d exploitation Windows Linux Mac OS Le risque concernant GIT est contenu dans celui li au temps d adaptation logiciel qui avait t d fini dans le plan de projet partie 10 b Nous sommes n anmoins conscients que c est un outil utilis dans la vie professionnelle des ing nieurs et qu il peut tre plus efficace pour travailler en groupe que d autres techniques moins pouss es mais nous pensons que globalement cet outil a cr plus de probl mes et nous a fait perdre du temps Dropbox est un service de stockage et de partage de copies de fichiers locaux en ligne Nous lutilisons pour partager et modifier nos fichiers m me les fichiers code source Cependant pour que ces modifications soient visibles par tous il faut s assurer que le document ne soit ouvert qu une seule fois durant l enregistrement de ces modifications et non sur plusieurs postes la fois Si plusieurs personnes travaillent dessus en m me temps ou que le document est encore ouvert sur un autre poste les modifications seront visibles uniquement par la personne qui les a effectu sur son compte Ses collaborateurs garderont la version non modifi e Il faudra donc veiller
6. des besoins et de leur criticit bas e sur les l ments du cahier des charges nonc s par nos clients et gr ce la biblioth que graphique Swing j SIMULATION DU MOUVEMENT DE FOULE A Fichier Simulation Aide Figure 12 Interface graphique L interface graphique se compose d un grand container une JFrame qui contient elle m me en bleu une barre de menus pour ouvrir des images acc der au manuel utilisateur lancer ou relancer une simulation en rouge une toolbar qui contient tous les boutons pour le traitement de l image et pour lancer et stopper la simulation l image et la simulation Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 19 ENAC Choix des param tres de simulation L interface doit permettre l utilisateur de s lectionner ses param tres de simulation Pour cela on utilise des JSpinners un Jspinner appel jSpinner_nb_personnages qui permet de renseigner le nombre de personnages de la simulation un Jspinner appel jSpinner_nb sorties qui permet de renseigner le nombre de sorties pr sentes dans l image un Jspinner appel jSpinner_tps_ simulation qui permet de renseigner le temps total de la simulation Pour viter toute interaction malencontreuse les diff rents boutons et les spinners sont d sactiv s lorsque l on ne doit pas les utiliser louverture de l application par exemple to
7. interne par CalculVoisin qui permet de calculer un voisin en particulier donn par ses coordonn es Image Interface faite mais non utilis e contenant les m thodes abstraites impl ment es dans ImageMat java ImageMat classe qui construit une matrice image partir de ses dimensions lignes et colonnes Point d pendant de l interface Comparable Point mod lise un pixel de l image dans lequel on veut garder certaines informations pour le Fast Marching telles que l tat Ombre P nombre Eclaire la distance la sortie val ou encore les coordonn es Les tests unitaires ont t labor s au fur et mesure de la traduction Une fois la traduction faite on testera la non r gression par rapport au code ADA puis son int gration dans le reste du code Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 22 ENAC D Sauvegarde et r cup ration des donn es de simulation La sauvegarde et la r cup ration des donn es des simulations ayant d j t faites lors de la premi re phase du projet elles faisaient partie de notre cahier des charges Une classe Sauvegarde 2 t cr e comprenant deux m thodes principales une m thode criture une m thode lecture l Sauvegarde La m thode criture crit ligne ligne dans un fichier les caract ristiques des points d une ImageMat utilis e par l algorithme de Fast Marching On crit ainsi la valeur d
8. passer de nombreuses heures Finalement apr s avoir mis nos parties en commun nous avons aussi pu passer plus de temps sur les parties de management de projet rapports dossier de tests etc Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 26 ENAC B Suivi du projet Conform ment la planification labor e dans notre plan de projet l avancement a t globalement respect chaque semaine Un rapport d avancement a galement t envoy nos tuteur tous les quinze jours environ De plus des r unions d avancement r parties sur la p riode impartie nous ont permis de tenir au courant nos tuteurs du bon d roulement et de l avanc e de notre projet Notre projet a pris un peu de retard au d but d l absence d heures enti rement d di es au projet l assimilation tardive des cours de conception orient e objet des cours JAVA et des TP JAVA n ayant finis que le 27 mai il a donc fallu laborer notre phase de d veloppement en dehors de nos heures de cours et ainsi anticiper certaines parties de notre impl mentation savoir par exemple l laboration de notre interface C Contraintes Les contraintes d organisation ne sont pas nombreuses mais jouent n anmoins un r le important dans le suivi de notre projet notamment les logiciels de partage de fichiers Dropbox et de codes sources GIT GIT est un syst me de management de code source et fait parti de nos livrables
9. que deux couleurs au sein de l image du blanc et du noir Le principe est de cr er une BufferedImage de type TYPE BYTE_BINARY au sein de laquelle on va venir recopier le contenu de l image initiale au format RGB TYPE_INT_RGB b Le lissage Pour liminer toutes les asp rit s de l image pr sentes si la photo de la salle de simulation a mal t prise l utilisateur doit sa convenance lisser l image c est dire liminer le bruit qui est apparu Pour r aliser ce lissage nous avons utilis la classe Kernel java awt image Kernel et la classe ConvolveOp java awt image ConvolveOp pour r aliser une convolution de l image c est dire lui appliquer un flou c Agrandissement zoom plus et r duction zoom moins Selon la taille initiale de l image l utilisateur peut avoir envie de r duire ou d agrandir l image pour arriver au niveau de zoom qu il d sire pour visualiser la simulation Pour r aliser les op rations de zoom nous avons utilis la classe AffineTransformOp java awt image AffineTransformOp et effectu une interpolation bicubique de l image initiale java awt Affine TransformOp TYPE_BICUBIC En effet lorsqu on zoome il est n cessaire de cr er des pixels l interpolation consiste ajouter des pixels l o il n y en a pas ou au contraire en enlever en cas de d zoom Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 9 ENAC Prin
10. que les actions de zoom sont destructices il a fallu cr er une fonction annuler Pour cela nous avons cr deux piles pour stocker d une part une copie de l image avant chaque traitement et d autre part un souvenir de l op ration pass e on stocke un dans la pile lorsqu on effectue un lissage on stocke un 2 dans la pile des pour un zoom plus on stocke un 3 dans la pile pour un zoom moins on stocke un 4 dans la pile pour une action annuler En effet si l utilisateur effectue un zoom plus et qu il clique ensuite sur zoom moins il ne faut pas effectuer un r el zoom moins mais plut t annuler le zoom plus Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 21 ENAC C Algorithme de Fast Marching et descente de gradient La descente de gradient effectu e lors du premier projet n tant pas optimale la premi re tape a d abord consist l am liorer en ADA Apr s avoir constat son optimisation la traduction en elle m me a pu tre d but e La traduction du Fast Marching a r sult sur quelques modifications d impl mentation qui permettent d exploiter au mieux le caract re objet du langage JAVA Les classes utilis es seront rassembl es dans un paquetage FastMarching fm classe contenant l impl mentation de l algorithme de Fast Marching Cet algorithme est mis en ouvre l aide d une fonction appel e en
11. rgb Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 12 ENAC else Idem que la partie pr c dente dans le cas ou la variation suivant y est plus grande que celle suivant x cumul dy 2 for i l1 i lt dy i y yinc cumul dx if cumul gt dy cumul dy X xinc monImage setRGB x y rgb Puis on r initialise l objet porte pour d tecter une nouvelle porte Figure 3 Algorithme de Bresenham Nous tra ons ici un trait en coloriant en rouge un seul pixel la fois En agrandissant on obtient une image avec des pixels dispos s de telle sorte Figure 4 Trac de sortie primaire Mais ce syst me ne marche pas avec l algorithme de comportement que nous utilisons pour valider le simulateur Principe g n ral de l algorithme de comportement basique utilis Pour viter que les personnes se superposent on a consid r au d part que chaque individu pr sent sur un pixel analysait la pr sence ou non d individus sur les pixels situ s sur un rayon Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 13 ENAC Consid rons que la personne se trouve dans le pixel vert au centre Figure 5 Position de la personne avec un rayon 1 Si elle souhaite se d placer vers le pixel du dessus elle va regarder si les pixels autour du pixel vis repr sent en gr
12. sorties pr c demment trouv es mais dans toutes les directions il est donc n cessaire de transformer l ext rieur de la salle zone verte de la figure 4 de simulation en zone obstacle Figure 10 Ext rieur de la salle a roportuaire transformer en noir Il s agit donc de transformer les pixels blancs l ext rieur de la zone en pixels noirs Pour cela nous avons appliqu l algorithme de FloodFill ou algorithme de remplissage par diffusion que chacun a probablement d j eu l occasion d utiliser sans le savoir au sein d un logiciel de traitement d image le fameux pot de peinture Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 16 ENAC Cet algorithme prend trois param tres pour une image donn e la position du pixel de d part appel aussi germe la couleur cibl e colcible ici le blanc la couleur de remplacement colrep ici le noir Figure 11 Image trait e par l algorithme de FloodFill L algorithme recense tous les pixels de l image qui sont connect s au germe par un chemin de la couleur cibl e et substitue cette derni re la couleur de remplacement Il y a plusieurs mani res de structurer cet algorithme mais celle que nous avons retenue est la suivante Soit P une pile vide Si couleur pixel consid r colcible alors sortir de l algorithme Fin si Tant que P est non vide faire D piler le premier pixel n de P c
13. volution de chaque individu Pour visualiser cette volution on peut mod liser la zone a roportuaire sous la forme d une grille dont chacune des cases est soit vide soit occup e par une personne D une part chaque personne a une vitesse souhait e celle qu elle aurait en l absence des autres d autre part la vitesse r elle des individus prend en compte une certaine contrainte d encombrement maximal Plus pr cis ment dans le mod le tudi la vitesse r elle est la projection de la vitesse souhait e sur un ensemble dit admissible qui respecte une contrainte de non chevauchement des disques repr sentant les individus Le mod le en choisissant une vitesse souhait e particuli re celle dirig e par le plus court chemin vitant les obstacles utilise la m thode reposant sur l algorithme de Fast Marching alors que celui choisissant la vitesse r elle comme projection de la vitesse souhait e repose sur l algorithme d Uzawa Probl matique Analyse de l existant Le but de ce projet est de r aliser des simulations de mouvements de foule en zone a roportuaire Le simulateur de mouvement de foule envisag a d j fait l objet d une premi re phase d tude et de d veloppement en langage ADA et permet notamment o une d finition des param tres de simulation o l extraction d une cartographie du lieu de simulation partir d une image o la mise en application d un algorithme de Fast Marching qui calcule les distance
14. 0 ENAC VIIT Bibliographie A Algorithmes de comportement et th orie des mouvements de foule 1 Mod lisation macroscopique de mouvements de foule A Roudneff Chupin Th se de doctorat d universit en math matiques facult des sciences d Orsay universit Paris XI Paris Sud Paris 12 d cembre 2011 2 Simulation de mouvements de foules M Az ma M Andr C Zimmermann et E Boudassou rapport de projet ADA IA IENAC 12S ENAC Toulouse 7 f vrier 2014 3 Un mod le macroscopique de mouvements de foule A Roudneff Chupin et B Maury S minaire des doctorants d Orsay universit Paris Sud Paris XI Paris 7 octobre 2010 6 Etude exp rimentale et mod lisation des d placements collectifs de pi tons M Moussa d Th se de doctorat d universit en thologie universit de Toulouse III Paul Sabatier Toulouse 18 juin 2010 10 Mod lisation de l vacuation d une foule N Chabriac M moire de TIPE sp cialit math matiques Lyc e Pierre de Fermat Toulouse 10 avril 2012 B Algorithme d Uzawa L JAMA A Java Matrix Package http math nist gov javanumerics jama 12 Mod lisation math matique et num rique de mouvements de foule Venel Th se de doctorat d universit en math matiques n d ordre 9245 facult des sciences d Orsay universit Paris Sud Paris XI Paris 27 novembre 2008 C Traitement d image 13 Comprendre l interbolation num rique VIRUSPHOTO http
15. PNA Simulation de mouvements de foule dans une zone a roportuaire phase 2 Margaux Az ma Maxime Andr C dric Zimmermann Estelle Boudassou Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 ENAC Introduction Contexte de l tude Support de l tude Cahier des charges Choix du p rim tre de travail Traduction du code ADA en code JAVA Traitement d image Figure I D tection de portes par l algorithme de Bresenham Figure 2 Gestion des segments de d tection de sorties Figure 3 Algorithme de Bresenham Figure 4 Trac de sortie primaire Figure 5 Position de la personne avec un rayon I Figure 6 D placement d une personne avec un rayon I Figure 7 D placement d une personne avec un rayon 2 Figure 8 Probl me de d placement avec un rayon 2 au niveau des sorties Figure 9 Trac final adapt Figure 10 Ext rieur de la salle a roportuaire transformer en noir Figure 1 1 Image trait e par l algorithme de FloodFill Conception de l IHM et m canismes rattach s Figure 12 Interface graphique Figure 13 Machine tats Algorithme de Fast Marching et descente de gradient Sauvegarde et r cup ration des donn es de simulation Impl mentation Mise en oeuvre de l algorithme de comportement Uzawa Figure 14 Repr sentation de la distance entre deux personnes i et j Mise en oeuvre de l algorithme d it ration Euler Projet JAVA Simulation de mouvements de f
16. ants Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 Il ENAC On a deux parties alternatives dans l algorithme une pour incr menter en x si le segment a tendance tre plut t horizontal l autre pour l incr menter en y si le segment a tendance tre plut t vertical en fonction de la pente du segment L algorithme s crit de la fa on suivante int dx dy 1 sinC yine cumul x ys ipt i yt X yE int rgb 0xFF0000 rouge x xi y yi dx xf xi On calcul la variation suivant x dy yf yi Puis celle suivant y On affecte les valeurs ad quates pour xinc et yinc 3E dx gt 0 xinc 1 else xinc l if dy gt 0 yinc 1 else yinc l APP RERRE SELLER EL ERNEST I NE EANE ETAT ALTIA IUIL dx dy Math abs dx Math abs dy monImage setRGB x y rgb On allume le pixel de coordonn es x y le premier pixel clair est naturellement le point de d part On allume un pixel en chaque abscisse enti re x de xi xf if dx gt dy cumul dx 2 la variable cumul est utilis e pour stocker une estimation de la diff rence entre l ordonn e enti re et l ordonn e r elle for i l1 i lt dx i x xinc On incr mente x de xinc cumul dy if cumul gt dx cumul dx y yinc Puis y de yinc monImage setRGB x y
17. bar contenant un Lancement d une nouvelle simulation bouton Lancer la simulation oi Interface impl mentation Le syst me permet de r aliser le cas d utilisation CU2 pi B4 2 i pars d un algorithme de Lancement d une simulation sauvegard e sauvegarde Dans l interface Xoj E impl mentation d une Le syst me permet de r aliser le cas d utilisation CU4 P B4 4 a toolbar contenant un Interrompre la simulation A bouton Arr ter la simulation Dans l interface o 0 impl mentation d une Le syst me permet de r aliser le cas d utilisation CUS P B4 5 toolbar contenant un bouton Reprendre la simulation Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 31 ENAC Identifiant Besoin Solution n ai ea a Interface impl mentation Le syst me permet de r aliser le cas d utilisation CU6 pu B4 6 Ma d un algorithme de Enregistrement de la simulation sauvegarde Le syst me permet de r aliser le cas d utilisation CU7 B4 7 y P 5 menu interface Charger une image Le syst me permet de r aliser le cas d utilisation CU8 B4 8 y P ee Jspinners et toolbar Rentrer les param tres Dans l interface z ran impl mentation d une Le syst me permet de r aliser le cas d utilisation i B4 10 h i toolbar utilisant des CUI0 Placer les personnes Jspinners placement des
18. ce qu il puisse tre remplac facilement par un autre Contraintes suppl mentaires Le simulateur devra pouvoir sauvegarder dans des fichiers l tat d avancement de chaque simulation intervalle de temps r gulier intervalle d fini de fa on arbitraire Ces fichiers seront dat s et permettront par la suite de red marrer et visualiser une simulation interrompue sans avoir la relancer depuis le d part ainsi que rejouer une simulation d j visualis e afin d ventuellement comparer les r sultats de plusieurs simulations C Choix du p rim tre de travail Pour ce qui est de la d finition des param tres de simulation on prendra une image d entr e apr s un traitement d image ad quat qui proviendra de l extraction d une cartographie du lieu de simulation qui se fera avec l aide de classe d j impl ment e en JAVA On produira une matrice de coefficients qui repr sentera la zone a roportuaire tudier le temps de simulation la simulation pourra ainsi s arr ter de mani re automatique quand ce temps de simulation sera atteint une nombre initial de personnes celle ci seront r parties dans un carr contenu dans la zone qui lui m me sera plac l initiative de l utilisateur le nombre de sorties l utilisateur choisira le nombre de sorties et pourra d tecter leurs extr mit s au clic sur les contours pour permettre le traitement de l image par l algorithme de Fast Marching Les
19. cipe de l interpolation Notre but tait de perdre le moins de qualit possible lors du zoom et d zoom de l image traiter L interpolation utilise les pixels connus de l image et estime des pixels interm diaires pour les pixels manquants Pour cr er un nouveau pixel en cas de zoom il suffit de trouver la meilleure estimation possible de la couleur et de l intensit d un pixel en se basant sur les valeurs des pixels qui l entourent Sans interpolation le traitement d image consiste uniquement agrandir les pixels et on perd ainsi en qualit Nous avons r fl chi deux m thodes d interpolation L interpolation bilin aire qui prend en compte les quatre pixels les plus proches du pixel inconnu et fait une moyenne des valeurs de ces quatre pixels pour interpoler le pixel manquant L interpolation bicubique qui quant elle va plus loin que l interpolation bilin aire les seize pixels les plus proches du pixel interpoler sont pris en compte tout en donnant une importance plus grande ceux qui sont les plus proches du pixel interpoler Nous avons choisi cette m thode car c est celle qui donne les meilleurs r sultats en terme de qualit et en temps Ces deux principes sont expliqu s sur le site VIRUSPHOTO Comprendre l interpolation num rique d D tection de la des porte s Contrairement au projet ADA en JAVA le choix a t fait de ne pas poser de restrictions quant au nombre et au positionnement
20. des portes nous avons donc d revoir la m thode utilis e pour les d tecter dans le cadre de la premi re phase du projet Ainsi nous avons d cid de laisser l utilisateur cliquer directement sur l image pour renseigner le point d entr e et de sortie de chaque porte via une interface graphique les donn es r colt es sont ensuite stock es dans les attributs d une classe particuli re nomm e Porte Gr ce aux coordonn es r cup r es nous avons pu tracer un trait entre les deux extr mit s d tect es la main c est dire changer les pixels de la sortie en rouge Pour cela Palgorithme de Bresenham a t utilis il permet le trac d une droite entre deux points en un minimum de pixels dit allum s on allume les pixels passant le plus pr s possible de la ligne id ale Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 10 ENAC Fonctionnement de l algorithme de Bresenham utilis xiyi et x y repr sentent respectivement le point d entr e et le point de sortie de la porte Figure 1 D tection de portes par l algorithme de Bresenham On utilise deux variables pour g rer des incr ments de ou pour x variant de xi xs et y variant de yi yr Figure 2 Gestion des segments de d tection de sorties Xinc t Yinc donnent la tendance du segment segment avec une pente positive n gative vers les x croissants vers les x d croiss
21. e la simulation B4 6 Le syst me permet de r aliser le cas d utilisation CU6 Enregistrement de la simulation B4 7 Le systeme permet de r aliser le cas d utilisation CU7 Charge une image B4 8 Le systeme permer de r aliser le cas d utilisation CUB Rentrer les param tres B4 9 Le syst me permet de r aliser le cas d utilisation CU9 S lectionner les sorties B4 10 Le systeme permet de r aliser le cas d utilisation CU 10 Placer les personnes B5 Contraintes Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 39 ENAC Identifiant Besoin B5 Le syst me doit enregistrer les donn es de chaque simulation intervalles de temps r guliers B5 2 Le syst me doit offrir un temps de recherche de simulations i sauvegard es ad quat Le syst me doit conserver l ensemble des fonctionnalit s du B5 3 i Le simulateur r alis en ADA B5 4 Le syst me doit offrir l utilisateur un param trage suffisant B5 5 Le syst me doit tre accompagn d un manuel d utilisation B5 6 Le syst me fonctionne sur n importe quel syst me d exploitation Linux Windows MacOS B5 7 Le syst me n arr te pas son ex cution si l utilisateur se trompe dans i la gestion des param tres Tableau 3 Synth se des besoins du simulateur Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 Niveau de priorit 4
22. e d velopp e initialement a t am lior e En effet les calculs sont maintenant effectu s avant l affichage de la simulation pour permettre l utilisateur d adapter la vitesse de visionnage de la simulation B Tests Les tests effectu s tout au long de l impl mentation de notre simulateur ont permis de valider les l ments du cahier des charges soumis cf l B Cahier des charges la traduction en JAVA du logiciel d velopp en ADA a t effectu e dans son int gralit Les fonctionnalit s ont pu m me tre am lior es performances les temps de calcul ont t constat s plus courts en JAVA le placement al atoire des personnes se fait dans une zone choisie par l utilisateur l algorithme de comportement ayant servi la validation du logiciel en phase a t mis en ouvre et galement am lior cf Il A 2 d D tection de la des porte s Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 28 SIMULATION DU MOUVEMENT DE FOULE Fichier Aide Traitement de l image Param tres de simulation O susrenore La simuLATION m ARRETER LA SIMULATION Vitesse de simulation B Figure 16 Lancement d une simulation avec l algorithme de comportement basique l algorithme d volution d une foule savoir l algorithme d Uzawa a t impl ment cependant on contaste qu il ne converge pas de fa on chaqu
23. e fois de mani re certaine Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 29 ENAC C Matrice de conformit cf Annexe 2 R capitulatif des cas d utilisation des besoins et de leur niveau de priorit Nous avons choisi de garder ici les besoins principaux c est dire ceux correspondant au niveau de priorit Identifiant Besoin Solution BI Fonctions sh 2 Impl mentation d une BI I Permettre l utilisateur de visualiser une simulation interface Dans l interface Permettre aux utilisateurs de visualiser sans impl mentation d une BI 1 2 interruption une simulation de mouvements de toolbar contenant un foule dans une zone a roportuaire bouton Lancer la simulation Dans l interface Permettre aux utilisateurs de visualiser avec impl mentation d une BI 1 3 interruption une simulation de mouvements de toolbar contenant un foule dans une zone a roportuaire bouton Arr ter la simulation p PPA Interface impl mentation Permettre aux utilisateurs de visualiser une simulation f BI 1 4 d un algorithme de sauvegard e sauvegarde Permettre aux utilisateurs de sauvegarder les donn es Interface impl mentation BI 2 d une simulation interrompue dans un syst me de d un algorithme de gestion de donn es adapt sauvegarde i Dans l interface Le syst me permet l utilisateur de choisir les T ea j impl menta
24. e la hauteur de l image sur la premi re ligne du fichier la valeur de la longueur de l image sur la deuxi me ligne du fichier pour chaque point ses coordonn es enti res suivies de sa valeur qui repr sente la distance la sortie Chaque caract ristique est s par e par un espace et le passage la ligne se fait quand on a atteint les caract ristiques du Point situ le plus gauche de l image Pour cela nous utilisons la classe BufferedWriter java io construit partir d un FileWriter java io On peut ainsi crire ligne ligne et non pas caract re par caract re 2 R cup ration Inversement il faut pouvoir r cup rer les donn es d une simulation sauvegard e La m thode lecture lit directement les donn es de simulation crites dans un fichier On utilise la classe Scanner java util construit partir d un FileReader java io Cette fois les caract res sont lus trois par trois pour r cup rer les caract ristiques d un m me point Les valeurs r cup r es sont ensuite utilis es pour construire des Points utilisables par l algorithme de Fast Marching qui sont ensuite stock s dans un tableau de Points Remarque Cette m thode de sauvegarde a t impl ment e mais n est pas utilis e car nous lui avons pr f r la s rialisation qui est en cours de r alisation Cette m thode prend des donn es d objets en m moire les transforme en s quence d octets pour les stocker dans des fichi
25. enregistrer les nouvelles versions sous un nouveau fichier afin de rep rer la version originale sur son compte Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 27 ENAC V Retour d exp rience A Mise en oeuvre de l architecture La phase de conception objet a t grandement facilit e par notre connaissance du cahier des charges de la premi re phase du projet Cette analyse a t tout de m me modifi e car aux besoins de la phase se sont rajout s les nouveaux besoins de notre nouveau cahier des charges La conception objet faite au d but de la phase 2 a t tr s fiable et de bonne qualit En effet nous n avons pratiquement pas modifi celle ci et qui plus est les r sultats en termes de performance et de qualit ont t satisfaisants Les seules modifications de conception qui ont t faites concernent le mod le du domaine la classe AlgoBasique reprise de AlgoBasique en multi thread a t supprim e car le multi thread ici n est pas utile les classes PixelObstacle PixelSortie PixelZoneVierge d riv es de la classe Pixel ont t supprim es au profit de la classe Point repr sentation d un Pixel de ImageMatrice La diff renciation des diff rents pixels est faite l aide de coefficients pour chaque type de points la classe ImageMatrice t rajout e pour repr senter la ZoneA roportuaire et est constitu e des diff rents points L interfac
26. ers Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 23 ENAC Ill Impl mentation Mise en oeuvre de l algorithme de comportement Uzawa Le mod le de mouvement de foule que nous proposons repose sur deux principes D une part on d finit un champ de vitesses souhait es correspondant au d placement que ferait une personne seule D autre part le d placement effectif doit respecter une contrainte d encombrement maximal Cf Annexe l Aspects math matiques de lPalgorithme d Uzawa Les N individus sont assimil s des disques de rayon r rep r s par les coordonn es de leurs centres R2N q q1 qN Les obstacles sont repr sent s par un ensemble de segments Par souci de clart on ne pr sente que la gestion des contacts entre personnes mais il en est de m me des contacts entre les personnes et les obstacles Les disques ne devant pas se chevaucher le vecteur position q doit appartenir un ensemble de configurations admissibles Figure 14 Repr sentation de la distance entre deux personnes i etj Remarque Nous avions initialement pr vu d utiliser la classe Uzawa d j existante mais celle ci n tant pas assez document e nous avons pr f r l impl menter par nous m me l algorithme d Uzawa ne fonctionne pas lorsque qu il n y a qu une seule personne dans la zone tudier IndexOutOfBounds Projet JAVA S
27. ges et donc inadapt e notre probl me C est pourquoi nous avons utilis la classe BufferedImage qui h rite de la classe Image et impl mente ses interfaces mais permet en plus d examiner l int rieur des images charg es et travailler directement sur ses donn es On peut donc partir d un objet BufferedImage r cup rer et changer les couleurs des pixels Comme son nom l indique BufferedImage est une image tampon Cette classe g re l image dans la m moire et fournit des m thodes pour l interpr tation des pixels Si on veut faire du traitement d images il faut donc travailler avec des objets BufferedImage Partant de ces constatations nous avons cr une classe Notrelmage avec en attribut une BufferedImage Toutes les op rations de traitement de l image seront d finies comme tant des m thodes de cette classe Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 8 ENAC 2 Les diff rents traitements d image a La binarisation Pour les besoins du Fast Marching la salle o se d roule la simulation doit tre d compos e en trois cat gories de zones les zones vierges repr sent es par des pixels blancs les obstacles repr sent par des pixels noirs et les sorties repr sent es par des pixels rouges cf d D tection de la des porte s La binarisation de l image dont le format de d part peut tre un format JPG PNG GIF ou encore BMP permet de n avoir plus
28. images utilis es pourront tre dessin es la main puis scann es ou photographi es comme a l tait dans le logiciel r alis en ADA Choix du format des fichiers de sauvegarde utilis s Le format de fichiers texte d extension txt sera utilis pour stocker toutes les donn es n cessaires la reprise de visualisation et la sauvegarde d une simulation interrompue Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 7 ENAC Il Traduction du code ADA en code JAVA Le traitement d image sera fait et facilit gr ce des classes d j pr tes en JAVA l algorithme de Fast Marching et l algorithme de comportement basique seront r crits int gralement Les algorithmes traduits seront ensuite imm diatement test s Traitement d image I Introduction Pour pouvoir tre pleinement exploit e par l algorithme de Fast Marching et les algorithmes de comportements l image doit subir tout comme en ADA des traitements pr alables L id e d une traduction b te et m chante des algorithmes crits en ADA a vite t abandonn e au vu des possibilit s qu offre API Java 2D Il existe en JAVA une super classe Image fournie dans la JDK depuis sa version 1 0 celle ci est une classe abstraite qui permet de repr senter les images sous forme d un rectangle de pixels Cependant cette derni re ne permet pas d acc der aux pixels Elle est donc inadapt e pour le traitement d ima
29. imulation de mouvements de foule dans une zone a roportuaire phase 2 24 ENAC B Mise en oeuvre de l algorithme d it ration Euler Cet algorithme va permettre de faire progresser les personnes dans la salle au cours de la simulation Notre algorithme d it ration consiste r cup rer le vecteur vitesse vitesse r elle de l individu et le multiplier par le pas de temps pour mettre jour sa position de d part cf Figure 9 Synth se de lutilisation des algorithmes La classe Euler initialement impl ment e ne sera plus utilis e en effet les it rations sont directement calcul es dans la classe Uzawa C Synth se Les algorithmes mis en oeuvre pr c demment s enchainent de la mani re suivante Vitesse r elle de l individu Figure 15 Synth se de l utilisation des algorithmes Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 25 ENAC IV Organisation et m thodes A Division du travail Gr ce au management de projet l analyse du besoin et la conception orient e objet qui nous a permis de mettre en place le mod le du domaine et la d finition des cas d utilisation nous avons pu nous r partir les t ches effectuer en deux parties C dric et Estelle se sont charg s de la traduction de l algorithme de Fast Marching et de la descente de gradient ainsi que de l impl mentation de l algorithme d Uzawa Maxime et Margaux se sont quant eux occup
30. is sont libres Si c est le cas elle va se d placer Figure 6 D placement d une personne avec un rayon 1 Pour am liorer le comportement des usagers de l a roport nous avons choisi de r aliser le m me principe mais cette fois avec un rayon 2 Les personnes seront ainsi moins proches les unes des autres et suivront le m me principe Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 14 ENAC Figure 7 D placement d une personne avec un rayon 2 Dans le cas o il n y a qu un seul pixel rouge au niveau de la sortie et un rayon 2 le personnage ne va pas se d placer car il d tecte qu il ne peut pas aller sur le pixel vis en gris cause des pixels noirs Figure 8 Probl me de d placement avec un rayon 2 au niveau des sorties Pour que les personnages puissent ainsi atteindre les sorties il faut donc quand on les d tecte rajouter des pixels rouges autour du pixel qui prend la couleur rouge avec l algorithme de Bresenham On obtient ainsi un trac comme suit Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 15 ENAC Figure 9 Trac final adapt e Finir la d tection des portes Pour pouvoir pleinement exploiter l algorithme de Fast Marching il faut encore r aliser une derni re tape En effet ce dernier se propage depuis la ou les
31. ns pu traduire et am liorer en JAVA les algorithmes principaux d j impl ment s en ADA algorithme de Fast Marching traitement d image algorithme de comportement basique l algorithme de comportement Uzawa a ensuite t mis en oeuvre ainsi qu une interface entre le syst me et l utilisateur Cet algorithme de comportement pourra tre ventuellement am lior avec l introduction d une distance au del de laquelle l int raction entre les personnes ne sera pas trait e Les r sultats obtenus lors de ce projet pourront servir d autres projets informatiques pour continuer simuler des mouvements de foule en fonction d autres algorithmes de comportement Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 33 ENAC VIL Annexes Annexe Aspects math matiques de l algorithme d Uzawa Contexte g n ral L algorithme d Uzawa est utilis pour trouver le minimum d une fonction x sous certaines contraintes Plus pr cis ment pour r soudre le probl me suivant pe a xeR p x lt 0 i 1 p La fonction J est une fonction de co t et les contraintes sont lin aires La formulation de ce probl me s obtient par une formulation duale qui permet d int grer les contraintes dans une nouvelle fonction de co t Pour cela on introduit le Lagrangien qui est une fonction L d finie sur R x R par P L x u JG upo i 1 JG u p x avec p p p et
32. oule dans une zone a roportuaire phase 2 HI HI 13 13 14 14 15 15 16 16 17 19 20 22 23 24 24 24 25 ENAC Synth se Figure 15 Synth se de Putilisation des algorithmes Organisation et m thodes Division du travail Suivi du projet Contraintes Retour d exp rience Mise en oeuvre de l architecture Tests Matrice de conformit Conclusion Annexes l Annexe Aspects math matiques de l algorithme d Uzawa 25 25 26 26 27 27 28 28 28 30 33 34 34 Il Annexe 2 R capitulatif des cas d utilisation des besoins et de leur niveau de priorit Bibliographie Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 37 41 ENAC Introduction tat de l art La mod lisation des mouvements de foule est au c ur de nombreux travaux et conna t aujourd hui un grand int r t En effet la construction de b timents comme les salles a roportuaires requiert certaines tudes de s curit bas es sur des mod les th oriques destin s valuer les risques en cas d vacuation d urgence Les mod lisations de telles situations permettent d estimer des temps de sortie mais aussi les lieux d une zone les plus embouteill s Plusieurs mod les permettent d tudier de fa on th orique les mouvements de foule et la plupart utilisent une repr sentation microscopique de la foule chaque personne est mod lis e ind pendamment et on observe le r sultat de l
33. ouleur n lt colrep si couleur pixel au dessus de n colcible alors Empiler pixel au dessus de n sur P fin si si couleur pixel au dessous de n colcible alors Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 17 ENAC Empiler pixel au dessous de n sur RP fin si si couleur pixel droite de n colcible alors Empiler pixel droite de n sur P fin si si couleur pixel gauche de n colcible alors Empiler pixel gauche de n sur RP fin si fin tant que fin algorithme de FloodFill 3 Conclusion la suite de tout ces traitements l image comporte donc trois couleurs blanc noir et rouge En faisant une simple association on fournit au Fast Marching un quivalent un tableau de Point de l image avec un codage sp cifique pour chaque pixel 2 pour les obstacles zone vierge et pour les sorties Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 18 ENAC B Conception de l IHM et m canismes rattach s I Notre interface Contrairement au projet ADA nous avons ici fait le choix d am liorer l interaction entre le syst me et l utilisateur l aide d une interface graphique en ADA les dialogues avec l utilisateur pour la saisie de param tres par exemple tait faits dans le terminal Cette interface a t r alis e apr s une tude soign e des besoins cf Annexe n 2 R capitulatif des cas d utilisation
34. ouveau cahier des charges cf I B Cahier des charges De plus l aide d une analyse effectu e sur le syst me existant en ADA nous avons pu d finir les diff rents cas d utilisation ainsi que les besoins qui en d coulent cf Annexe 2 R capitulatif des cas d utilisation des besoins et de leur niveau de priorit Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 5 ENAC l Contexte de l tude Le but de ce projet est de d velopper un outil de simulation de mouvements de foule bas sur le simulateur d j impl ment en ADA afin d tudier par la suite le comportement des usagers dans une zone a roportuaire Support de l tude Il ne s agit pas de r tudier le probl me du mouvement d une foule dans son int gralit Il s agit d exploiter et d utiliser les algorithmes d j mis en uvre pour mod liser une foule et d crits dans notre pr c dent rapport de projet ADA IA Simulation de mouvements de foules afin d acc l rer l tude du comportement des personnes dans la zone a roportuaire Parmi les algorithmes de comportement possibles c est celui d Uzawa qui a t choisi par nos clients tuteurs et qui sera impl ment dans ce projet Ces notions de comportements et l utilisation de l algorithme d Uzawa sont extr mement bien d taill s dans le chapitre 5 de la th se de doctorat d universit en math matiques de Juliette Venel intitul e Mod lisation math matiq
35. personnes la main B5 Contraintes B5 Le syst me doit enregistrer les donn es de chaque impl mentation d un i simulation intervalles de temps r guliers algorithme de sauvegarde a i Traduction de l ensemble des Le syst me doit conserver l ensemble des TE B5 3 i aray fonctionalit s du code ADA fonctionnalit s du simulateur r alis en ADA en code JAVA Le syst me doit offrir l utilisateur un param trage PAER B5 4 y P 8 propri t interface suffisant B5 5 Le syst me doit tre accompagn d un manuel R daction d un manuel d utilisation d utilisation utilisateur Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 32 ENAC VI Conclusion Ce deuxi me projet de simulation de mouvement de foule nous a tout d abord permis d appliquer nos connaissances en langage objet qu il s agisse de la conception ou de l impl mentation en JAVA En plus du d veloppement nous avons men un management de projet efficace et rigoureux con u au d but du projet et suivi tout au long de celui ci Notre m thodologie g n rale a d ailleurs port ses fruits puisque le projet a t termin dans les d lais impartis Lors de cette deuxi me phase de projet nous avons pu red velopper un simulateur de mouvements de foule en JAVA partir de la premi re phase d j r alis e l aide de la d finition des besoins et de la conception orient e objet nous avo
36. roportuaire phase 2 ENAC Application au mouvement de foule Nous avons en prenant les notations de la th se de Venel 1 1 JQ zlo LG 560 0 v U g cste Donc Id et b U q Les contraintes sont Vi lt j D q hG i q v gt 0 o ici G j d signe le gradient de D j Introduisons la matrice G de taille N N 1 2 x 2N o N est le nombre d individus et le vecteur D de taille N N 1 2 d finis respectivement par GG G D D0 alors la contrainte s exprime par hG g v lt D q On se retrouve donc avec le cas pr c dent o A Id b U g C hG q d D Notons galement que 4 1 Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 36 ENAC Annexe 2 R capitulatif des cas d utilisation des besoins et de leur niveau de priorit Le tableau ci dessous reprend les diff rents cas d utilisation d crits dans la Tableau l en donnant une description orient e but pour l utilisateur Cas d utilisation Description Permettre l utilisateur de lancer une nouvelle simulation Permettre l utilisateur de lancer une simulation d j commenc e et donc sauvegard e Permettre l utilisateur de comparer les r sultats de plusieurs simulations Permettre l utilisateur d interrompre la simulation tout moment Permettre l utilisateur de reprendre la simulation interrompue tout moment Permettre
37. s la sortie afin de cr er le champ de vitesse qui est suivi par la foule lors des simulations o une m thode de descente de gradient qui calcule la direction des vecteurs vitesse en chaque point de la zone o un algorithme de comportement basique utilis pour v rifier le bon comportement du simulateur Pour plus de d tails veuillez vous r f rer au rapport de projet ADA IA Simulation de mouvements de foules Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 4 ENAC Cette premi re phase de d veloppement du simulateur ne demandait pas d impl menter un algorithme de mouvement de foule r aliste c est pourquoi seul un algorithme de validation a t mis en uvre jusqu ici De plus en ADA les dialogues avec l utilisateur pour la saisie de param tres par exemple taient faits dans le terminal ce qui n tait pas tr s int ractif Travail r aliser L objet du travail propos pour la seconde phase du projet est dans un premier temps de traduire les algorithmes pr c demment impl ment s du code ADA en code JAVA pour se concentrer par la suite sur la mise en oeuvre d un algorithme de comportement particulier l algorithme d Uzawa Afin de rendre notre simulateur plus attrayant les interactions entre le syst me et l utilisateur seront am lior es l aide d une interface graphique Ce travail r aliser a t d fini avec l aide de nos tuteurs et partir du n
38. s Donc la fonction de co t s exprime par Jx ix Ax xTb avec x R A une matrice carr e n X n sym trique strictement d finie positive et b un vecteur de R Les contraintes sont de la forme Cx lt d avec C une matrice p X n et d IF Notons que dans ce cas les fonctions p sont donn es par g x y Cijxj m di j Par ailleurs le Lagrangien s exprime par L x u Ix Ax xT b C u ud Comme le gradient de L par rapport x s exprime par V L Ax b C u la premi re tape d Uzawa correspond au calcul de x A7 b C7 up Pour la seconde tape nous avons G ux 2 uf CAT CT ux u CAD d VG ux CA7 b Cu d Cxy d d o ben I ux p Cx d Dans cet exemple la valeur maximale de p est connue elle s exprime par _ 24 Pr Jap avec la plus petite valeur propre de A et la norme C de C tant gale la plus grande valeur singuli re de C soit encore la plus grande valeur propre de la matrice carr e CCT L algorithme d Uzawa dans ce cadre devient Algorithm 2 Algorithme d Uzawa pour le cas quadratique Entr es b C d p Sorties x u begin Ho lt 0 2 M Pmax ICE si P gt Pmax alors L Sortir x A7 b C7 uo u I uo p Cx d r p ter tj i x A7 b C u u Il u p Cx d jusqu x xoll lt Projet JAVA Simulation de mouvements de foule dans une zone a
39. tion d une B1 3 param tres d utilisation du simulateur zoom nombre A NET toolbar utilisant des de personnages zone a roportuaire traiter Jspinners Le syst me utilise les algorithmes de Fast Marching et i ias ee Impl mentation des d Uzawa pour permettre l utilisateur de visualiser le BI 5 f algorithmes de Fast Marching comportement d une foule dans une zone et d Uzawa a roportuaire B2 Performances attendues Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 30 ENAC Reprendre la simulation Identifiant Besoin Solution Affichage des r sultats et des B2 Les temps de calcul doivent tre quivalents ou plus simulations en JAVA pour les i faibles que ceux obtenus en ADA comparer ceux obtenus en ADA B3 Interfaces B3 Le syst me doit pouvoir r cup rer l image ouvrir une image depuis i photographi e par lutilisateur l interface Propri t de la toolbar cf B3 1 Le syst me doit traiter l image binariser et lisser IL A Traitement d image Ei selon la volont de l utilisateur binarisation faite au chargement de l image Le syst me doit permettre d afficher une image de la s 5 B3 1 2 e P 8 Propri t de l interface simulation B4 Sc narios op rationnels Dans l interface siis O impl mentation d une Le syst me permet de r aliser le cas d utilisation CU I P B4 I i nc tool
40. u R le vecteur des param tres de Lagrange Dans la suite on supposera l existence d un point selle de L x u i e un point x u tel que max L x u Lx min L X u u2 L x bu in L x u 4s on u Si u connu alors le probl me P devient un probl me sans contraintes Pa min L x u Comment trouver u Pour cela introduisons la fonction G d finie sur IR par G u inf L x u Lu et notons qu alors u arg max gt 0 G u Introduisons galement le projecteur Il R R u Up gt max 0 max up 0 Pour obtenir u on utilise un algorithme du type gradient projet Wen I uk pVG ux o VG est le gradient de G soit encore VG u pl x oP x L algorithme d Uzawa L algorithme d Uzawa se compose de deux tapes la premi re consistant minimiser le Lagrangien par rapport x puis proposer un param tre de Lagrange par une m thode de gradient projet Pour la convergence de l algorithme il faut que p ne soit pas trop grand Algorithm 1 Algorithme d Uzawa Entr es J f i 1 p p Sorties x u begin Ho lt 0 r p ter Calculer x arg min L x ux den I uk PVG ux jusqu llei Xll lt Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 34 ENAC Exemple co t quadratique tudions le cas simple d un co t quadratique avec des contraintes lin aire
41. ue et num rique de mouvements de foule Ce document sera consid r comme document support de notre projet B Cahier des charges Pour r aliser ce simulateur plusieurs points principaux sont attendus c est dire la r criture en JAVA du logiciel d velopp en ADA tout en lui conservant l ensemble de ses fonctionnalit s traitement d image et extraction d une cartographie de la salle a roportuaire d tection de la sortie placement al atoire des personnes calcul des vitesses souhait es par l algorithme de Fast Marching performances sauvegarde de simulation la mise en oeuvre de lPalgorithme de comportement ayant servi la validation du logiciel en phase afin de s assurer du fonctionnement l identique et ventuellement am lior du logiciel apr s traduction en JAVA Pimpl mentation d un algorithme d volution d une foule tel que d crit dans la th se de Juliette Venel l algorithme d Uzawa Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 6 ENAC Travail compl mentaire Si le d lai le permet un traitement multi agent sera effectu sur le premier algorithme de comportement utilis pour la validation Ce traitement ne doit pas tre forc ment prouv il sera ult rieurement exploit avec des algorithmes plus labor s comme Uzawa dans d autres projets Ainsi l algorithme de comportement doit tre mis en uvre de mani re
42. ule dans une zone a roportuaire phase 2 38 ENAC Identifiant Besoin nive S 1 priorit B2 2 Le syst me n arr te pas son ex cution si l utilisateur se trompe dans la gestion des param tres B3 Interfaces B3 Le syst me doit pouvoir r cup rer l image photographi e par l utilisateur B3 1 1 Le syst me doit traiter l image binariser et lisser B3 1 2 Le syst me doit permettre d afficher une image de la simulation B3 2 Le syst me permet l utilisateur de lancer facilement la simulation B33 Le syst me signale une erreur en cas d erreur de saisie d un param tre B3 4 Le syst me permet d annuler la derni re action effectu e B3 5 Le syst me permet l utilisateur de savoir quel zoom est applique pour une image en particulier B3 6 Le syst me permet l utilisateur de visualiser la fois l image trait e et l volution de la simulation B4 Sc narios op rationnels B4 Le syst me permet de r aliser le cas d utilisation CUI Lancemen d une nouvelle simulation B4 2 Le syst me permet de r aliser le cas d utilisation CU2 Lancemen d une simulation sauvegard e B4 3 Le syst me permet de r aliser le cas d utilisation CU3 Comparaison des r sultats B4 4 Le syst me permet de r aliser le cas d utilisation CU4 Interrompre la simulation B4 5 Le syst me permet de r aliser le cas d utilisation CUS Reprendr
43. ut est d sactiv hormis la barre de menu qui permet d acc der au menu d ouverture d une image Clique sur bouton Retour gt Charger une image Image JDialog Etat riii charg e sans Attention initial Nai param tres champs non renseign s remplis Temps de simulation non renseign Image charg e JDialog avec temps de A Avertissement simulation nonrenseign 2 2 Temps de 3 simulation renseign Tousles Image charg e JDialog param tres avec tous TE D tection D tection rentr s amp D tection i param tres aies Porte 1 Porte 2 renseign s Placement CT Toutesles automatique des Placement portes pen du out d tect es toute la salle 3 Clique sur bouton zones Suspendre la n SR JDialog simulation JDialog JDial R sultats rte s j j amp Lancement simulation A r simulation simulation Clique sur bouton Arr ter la simulation Clique sur z F bouton Simulation Ps SRE Arr ter la arr t e simulation Figure 13 Machine tats Projet JAVA Simulation de mouvements de foule dans une zone a roportuaire phase 2 Fin d tection porte personnes au clic 20 ENAC 2 M canismes particuliers Fonction annuler ame Partant du constat

Download Pdf Manuals

image

Related Search

Related Contents

TE/1C40 Install Manual  7.衛星船舶電話料金  User's Manual - Cole  Kullanım kılavuzu  Baumatic BEC455TS Technical Drawing  Nokia SU-27W Laptop User Manual  Sample Data Sheet  ダウンロード - メディアドライブ  

Copyright © All rights reserved.
Failed to retrieve file