À la demande de la Fondation COIN-OR, nous avons participé du 1er au 9 août à l’événement CBC Code Print organisé dans les locaux de l’Institute of Mathematics and its Applications (IMA) sur le campus de l’université de Minneapolis. Alors que la Fondation COIN-OR se dédie à la création et à la diffusion des connaissances relatives à tous les aspects de la recherche informatique, cet événement visait à regrouper les chercheurs et développeurs travaillant dans le domaine de la recherche opérationnelle (Operational Research), et plus spécifiquement sur le solveur de programmation Cbc (Coin-or branch and cut) afin de contribuer à son évolution. Cette semaine fut des plus profitables !
Amélioration des interfaces Native
Pour l’occasion, nous avons décidé de travailler au perfectionnement de deux interfaces afin d’aller plus loin dans notre exploration et faire avancer nos recherches :
L’interface Native pour Java (Java Native Interface), déjà utilisée pour le logiciel PLANIMOD, qui fonctionne désormais avec toutes les fonctionnalités Cbc, supporte plus de plateformes (notamment Windows 32 bits et Windows 64 bits) et facilite l’accès aux usagers à la documentation Cbc.
L’interface Native pour Python, que nous avons appelé le « projet cbcpy », qui permet d'utiliser directement Cbc depuis Python, donne accès rapidement à la documentation Cbc, facilite l'installation depuis PyPI sans devoir installer Cbc et supporte les plateformes suivantes :
- Linux x86_64 / Python 2.7
- Linux x86_64 / Python 3.5
- Linux x86_64 / Python 3.6
- Linux x86_64 / Python 3.7
- Win x86 / Python 2.7
- Win x86 / Python 3.5
- Win x86 / Python 3.6
- Win x86 / Python 3.7
- Win x86_64 / Python 3.5
- Win x86_64 / Python 3.6
- Win x86_64 / Python 3.7
Partage avec des chercheurs éminents
Être présent à l’événement CBC Code Print a permis aussi de bénéficier du savoir-faire hors-pair et des compétences aiguisées de plusieurs chercheurs internationaux, tels que Ted Ralphs, Haroldo Gambini Santos, Gleb Belov et Matthew D. Saltzman. En plus d’améliorer nos connaissances sur le développement de Cbc, être à leur contact a été une grande source d’inspiration pour relever de nouveaux défis, notamment celui d’utiliser la recherche opérationnelle et un solveur linéaire dans la mise sur pied de nouveaux logiciels.Surveillez nos prochaines modifications sur le projet cbcpy !