2-656 Méthodes d’aide à la décision en recherche opérationnelle Cours 6 2-656 MDRO - SÉANCE 6 MODÉLISATION AVEC DES VARIABLES EN NOMBRES ENTIERS Dans cette séance nous présenterons les principes de base de la modélisation de problèmes de programmation linéaire où certains aspects nécessitent l'utilisation de variables en nombres entiers (cf. chapitre 6 du livre). Nous verrons comment définir des variables entières et quand cela est nécessaire (en tenant compte de la complexité accrue que cela amène du point de vue de la résolution). Nous verrons aussi comment utiliser certaines variables entières particulières, les variables binaires ou booléennes, afin de modéliser certaines situations courantes en gestion (présence de coûts fixes, contraintes de production minimale ou production en lots, conditions logiques, etc.). Enfin, nous verrons deux applications de modélisation utilisant de telles variables. 2-656 Méthodes d’aide à la décision en recherche opérationnelle Cours 6 1. MODÉLISATION AVEC DES NOMBRES ENTIERS Dans de très nombreux cas, les valeurs des variables d’un modèle doivent être des nombres entiers : problèmes de localisation (p.ex. nombre de garages à construire) problèmes de gestion de personnel (p.ex. nombre d’employés à engager) … De plus, la modélisation en nombres entiers permet une grande flexibilité de modélisation (conditions “ si...alors ”, changements par coups, etc.) Cependant, la contrainte d’intégrité rend ces problèmes beaucoup plus difficiles à résoudre; on se limite habituellement à des modèles linéaires (P.L.N.E. ou P.L. mixtes) Les modèles à variables binaires (i.e. qui ne peuvent prendre que les valeurs 0 ou 1) sont un cas spécial de modèles à nombres entiers. Question : Ne peut-on simplement tronquer ou arrondir les solutions ? Réponse : Si la partie tronquée est petite par rapport à la valeur de la variable, ça peut aller. Mais ce n’est souvent pas le cas. 2-656 Méthodes d’aide à la décision en recherche opérationnelle Cours 6 2. VARIABLES BINAIRES ET CONDITIONS LOGIQUES Les variables binaires sont très utiles pour des situations de type “ oui ” ou “ non ” : = = 1 0 si usine “ i ” construite sinon xijk = = 1 0 si véhicule “ i ” fait le trajet de “ j ” à “ k ” sinon xi et pour modéliser des conditions logiques (les xi sont binaires cidessous) : Paiement d'un coût fixe: si on prend une certaine décision alors on doit encourir un certain coût fixe Cj . Pour modéliser ceci on associera une variable binaire xi à la décision et on ajoutera à la fonction objectif un terme xi×Cj qui fera comptabiliser le coût fixe Cj seulement si la variable xi = 1, c-à-d. si on prend la décision qui fait intervenir le coût fixe. Décisions dépendantes : on ne peut “ choisir ” ou “ utiliser ” j que si i est déjà choisie : xj xi Pas plus de k parmi n possibilités : x1 + x2 + ... + xn k 2-656 Méthodes d’aide à la décision en recherche opérationnelle Cours 6 Contraintes de lots : Si on achète le titre i, on doit en acheter au moins 200 unités, mais alors pas plus de 1000. xi est la variable de décision d’acheter ou non : binaire yi est la variable de la quantité achetée : entière 200 xi yi 1000 xi Exactement k parmi m contraintes doivent être respectées : Soit m contraintes : gi(y1, y2, ... yn) bi, i = 1, 2, ... m On introduit m nouvelles variables : xi = = 1 0 si contrainte “ i ” imposée sinon Chaque contrainte gi(y1, y2, ... yn) bi est remplacée par : gi(y1, y2, ... yn) bi xi + M (1- xi) où M est une très grande constante. On ajoute en plus la contrainte : x1 + x2 + ... + xn = k Autres conditions logiques : (voir fichier Cond_Logiques.doc) 2-656 Méthodes d’aide à la décision en recherche opérationnelle Cours 6 Résolution graphique 1) Trouver la région admissible sans la contrainte d’intégralité, et identifier le point optimal qui y correspond. 2) Identifier les solutions entières dans la région admissible trouvée. 3) Identifier la solution entière optimale. Rappel : le fait de relaxer ou enlever une contrainte d’un problème d’optimisation linéaire agrandit (ou laisse pareille) la région admissible. Ceci est vrai aussi pour la contrainte d’intégralité ! On appelle relaxation linéaire le problème obtenu après élimination de la contrainte d’intégralité. 2-656 Méthodes d’aide à la décision en recherche opérationnelle Cours 6 Le choix des investissements Chaque investissement i rapporte un bénéfice net Bi, et coûte Ci à mettre en oeuvre. Investissement total maximal de K dollars. Maximiser les bénéfices nets. Investissements 1 2 3 4 5 6 7 Conditions Aucune. Seulement si 1 aussi. Seulement si 2 aussi. Doit être choisi si 1 et 2 le sont. Ne peut être choisi si 1 ou 2 l’est. Ne peut être choisi si 2 et 3 le sont. Seulement si 2 choisi et 3 non.