Emmanuel Hermellin

About Me

Ingénieur de recherche, docteur en informatique

Actuellement ingénieur de recherche @ Linksium et LIG

Titulaire d'un doctorat en informatique (intelligence artificielle et calcul haute performance), j'occupe actuellement un poste d'ingénieur de recherche au sein du Laboratoire d'Informatique de Grenoble (LIG - Université Grenoble Alpes) en partenariat avec la SATT Linksium. Mes missions principales sont la maturation, l'évolution et la valorisation d'un outil de planification automatique, dans le domaine de l'intelligence artificielle. À terme, l'objectif est de réaliser un transfert technologique des travaux de recherche, ayant menés à la création de cet outil, par la création d'une start-up.

Maturation : maintenir un code professionnel et évolutif.
Evolution : faire bénéficier l'outil des dernières recherches effectuées par l'équipe du laboratoire.
Valorisation : promouvoir l'outil, réaliser des preuves de concept, démarcher les entreprises.

Compétences : développeur (Java), devOps , algorithmique · analyse, modélisation et optimisation de processus · planification automatique



Expériences

Juin 2017 - Août 2017

Chercheur informaticien

ITK

R&D pour l'édition d'Outils d'Aide à la Décision (OAD) dédiés au monde agricole. Développeur full stack et devops.

Oct. 2016 - Mai 2017

ATER (attaché temporaire d'enseignement et de recherche)

Université de Montpellier - LIRMM

Chargé de TD et TP en informatique (niveau Master et Licence, 90 heures), recherche dans le domaine des systèmes multi-agents.

Sept. 2013 - Sept. 2016

Moniteur (doctorant)

Université de Montpellier

Chargé de TD et TP en informatique (niveau Master et Licence, 292.5 heures).

Mars 2012 - Août 2012

Ingénieur de recherche (stagiaire)

Office National d’Études et de Recherches Aérospatiales (ONERA)

Réalisation d’un logiciel de rendu graphique sous GPU (raytracing, path tracing, photon mapping) en CUDA, OPTIX, C++, Perl.

Avril 2011 - Juil. 2012

Ingénieur de développement (stagiaire)

Laboratoire Univers et Particules de Montpellier (LUPM)

Réalisation d’un logiciel en Java (RISA) pour l’interprétation, le calcul et la réduction de spectres astrophysiques.


Programmation

Programmation orientée objet

Java, C++, Python

Programmation orientée agent

Java, Logo, Gama

Programmation parallèle, HPC

CUDA, MPI, centre HPC@LR

Programmation graphique, GUI

OpenGL, Java, Python

Programmation Web

HTML, CSS, JS, CMS (Wordpress, ...)

Système

Administration système

Ansible, Bash, Perl, Python

OS

GNU/Linux, Windows

Gestionnaire de versions / CI

Git, SVN / GitLab, Jenkins, Gradle

Création graphique

Photographie

Photoshop, Lightroom, DxO PhotoLabs

Graphisme

Photoshop, Illustrator

Multimédia

After Effect, Première

Autres

Modélisation de processus (BPM)

BPMN

Logiciel de calcul scientifique

Matlab, Scilab, Octave

Bureautique

LaTeX, Office, GNUplot


Formation

Oct. 2013 - Nov. 2016

Doctorat Informatique

Université de Montpellier - LIRMM

A la frontière entre deux domaines, cette thèse traite de la nécessité de trouver de nouveaux modèles de simulations plus adaptés aux nombreuses spécificités associées à la programmation sur architectures massivement parallèles.

Sept. 2010 - Sept. 2012

Master Physique et Informatique

Université de Montpellier

Ce parcours offre une double compétence en Physique et Informatique ainsi qu'une spécialisation en « Physique Numérique » (en anglais : Computational Physics).

Sept. 2009 - Juin 2010

Master de Physique fondamentale

Université Joseph Fourrier - Grenoble

Ce parcours débouche sur une spécialisation recherche dans des domaines de la physique très présents à Grenoble.




Sept. 2008 - Juin 2009

Licence de Physique fondamentale

Université d'Avignon et des pays du Vaucluse

Les enseignements du parcours sciences physiques visent à former les étudiants dans des domaines assez larges de manière à appréhender la physique pour poursuivre des études scientifiques ou être correctement préparé pour les concours.

Sept. 2006 - Juin 2008

Deug Maths - Informatique option concours Polytechnique

Université d'Avignon et des pays du Vaucluse

Formation qui prépare à l'entrée en écoles d'ingénieurs comme l'ENAC, réseau polytech, INSA, UTC, UTT, Seatech,INP Grenoble (ENSE3,PHELMA), ...

2006

Bac Scientifique option Sciences de l’Ingénieur

Lycée Jean Cocteau, Miramas

Associatif, mandat, bénévolat

  • Représentant doctorant élu

    Université de Montpellier

    Représenter les doctorants de l'école doctorale I2S dans les conseils scientifique et académique de l’université.

  • Organisation de séminaires

    Montpellier

    Organisation de séminaires scientifiques dédiés aux doctorants et de conférences de vulgarisation scientifique.

  • Animateur associatif

    Montpellier

    Animation de rencontres photographiques et de cours photos.

Centres d’intérêt

Création graphique

Pratique de la photographie durant mes voyages et au sein d’une association universitaire. Micro-entreprise dédiée au montage vidéo et à la création numérique.

Voyage

Pour des moments sportifs (raid aventure au Canada), professionnels (Pays-Bas, Turquie, Singapour) ou culturels (Italie, Espagne).

Sciences

Veille liée aux nouvelles technologies, aux sciences (physique, informatique et météorologie) mais aussi à la politique et à l’économie.

Lecture

Livres d’Histoire, de S.F. ou des romans.

Sports

Sports mécaniques, ski, parachutisme, natation, escalade et randonnée, ...

Musique

Pratique du piano.

Recherche

Intelligence artificielle, calcul haute performance, ...

Paradigme Agent et Calcul Haute Performance



Travaux de recherche

Contexte
La grande diversité des objectifs que la simulation multi-agents peut adresser (étude de systèmes complexes, de phénomènes biologiques, conception de systèmes multi-agents pour la robotique, etc.) montre toute la richesse du paradigme multi-agent. L'augmentation des capacités de calcul de nos ordinateurs actuels ainsi que la qualité (et la variété) des outils existants, dédiés à ce paradigme de conception, ont permis une envolée spectaculaire du nombre de simulations multi-agents et témoignent de sa popularité grandissante.

Cependant, nous avons montré, dans mon travail de thèse, que les performances constituent un verrou majeur dans ce domaine. Ainsi, il n'est pas rare de devoir simplifier le modèle ou de faire des compromis sur les caractéristiques de ce dernier pour compenser les limites introduites par ce manque de performance. D'autant plus, à l'heure où il est de plus en plus question de simulations à large échelle et/ou multi-niveaux, on peut facilement prédire que le besoin en ressources de calcul va augmenter de manière quasi exponentielle à court et moyen termes.

Ainsi, la motivation derrière ces travaux de recherche est d'apporter des solutions aux problèmes de performance que l'on peut rencontrer quand on simule des modèles multi-agents. Suivant les orientations prises en direction du calcul haute performance par différents groupes de recherche et industriels, nous nous sommes tournés en particulier vers l'utilisation de la puissance computationnelle des cartes graphiques via le GPGPU. Cette technologie offre en effet un des meilleurs rapports en termes de performance, prix et consommation énergétique tout en permettant à tout un chacun d'utiliser une solution de calcul intensif grâce à la disponibilité de cette dernière dans de nombreux ordinateurs.

Néanmoins, malgré les avantages que peut avoir le GPGPU, nous avons souligné que cette technologie est difficile à mettre en oeuvre. Le GPGPU s'accompagne en effet d'un contexte de programmation particulier du fait qu'il s'appuie sur un parallélisme de type SIMD qui nécessite notamment de suivre les principes de la programmation par traitement de flux de données (stream processing paradigm). Utiliser le GPGPU de manière efficiente peut donc être très complexe selon le cadre et les objectifs poursuivis.

Problématiques abordées
Dans le cadre des simulations multi-agents, les spécificités d'implémentation qui accompagnent la programmation sur GPU obligent à repenser la modélisation multi-agents, notamment car il n'est pas possible d'adopter une conception orientée objet classique. De ce fait, les modèles multi-agents usuels ne peuvent être simulés sur GPU sans un effort de traduction conséquent et non trivial.

De plus, considérer l'utilisation des GPU, reposant sur des architectures massivement parallèles, pour accélérer l'exécution des simulations exacerbe les problèmes d'implémentation déjà présents en séquentiel. En effet, les différents outils dédiés à la simulation multi-agent proposent une programmation haut niveau limitant la réutilisabilité des modèles sur d'autres plates-formes. Cela oblige également d'adopter une philosophie et une modélisation propre à chacun des outils ce qui restreint fortement l'accessibilité de ces derniers.

Dans ce contexte, l'état de l’art réalisé [Hermellin et al., 2014, Hermellin et al., 2015] nous a permis d'argumenter qu'une meilleure intégration du GPGPU ne pouvait se faire qu'avec une amélioration de l'accessibilité, de la réutilisabilité et de la généricité des solutions proposées et qu'elle passait nécessairement par l'utilisation d'une approche hybride. La difficulté était donc de trouver une solution répondant à ces critères.

Contributions scientifiques

Ainsi, nous avons présenté le principe de délégation GPU. Celui-ci propose d'utiliser de manière directe le GPGPU (et donc de profiter de la puissance des GPU) au travers d'une approche hybride tout en conservant l'accessibilité et la facilité de réutilisation d'une interface de programmation orientée objet.

Ce principe de conception, qui appartient au courant E4MAS [Weyns and Michel, 2015], s'inspire de travaux tels que [Weyns et al., 2007, Ricci et al., 2011]. Ainsi, de la même manière que pour les artefacts, ce principe propose de réifier une partie des calculs du modèle (comme les calculs de perception) dans l'environnement sous la forme de dynamiques environnementales traitées par des modules de calcul GPU.

Les différentes expérimentations de ce principe sur une variété de modèles multi-agents [Hermellin and Michel, 2015,Hermellin and Michel, 2016b, Hermellin and Michel, 2016e, Hermellin and Michel, 2016c] ont souligné le caractère générique de l'approche mais aussi sa capacité à produire des modules GPU indépendants et réutilisables. De plus, grâce à la modularité apportée par l'approche hybride utilisée, les modules GPU créés reposent sur des noyaux de calcul (kernels) très simples (seulement quelques lignes de code) améliorant de ce fait l'accessibilité du GPGPU.

D'ailleurs, il est apparu durant ces applications successives du principe de délégation GPU que nous suivions toujours le même processus d'implémentation [Hermellin and Michel, 2016f]. Nous avons généralisé l'application du principe de délégation GPU sous la forme d'une méthode de conception basée sur ce principe. Ici, l'objectif était de permettre à un développeur n'ayant aucune expérience dans le domaine de la programmation GPU de l'aborder d'une manière simple, et surtout itérative.

Perspectives
Les perspectives de recherche autour de ces travaux de recherche sont nombreuses. D'ailleurs, deux axes sont tout particulièrement prometteurs et intéressants :

  • 1. Génie logiciel orienté agent (AOSE).
    Il est clair que l'on a besoin de solutions qui facilitent la modélisation et l’implémentation de simulations multi-agents et cela quelque soit le contexte technologique. En s'inscrivant dans le courant E4MAS, notre méthode de conception poursuit cette quête de simplification au travers d'une décomplexification des comportements agents rendue possible grâce à la place donnée aux environnements (l'environnement est considéré comme essentiel). Bien que l'on ait mis de côté jusqu'ici cet aspect (la diminution de la complexité n'était pas le but premier de ces travaux de thèse), la question de la complexité prend tout son sens avec la méthode que nous proposons car le fait de se baser sur le principe de délégation GPU (qui explicite la séparation entre le modèle agent et l'environnement) et le fait de choisir ce qui va être exécuté par le GPU (grâce à l'approche hybride), permet de fournir à l'agent des percepts et des moyens d'action de haut niveau, afin de simplifier son comportement et d'en garder l'essentiel. En ce sens, nos contributions poursuivent bien les perspectives du courant E4MAS et s'inscrivent dans la lignée de travaux tels que [Viroli et al., 2006 , Weyns et al., 2007, Ricci et al., 2011, Michel, 2015, Weyns and Michel, 2015].

    • Ainsi, dans une démarche de génie logiciel orienté agent (AOSE), il est pertinent d'étudier l'impact que peut avoir notre méthode sur la programmation multi-agents en évaluant la capacité de notre méthode à simplifier l'implémentation et la modélisation multi-agent et cela en dehors d'un contexte GPGPU.

    • De plus, dans un contexte hardware de plus en plus hétérogène, distribué, connecté, interactif (eg IoT), réussir à déléguer une partie d'un système ou modulariser son implémentation va devenir crucial pour assurer son bon fonctionnement. Tout l'enjeu consistera à définir des méthodes de conception efficaces capables de s'adapter au contexte matériel sans en être dépendant. En ce sens, le principe de délégation porté par notre méthode est un bon point de départ dans le domaine des simulations multi-agents.

  • 2. Ordonnancement et simultanéité
    L'autre axe concerne l'ordonnancement et la simultanéité dans les simulations multi-agents. En effet, l'application de notre méthode sur un modèle peut ne pas être neutre (apparition de nouvelles dynamiques suite aux modifications engendrées) mais elle souligne également l'importance que l'on doit donner à l'ordonnancement : l’ordre dans lequel les agents sont activés et produisent leurs perceptions et actions. Il existe d'ailleurs de nombreux de travaux qui traitent de l'ordonnancement dans les systèmes multi-agents et de l'impact qu'il peut avoir sur l'exécution et la dynamique des systèmes. Parmi ces travaux, on peut citer par exemple [Fatès and Chevrier, 2010] qui montre que même avec seulement deux agents aux comportements minimalistes, plongés dans un environnement simple, il est possible d’obtenir des dynamiques très différentes suivant la manière dont le reste du modèle est élaboré (perception, action, temps, interaction, etc.) ou encore IRM4S qui traite de l'utilisation des notions d'influence et de réaction pour la simulation de systèmes multi-agents [Michel, 2007, Chevrier and Fatès, 2008].

    • Nous avons d'ailleurs montré que, notre méthode, de par sa conception hybride, impose de séparer les calculs liés aux agents (CPU), des calculs liés à l’environnement (GPU) ce qui introduit un mécanisme en deux phases sur les parties du modèle concernées. Ce mécanisme peut être, à juste titre, relié à une approche de type IRM4S [Hermellin-ECAL-2017]. Ainsi, un des axes de recherche est de mener une réflexion autour de l'ordonnancement des agents et sur son impact sur la dynamique des systèmes dans un contexte d'utilisation hybride du GPGPU ou plus généralement d'architectures matérielles massivement parallèles. Surtout, considérant que ce genre d'architecture matérielle va se généraliser dans les années à venir.

    • Cependant, malgré la possibilité d'intégrer des solutions telle qu'IRM4S dans notre approche, cette dernière souffrira toujours de biais introduits par l'utilisation du calcul parallèle et par les contraintes intrinsèques à ces technologies (e.g. synchronisation) pouvant d'une part limiter les performances mais aussi modifier le comportement des agents. En effet, l'activation de ces derniers et l'ordonnancement de leurs actions seraient toujours contraints par l'implémentation du modèle et par l'architecture matérielle sur laquelle la simulation est exécutée. Ainsi, il serait pertinent de s'intéresser aux recherches menées dans le domaine des systèmes dynamiques asynchrone dans un cadre discret [Contassot-Vivier, 2006] et tout particulièrement au cas du comportement des réseaux d’automates à états finis. En effet, ces derniers permettent de modéliser de nombreux systèmes complexes et en particulier leurs processus itératifs parallèles. L'activation des agents pouvant être vue comme un processus itératif parallèle, un lien pourrait être fait entre des deux domaines.

Références

[Chevrier and Fatès, 2008] Chevrier, V. and Fatès, N. (2008). Multi-agent Systems as Discrete Dynamical Systems : Influences and Reactions as a Modelling Principle. Research report.

[Contassot-Vivier, 2006] Contassot-Vivier, S. (2006). Asynchronism : Continuous and discrete contexts. Habilitation à diriger des recherches, Université de Franche-Comté.

[Fatès and Chevrier, 2010] Fatès, N. and Chevrier, V. (2010). How important are updating schemes in multi-agent systems? an illustration on a multi-turmite model. In van der Hoek, W., Kaminka, G. A., Lespérance, Y., Luck, M., and Sen, S., editors, 9th International Conference on Autonomous Agents and Multiagent Systems (AAMAS 2010), Toronto, Canada, May 10-14, 2010, Volume 1-3, pages 533–540. IFAAMAS.

[Michel, 2015] Michel, F. (2015). Approches environnement-centrées pour la simulation de systèmes multi-agents. Pour un déplacement de la complexité des agents vers l’environnement. PhD thesis, Université de Montpellier.

[Michel, 2007] Michel, F. (2007). Le modèle irm4s, de l’utilisation des notions d’influence et de réaction pour la simulation de systèmes multi-agents. Revue d’Intelligence Artificielle, 21(5-6) :757–779.

[Hermellin and Michel, 2017] Hermellin, E. and Michel, F. (2017).Complex flocking dynamics without global stimulus. In Proceedings of the Fourteenth European Conference Artificial Life, ECAL 2017, Lyon, France, September 4-8, 2017, pages 513--520, MIT Press.

[Hermellin and Michel, 2016a] Hermellin, E. and Michel, F. (2016a). Defining a Methodology Based on GPU Delegation for Developing MABS using GPGPU. In Antunes, L. and Nardin, L. G., editors, Multi-Agent Based Simulation XVII, International Workshop, MABS 2016, Singapore, May 10, Revised Selected Papers, pages 24--41, Lecture Notes in Computer Science (10399), Springer.

[Hermellin and Michel, 2016b] Hermellin, E. and Michel, F. (2016b). Expérimentation du principe de délégation GPU pour la simulation multiagent. les boids de reynolds comme cas d’étude. Revue d’Intelligence Artificielle, 30(1-2) :109–132.

[Hermellin and Michel, 2016c] Hermellin, E. and Michel, F. (2016c). Gpu delegation : Toward a generic approach for developping mabs using gpu programming. In Proceedings of the 2016 International Conference on Autonomous Agents & Multiagent Systems, AAMAS ’16, pages 1249–1258, Richland, SC. International Foundation for Autonomous Agents and Multiagent Systems.

[Hermellin and Michel, 2016d] Hermellin, E. and Michel, F. (2016d). Méthodologie pour la modélisation et l’implémentation de simulations multi-agents utilisant le GPGPU. In Michel, F. and Saunier, J., editors, Systèmes Multi-Agents et simulation - Vingt-quatrièmes journées francophones sur les systèmes multi-agents, JFSMA 16, Saint-Martin-du-Vivier (Rouen), France, Octobre 5-7, 2016., pages 107–116. Cépaduès Éditions.

[Hermellin and Michel, 2016e] Hermellin, E. and Michel, F. (2016e). Multi-Agent Based Simulation XVI : International Workshop, MABS 2015, Istanbul, Turkey, May 5, 2015, Revised Selected Papers, volume 9568, chapter GPU Environmental Delegation of Agent Perceptions : Application to Reynolds’s Boids, pages 71–86. Springer International Publishing.

[Hermellin and Michel, 2016f] Hermellin, E. and Michel, F. (2016f). Overview of case studies on adapting MABS models to GPU programming. In Bajo, J., Escalona, M. J., Giroux, S., Hoffa-Dabrowska, P., Julián, V., Novais, P., Pi, N. S., Unland, R., and Silveira, R. A., editors, Highlights of Practical Applications of Scalable Multi-Agent Systems. The PAAMS Collection - International Workshops of PAAMS 2016, Sevilla, Spain, June 1-3, 2016. Proceedings, volume 616 of Communications in Computer and Information Science, pages 125–136. Springer.

[Hermellin and Michel, 2015] Hermellin, E. and Michel, F. (2015). Délégation GPU des perceptions agents : Application aux boids de reynolds. In Vercouter, L. and Picard, G., editors, Environnements socio-techniques - JFSMA 15 - Vingt-troisièmes Journées Francophones sur les Systèmes Multi-Agents, Rennes, France, June 30th-July 1st, 2015, pages 185–194. Cépaduès Éditions.

[Hermellin et al., 2015] Hermellin, E., Michel, F., and Ferber, J. (2015). État de l’art sur les simulations multi-agents et le GPGPU. Revue d’Intelligence Artificielle, 29(3-4) :425–451.

[Hermellin et al., 2014] Hermellin, E., Michel, F., and Ferber, J. (2014). Systèmes multi-agents et GPGPU : état des lieux et directions pour l’avenir. In Courdier, R. and Jamont, J., editors, Principe de Parcimonie - JFSMA 14 - Vingt-deuxièmes Journées Francophones sur les Systèmes Multi-Agents, Loriol-sur-Drôme, France, Octobre 8-10, 2014, pages 97–106. Cépaduès Éditions.

[Ricci et al., 2011] Ricci, A., Piunti, M., and Viroli, M. (2011). Environment programming in multi-agent systems : an artifact-based perspective. Autonomous Agents and Multi-Agent Systems, 23(2) :158–192.

[Viroli et al., 2006] Viroli, M., Omicini, A., and Ricci, A. (2006). Engineering MAS environment with artifacts. In Weyns, D., Parunak, H. V. D., and Michel, F., editors, Environments for Multi-Agent Systems, volume 3830 of Lecture Notes in Computer Science, pages 62–77. Springer Berlin Heidelberg

[Weyns and Michel, 2015] Weyns, D. and Michel, F. (2015). Agent Environments for Multi-Agent Systems IV, 4th International Workshop, E4MAS 2014 - 10 Years Later, Paris, France, May6, 2014, Revised Selected and Invited Papers, volume 9068 of LNCS. Springer.

[Weyns et al., 2007] Weyns, D., Omicini, A., and Odell, J. (2007). Environment as a first class abstraction in multiagent systems. Autonomous Agents and Multi-Agent Systems, 14(1) :5–30.


Thèse de doctorat

  • TitreModélisation et implémentation de simulations multi-agents sur architectures massivement parallèles

  • Résumé

La simulation multi-agent représente une solution pertinente pour l’ingénierie et l’étude des systèmes complexes dans de nombreux domaines (vie artificielle, biologie, économie, etc.). Cependant, elle requiert parfois énormément de ressources de calcul, ce qui représente un verrou technologique majeur qui restreint les possibilités d'étude des modèles envisagés (passage à l’échelle, expressivité des modèles proposés, interaction temps réel, etc.).

Parmi les technologies disponibles pour faire du calcul intensif (High Performance Computing, HPC), le GPGPU (General-Purpose computing on Graphics Processing Units) consiste à utiliser les architectures massivement parallèles des cartes graphiques (GPU) comme accélérateur de calcul. Cependant, alors que de nombreux domaines bénéficient des performances du GPGPU (météorologie, calculs d’aérodynamique, modélisation moléculaire, finance, etc.), celui-ci est peu utilisé dans le cadre de la simulation multi-agent. En fait, le GPGPU s'accompagne d’un contexte de développement très spécifique qui nécessite une transformation profonde et non triviale des modèles multi-agents. Ainsi, malgré l'existence de travaux pionniers qui démontrent l'intérêt du GPGPU, cette difficulté explique le faible engouement de la communauté multi-agent pour le GPGPU.

Dans cette thèse, nous montrons que, parmi les travaux qui visent à faciliter l'usage du GPGPU dans un contexte agent, la plupart le font au travers d’une utilisation transparente de cette technologie. Cependant, cette approche nécessite d’abstraire un certain nombre de parties du modèle, ce qui limite fortement le champ d’application des solutions proposées. Pour pallier ce problème, et au contraire des solutions existantes, nous proposons d'utiliser une approche hybride (l'exécution de la simulation est partagée entre le processeur et la carte graphique) qui met l'accent sur l'accessibilité et la réutilisabilité grâce à une modélisation qui permet une utilisation directe et facilitée de la programmation GPU. Plus précisément, cette approche se base sur un principe de conception, appelé délégation GPU des perceptions agents, qui consiste à réifier une partie des calculs effectués dans le comportement des agents dans de nouvelles structures (e.g. dans l’environnement). Ceci afin de répartir la complexité du code et de modulariser son implémentation. L'étude de ce principe ainsi que les différentes expérimentations réalisées montre l'intérêt de cette approche tant du point de vue conceptuel que du point de vue des performances. C'est pourquoi nous proposons de généraliser cette approche sous la forme d'une méthode de modélisation et d'implémentation de simulations multi-agents spécifiquement adaptée à l'utilisation des architectures massivement parallèles.


  • Encadrement Fabien Michel et Jacques Ferber

  • Financement Bourse ministérielle
  • Soutenance 18 novembre 2016

  • Président du jury

Olivier Simonin, Professeur, INSA Lyon, France

  • Rapporteurs

Alessandro Ricci, Professeur, Université de Bologne, Italie
Vincent Chevrier, Professeur, Université de Lorraine, France

  • Examinateurs

Olivier Simonin, Professeur, INSA Lyon, France
Jean-Christophe Soulié, Cadre de recherche, CIRAD Montpellier, France


Publication

Articles, Proceedings, Posters...

Complex flocking dynamics without global stimulus

Proceedings of the 14th European Conference on Artificial Life 2017 (France, Lyon), pages 513--520
Emmanuel Hermellin, Fabien Michel
Inproceedings

Complex flocking dynamics without global stimulus

ECAL, European Conference on Artificial Life (Lyon, 2017)
Fabien Michel, Emmanuel Hermellin
Poster

Defining a Methodology Based on GPU Delegation for Developing MABS using GPGPU

Multi-Agent Based Simulation XVII - International Workshop, MABS 2016, Singapore, May 10, 2016, Revised Selected Papers, pages 24--41, Lecture Notes in Computer Science (vol. 10399)
Emmanuel Hermellin, Fabien Michel
Inproceedings

Modélisation et implémentation de simulations multi-agents sur architectures massivement parallèles

Spécialité doctorale Informatique, Université de Montpellier, école doctorale I2S, unité de recherche LIRMM
Ph.D. Thesis

GPU Delegation: Toward a Generic Approach for Developping MABS using GPU Programming

AAMAS, proceedings of the 15th International Conference on Autonomous Agents and Multiagent Systems (Singapour, 2016), pages 1249--1258 (ACM acmid.2937106)
Emmanuel Hermellin, Fabien Michel
Inproceedings

GPU Delegation: Toward a Generic Approach for Developping MABS using GPU Programming

AAMAS, Conference on Autonomous Agents and Multiagent Systems (Singapour, 2016)
Emmanuel Hermellin, Fabien Michel
Poster

Overview of Case Studies on Adapting MABS Models to GPU Programming

Highlights of Practical Applications of Scalable Multi-Agent Systems. The PAAMS Collection: International Workshops of PAAMS 2016, Sevilla, Spain, June 1-3, 2016. Proceedings, pages 125--136, Communications in Computer and Information Science (vol.616)
Emmanuel Hermellin, Fabien Michel
Inproceedings

Méthodologie pour la modélisation et l'implémentation de simulations multi-agents utilisant le GPGPU

JFSMA, vingt-quatrièmes Journées Francophones sur les Systèmes Multi-Agents (Saint Martin du Vivier, France, 2016), pages 107--116
Emmanuel Hermellin, Fabien Michel
Inproceedings

GPU Environmental Delegation of Agent Perceptions : Application to Reynolds’s Boids

Multi-Agent-Based Simulation XVI - International Workshop, MABS 2015, Istanbul, Turkey, May 5, 2015, Revised Selected Papers, pages 71--86, Lecture Notes in Computer Science (vol.9568)
Emmanuel Hermellin, Fabien Michel
Inproceedings

Expérimentation du principe de délégation GPU pour la simulation multiagent : les boids de Reynolds comme cas d’étude

RIA, Revue d'Intelligence Artificielle (2016), pages 109--132 (vol.30 num 1-2)
Emmanuel Hermellin, Fabien Michel
Article

Délégation GPU des perceptions agents : Application aux Boids de Reynolds

JFSMA, vingt-troisièmes Journées Francophones sur les Systèmes Multi-Agents (Rennes, France, 2015), pages 185--194
Emmanuel Hermellin, Fabien Michel
Inproceedings

État de l’art sur les simulations multi-agents et le GPGPU

RIA, Revue d'Intelligence Artificielle (2015), pages 425--451 (vol.29 num 3-4)
Emmanuel Hermellin, Fabien Michel, Jacques Ferber
Article

Systèmes multi-agents et GPGPU : état des lieux et directions pour l’avenir

JFSMA, vingt-deuxièmes Journées Francophones sur les Systèmes Multi-Agents (Loriol, France, 2014), pages 97--106
Emmanuel Hermellin, Fabien Michel, Jacques Ferber
Inproceedings

Enseignement

Université de Montpellier - FDS

Aperçu des activités d'enseignement

Année Activité Nb heures Lieu d'exercice
2018 - 2019 Vacataire 40h ETD Polytech Grenoble - Université Grenoble Alpes
2016 - 2017 ATER 90h ETD Département informatique, UFR Sciences, Université de Montpellier
2013 - 2016 Moniteur (doctorant) 292.3h ETD Département informatique, UFR Sciences, Université de Montpellier
  • Récapitulatif enseignement : PDF

Attaché temporaire d'enseignement et recherche (ATER), année 2016 - 2017

Matière Niveau TD (h) TP (h)
Programmation orientée agent Master 1 Informatique 16.5 16.5
Introduction à l'algorithmique et programmation Licence 1 Polytech 22.5 13.5
Du binaire au web Licence 1 Pluri-Sciences 15 24

Moniteur (doctorant), année 2013-2016

Matière Niveau TD (h) TP (h)
Programmation orientée agent Master 1 Informatique 31.5 31.5
Concepts et outils de base en informatique Licence 2 Pluri-Sciences 36
Programmation applicative Licence 2 Informatique 31.5
Outils informatique Licence 2 Pluri-Sciences 54
Introduction à l'algorithmique et programmation Licence 1 Polytech 24 27
Concepts de base en informatique Licence 1 Pluri-Sciences 30

Description des enseignements

Master 1 Informatique, Programmation orientée agent, responsable pédagogique Jacques Ferber

Cette unité d'enseignement introduit le paradigme agent et la programmation orientée agent, c'est à dire la manière de développer des applications complexes à l'aide d'agents autonomes et de systèmes multi-agents. Elle consiste en 10 x 1,5h de cours, 11 x 3h de TP et se conclut par un examen final. Pour cette unité d'enseignement, j'ai encadré trois groupes de TD et TP (2014 - 2015, 2015 - 2016, 2016 - 2017) de 40 étudiants pour un total de 96 heures et participé aux corrections des examens.

Licence 2 Informatique : Programmation applicative, responsable pédagogique Stefano Cerri

Le module Programmation Applicative est dédié aux concepts de base de la programmation multi-paradigme. A partir d'un langage Oz, et d'un ensemble de ressources pédagogiques, le but de ce module est de montrer aux étudiants que le choix d'un paradigme de programmation, voir d'un langage, a des conséquences importantes sur la facilité voir même la possibilité de résoudre des problèmes. Elle consiste en 10 x 1,5h de cours et 10 x 1,5h de TD, 10 x 1,5h de TP et se conclut par un examen final. Pour cette unité d'enseignement, j'ai encadré deux groupes de TD et TP (2013 - 2014, 2014 - 2015) de 40 étudiants pour un total de 31.5 heures ainsi que produit les énoncés des TD, TP, contrôles continus du module et participé aux corrections des examens.

Licence 1 et 2 Pluri-Sciences : Concepts et outils de base en informatique, responsable pédagogique Sylvain Daudé

Ces deux formations constituent les premières briques à l'obtention du C2I - niveau 1, certification nationale mise en place par le Ministère de l'Education Nationale et permettant d'attester de connaissances et de compétences informatiques et internet de base. Elle présente et initie aux outils informatiques et à l'environnement Linux ainsi qu'aux logiciels de bureautiques, à LateX et à HTML. Elle consiste en 5 x 1,5h de cours, 6 x 3h de TP et se conclut par le passage du C2i niveau 1 (C2i = Certificat Informatique et Internet). Pour ces unités d'enseignement, j'ai encadré 3 groupes de TP (2013 - 2014, 2015 - 2016) de 21 étudiants pour un total de 120 heures et participé aux corrections des examens.

Classe préparatoire 1 (PEIP, Polytech) : Introduction algorithmique et programmation, responsable pédagogique Philippe Janssen

Cette formation introduit le concept d'algorithme et permet la découverte de la programmation au travers du langage C / C++. Le but de ce cours est de fournir aux étudiants des bases solides leurs permettant par la suite d'appréhender les concepts autour de la programmation qu'ils rencontreront au cours de leur scolarité. Elle consiste en 8 x 1,5h de cours et 16 x 1,5h de TD, 9 x 1,5h de TP et se conclut par un examen final. Pour cette unité d'enseignement, j'ai encadré deux groupes de TD et TP (2013 - 2014, 2016 - 2017) de 30 étudiants pour un total de 87 heures ainsi que produit les énoncés des contrôles continus pour mes groupes et participé aux corrections des examens.

Licence 1 Pluri-Sciences : Du binaire au web, responsables pédagogiques Anne-Muriel Chifolleau, Hinde Bouziane, Sylvain Daudé

Cette unité d'enseignement se présente comme un introduction à l'informatique. De ce fait, les cours sont divisés en trois grandes parties et traitent de la représentation de l'information, des systèmes et réseaux et enfin du Web. Elle consiste en 5 x 1,5h de cours, 11 x 3h de TD et se conclut par un examen final. Pour cette unité d'enseignement, j'ai encadré un groupe de TD et TP (2016 - 2017) de 50 étudiants pour un total de 39 heures et participé aux corrections des examens.