Programmation linéraire
Cours d’optimisation
2
Chapitre I. Programmation lin´aire e
3
Introduction ` la programmation lin´aire a e
I: Introduction
I.1 Un exemple de probl`me de r´gime alimentaire e e Mr X se demande comment g´rer au mieux ses d´penses alimentaires tout en respectant ses e e besoins quotidiens en ´nergie (2000 kcal), prot´ines (55g) et calcium (800 mg). Il s´lectionne e e e six produits qui semblent ˆtre des sources nutritionnelles bon march´. e e Maintenant, Mr X se demande comment composer ses menus? Il d´cide donc d’imposer e les limites suivantes sur le nombre de services par jour pour chacun des aliments: C´r´ales: au plus 4 services par jour, ee Poulet : au plus 3 services par jour, Oeufs : au plus 2 services par jour, Lait entier : au plus 8 services par jour, Tarte aux pommes : au plus 2 services par jour, Poissons et haricots : au plus 2 services par jour.
4
Aliment C´r´ales ee Poulet Oeufs Lait entier Tartes aux pommes Poissons et haricots
Quantit´ e 28 g 100g 2 25 cl 170g 260g
Energie (kcal) 110 205 160 160 420 260
Prot´ines (g) Calcuim (mg) e 4 32 13 8 4 14 2 12 54 285 22 80
Prix 3 24 13 9 20 19
Nous proposons de formaliser ce probl´me comme celui de la recherche d’un menu compos´ e e de : x1 services de C´r´ales, ee x2 services de poulet, x3 services d’oeufs, x4 services de lait entier, x5 services de tarte aux pommes, x6 services de poissons et haricots. Afin de respecter les limites impos´es, le menu doit satisfaire : e 0 ≤ x1 ≤ 4 0 ≤ x2 ≤ 3 0 ≤ x3 ≤ 2 0 ≤ x4 ≤ 8 0 ≤ x5 ≤ 2 0 ≤ x6 ≤ 2. Le menu doit satisfaire aussi les contraintes sur les besoins en: Energie: 110x1 + 205x2 + 160x3 + 160x4 + 420x5 + 260x6 ≥ 2000
5 Prot´ines: e 4x1 + 32x2 + 13x3 + 8x4 + 4x5 + 14x6 ≥ 55 Calcium: 2x1 + 12x2 + 54x3 + 285x4 + 22x5 + 80x6 ≥ 800. Le coˆt quotidien du menu est : u 3x1 + 24x2 + 13x3 + 9x4 + 20x5 + 19x6 Pour composer le menu le moins cher, Mr X cherche les valeurs de x1 , x2 , ..., x6 qui satisfont les in´galit`s