Projets de programmation 2015-2016
Sujet L2A - Robot ramasseur de balles
Encadrant : Michel Soto
Mail de l'encadrant :
Catégorie(s): Robotique
Présentation du sujet
L'objectif de ce projet est de construire et de faire fonctionner un robot ramassant des palets disposés sur une surface jeu.
Deux robots s'affrontent dans un match qui consiste à récupérer le maximum de palets dans le temps imparti.
Travail à effectuer :
Dans le cadre d'une approche incrémentale, le programme développé devra permettre au robot de réaliser les tâches suivantes:
- Se déplacer sur la surface donnée sans en sortir.
- Repérer les billes de couleur et les ramasser.
- Ranger les billes ramassées : autrement dit, les déposer dans une zone prévue à cet effet.
Evidemment, le robot devra réaliser ces tâches le plus rapidement possible.
Contraintes:
Le langage utilisé pour réaliser le(s) programme(s) sera obligatoirement : C ou Java
La salle de robotique est petite et il faudra la partager.
Participer aux événements de promotion de la robotique organisés par l'UFR.
Sujet L2B - Posteritis
Nom de l'encadrant: Nicolas Denis
Mail de l'encadrant :
Catégorie(s): Site web
Présentation du sujet
Ce projet a pour but de créer un site qui aidera les personnes confrontées au décès d'un proche, à connaître et remplir automatiquement les formalités. Ce sujet a débuté l'année dernière. Le site est accessible : http://www.posteritis.fr
Travail à effectuer
1er type d'utilisateur : le prévoyant
L'utilisateur du site peut s'y enregistrer pour préparer les formalités qui suivront son décès en déposant des informations personnelles. Toutes les données devront être cryptées / décryptées. L'utilisateur définit qui peut accéder à ses données (ses « proches »). Pour chacun, un nom d'utilisateur et un mot de passe sont attribués et transmis par mail.
2nd type d'utilisateur : le proche
Avec son compte, le proche accède aux données du défunt. Il peut enregistrer le décès du défunt. Passée cette étape, avec les données enregistrées par le défunt, des courriers types peuvent être générés pour avertir les divers interlocuteurs.
Résultat attendu
Les évolutions suivantes sont attendues à l'issue du projet:
- Ajouter une interface de saisie de texte libre pour le prévoyant.
- Sécurité : remplacer l'appel par get par un passage en session.
- Sécurité : les requêtes externes ne peuvent atteindre la base de données.
- Ajout du message légal pour les cookies.
- Ajouter un délai entre l'enregistrement de la déclaration de décès et l'accès aux données du prévoyant et afficher un message « vérifications en cours ». Envoi de SMS au présumé défunt.
- Ajout de tables techniques.
- Ajouter un récapitulatif, format libre, des avoirs.
- Ajouter sur chaque page la date de dernier enregistrement.
- Le proche doit pouvoir reprendre un abonnement EDF, une assurance, etc. à son nom. Il faut donc laisser deux modèles de documents pour une même référence parfois. L'adresse du proche doit donc être connue.
- Cryptage de toutes les données.
- Amélioration du rendu des PDF générés.
Langage(s) et technologie(s) :
PHP5, MySQL, Base de données relationnelles, SSL, Cryptage
Contrainte(s) :
Les rendez-vous auront lieu un soir de la semaine entre 17h30 et 20h30.
Sujet L2C - Edition LaTeX, éditeur XML
Nom de l'encadrant: Thierry Cabanal-Duvillard / Stéphane Schmidély
Mail de l'encadrant :
Catégorie(s): Application
Résumé des objectifs :
Mettre à jour et perfectionner un logiciel qui permet d'écrire en LaTeX les documents pédagogiques que l'on souhaite mettre sur la chaîne éditoriale XrisTaL au format XML ; en concevoir une version utilisable à partir d'un client léger
Exposé des motifs :
La chaîne éditoriale XrisTaL sert à la publication de documents pédagogiques sous différents formats. Elle a été développée au sein de l'UFR de Mathématiques et Informatique et elle est désormais reprise au niveau national par l'université numérique thématique Unisciel. XrisTaL permet l'emploi du langage LaTeX, très utilisé en sciences, pour écrire les formules mathématiques, mais les documents sont stockés au format XML. L'enseignant qui crée un document sur XrisTaL doit passer par un éditeur spécial qui ne lui est pas familier, alors qu'il est depuis toujours habitué à un éditeur LaTeX.
Pour faciliter la transition vers XrisTaL, l'enseignant doit pouvoir continuer à écrire, au moins au début, ses documents pédagogiques en LaTeX tout en respectant une structuration identique à celle des documents sur XrisTaL, et ces documents doivent pouvoir être traduits au format XML de XrisTaL sans dégradation.
Etat actuel :
Une première version du logiciel a été développé par des étudiants de licence 3 dans le cadre d'un projet tutoré. C'est une version très complète, bien documentée, tant pour l'utilisateur que pour le développement, mais avec quelques fonctionnalités manquantes et adaptée à l'ancienne version de XrisTaL.
But du projet :
- Rajouter les fonctionnalités manquantes ou nouvelles
- Adapter la structure XML à la nouvelle version de XrisTaL
- Améliorer l'ergonomie
- Proposer une version utilisable en ligne à partir d'un simple navigateur
Cahier des charges :
Le livrable doit comporter un logiciel de traduction, avec une version pour une utilisation hors ligne, et une version sécurisée sur serveur ; un mode d'emploi, une documentation du logiciel, un fichier de style LaTeX qui pourra être conçu en collaboration avec un enseignant ; un site web permettant d'utiliser la version sur serveur et disposant d'une aide en ligne.
- Le mode d'emploi est destiné aux enseignants ; il devra comporter un guide de bonnes pratiques pour la rédaction des documents en LaTeX et un guide d'utilisation du logiciel.
- La documentation est destinée à permettre l'amélioration et la mise à jour du logiciel au fur et à mesure des évolutions de XrisTaL.
- Le fichier de style doit permettre à l'enseignant de compiler son document en LaTeX et de vérifier ainsi qu'il est bien écrit.
- Le logiciel de traduction doit accepter en entrée un document LaTeX, et sous réserve que ce document ait été écrit en respectant le guide de bonnes pratiques, être capable de restituer en sortie les fichiers XML correspondants.
- Les méta-données (auteurs, année, etc) ainsi que les répertoires de destination des fichiers XML doivent être paramétrables, et ces paramètres doivent pouvoir être sauvegardés.
Critères de qualité :
- Ergonomie du logiciel
- Qualité de la traduction
Mots clés :
Interface utilisateur, langages balisés, compilateur, maintenance logicielle, XML, LaTeX, Xristal
Sujet L2D - Guichet automatique bancaire
Nom de l'encadrant: Dragutin Jastrebic
Mail de l'encadrant :
Catégorie(s): Application
Présentation du sujet
Le scénario: Un porteur met sa carte de crédit dans un GAB (guichet automatique bancaire). Le premier module envoie un message vers le module “central.”. Ce message contient des informations différentes, comme le numéro de la carte, la date de l'opération, le type de l'opération souhaitée par le porteur (le retrait d'espèces, le dépôt d'espèces, la consultation du solde, l'impression du solde etc.), le numéro du guichet etc. Pour des raisons de sécurité, ce message est crypté avec une signature. Aussi, le format du message dépend du constructeur du guichet – chaque constructeur peux avoir son propre format.
Avant la réception du message par le module “central”, un deuxième module, le “driver”, le transforme en format interne du logiciel. Un troisième module, “le module de sécurité”, vérifie le code confidentiel et refuse la transaction si le code saisi sur le guichet ne correspond pas au code confidentiel du propriétaire de la carte bancaire. Il vérifie aussi la signature avec la même clé et refuse la transaction si la signature ne correspond pas. Un quatrième module, le module “central”, effectue l'opération souhaitée par le porteur de la carte (par exemple, il met à jour le solde de son compte en cas de retrait /dépôt, ou renvoie le solde au guichet en cas de consultation, renvoie les données contenues dans le RIB en cas de l'impression etc.). Le module “central” peut refuser d'effectuer l'opération si les droits du propriétaire sont insuffisants – en cas de dépassement du seuil quotidien ou hebdomadaire, par exemple. Un message est renvoyé au GAB pour l'informer du succès /échec du traitement. En fonction du message reçu, le GAB effectue l'opération demandée (distribue des billets par exemple), ou affiche le message de refus. Le GAB envoie aussi d'autres messages, appelés “les messages d'état” au module central. Les “messages d'états” typiques sont les suivants: tout est OK, le niveau de billets est bas, le niveau d'encre dans l'imprimante est bas, le niveau de papier est bas, la caméra est en panne etc. En fonction du message reçu, le module “central”, peut décider de faire une action corrective (remonter un avertissement à la supervision) ou d'éteindre le guichet.
Travail à effectuer
L'objectif de ce projet est de développer des modules qui simulent ce scénario.
Il faudra créer aussi une interface pour accéder au compte bancaire, visualiser les opérations.
Il peut s’agir d’une interface WEB ou Smartphone.
Langage(s) :
Java, HTML, Android
Contrainte(s) :
Sujet L2E - Introduction à la bioinformatique
Nom de l'encadrant: Dragutin Jastrebic / Koviljka Lukic Jastrebic
Mail de l'encadrant :
Catégorie(s): Application scientifique, application web
Présentation du sujet
La bioinformatique est une discipline d'analyse de l'information biologique contenue dans les séquences nucléotidiques (séquence de nucléotides) et protéiques (séquences d'acides aminés). Il s'agit d'une “interdiscipline”, à la frontière de la biologie, de l'informatique et des mathématiques.
Les systèmes biologiques sont très complexes, leur bases et/ou banques de données sont
volumineuses, et en plus les traitements des informations stockées nécessitent des algorithmes performants.
Il s'agit en général des traitements qui ressemblent à un traitement traditionnel « data warehouse » (on traite en parallèle une masse de données sur une machine avec plusieurs processeurs) mais qui nécessitent un calcul plus complexe (pas seulement les simples minimums, maximums, moyennes comme dans le cas des « data warehouses » des systèmes de commerce par exemple).
En bioinformatique, les différents algorithmes (alignement et autres) sont utilisés dans le contexte de recherche de fonctions biologiques, de la phylogénie moléculaire, du séquençage de génome etc.
La bioinformatique propose des méthodes et des outils pour le recueil des données, leur traitement, leur distribution et leur visualisation.
Sur notre projet, nous allons travailler sur les parties traitement et visualisation des données
Langage(s) et technologie(s):
Java (pour les besoins de développement des traitements multitâche) et Java, Scheme, HTML pour la visualisation des donnéesJava (pour les besoins de développement des traitements multitâche) et Java/HTML/Java Script/Ajax pour la visualisation des données.
Contrainte(s) :
Sujet L2F - Unity 3D – Prise en mains
Nom de l'encadrant: Claude Lattaud
Mail de l'encadrant :
Catégorie(s): Jeu vidéo 3D
Présentation du sujet
L'objectif de ce projet est de concevoir et de réaliser un jeu de plateau à l'aide du moteur Unity3D. Les règles du jeu sont au choix des étudiants, ainsi ils auront beaucoup de liberté quant à son développement. La contrainte essentielle est la nécessité d'avoir des pièces à déplacer, des jeux comme les échecs, les dames, Risk, Zargos, etc… sont donc des candidats potentiels, attention tout de même aux droits d'auteurs.
Le jeu devra donc se jouer à deux ou, si les étudiants ont le temps de développer une intelligence artificielle minimale, contre l'ordinateur.
Références Unity 3D
Langage(s) et technologie(s) :
Unity, Mono (C#), UnityScript (Javascript), Boo, MySQL
Contrainte(s) :
Sujet L2G - Jeu d'échecs
Nom de l'encadrant: Mete Selçuk
Mail de l'encadrant :
Catégorie(s): Jeu vidéo, application web
Présentation du sujet
Le jeu d’échecs est un jeu de réflexion qui se joue à 2 sur un échiquier composé de soixante-quatre cases noires et blanches. Chaque joueur tente d’infliger un échec et mat au roi adverse. Pour ce faire chaque joueur utilisent leurs pièces tour à tour, qui ont chacune des déplacements spécifiques. Un roi est échec et mat quand il est menacé et qu’il ne peut plus s’enfuir ou être protégé par d’autres pièces.
Travail à effectuer
Ce projet a pour but de créer un jeu d’échecs sous forme de web service.
Le but étant de créer une application web conforme à l'architecture REpresentational State Transfer (REST), une architecture orientée services (SOA) avec le patron de conception modèle-vue-contrôleur (MVC).
Lors de ce projet vous aurez plusieurs tâches à accomplir :
- Le programme devra tout d’abord permettre à joueurs humains de pouvoir jouer l’un contre l’autre.
- Ensuite chaque partie pourra être sauvegardé et chargé. Une partie achevée pourra être conservée et pourra être rejouée coup par coup.
- Plusieurs fonctionnalités comme le temps, la demande à l’adversaire de rejouer un coup etc… devront être implémentées
- Optionnel / Bonus : création d’une IA pour jouer contre l’ordinateur
Langage(s) :
Nodejs, framework Express/Socket.IO, MongoDB ou SQL
Contrainte(s) :
Les rendez-vous auront lieu après 18h45
Sujet L2H - Agenda en ligne
Nom de l'encadrant: Mete Selçuk
Mail de l'encadrant :
Catégorie(s): Jeu vidéo, application web
Présentation du sujet
Le but de ce projet est de créer un agenda en ligne. Cet agenda devra permettre à une personne d’accéder à son agenda en ligne et d’y pouvoir noter des rendez-vous par exemple, d’en supprimer, d’en décaler…. Il pourra aussi être utilisé par d’autres personnes pour qu’ils puissent prendre rendez-vous lors de créneaux ouvert à la prise de rdv sur internet.
Travail à effectuer
Lors de ce projet vous aurez plusieurs tâches à accomplir :
- Créer un agenda en ligne
- Permettre la création/suppression… de rendez-vous
- Possibilité de prise de rendez-vous par d’autres internautes
- Optionnel / Bonus : mails de rappels 24h avant le rdv, confirmations de prise et d’annulation de rendez vous
Langage(s) :
Nodejs, framework Express, MongoDB ou SQL, MVC, SOA
Contrainte(s) :
Les rendez-vous auront lieu après 18h45
Sujet L2I - Tetris
Nom de l'encadrant:
Mail de l'encadrant :
Catégorie(s): Jeu vidéo
Présentation du sujet
Le tetris est un jeu d'arcade qui allie réflexes et réflexion.
Des tetriminos de couleurs et de formes différentes descendent du haut de l'écran. Leur chute est inexorable mais peut être accélérer par le joueur. Le joueur peut également décider de l'angle de rotation et de la position où l'objet peut atterrir. Lorsqu'une ligne horizontale est complétée, elle disparaît et les blocs qui se trouvent au dessus tombent. La partie se termine lorsque la ligne du haut est atteinte et que le joueur ne peut plus agir. L(objectif du heur est donc de compléter un maximum de lignes.
Travail à effectuer
Le but du projet est d’implémenter un jeu de tetris. Le programme devra proposer les fonctionnalités suivantes :
- Tout d’abord, le programme devra permettre de jouer une partie.
- Il devra également permettre une sauvegarde des parties et inclure des tetriminos bonus.
- Le jeu peut être programmé sur la plateforme de votre choix : ordinateur ou smartphone
Langage(s) :
Contrainte(s) :
Les rendez-vous auront lieu après 18h45
Sujet L2J - Gestionnaire de rendez-vous
Nom de l'encadrant: Yannick Parchemal
Mail de l'encadrant :
Catégorie(s): Application de gestion
Présentation du sujet
L'objectif est de faciliter la gestion des rendez-vous des étudiants avec leurs enseignants
Processus : L'étudiant se connecte à une adresse web où il va pourvoir préciser :
- l'enseignant qu'il souhaite contacter
- l'objet de sa demande
- les fichiers joints à sa demande
- les moments où cet entretien peut avoir lieu
L'étudiant reçoit par mail la demande qu'il vient de faire et confirme cette demande. Il peut aussi, s'il n'a pas fait la demande, le signaler. L'enseignant reçoit un mail avec un lien vers un site où il peut visualiser les rendez-vous en cours et peut indiquer le créneau choisi pour les rendez-vous en attente. Il peut aussi décliner la demande avec un message associé ou demander à l'étudiant de refaire sa demande avec d'autres créneaux. Il peut aussi demander de recevoir par courriel un bilan de tous ses entretiens au format csv. L'étudiant reçoit par courriel la réponse et peut si c'est demandé proposer d'autres créneaux.
Le dépôt svn est utilisé dès le début du projet par tous les membres de l'équipe.
Langage(s) et technologie(s) :
Java, javamail, JDBC, JSP, JSTL
Contrainte(s) :
Sujet L2K - Production de documents de statistiques au format pdf
Nom de l'encadrant: Yannick Parchemal
Mail de l'encadrant :
Catégorie(s): Application de gestion
Présentation du sujet
On considère des fichiers de données de type csv (nom de colonne en ligne 1, données sur les lignes suivantes)
On souhaite pouvoir produire des statistiques à partir de ces fichiers csv sous formes de camemberts. Plusieurs types de demandes sont à considérer en particulier les suivantes :
- type 1 - demande d'un camembert pour une colonne (autant d'éléments dans le camembert que de valeurs différentes dans la colonne, taille de chaque zone proportionnelle au nombre d'occurrences)
- type 2 - demande d'un camembert pour une colonne (autant d'éléments dans le camembert que de valeurs différentes dans la colonne, taille de chaque zone proportionnelle à la somme des valeurs d'une autre colonne pour les éléments de cette zone)
- type B - demande de plusieurs camemberts pour chacune des valeurs de colonne C2 (autant de camembert à produire que de valeurs différentes en colonne C2)
Exemple : csv avec trois colonnes : type de la dépense, montant de la dépense, mois de la dépense type 1: camembert avec % du nombre de lignes pour chaque mois type 2 : camembert avec % du total des montants pour chaque mois type B1 : camemberts, un pour chaque type de dépense, de type 1 type B2 : camemberts, un pour chaque type de dépense, de type 2
On envisagera des classes Demande, DemandeSimple, DemandeMultiple (type B), DemandeType1, DemandeType2, ListeDeDemandes Les demandes possèdent toujours au minimum un titre et un texte d'introduction. Une ListeDeDemandes possède une date, un titre et un texte d'introduction.
Travail à réaliser
L'objectif du projet est de produire un document pdf reproduisant ces camemberts (librairies Itext, JFreeChart)
(public void produirePdf(ListDemande liste, File pdfFile) throws Exception )
Le dépôt svn est utilisé dès le début du projet par tous les membres de l'équipe.
Langage(s) :
Java, JFreeChart Itext
Contrainte(s) :
Sujet L2L - Analyse de partitions musicales
Encadrant : Hervé Suaudeau
Mail de l'encadrant :
Catégorie(s): Application
Présentation du sujet
L'objectif de ce projet est de scanner une partition et de la jouer au travers d'un fichier au format MIDI. Le programme devra proposer les fonctionnalités suivantes:
- Interface de scan (optionnel)
- Seuillage automatique de l'image
- Redressement et mise à l'échelle automatique de l'image
- Reconnaissance des éléments géométriques de base par divers filtrages
- Analyse sémantique des éléments détectés et traduction en langage midi
- Interface utilisateur permettant de choisir l'instrument et de jouer le morceau reconnu (optionnel)
- Sauvegarde du morceau au format MIDI
Une récompense en bonus sera attribuée à l'équipe qui réussira la meilleure reconnaissance d'une nouvelle partitions lors d'un petit concours final.
Mots-clés
Musique, Midi, Reconnaissance optique de partition
Langage
Au choix
Contrainte(s) :
Sujet L2M - Galaxy Fighters
Encadrant : Hervé Suaudeau
Mail de l'encadrant :
Catégorie(s): Jeu Vidéo
Présentation du sujet
Dans Galaxy fighters, le joueur est au commande d'un vaisseau spatial devant traverser un champ d'astéroïdes. Pour en sortir indemne, il devra faire preuve de dextérité.
Au bout du champ de mines, une piste d'atterrissage apparaitra sur les flancs d'un énorme astéroïde; l'atteindre sans encombres permettra de compléter sa mission avec succès.
Travail à effectuer
- Reproduire la traversée du champ d'astéroïdes
- Permettre le pilotage du vaisseau
- Gérer la vitesse de défilement en fonction du niveau
- Sauvegarder les meilleurs scores
Pour améliorer la jouabilité et l'intérêt du jeu, il faudra également développer un système de bonus cachés dans le champ d'astéroïde:
- bouclier
- vie supplémentaire
- etc…
Eventuellement, permettre un mode multi-joueurs.
Au choix: smartphone ou web
Références
Sinuous, un jeu dans le même esprit.
Langage(s) et technologie(s) :
HTML5, Canvas ou Java/Android
Contrainte(s) :
Sujet L2N - Instagram Descartes
Encadrant : Nicolas Loménie
Mail de l'encadrant :
Description : Vous réaliserez une application de type Instagram. Au moins un filtre image devra être implémenté. Au mieux, il fonctionnera aussi en mode vidéo.
Travail à effectuer : Dans un premier temps, votre application fonctionnera en “stand-alone” et “offline” sur un pc classique. Par la suite, vous l'adapterez pour qu'elle fonctionne sur un smartphone Android en temps réel.
Langage souhaité :
Java
Contrainte :
Posséder une smartphone sous Android
Sujet L2O - Traitement du signal du mouvement de la tête en regardant les différents images 3D
Nom de l'encadrant: Danping Wang
Mail de l'encadrant :
Catégorie(s): Application scientifique
Présentation du sujet
Les comportements individuels sont très différents un et autre. Nous les quantifions en mesurant les mouvements de la tête du sujet.
Les images 3D sont affichées dans un casque d’Oculus Rift DK2. Les sujets portent le casque.
Les mouvements vont mesurés par un système de capture de mouvement 3D Codamotion et un smart phone.
Ce projet vise à un traitement des données de mouvement de la tête en regardant les différents types d’image.
Expérience :
4 sujets normaux seront mesurés avec un casque Oculus Rift DK2. Le mouvement de la tête sera mesuré par le système Codamotion.
Objectifs :
Traiter les données en utilisant des grandeurs statistiques et programmer en Scilab.
Lieu d’expérience et projet :
La Plate-forme de l’Etude de la Sensorimotricité chez l’Homme (PES) http://www.biomedicale.parisdescartes.fr/pf-sensorimotricite/ à l’UFR Biomédicale des Saints-Pères relève d’une inter-discipline : les neurosciences fonctionnelles à l’intersection de la physiologie, des sciences cognitives de l’ergonomie et de la robotique. Le domaine opérationnel repose sur la recherche d’une grande fonction (locomotion, manipulation, perception de l’espace…) et la quantification des entrées sensorielles, des sorties comportementales mises en jeu ainsi que des données objectives et subjectives recueillies lors de l’exécution de la tâche expérimentale.
Langage(s) :
Scilab est un logiciel open-source similaire à Matlab
Contrainte(s) :
Sujet L2P - Jeu de Poker Texas Holdem
Nom de l'encadrant: Tuong H. Nguyen
Mail de l'encadrant :
Catégorie(s): Jeu vidéo
Présentation du sujet
Le poker est une famille de jeux de cartes comprenant de nombreuses formules et variantes. Il se pratique à plusieurs joueurs avec un jeu généralement de cinquante-deux cartes et des jetons représentant les sommes misées. Les séquences de jeu alternent distribution de cartes et tours d'enchères. Le but du jeu est de remporter les jetons des adversaires en constituant la meilleure combinaison de cinq cartes ou en leur faisant abandonner le coup. Dans ce projet nous nous intéresserons uniquement à la variante la plus populaire actuellement: le No Limit Texas Hold'em dans son format Heads Up (1 contre 1).
Travail à effectuer
Le but du projet est d’implémenter un jeu de No Limit Texas Hold'em dans lequel le joueur affronte l'ordinateur. Le programme devra proposer les fonctionnalités suivantes :
- Le programme devra gérer automatiquement toutes le règles du jeu et les tours d'enchères.
- Il faudra développer l'intelligence artificielle qui affrontera le joueur.
- L'environnement du jeu devra être entièrement paramétrable et les parties jouées devront être sauvegardé.
Langage(s) et technologie(s):
Au choix: Java ou C
Interface graphique, Intelligence artificielle
Contrainte(s) :
Sujet L2Q - Boite à rythmes
Encadrant : David Janiszek
Mail de l'encadrant :
Catégorie(s): Smartphone
Présentation du sujet
Une boîte à rythmes est un appareil électronique (ou un logiciel) qui simule des instruments de percussion.
Elle permet de jouer à l'infini des rythmiques correspondant à des styles de musique pré-programmés (rock, salsa, …)
ou de créer des rythmiques personnalisées.
Travail à effectuer :
L'objectif de ce projet est de réaliser une boite à rythme qui fonctionne sur un smartphone.
Cette boite à rythme devra permettre :
- la gestion des échantillons pré-enregistrés
- la gestion des échantillons sonores enregistrés par l'utilisateur.
- la génération de ses propres sons électroniques
- l'enregistrement des morceaux composés
Éventuellement, on pourra améliorer l'expérience utilisateur en utilisant les capteurs du smartphone : gyroscope et accéléromètre.
Langage(s) et technologie(s):
Java/Android/XML ou Python/kivy
Contrainte(s) :
Posséder une smartphone sous Android ou sous iOS avec une licence développeur
Sujet L2R - Oenologik
Encadrant : David Janiszek
Mail de l'encadrant :
Catégorie(s): Smartphone
Présentation du sujet
L’oenologie est la science qui a pour objet l'étude et la connaissance du vin (Wikipédia). La France est le principal producteur de vins au monde et cette application vise à mettre en valeur les différents aspects de la production française.
Travail à effectuer :
L'objectif de ce projet est de réaliser une application qui fonctionne sur un smartphone. Elle devra permettre :
- de recenser et d'explorer les terroirs
- d'informer sur les différents cépages et la vinification
- présenter les caractéristiques de différents vins
- proposer des conseils pour sa manipulation et sa dégustation
- proposer des conseils pour marier vins et mets
- proposer un aide-mémoire pour les AOC, les meilleurs vins et les meilleures années
Références
Langage(s) et technologie(s) : Java/Android/XML ou Python/Kivy ou HTML5/CSS
Contrainte(s) :
Posséder une smartphone sous Android ou sous iOS avec une licence développeur
Sujet L2S - Sudoku
Encadrant :
Mail de l'encadrant :
Catégorie(s): Jeu vidéo
Présentation du sujet
Le sudoku est un jeu de réflexion. Ce jeu est basé sur une grille carrée de 81 cases. Ces cases sont réparties en 9 lignes, 9 colonnes et 9 régions. Au départ, les cases sont vides ou contiennent un chiffre entre 1 et 9. Le but du jeu est de remplir la grille en s’assurant que chaque chiffre n’apparait qu’une seule fois dans chaque ligne, dans chaque colonne et dans chaque zone.
Travail à effectuer :
Le but du projet est d’implémenter un jeu de sudoku. Le programme devra proposer les fonctionnalités suivantes :
- Tout d’abord, le programme devra permettre la création automatique d’une grille de jeu en fonction d’un niveau de difficulté déterminé par le joueur.
- Ensuite, le programme devra permettre de jouer une grille proposée par le programme ou une grille saisie par l’utilisateur.
- Le programme devra être capable de calculer la solution d’une grille
- Enfin, le programme devra être capable de sauver, charger et imprimer une grille
Langage(s) :
C/C++ ou Java
Contrainte(s) :
Sujet L2T - Jeu des 1000 bornes
Encadrant :
Mail de l'encadrant :
Catégorie(s): Jeu vidéo
Présentation du sujet
Il vous est proposé dans ce projet de concevoir et développer une version électronique du jeu de carte « 1000 bornes ».
Les 1000 bornes est un jeu de société utilisant des cartes spéciales sur le thème de la course automobile. Le but du jeu est d’être le premier joueur à effectuer 1000 kilomètres (ou bornes) précisément. Pour cela, il vous faudra éviter les pièges de la route : Panne de voiture, feux de signalisation et limitation de vitesses. Pour commencer une partie, chaque joueur se voir distribuer 6 cartes qu’il ne doit pas montrer aux autres. Le reste du paquet servira de pioche. Pour commencer la partie, le premier joueur doit piocher une carte. S’il a en sa possession un feu vert, il pose cette carte devant lui et peut donc commencer sa partie. Le joueur peut aussi poser une carte « Botte » ou encore une carte « Limitation de vitesse » devant l’un de ces adversaires. Si le joueur ne peut ou ne désire pas poser une carte, il doit obligatoirement en jeter une afin d’avoir toujours 6 carte dans sa main. C’est ensuite au tour du joueur suivant de jouer. Lui aussi a alors plusieurs possibilités. En plus de celles énumérés ci-dessus, il peut contrer une attaque en posant dessus le contraire de celle-ci pour l’annuler. Exemple : Il pose une carte « fin de limitation de vitesse » sur une carte « Limitation de vitesse ». Autre choix : le joueur peut également attaquer le joueur qui à poser un feu vert en posant une carte feu rouge. Le gagnant de la partie est celui qui a réussi à avoir posé exactement 1000 kilomètres devant lui à l’aide des cartes « distance ». Les règles du jeu détaillées vous seront données. L’application devra permettre de jouer de 2 à 6 joueurs qui seront soit des personnes physiques soit des joueurs virtuels. Dans le cas d’un joueur virtuel, le jeu devra lui attribuer une stratégie de jeu comme par exemple : poser ses kilomètres en premier lieu, attaqué l’adversaire avant tout, …
Langage(s) :
C/C++ ou Java
Contrainte(s) :
Sujet L2U - Pandémie
Encadrant :
Mail de l'encadrant :
Catégorie(s): Jeu vidéo
Présentation du sujet
Pandémie est un jeu de plateau dans lequel les joueurs sont des membres d'équipes de luttes contre les maladies et vont parcourir le monde afin de découvrir des remèdes. C’est un jeu de plateau coopératif dont les règles sont simples mais qui nécessite une bonne dose de stratégie.
Travail à effectuer
Le but du projet est d’implémenter le jeu de plateau « Pandémie». Le programme devra proposer les fonctionnalités suivantes :
- Gestion automatiquement de toutes les règles du jeu.
- Une interface graphique ergonomique pour facilement jouer une partie.
- L'environnement du jeu devra être entièrement paramétrable et les parties jouées devront être sauvegardé.
Références
Description et règles du jeu :
Langage(s) et technologie(s):
Au choix: Java ou C
Interface graphique, Intelligence artificielle
Contrainte(s) :
Sujet L2V - Les aventuriers du rail
Nom de l'encadrant:
Mail de l'encadrant :
Catégorie(s): Jeu vidéo
Présentation du sujet
Les aventuriers du rail est un jeu de plateau dont le principe consiste à prendre possession des lignes de chemins de fer entre des villes d'un continent avec des wagons. C’est un jeu de placement dont les règles sont simples mais qui nécessite une bonne dose de stratégie.
Travail à effectuer
Le but du projet est d’implémenter le jeu de plateau « les aventuriers du rail ». Le programme devra proposer les fonctionnalités suivantes :
- Gestion automatiquement de toutes les règles du jeu.
- Une interface graphique ergonomique pour facilement jouer une partie.
- Développement d’une intelligence artificielle qui affrontera le joueur.
- L'environnement du jeu devra être entièrement paramétrable et les parties jouées devront être sauvegardé.
Références
Description et règles du jeu :
Langage(s) et technologie(s):
Au choix: Java ou C
Interface graphique, Intelligence artificielle
Contrainte(s) :
Sujet L2W - e-Cartes postales par la poste
Nom de l'encadrant: JFB
Mail de l'encadrant :
Catégorie(s):
Présentation du sujet
Il s’agit d’aider une startup à réaliser et automatiser son système d’information. Celui-ci doit permettre via une application mobile Android ou une application web de prendre une photo et de saisir un texte, qui permettront automatiquement l’impression d’une carte postale qui sera ensuite envoyée par la poste.
Langage(s) et technologie(s) :
à définir
Remarque(s) :
Sujet L2X - OpenWisdom
Nom de l'encadrant: JFB
Mail de l'encadrant :
Catégorie(s):
Présentation du sujet
Il s’agit de réaliser avec François Taddei une plateforme web permettant à tout un chacun de définir ce que représente pour lui la sagesse.
Liens:
http://www.cri-paris.org/
https://fr.wikipedia.org/wiki/Fran%C3%A7ois_Tadd%C3%A9i
Langage(s) et technologie(s) :
à définir
Remarque(s) :
Sujet L2Y - Plate forme dépôt de projets
Nom de l'encadrant: JFB
Mail de l'encadrant :
Catégorie(s):
Présentation du sujet
Il s’agit de concevoir et réaliser une plateforme web permettant le dépôt d’idées et de réalisation de projets d’étudiants. Cette plateforme doit permettre et faciliter la réutilisation des projets.
Langage(s) et technologie(s) :
Drupal, Android, Git, Tuleap
Remarque(s) :
Sujet L2Z - Gestion des morgues des hôpitaux en Afrique francophone
Nom de l'encadrant: JFB
Mail de l'encadrant :
Catégorie(s):
Présentation du sujet
Il s’agit de concevoir et réaliser une plateforme permettant une gestion transparente des morgues.
Langage(s) et technologie(s) :
à définir
Remarque(s) :
Sujet L2AA - Crossfinder - Sérendipité
Nom de l'encadrant: JFB
Mail de l'encadrant :
Catégorie(s):
Présentation du sujet
Il s’agit de participer à la réalisation d’un outil favorisant et encadrant les recherches, le partage d’information et la sérendipité. Ce projet, réalisé avec le CRI, rassemble designers, chercheurs et informaticiens.
Sujet L2AB - Plateforme LMS #voila
Nom de l'encadrant: JFB
Mail de l'encadrant :
Catégorie(s):
Présentation du sujet
#Voila est une plateforme multi-médias d’enseignement (Learning Management System) permettant de présenter un parcours (étapes intégrant des contenus, quizz). Cette plateforme sera réalisée avec le CRI et devra permettre de gérer des notion de progression (complétion des activités, avancement dans le parcours), de badges, de fonctionnalités collaboratives
Lien(s):
http://www.cri-paris.fr/
Langage(s) et technologie(s) :
Remarque(s) :
Sujet L2AC - Application mobile pour les SDGs de l’ONU
Nom de l'encadrant: JFB
Mail de l'encadrant :
Catégorie(s):
Présentation du sujet
Les Nations Unies ont lancé une base de connaissances rassemblant diverses informations concernant des objectifs à atteindre dans les 15 ans à venir : Sustainable Development Knowledge Platform.
Chacun est invité à proposer des solutions ou des reflexions sur un des 17 thèmes ou de leur sous thèmes.
Les étudiants sont invité à concevoir et réaliser une application mobile utile pour un de ces sous-thèmes. Ils pourront être aidés en cela par des étudiants du CRI.
Il est envisagé de présenter ce projet à un concours international.
Lien(s):
http://www.cri-paris.fr/
https://sustainabledevelopment.un.org/
https://sustainabledevelopment.un.org/sdgs
Langage(s) et technologie(s) :
Remarque(s) :
Sujet L2AD - SuperJulie
Nom de l'encadrant: JFB
Mail de l'encadrant :
Catégorie(s):
Présentation du sujet
Il s’agit de porter l’application iOS Super Julie sur Android
Lien(s):
http://www.super-julie.fr/apps/super-julie
Langage(s) et technologie(s) :
Java/Android
Remarque(s) :