Choisir lexpage, c'est une question de bon sens !    —  Chandler

Discussions

Constraints Satisfaction Solver

Guybrush 8444 Bob
Bonjour,

Est-ce que l'un de vous a déjà utilisé un logiciel/librairie pour aborder un CSP ?

J'ai un projet perso d'affectation de tâches horaires, correspondant grosso-modo à un problème d'ordonnancement de tâches sous contrainte à ressources multiples (ah bah oui :-p) et plutôt que de coder mon propre solveur en Python (ah bah oui encore :-D), ce qui ne sera ni simple ni rapide, j'aimerai voir si des solutions existantes avaient déjà recueilli vos faveurs. En particulier, Choco et OptaPlanner (anciennement Drools planner).

(je sens déjà que ce topic va faire un bide :-D).
JohnDuff 2790 Bob
Guybrush(je sens déjà que ce topic va faire un bide :-D)
Moi je veux bien répondre.

Je préfère Choco, blanc ou avec des noisettes. :broken:
Fabe 611 Geek
À vue de nez ça me semble une spécialisation d'un problème de moteur de règles.

Vue que sans outil plus spécifique, une solution basée sur Drools m'aurait semblé convenable, j'aurais eu tendance à tester OptaPlanner.
Gerro 3391 Bob
JohnDuffMoi je veux bien répondre.

Je préfère Choco, blanc ou avec des noisettes. :broken:
Horreur ! Damnation ! #teamChocolatNoir :-p

Guybrush 8444 Bob
FabeÀ vue de nez ça me semble une spécialisation d'un problème de moteur de règles.
Je ne connais pas ce type de problèmes, je ne peux pas confirmer :-)
Mais c'est une variante d'un problème d'affectation. Par contre, je ne peux pas "bêtement" appliquer une méthode hongroise, parce que mon problème a plus que 2 dimensions et ne peut pas se réduire itérativement à 2 dimensions.

C'est un cas typique d'affectation, donc en plein dans l'optimisation combinatoire. Et je regrette de ne pas avoir suivi des cours sur les métaheuristiques, du coup :-D Par contre, je peux encoder le problème sous forme d'un système d'équations linéaires, donc "au pire", un algorithme comme le simplex (ou le primal dual) pourrait convenir, mais les performances sont moins intéressantes en général (même si ce n'est pas un critère discriminant) et il n'est pas possible de repartir d'une solution modifiée pour atteindre un autre optimum local, sans tricher.
FabeVue que sans outil plus spécifique, une solution basée sur Drools m'aurait semblé convenable, j'aurais eu tendance à tester OptaPlanner.
Ok. La principale différence entre les deux outils semble être que Choco ne propose pas d'abstraction (on encode directement les équations, enfin, les variables et les contraintes) alors qu'OptaPlanner requiert de passer par du POJO. Ce n'est pas un mal en soi si je développe le reste de l'application en Java (mais à priori, dans l'idée, ce serait un frontend web en Python avec l'algo gentiment ancré dans le backend).

Je vais me renseigner davantage sur OptaPlanner.

Ah oui, et sinon : j'aime pas trop le chocolat, donc je ne participerai pas à cette conversation pour autre chose que mon problème d'affectation, na :-p


Ce message a été modifié 1 fois. Dernière modification : 3 décembre 2014 à 19:51 par Guybrush.

girl271 1217 Flooder
GuybrushAh oui, et sinon : j'aime pas trop le chocolat, donc je ne participerai pas à cette conversation pour autre chose que mon problème d'affectation, na :-p
Comment tu veux inviter les gens à coopérer si directement, tu fermes la porte au chocolat ? :mad3:

Praliné, rien de tel ! ;-)

Fabe 611 Geek
GuybrushMais c'est une variante d'un problème d'affectation. Par contre, je ne peux pas "bêtement" appliquer une méthode hongroise, parce que mon problème a plus que 2 dimensions et ne peut pas se réduire itérativement à 2 dimensions.

C'est un cas typique d'affectation, donc en plein dans l'optimisation combinatoire. Et je regrette de ne pas avoir suivi des cours sur les métaheuristiques, du coup :-D Par contre, je peux encoder le problème sous forme d'un système d'équations linéaires, donc "au pire", un algorithme comme le simplex (ou le primal dual) pourrait convenir, mais les performances sont moins intéressantes en général (même si ce n'est pas un critère discriminant) et il n'est pas possible de repartir d'une solution modifiée pour atteindre un autre optimum local, sans tricher.
Je te dis que comme moteur de règle, Drools c'est cool et tu repars dans tes abstractions mathématiques où personne comprends rien.
Moi j'veux bien faire un effort, mais si tu y mets pas du tiens tu va encore te retrouver tout seul sur ton topic :-D

Guybrush 8444 Bob
Ouais, je sais, mais le problème fait partie d'une classe de problèmes très compliqués à résoudre, et donc avant de me lancer dans quoique ce soit, je dois être sûr :-)

Mais merci pour l'effort :-D Je ne me sens pas seul, au moins :-) (Bien que les amateurs de chocolat semblent me soutenir également :-D)
Tchou 3592 Bob
Guybrushcas typique d'affectation ... optimisation combinatoire... cours sur les métaheuristiques... algorithme comme le simplex (ou le primal dual)
Kamoulox ! Je déménage le postier breton et je lime la cloche en papier mauve !
Guybrush 8444 Bob
Tchou je lime la cloche en papier mauve
Roooh cette métaphore ! :bunny:

Répondre

Vous devez être inscrit et identifié.