ChocoSolver

ChocoSolver

Quelques exercices de CSP en ChocoSolver.


Voir le ficher readmeChocoSolver pour plus d’informations sur la librairie chocoSolver.


N Reines

Résolution du puzzle des n reines avec ChocoSolver.

Particularités :

♛⬜⬛⬜⬛⬜⬛⬜
⬜⬛⬜⬛♛⬛⬜⬛
⬛⬜⬛⬜⬛⬜⬛♛
⬜⬛⬜⬛⬜♛⬜⬛
⬛⬜♛⬜⬛⬜⬛⬜
⬜⬛⬜⬛⬜⬛♛⬛
⬛♛⬛⬜⬛⬜⬛⬜
⬜⬛⬜♛⬜⬛⬜⬛

Un code des N reines en ChocoSolver est disponible ici.


Carré magique

Résolution du puzzle carré magique avec ChocoSolver.

- -------------------
| 16 |  1 |  8 |  9 |
---------------------
|  2 |  7 | 10 | 15 |
---------------------
| 13 | 12 |  5 |  4 |
---------------------
|  3 | 14 | 11 |  6 |
---------------------

Particularités :

Un code MagicSquare en ChocoSolver est disponible ici .


TecToNic

Résolution du puzzle TecToNic avec ChocoSolver .

Voici un exemple de puzzle :
TecToNic

Particularités :

Le code TecToNic en ChocoSolver est disponible ici .


Problème de gestion d’emplois du temps

Affecter des cours à des créneaux horaires, des salles et des professeurs en respectant des contraintes.

Particularités :

Le code CourseScheduler en ChocoSolver est disponible ici .


Problème classique du voyageur de commerce (TSP : Traveling Salesman Problem)

Un grand classique : exercice simple sur le problème de voyageur de commerce : construire le chemin hamiltonien (chemin qui passe 1 fois et 1 seule par tous les sommets du graphe) de longueur minimale.

Particularités :

Un code en ChocoSolver est disponible ici.


Problème d’affectation de rôles

Le contrôle d’accès basé sur les rôles (RBAC) est un modèle d’autorisation permettant de contrôler l’accès des utilisateurs aux systèmes, aux applications et aux données en fonction de leurs rôles.

Des utilisateurs jouent des rôles et ont besoin de permissions..

Prenons :

Un rôle donne accès à des permissions :

Chaque utilisateur a besoin d’un ensemble minimal de permissions pour ses tâches :

On ajoute que personne ne peut posséder les rôles $r_0$ et $r_2$ en même temps (conflit de rôles).

Particularités :

Un code en ChocoSolver est disponible ici .


Problème de la génération de clé

Générateur de clés sécurisées utilisant la programmation par contraintes avec ChocoSolver

Particularités :

Un code en ChocoSolver est disponible ici.