Projets 2013-2014

De $1

Version de 07:12, 18 Avr 2024

cette version.

Revenir à liste des archives.

Voir la version actuelle

 

1- Génération de code flot de donnée multi-threadé.

Encadrant:    Jean-Vivien Millo (Jean-Vivien.Millo@inria.fr)
Descriptif:     Le logiciel K-Passa permet de réprésenter une application (MPEG encoder, H264, AES) comme un graphe flot de données. Les noeuds de ce graphe sont des agents qui réalisent des calculs. Les arcs sont des FIFOs qui transmettent les données du noeud d'entrée au noeud sortant. Le but de K-Passa est de calculer un ordonnancement des agents qui permet d'obtenir un fonctionnement correct de l'application à un débit maximal mais en minimisant les tailles des FIFOs. Le résultat fournit par K-Passa est un graphe flot de donnée ordonnancé dont la taille des FIFO est connues.
Le but de ce projet est de générer le code permettant de simuler le comportement de l'application conformément aux résultats fournit par K-Passa. Le code à simuler doit être généré dans les différent languages suivants: JAVA, C posix, System C, et VHDL. Le projet (c'est à dire les générateurs de codes) devra être réalisé en JAVA.

 

2- Outil d'aide à l'estimation du cout des projets IT

Encadrant : Michel Winter (winter@unice.fr)
Tous les logiciels de planification de projet (MS Project, Gant Project,…) s’appuient sur une estimation unique de la durée des tâches. Pourtant, dans la plupart des projets informatiques, on demande à plusieurs personnes d’estimer la durée d’une tâche de développement, pour n’utiliser finalement que la moyenne. L’objectif de ce projet est d’utiliser les différentes estimations lors de la planification pour prendre en compte l’incertitude. L’application à réaliser va donc devoir modéliser le séquencement des tâches (à l’image de PERT) et propager les différentes estimations pour déterminer les dates des principaux jalons et de fin de projet. Le choix du langage n’est pas imposé et les algorithmes les plus complexes seront donnés par l’encadrant. Les IHM envisagées restent simples ; elles pourront s’appuyer sur des librairies comme JFreeChart pour Java ou JpGraph pour PHP.

 

3- Outil de gestion de projet : suivi hebdomadaire des charges

Encadrant : Michel Winter (winter@unice.fr)
Au démarrage d'un projet, on estime pour chacune des activités l'effort qu'il sera nécessaire pour la mener à bien. Cet effort, la charge, se mesure en jours*homme. Chaque semaine, chaque membre de l'équipe projet doit renseigner sur quelle activité il a travaillé, permettant ainsi de suivre l'avancé du projet par rapport aux estimations initiales.
L'objectif de ce projet est la réalisation d'un outil dédié à ce suivi des charges, permettant à chaque salarié de renseigner chaque semaine son activité, et fournissant aux chefs de projet un reporting efficace.
Des outils open-source fournissent des fonctionnalités souvent proches, mais jamais complètes. Le langage n’est pas imposé, mais PHP serait parfait (pour son intégration avec d’autres outils existants).
 

4- Réalisation d'un système expert en PHP

Encadrant : Michel Winter (winter@unice.fr)

Il existe de nombreuses librairies open-source en Java ou en C++ qui fournissent une implémentation de système expert. Aucune n’est disponible en PHP.
D'une manière générale, un système expert est un outil capable de reproduire les mécanismes cognitifs d'un expert, dans un domaine particulier. Il s'agit de l'une des voies tentant d'aboutir à l'intelligence artificielle.
Plus précisément, un système expert est un logiciel capable de répondre à des questions, en effectuant un raisonnement à partir de faits et de règles connus. Il peut servir notamment comme outil d'aide à la décision. De façon grossière, il se compose de 3 parties :

  • une base de faits,
  • une base de règles
  • un moteur d'inférence.

Le moteur d'inférence est capable d'utiliser faits et règles pour produire de nouveaux faits, jusqu'à parvenir à la réponse à la question posée.
 

5- Générateur de mélodie

Encadrant : Michel Winter (winter@unice.fr)

L'objectif de projet est de créer un instrument de musique virtuel. Il ne s'agit pas de développer un instrument au sens VSTi (pour les connaisseurs en informatique musical) c'est à dire qui cherche à copier le son d'un instrument de la manière la plus réaliste possible, mais plûtot de réaliser un instrument ou l’ordinateur assiste l’utilisateur et corrige son jeu pour lui éviter les fausses notes. Pour cela, l'instrument virtuel doit savoir construire lui même les mélodies, c’est à dire connaître les règles d’harmonie musicale. L’utilisateur intervient en changeant en temps réelle la vitesse, la hauteur des notes, le style... avec la souris, le clavier...
Un travail similaire a été mené précédemment par un groupe étudiants (en Java). Ce projet pourra s’appuyer sur cet existant pour se faciliter le travail ou décider de redémarrer «from scratch».

6- e-mailing : Logiciel de mailing

Encadrant : Jean-Marc Fédou (fedou@unice.fr)
Le logiciel à réaliser est un outil de publipostage par email permettant d'envoyer automatiquement des mails à partir de données incluses dans un fichier excel/csv ... On s'inspirera des fonctionnalités du logiciel Direct Mail, mais on voudrait pouvoir inclure dans un seul mail toutes les lignes contenant un même destinataire.
Par exemple, nous souhaitons envoyer un message à chaque intervenant industriel qui a encadré des stagiaires de la Miage. A partir d'un fichier excel contenant tous les renseignements relatifs  aux stages, nous aimerions pouvoir envoyer un seul mail à chaque intervenant avec la liste des résultats des étudiants qu'il a encadrés.
Le logiciel devra être multi plateforme.

7- Application mobile pour l’analyse de performances sportives

Encadrant : Michel Winter (winter@unice.fr)
L'objectif du projet est de développer une application mobile permettant d'effectuer un suivi des performances sportives à partir des relevés GPS. Les fonctionnalités seront centrées sur l'analyse détaillée de la performance du sportif.

On implémentera les fonctions de mesure de base :

  • La capture précise des données GPS durant une session d'acquisition (Latitude, Longitude, Altitude)
  • Le calcul pour toute la durée de la session de travail, de la vitesse (horizontale et verticale) du sujet

On dressera un modèle du sportif utilisateur de l'application :

  • Profil utilisateur (âge, sexe, pratiques sportives, charges d'entraînement, poids, tailles)
  • Définition des allures spécifiques

On mettra en place un outillage pour l'analyse de session d'entraînement :

  • Reconnaissance du découpage des sessions d'entraînement (échauffement, préparation physique, cœur de séance, récupération)
  • Corrélation des allures avec la topologie du terrain et le profil du sportif

On pourra enrichir la liste des fonctionnalités. Techniquement, l'application sera développée sur le framework Appcelerator en utilisant Titanium Studio. Les principes et critères d'analyses seront fournis et pourront être discutés et enrichis.

8- Interactivités (kinect, sphero, tablette, etc.) d’un système de diffusion

Encadrant : Philippe Collet et Philippe Renevier Gonin

Dans le cadre du projet de recherche YourCast permettant la génération de système de diffusion d’information, il existe de tels écrans en « productions », notamment sur le site des templiers. Pour rendre les informations diffusées plus attractives et plus efficaces, une évolution naturelle est de rendre la diffusion d’information interactive. Certaines formes d’interactions ont été étudiées, comme l’utilisation de tablette ou de la kinect. D’autres formes d’interactions sont possibles, comme l’utilisation de dispositifs Bluetooth comme sphero (https://www.gosphero.com/) ou d’autres éléments…Par ailleurs, une « borne » de diffusion interactive, composée d’un PC tout-en-un tactile connecté à un grand écran, permet d’envisager de nouvelles interactions. Les objectifs de ce projet sont nombreux et constituent des pistes de travail à discuter avec les encadrants. En voici quelques-uns listés sans ordre de priorité :

  • Concevoir et réaliser un écran de diffusion interactif pour le site des lucioles
  • D’un point de vue interaction, déterminer (ou reprendre) et mettre en œuvre des interactions entre les utilisateurs et la borne de diffusion

D’un point de vue architectural, permettre une mise en œuvre « générative » en fournissant des critères de désignation (configurer), un cadre d’exécution (protocole) et des briques assemblables, notamment en reprenant les résultats de projets précédents. L’aspect ingénierie de ce projet est de consolider et/ou de mettre à jour les interactions existantes, d’en développer d’autres, de mettre en œuvre différent cas de configuration, de préparer l’ensemble à la génération d’un écran de diffusion.

Les technologies utilisées sont variées : html / css / javascript, java (servlet, web service), éventuellement php, éventuellement .net. Pour la gestion du projet, une plate-forme de développement (redmine ou atlasian) sera mise à disposition.