Cplex

Kaouthar Ouali Messages postés 3 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 6 mars 2014 - Modifié par jordane45 le 6/03/2014 à 14:23
Kaouthar Ouali Messages postés 3 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 6 mars 2014 - 6 mars 2014 à 15:54
Bonjour,
je suis encore débutante en CPLEX et j'ai un programme que je veux modéliser à l'aide des contraintes et une fonction objective.
Au fait, le principe du programme est le suivant:
" J'ai une topologie d'un cloud qui contient J centres de données et dans chaque centre un ensemble de ressources.
Chaque ressource dispose d'une capacité de traitement et d'une bande passante.
J'ai aussi un ensemble de demandes que je veux affecter aux ressources qui conviennent.
Chaque demande dispose d'une capacité et d'une bande passante et doit être servie par la première ressource adéquate."

Mais je ne suis pas arrivé à résoudre ce problème et j'ai besoin de votre aide.
Vous trouverez ci-joint le modèle que j'ai conçu et merci d'avance.

2 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 344
6 mars 2014 à 14:28
Bonjour,
Merci de garder à l'esprit que CodeS-SourceS est une communauté d'entraide.
Toutes les réponses sur le forum sont assurées par des bénévoles qui donnent de leur temps libre pour aider à résoudre les problèmes.

A noter également que nous ne faisons pas dans le "tout cuit".
Soit tu trouves ton bonheur dans la partie source du site, soit à l'aide de ton moteur de recherche favori.
Ici, nous aidons volontiers sur des sujets techniques précis.

sujet-de-pfe-tp-et-autres-devoirs-scolaires

-charte-de-commentcamarche-net-conseils-d-ecriture

Merci donc de reformuler ta demande en respectant ces quelques points.


- Nous indiquer en détail le souci "TECHNIQUE" précis rencontré (et pas seulement nous donner l'annoncé de ton exercice)
- Nous montrer le code que tu as commencé à écrire

0
Kaouthar Ouali Messages postés 3 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 6 mars 2014
6 mars 2014 à 14:37
J'ai essayé de joindre une image de mon code que j'ai conçu mais votre forum ne dispose pas de cette fonctionnalité.
ET j'ai pas demandé de me résoudre mon problème, j'ai déjà écrit mon code mais j'ai un petit problème au niveau de la sélection de la ressource adéquate et c'est tout. Merci d'avance.
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 344
6 mars 2014 à 15:10
Bonjour,
Pourquoi essayer de joindre une IMAGE du code... alors que tu peux le COPIER/COLLER sur le forum
(et en utilisant les balises de code :
http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
)
0
Kaouthar Ouali Messages postés 3 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 6 mars 2014
6 mars 2014 à 15:54

First Fit
Variables
di = (CPU,BP) : i ème demande
n : nombre des demandes
ci : capacité demandée par la i ème requête
bi : bande passante demandée par la i ème requête
Cjk,max : capacité maximale de la k ème ressource dans le j ème site
Bjk,max : bande passante maximale de la k ème ressource dans le j ème site
Rj : nombre des ressources dans le j ème site.
Ei : l'ensemble initial des ressources qui peuvent servir la i ème demande.
xijk : variable booléenne égale à 1 si la i ème demande est servie par la k ème
ressource dans le jème site, et 0 sinon.
yijk : variable booléenne égale à 1 si la k ème ressource du j ème site peut servir
la i ème demande, et 0 sinon.
zij : variable booléenne égale à 1 si le j ème site est choisi comme le premier site
pour servir la i ème demande, et 0 sinon.

Taux d'acceptabilité : TA=somme(i=0,i=n)somme(j=0,j=J)
somme(k=0,k=Rj) xijk/n.

Contraintes

somme(j=0,j=J) somme(k=0,k=Rj) xijk <= 1 quel que soit i
somme(j=0,j=J) zij <= 1 quel que soit i
somme(j=0,j=J) somme(k=0,k=Rj) yijk <= card(Ei) quel que soit i
ci * yijk  <=Cjk,max ?somme(r=0,r=n) cr * xrjk quel que soit i, j, k
bi * yijk  <=Bjk,max ?somme(r=0,r=n) br * xrjk quel que soit i, j, k

(j + 1) * zij <= (s + 1) * yijk quel que soit i, j, k, s //s est un compteur sur les sites
(k + 1) * xijk <= (r + 1)*  yijk  zij quel que soit i, j, k, r //r est un compteur sur les ressources

Fonction objective

Maximize TA+somme(i=0,i=n)somme(j=0,j=J) zij +
somme(i=0,i=n)somme(j=0,j=J) somme(k=0,k=Rj) yijk


0
Rejoignez-nous