liste des projets réalisés en 2014/2015

32
Listes sujets Sujet 1 : Améliorer les retours sur vos TP avec Alecsia Auteur : Mikaël Salson Responsable : MIkael Salson Alecsia est une application web de correction de TP réalisée en 2012 dans le cadre d’un PJI. L’application repose sur le frameork PHP Symfony2. Cette application est maintenant utilisée en routine au FIL dans certaines matières. L’objet du projet est d’ajouter un certain nombre de fonctionnalités dans Alecsia, parmi lesquelles on pourra citer : Permettre le formattage des annotations (PHP) Détecter les annotations qui ont déjà été mises pour des rendus précédents (PHP) Produire des statistiques sur les annotations les plus mises (JS/Twig/PHP) Pour un enseignant : afficher les rendus et notes d’un seul étudiant (Twig) Test automatique du code des étudiants (PHP) Améliorer la gestion des barèmes (barème incrémental, décrémental, barème à base de lettres. . . ) (PHP/Twig) Détecter le plagiat (PHP) Imprimer des TP (CSS) Exporter/Importer des données (PHP) Le but du projet n’est pas de réaliser l’ensemble de ces fonctionnalités. Les fonctionnalités à intégrer à l’application seront déterminées en fonction des préférences des étudiant(e)s. Liens en rapport : Git du projet https://git.framasoft.org/mikaels/alecsia Symfony http://symfony.com/six-technical-reasons Twig http://twig.sensiolabs.org/ Sujet 2 : Intégration continue d’Alecsia Auteur : Mikaël Salson Responsable : Mikaël Salson Alecsia est une application web de correction de TP réalisée en 2012 dans le cadre d’un PJI. L’application repose sur le frameork PHP Symfony2. Cette application est maintenant utilisée en routine au FIL dans certaines matières. Le but du projet est de faire entrer Alecsia dans une démarche d’intégration continue. Pour cela il sera nécessaire d’utiliser un serveur d’intégration continue Jenkins avec divers outils. Notamment il faudra : ajouter des tests navgigateurs (vérifier, sur la base de scénarios, que l’ap- plication fonctionne comme attendu) avec CasperJS ou Watir ouă; calculer des métriques sur le code (Sonar)ă; vérifier la résistance de l’application à la charge (Gatling)ă; tester automatiquement sous différents natvigateurs. Ce projet permet d’explorer et utiliser un serveur d’intégration continue ainsi que différents outils qui y sont liés. Les étudiants pourront être amenés à effectuer des améliorations dans le code (PHP) afin d’augmenter sa qualité. Liens en rapport : Git de Alecsia https://git.framasoft.org/mikaels/alecsia Serveur d’intégration continue de Alecsia https://ci.inria.fr/alecsia/ Sujet 3 : 2014 applet animée avec interaction avec processing Auteur : Walter Nuninger Responsable : Walter Nuninger Besoin : solutions TIC compatibles multisupport de manière transparente pour les utilisateurs (android 1

Upload: phamnga

Post on 05-Jan-2017

224 views

Category:

Documents


1 download

TRANSCRIPT

Listes sujets

Sujet 1 : Améliorer les retours sur vos TP avec AlecsiaAuteur : Mikaël SalsonResponsable : MIkael SalsonAlecsia est une application web de correction de TP réalisée en 2012 dans le cadre d’un PJI. L’applicationrepose sur le frameork PHP Symfony2. Cette application est maintenant utilisée en routine au FIL danscertaines matières.

L’objet du projet est d’ajouter un certain nombre de fonctionnalités dans Alecsia, parmi lesquelles onpourra citer :

Permettre le formattage des annotations (PHP) Détecter les annotations qui ont déjà été mises pourdes rendus précédents (PHP) Produire des statistiques sur les annotations les plus mises (JS/Twig/PHP)Pour un enseignant : afficher les rendus et notes d’un seul étudiant (Twig) Test automatique du codedes étudiants (PHP) Améliorer la gestion des barèmes (barème incrémental, décrémental, barème à basede lettres. . . ) (PHP/Twig) Détecter le plagiat (PHP) Imprimer des TP (CSS) Exporter/Importer desdonnées (PHP)

Le but du projet n’est pas de réaliser l’ensemble de ces fonctionnalités. Les fonctionnalités à intégrerà l’application seront déterminées en fonction des préférences des étudiant(e)s.

Liens en rapport :• Git du projet https://git.framasoft.org/mikaels/alecsia• Symfony http://symfony.com/six-technical-reasons

• Twig http://twig.sensiolabs.org/

Sujet 2 : Intégration continue d’AlecsiaAuteur : Mikaël SalsonResponsable : Mikaël SalsonAlecsia est une application web de correction de TP réalisée en 2012 dans le cadre d’un PJI. L’applicationrepose sur le frameork PHP Symfony2. Cette application est maintenant utilisée en routine au FIL danscertaines matières.

Le but du projet est de faire entrer Alecsia dans une démarche d’intégration continue. Pour cela ilsera nécessaire d’utiliser un serveur d’intégration continue Jenkins avec divers outils.

Notamment il faudra : ajouter des tests navgigateurs (vérifier, sur la base de scénarios, que l’ap-plication fonctionne comme attendu) avec CasperJS ou Watir ouă; calculer des métriques sur le code(Sonar)ă; vérifier la résistance de l’application à la charge (Gatling)ă; tester automatiquement sousdifférents natvigateurs.

Ce projet permet d’explorer et utiliser un serveur d’intégration continue ainsi que différents outils quiy sont liés. Les étudiants pourront être amenés à effectuer des améliorations dans le code (PHP) afind’augmenter sa qualité.

Liens en rapport :• Git de Alecsia https://git.framasoft.org/mikaels/alecsia

• Serveur d’intégration continue de Alecsia https://ci.inria.fr/alecsia/

Sujet 3 : 2014 applet animée avec interaction avec processingAuteur : Walter NuningerResponsable : Walter NuningerBesoin : solutions TIC compatibles multisupport de manière transparente pour les utilisateurs (android

1

ou via un accès par navigateur WEB) de manière à illustrer simplement des fonctionnements attendusde machines (API) avec action/rétroaction de l’homme.

Contexte : cours de Grafcet s’appuyant sur un LMS (Moodle) ou un site web.Contraintes : - accessibilité - pas d’installation complexe pour l’utilisateur (sinon un navigateur à jour

ou un simple téléchargement). - la solution permet une réaction dynamique sur action de l’utilisateur(saisie, sélection, clic de souris, ou mouvement de souris) - multisupport (accessible ou lisible sur androidou exécutable sur une simple pc (tout OS)

Enjeu : faire comprendre un fonctionnement habituellement décrit en texte et sans machine réellepour aider à la conception de GRAFCETs simples et la compréhension des E/S.

Fonctionnalité du produit : modification du monde virtuel à partir d’information monde réel (clic debouton maintenu ou pas, valeur de paramètre éventuellement, mouvement) avec déplacement de figuressymboliques ou photos (en x,y voire z) pour montrer le fonctionnement attendu. Les sorties sont doncvisuelles à partir de calcul simple (translation, rotation), avec simulation de chute ou versement. Lecontrôle est fait par l’application selon les valeurs d’E/S au départ et en cours de fonctionnement.

Exemple 1 : un objet percé et fraisé sur ordre, visualisation virtuelle des perçage et fraisage dedurée différente avec avance/retrait outils etc. de manière à voir la séquentialité et les actions parallèle.Symbolisme : rectangle, couleur, tige. . .

Exemple 2 : fonctionnement vérins monostable ou bistable (translation tige etc), représentation debouton, interrupteur

L’idée serait la traduction de mes énoncés pour illustrer par du visuel de manière simple (sans chercherà faire un outil de simulation) un comportement souhaité.

Résultats attendus (négociables) : produit fini correspondant à un fonctionnement directement ex-ploitable produit plus générique modifiable ou adaptable éléments fonctionnels basiques faciles à relierpour créer de nouveaux fonctionnements (mouvement, organisation, veille d’événements/actions) . . . (voirenjeu)

Extension : visualiser le grafcet solution (sans passer par des outils type automgen compliqué), dansles cas simples : déplacement jeton sur un graphe donné en fond d’écran

Enjeu : transposable à d’autres cas applications exemples ce qui requiert des mouvement de base(translation, rotation) et des formes de bases (cube, cercle, tige, verin actionneur capteurs), le codagedoit alors être sur un système connu de moi ou facilement utilisable d’un point de vue fonctionnel(assemblage).

Codes envisagés : Processing, java, html, code pour android autreSi vous êtes intéressés par ce projet, n’hésitez pas à poser vos questions pour plus de précisions et à

me contacter pour un rendez-vous.

Sujet 5 : Développement dune interface graphique accessible de-puis le site dun laboratoire de luniversitéAuteur : Rémy BessonResponsable : MIkael SalsonIl sagit dans ce projet de participer au développement en langage Java dune interface accessible depuisle site internet de lUnité Matériaux Et Transformations (UMET). Lobjectif de cette application estde permettre la réalisation ń à distance ż de calculs en science des matériaux, via des programmesscientifiques disponibles (aucune compétence en sciences physiques nétant requise, aucun développementnest demandé à ce niveau). Le cur du projet est constitué par le développement organique de linterfacepermettant lexécution de ces programmes scientifiques. Suivant lavancement du projet, la mise en placedun système darchivage des résultats pourra être abordée, en vue de la constitution dune base de donnéesaccessible à lensemble des chercheurs du domaine.

Sujet 7 : Etude et extraction d’un système de composants logicielsAuteur : Charles BouillaguetResponsable : Charles BouillaguetLa librairie OpenMPI est une des principales librairies utilisée dans le calcul parallèle. Elle comportede multiples algorithmes pour résoudre des problèmes de communication de manière efficace, en tirantavantage du matériel présent (cartes réseau spéciales, etc.).

2

Pour gérer cette variété de situations (choix d’algorithmes, de matériel à utiliser, etc.), la librairie estconçue de manière modulaire : des composants logiciels fournissent des fonctionnalité, et le système choisitun des composants possibles en fonction de la situation. Ce choix se fait au moment de la compilation (est-ce que le composant compile ?) et au moment de l’exécution (est-ce que les ressources dont le composanta besoin sont disponible ? Quelle est l’adéquation du composant à la situation ?).

Les composants sont développés séparément, et peuvent être ajoutés en option. Ce système fonctionnebien, la librairie est largement utilisée.

Le but de ce projet consiste 1) à étudier le fonctionnement de ce système de composant, à le décrireprécisément (en langage naturel) et 2) à l’extraire (ou à le reproduire) pour qu’il puisse servir dans lecadre de nos propres projets de développement logiciel.

Le code de la librairie est écrit en C. Mais se frotter avec le système configure/make de la librairienécessite(ra) de naviguer dans des scripts shell, dans Autoconf/Automake/libtool, dans des macros m4,et éventuellement des scripts perl.

Liens en rapport :• http://www.open-mpi.org

• http://www.open-mpi.org/papers/workshop-2006/mon_06_mca_part_1.pdf

Sujet 9 : Interface Cerveau Ordinateur, humeur, musiques et in-telligence artificielle (sujet 1 : perfectionnement de lapplication)Auteur : Jean-Claude TarbyResponsable : Jean-Claude TarbyLe BCI (Brain Computer Interface), ou ICO (Interface Cerveau Ordinateur) en français, est une tech-nologie qui utilise les ondes cérébrales pour piloter un système informatique. Cette technologie progresse àgrands pas depuis quelques années et est même déjà utilisée dans les jeux (http ://fr.ubergizmo.com/2012/02/focus-pocus-logiciel-apprentissage-exploite-pouvoir-esprit/ ou http ://store.neurosky.com/collections/games) oudans des gadgets (http ://www.slate.fr/lien/62331/queue-oreilles-pensee).

Depuis quelques années, nous avons développé une application, basée sur les ondes cérébrales (cf.http ://www.lifl.fr/˜tarby/recherche.html et vidéo à http ://youtu.be/BzoSQIoad7E). Cette applicationpermet de jouer de la musique ou de choisir une chaine de télévision en fonction des émotions et delhumeur de lutilisateur (heureux, triste, en colère. . . ). Elle est codée en C#, utilise le casque Epocde la société EMOTIV (http ://www.emotiv.com/) et le brassard Bodywave de la société FreerLogic(http ://www.freerlogic.com/). Lapplication repose sur un réseau neuronal pour le calcul des émotionset de lhumeur.

Le travail à réaliser pour ce sujet 1 consiste à perfectionner cette application en ajoutant des fonction-nalités importantes telles que laffichage graphique dinformations (par exemple lhistorique des émotions),des statistiques, et des logs.

Etant donné que ce sujet est en lien avec les deux autres sujets, il est vital que le binôme travaille enétroite collaboration avec les binômes des autres sujets, tout au moins dans la première étape du travail.

Liens en rapport :• Application de l’an passé http://youtu.be/BzoSQIoad7E

• casque EPOC http://www.emotiv.com

• brassard BodyWave http://www.freerlogic.com

Sujet 10 : Interface Cerveau Ordinateur, humeur, musiques et in-telligence artificielle (sujet 2 : connexion à Deezer/Spotify)Auteur : Jean-Claude TarbyResponsable : Jean-Claude TarbyLe BCI (Brain Computer Interface), ou ICO (Interface Cerveau Ordinateur) en français, est une tech-nologie qui utilise les ondes cérébrales pour piloter un système informatique. Cette technologie progresse àgrands pas depuis quelques années et est même déjà utilisée dans les jeux (http ://fr.ubergizmo.com/2012/02/focus-pocus-logiciel-apprentissage-exploite-pouvoir-esprit/ ou http ://store.neurosky.com/collections/games) oudans des gadgets (http ://www.slate.fr/lien/62331/queue-oreilles-pensee).

Depuis quelques années, nous avons développé une application, basée sur les ondes cérébrales (cf.http ://www.lifl.fr/˜tarby/recherche.html et vidéo à http ://youtu.be/BzoSQIoad7E). Cette application

3

permet de jouer de la musique ou de choisir une chaine de télévision en fonction des émotions et delhumeur de lutilisateur (heureux, triste, en colère. . . ). Elle est codée en C#, utilise le casque Epocde la société EMOTIV (http ://www.emotiv.com/) et le brassard Bodywave de la société FreerLogic(http ://www.freerlogic.com/). Lapplication repose sur un réseau neuronal pour le calcul des émotionset de lhumeur.

Le travail à réaliser pour ce sujet 2 consiste à permettre lécoute soit des ses propres musiques (commecela est le cas actuellement), soit de se connecter à Deezer ou Spotify pour disposer dune bibliothèqueinfinie de musiques (toujours choisies en fonction de ses émotions et de son humeur). Cela implique dunepart de créer le code associé à cette fonctionnalisé, mais également de rester ń connecté ż avec lapplicationactuelle pour permettre les deux usages.

Etant donné que ce sujet est en lien avec les deux autres sujets, il est vital que le binôme travaille enétroite collaboration avec les binômes des autres sujets, tout au moins dans la première étape du travail.

Liens en rapport :• Application de l’an passé http://youtu.be/BzoSQIoad7E

• casque EPOC http://www.emotiv.com

• brassard BodyWave http://www.freerlogic.com

Sujet 11 : Interface Cerveau Ordinateur, humeur, musiques et in-telligence artificielle (sujet 3 : perfectionnement de lintelligenceartificielle)Auteur : Jean-Claude TarbyResponsable : Jean-Claude TarbyLe BCI (Brain Computer Interface), ou ICO (Interface Cerveau Ordinateur) en français, est une tech-nologie qui utilise les ondes cérébrales pour piloter un système informatique. Cette technologie progresse àgrands pas depuis quelques années et est même déjà utilisée dans les jeux (http ://fr.ubergizmo.com/2012/02/focus-pocus-logiciel-apprentissage-exploite-pouvoir-esprit/ ou http ://store.neurosky.com/collections/games) oudans des gadgets (http ://www.slate.fr/lien/62331/queue-oreilles-pensee).

Depuis quelques années, nous avons développé une application, basée sur les ondes cérébrales (cf.http ://www.lifl.fr/˜tarby/recherche.html et vidéo à http ://youtu.be/BzoSQIoad7E). Cette applicationpermet de jouer de la musique ou de choisir une chaine de télévision en fonction des émotions et delhumeur de lutilisateur (heureux, triste, en colère. . . ). Elle est codée en C#, utilise le casque Epocde la société EMOTIV (http ://www.emotiv.com/) et le brassard Bodywave de la société FreerLogic(http ://www.freerlogic.com/). Lapplication repose sur un réseau neuronal pour le calcul des émotionset de lhumeur.

Le travail à réaliser pour ce sujet 3 consiste à ajouter de ń lintelligence ż. Lapplication actuelle calculele choix de musique de façon classique ; lidéal serait dutiliser également un réseau neuronal pour ce choix.De plus, le réseau neuronal actuel (et peut-être aussi celui de la musique) est à perfectionner, voire àremplacer par une technologie plus efficace.

Etant donné que ce sujet est en lien avec les deux autres sujets, il est vital que le binôme travaille enétroite collaboration avec les binômes des autres sujets, tout au moins dans la première étape du travail.

Liens en rapport :• Application de l’an passé http://youtu.be/BzoSQIoad7E

• casque EPOC http://www.emotiv.com

• brassard BodyWave http://www.freerlogic.com

Sujet 14 : Gestion améliorée dune base de données dapplicationmobileAuteur : Jean-Claude TarbyResponsable : Jean-Claude TarbyUne application mobile utilise une base de données stockée dans un back office avec Cake PHP. Mal-heureusement cette base contient plusieurs centaines de données dont la véracité na pas pu être vérifiéelors de leurs ajouts. Le travail demandé pour ce projet est décrire des scripts PHP connectés à CakePHP permettant entre autres : - Une recherche de doublons, - Lajout de données avec vérification des

4

données, - La recherche de données suivant certains critères tels que la proximité par exemple (les donnéescontiennent des coordonnées GPS), - Laffichage des données sur une carte Google. . .

Ces scripts seront associées à des pages web permettant la saisie des informations, ainsi que leuraffichage, tri, sélection, etc.

Liens en rapport :• Cake PHP http://cakephp.org/

• Cake PHP, France http://www.cakephp-fr.org/

Sujet 16 : Diagramme UML et code Java connectés par une pagewebAuteur : Jean-Claude TarbyResponsable : Jean-Claude TarbyLan passé, nous avons réalisé un plugin Eclipse permettant dafficher dans une page web le diagramme declasses correspondant au code Java affiché dans Eclipse. Ce diagramme est interactif puisque la sélectiondune classe, dune méthode ou dune propriété dans le diagramme UML affiche le code correspondantdans Eclipse. La vidéo https ://www.youtube.com/watch ?v=uTAu0Txy7Ok montre un aperçu du travailréalisé.

Le travail demandé cette année consiste à améliorer cette application. La liste détaillée des améliora-tions sera fournie lors du projet. Il est à noter que lapplication web a été réalisée en Javascript avec labibliothèque JointJS, et que le plugin Eclipse a été écrit en Java. Le projet de cette année devra reprendreces technologies.

Liens en rapport :• projet de l’an passé https://www.youtube.com/watch?v=uTAu0Txy7Ok

• JointJS http://www.jointjs.com/

Sujet 21 : Application d’aide au tutorat des étudiants novices enprogrammationAuteur : Yvan PeterResponsable : Yvan PeterLes enseignants d’algorithmique et programmation de l’IUT ont développé un outil qui permet, à partirdu code source de programmes, d’extraire un squelette de programme ainsi que les tests unitaires quiseront fournis aux étudiants de première année comme point de départ pour les exercices en TP. Ilsdisposent ainsi d’un point de départ pour programmer et peuvent vérifier grâce aux tests unitaires qu’ilsont réussi l’exercice.

L’objectif du projet est d’étendre cet outil pour, dans un premier temps, rendre l’intervention desenseignants en TP plus ciblée et pertinente en leur signalant les étudiants en retard dans le TP ou quisont bloqués sur un exercice. Pour cela, il sera nécessaire de collecter des traces de l’activité des étudiants(typiquement, la compilation ou le résultat des tests) et de fournir à l’enseignant une interface de suivi.

Dans le cadre du projet, il sera nécessaire de réaliser les tâches suivantesă: - prendre en main l’outildéveloppé par les enseignants de l’IUT afin de vous familiariser avec ; - développer des tâches et des scriptspour l’outil d’automatisation du développement Apache Ant. Les scripts permettront d’automatiser lesphases de développement, test. . . Les tâches sont des classes permettant d’étendre Ant. Celles-ci servi-ront à remonter des traces vers un serveur ; - développer une application Web permettant de visualiserl’avancement global du TP, les étudiants bloqués, etc. (en Java ou node.js).

Langages : XML, Java, node.jsEncadrement : Yann Secq, Eric Leprêtre, Yvan PeterLiens en rapport :• Apache Ant http://ant.apache.org

Sujet 28 : Réparation automatique de bugs JavaAuteur : Martin MonperrusResponsable : Martin Monperrus

5

Contexte : Un outil de réparation automatique des logiciels résout des bugs automatiquement. Parexemple, lon peut générer un patch quand un test passe au rouge [Weimer2009]. Il est aussi possibledéviter des crashes en production. La réparation automatique peut donc se passer à tous les moments ducycle de vie : du développement à la maintenance et la production.

Problématique : La réparation automatique manipule soit du code (source ou binaire) soit des données(létat à lexécution, comme la pile ou le tas). La réparation automatique utilise aussi bien des algorithmesaléatoires (par exemple des algorithmes génétiques) que des solveurs (par exemple avec SAT ou SMT).Létat actuel de la recherche ne permet pas comparer lefficacité de ces deux types dapproche.

Contributions attendues : Vous participerez au développement des outils de réparation automatiquede bug de léquipe Spirals [DeMarco2014]. Si le projet/stage est une réussite, ce travail donnera lieu à unepossible suite en stage de M2, puis thèse.

Compétences requises : Développement Java.Bibliographie :[Weimer2009] W. Weimer, T. Nguyen, C. L. Goues, and S. Forrest. Automatically finding patches

using genetic programming. In Proceedings of the International Conference on Software Engineering,2009.

[qin2005rx] F. Qin, J. Tucek, J. Sundaresan, and Y. Zhou. Rx : treating bugs as allergies a safemethod to survive software failures. In ACM SIGOPS Operating Systems Review, volume 39, pages235248. ACM, 2005.

[DeMarco2014] Favio DeMarco, Jifeng Xuan, Daniel Le Berre, Martin Monperrus. Automatic Repairof Buggy If Conditions and Missing Preconditions with SMT, In Proceedings of the 6th InternationalWorkshop on Constraints in Software Testing, Verification, and Analysis (CSTVA 2014)

[Monperrus14] Martin Monperrus. A Critical Review of Automatic Patch Generation Learned fromHuman-Written Patches : Essay on the Problem Statement and the Evaluation of Automatic SoftwareRepair, In Proceedings of the International Conference on Software Engineering, 2014.

Sujet 29 : Serious Game basé sur la simulation multi-agents desressources halieutiquesAuteur : Sébastien PicaultResponsable : Sébastien PicaultMots-clefs simulation multi-agents, modélisation d’écosystèmes, serious game

Objectifs et moyens L’objectif de ce projet est de concevoir et réaliser un Serious Game (jeu à vo-cation pédagogique) destiné à simuler l’évolution de populations de poissons dans un écosystème, entenant compte à la fois des dynamiques propres aux relations de prédation entre espèces, des facteursenvironnementaux (réchauffement, cyclones. . . ) et de l’effet des activités humaines (pression de pêchenotamment). Cette simulation a vocation à illustrer les interdépendances entre ces divers facteurs, enpermettant d’examiner divers scénarios d’évolution de l’écosystème en fonction des stratégies d’exploita-tion et des paramètres en entrée.

Pour ce faire, l’outil de simulation fera appel aux systèmes multi-agents, qui permettent de représenterexplicitement le caractère spatial des phénomènes étudiés (migrations, campagnes de pêche, courants,impact climatique. . . ). Pour faciliter en outre la comparaison de scénarios en autorisant une conceptionincrémentale et modulaire des modèles à simuler, la réalisation de ce simulateur fera appel à l’approcheorientée interactions (IODA) développée dans l’équipe SMAC de Lille, et l’implémentation se fera au seinde la plateforme de simulation NetLogo.

Étapes du travail Après une phase de formation à la simulation multi-agents et de prise en mainde la plateforme, l’étudiant devra introduire les agents et leurs comportements de façon graduelle afinde proposer des scénarios de complexité croissante : 1. Modélisation et simulation de l’écosystème seul.L’espace est discrétisé en patches. Dans chaque patch, les agents représentent chacun une espèce caracté-risée par son abondance et évoluent selon les relations de prédation. 2. Mise en place d’une visualisationqualitative (selon des niveaux d’abondance discrets) pour suivre l’évolution des populations de chaqueespèce et générer des alertes en cas de menace d’extinction. 3. Prise en compte des effets de migration :- déplacements liés au suivi des ressources - migration saisonnière 4. Prise en compte d’effets environ-nementaux : - tempêtes, cyclones - température, saison, profondeur, habitat, courants. . . 5. Introductionde l’activité humaine : - pêche : la diversité des bateaux de pêche quant à la ressource visée et à leurtaille devra être prise en compte - caractère spatial de la pêche (à travers les ports notamment) 6. Étudecomparative de stratégies de pêche : par exemple maximiser le prélèvement des ressources vs. réduire la

6

pêche lorsque le niveau des ressources diminue trop. À terme : prise en compte d’éléments économiquesdans la prise de décision (demande sur une espèce, coût de l’énergie. . . )

Hébergement et encadrement : Ce projet se déroulera au sein de l’équipe SMAC du LIFL/CRISTAL(Lille 1), qui est spécialisée dans la modélisation de comportements d’agents et de phénomènes collectifs.Il sera co-encadré par S. Picault (LIFL, Lille 1) pour l’expertise multi-agents et C. Largouët (IRISA,Agrocampus Rennes) pour l’expertise écosystèmes et la scénarisation.

Liens en rapport :• sujet complet PDF http://www.lifl.fr/~picault/stages/2015-projet-M1-SMAC-peche.pdf

• plateforme NetLogo http://ccl.northwestern.edu/netlogo

• extension IODA pour NetLogo http://www.lifl.fr/SMAC/projects/ioda/ioda_for_netlogo/

Sujet 30 : Développement des langages spécifiques au domainepour la manipulation de modèlesAuteur : Filip KrikavaResponsable : Romain RouvoyLIEU Spirals Research Group Inria Lille - Nord Europe Parc Scientifique de la Haute Borne 40, avenueHalley - Bat. B, Park Plaza 59650 Villeneuve d’Ascq - FRANCE

CONTEXTE Langages et outils de manipulation de modèls jouent un rôle essentiel dans l’ingénieriedirigée par les modèles (MDE pour Model Driven Engineering) en fournissant un soutien pour lautoma-tisation des opérations telles que la vérification et la transformation de modèles.

Il y a eu de nombreuses approches différentes proposées pour faciliter ces tâches, en particulier ausein de l’Eclipse Modeling Framework (EMF). Parmi ceux-ci, Epsilon [2] fournit une vaste famille delangages spécifiques au domaine de la gestion de modèle et, avec son intégration avec Eclipse IDE, ilest actuellement l’un de langue les plus complets pour les manipulations de modèle. Il existe toutefoisplusieurs problèmes avec les langages dEpsilon : (1) ils sont à typage dynamique et par conséquent peu devérifications lors de la compilation sont fournies, (2) ils sont interprétés et manquent donc de performance,(3) les apports de l’IDE (complétion de code, vérifications statiques, refactoring) sont plutôt limitées et(4) le manque des constructions plus avancées limite la polyvalence et l’expressivité de ces languages.

PROJET Avec les récents progrès dans les outils de développement établis, il est possible d’atténuerles inconvénients ci-dessus. Le but de ce projet est donc d’utiliser Xtext [3] pour la refonte des DSLsEpsilon de manipulation de modèles (concrètement EOL, ETL et / ou ECL) avec le typage statique etl’inférence de type, la génération de code Java, le support riche des IDE et un ensemble de constructionsde programmation avancées (e.g., pattern matching, closures).

Le projet donnera l’occasion d’acquérir une expertise dans les technologies et les outils de MDE. Enparticulier, la conception de langages dédiés, en travaillant avec le modèle de contrôle de cohérence et detransformations de modèles, ainsi que l’apprentissage de la plate-forme Eclipse. Il sagit donc principale-ment dun projet de génie logiciel, qui fournira un candidat avec une expérience très utile et demandéedans différentes technologies et concepts architecturaux. Le résultat du projet pourrait être un candidatpour un incubateur de projet Eclipse.

Liens en rapport :• 1 - Eclipse EMF https://www.eclipse.org/emf

• 2 - Eclipse Epsilon https://www.eclipse.org/epsilon

• 3 - Eclipse Xtext https://www.eclipse.org/Xtext

Sujet 34 : Recommandation et cartographie darticles scientifiquesAuteur : Filip KrikavaResponsable : Romain RouvoyLIEU Spirals Research Group Inria Lille - Nord Europe Parc Scientifique de la Haute Borne 40, avenueHalley - Bat. B, Park Plaza 59650 Villeneuve d’Ascq - FRANCE

CONTEXTE Dans le domaine de la recherche et de linnovation, un grand nombre de résultats sontpubliés dans des revues scientifiques de manière à pouvoir être consultés a posteriori par dautres cher-cheurs. Cependant, il est parfois difficile de trouver tous les articles en lien avec un sujet de rechercheparticulier. Certes, des moteurs de recherche comme DBLP [1] ou Google Scholar permettent de trouverdes articles similaires par recherche de mots clés dans le titre ou le contenu, cependant des mots clés

7

trop généraux tendent à retourner de longues listes darticles tandis que des mots clés trop précis peuventdonner lieu à lomission de nombreux résultats pertinents.

Dans de nombreux cas, les chercheurs travaillent à partir dun petit nombre darticles quils jugent trèspertinents au regard des travaux quils mènent. Ce sont ces articles qui leurs servent notamment de pointde départ pour trouver dautres articles connexes au sujet quils traitent. À limage de la recommandationde livres proposée par Amazon sur son site en ligne, nous souhaitons donc mettre en place un servicecapable de recommander des publications scientifiques à partir dun jeu darticle.

PROJET Dans le cadre de ce projet technique, lobjectif est de mettre en uvre dans un premiertemps un service de recommendation darticles scientifiques qui est capable dextraire les principaux sujetsabordés par un jeu darticles sélectionnés par un utilisateur en utilisant lalgorithme LDA (Latent DirichletAllocation) mis à disposition par la librairie Mahout [2] ou MLlib [3]. Ces sujets sont extraits sous laforme dune séquence de mots clés qui pourront être ensuite soumis à des moteurs comme Google Scholarpour trouver dautres articles pertinents sur le sujet.

Dans un deuxième temps, ce service pourra aussi être utilisé pour produire automatiquement unecartographie des articles collectés (e.g., sous la forme dun graphe) et ainsi mieux comprendre la naturede leurs liens (mots clés en commun, auteurs en commun, article référençant un autre, etc.).

Liens en rapport :• 1 - DBLP http://www.dblp.org

• 2 - Apache Mahout https://mahout.apache.org• 3 - Spark MLlib https://spark.apache.org/docs/latest/mllib-guide.html

Sujet 36 : Mise en place de mécanismes de gamification dans uneapplication mobile de crowd-sensingAuteur : Christophe RibeiroResponsable : Romain RouvoyLIEU Spirals Research Group Inria Lille - Nord Europe Parc Scientifique de la Haute Borne 40, avenueHalley - Bat. B, Park Plaza 59650 Villeneuve d’Ascq - FRANCE

CONTEXTE APISENSEő [1] est une plate-forme logicielle permettant de fédérer les téléphones du-tilisateurs volontaires pour collecter des jeux de données significatifs dans la nature en interagissant avecces utilisateurs (questionnaires) ou en partageant les données produites à partir de leurs capteurs. Cetteplate-forme est notamment utilisée dans le domaine des telecoms pour mesurer la qualité de laccès àInternet, ou dans le domaine du développement durable pour estimer lempreinte carbone des usagers enfonction de leurs déplacements.

Pour parvenir à fédérer des grandes communautés dutilisateurs, il est cependant important dimpliquerces derniers dans le processus de collecte des données. Une des modalités envisageables pour encouragerles utilisateurs à partager leurs données consiste donc à introduire des mécanismes de gamification [2] ausein même de lapplication mobile comme peuvent le faire des applications comme Foursquare, Prixingou Waze. Ces différents mécanismes permettent de modifier lexpérience utilisateur pour favoriser sonimplication.

PROJET Dans le cadre de ce projet technique, lobjectif est détudier les différents mécanismes degamification existants [2,3] et de proposer une mise en uvre de ces mécanismes dans lapplication decollecte de données dAPISENSEő. En proposant des analogies avec lunivers créé par cette plate-forme(celui des abeilles), vous considérerez la mise en uvre de votre proposition en utilisant lAPI Google PlayGame Services [3] et en visant la plate-forme Android en premier lieu.

Liens en rapport :• 1 - APISENSEő http://www.apisense.com

• 2 - Game mechanics http://badgeville.com/wiki/Game_Mechanics• 3 - Google Play Game Services https://developer.android.com/google/play-services/games.html

Sujet 39 : Intégration de capteurs Arduino dans une plate-formede mobile crowdsourcingAuteur : Clive Ferret-CanapeResponsable : Romain Rouvoy

8

LIEU Spirals Research Group Inria Lille - Nord Europe Parc Scientifique de la Haute Borne 40, avenueHalley - Bat. B, Park Plaza 59650 Villeneuve d’Ascq - FRANCE

CONTEXTE APISENSEő [1] est une plate-forme logicielle permettant de fédérer les téléphones du-tilisateurs volontaires pour collecter des jeux de données significatifs dans la nature en interagissant avecces utilisateurs (questionnaires) ou en partageant les données produites à partir de leurs capteurs. Cetteplate-forme est notamment utilisée dans le domaine des telecoms pour mesurer la qualité de laccès àInternet, ou dans le domaine du développement durable pour estimer lempreinte carbone des usagers enfonction de leurs déplacements.

Avec lémergence de lInternet des Objets, de nombreux équipements ńconnectésż ont vu le jour (brace-lets, capteurs domotiques [2], etc.) et peuvent se connecter aux téléphones des usagers pour synchroniserleurs données. Le téléphone ne joue plus uniquement le rôle de capteur mais aussi de relais de linformation.Nous souhaiterions donc permettre aux utilisateurs dAPISENSEő de collecter non seulement des donnéesissues des téléphones mais aussi des données provenant déquipements tierces connectés à ce téléphone.

PROJET Dans le cadre de ce projet technique, lobjectif est détudier le cas de la technologie Arduinoqui permet de concevoir ses propres objets connectés. En particulier, nous souhaitons offrir à la com-munauté Arduino la possibilité de publier les données issus de nimporte quel capteur (gaz, lumière, son,etc.) sur lInternet via une connexion Internet qui serait mise à disposition par le téléphone (e.g., via soninterface Bluetooth). Lobjectif est donc de développer un kit de développement (SDK) pour Arduino quipermette de publier des données de manière passive (à la demande du téléphone) ou réactive (à linitiativedu capteur Arduino). Ce kit de développement sera illustré sur le cas dune application de surveillance dela qualité de lair qui pourra être déployée à léchelle de luniversité.

Liens en rapport :• 1 - APISENSEő http://www.apisense.com

• 2 - Air.Air ! http://www.airair.info• 3 - Arduino http://arduino.cc

Sujet 40 : Développement du serious game Geok’H pour le Hub-HouseAuteur : Olivier LanselleResponsable : Romain RouvoyLIEU Hubhouse Lille 1 Cité Scientifique Bâtiment SUP/SUAIO- 1er étage 59650 Villeneuve d’Ascq -FRANCE

CONTEXTE Dans le cadre de la promotion de ses activités, le HubHouse de l’Université Lille 1 sou-haite développer une application mobile innovante à destination des étudiants du campus. Le HuHouseest notamment intéressé par le développement d’un ńserious gameż inspiré des principes du jeu ńgeoca-chingż [1]. La spécification et la mise en scénario du jeu ont été réalisés dans un premier temps par lesétudiants du Master Ingénierie Pédagogique Multimédia (IPM) [2] de l’Université Lille 1 sur commandedu HubHouse.

PROJET À partir de la spécification détaillée réalisée par les étudiants du Master IPM, vous pour-suivre le développement dune application mobile multi-plateformes utilisant le framework PhoneGap [3],dont une preuve de concept a été développée en PJI. Vous devrez être force de proposition pour exploiterles capacités des téléphones modernes (GPS, QR-Code, appareil photo, etc.). Votre processus de déve-loppement appliquera les principes des méthodologies agiles afin de pouvoir rendre compte régulièrementde votre travail auprès du HubHouse et ainsi progresser régulièrement. Une séance de test en grandeurnature sera notamment organisée mi-novembre pour vérifier l’engouement suscité par le jeu et permettred’intégrer le feedback des utilisateurs avant de livrer la version finale de l’application.

Liens en rapport :• 1 - GeoCaching http://www.geocaching.com

• 2 - Master Ingénierie Pédagogique Multimédia http://cueep.univ-lille1.fr/master-ipm

• 3 - PhoneGap Framework http://phonegap.com

Sujet 44 : Générateur web de formulaireAuteur : Olivier CaronResponsable : Olivier Caron

9

Le contexte du projet est l’équipe de développement logiciel du système d’information de Polytech Lille.Cette équipe développe des applications webs (PC et mobiles) pour la gestion de scolarité, et différents ser-vices de l’école. Les technologies employées sont : HTML5, CSS, Javascript, Jquery, PHP Objet, Postgres.Une activité récurrente du développeur consiste à écrire un formulaire web avec des fonctions d’aide de sai-sie et vérification javascript (datepicker, vérification champ mail, etc) puis à stocker les informations saisiesdans une base de données. L’objectif du projet est de proposer une architecture (PHP/CSS/javascript) quiva offrir au développeur une API PHP qui va générer automatiquement l’éditeur ainsi que la sauvegardedes données saisies dans une table. Le code PHP pourrait ressembler à ceci : ———————————-$gen=new GenerateurFormulaire() ; $gen->setBD(serveur,nomBase, user, password) ; // connexion base$gen->seTable(nomTable) ; // définition de la table de la base $gen->addChamp(nom, Nom :) ; //param1 : nom de colonne,param2 : label $gen->addChamp(prenom,Prenom :) ; $gen->addChamp(datenaissance,Date de Naissance : ) ; $gen->addChampSpecifique(email, Email : ,EMAIL) ; $gen->show() ; ———————————- Le programme consultera dans la base le type de la colonne de chaque champ à éditer etgénérera l’éditeur HTML approprié (textfield, checkbox, date, etc) Cet outil permettra aussi de générerdes composants HTML <select>lors de clés étrangères.

Ce projet pourra devenir un projet Open Source car il peut être appliqué dans beaucoup de systèmesd’information

Sujet 47 : Application web pour la gestion de suivis de recherchede stageAuteur : Patricia PlénacosteResponsable : Maude PupinLes étudiants en licence informatique doivent effectuer un stage à la fin de leur année scolaire. Uneapplication web de suivi de recherche de stage, jusqu’à l’obtention du stage, a été développée lors de PJI,mais n’est pas fonctionnelle. Cette application permet aux enseignants de mieux encadrer les étudiantset de faire le point avec eux en cas de difficulté lors de leur recherche de stage.

L’application web actuelle fournit un accès étudiant via un login personnalisé pour saisir les informa-tions concernant les entreprises qu’ils auront contactées et un accès enseignant, via aussi un mot-de-passe,pour consulter les données pour chaque étudiant individuellement ou collectivement afin de faire, parexemple, des statistiques.

Un certain nombre de problème d’usage a été constaté. Un travail de refonte ergonomique de l’IHM estdemandé. La conception des nouvelles fonctionnalités permettant, par exemple, le transfert de donnéesvers une autre application est à effectuer

Contexte Technique : la version actuelle est sous PHP, avec une base MySQL

Sujet 49 : Système de localisation de robotsAuteur : Noury BouraqadiResponsable :Il sagit de faire un système de localisation de robots avec une caméra au plafond. La caméra repère lesrobots à laide de tags de couleurs quils portent. Lidée est de partir de lexistant et éventuellement deladapter. Le point de départ est la solution qui est utilisée dans la robocup : SSL Vision http ://robo-cupssl.cpe.ku.ac.th/sslvision

Il faut dabord faire marcher le code déjà disponible avec une webcam.La deuxième étape serait de rendre les positions des robots accessibles à des robots via ROS. Pour

cela, il faudra développer un noeud PhaROS (cf. http ://car.mines-douai.fr/software/).La solution sera ensuite testée avec des robots de type Turtlebot.Ensuite, on essayera de rendre les robots libres on mettant les caméras sur les robots. Chaque robot

devra reconnaître les autres robots ou des lieux (tags de couleur sur les robots et les plafonds).

Sujet 50 : Apprentissage automatique pour la prédiction d’activitéde moléculesAuteur : Laurent NoéResponsable : Maude Pupin

10

L’équipe de recherche en bioinformatique Bonsai est spécialisée dans la conception d’algorithmes efficacespour l’analyse de données biologiques. En collaboration avec des microbiologistes du laboratoire ProBio-GEM, des membres de l’équipe ont conçu Norine (http ://bioinfo.lifl.fr/norine/), une base de donnéesde molécules particulières appelées peptides nonribosomiques. Ces peptides ont des activités variées etcertains sont déjà utilisés comme médicaments tels que la pénicilline qui est un antibiotique ou l’acti-nomycine D qui est un anticancéreux. Lors de la découverte d’un nouveau peptide, il est intéressant depouvoir prédire son activité par analyse informatique et, ainsi, limiter les expérimentations. Les donnéescontenues dans Norine sont exploitables par des techniques classiques d’apprentissage automatique afinde prédire l’activité d’un peptide inconnu. Des membres de l’équipe Bonsai ont déjà mis au point une re-présentation des peptides nonribosomiques pertinente pour la prédiction de leur activité (voir article [1]).Mais, il reste encore à finaliser le protocole de prédiction en affinant les jeux d’apprentissage à utiliser, enchoisissant la méthode d’apprentissage la plus adaptée et en déterminant ses paramètres optimaux. L’uti-lisation de la bibliothèque Weka est préconisée. Il faut également développer l’interface d’interrogationvia Internet qui prendra en entrée un peptide inconnu et affichera ses activités potentielles.

Proposition de planning : - prise en main de la Bibliothète Weka, - extraction des caractéristiques despeptidiques depuis la base Norine - apprentissage/validation croisées selon les modèles proposés dans [1]- mise en place d’une interface de prédiction sur le serveur Norine

[1] A new fingerprint to predict nonribosomal peptides activity. Abdo A, Caboche S, Leclere V, JacquesP, Pupin M. J Comput Aided Mol Des. 2012 Oct ;26(10) :1187-94

Liens en rapport :• Base de données Norine http://bioinfo.lifl.fr/norine

Sujet 51 : Ordres de missionsAuteur : Juliette MagniesResponsable : Juliette MagniesUn dossier de spécification et une petite partie de l’application a déjà été réalisée par un étudiant dePolytech en Web 2.0 (PHP, Javascript, Ajax) avec une base de données Postgres (l’édition d’un nouvelordre de mission)

Le projet : Le but du projet est d’affiner/corriger/compléter le dossier de spécification puis de réaliserla partie backoffice de cette future application.

Cette application doit être le point d’entrée pour toutes les demandes de mission des personnels del’école, comprenant un outil de réservation de véhicules et des interactions avec les commandes de billetsde train ou d’avion.

Plusieurs intervenants seront amenés à utiliser cette application via le backoffice : - les simples utili-sateurs qui déposent un ordre de mission - les responsables hiérarchiques des utilisateurs qui valident oupas cette mission - le responsable comptable qui valide ou pas les frais de missions - le responsable desvéhicules qui valide ou pas les prêts de véhicule pour la mission.

Les technologies utilisées sont HTML 5/Javascript/Jquery/PHP Objet/Postgres et le développementse fait sous Eclipse.

Sujet 54 : Mais que font les députés ? Une sociologie informatiquedu travail parlementaireAuteur : Étienne Ollion Et Samuel HymResponsable : Étienne Ollion Et Samuel HymDans le cadre dun projet collectif mené à lENS et à lUniversité de Strasbourg, et qui réunit des chercheursde plusieurs disciplines (histoire, science politique, droit, sociologie, économie), les sujets proposés visentà mieux connaître le fonctionnement des deux assemblées législatives françaises, lAssemblée nationale etle Sénat. Les sujets proposés sont indicatifs, et peuvent être mélangés ou évoluer en fonction des centresdintérêts des étudiant.e.s.

## Le travail parlementaireQue font les parlementaires à lAssembléeă? Dans la lignée des travaux de léquipe de [Regards Ci-

toyens](http ://www.regardscitoyens.org/), ce projet consiste à collecter les informations disponibles surla participation parlementaire. On cherchera en particulier à mesurer la fréquence des interventions (encommission, dans lhémicycle), leur format (interjection, tirade), leur longueur (nombre de mots), les ré-actions suscitées (ńăapplaudissements à gaucheăż, ńăprotestations à droiteăż), mais aussi à comptabiliser

11

les questions orales ou écrites posées aux ministres. On pourra aussi chercher, quand elle nexiste pas, àconstituer une base de données avec ces informations afin de la mettre à disposition du public.

Si, pour la législature actuelle et la précédente, ces données sont disponibles directement et dans un for-mat facilement accessible, cest moins vrai quand on remonte dans le temps (voir [ici](http ://archives.assemblee-nationale.fr/1/cri/1-1961-1962-ordinaire1.asp) pour les débuts de la cinquième République), ou même[là](http ://archives.assemblee-nationale.fr/10/cri/10-1995-1996-ordinaire1.asp) plus récemment, car laplupart des textes sont stockés sous forme de pdf. Il faudra donc mettre en place un protocole dextrac-tion en fonction de la qualité de ceux-ci, comme des changements de format (peu fréquents heureusement)du journal officiel.

## Les usages des réseaux sociauxComment communiquent les élusăà lère du numériqueă? Ce projet consiste à créer un système qui

permettrait de collecter quotidiennement des informations depuis Twitter et/ou Facebook (nombre depersonnes qui suivent ou amis, nombre de ńăretweetsăż ou ńălikesăż, nombre de personnes suivies, vo-lume et contenu des dinformation partagées en fonction des plateformes, etc.). Ces informations seraientstockées dans une base de données mise à jour automatiquement. On pourrait par la suite explorer cesrésultats via une interface simple qui donnerait à voir les principales tendances et leurs évolutions dansle temps.

## Lindiscipline de voteSi le mouvement des ńăfrondeursăż du Parti Socialiste a reçu ces derniers temps une attention mé-

diatique importante, lindiscipline de vote est elle relativement régulière à lAssemblée comme au Sé-nat. Lobjectif de ce projet est de partir des comptes-rendus des scrutins publics publiés sur les sitesde ces deux institutions pour mesurer, [hier](http ://www.assemblee-nationale.fr/12/scrutins/table-2006-2007.asp) comme [aujourdhui](http ://www2.assemblee-nationale.fr/scrutins/liste/%28legislature%29/14),lintensité et les formes du vote ńăcontre son partiăż. In fine, ce projet permettra daboutir à une meilleurecaractérisation de lindiscipline (entre partis, dans le temps, et de ses formes).

Liens en rapport :• Version html du projet, avec les liens fonctionnels http://www.lifl.fr/~hym/s/parlementaires.html

Sujet 55 : Manipulation de données pour la sociologie : des citationsscientifiques à la sociologie des sciencesAuteur : Étienne Ollion Et Samuel HymResponsable : Étienne Ollion Et Samuel HymContexte : La bibliométrie, ou mesure des citations, est aujourdhui très largement utilisée pour mesurer lasupposée ńăproductivitéăż des chercheurs. Mais ces données peuvent aussi être utilisées dans une optiquede meilleure connaissance de fonctionnement du monde scientifique. En exploitant les grandes massesde données disponibles, cest tout un aspect de la sociologie des sciences qui connaît ainsi de profondsrenouvellements.

Les compétences informatiques sont toutefois nécessaires. Dabord parce que les données, disponiblessous forme numérique, doivent être nettoyées et requalifiées pour être utiles. Ensuite parce que les donnéesnécessitent le recours à des outils de détection de régularités pour être exploitables.

Ce projet se propose ainsi détudier le monde scientifique et ses évolutions en partant dun indicateurcommună: les citations. Présentes dans chaque article de recherche, elles fournissent une indication sur lesdettes et les collaborations entre chercheurs, sur les débats qui les animent, sur les modes qui traversent lascience. Elles permettent donc de saisir de manière très concrète les réseaux intellectuels présents commeleurs évolutions dans le temps.

Travail à réaliser : La disponibilité dinformations ne suffit pas à permettre leur analyse. On peut voirplusieurs pistes pour contribuer à rendre les données plus lisibles.

Nettoyage : Les grandes quantités de données contiennent toujours beaucoup dincohérences. Dans lecas pratique qui sert de fil rouge à ce projet, les données sont issues de services de recensions bibliomé-triques mais les conventions bibliographiques sont très variables. Ainsi, un même journal pourra être citéparfois comme ńăInternal Journal of ăż et parfois ńăInt. J. ăż, les variations sont nombreuses.

Le projet consistera à proposer et à mettre en uvre des outils pour le nettoyage et le recodage ensappuyant sur lexemple des données de citations (distance entre deux phrases, techniques dapprentissageautomatique, etc.). On pourra aussi proposer un outil interactif, pour les cas où lautomatisation complèteserait trop sujette à erreur, et ce afin quun non-informaticien puisse lui-même réaliser ce travail.

12

Visualisation des structures et de leurs évolutions, détection de propriétés : Pour apporter un éclai-rageănouveau à des questions classiques de sociologie des sciences, on pourrait aussi proposer des tech-niques de recherche de régularités dans les données. Un outil de visualisation pourrait être mis en placeafin de permettre une phase dexploration plus aisée, ou de réaliser des sorties graphiques de certainsrésultats. Il serait aussi intéressant de proposer un logiciel qui rende plus accessibles les requêtes sur lesdonnées notamment pour y détecter des propriétés.

Le code produit sera diffusé sous licence libre [CeCILL].Liens en rapport :• Version html du projet, avec les liens fonctionnels http://www.lifl.fr/~hym/s/socio%20citations.html

Sujet 56 : Identification des doigts à partir d’empreintes digitalesAuteur : Alix Goguey Et Géry CasiezResponsable : Alix Goguey Et Géry CasiezGrâce à leurs caractéristiques, les empreintes digitales permettent lidentification dindividus. Constituéesde creux et de bosses, elles forment des dessins uniques pour chaque personne.

La reconnaissance dempreintes digitales est un processus de traitement dimages mettant en exergueles points caractéristiques de ces dessins : les minuties. Une fois ces minuties extraites, lattribution duneidentité à une empreinte se fait par comparaison. La reconnaissance dempreinte digitale est donc uncalcul dun taux de similarité. Si ce taux est au-delà dun certain seuil, les deux empreintes comparées sontassimilées au même individu, en deçà, les deux empreintes sont considérées comme différentes. Le tauxde similarité dépend fortement de la surface couverte par lempreinte digitale. Plus la surface est grandeplus le nombre potentiel de minuties en correspondance sera élevé. Lidentification dindividus requiert untaux élevé afin déviter les faux positifs.

Dans un tout autre but, la reconnaissance dempreintes digitales pourrait être utilisée pour identifierquel doigt est utilisé lors dune interaction multitouch, augmentant ainsi lexpressivité du vocabulaire delinteraction tactile.

Moins critique que la reconnaissance dindividus, le but de ce projet est détudier si cette techniquepermet une discrimination robuste des doigts dun ou plusieurs utilisateurs (les faux positifs étant plusacceptables dans ce domaine dapplication). Un autre aspect de ce projet est détudier si les différentesparties de lempreinte (pulpe, partie latérale, médiale et distale de la pulpe - cf Figure 2) peuvent êtreutilisées pour une identification robuste.

Ojectifs : (1) Création dun jeu de donné à laide du matériel mis à disposition. (2) Mise en place, àlaide dun framework open source de reconnaissance dempreintes digitales (SourceAFIS, Biometric SDK,. . . ) au choix, dune interface permettant la comparaison dune empreinte digitale à une base de donnée.Cette interface sera utilisable à grande échelle (importation de plusieurs empreintes à reconnaître à lafois). (3) Eventuellement : mise en place dun protocole expérimental. (4) Eventuellement : réalisation delexpérience et analyse des résultats.

Sujet 57 : Navigateur de trace d’exécutionAuteur : Giuseppe LipariResponsable : Giuseppe LipariRTSim est un simulateur de systèmes temps réel open source (https ://github.com/glipari/rtlib2.0). Ils’agit d’une bibliothèque en C++ qui modélise : - des processeurs, - le noyau d’un système d’exploitation,- des algorithmes d’ordonnancement temps réel, - des tâches qui contiennent des listes d’instructions. Lesimulateur produit une trace textuelle de l’évolution temporelle du système.

Le projet consiste à écrire un logiciel graphique (en Java, Python, C++ ou un autre langage bienconnu) pour visualiser la trace produite par une simulation. Le programme dois permettre de naviguerdans la trace et d’en visualiser un morceau.

But : apprendre à concevoir une interface utilisateur complexe.Compétences : connaissance de C++ (pour comprendre le fonctionnement du simulateur). La connais-

sance de l’ordonnancement temps réel n’est pas requis.Liens en rapport :• Le simulateur https://github.com/glipari/rtlib2.0

13

Sujet 58 : Produire de la musique en temps réelAuteur : Giuseppe LipariResponsable : Giuseppe LipariPour produire de la musique de qualité professionnelle avec un ordinateur (MAO, Musique Assistéepar Ordinateur), il est nécessaire d’utiliser des outils logiciels spécifiques. Par exemple, l’outil JACK(http ://jackaudio.org/) permet de manipuler des flux (streams) audio en temps réel de manière trèssimple. Il est ainsi possible de faire de l’enregistrement audio multipiste et du MIDI simultanément.

Le traitement temps réel des flux audio est très sensible à la latence. Pour utiliser JACK de manièreoptimale, il est donc nécessaire de configurer le noyau pour une utilisation temps réel.

Même en utilisant un noyau configuré pour le temps réel et un ordonnancement à priorités fixées, iln’est pas simple d’obtenir de bons résultats.

Un premier problème est que l’ordonnanceur temps réel requiert les droits d’administration du système(root). Par conséquent, si des processus avec des priorités temps réel s’exécutent sans jamais s’interrompre,les autres processus ne s’exécutent jamais : ils souffrent de famine (starvation). Un deuxième problèmeest qu’il n’est pas simple de choisir la priorité à affecter aux différentes tâches concurrentes temps réel.

Pour permettre à un utilisateur sans les droits d’administrateur d’utiliser les fonctionnalités tempsréel, il faut empêcher qu’un processus obtienne le contrôle exclusif du processeur. Le nouvel ordonnanceurSCHED_DEADLINE, disponible dans le noyau Linux à partir de la version 3.14, à été conçu pourrépondre en partie à ce problème. Avec SCHED_DEADLINE, il est possible de contraindre le tempsd’exécution d’une tâche à respecter un quota correspondant à une fraction du temps d’exécution total duprocesseur. De plus, avec SCHED_DEADLINE l’utilisateur n’a pas besoin de spécifier les priorités destâches (elles sont calculées par l’ordonnanceur).

L’objective est donc de concevoir et réaliser un architecture logiciel pour gérer la qualité du servicedes applications multimedia sur Linux, basée sur le nouveau ordonnancer SCHED_DEADLINE.

Cet objectif final ambitieux dépasse vraissemblablement le cadre de ce projet. On propose donc deconcevoir un ensemble de petits outils, chacun simple et extensible.

- Un outil pour mesurer les temps d’exécution des taches gérés par SCHED_DEADLINE. On peututiliser le module https ://github.com/balsini/sched-deadline-spy comme point de départ.

- Un outil pour contrôler l’admission de nouvelles tâches temps réel. L’outil est un processus daemonqui s’exécute avec des droits root et s’interface avec les tâches. Si une tâche demande à être gérée parl’ordonnancer SCHED_DEADLINE, elle envoie une requête au processus daemon qui vérifie qu’il restesuffisament de quota processeur pour accepter la requête. Si la réponse est positive, la tâche est acceptée ;sinon, la tâche est rejetée.

Les outils développés pendant le projet seront validé sur l’application JACK.Compétences : Une connaissance dun ou plusieurs des concepts suivants serait un plus : bon niveau

de programmation en C/C++, programmation système, programmation concurrent et parallèle, configu-ration et compilation du noyaux Linux.

Liens en rapport :• L’outil JACK http://jackaudio.org/

• Kernel module pour mesurer le temps d’execution https://github.com/balsini/sched-deadline-spy

Sujet 59 : Méthodes de détection de chimères pour le séquençagede génomesAuteur : Jean-Stéphane VarreResponsable : Rayan ChikhiDepuis quelques années, le séquençage de lADN a été révolutionné par plusieurs technologies permettantde réaliser du séquençage à haut débit, cest-à-dire dobtenir la suite de lettres dun génome de manièretrès rapide et peu coûteuse.

Cependant, les technologies viennent avec les défauts de leurs avantages. Dans la technologie PacBioqui nous intéresse dans ce sujet, le séquenceur est capable de produire de très grandes lectures (cest-à-diredes portions du texte du génome, reads en anglais). Ces lectures sont ensuite assemblées à la manièredun puzzle pour retrouver le génome. Cest formidable de disposer de grandes lectures car alors on a àrésoudre un puzzle avec de grande pièces : cest plus facile !

Malheureusement, parmi ces grandes lectures il en existe quon qualifie de chimères : elles ne re-présentent pas vraiment une portion du génome mais plutôt une concaténation de deux portions. Ceschimères compliquent grandement lassemblage. Pour reprendre la métaphore du puzzle, imaginer une

14

pièce qui créerait faussement un lien entre deux zones très éloignées. Il est souhaitable, et conceptuel-lement possible, de détecter et supprimer de telles lectures. Comme les séquenceurs PacBio sont trèsrécents, la détection des chimères est un aspect encore peu étudié.

Lobjectif du projet est de comprendre, tester et éventuellement produire des méthodes pour la détec-tion de chimères. Le projet commencera par lanalyse de la méthode non documentée implantée dans lepipeline HGAP de PacBio puis se poursuivra par limplémentation dautres techniques en comparant lesperformances. On pourra aboutir à un nouveau protocole plus efficace de détection de chimères.

Profil souhaité : Motivation pour lanalyse de données bioinformatiques. Programmation en Python(langage dans lequel HGAP est implémenté). Aucune connaissance en biologie nest requise pour aborderce sujet.

Liens en rapport :• Principe du séquençage ADN PacBio https://www.youtube.com/watch?v=v8p4ph2MAvI

• Papier HGAP (nous contacter pour obtenir un PDF) http://www.nature.com/nmeth/journal/

v10/n6/full/nmeth.2474.html

• Article évoquant la détection de chimères PacBio http://www.biomedcentral.com/1471-2164/

15/720

Sujet 60 : Simultaneous Optimistic Optimization (SOO)Auteur : Bilel DerbelResponsable : Philippe PreuxContexte et Objectif ================================== SOO est un algorithmedéterministe pour loptimisation de fonctions sur un domaine continue [1]. SOO peut être considéré commeun algorithme de type diviser-pour-régner impliquant un processus de décision séquentiel. Il présentelavantage de sappuyer sur des principes simples qui permettent dobtenir des garanties théoriques quantà la convergence vers la solution optimale. Cependant, SOO peut savérer coûteux en terme de temps decalcul ainsi que en terme despace mémoire lorsquil est effectivement implémenté.

Le but général de ce sujet est détudier différentes possibilités visant à améliorer les performancesde SOO. Selon la motivation et les centres dintérêts de létudiant, lun de ces différents axes pourra êtreexploré de façon approfondie : 1 Utilisation de structures de données efficaces permettant un gain enmémoire et/ou en temps CPU. 2 Utilisation du parallélisme pour accélérer lexécution de lalgorithme.3 Mise en place de nouvelles stratégies pour améliorer la prise de décision lors du parcours de larbrereprésentant lespace de recherche et éventuellement le temps de convergence.

Références ================================== Philippe Preux, Remi Mu-nos, Michal Valko. Bandits attack function optimization. CEC2014.

Sujet 63 : Affinités végétales et combinatoire au potagerAuteur : Samuel BlanquartResponsable : Samuel BlanquartLes relations écologiques entre les entités d’un écosystème sont extrêmement complexes et largementincomprises. L’agronomie dite conventionnelle contourne les difficultés liées à la maîtrise de cette com-plexité par l’usage intense de la mécanisation, d’intrant et de biocide permettant de diminuer la diversitéécologique d’un espace de culture, jusqu’au stade de mono-culture. Il apparaît cependant en ce débutd’anthropocène (environ 30% de la biodiversité mondiale a été détruite ces deux derniers siècles) quecette stratégie agronomique est plus que suicidaire : érosion et appauvrissement des sols, pollution dessols et des nappes phréatiques, destructions aveugles à la fois des ravageurs (attaquant les cultures) etauxiliaires (attaquant les ravageurs, ou profitant aux cultures), destruction des espèces régulatrices, des-truction des habitats, déséquilibres écologiques favorisant les espèces invasives, bilan énergétique négatif(il a fallu plus d’énergie pour produire un légume que le légume n’en contient lui même), etc.

Conscients de ces problèmes vitaux pour les décennies à venir, beaucoup de gens tentent actuellementde (re)développer une agronomie compatible avec une richesse écologique des environnements. Selon cetteapproche, on va chercher à maximiser le nombre d’espèce d’un espace de culture de manière à ce que cesespèces s’entraident et soient compatibles avec la culture souhaitée. On ne parle plus de mono-culture,mais de culture d’espèces compagnes, d’agro-écologie ou encore de permaculture. L’informatique peutcontribuer à relever ce défis.

15

Nous proposons dans ce sujet de développer des modèles et interfaces graphiques permettant auxjardinier amateurs de concevoir leur potager en respectant cette notion de compagnonnage des plantes.On s’appuiera par exemple sur les données fournies en [1], qui résument les affinités entre plantes enterme de voisinages propices ou néfastes.

Les objectifs méthodologiques du PJI sont les suivants :Développement de formats de fichiers, structures de données et interfaces graphiques définissant : -

Le choix des espèces à cultiver dans un potager, - La forme du potager et des espaces non cultivables(chemins, mares, arbres, locaux, etc.), - Les voisinages propices ou néfastes entre couples de plantes, - Lareprésentation graphique d’un potager.

Développement d’algorithmes de résolution du problème : - les étudiants modéliseront le problèmesous la forme d’un problème d’optimisation, par exemple inspiré des problèmes du sac à dos, problèmesde bin packing, problèmes de coloration de graphe, etc., où il s’agira de placer les plantes de manière àmaximiser les affinités de chacune avec leurs voisines immédiates. - Les étudiants implémenteront enfin desalgorithmes d’optimisation (algorithme glouton, recherche locale itérative, etc.) permettant de calculerles répartitions optimales d’un ensemble de plantes dans un potager donné.

Encadrants : Samuel Blanquart et Bilel DerbelLiens en rapport :• associations de plantes http://www.homejardin.com/coup_de_pouce_compagnonnage/aide_conseil_assistance_explications.html

Sujet 64 : Application temps réel de tendances boursièresAuteur : François LemaireResponsable : François LemaireCe PJI se place dans le cadre d’une collaboration avec l’entreprise Wordline (filiale d’Atos) sur l’analysede cours d’actions. Un des objectifs consiste à étudier les tendances générales des actions afin de grouperles actions ayant un comportement similaire.

La vidéo du site http ://www.lifl.fr/˜lemaire/CS/ présente en 2D l’évolution dans le temps des actionsdu CAC40 (plus les actions sont proches, plus leurs variations sont proches). Cette vidéo n’est passatisfaisante en pratique notamment car elle n’est pas calculée en temps réel, et que l’utilisateur ne peutpas agir sur les paramètres.

Nous souhaitons écrire une application temps réel et interactive qui produira un rendu équivalent à lavidéo. Cette application devra comporter plusieurs curseurs de défilements (slider en anglais) qui agirontsur le rendu 2D des actions.

L’objectif du PJI est de concevoir une architecture logicielle flexible ainsi qu’un prototype répon-dant au problème. Idéalement, l’application graphique pilotera une autre application de calcul (par unlancement de thread, ou par socket, . . . ) afin d’afficher en temps réel les résultats des calculs. Le choixdes langages, des outils d’interfaces graphiques, le mode de communication entre les applications serontlaissé aux étudiants. Pour l’instant, seule l’application de calcul (basé sur des routines standard de calculnumérique dans BLAS et LAPACK) est écrite. Si les étudiants le souhaitent, le projet pourra être orientéplus génie logiciel, ou plus calcul numérique.

Liens en rapport :• Vidéo présentant les tendances boursières du CAC 40 http://www.lifl.fr/~lemaire/CS/

Sujet 65 : Environnement de simulation d’un accélérateur neuro-morphiqueAuteur : Pierre BouletResponsable : Pierre BouletNous développons un simulateur de réseaux de neurones impulsionnels à base de memristors. Nous avonsbesoin d’étendre ce simulateur dans deux directions pour un faire un environnement d’exploration d’ar-chitecture.

1. Créer un langage dédié à la description d’architectures de réseaux de neurones. 2. Créer un langagede description d’un ensemble de simulations. (3. Si le temps le permet, proposer un outil d’analyse desrésultats de simulation.)

16

Les technologies utilisées sont principalement le langage de programmation scala (fonctionnel et objettournant sur la JVM) et la bibliothèque d’acteurs Akka. L’analyse des résultats pourra se faire avecpython ou scala.

Liens en rapport :• Site de l’équipe Émeraude http://www.lifl.fr/emeraude

• Langage Scala http://www.scala-lang.org/

Sujet 66 : Gestion de corpusAuteur : Fanny ChevalierResponsable : Fanny ChevalierLe but de ce projet est de développer des solutions efficaces à la constitution, gestion et partage de corpus.

Imaginons par exemple que je m’intéresse à l’histoire de la souris informatique, et que j’ai collecté,de sources variées, des informations sur tous les types de souris ayant vu le jour avant les années 2000.Je souhaite organiser ma collection et la partager sur internet, via une interface simple, permettant auxinternautes de faire des recherches par catégories que j’aurai moi-même définies, voire leur permettre decontribuer eux-même à la liste en ajoutant une nouvelle entrée.

Des exemples de telles intefaces de navigation de corpus peuvent être consultés à ces addresses : - listedes visualisations spatio-temporelles http ://spacetimecakes.saclay.inria.fr/WebContent/index.php - listede visualisations physiques http ://dataphys.org/list/

Le but de ce projet est de développer une solution permettant de mettre en place un tel système degestion de corpus, comprenant : - la création et gestion de la base de données sous-jacente - la gestiond’ajout d’entrées dans la base de données - la page web qui affiche les éléments du corpus - les mécanismesde requêtes (filtres, etc. . . ) sur cette page

On s’inspirera largement des exemples fournis. Plusieurs corpus structurés seront fournis pour lestests.

Liens en rapport :• Collection de http://spacetimecakes.saclay.inria.fr/WebContent/index.php

• Liste de visualisations physiques http://dataphys.org/list/

Sujet 69 : Plateforme de jeux tour par tour : Classification desjeuxAuteur : Yoann Dufresne Et Fabien DelecroixResponsable : Yoann Dufresne Et Fabien DelecroixL’an passé nous avions soumis en PJI la création d’un modèle de jeux tour par tour (voir les liens). Ce PJIayant très bien fonctionné, nous disposons a présent d’un programme de base (voir le lien sourceforge)permettant d’implémenter un jeu tour par tour quelconque. Ce modèle est accompagné de toute ladocumentation permettant de réaliser le jeu en partant de la conception du modèle par dessus le méta-modèle jusqu’à l’implémentation des échanges réseaux nécessaires.

Cette année, nous décidons de proposer l’approfondissement de ce méta-modèle en lui ajoutant desspécifications que nous pourrons apporter en classifiant les jeux. Par exemple nous pouvons séparer lesjeux symétriques (tous les joueurs peuvent effectuer les même coups) des jeux asymétriques (où les joueursn’ont pas le même rôle). Lors d’une partie d’un jeu à n joueurs, le modèle actuel impose la création d’unautomate comprenant les tours des n joueurs. Si ce jeu est symétrique on pourrait penser à factorisercette partie de la conception pour ne plus ’avoir que l’automate d’un joueur à concevoir. Ceci n’est qu’unexemple de simplification que peut apporter l’ajout de classifications.

Ce projet sera développé sous licence libre (gpl) et demandera absolument la contribution d’un binôme.Liens en rapport :• Sujet initial de l’an passé http://www.lifl.fr/~salson/pji-sdl/listeprojetsPJI2013-2014.

pdf(Sujet39)

• Forge du projet actuel https://sourceforge.net/projects/pftpt/

17

Sujet 70 : Serveur de jeux tour par tourAuteur : Yoann Dufresne Et Gauvain MarquetResponsable : Yoann Dufresne Et Gauvain MarquetL’an passé nous avions soumis en PJI la création d’un modèle de jeux tour par tour (voir les liens). Ce PJIayant très bien fonctionné, nous disposons à présent d’un programme de base (voir le lien sourceforge)permettant d’implémenter un jeu tour par tour quelconque. Ce modèle est accompagné de toute ladocumentation permettant de réaliser le jeu en partant de la conception du modèle par dessus le méta-modèle jusqu’à l’implémentation des échanges réseaux nécessaires.

Dans l’état actuel, le méta modèle peut facilement être utilisé pour la conception de jeux et les jeuximplémentés peuvent facilement héberger chacun une partie. Une partie lancée est un modèle indépendantqui écoute sur un port les commandes qui lui sont passées via n’importe quel moyen par un protocoledéfini durant la conception du jeu. Une fois la partie terminée, le programme quitte.

L’idée ici est de faire un autre composant logiciel (un service) capable de repérer les différents jeux im-plémentés et de proposer d’instancier des parties. On pourra également imaginer un troisième composantlogiciel permettant d’interagir avec avec le serveur via une interface web.

Ce projet sera développé sous licence libre (gpl) et demandera absolument la contribution d’un binôme.Liens en rapport :• Sujet du travail de l’année passé (sujet 39) http://www.lifl.fr/~salson/pji-sdl/listeprojetsPJI2013-2014.pdf

• Sourceforge du projet https://sourceforge.net/projects/pftpt/

Sujet 72 : ElasticSearch pour audit wifiAuteur : Julien Iguchi-CartignyResponsable : Julien Iguchi-CartignyAujourd’hui la grande majorité des outils d’audit wifi sont monolithiques : ils servent à découvrir lescibles environnantes et cibler certains clients par des attaques MITM ou des algorithmes de cassage declés. Ces approches ne sont pas suffisantes pour auditer un grand nombre de points wifi sur une surfaceimportante.

Le but de ce projet est de valider une preuve de concept sur l’utilisation d’une base de donnéesElasticSearch pour la capture de trame wifi afin d’exploiter la puissance de l’interface de recherche kibanaet d’obtenir des informations sur les points wifi, leurs positions géographiques et le type de sécuritésupporté.

langages : pythonLiens en rapport :• Kibana http://www.elasticsearch.org/overview/kibana/

• ElasticSearch http://www.elasticsearch.org/overview/elasticsearch/

Sujet 73 : Architecture TOR sur navigateur webAuteur : Julien Iguchi-CartignyResponsable : Julien Iguchi-CartignyTor est un projet pour le support de l’anonymat en dissimulant les communications entre un client webet un serveur. Le mécanisme s’appuie sur un ensemble de relais de confiance disposés sur des serveurs.

Le nombre limité de relais (moins de 5000) et la confiance dans leur non-compromission peut êtreconsidéré comme une limitation de l’approche de Tor. Un moyen d’outrepasser cette limitation serait delimiter le rôle du serveur a un simple relais et de laisser les clients gérer l’anonymat dans le système. Afinde rendre le système le plus pratique et adoptable pour multiplier les chemins possibles, une idée serait dene s’appuyer que sur des technologies webs (http, javascript) pour que chaque navigateur puisse devenirun client.

Le but de ce projet est d’étudier la faisabilité de l’approche à l’aide de technologie comme websocket.Le cas d’étude sera limité à un simple chat (saisie limitée à 140 caractères).

Technologies étudiées : websocket, javascript, web crypto api, algorithmes P2P.Liens en rapport :• The Tor project https://www.torproject.org/

18

Sujet 74 : Modification de l’hyperviseur XtratumAuteur : Julien Iguchi-CartignyResponsable : Julien Iguchi-CartignyXtratum est un hyperviseur (pour permettre la virtualisation) conçu pour les architectures LEON3 (pourles satellites). Il est minimaliste, dans le sens où de nombreuses structures sont statiques après le démar-rage (nombre de machines virtuelles, allocation mémoire, ordonnanceur).

Nous développons dans notre équipe un dispositif physique permettant de détecter un nombre impor-tant de lecture et d’écriture de la part d’une machine virtuelle. Si un tel événement se déclenche, alorsune interruption est produite à destination de l’hyperviseur.

Le but de ce projet est d’écrire la partie du code dans Xtratum gérant l’interception de cet interruptionet la prise de mesure associé (arrêt de la machine virtuelle fautive).

langages : c et un petit peu d’assembleur sur architecture SparcV8. Si vous aimez la programmationsystème, ce sujet est pour vous.

Liens en rapport :• XtratuM http://www.fentiss.com/en/products/xtratum.html

• Leon3 http://www.gaisler.com/index.php/products/processors/leon3

Sujet 75 : Étude et adaptation du micro-noyau seL4 écrit en Has-kellAuteur : Julien Iguchi-CartignyResponsable : Julien Iguchi-Cartigny== Contexte ==

Un ordinateur vient avec un syste ?me d’exploitation qui a pour charge de ge ?rer les composantsmate ?riels (clavier, me ?moire, disque dur, carte re ?seau. . . ) et d’en fournir une interface abstraite aux ap-plications. C’est un logiciel critique qui doit a ? la fois satisfaire des proprie ?te ?s fonctionnelles (re ?pondreaux besoins des applications) et des proprie ?te ?s de se ?curite ? (re ?guler les acce ?s des applications).

Pour pouvoir ve ?rifier formellement ces proprie ?te ?s, il est ne ?cessaire de re ?duire autant que possiblela taille du code critique. C’est ce que permet l’approche par micro-noyau : le micro-noyau est seul a ?avoir un acce ?s direct au mate ?riel, garantit la se ?curite ?, et fournit une abstraction minimaliste descomposants mate ?riels pour les besoins des applications. Des abstractions plus avance ?es sont fourniespar les services qui tournent en mode utilisateur comme les applications. SeL4

seL4 est un exemple de micro-noyau dont certaines propriétés de sécurité ont été prouvées formelle-ment. Au cur de la preuve se trouve une implémentation de seL4 dans le langage Haskell. Ce langage deprogrammation a l’avantage de se prêter facilement à la vérification formelle.

== Problématique ==Les sources de seL4 sont disponibles depuis Juillet 2014. Le premier but de ce projet est de compléter

les interfaces natives de seL4 afin de faire tourner le noyau en haskell au dessus d’un Linux. C’est-à-dire :- Comment compiler, démarrer, puis utiliser un programme haskell avec des interfaces natives ? Le secondbut est d’étudier le fonctionnement du micro-noyau, c’est-à-dire : - Comment se code un micro-noyau enHaskell ? - En quoi une telle implémentation se prête-t-elle bien à la vérification formelle ?

== Travail demandé ==Le premier objectif de ce projet est de compiler le code source en Haskell de seL4, puis de le démarrer

sous QEMU, et de faire tourner des petits programmes par dessus pour en comprendre les fonctionnalités.Le second objectif est d’étudier le code source de seL4. L’étudiant pourra par exemple regarder commentle contrôle d’accès à base de capacités est implémenté.

Liens en rapport :• SeL4 http://sel4.systems/

Sujet 77 : Implémentation des méthodes HEAD, OPTIONS, PUTet DELETE dans SmewsAuteur : Michaël HauspieResponsable : Michaël Hauspie

19

Smews est un serveur web embarqué développé par l’équipe 2XS. Sa particularité est d’être conçu pourfonctionner sur des équipements aussi petits que des cartes à puces.

A l’heure actuelle, Smews permet de développer des applications web qui utilisent les méthodes GETet POST. Pour permettre aux utilisateurs de concevoir des application REST, il lui manque de pouvoirsupporter les autres méthodes du protocole HTTP que sont HEAD, OPTIONS, PUT et DELETE.

Le but du projet et donc d’implémenter, au sein de smews, la gestion de ces méthodes.Le développement sera effectué en C et en Python. Si le temps le permet, une application web de

démonstration utilisant une API REST pourra être développée (par exemple en utilisant Angular.js)Liens en rapport :• Site web de Smews http://www.lifl.fr/2XS/smews• Dépôt Smews sur github http://github.com/2xs/smews

Sujet 81 : Portail collaboratif de géolocalisation de problèmes (etde solutions !)Auteur : Philippe MarquetResponsable : Philippe MarquetL’objectif est la mise en place d’un portail permettant de signaler les problèmes rencontrés dans lespacepublic en les géolocalisant sur une carte, permettant de pouvoir procéder au suivi de ces problèmes, maisaussi d’indiquer d’éventuelles propositions.

Deux déploiements d’un tel portail sont envisagées, le premier au niveau d’une commune, Saint-André-lez-Lille pour ne pas la nommer, le second au niveau du campus de Lille 1.

Il s’agira, en fonction du cahier des charges qui est le nôtre, et qui restera à affiner ensemble 1-d’évaluer, d’étudier les propositions existantes (en particulier en terme de fonctionnalité, d’ergonomie,de paramétrisation) 2- développer (éventuellement à partir de codes existants) une première versionfonctionnelle d’un portail 3- en collaboration avec un second PJI, intégrer l’usage via une applicationmobile pouvant profiter de la géolocalisation

On s’attachera à une démarche agile pour assurer une prise en charge incrémentale et progressivedes fonctionnalisés, des besoins. On fournira aussi le résultat de notre travail sous licence libre, gage dequalité et de pérennité des développements.

Liens en rapport :• Exemple de portail de ce type à Mérignac http://leon.merignac.com/

• Le projet emblématique du domaine (Grande-Bretagne principalement) http://fixmystreet.org• Une autre proposition http://www.leproblemedemarue.fr/

Sujet 82 : Application mobile de géolocalisation de problèmes (etde solutions !)Auteur : Philippe MarquetResponsable : Philippe MarquetL’objectif est la mise en place d’un portail permettant de signaler les problèmes rencontrés dans lespacepublic en les géolocalisant sur une carte, permettant de pouvoir procéder au suivi de ces problèmes, maisaussi d’indiquer d’éventuelles propositions.

Deux déploiements d’un tel portail sont envisagées, le premier au niveau d’une commune, Saint-André-lez-Lille pour ne pas la nommer, le second au niveau du campus de Lille 1.

On s’attachera dans ce projet aux aspects mobiles, un autre PJI assurant le développement du portailproprement dit.

Il s’agira, en fonction du cahier des charges qui est le nôtre, et qui restera à affiner ensemble 1-d’évaluer, d’étudier les propositions existantes (en particulier en terme de fonctionnalité, d’ergonomie,de paramétrisation) 2- développer (éventuellement à partir de codes existants) une première versionfonctionnelle d’une application mobile de remontée de problème 3- faire lien avec le portail dévellopé sanscadre dun autre PJI

On s’attachera à une démarche agile pour assurer une prise en charge incrémentale et progressivedes fonctionnalisés, des besoins. On fournira aussi le résultat de notre travail sous licence libre, gage dequalité et de pérennité des développements.

Une expérience préalable de développement mobile serait bienvenue.

20

Liens en rapport :• Exemple de portail à Mérignac http://leon.merignac.com

• Le projet emblématique du domaine (Grande-Bretagne principalement) http://fixmystreet.org/• Une autre proposition http://www.leproblemedemarue.fr/

Sujet 84 : Par où passe mon train ?Auteur : Mathieu GiraudResponsable : Mathieu GiraudL’objectif est de programmer une application mobile présentant ń au bon moment ż des points dintérêt(POI) figurant dans OpenStreetMap, afin que l’utilisateur découvre le paysage et prenne conscience desendroits par lequels passe son train.

Cette présentation se fera sur la base des données GPS du téléphone ou de la tablette et tiendracompte du côté où est assis l’utilisateur, de la vitesse du train et de la topographie des lieux traversés.L’information du début et de la fin de la ń visibilité ż de chaque POI sera à rajouter dans OpenStreetMapou bien dans une base de données externe.

Lapplication pourra charger en un seul moment une collection de POIs sur un trajet donné afin dene pas dépendre dune connexion durant le trajet, et contiendra des outils collaboratifs permettant desoumettre, dannoter et d’éditer des POI ou des collections de POI. Le choix des technologies est ouvert.

La validation se fera sur des trajets courts en TER. Il serait préférable qu’au moins un des étudiantsprenant ce projet ait un abonnement de train. Pour mémoire, les abonnements Viva et Rythmo deTranspole permettent une libre circulation sur le réseau TER de la métropole liilloise (Armentières,Comines, Tourcoing, Biaisieux, Bouvines, Fretin, Seclin, La Bassée).

Liens en rapport :• Les applis OSM pour Android http://wiki.openstreetmap.org/wiki/Android

• Les applis OSM pour iOS http://wiki.openstreetmap.org/wiki/IOS

• Vu du train, les paysages traversés par votre TGV http://www.vu-du-train.com/vues-du-tgv.

html

Sujet 86 : Portage de la bibliothèque libpfm sur processeurs NVI-DIA Tegra K1Auteur : Loïc HuertasResponsable : Romain RouvoyLIEU Spirals Research Group Inria Lille - Nord Europe Parc Scientifique de la Haute Borne 40, avenueHalley - Bat. B, Park Plaza 59650 Villeneuve d’Ascq - FRANCE

CONTEXTE Le processeur Tegra K1 est basé sur larchitecture NVIDIA Kepler à hautes performanceset à basse consommation, qui accélère également les meilleurs systèmes de jeu et le supercalculateur leplus puissant des États-Unis. Tegra K1 est notamment le premier processeur mobile capable de fairetourner lUnreal Engine 4. Tegra K1 embarque le seul GPU mobile entièrement compatible avec NVIDIACUDAő, le langage de calcul par GPU le plus innovant de lindustrie. Le processeur Tegra K1 intègreégalement quatre coeurs de CPU ARM Cortex A15 à hautes performances, ainsi qu’un cinquième curde troisième génération à économie d’énergie, afin de délivrer un maximum de performances et unemeilleure autonomie. Larchitecture variable SMP (multitraitement symétrique) développée par NVIDIApermet dutiliser les quatre curs principaux pour un maximum de performances quand vous en avez besoin.Chaque cur est géré indépendamment et automatiquement en fonction des ressources requises.

PROJET En collaboration avec NVIDIA, l’objectif de ce projet est de porter la bibliothèque logiciellelibpfm développée dans le cadre du projet perfmon2 [1] sur les processeurs Tegra K1 de la marquesNVIDIA [2]. L’objectif consiste donc à intégrer les événements matériels et logiciels (CPU, GPU, etc.)disponibles sur cette architecture dans le code de libpfm [1] de manière à ce qu’il soit possible de surveillerdifférents compteurs d’exécution pour des applications qui s’exécuteront dans un environnement Linuxdéployées sur une carte Carte Jetson Tegra K1 [2] qui sera mise à disposition des étudiants.

L’objectif à terme est de permettre d’estimer et de comparer la consommation énergétique d’applica-tions s’exécutant sur ces processeurs Tegra K1 en utilisant la bibliothèque PowerAPI [3].

Liens en rapport :• Projet Perfmon2 http://perfmon2.sourceforge.net

21

• Carte Jetson Tegra K1 https://developer.nvidia.com/jetson-tk1

• Projet PowerAPI http://powerapi.org

Sujet 88 : Passerelle Android pour l’Internet des ObjetsAuteur : Romain RouvoyResponsable : Romain RouvoyLIEU Spirals Research Group Inria Lille - Nord Europe Parc Scientifique de la Haute Borne 40, avenueHalley - Bat. B, Park Plaza 59650 Villeneuve d’Ascq - FRANCE

PROJET Le but de ce projet est de développer une passerelle logicielle ????flexible pour connecter desobjets domotiques (capteurs, actuateurs) à Internet en exploitant des boitiers de type Set-top box (STB)[1] fonctionnant sous le système d’exploitation Android [2]. Forts de notre expérience dans la conceptionde la plateforme logicielle APISENSE (http ://www.apisense.fr), pour la collecte de données à partirde téléphones, nous tenons à développer un nouveau type de passerelle qui peut soutenir le chargementdynamique des tâches et des services. En particulier, nous nous intéressons à l’intégration des connecteursde communication pour les bibliothèques Z-Wave [3], mais la solution développée devrait également être enmesure d’accueillir d’autres protocoles et technologies de l’Internet, tels que UPnP, CoAP ou DPWS. Enplus de ces connecteurs de communication, la passerelle comprendra également un support pour diversmoteurs de traitement, y compris JavaScript (par exemple, Rhino - https ://www.mozilla.org/rhino)ou BPM (par exemple , Activiti - http :// www.activiti.org), o ????ffrant ainsi la capacité de déployerdynamiquement du code dans la passerelle, au-delà de la composition traditionnelle de services logiciels.Ce support modulaire pour les technologies standards sera ensuite enrichi avec des mécanismes de sécurité(authenti ????cation, chi ????rement) pour contrôler l’ accès aux données exposées par la passerelle.

CONTEXTE La solution développée sera appliquée sur des études de cas portant sur des mesures dela qualité de l’expérience pour les accès haut débit résidentiels, ainsi que des scénarios de surveillance àdomicile couverts dans le cadre de notre collaboration continue avec le groupe de recherche de ND del’Université d’Oslo (Norvège) dans le cadre du SOCS Inria Lab nord-européen .

COMPÉTENCES REQUISES - Curiosité, ouverture d’esprit, persévérance, organisation - Bonneconnaissance de Java (SDK Android) - Connaissance éventuelle de JavaScript

APPORTS - Prise en main d’Android (son architecture, son SDK) - Formation aux bonnes pratiquesde développement (design patterns, IOC) - Découverte des protocoles de communication en réseau local

Liens en rapport :• STB Minix http://www.minix.com.hk

• SDK Android http://www.android.com

• Technologie Z-Wave http://www.z-wave.com

Sujet 89 : Plateforme communautaire de suggestions et d’informa-tions cinématographiquesAuteur : Guillaume DufrêneResponsable : Guillaume Dufrêne(Sujet proposé par les étudiants)

Il s’agit de développer une plateforme sur laquelle des personnes pourraient s’inscrire et accéder auxinformations des films actuellement au cinéma. Elle rendrait également accessible les horaires des séancesde la métropole lilloise, permettant aux membres du site d’organiser des événements avec leurs amis oucamarades cinéphiles sur l’application, ou sur un autre réseau social.

Cette plateforme différerait d’un site comme IMDB ou Allociné par l’aspect communautaire ainsi quepar des propositions régulières de films à voir, en fonction des sorties et des séances. Ces suggestionspourront d’abord être manuelles (par l’équipe) ou, par la suite, en fonction des préférences de chacun desmembres.

Concernant l’aspect technique, un développement JavaScript sera couplé à des API comme celled’IMDB. Les caractéristiques techniques seront définies clairement dans le cadre du projet.

22

Sujet 90 : Un bugtracker pour geeks et non-geeksAuteur : Mathieu GiraudResponsable : Mathieu GiraudUn bugtracker permet de créer et éditer des tâches, avec des priorités, des mots-clé, des dates limiteséventuelles, des commentaires, des références croisées à des tâches ou à des commits dun gestionnaire deversion. C’est un outil qui peut servir à la fois en suivi de code mais aussi en gestion de projet d’équipe.Faire cohabiter sur une même application des utilisateurs avec des expertises très différentes est toujoursun défi. On souhaiterait réaliser un bugtracker dont les fonctionnalités seraient accessibles :

- dun côté, pour des utilisateurs normaux, par une interface web élégante,- de lautre, pour des utilisateurs préférant le terminal, vi, emacs ou d’autres éditeurs, par un fichier

texte, brut, par exemple encodé en org-mode, éditable hors connexion.Certains bugtrackers proposent déjà une API avec laquelle on pourrait extraire ce type de fichier

texte, mais cela reste délicat davoir un accès correct à toutes les fonctionnalités, et encore plus de pouvoirmodifier des tâches sans être connecté. Le but de ce projet est donc de réaliser un prototype de bugtrackeran ayant une approche radicalement différente, où le fichier texte, directement éditable par lutilisateurnon-web, constitue le format principal de stockage. La synchronisation avec le serveur pourrait se fairepar des commits / push sur un serveur git. Le serveur web interprète ce fichier (ou les commits) et gère,si besoin, une base de données locale.

Technologies : git, python, framework web à déterminer, bootstrap.jsLiens en rapport :• MantisBT, un bugtracker libre http://www.mantisbt.org

• Producteev, un bugtracker pas libre http://www.producteev.com

• org-mode http://orgmode.org

Sujet 91 : Conception et implémentation d’un minimax sur un jeude plateauAuteur : Olivier PerriquetResponsable : Philippe MathieuAlpha est un jeu de plateau créé il y a quelques années. Le principe général du jeu est similaire àcelui des échecs : deux camps s’affrontent et il s’agit de capturer une pièce maitresse chez l’adversaire.Les déplacements et la géométrie du plateau sont en revanche assez originaux par rapport aux jeuxcombinatoires traditionnels.

Le jeu a été primé en 2008 au concours international de Boulogne et sera lancé sur le marché l’annéeprochaine tandis qu’en parallèle, une version libre sera diffusée sur internet et sous forme d’applicationsur tablettes mobiles.

La version dématérialisée du jeu sera munie d’une intelligence artificielle qui permette à un nouveaujoueur de se familiariser avec les règles en jouant contre la machine. Le travail du stage consiste àconcevoir et implémenter un tel algorithme, sur la base d’un minimax. C’est un projet qui comporte unelarge part de recherche et d’expérimentations, notamment sur la définition de la fonction à optimiser, lepoids des pièces, et la conception des heuristiques, tout en laissant une grande place à l’inventivité caren comparaison aux échecs, il n’existe encore aucun travaux sur le sujet.

Liens en rapport :• http://gaaln.ovh.org/alpha/offline

• http://gallery.bridgesmathart.org/exhibitions/2010-bridges-conference/paul-mcguire

• http://fr.wikipedia.org/wiki/Concours_de_cr%C3%A9ateurs_de_jeux_de_Boulogne-Billancourt#

2008_-_27e_Concours

Sujet 94 : Détection d’état affectif dans un contexte dynamiqueAuteur : Marius BilascoResponsable : Marius BilascoLe but de ce travail est détudier limpact de la dynamique du visage et des gestes sur lextraction desémotions à partir des flux vidéo. Actuellement, il y a un vrai engouement autour des technologies permet-tant de reconnaître les actions réalisées par les humains à laide des systèmes avancées des caméras et/ou

23

capteurs. Nous nous intéressons à une classe spécifique dactions qui correspondent à la manifestation desémotions telles que la joie, la tristesse, lénervement. La reconnaissance démotion peut servir dans diffé-rents domaines impliquant de linteraction homme-machine tels que dans lindustrie du commerce (tablesde vente interactives), dans laide des personnes à domicile, etc.

Léquipe FOX sintéresse de manière générale à lextraction des informations de la vidéo et à desapplications au comportement humain. Dans nos travaux passés, nous avons déjà exploré lextraction desémotions de base (telle que la joie, cf. image ci-dessous) à partir des images en utilisant uniquement desinformations statiques telles que les distances entre les régions significatives du visage (sourcils, yeux,nez, bouche, etc.). Si ces informations sont suffisante pour caractériser des émotions simples et plutôtstatiques telle que la joie. En effet, dès que lon aperçoit le visage dune personne nous pouvons de rendrecompte si la personne exprime la joie. Cependant, elles ne suffisent plus lorsque lon étudie des émotionsplus complexes telles ques lintérêt. Nous croyons que lapport informationnel issu de létude du mouvementde la personne dans sa globalité peut augmenter de manière importante la détection des émotions et laquantification de leur intensité.

Sujet 95 : Comment j’ai aimé la dernière video sur youtube. . .Auteur : Marius BilascoResponsable : Marius BilascoDans ce projet, il s’agit de construire un modèle rendant compte des intérêts et des préférences desutilisateurs en suivant la manière dont : ils naviguent au sein d’un contenu vidéo (sauts fréquents,lecture rapide, lecture normale, s’ils reviennent en arrière), ils regardent ou pas l’écran lorsque la vidéoest jouée ils expriment certaines expressions faciales (sourire, joie, etc.)

Le but du projet est de faire dans un premier temps un bref état de l’art sur les modèles utilisa-teurs fusionnant des informations de diverses nature pour mettre à jour les intérêts et préférences desutilisateurs.

Des prototypes existent dans notre équipe permettant de réaliser individuellement les types de suividiscuté précédemment. Nous disposons également d’un plugin Firefox permettant de suivre l’utilisateurlorsqu’il consulte des vidéos sur Youtube.

Dans ce projet, il s’agit d’intégrer tout cela pour faire évoluer un modèle décrivant l’utilisateur ainsique les contenus regardés.

Ce type de modèle peut être utilisé ensuite pour personnaliser l’expérience multimédia de l’utilisateurdans un contexte d’usage privé ou bien dans un contexte e-learning où l’on peut adapter la forme et lecontenu transmis à l’apprenant.

Sujet 96 : Les yeux nous trahissent ?Auteur : Marius BilascoResponsable : Marius BilascoLe but de ce travail est détudier limpact des mouvements à proximité des yeux sur lextraction de l’étataffectifà partir des flux vidéo. Actuellement, il y a un vrai engouement autour des technologies permettantde reconnaître les actions réalisées par les humains à laide des systèmes avancées des caméras et/oucapteurs. Nous nous intéressons à une classe spécifique dactions qui correspondent à la manifestation desétats tels que l’intérêt, lénervement, l’attention, la concentration. La reconnaissance dun tel état peutservir dans différents domaines impliquant de linteraction homme-machine tels que dans lindustrie ducommerce (tables de vente interactives), dans laide des personnes à domicile, etc.

Léquipe FOX sintéresse de manière générale à lextraction des informations de la vidéo et à desapplications au comportement humain. Dans nos travaux passés, nous avons exploré lextraction desémotions de base (telle que la joie) à partir des images ou vidéos. Si ces informations sont suffisantepour caractériser des émotions simples et plutôt statiques telle que la joie, il est difficile de les utiliserafin d’identifier des états tels l’intérêt, lénervement, l’attention, la concentration. Lors des essais que nousavons réalisés en filmant des personnes regardant des cours en lignes, ou des séries TV, nous nous sommesaperçu que généralement les expressions faciales ne permettent pas de distinguer entre les états cognitifsde la personne. Cependant, nous avons observé que le mouvement des yeux, accompagné des mouvementsde la tête, permettent de désambiguïser l’interpretation de certaines situations.

Actuellement, nous disposons des outils performants mais intrussifs permettant d’estimer la posi-tion précise des yeux et le point de regard (EyeTracker), mais également des prototypes qui pemettentd’extraire des modèles de mouvement pour caractériser la zone des yeux et de la tête.

24

La mission principale consiste en la réalisation d’un état de l’art sur la manière dont les mouvementsocculaires et les mouvements présents dans la zone peri-occulaire peuvent être interprétés afin d’inférerl’état d’une personne. Un travail d’adaptation d’un prototype existant est également envisagé pour testerla validité des métriques proposées.

Sujet 97 : Detection de l’endormissement à l’aide des cameras dy-namiquesAuteur : Marius BilascoResponsable : Marius BilascoDes nouvelles types de caméras fournissant n’ont pas des images, mais signalant (de manière événe-mentielle) des changements dans les scènes observées font leur essor. Ainsi, une image n’est plus unematrice représentant les valeurs RGB des pixels, mais plutôt une suite dévénements correspondant auxcoordonnées des pixels changeant d’apparence.

Systèmes de vision dynamique : - aperçu : http ://www.inilabs.com/products/dynamic-vision-sensors/overview- exemples de vidéos : http ://www.ini.uzh.ch/˜tobi/dvs/ - API : http ://sourceforge.net/p/jaer/wiki/Home/

Au sein de l’équipe FOX, nous commençons à étudier l’utilisation de ces nouvelles caméras afind’étudier le mouvement apparent d’une scène d’une façon innovante. Nous étudierons les clignements desyeux car il donne lieu à des mouvements clairement identifiées des paupières. La fréquence des clignementspeut être directement associée à l’état de fatigue de la personne.

En relation avec ces caméras nous étudierons conjointement l’utilisation des nouveaux réseaux neuro-naux à base flux d’impulsion qui offre également des perspectives nouvelles en termes d’algorithmes enpermettant de simuler le fonctionnement biologique du système de vision humain.

Simulateur : http ://briansimulator.org/

Sujet 99 : Gestion de Collections sous AndroidAuteur : Cedric DumoulinResponsable : Cedric DumoulinA force d’acheter des livres et des bandes dessinées, de les emprunter chez l’un ou chez l’autre et d’enprêter, on ne sait plus ce que l’on possède, ce que l’on a déjà lu, à qui on a emprunté ou prêté un livre.L’objectif de cette application est de pouvoir gérer des collections de type livres, bandes dessinées ouCD sur une tablette ou téléphone Androïd. L’application permet de multiples fonctionalités : ajouterun élement en scannant son code barre ; recherche des données sur un élément à partir de son codeEAN (code barre) ; recherche d’un élément ; import/export entre tablettes ou ordinateur ; spécificationde données tel que emprunteur, propriétaire, commentaires . . . De tel applications existent déjà pourAndroid, mais elles ne sont pas open-source. Les candidats devront affiner le cahier des charges ; étudiercomment et où chercher des données à partir de l’EAN ; proposer une architectures ; implémenter unepartie de l’application. Un autre objectif de ce projet est de servir de base au PJE de M1 des prochainesannées.

Sujet 101 : Création programmatique de diagrammes PapyrusAuteur : Cedric DumoulinResponsable : Cedric DumoulinPapyrus est un modeleur UML permettant de créer des diagrammes à l’aide d’une interface graphique.Nous voulons fournir une interface API permettant de créer programmatiquement des diagrammes Pa-pyrus. Cela nous permettra de créer des diagrammes à partir de scripts, à travers le web, à partir desmartphones . . . Les candidats devront proposer une définition des interfaces de création, et une implé-mentation. Dans le cadre de ce projet, on pourra se limiter à une sous-partie des diagrammes. Pourl’implémentation, les candidats pourront se baser sur les commandes actuelles déclenchées par les in-teractions de l’utilisateur. Une implémentation possible consiste à appeler ces commandes. Une autreimplémentation peut se faire en analysant les commandes existantes et en reprenant le code.

Mots clés : Papyrus, Java, EclipseLiens en rapport :• Papyrus http://www.eclipse.org/papyrus/

25

Sujet 103 : Extraction de données contextuelles dans tweeterAuteur : Luigi LancieriResponsable : Luigi LancieriUn des thèmes de recherche de l’équipe Noce du LFL est la mesure du facteur humain dans les réseauxsociaux tels que tweeter.

L’objectif du projet est d’explorer les moyens de récupérer de manière indirecte des informations liéesaux tweets. Citons par exemple la tranche d’age de l’usager, sa catégorie socio-professionnelle ou sescentres dintérêts. Ces informations ne sont pas présentes explicitement dans tweeter mais il est possiblede trouver des indices avec le contexte de chaque tweet. Par exemple, un usager utilisant souvent duvocabulaire lié au sport est probablement intéressé par le sport.

Travail à réaliser Réaliser un état de l’art sur les modes d’extractions de données contextuelles sur leweb et plus spécifiquement sur tweeter. Réaliser un petit démonstrateur permettant de montrer lintérêtde la collecte d’indices contextuels.

Sujet 104 : Visualisation de l’évolution temporelle du sentimentdans une videoAuteur : Luigi LancieriResponsable : Luigi LancieriL’objectif du projet est de réaliser un démonstrateur en HTML5 / Javascript permettant dafficher unecourbe dynamique et une vidéo sur une page HTML. La courbe représenté l’évolution du sentiment(plutôt positif ou negatif) issu du discours de la vidéo. L’indicateur de sentiment représente par la courbeest calculé à partir des mots clés exprimé dans la video.

Sujet 105 : Reconnaissance automatique d’objets dans une imageAuteur : François CabestaingResponsable : François CabestaingLa reconnaissance automatique d’un ou plusieurs objets contenus dans une image est un problème com-plexe, auquel il n’existe pas de solution générale, et sur lequel de nombreuses équipes de recherche foca-lisent encore leurs efforts. Les domaines d’application sont variés : indexation automatique d’images parune description sémantique de leur contenu, robotique mobile (ex : google car), réalité augmentée, etc.

Dans ce projet, il s’agira de créer une bibliothèque de reconnaissance automatique d’objets, ainsiqu’une interface utilisateur permettant d’exploiter cette bibliothèque. L’utilisateur pourra charger uneimage dans le logiciel et sélectionner grâce à la souris un pixel de cette image. Le système devra dansun premier temps segmenter l’objet auquel appartient le pixel, c’est-à-dire définir la région connexe del’image qui lui correspond. Puis il devra reconnaître l’objet parmi un nombre limité d’objets connus.

Afin de permettre la segmentation automatique, les objets visibles dans l’image seront placés sur unfond uniforme facilement identifiable. L’apprentissage des objets connus sera réalisé de façon supervisée,en faisant intervenir des attributs géométriques et photométriques. Les mêmes attributs seront calculéssur l’objet segmenté dans l’image, afin de permettre une catégorisation automatique. Il faudra égalementintroduire une catégorie de rejet, correspondant à la détection d’un objet ne faisant pas partie de la listedes objets connus.

Au début du projet, il conviendra de réaliser une étude bibliographique détaillée des différentes ap-proches de segmentation, afin de sélectionner une technique existante (pour ne pas réinventer le fil à couperle beurre !) Ensuite, différentes approches d’apprentissage et de catégorisation pourront être implantéeset comparées en termes de performances.

Sujet 106 : Etude de l’impact électromagnétique d’un systèmecryptographiqueAuteur : Gilles GrimaudResponsable : Gilles GrimaudLIEU

équipe 2XS IRCICA - CNRS 50 Avenue du Halley 59650 Villeneuve-d’Ascq - France

26

CONTEXTEL’équipe 2XS est hébergé par lInstitut de Recherche en Composants logiciel et matériel pour lInfor-

mation et la Communication Avancée (IRCICA, une Unité de Service et de Recherche : USR-3380) quiassocie le CNRS et lUniversité Lille 1. Au sein de ce laboratoire des équipes de recherche de domainesdifférents collaborent sur des travaux pluridisciplinaires. Dans ce cadre, l’équipe 2XS (informatique) tra-vaille avec l’équipe CSAM (électronique). Nous nous intéressons notamment aux liens qui existent entrel’énergie que dissipent les microcontrôleurs et les programmes qu’ils exécutent.

PROJETDans le cadre de ses travaux, l’équipe CSAM a développer une maquette lui permettant de mesurer

la différence entre un signal radio reçu, et celui qui a été émis. Il a été démontré que l’environnementà un fort impact sur cette mesure. Nous souhaitons maintenant reprendre cette démarche et étudié trèsprécisément l’impact de l’exécution d’un programme cryptographique sur le signal radio reçu. Il a déjàété démontré dans des articles scientifique que l’écoute passive du son produit par un microprocesseur,avec un simple microphone, pouvait constituer une fuite d’information, et compromettre la sécurité duchiffrement. Nous envisageons de faire de même avec la maquette conçu par l’équipe CSAM.

L’objet de ce projet technique est donc (1) la prise en main de la maquette de mesure réalisée parl’équipe CSAM ; puis (2) la prise en main de l’implémentation du chiffrement RSA dans un microcon-trôleur MBed ; et enfin (3) l’observation statistique et la corrélation des résultats issus des mesures de lamaquette, lorsque le système cryptographique est opérant.

Liens en rapport :• équipe CSAM http://www.ircica.univ-lille1.fr/spip.php?rubrique12

• équipe 2XS http://www.lifl.fr/2XS/Team/Members

• Article d’attaque de RSA à l’aide d’un micro. http://www.tau.ac.il/~tromer/papers/acoustic-20131218.pdf

Sujet 108 : Paramétrisation et déploiement de portail collaboratifde géolocalisation de problèmes (et de solutions !)Auteur : Philippe MarquetResponsable : Philippe MarquetL’objectif est la paramétrisation et le déploiement de portail permettant de signaler les problèmes ren-contrés dans lespace public en les géolocalisant sur une carte (cf sujet 81).

De tels portails pouvant être déployer sur des territoires différents, il s’agira, en fonction du cahier descharges qui est le nôtre, et qui restera à affiner ensemble 1- d’évaluer, d’étudier les propositions de portailsexistantes (en particulier en terme de fonctionnalité, et de paramétrisation) 2- de réaliser une applicationde déploiement permettant de définir un territoire géographique, ses caractéristiques (hiérarchie éventuellepar exemple), et les différents paramètres attachés à une instance du portail On travaillera bien entenduen collaboration avec un second PJI en charge du développement du portail lui-même.

On s’attachera à une démarche agile pour assurer une prise en charge incrémentale et progressivedes fonctionnalités, des besoins. On fournira aussi le résultat de notre travail sous licence libre, gage dequalité et de pérennité des développements.

Liens en rapport :• Portail collaboratif de géolocalisation de problèmes (et de solutions !) http://www.lifl.fr/~salson/pji-sdl/projet.php?id=81

Sujet 109 : Application Android de géolocalisation de problèmes(et de solutions !)Auteur : Philippe MarquetResponsable : Philippe MarquetL’objectif est la mise en place d’un portail permettant de signaler les problèmes rencontrés dans lespacepublic en les géolocalisant sur une carte, permettant de pouvoir procéder au suivi de ces problèmes, maisaussi d’indiquer d’éventuelles propositions.

Deux déploiements d’un tel portail sont envisagées, le premier au niveau d’une commune, Saint-André-lez-Lille pour ne pas la nommer, le second au niveau du campus de Lille 1.

27

On s’attachera dans ce projet aux aspects mobiles, un autre PJI assurant le développement du portailproprement dit.

Il s’agira, en fonction du cahier des charges qui est le nôtre, et qui restera à affiner ensemble 1-d’évaluer, d’étudier les propositions existantes (en particulier en terme de fonctionnalité, d’ergonomie,de paramétrisation) 2- développer (éventuellement à partir de codes existants) une première versionfonctionnelle d’une application mobile de remontée de problème 3- faire lien avec le portail développésans cadre dun autre PJI

On s’attachera à une démarche agile pour assurer une prise en charge incrémentale et progressivedes fonctionnalités, des besoins. On fournira aussi le résultat de notre travail sous licence libre, gage dequalité et de pérennité des développements.

Ce projet est un clone Android du PJI 82 qui lui sattachera au développement iOS. On travaillerabien entendu en collaboration dans un esprit de mutualisation.

Une expérience préalable de développement Android serait bienvenue.Liens en rapport :• Application mobile de géolocalisation de problèmes (et de solutions !) http://www.lifl.fr/~salson/pji-sdl/projet.php?id=82

Sujet 110 : Modification de Kismet pour audit wifiAuteur : Julien Iguchi-CartignyResponsable : Julien Iguchi-CartignyAujourd’hui la grande majorité des outils d’audit wifi sont monolithiques : ils servent à découvrir lescibles environnantes et cibler certains clients par des attaques MITM ou des algorithmes de cassage declés. Ces approches ne sont pas suffisantes pour auditer un grand nombre de points wifi sur une surfaceimportante. 1 Le but de ce projet est de valider une preuve de concept sur l’utilisation d’une base dedonnées ElasticSearch pour la capture de trame wifi afin d’exploiter la puissance de l’interface de recherchekibana et d’obtenir des informations sur les points wifi, leurs positions géographiques et le type de sécuritésupporté.

Plus spécifiquement, les candidats devront s’intéresser à l’implémentation d’une extension de Kismetpour pouvoir sérialiser les informations dans une base de données de type ElasticSearch.

Sujet 111 : Conversion de donnés de PCAP à ElasticSearch pouraudit wifiAuteur : Julien Iguchi-CartignyResponsable : Julien Iguchi-CartignyAujourd’hui la grande majorité des outils d’audit wifi sont monolithiques : ils servent à découvrir lescibles environnantes et cibler certains clients par des attaques MITM ou des algorithmes de cassage declés. Ces approches ne sont pas suffisantes pour auditer un grand nombre de points wifi sur une surfaceimportante.

Le but de ce projet est de valider une preuve de concept sur l’utilisation d’une base de donnéesElasticSearch pour la capture de trame wifi afin d’exploiter la puissance de l’interface de recherche kibanaet d’obtenir des informations sur les points wifi, leurs positions géographiques et le type de sécuritésupporté.

Une fois les données capturées avec Kismet, il est nécessaire de les sauvegarder dans un format standardde capture (PCAP) avec les méta-informations wifi (puissance, trame d’annonce, etc.) avec la position,puis de les convertir afin de les sauvegarder dans le format ElasticSearch

Sujet 112 : Where are you ? - Une application de localisationAuteur : Dylan ForestResponsable : Marius BilascoCONTEXTE

Dans le cadre de ce projet, nous souhaitons développer une application à destination de tous, per-mettant à ses usagers de se retrouver facilement dans un espace plus ou moins restreint via un minimumdinteractions. Lapplication se veut donc simple et épurée afin de privilégier son utilisation lorsque lonveut retrouver un ami, dans une foule, une place, ou même une ville de façon précise et surtout rapide.

28

PROJETIl sagira donc de débuter ce projet par un état de lart des possibilités existantes afin de positionner

celui-ci et de définir précisément les attentes des usagers quant à son utilisation. Dans un second tempset à partir d ! es spécifications, il sagira de développer lapplication dans une optique multi-plateformes,en utilisant le framework PhoneGap notamment. Les fonctionnalités principales engloberont la gestiondune liste de contacts, les demandes de localisation et la génération ditinéraires.

Sujet 113 : 54.1 : 54 à la découpeAuteur : Étienne Ollion Et Samuel HymResponsable : Étienne Ollion Et Samuel HymVoir le sujet 54 et la version complète (lien ci-dessous).

Liens en rapport :• Sujet complet http://www.lifl.fr/~hym/s/parlementaires.html

Sujet 114 : 54.2 : 54 à la découpeAuteur : Étienne Ollion Et Samuel HymResponsable : Étienne Ollion Et Samuel HymVoir le sujet 54 et la version complète (lien ci-dessous).

Liens en rapport :• Sujet complet http://www.lifl.fr/~hym/s/parlementaires.html

Sujet 115 : 54.3 : 54 à la découpeAuteur : Étienne Ollion Et Samuel HymResponsable : Étienne Ollion Et Samuel HymVoir le sujet 54 et la version complète (lien ci-dessous).

Liens en rapport :• Sujet complet http://www.lifl.fr/~hym/s/parlementaires.html

Sujet 116 : Applet JAVA animée et avec intéraction pour intégra-tion WEBAuteur : Walter NuningerResponsable : Walter NuningerDéveloppement d’un applet java pour visualisation d’animations (avec interaction) pour être intégré dansun site web (html)

Besoin : solutions TIC compatibles multisupport de manière transparente pour les utilisateurs (viaun accès par navigateur WEB ou via un mobile sous android) de manière à illustrer simplement desfonctionnements attendus de machines (API) avec action/rétroaction de l’homme.

Contexte : cours de Grafcet s’appuyant sur un LMS (Moodle) ou un site web.Contraintes : - accessibilité - pas d’installation complexe pour l’utilisateur (sinon un navigateur à jour

ou un simple téléchargement). - la solution permet une réaction dynamique sur action de l’utilisateur(saisie, sélection, clic de souris, ou mouvement de souris) - multisupport (accessible ou lisible sur androidou exécutable sur une simple pc (tout OS)

Enjeu : faire comprendre un fonctionnement habituellement décrit en texte et sans machine réellepour aider à la conception de GRAFCETs simples et la compréhension des E/S.

Fonctionnalité du produit : modification du monde virtuel à partir d’information monde réel (clic debouton maintenu ou pas, valeur de paramètre éventuellement, mouvement) avec déplacement de figuressymboliques ou photos (en x,y voire z) pour montrer le fonctionnement attendu. Les sorties sont doncvisuelles à partir de calcul simple (translation, rotation), avec simulation de chute ou versement. Lecontrôle est fait par l’application selon les valeurs d’E/S au départ et en cours de fonctionnement.

Exemple 1 : fonctionnement vérins monostable ou bistable (translation tige etc), représentation debouton, interrupteur

29

Exemple 2 : plateau ou tapis indexéExemple 3 : un objet percé et fraisé sur ordre, visualisation virtuelle des perçage et fraisage de

durée différente avec avance/retrait outils etc. de manière à voir la séquentialité et les actions parallèle.Symbolisme : rectangle, couleur, tige. . .

L’idée serait la traduction de mes énoncés pour illustrer par du visuel de manière simple (sans chercherà faire un outil de simulation) un comportement souhaité.

Résultats attendus (négociables) : produit fini correspondant à un fonctionnement directement ex-ploitable produit plus générique modifiable ou adaptable (java dans ce cas) éléments fonctionnels ba-siques faciles à relier pour créer de nouveaux fonctionnements (mouvement, organisation, veille d’événe-ments/actions) . . . (voir enjeu)

Extension : visualiser le grafcet solution (sans passer par des outils type automgen compliqué), dansles cas simples : déplacement jeton sur un graphe donné en fond d’écran

La solution technique imposée est : javascript, java pour intégration html (transparente pour l’utili-sateur), code pour android encapsulé avec tutoriel se réalisable.

Si vous êtes intéressés par ce projet, n’hésitez pas à poser vos questions pour plus de précisions et àme contacter pour un rendez-vous.

Sujet 117 : Implémentation d’algorithmes de DHT anonymesAuteur : Julien Iguchi-CartignyResponsable : Julien Iguchi-CartignyLe but de ce projet est d’écrire une implémentation d’algorithme de P2P anonyme en l’intégrant dans leframework gnunet.

Sujet 119 : [ALTERNANT] étudiant :Abdelrhamane Benhammou& entreprise :Erdf MadeleineAuteur : Laurent NieloudResponsable : Mikaël Salson

Sujet 120 : [ALTERNANT] étudiant :Timothee Buquet & entre-prise :__Sans Entreprise__Auteur : Referent__ __SansResponsable : Philippe Marquet

Sujet 121 : [ALTERNANT] étudiant :Thomas Chambon & entre-prise :Icréo - LilleAuteur : Referent__ __SansResponsable : Philippe Marquet

Sujet 122 : [ALTERNANT] étudiant :Maxime Clement & entre-prise :UnisAuteur : Michaël MacquartResponsable : Maude PupinMaxime travaille avec 7 autres alternants sur GIGA (Gestion Interne du Groupe Astrea), le projet derefonte du SI de Astrea. Le développement des différentes fonctionnalités est collectif. Maxime présenteradonc une vision globale du projet avec les apports du nouveau SI par rapport aux actuels (il y en a unpar entreprise du groupe).

30

Sujet 123 : [ALTERNANT] étudiant :Arthur-Guilhem De Bus-schere & entreprise :PayplugAuteur : Stephane PlanquartResponsable : Philippe Marquet

Sujet 124 : [ALTERNANT] étudiant :Jean-Benoit Delbrouck &entreprise :KiabiAuteur : Matthieu DeglinResponsable : Laetitia Jourdan

Sujet 125 : [ALTERNANT] étudiant :Pauline Dessingué & entre-prise :NorsysAuteur : Gautier GaspardResponsable : Jean-Claude Tarby

Sujet 126 : [ALTERNANT] étudiant :Salla Diagne & entreprise :Ve-kiaAuteur : Hanh-Missi TranResponsable : Romain Rouvoy

Sujet 127 : [ALTERNANT] étudiant :Jean-Vital Durieu & entre-prise :KiabiAuteur : Pruvost DominiqueResponsable : Laetitia Jourdan

Sujet 128 : [ALTERNANT] étudiant :Mickael Flament & entre-prise :Hello GurusAuteur : Remi GrumeauResponsable : Patricia PlenacosteCPU-Z validator : site web responsive. Description : le site web CPU-Z validator regroupe les informationsextraites à partir du logiciel CPU-Z. Ce logiciel permet à lutilisateur dextraire des informations de sonsystème (fréquence cpu, type de dam, etc) et de les sauvegarder (voire publier) sur le site CPU-Z validator.Ce site propose donc une gestion dutilisateur (et de ses validations), divers classements (le processeurintel le plus rapide enregistré par exemple) et informations.

Sujet 129 : [ALTERNANT] étudiant :Etienne Mercier & entre-prise :ContexeoAuteur : Médéric MorelResponsable : Angela Bonifati

31

Sujet 130 : [ALTERNANT] étudiant :Antonin Noel & entreprise :Ge-nesioAuteur : Benjamin EnventResponsable : Philippe Marquet

Sujet 131 : [ALTERNANT] étudiant :Anis Shurbaji Tello & entre-prise :DecathlonAuteur : Antoine LegendreResponsable : Yves Roos

Sujet 132 : [ALTERNANT] étudiant :Etienne Wattebled & entre-prise :Ubik IngenierieAuteur : Anthony LangeronResponsable : Céline KuttlerL’entreprise contribue des plugins pour Apache JMeter, un outil pour les tests de performance. Le premierplugin sur lequel Etienne travaille, et qu’il presentera en soutenance, permet d’effectuer des test deworkload sur des serveurs de video (protocole HTTP Live Streaming, HLS). Avec ceci Etienne monte encomptetences sur le Java, sur l’unit testing, ainsi que sur le fonctionnel.

32