TP 1 - Cedric

Transcription

TP 1 - Cedric
TP1 GLPK
Informations techniques PC Suze :
— Pour démarrer une console : clic sur K en haut à droit → Application pédagogiques → Terminal
→ Konsole.
• Si le ménu K n’existe pas : clic droit sur le bureau → Ajouter un panneau → Tableau de bord
par défaut
— Pour démarrer un navigateur/explorer de fichiers : clic sur K → Utilitaires → Dolphin.
— Pour lancer une commande : clic droit sur le bureau → Exécuter une commande (ou Alt + Space)
— Pour démarrer une machine Windows : K → Machines Virtualbox → Info_Windows_XP ;
— Pour modifier un fichier, clic droit sur le fichier → Ouvrir avec KWrite (ou autre éditeur de votre
choix).
1
Introduction et Exemples
Soit le code ci-après.
var x1>=0;
var x2>=0;
maximize obj:3*x1+x2;
subject to c1: 8*x1+4*x2<=22;
subject to c2: 6*x1+4*x2<=32;
solve;
display x1,x2;
end;
Pour commencer, écrire le code plus haut dans un fichier testStart.mod ; pour optimiser un fichier testStart.mod :
— lancer une console
— se placer dans le dossier du fichier testStart.mod via la commande cd
— lancer la commande glpsol -m testStart.mod.
Exercice 1 Modifier le fichier plus haut pour ajouter une 3ème variable x3 binaire et
optimiser le modèle.
Exercice 2 Remplacer l’objectif 3 ∗ x1 + x2 avec un objectif a ∗ x1 + b ∗ x2 où x1 et x2 sont
des paramètres.
Exercice 3
— télécharger l’archive du logiciel à partir de
http://cedric.cnam.fr/ porumbed/rcp104/winglpk-4.55.zip et chercher
le dossier d’exemples
— Résolvez le sudoku fourni dans le fichier sudoku.mod !
— Quelle option glpsol peut-on utiliser pour faire glpsol charger les données à
partir du fichier sudoku.dat ?
Exercice 4
Télécharger le fichier suivant http:
//cedric.cnam.fr/~porumbed/rcp104/damesAvecAttaqueSurMax3Cases.mod.
Ce modèle permet de résoudre un problème modifié de n dames : les dames peuvent
uniquement attaquer sur une distance de 1, 2 ou 3 cases. La configuration
ci-dessous est faisable :
1
Q
.
.
.
.
Q
.
.
Q
.
.
.
.
.
.
.
Q
.
.
Q
.
.
.
.
.
.
.
Q
.
.
Q
.
.
.
.
Q
On observe qu’on peut placer plus de n dames sur une table n × n.
— résoudre ce problème avec glpsol
— modifier le fichier pour résoudre le même problème sur une table n × n avec n = 7.
Exercice 5 Modifier le fichier de l’exercice précédent pour diminuer la distance
d’attaque d’une unité. On obtient ce qu’on pourrait appeler “le problème des n rois”.
Un roi peut attaquer uniquement les cases voisines. Ainsi, la configuration ci-dessous
devrait être acceptable :
10101
00000
10001
00100
10001
2
Modélisations de nouveaux problèmes
Exercice 6 Écrire un modèle pour résoudre le problème du sac-à-dos.
Exercice 7 Écrire un modèle qui permettrait de résoudre le problème suivant. On
considère un graphe G(V, E) où V représente des villes et E des liaisons routières. On
doit trouver la localisation de k magasins, c.t.d, choisir k villes pour placer des magasins. On considère que chaque magasin permet d’approvisionner toutes les villes
adjacentes. L’objectif est de maximiser le nombre de villes qui peuvent être approvisionnées par ces k magasins. Indication : télécharger les diapos et inspirez vous des
diapos sur le problème de localisation de caméras.
2

Documents pareils