Data Science, développement et algorithme génétique

3 novembre 2021

Suite à une mission avec une équipe de chercheurs de Sigma Clermont, destiné à aider à la prise de décision dans le domaine de l’usinage de portes d’avions, les membres de l’équipe Agaetis mobilisée sur ce projet ont accepté de répondre à quelques questions afin de mieux comprendre ce projet du point de vue interne.

Ils nous expliquent plus en détail ce qu’est un algorithme génétique, ses intérêts dans le domaine de l’optimisation des usinages et les objectifs fixés pour ce projet ! 

Le challenge de cette mission était de partir des éléments de thèse, fournissant, notamment, le code de calcul pour les transformer en une application fonctionnelle. Notre objectif n’était pas de réinventer la roue, mais de retranscrire la vision du client, fruit d’un temps long de recherche et de développement, en un outil de calcul performant, robuste, documenté et compréhensible.

Les algorithmes génétiques

Pour commencer, pouvez-vous nous dire ce qu’est un algorithme génétique ? 

Un algorithme génétique est un algorithme inspiré de la théorie de l’évolution de Darwin, qui peut être utilisé pour obtenir une solution approchée d’un problème d’optimisation sous contraintes.

Un des avantages de l’algorithme génétique, par rapport aux historiques  méthodes du simplexe et du simplexe révisé , est le temps de calcul inférieur pour avoir une solution approchée de la solution optimale. Une des limites de cet algorithme est que s’agissant d’une heuristique, nous ne sommes pas certain de l’optimalité de la solution proposée.

Pouvez-vous nous expliquer comment ces algorithmes fonctionnent et comment ils peuvent aider le monde industriel ?

Le principe général d’un algorithme génétique est de générer un certain nombre de fois, un certain nombre d’individus représentant chacun une solution du problème d’optimisation que l’on souhaite résoudre. Ils seront sélectionnés selon différents critères pour déterminer les individus les plus performants, qui transmettront ainsi leurs « gènes » à la génération suivante. 

Au bout d’un certain nombre de générations, on sélectionne l’individu le plus adapté de la dernière génération, ce qui donne la solution approchée au problème d’optimisation.

Pour cela on effectue plusieurs étapes itératives :

Génération d’une population N → Croisement → Mutation → Population Intermédiaire → Sélection → Population N+1 → …

Explications : 


Pour générer la population initiale :

La population représente l’ensemble d’individus, c’est l’ensemble de « gènes » qui constitue une solution au problème d’optimisation.

Le gène est la valeur prise par une variable du problème pour un individu donné.

Au départ, on génère aléatoirement les individus de la première génération de manière à respecter les contraintes du problème d’optimisation. On sélectionne ensuite un certain nombre d’individus sur lesquels on va réaliser un croisement.

Le croisement :

Parmi les individus sélectionnés pour le croisement, on va créer des couples d’individus et l’on va échanger un certain nombre de gènes entre chaque individu de chaque couple pour donner 2 individus « enfants » par couple. Donc avec N individus « parents » on obtient N individus « enfants », sur lesquels on va appliquer l’étape de mutation.

La mutation :

L es individus enfants vont passer par une étape de mutation qui consiste à appliquer une légère modification à un ou plusieurs gènes des individus enfants.

Les mutations sont là pour éviter que l’algorithme génétique ne converge trop prématurément vers une solution, et éviter que la population n’atteigne des solutions dans un optimum local plutôt que dans un optimum global.

L’addition des individus présents avant les étapes de croisement et de mutation avec la population d’enfants forme une population intermédiaire sur laquelle il va être réalisé une étape de sélection pour garder les individus les plus performants, c’est-à-dire ceux qui optimisent le mieux le problème.

La sélection :

L’étape de la sélection consiste à appliquer à chaque individu une fonction d’évaluation des performances, leur donnant ainsi un score, et ensuite à trier ces individus par score décroissant pour sélectionner les N premiers individus (N étant la taille de la population initiale). 

Nous gardons ainsi les individus les plus performants, ce qui générations après générations va permettre d’améliorer la performance globale de la population, et ainsi de se rapprocher d’un optimum global. 

La sélection de la solution retenue à la dernière génération :

Après un certain nombre d’itérations défini au lancement de l’algo rithme, on réalise une dernière étape de sélection qui consiste soit à prendre le meilleur individu selon la fonction d’évaluation des performances, soit à appliquer une fonction d’évaluation spécifique à la dernière génération.

Bien que l’on n’ait aucune certitude sur l’optimalité de la solution obtenue, en général les temps de calcul pour obtenir une solution en passant par un algorithme génétique sont bien moindre qu’en passant par un solveur simplexe qui assure l’optimalité de la solution.

Projet en partenariat avec SIGMA Clermont

Quel a été le rôle de chacun dans ce projet ? 

Bertrand et S ylvain ont d’abord lu et analysé la thèse rédigée par le doctorant de Sigma, puis ont interprété le code MATLAB pour le retranscrire, le corriger et le développer en Python. Le but étant d’industrialiser cet outil issu d’une thèse, il a fallu s’adapter et être flexible. 

Ils ont ensuite fait le lien avec le front/back end géré par une autre équipe, Arnaud et Alexandre, qui se sont occupés de l’architecture globale et de l’intégration de l’algorithme au sein de la solution. 

À retenir

Que retenez-vous de ce projet ?

C es deux domaines ne sont pas forcément habituels pour nous, les apports sont donc multiples.

Travailler dans de nouveaux secteurs comme l’aéronautique et échanger des compétences et des connaissances est toujours très enrichissant pour nous. Cela permet d’élargir notre portfolio et de monter rapidement en compétences sur des métiers très différents — c’est d’ailleurs ce qui fait notre force. 

De plus, les algorithmes génétiques étant utilisés dans beaucoup d’applications, cela a été pour nous l’occasion de tester notre expertise et de nous challenger, chose que l’on apprécie tout particulièrement chez Agaetis. C’était également valorisant de pouvoir appliquer et travailler sur des algorithmes génétiques visant une utilisation concrète.

Cette expérience nous a aussi permis de travailler sur la rigueur des livrables, en reprenant les éléments orientés R&D fournis et en les transformant en une application fonctionnelle. Les équipes de Sigma étaient à l’écoute, disponibles pour les différentes itérations, et nous ont également aidé à fournir une solution sur-mesure ! 

C’était intéressant de pouvoir mélanger les mondes du développement, de la data science et de la recherche, ce n’est pas si courant. Cette mission nous a aussi confirmé que ces différents secteurs métiers peuvent travailler ensemble, et s’il faut retenir quelque chose de ce projet c’est bien ça !



Si vous n’avez pas lu le premier article concernant ce projet :  Comment améliorer les temps d’usinage et l’optimisation des conditions de coupes , n’hésitez pas à aller le consulter pour mieux comprendre et avoir la vision client de cette mission ! 

Ressources Agaetis

par David Walter 28 août 2025
Le contexte du projet Un grand groupe du secteur de l’énergie en France cherchait à exploiter les données massives issues des compteurs Linky. L’ambition : concevoir une plateforme dédiée au développement et au déploiement de micro-applications , tout en s’appuyant sur une infrastructure technique avancée et une méthodologie agile pour soutenir cette transformation. L’objectifs L’objectif principal était de créer un environnement robuste et évolutif permettant : d’analyser efficacement les données des points de mesure du réseau, de faciliter le développement rapide de micro-services, et de renforcer l’agilité des équipes grâce à des pratiques modernes de CI/CD. Durée de missions Plusieurs mois d’intervention , mobilisant les expertises Agaetis en infrastructure, automatisation et méthodes agiles pour cadrer, déployer et stabiliser la plateforme. Mise en oeuvre Pour atteindre ces objectifs, Agaetis a mis en place une approche complète : Installation et configuration d’infrastructure : mise en place d’un cluster Kafka/Mesos/Hadoop pour le traitement massif des données. Automatisation et scalabilité : développement de rôles Ansible pour permettre l’auto-scaling du cluster Mesos/Marathon/Zookeeper , assurant une gestion simplifiée par les équipes d’exploitation. Conseil en méthodologies agiles : alignement de la conception et du développement des micro-services avec les meilleures pratiques agiles. CI/CD intégrée : mise en œuvre de pipelines d’intégration, de livraison et de déploiement continus avec Jenkins et GitLab . Résultat obtenu La solution déployée a permis : la mise en place d’une plateforme analytique robuste pour interpréter efficacement les données Linky, une infrastructure flexible et évolutive , garantissant une gestion optimale des ressources, une accélération du développement grâce à l’adoption de méthodologies agiles, une amélioration significative des processus CI/CD , renforçant la productivité et la qualité des livrables. Facteurs clés de succès Expertise technique des équipes Agaetis sur les environnements distribués complexes. Automatisation et scalabilité intégrées dès la conception, facilitant l’exploitation à long terme. Adoption des méthodologies agiles , renforçant la collaboration et la rapidité d’exécution. Partenariat de confiance avec le client, assurant une solution sur mesure et durable. Et vous ? Vous vous interrogez sur : la valorisation de vos données métiers, la mise en place d’une infrastructure évolutive pour vos applications, ou l’intégration de méthodologies modernes pour accélérer vos projets IT ? 👉 Contactez nos experts pour découvrir comment Agaetis peut transformer vos défis en leviers d’innovation.
par David Walter 28 août 2025
Le contexte du projet Platform Garden , une startup internationale, souhaitait exploiter ses données pour créer de la valeur et renforcer sa stratégie d’innovation. L’enjeu majeur était d’exploiter la data visualization et d’identifier comment les données existantes et futures pouvaient ouvrir de nouvelles opportunités de croissance . L’objectifs Les ambitions principales de Platform Garden étaient de : analyser et enrichir un gisement de données sur les plantes et arbustes, valoriser ces données en développant de nouveaux services et fonctionnalités, et intégrer efficacement ces données dans les systèmes existants tout en optimisant les coûts technologiques et financiers. Durée de missions Mission en plusieurs phases , de l’idéation jusqu’au développement de nouvelles fonctionnalités, en accompagnement continu avec les équipes de Platform Garden. Mise en oeuvre Agaetis a déployé une approche progressive et collaborative : Phase d’idéation et cadrage des besoins : animation d’ateliers pour qualifier et prioriser les attentes de Platform Garden. Recherche et analyse des sources de données : exploration des données existantes et évaluation de leur pertinence pour l’intégration dans l’écosystème de la startup. Développement de nouvelles fonctionnalités : conception de services innovants, tels que des algorithmes prédictifs, afin d’exploiter pleinement la valeur des données collectées. Résultat obtenu La mission a permis : Enrichissement du gisement de données : une base de données plus complète, ouvrant la voie à de nouvelles découvertes et usages. Création de valeur et nouveaux services : développement de fonctionnalités inédites comme Jardi’Alerte ou le futur Végéscore , offrant un avantage compétitif. Innovation continue : mise en place d’un processus évolutif, garantissant une adaptation constante aux technologies et aux besoins du marché. Facteurs clés de succès Approche agile et progressive d’Agaetis. Ateliers collaboratifs favorisant l’alignement des besoins et des priorités. Expertise data et innovation appliquée à un domaine spécifique et émergent. Capacité à transformer la donnée en services concrets , différenciants pour les clients finaux. Et vous ? Vous vous interrogez sur : la valorisation de vos données pour créer de nouveaux services, l’intégration de fonctionnalités prédictives dans vos produits, ou la mise en place d’une stratégie d’innovation data adaptée à votre secteur ? 👉 Contactez nos experts pour transformer vos données en leviers de croissance et d’innovation.
Show More