La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Rapport de stage de fin d’étude.

Présentations similaires


Présentation au sujet: "Rapport de stage de fin d’étude."— Transcription de la présentation:

1 Rapport de stage de fin d’étude.
UNIVERSITE DE TECHNOLOGIE DE TROYES LABORATOIRE DE MODÉLISATION ET SÛRETÉ DES SYSTÈMES Rapport de stage de fin d’étude. En vue d’obtention du diplôme Master 2 en informatique Mesdames et Messieurs les membres du jury, bonjour et merci de votre présence. En vue de l’obtention du diplôme Master 2 en informatique, option Technologies de l’Information pour le management des Connaissances et des Réseaux, je vais vous présenter aujourd'hui le travail de mon stage de fin d’étude. Option Technologies de l’Information pour le management des Connaissances et des Réseaux Dirigé par : Travail réalisé par : Mr Jean-Marc NIGRO. Mr GUENDOUL Samir Mr Yann BARLOY. PROMOTION 2010_2011

2 Sujet Etude des comportements par avatar et développement d’un personnage automatisé « intelligent » utilisant la plateforme de simulation Scenia. Le stage est intituler : Etude des comportements par avatar et développement d’un personnage automatisé « intelligent » utilisant la plateforme de simulation Scenia

3 Objectif Expérimenter la plateforme de simulation Scenia pour développer une forme d’intelligence artificielle adaptative. Sont objectif est d’ expérimenter la plateforme de simulation Scenia pour développer une forme d’intelligence artificielle adaptative.

4 Plan Environnement du stage. Travail demandé. Recherche effectuée.
Travail réalisé. Conclusion. Pour ce faire, j’ai élaboré le plan suivant: En premier lieu je vais vous présenter l’environnement du stage, ensuite le Mission et le travail de stage, puis les recherche que j’ai effectuée et le travail que j’ai réalisé enfin je terminerai par une conclusion.

5 Environnement de stage (1/2)
Lieu du stage : Institut Charles Delaunay (ICD) à l’UTT. Laboratoire de Modélisation et Sûreté des Systèmes (LM2S). Equipe de travail : Cinq membres. Responsable du stage : Jean-Marc NIGRO. Enseignant chercheur en Intelligence Artificielle: Sophie LORIETTE. Enseignant chercheur en Intelligence Artificielle : Yann BARLOY. Doctorant en Intelligence Artificielle : Baptiste CABLE. Ingénieur de recherche et développement : Samir GUENDOUL. J’ai effectuer mon stage au sein de l’Institut Charles Delaunay à l’Université de Technologie de Troyes, dans le Laboratoire de Modélisation et Sûreté des Systèmes. Notre équipe compte cinq membres, un Responsable du stage : Jean-Marc NIGRO, un Enseignant chercheur en Intelligence Artificielle: Sophie LORIETTE, un Enseignant chercheur en Intelligence Artificielle : Yann BARLOY, un Doctorant en Intelligence Artificielle : Baptiste CABLE et un Ingénieur de recherche et développement : moi-même.

6 Environnement de stage (2/2)
Environnement de travail : Dans un laboratoire (un bureau à l’UTT). Réseaux local et internet. Delphi XE comme environnement de développement. MySQL Serveur de base de donnée. Plate forme Scenia : plate forme de simulation. (développée par l’équipe de recherche du laboratoire LM2S) Durée : 24 semaines. L’environnement de travail c’est dans un laboratoire (un bureau à l’UTT) où il y’a un réseaux local et internet, L’environnement de développement Delphi XE, MySQL comme Serveur de base de données et la plate forme de simulation Scenia, qui as été développer par l’équipe de recherche du laboratoire LM2S, la durée de stage est de 24 semaines.

7 Missions du stage Recherche des techniques et des architectures pour le développement des comportements. Comprendre le fonctionnement et l’architecture de la plateforme de simulation Scenia. Proposer une technique pour développer une forme d’intelligence dans la plateforme. Développer un nouveau moteur pour contrôler les nouvelles entités intelligentes. Tester et Optimiser le nouveau moteur. En premier lieu c’est de faire des Recherche sur des techniques et des architectures pour le développement des comportements et de l’intelligence artificiel. Ensuite Comprendre le fonctionnement et l’architecture de la plateforme de simulation Scenia. Puis Proposer une technique pour développer une forme d’intelligence dans la plateforme et Développer un nouveau moteur pour contrôler les nouvelles entités intelligentes. Enfin Tester et Optimiser le nouveau moteur.

8 Contexte du stage Ces dernières années le domaine de l’informatique s’est énormément développé permettant la simulation d’un monde virtuel : un organisme, un environnement, une machine, …etc. Les mondes virtuels habités sont des applications de Réalité Virtuelle dans lesquelles interagissent des entités autonomes et des utilisateurs représentés par leur avatar. Dans le cadre d’un projet de recherche, le laboratoire LM2S de l’UTT a créé une plateforme de simulation permettant de construire un monde virtuel : « Scenia ». Ces dernières années le domaine de l’informatique s’est énormément développé permettant la simulation d’un monde virtuel : un organisme, un environnement, une machine, …etc. Les mondes virtuels habités sont des applications de Réalité Virtuelle dans lesquelles interagissent des entités autonomes et des utilisateurs représentés par leur avatar. Dans le cadre d’un projet de recherche, le laboratoire LM2S de l’UTT a créé une plateforme de simulation permettant de construire un monde virtuel : « Scenia ».

9 Plateforme Scenia La plateforme Scenia est un environnement de développement pour la création de simulation et d’environnements virtuels. Utilisation de la plateforme pour le jeu massivement multi-joueurs intitulé « Les Contrées Homériques » (LCH). Un univers (monde) virtuel de simulation. Peuplé par des joueurs représentés par des avatars et des personnages non joueurs « des bots ». Cette plateforme est destinée à réaliser des expérimentations sur plusieurs axes de recherche. Mon travail : développer une forme d’IA adaptatif. La plateforme Scenia est un environnement de développement pour la création de simulation et d’environnements virtuels. Une équipe de recherche en IA dans le laboratoire LM2S a développer un jeu massivement multi-joueurs intitulé les contrées homérique, c’est un univers virtuel de simulation peuplé pas des joueur représentées par des avatars et des personnages non joueurs (des bots). La plateforme Scenia est destinée à réaliser des expérimentation sur plusieurs axes de recherche comme la résilience des systèmes, comme dans mon travail : développer une forme d’IA adaptatif.

10 Plateforme Scenia Bot Avatar Environnement
La figure suivante représente l’interface graphique du jeu Les Contrées Homériques. On vois l’univers, un avatar qui représente une personne qui joue et des bots (des loup et des ors).

11 Architecture de la plateforme
Moteur Environnement Client Moteur PNJ L’architecture est subdivisé en trois partie, le serveur qui sauvegarde les données, les utilisateur qui joue et les moteur qui gère les données des serveur et le programme des utilisateur. Mon travail consiste a crée un nouveau moteur « Moteur Loup Intelligents ». Client Moteur Utilisateur Client Serveur . Moteur Loup intelligent Le nouveau moteur

12 Techniques de développement de IA
Il existe plusieurs techniques pour créer de l’Intelligence Artificielle : La logique floue. [Louis GACOGNE,1997] Basée sur la théorie des ensembles flous et la logique des prédicats. Les réseaux de neurones artificiels. [Thomas BOURDEAUD'HUY, 2001] Basée sur la théorie de la connexion des neurones dans le cerveau. Les algorithmes évolutionnistes. [Paulin Coulibaly, François Anctil et Bernard Bobée ,2011] S'inspirant de la théorie de l'évolution pour résoudre des problèmes divers . Les algorithmes génétiques. [Souquet Amédée, Radet Francois-Gérard,2011] s’inspirent de l’évolution biologique telle que décrite par Darwin. Pour créer ce moteur il a fallu faire des recherche sur les techniques de développement de l’intelligence artificielle. Parmi elle on peut citer les plus intéressante : La logique floue : basée sur la théorie des ensembles flous et la logique des prédicat. Les réseaux de neurones artificiels : Basée sur la théorie de la connexion des neurones dans le cerveau. Les algorithmes évolutionnistes : s'inspirant de la théorie de l'évolution pour résoudre des problèmes divers. Les algorithmes génétiques : s’inspirent de l’évolution biologique telle que décrite par Darwin. On s’est mis d’accord avec l’équipe pour que je travail avec les algorithmes génétique car il sont de plus en plus utilisé dans le développement de l’intelligence artificielle.

13 Les algorithmes génétiques
Ils font partie de la famille des algorithmes évolutifs. s’inspirent de l’évolution biologique des espèces. S'appuyent sur des techniques dérivées de la génétique et des mécanismes d'évolution de la nature. croisements, mutations, sélections, …etc. Ils ne font que transposer ce que fait la nature à des systèmes artificiels. Les espèces (individus) s'adaptent à leur cadre de vie qui peut évoluer. Les individus se reproduisent, créant ainsi de nouveaux individus, certains subissent des modifications (de leur ADN), certains disparaissent. Leur but est d’obtenir en un temps correct une solution approchée à un problème d’optimisation. Ils font partie de la famille des algorithmes évolutifs. s’inspirent de l’évolution biologique des espèces. S'appuyent sur des techniques dérivées de la génétique et des mécanismes d'évolution de la nature. croisements, mutations, sélections, …etc. Ils ne font que transposer ce que fait la nature à des systèmes artificiels. Les espèces (individus) s'adaptent à leur cadre de vie qui peut évoluer. Les individus se reproduisent, créant ainsi de nouveaux individus, certains subissent des modifications (de leur ADN), certains disparaissent. Leur but est d’obtenir en un temps correct une solution approchée à un problème d’optimisation.

14 Déroulement d’un AG Ils suivent un processus bien établi qui peut être défini comme étant le cycle de l’évolution. Le déroulement d'un algorithme génétique peut être représenté en cinq étapes : La création de la population initiale. L'évaluation des individus. La génération de nouveaux individus. L'insertion de ces nouveaux individus dans l’environnement. Réitération du processus. Les algorithmes génétiques suivent un processus bien établi qui peut être défini comme étant le cycle de l’évolution. Son déroulement peut être représenté en cinq étapes : La création de la population initiale. L'évaluation des individus. La génération de nouveaux individus. L'insertion de ces nouveaux individus dans l’environnement. Réitération du processus.

15 Biologie des êtres vivants
Pour fabriquer un organisme vivant il faut une Map. Cette Map se trouve dans les cellules des êtres vivants. Plus exactement dans le noyau. C’est l’ADN. C’est la molécule de l’hérédité. Elle contient toutes les informations nécessaires à la vie de tout organisme. Pour créer nous individus il a fallu faire des recherche sur la biologie des être vivants. Pour fabriquer un organisme vivant il faut une Map, une sorte d’un plan qui faut suivre. Cette Map se trouve dans les cellules des êtres vivants Plus exactement dans le noyau c’est l’ADN. C’est la molécule de l’hérédité, elle contient toutes les informations nécessaires à la vie de tout organisme.

16 Le Chromosome C’est un élément microscopique constitué de molécules d’ADN. Il désigne le support physique des gènes. Un gène est un ensemble des séquences d’ADN. Chacun d’eux représente une caractéristique d’un individu (yeux, peau, …etc.). Un chromosome est un élément microscopique constitué de molécules d’ADN, il désigne le support physique des gènes. Un gène est un ensemble des séquences d’ADN. Chacun d’eux représente une caractéristique d’un individu (yeux, peau, …etc.). Chromosome ADN

17 Architecture de notre agent
Problème : Il faut définir notre gène et notre chromosome. Définitions : « Un comportement est un ensemble d’actions effectuées par un individu en réaction à son environnement ». « Un déclencheur est un stimuli qui sert à réveiller une action (un comportement dans notre cas) ». Un comportement peut être réveillé par un ou plusieurs déclencheurs. Une fois qu’on a fait ces recherche, il reste maintenant a définir la structure de notre gène artificiel et le chromosome qui va le porter.« Un Pour ce faire on a fait quelque définition : comportement est un ensemble d’actions effectuées par un individu en réaction à son environnement ». « Un déclencheur est un stimuli qui sert à réveiller une action (un comportement dans notre cas) ». Un comportement peut être réveillé par un ou plusieurs déclencheurs. Déclencheur 1 Comportement Déclencheur 2 Déclencheur 3

18 Relation Comportement/Déclencheurs
D1 . Voir un méchant. C1 . Attaquer D2 . Quelqu’un attaque D3 . Quelqu’un fuit. C2 . Fuir On peut définir beaucoup comportement a nous agent, mais on s’est limite a cinq d’entre, ce sont les comportement qui leur permettre de survivre dans l’environnement : attaquer, fuir, se cacher, appeler à l’aide, aider un proche. Et ces comportement sont stimuler par un ou plusieurs déclencheur, on a défini neuf. Et voici la relation qui existe entre les comportement et les déclencheurs, c’est là où réside l’intelligence de notre agent. D4 . Plusieurs méchants approchent. C3 . Se cacher D5 . Impossible de s’échapper. D6 . Se faire attaquer. C4 . Appeler à l’aide D7 .Voir quelqu’un se faire attaquer. C5 . Aider un proche D8 . Entendre appel à l’aide. D9. Energie à atteint le seuil minimal

19 Agent dans l’environnement
Notre agent Prenant cette exemple, dans cette situation notre agent peut voir qu’il y a la présence de plusieurs ennemis, quelqu’un se fait attaquer, quelqu’un attaque un ennemie et quelqu’un fuit, … etc. On voit bien que l’agent aperçoit plusieurs déclencheur au quel il doit choisir un, mais comment.? Pour remédier a ce problème nous avons mit des poids sur chaque déclencheurs pour facilité a l’agent de faire un choix, bien sur il ya une stratégie de choix. Notre agent peut voir dans cette situation : Présence de plusieurs ennemis. Quelqu’un se fait attaquer. Quelqu’un attaque un ennemie. Quelqu’un fuit. …etc. Mettre des poids sur les déclencheurs pour permettre à l’agent de choisir son action.

20 Représentation de notre gène
Chaîne 1 Chaîne 2 Chaîne 3 Chaîne 4 Un Gène Au final on la structure suivante de notre gène. D’un côté on a le comportement et d’un autre côté les déclencheurs qui vont avec lui avec leurs poids. comportement Déclencheur Déclencheur 2 Déclencheur 3 Déclencheur 4 Poids 1 Poids 2 Poids 3 Poids 4

21 Représentation de notre chromosome
Et dans cette figure on va illustré notre chromosome. Donc l’agent E1 utilise quatre comportement, chaque comportement utilise un ou plusieurs déclencheurs, et pour chaque comportement et déclencheur on leurs a attribuer un poids pour facilité le choix a l’agent. P D 2 P D 2 P P D 3 P C 4 C 5 P P P D 6 D 3 P

22 Architecture de notre agent
Elle est subdivisée en cinq zones : Voir Toucher Entendre Une fois que nous avent représenté le chromosome de notre agent, il faut maintenant faire son architecture de traitement. Elle est subdivisée en cinq zones. La premier zone est le centre de commandes c’est lui qui gère tous le traitement c’est le noyau. En premier lieu il consulte le centre de perceptions pour voir ce que se passe dans l’environnement, puis en fonction de ce qui voit il doit faire un choix sur le déclencheur ensuite sur le comportement a exécuter. Puis il va utiliser le centre d’action pour exécuter le comportement choix et enfin il va évaluer la situation pour voir ce qui va faire ensuite. Centre de perceptions Capteurs/Effecteurs Crier Décision Comp. Centre d’actions Centre de commandes Centre de réflexions Marcher Décision Décl. Attaquer Operations/Réflexions Centre d’évaluation

23 Algorithme générale de traitement
A chaque période de temps, l’agent exécute un traitement et suit les étapes suivantes : début : Consulter l’environnement. Choisir un déclencheur. Choisir un comportement. Exécuter le comportement. Evaluer la situation. Tirer une conclusion. Fin. L’algorithme générale de traitement est donc, pour chaque perdiode de temps, l’agent exécute une séquence d’action : Consulter l’environnement. Choisir un déclencheur. Choisir un comportement. Exécuter le comportement. Evaluer la situation. Tirer une conclusion.

24 Automate de traitement
Choix.Décl Choix.Comp D1 C1 D2 La figure suivante représente l’automate de traitement. Comme chaque automate il y’a un début et une fin. Premièrement il va charger les information de l’agent, puis il va consulter l’environnement, s’il vois rien donc il passe a l’état final, parfois il peut voir des chose mais il peut rien faire donc il passe a l’état final, sinon il pas a l’état suivant où il dois faire un chois de comportement a exécuter. Quelque comportements nécessitent un déplacement d’autre d’attaquer, puis il passent a l’état d’évaluation et là deux situation se présent : soit il s’en sort de la situation donc il mis a jours ces données et passa a l’état final, soit il est toujours dans la situation et là il dois faire un choix, soit il peut réévaluer la situation depuis la consultation de l’environnement ou bien depuis le choix de déclencheur ou depuis le choix de comportement. 7 Attaquer 9 Situati OK D3 C2 M.A.J 11 D4 1 Début 3 Consult.Enver Evaluation 8 2 Charger Infos D5 C3 6 Déplacer Fin 12 D6 Situat pas Ok 10 C4 D7 D8 C5 D9

25 Génération de la progéniture
Lorsque deux individus se rejoignent, ils peuvent engendrer un autre individu (progéniture). Ce nouvel individu aura un mélange des gènes du père et des gènes de la mère. Ainsi la nouvelle entité créée aura plus de chance de survivre dans l’environnement. Une fois que l’individu a été créé, on le met directement dans l’environnement. Maintenant on arrive a la génération de la nouvelle population, la progéniture. Lorsque deux individus se rejoignent, ils peuvent engendrer un autre individu (progéniture). Ce nouvel individu aura un mélange des gènes du père et des gènes de la mère. Ainsi la nouvelle entité créée aura plus de chance de survivre dans l’environnement. Une fois que l’individu a été créé, on le met directement dans l’environnement.

26 Transmission des gènes.
C 2 D 2 D 5 D 4 C3 D 1 D 3 9 2 P 4 7 6 5 C 4 D 6 8 3 Entité 2 E 1 C 1 D 1 D 3 D 4 C 2 D 2 D 5 3 8 2 9 1 5 C 4 D 6 7 6 Entité1 Voici un exemple qui illustre cette génération : il ya les gènes de deux parents, l’algorithme de génération va extraire les gène les plus significatif et va construire un nouveau individu douter des meilleur gène. Génération E 3 C 2 D 2 D 5 D 4 P 9 2 1 C 4 D 3 D 6 7 6 C3 5 D 1 Nouvelle Entité

27 Interface graphique du moteur
La figure suivante représente l’interface graphique du moteur Interface graphique générale

28 Interface graphique du moteur
Et cette interface gère le traitement des individus. On voit bien la représentation de chromosome de l’individus, et son parcoure en bas. Interface graphique de suivi d’un individu.

29 Conclusion/perspectives
Le stage que j’ai effectué dans le laboratoire LM2S de l’UTT m’a initié au domaine de la recherche et au travail dans une équipe de laboratoire. La mission fixée au départ est atteinte néanmoins le travail n’est pas encore totalement terminé. Comme perspectives, je propose d’ajouter d’autres comportement, de perfectionner les threads et d’améliorer la stratégie de choix. Ce stage m’a permis d’approfondir mes connaissances dans le domaine d’intelligence artificiel et le domaine de développement informatique. Pour conclure : Le stage que j’ai effectué dans le laboratoire LM2S de l’UTT m’a initié au domaine de la recherche et au travail dans une équipe de laboratoire. La mission fixée au départ est atteinte néanmoins le travail n’est pas encore totalement terminé . Ce stage m’a permis d’approfondir mes connaissances dans le domaine d’intelligence artificiel et le domaine de développement informatique.

30 Merci pour votre attention
Metci pour votre attention, je suis prêt a répondre a vous question. Questions..?


Télécharger ppt "Rapport de stage de fin d’étude."

Présentations similaires


Annonces Google