Les algorithmes évolutionnistes au secours des problèmes de données
Quand le data geek fait de la biologie évolutive

Missions

  • Comprendre les algorithmes évolutionnistes, leurs domaines d’application et leurs limites.
  • S’approprier la littérature du domaine.
  • Proposer et mettre en œuvre les algorithmes sur un cas concret.
  • Proposer l’infrastructure technique.
  • Évaluer la performance.
  • Partager le savoir acquis avec la communauté OCTO.

Conditions

Type de stage : Stage de fin d'étude, pré-embauche.
Lieu : OCTO Technology 34 avenue de l'Opéra 75002 Paris
Rémunération : 1500 € bruts
Date : Début 2019

Profil

  • Vous avez la capacité d'absorber et synthétiser l'information.
  • Vous aimez comprendre et décortiquer des algorithmes, les structures de données.
  • Vous aimez regarder les problèmes sous un angle nouveau et tester de nouvelles approches.
  • Les sujets techniques (développement/architecture) ne vous font pas peur.
  • Vous avez une bonne connaissance de l’écosystème Python (idéalement) ou d’un langage connexe.
  • Vous élevez des drosophiles ou des petits pois dans votre cave.

Contexte

Étape 1 : Appropriation

Le domaine regroupe de nombreuses approches (gènes, agents...), qui sont autant de cadres pour modéliser un problème. On s’intéressera à ces approches ainsi qu’aux performances informatiques attendues des implémentations, sans rentrer dans une évaluation détaillée.

Étape 2 : Identification d’un use case

Nous serons alors en mesure de choisir un use case, et de le mettre en œuvre avec la (les) approche(s) la (les) plus appropriée(s). Nous aurons une modélisation du problème à résoudre, la méthodologie d’évaluation, et un mini plan d'architecture technique pour l'étape 3.

Étape 3 : Benchmark

Le use case identifié sera mis en œuvre par itérations successives. Idéalement, le résultat pourra être comparé à une référence externe, pour mesurer l’apport de l’approche évolutionniste. Il sera demandé d’utiliser un framework sur étagère, par exemple DEAP en Python.

Étape 4 : Partage

Tout au long de ce stage, il sera demandé de partager les connaissances acquises, via :

• Un article de blog
• Plusieurs présentations informelles entre Octos
• Deux présentations plus formelles en milieu et fin de stage

Objectifs du stage

Les algorithmes évolutionnistes ressortent du bois. Après l'optimisation pure, ils ont maintenant des connexions avec le machine learning, l'apprentissage par renforcement, la robotique. Ils permettent d’explorer également des espaces de solutions complexes comme par exemple les architectures de réseaux de neurones. De la programmation génétique aux systèmes multi-agents, le domaine est encore peu exploré par le data geek.

Encadrement

Vous serez encadré(e) par un data geek vétéran de la tribu Big Data Analytic chez OCTO, et serez suivi(e) tout au long de votre projet (entretiens hebdomadaires avec votre tuteur, soutien de la communauté OCTO en cas de difficultés techniques...).