Stage de recherche en optimisation - Utiliser DecisionBrain Optimization Server avec les bibliothèques Open-Source
Localisation
Paris ou Montpellier, France
L'entreprise :
DecisionBrain est une société de logiciels qui propose des solutions innovantes d'analyses avancées pour des entreprises qui souhaitent appliquer une approche scientifique à la prise de décision. Nous mettons en œuvre des systèmes d'aide à la décision à l'international qui aident nos clients à mieux gérer leurs opérations, à gagner en visibilité et à améliorer leurs performances. Le stage aura lieu dans nos bureaux à Paris (10e) ou à Montpellier (Millénaire).
Decision Optimization Center
DecisionBrain développe une plateforme d'optimisation pour créer, déployer et maintenir des solutions d'aide à la décision entièrement évolutives. Rapidement, facilement, efficacement. Cette plateforme nommée DOC accélère la création et le déploiement de solutions d'aide à la décision. Elle est écrite en Java pour le back-end et en Angular pour le front-end, et repose sur un certain nombre de technologies telles que Spring, Docker, etc.
Description du poste :
L'un des composants de la plate-forme DOC est le serveur d'optimisation qui permet d'exécuter localement ou à distance plusieurs tâches de calcul à forte intensité de CPU et fournit des outils administratifs pour les surveiller et les gérer facilement. DOC OS peut exécuter n'importe quel travail de calcul intensif écrit en Java et Python. Il comprend également Cplex Optimizer pour la programmation en nombres entiers mixtes (MIP) et la programmation par contraintes (CP). Pour illustrer la polyvalence de DOC OS, l'objectif du stage est de mettre en œuvre de nouveaux exemples de travailleurs qui permettront d'exécuter des modèles d'optimisation basés sur des bibliothèques open-source. Le nombre de bibliothèques open-source étant important, la première partie du stage consistera à réaliser une enquête et une étude comparative des différents solveurs open-source, notamment :
- Programmation linéaire et programmation mixte en nombres entiers (Coin-OR, SCIP, ...)
- Programmation par contraintes (Choco,..).
- Recherche locale (Google or-tools...)
- Heuristique et métaheuristique (Oscar, Optaplanner,...)
Compétences
Le candidat doit avoir les compétences suivantes :
- De bonnes connaissances en recherche opérationnelle
- Une curiosité et une capacité à découvrir de nouveaux cadres et langages
- De bonnes compétences en programmation, de préférence en Java.
- Une connaissance des systèmes de contrôle de version, de préférence Git.
- Construire des outils tels que Gradle ou Maven est un plus.
- Une bonne maîtrise de l'anglais
Conditions requises
Le candidat peut présenter sa candidature en soumettant tous les formulaires dans un fichier combiné dans notre formulaire web ou en envoyant à [email protected] les documents suivants :
- Un curriculum vitae
- Une lettre de motivation
- Les enregistrements et transcriptions du master 1 et du master 2
Qui sommes nous ?
Chez DecisionBrain, le travail en équipe est primordial; il nous rend plus efficace et productif et nous permet de fournir de meilleurs résultats à long terme à nos clients. Si vous souhaitez rejoindre notre équipe, nous recherchons des personnes qui sont non seulement passionnées par les logiciels et la technologie, et qui en même temps partagent notre vision et nos valeurs et ainsi contribuent à constituer une équipe solide. Vous rejoindrez une jeune entreprise visionnaire et en pleine croissance, vous pourrez avoir un impact direct sur son évolution et son succès. Vous évoluerez rapidement avec une équipe très expérimentée et dynamique, et travaillerez avec des clients du monde entier.