Etudiez les problèmes d’optimisation distribuée sous contraintes avec pyDCOP

pyDCOP est une bibliothèque qui implémente plusieurs solveurs de problèmes d’optimisation distribuée sous contraintes (Distributed Constraints OPtimization, DCOP). Le projet pyDCOP a pour but d’encourager la recherche académique dans le domaine du DCOP, en fournissant une bibliothèque facile d’emploi, qui va aider les chercheurs a étudier, comparer et créer de nouveaux algorithmes DCOP.

pyDCOP est indépendante des cas d’usages : elle peut être intégrée dans toute autre application pour offrir de la coordination distribuée dans des projets différents. La bibliothèque fonctionne avec Python 3.5 ou plus récent. Elle a déjà été utilisée dans le cadre de plusieurs articles académiques.

Les atouts de pyDCOP:

  • Elle fournit l’implémentation de plusieurs algorithmes DCOP (DSA, MGM, MaxSum, DPOP etc.).
  • Elle permet d’implémenter facilement de nouveaux algorithmes DCOP, en offrant toute l’infrastructure nécessaire : des agents, un système de messagerie, un recueil des métriques etc.
  • Tous les agents peuvent fonctionner sur le même ordinateur ou sur des machines différentes, ce qui facilite les expérimentations.
  • Elle est multi-plateforme : pyDCOP fonctionne sous Windows, Mac et Linux.
  • Elle est particulièrement adaptée dans le cadre de l’IoT, étant capable de gérer des agents sur des ordinateurs mono-cartes, tels le Raspberry Pi.
  • A côté de l’algorithme classique DCOP, la bibliothèque pyDCOP propose également de nouvelles approches pour les systèmes IoT: plusieurs stratégies sont disponibles pour distribuer les calculs de DCOP sur plusieurs agents et améliorent la robustesse.

L’équipe du projet pyDCOP vous invite à contribuer, surtout dans le domaine de l’implémentation des algorithmes DCOP (nouveaux ou bien connus). Consultez l’espace GitHub Orange-OpenSource pour en savoir plus et joindre le projet. Le code est publié sous licence BSD-3-clause.