Moteur d'optimisation
Optimisation par contraintes pour la planification du personnel
Notre approche
Planopti resout des problemes d'optimisation combinatoire. Nous modelisons les contraintes operationnelles de nos clients sous forme mathematique, puis un solveur explore l'espace des solutions possibles pour trouver la meilleure configuration qui respecte l'ensemble des regles definies.
Ce n'est pas de l'intelligence artificielle, ni du machine learning, ni de l'heuristique approximative. C'est de l'optimisation deterministe : les memes donnees d'entree produisent toujours le meme resultat. Le processus est transparent, auditable et reproductible.
Nous distinguons deux types de regles :
- Contraintes dures : les regles inviolables. Si une solution ne les respecte pas, elle est rejetee
- Contraintes souples : les objectifs a optimiser. Le solveur minimise les ecarts par rapport a l'ideal. Chaque objectif a un poids configurable selon les priorites du client
Le resultat est un score d'optimisation mesurable : plus le score est bas, meilleure est la solution. Le client sait exactement ce que le solveur a priorise et pourquoi.
Le moteur d'optimisation
Planopti s'appuie sur Google OR-Tools, une suite d'optimisation combinatoire developpee par Google Research. Le composant que nous utilisons est CP-SAT (Constraint Programming with Boolean Satisfiability).
CP-SAT combine deux techniques :
- Programmation par contraintes : on declare les regles que la solution doit respecter, et le solveur cherche les affectations valides
- Satisfaisabilite booleenne (SAT) : le probleme est encode en clauses logiques. Le solveur utilise des techniques avancees (apprentissage de clauses, propagation, redemarrages) pour eliminer efficacement les solutions impossibles
CP-SAT a remporte la medaille d'or au concours international de programmation par contraintes (MiniZinc Challenge) chaque annee depuis 2018. C'est un projet open-source avec plus de 13 000 stars sur GitHub, 150+ contributeurs et des releases regulieres.
Apres chaque execution, le solveur retourne un statut clair : OPTIMAL (meilleure solution prouvee), FEASIBLE (solution valide, temps limite atteint), ou INFEASIBLE (aucune solution possible avec les contraintes donnees).
Deploiement
Planopti est deploye on-premise sur l'infrastructure du client. Le solveur fonctionne nativement sans acces internet.
- Installation : deploiement par nos equipes, operationnel en moins d'une journee
- Isolation : le systeme fonctionne en totale autonomie. Pas de telemetrie, pas de callback, pas de dependance externe
- Mises a jour : livraison d'une nouvelle version, mise a jour en quelques minutes
Le client est proprietaire de ses donnees. Aucune donnee ne quitte son reseau.
Pour aller plus loin
Trois pages detaillent les technologies utilisees :
Optimisez votre planification
Parlez-nous de votre exploitation. Nous vous montrerons comment la programmation par contraintes peut resoudre vos defis specifiques.