Vendor selection

L'assembleur automobile qui sélectionne et passe une commande auprès du vendeur a un objectif de minimisation des coûts, alors que les vendeurs qui fournissent ces pièces souhaitent maximiser leurs profits. 

Le processus de fabrication des trois types de sièges (S1, S2 et S3) est le même pour les deux fournisseurs, la coupe, la couture et la finition s'effectuant dans le même ordre. 

  Le temps de production de chaque processus pour chaque type de siège par unité et  le temps de production maximum disponible pour chaque processus sont indiqués dans le tableau suivant:

contraintes

   Ce temps de production correspond à l'exécution d'une commande de 540 sièges. Sous les contraintes données de temps de production de chaque processus et de satisfaction de la demande totale, les deux fournisseurs avaient l'intention d'estimer ; le nombre de sièges de chaque type à fabriquer ainsi que le profit maximum pouvant être réalisé. 

   Le bénéfice par unité de S1, S2 et S3 pour le fournisseur V1 a été calculé à 9,6 $, 11,0 $ et 12,5 $, respectivement. De même, le bénéfice pour S1, S2 et S3 pour V2 était de 12 $, 13,5 $ et 14,0 $. 

     L'objectif pour les deux vendeurs est de maximiser leurs profits en vendant trois types de sièges différents (S1, S2 et S3) au constructeur automobile. La maximisation des profits dépend du nombre d'unités produites. Plus le nombre de sièges de chaque type produits sera élevé, plus le profit sera important. 

  il faut respecter le temps maximum valable pour la production pour chaque processus.

  • La production maximale a pu être réalisée dans le temps disponible maximum.

Cela aboutit à la définition de variables de décision où chacun d'entre eux se rapporte le nombre  à fabriquer pour chaque  type de produit. La notation de ces trois composants serait :

  • x1 = Nombre de sièges S1 fabriqués par le fournisseur V1,
  • x2 = Nombre de sièges S2 fabriqués par le fournisseur V1,
  • x3 = Nombre de sièges S3 fabriqués par le fournisseur V1,

Comprendre les variables de décision est important dans la construction de la fonction objectif. Par exemple, pour le vendeur V1, le profit gagné en vendant une unité de S1 était de 9,6 \$, donc la vente de x1 unités de S1 générerait un profit de 9.6 x1. Ainsi, la fonction objectif pour V1 serait :

Modèle Mathématique

Objective function
Maximize Z

 

\begin{equation}\begin{aligned} Z = 9.6 x_{1} + 11 x_{2} + 12.5 x_{3} \end{aligned} \end{equation}
Contraintes:
contrainte1:

Le temps maximum disponible pour le processus de coupe.

\begin{equation} 1.5x_{1} + 1.3x_{2} + 2x_{3} \leq 300 \end{equation}
contrainte2:

Le temps maximum disponible pour le processus de couture.

\begin{equation} 2x_{1} + 2.4x_{2} + 2.9x_{3} \leq 430 \end{equation}
contrainte3:

Le temps maximum disponible pour le processus de finissions.

\begin{equation} 4x_{1} + 5x_{2} + 3x_{3} \leq 620 \end{equation}
contrainte4:

Le nombre de pièces ne dépassent pas 540 .

\begin{equation} x_{1} + x_{2} + x_{3} \leq 540 \end{equation}

Résultat avec solveur Excel

Télécharger le fichier Excel: click ici

Code Cplex avec language OPL

//Déclaration des constantes
float a1 = 9.6 ;	
float a2 = 11;	
float a3 = 12.5;


//Déclaration des variables de décisions
dvar int+ x1;
dvar int+ x2;
dvar int+ x3;

//Fonction Objective
maximize a1*x1+a2*x2+a3*x3;

//Contraintes
subject to{
  
  1.5*x1+1.3*x2+2*x3<=300;
  2*x1+2.4*x2+2.9*x3<=430;
  4*x1+5*x2+3*x3<=620;
  x1+x2+x3<=540;
    
}
//Affichages
execute {

write("x1: "+x1+"\n");
write("x2: "+x2+"\n");
write("x3: "+x3+"\n");


}

Vidéo Cplex