Création outil optimisation
re,
je n'étais pas encore fini, mais j'en ai assez depuis un moment, Solveur ne veut pas comprendre la linéarité, donc je ne peux pas utiliser l'engine "Simplex".
Bon, voici une solution et si quelqu'un autre a envie, il peut améliorer ma macro.
Explication vite : la ligne principale = ligne 2 de "Solveur", Certaines boissons sont dans certaines contenants (0/1 plage F2:P2) et chaque ville a certaines contenants (0/1 plage Q1:AA1), donc combinaison des 2 et multiplié avec 1.000 (comme limite supérieur de nombre de contenants de ce type) dans la plage Q2:AA2. Donc seulement les contenants avec valeur "1000" sont disponible = les cellules vert clair de la plage AB2:AL2.
Bon, maintenant on joue avec uniquement les cellules vert clair de AB2:AL2 et AN2 (=le nombre de "rotations", entre 1 et 10) et on n'utilise que des integers. En AO2, la sommeproduit des contenants et leur volume mulitplié avec les rotations doit être supérieur au volume demandé en C2. Et maintenant, jouez
Pour ceux qui s'intéressent a "solveur", si vous savez linéariser le modèle, cela serait excellent, mais le problème est le prix de l'enlèvement qui est vraiment discontinu et solveur ne comprend pas ça.
(un moment, je continue ...)
Avec le bouton "Optimalisation Rapide" vous recevez un résultat rapide et presque toujours (29 des 32 lignes, écart <50€) correcte.
Avec le bouton "Optimalisation Solveur", cela prend 30 sec par ligne et pour quelque lignes (3!) vous trouverez un meilleur résultat, mais c'est parce que la solution utilise plusieurs types de contenants au lieu d'un !!!
Comparaison : colonnes BC
PS. Arrêter la macro pendant "Optimalisation Solveur" est un peu compliqué, poussez "ESC" (ou plusieurs fois), clicquez sur "arrêter", faire CTRL+Break sur le msgbox
PS. nouveau fichier à 13:10
Bonjour BsAlv,
Si je comprend bien, le bouton optimalisation solveur est capable, pour un seul déchet, de proposer plusieurs contenants ?
re,
oui, la méthode "rapide" calcule pour chaqu'une des cellules vert clair le résultat individuel dans AV2 et prend le moins cher. Solveur essaie à améliorer ce résultat avec de combinaisons de plusieurs contenants, mais le bénéfice est minimal (ici 3 des 32 lignes avec un bénéfice total de 82€ sur presque 38.000€), ça vaut la peine de lancer cette macro pendant 15 minutes ???
Ce qui est étrange dans ce problème, c'est que une rotation de 10 est moins cher qu'une rotation de 2, je ne comprends pas cela, mais cela n'est pas grave ...
Alors pourquoi ne pas appliquer la formule de "10" même si "3" suffit ? un peu tricher ...