4. Programmation en nombres entiers



Documents pareils
Programmation linéaire

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA

La simulation probabiliste avec Excel

L ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

Limites finies en un point

Continuité et dérivabilité d une fonction

Comparaison de fonctions Développements limités. Chapitre 10

Suites numériques 3. 1 Convergence et limite d une suite

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable

Planche n o 22. Fonctions de plusieurs variables. Corrigé

Exo7. Limites de fonctions. 1 Théorie. 2 Calculs

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Programmation Linéaire - Cours 1

I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES

Application de K-means à la définition du nombre de VM optimal dans un cloud

Problème 1 : applications du plan affine

Cours 02 : Problème général de la programmation linéaire

Optimisation Discrète

Dérivation : Résumé de cours et méthodes

Media planning TV et optimisation : du statique au (très) dynamique

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique

Programmation linéaire et Optimisation. Didier Smets

Cours 1 : Qu est-ce que la programmation?

Le produit semi-direct

Manuel d utilisation Enregistreur autonome de poche. Version 1.1 TRO-TR-BADL100C-03-F

Chapitre 4 : Exclusion mutuelle

Objets Combinatoires élementaires

La classification automatique de données quantitatives

Plus courts chemins, programmation dynamique

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

BONUS MALUS. Voici, la façon de calculer la prime : Le montant de la prime à acquitter est égale à : P = PB. C où : P

Programmation linéaire

Chp. 4. Minimisation d une fonction d une variable

Représentation des Nombres

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

LE PROCESSUS ( la machine) la fonction f. ( On lit : «fonction f qui à x associe f (x)» )

Mathématiques financières

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I

Licence Sciences et Technologies Examen janvier 2010

Algorithme. Table des matières

Probabilités sur un univers fini

Équations non linéaires

Cours de Master Recherche

Factorisation Factoriser en utilisant un facteur commun Fiche méthode

Public Key Infrastructure (PKI)

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

Cours d initiation à la programmation en C++ Johann Cuenin

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Logiciel de Base. I. Représentation des nombres

Intégration et probabilités TD1 Espaces mesurés Corrigé

(51) Int Cl.: H04L 29/06 ( ) G06F 21/55 ( )

Dérivation : cours. Dérivation dans R

CH.6 Propriétés des langages non contextuels

Résolution de systèmes linéaires par des méthodes directes

Définitions. Numéro à préciser. (Durée : )

Université Paris-Dauphine DUMI2E 1ère année, Applications

Exprimer ce coefficient de proportionnalité sous forme de pourcentage : 3,5 %

CHAPITRE V SYSTEMES DIFFERENTIELS LINEAIRES A COEFFICIENTS CONSTANTS DU PREMIER ORDRE. EQUATIONS DIFFERENTIELLES.

Optimisation for Cloud Computing and Big Data

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours.

Séminaire TEST. 1 Présentation du sujet. October 18th, 2013

Feuille TD n 1 Exercices d algorithmique éléments de correction

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

ÉVALUATION FORMATIVE. On considère le circuit électrique RC représenté ci-dessous où R et C sont des constantes strictement positives.

Théorèmes de Point Fixe et Applications 1

Arbres binaires de décision

Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Cours de Systèmes d Exploitation

Démontrer qu'un point est le milieu d'un segment

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie

Représentation d un entier en base b

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

FONCTION EXPONENTIELLE ( ) 2 = 0.

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. address: Nicolas.Thiery@u-psud.fr URL:

Rationalisez vos processus et gagnez en visibilité grâce au cloud

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall

Profits et rendements maximum.

Maïté Marteau IMMOBILIER. des transactions immobilières. Un projet immobilier, vers une nouvelle vie! Appuyez-vous sur nous.

Plan. 5 Actualisation. 7 Investissement. 2 Calcul du taux d intérêt 3 Taux équivalent 4 Placement à versements fixes.

Coût de fabrication ou d achat. Calcul des besoins Management Industriel et Logistique (4) (2) (1) (2)

Quadruplez vos profits par employé

SINE QUA NON. Découverte et Prise en main du logiciel Utilisation de bases

Annexe 6. Notions d ordonnancement.

Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)

Chapitre 5 : Flot maximal dans un graphe

Transmission d informations sur le réseau électrique

Théorie et codage de l information

Chapitre 7. Récurrences

Transcription:

IFT575 Modèles de recherche opérationnelle (RO). Programmation en nombres entiers a. Modélisation

Terminologie de base Programmation en nombres entiers Programmation linéaire avec certaines variables contraintes à prendre des valeurs entières Programmation non linéaire en nombres entiers Programmation non linéaire (sec. 7) avec certaines variables entières Programmation pure en nombres entiers toutes les variables sont entières Programmation (mite) en nombres entiers certaines variables sont entières Programmation 0- (binaire) les variables entières sont à valeurs 0 ou (binaires). Programmation entiers

Eemple : California Mfg (H&L,.) Choisir de nouveau emplacements pour construire des usines et des entrepôts Deu emplacements : LA et SF On ne peut construire un entrepôt que dans une ville où l on a aussi une usine On ne peut construire plus d un entrepôt On associe à chaque construction (d une usine ou d un entrepôt dans chacun des lieu envisagés) Sa valeur estimée Son coût de construction Objectif : maimiser la valeur totale estimée, en ne dépassant pas une limite maimum sur les coûts. Programmation entiers

Eemple (suite). Usine à LA. Usine à SF. Entrepôt à LA. Entrepôt à SF Limite maimum Valeur estimée (millions $) 9 5 6 - Coût de construction (millions $) 6 5 0. Programmation entiers

Modèle California Mfg Variables : j 0 si la décision si la décision Objectif : maimiser la valeur estimée totale ma Contraintes fonctionnelles Limite maimum sur les coûts de construction On ne peut construire plus d un entrepôt j est approuvée ( oui) j n'est pas approuvée ( non) Z 9 5 6 6 5 0. Programmation entiers 5

Modèle California Mfg (suite) Contraintes fonctionnelles (suite) Entrepôt à LA seulement si usine à LA Entrepôt à SF seulement si usine à SF Contraintes 0- (intégralité) Ou encore j { 0,}, j,,, 0 j et j entier, j,,,. Programmation entiers 6

. Programmation entiers 7 Modèle California Mfg : résumé entier,,, 0,,,,,, 0 0 0 5 6 6 5 9 ma Z

Modélisation avec Ecel On applique la même approche que pour la PL Ecel Solver permet deu tpes de contraintes particulières pour modéliser les variables entières : bin : pour représenter les variables 0- ent : pour représenter les variables entières générales Ecel Solver résout les modèles de programmation en nombres entiers par l algorithme de branch-andbound (voir plus loin) Voir l eemple California Mfg. Programmation entiers 8

Utilisation des variables binaires Le modèle illustre deu cas classiques d utilisation des variables binaires Alternatives mutuellement eclusives : on ne peut construire plus d un entrepôt Décisions contingentes : on ne peut construire un entrepôt que là ou on a construit une usine Voons d autres eemples utilisant des variables 0-. Programmation entiers 9

Contraintes mutuellement eclusives Prenons l eemple de deu contraintes L une ou l autre des deu contraintes doit être satisfaite, mais pas les deu simultanément! soit 8 soit 6 Soit M un très grand nombre; le sstème précédent est équivalent à soit 8 soit 6 M 8 M 6. Programmation entiers 0

Contraintes mutuellement eclusives En introduisant une variable binaire, on obtient un sstème équivalent 8 6 M La signification de cette variable est :, si la première contrainte est satisfaite 0, si la deuième contrainte est satisfaite C est un autre eemple d alternatives mutuellement eclusives M ( ). Programmation entiers

Contraintes mutuellement eclusives On aurait pu aussi introduire deu variables binaires, si la première contrainte est satisfaite, si la deuième contrainte est satisfaite On doit avoir Pour se ramener au modèle précédent, il suffit de poser et - C est un cas particulier de la situation suivante : K parmi N contraintes doivent être satisfaites Dans ce cas plus général, on introduit N variables binaires. Programmation entiers

K contraintes parmi N Soit les N contraintes : f (,,..., n) dj, j,,..., j On introduit alors N variables binaires : j, si la j ème contrainte est satisfaite f j(,,..., n) dj M ( j ), j,,..., Il reste à spécifier que seulement K de ces contraintes peuvent être satisfaites : N j j K N N. Programmation entiers

Fonction aant N valeurs possibles Soit la contrainte : f (, ou,..., n) d ou d ou... dn On introduit alors N variables binaires : j, si la fonction vaut d j La contrainte s écrit alors ainsi : f (,,..., N j j n ) N j d j j. Programmation entiers

Fonction aant N valeurs possibles Eemple Wndor Glass Supposons que le temps de production maimum à l usine n est pas toujours 8h, mais pourrait être également 6h ou h Cette contrainte s écrit alors : On introduit alors variables binaires : 8 6 ou ou... ou 6 8. Programmation entiers 5

Objectif avec coûts fies Supposons que le coût associé à un produit j est composé de deu parties : Un coût fie initial k j encouru dès qu une unité de j est produite Un coût c j proportionnel au nombre d unités de j produites Le coût total associé à la production de j unités est: fj( j ) { k si > j c j j j 0 0 sij 0. Programmation entiers 6

Objectif avec coûts fies Supposons que l objectif consiste à minimiser la somme de n fonctions avec coûts fies : min n On introduit alors n variables binaires : Z j L objectif s écrit alors ainsi : min Z j ( fj j ) { si > j 0 0 sij 0 n j ( c j j k j. Programmation entiers 7 j )

Objectif avec coûts fies Mais comment représenter la relation entre j et j? Les valeurs de j et de j dépendent l une de l autre : il s agit d un eemple de décisions contingentes On doit donc avoir une contrainte qui précise que j vaut 0 si j 0 Mais contrairement à la situation dans notre eemple California Mfg, les deu variables ne sont pas binaires: j peut être quelconque Que faire?.... Programmation entiers 8

Objectif avec coûts fies Soit M j une borne supérieure sur la valeur de j On écrit la relation entre les deu variables ainsi : Alors : Si j 0, alors j 0 Si j, alors j M j Si j > 0, alors j j Mj j Si j 0, alors toute solution optimale satisfait j 0 lorsque k j > 0 (si k j 0, la variable j est inutile). Programmation entiers 9

Objectif avec coûts fies minz n Les contraintes originales du problème j ( M j j c j j j kjj) { } j n 0,,,,..., j. Programmation entiers 0

Variables entières en variables 0- Soit une variable entière générale bornée : Soit N l entier tel que 0 u N u < La représentation binaire de est N Intérêt de cette transformation : les méthodes de programmation 0- souvent plus efficaces que les méthodes de programmation en nombres entiers Mais augmentation du nombre de variables! j 0 j j N. Programmation entiers

Eemple Trois tpes de produits Deu usines Profit/unité de produit (000 $) Ventes potentielles par produit (unités/semaine) Capacité de production par usine (h/semaine) Pas plus de deu produits peuvent être fabriqués Une seule des deu usines doit être eploitée. Programmation entiers

Eemple (suite) Produit tps production (h/unité) Produit tps production (h/unité) Produit tps production (h/unité) Capacité de production (h/semaine) Usine 0 Usine 6 0 Profit/unité 5 7 (000 $) Ventes potentielles 7 5 9 (/semaine). Programmation entiers

Eemple (suite) Variables : j nombre d unités fabriquées du produit j Pour représenter la contrainte «Pas plus de deu produits», on doit introduire des variables 0- : j { si > j 0 0 sij 0 Pour représenter la contrainte «Une seule des deu usines», on doit ajouter une variable 0- : { si l' usine est choisie 0 sinon. Programmation entiers

Eemple (suite) Objectif : maz 5 Ventes potentielles : Pas plus de deu produits : 7 7, 5, Relation entre variables continues et variables 0- : 9, 9 5, 7. Programmation entiers 5

. Programmation entiers 6 Eemple (suite) Une seule des deu usines : En utilisant la variable 0- (et M très grand) : 0 6 soit 0 soit 0 6 ) ( 0 M M

Eemple : résumé ma Z 5 7, 9 5, 7 6 0 M ( 0 M,, 0 ) j { 0,}, j,,,. Programmation entiers 7

Eemple Trois tpes de produits Cinq annonces publicitaires Maimum de trois annonces/produit Nombre d annonces Produit profit, millions $ Produit profit, millions $ Produit profit, millions $ 0 0 0 0 0 -. Programmation entiers 8

Eemple : premier modèle? Variables : i nombre d annonces du produit i L hpothèse de proportionnalité est violée! On ne peut représenter l objectif sous forme linéaire uniquement avec ces variables! Nous verrons deu modèles possibles pour contourner cette difficulté. Programmation entiers 9

Eemple : premier modèle Variables : sii j 0 sinon Objectif : maz Eactement cinq annonces Définition des variables 0- ij j i j ij jij, i 5,,. Programmation entiers 0

Eemple : deuième modèle Variables : Cette définition implique : i 0 i 0, Ou encore : i i i ij i j sii j 0 sinon i i i, i, i i 0, 0,, i i i 0 0, i, i ij, i,,, 0 j ( ),. Programmation entiers

Eemple : deuième modèle (suite) Supposons que ( annonces pour le produit ) Le profit associé à cette valeur doit être Mais veut dire que chaque variable binaire associée au produit vaut Comment comptabiliser correctement la contribution de ces trois variables au profit? Solution : le profit associé à la variable ij est c ij -c ij Dans notre eemple, le profit associé à est -0 est - est - 0. Programmation entiers

Eemple : deuième modèle (suite) Objectif : maz Eactement cinq annonces i j ij 5 Définition des variables 0- ),,,, j i i ( j ij,. Programmation entiers

Eemple Une compagnie aérienne veut affecter trois équipages à des séquences de vols Il a un coût associé à chaque séquence de vols La compagnie cherche à minimiser les coûts d affectation des équipages au séquences de façon à assurer le service sur chacun de ses vols Eemple : vols et séquences de vols. Programmation entiers

. Programmation entiers 5 Eemple (suite) 9 8 9 9 8 7 5 7 6 Coût 0 9 8 7 6 5 0 9 8 7 6 5 Vol

Eemple (suite) Variables : j Objectif : ma si la séquence de vols j 0 sinon Z 7 Affecter trois équipages 7 8 8 9 j j 9 9 6 0 7 8 5 est affectée 5 9 6. Programmation entiers 6

. Programmation entiers 7 Eemple (suite) Le service doit être assuré sur chacun des vols : Et ainsi de suite (voir détails dans H&L, sec..) 0 9 7 9 6 8 5 0 7

Eemple (suite) C est un eemple de problème de recouvrement d ensemble I : un ensemble d objets (ici, les vols) J : une collection de sous-ensembles de I (ici, les séquences de vols) Ji, i Variables j I Contraintes : : les sous-ensembles dans J qui contiennent i si le sous- ensemblej est choisi 0 sinon j Ji Partitionnement d ensemble : j, i I j Ji. Programmation entiers 8 j, i I