Algorithme combinaison la plus économique

Bonjour à tous,

Je me permets de solliciter humblement un peu d'aide car je sèche...

Voici donc un énoncé condensé: Je cherche à comparer deux produits dont les quantités voulues peuvent évoluer. Pour cela j'ai accès à un catalogue me proposant plusieurs formats (10 kg , 15 kg, 22 kg... 55 kg max) souvent différents en fonction des produits mais n’excédant pas 4 formats différents par produit.

Je cherche donc un algorithme pouvant me proposer la composition la plus économe (ou tout du moins la plus proche en terme de poids), sachant que les prix sont dégressifs.

Un exemple pour bien comprendre: je veux 21 kg de produit, le catalogue me propose un pack de 11 kg (à 10 €/ kg soit 110€ le pack) et un pack de 35 kg (à 8€ / kg soit 280€ le pack), je vais donc prendre deux packs de 11 kg et non pas un pack de 35 kg.

Vous trouverez ci-joint un exemple que j'ai essayé de simplifier.

Merci d'avance à tout ceux qui se creuseront la tête pour me donner une piste!

Florian

34exemple-prix.xlsx (8.96 Ko)

Bonjour,

une solution avec le solver d'excel

34exemple-prix.xlsx (9.36 Ko)

une autre solution via une macro

33exemple-prix.xlsm (19.21 Ko)

Merci pour votre réponse rapide!

Je vais regarder ça attentivement.

Bien cordialement,

Florian

Bonjour,

C'est un bel algo que vous avez sorti en 15 minutes! C'est un peu démoralisant mais merci beaucoup ! D'autant que j'ai découvert l'utilisation du symbole #.

Je n'ai toutefois pas très bien compris l'utilité de "pmin".

Merci encore pour votre aide, je devais pouvoir sans soucis l'adapter à mon code.

Bonne journée,

Florian

FlorianW a écrit :

Je n'ai toutefois pas très bien compris l'utilité de "pmin".

Florian

l'algorithme examine toutes les combinaisons possibles et le coût de chaque combinaison est comparé au minimum (pmin) déjà trouvé. si la combinaison en cours donne un coût inférieur à pmin cette nouvelle combinaison est retenue (sol) et le coût minimum (pmin) est adapté.

Rechercher des sujets similaires à "algorithme combinaison economique"