Contraintes dans solver Excel et VBA

Fermé
lili8888 Messages postés 2 Date d'inscription mardi 21 juillet 2009 Statut Membre Dernière intervention 21 juillet 2009 - 21 juil. 2009 à 12:12
lili8888 Messages postés 2 Date d'inscription mardi 21 juillet 2009 Statut Membre Dernière intervention 21 juillet 2009 - 21 juil. 2009 à 14:17
Bonjour,
J’utilise le Premium Solver pour optimiser la production sur un réseau de 3 usines (P1, P2 et P3) qui vendent sur 3 marchés (M1, M2 et M3). Chaque usine peut tourner à 1, 2 ou 3 shifts (en fonction du nombre d’heures travaillées)
Nous connaissons :
- la demande des marchés (Sales Input)
- les coûts variables de chaque usine
- les coûts de transport
- les coûts fixes pour chaque usine, sachant qu’ils sont dégressifs lorsque le nombre de shifts augmente (FC A signifie Fixed Costs / m² pour 1 shift, FC B pour 2 shifts et FC C pour 3 shifts).
On obtient alors les delivered costs de chaque usine.

Le modèle donne donc la production de chaque usine avec comme objectif de minimiser le total delivered cost (case en bleu), en donnant le bon nombre de shifts pour chaque usine.
On utilise donc une table de variables binaires pour connaître le nombre de shifts.

Mes problèmes sont les suivants :
1. il y a une erreur dans le modèle : pour P2, le solver indique 2 shifts pour une production qui correspond à 3 shifts

2. Comment faire pour ajouter la contrainte suivante : lorsque 1 shift supplémentaire est atteint (pour minimiser les coûts), comment le remplir au maximum (car nous souhaitons utiliser au mieux la main d’œuvre et non simplement atteindre le shift suivant, ce qui n’a aucun sens dans la pratique), sans le faire au détriment d’une autre usine qui serait alors obligée de diminuer ses shifts ? L’objectif principal restant le même : minimiser le Total delivered cost.
Ex : P1 produit 57m², et P2 produit 44m² avec –mettons- des coûts P1 < coûts P2. Comment faire pour que le modèle monte la production de P1 à 60 et diminue celle de P2 à 41 ?
Mais dans le cas où on a une production de 57 et de 42, comment faire pour que le modèle ne donne pas Prod P1 = 60 et Prod P2 = 39 (car là on aurait seulement 2 shifts pour P2) ?

3. Enfin, comment faire pour ajouter la nouvelle contrainte suivante : Une augmentation ou une réduction de shifts ne peut se faire que si elle reste 3 années d’affilée. Ex : on a 2 shifts en N, si on trouve que ça vaut le coup de passer à 3 shifts en N+1, il faut le faire si et seulement si c’est rentable aussi pour N+2 et N+3.


Un grand merci par avance à ceux qui pourront m’aider !
A voir également:

1 réponse

lili8888 Messages postés 2 Date d'inscription mardi 21 juillet 2009 Statut Membre Dernière intervention 21 juillet 2009
21 juil. 2009 à 14:17
0