programmation linéaire
Download
Report
Transcript programmation linéaire
-5Optimisation linéaire et
non-linéaire
2013-02-18
1
Sujets abordés
Introduction à la programmation
(optimisation) linéaire
Concept, formulation
Illustration à l’aide d’Excel
Introduction à l’optimisation non-linéaire
Concept, formulation
Illustration à l’aide d’Excel
2
Introduction
Qu’est-ce que la programmation linéaire?
« La programmation linéaire est une méthode
mathématique qui s'inscrit dans une recherche
d'optimisation »
Il y a une fonction objective et des contraintes
Nous tenterons de minimiser ou maximiser la fonction objective tout
en respectant les contraintes
Les équations sont de premier degré
Les variables sont élevées à la puissance 1
Il s’agit donc de droites et non de courbe (d’où le terme linéaire)
3
Introduction
Pourquoi étudier la programmation linéaire?
Populaire en administration, surtout en gestion des
opérations
Optimisation des flux de transport
Planification de la production
En finance, la programmation linéaire peut :
Optimiser la prise de décisions (où, quand, combien ?)
Décisions d’investissement
Décisions d’emprunt
Décisions de placement
Optimiser l’encaisse (gestion de la liquidité)
4
Introduction
*** Il existe de nombreux cours de 45 heures consacrés à ce
sujet (ex : IFT-2106 et MQT-60801)
Ce qui est à l’étude dans le cadre de GSF-2107:
Écriture d’un problème de programmation linéaire
Bien définir la fonction objective
Bien définir les contraintes
Résoudre un problème simple d’optimisation
Méthode du simplexe avec le solveur d’Excel
5
Définir les équations
Il faut écrire l’objectif et les contraintes sous la forme
d’équations mathématiques
1.
2.
3.
C’est une étape cruciale qui nécessite de bien
analyser le problème auquel nous sommes
confrontés
Définir les variables de décisions (X1, X2, … Xn)
Définir la fonction objective à l’aide des variables de décision
Définir les contraintes représentant les restrictions
Les contraintes sont parfois explicites
Nous devons le plus souvent les déduire
Il y a généralement de nombreuses contraintes
Des actions peuvent être pris à chaque période et il est
nécessaire de fixer des contraintes pour chaque période
6
Définir les équations
La forme usuelle des équations est la suivante :
Objectif :
Max/Min: c1 X1 c2 X 2 ... cn X n
a 21 X1 a 22 X 2 ... a 2n X n b2
Contraintes :
a 31 X1 a 32 X 2 ... a 3n X n b3
•
•
•
a m1 X1 a m2 X 2 ... a mn X n bm
X1 , X 2 ,..., X n 0
Contraintes pour chaque
période (périodes 1 à m)
a11 X1 a12 X 2 ... a1n X n b1
Contrainte de non négativité
7
Exemple
Exemple
Le gestionnaire d’une entreprise de fabrication de meubles
de mélamine doit planifier la production du prochain mois. Il
doit choisir le nombre optimal de bureaux de travail, de
tables d’ordinateur et de classeurs à fabriquer.
- Le budget prévu pour la production est 100 000 $
- Les employés peuvent travailler un maximum de 1500 heures
- L’entrepôt peut contenir un maximum de 150 m3
8
Définir les équations
Exemple (suite)
Objectif :
Max : W 400$X1 700$ X 2 350$ X 3
300$ X1 500$ X 2 250$ X 3 100000$
Contraintes :
20hrsX1 32hrsX 2 16hrsX3 1500hrs
3m3 X1 3m3 X 2 2m3 X 3 150m3
X1 , X 2 , X 3 0
Puisqu’il est impossible de fabriquer un
nombre négatif de meubles…
9
Méthode du simplexe
Comment résoudre un problème de ce type?
Il est difficile de représenter graphiquement un
problème comprenant plus de 2 variables
Intuitivement, plus on ajoute de variables, plus il y aura de
« sommets » représentant une solution potentielle
Nous utiliserons la méthode du simplexe pour résoudre
ces problèmes
Élaborée en 1947 par G. Dantzing
Permet de se déplacer rapidement entre plusieurs points
candidats (optimum locaux) jusqu’à trouver une solution
10
Méthode du simplexe
Les étapes du simplexe:
1.
2.
3.
4.
Définir les variables
Définir la fonction objective
Définir les contraintes d’égalités et inégalités
Transformer les contraintes d’inégalités en contraintes
d’égalités à l’aide de variables molles (slack variables)
5. Construction du tableau du simplexe
6. Itérations:
1. Détermination d’un point pivot sur le tableau
2. Opérations de lignes et de colonnes
11
Le solveur d’Excel
L’outil Solveur d’Excel permet de résoudre des problèmes
d’optimisation variés
Permet de déterminer si nous voulons maximiser ou
minimiser une fonction objective
Permet d’ajouter des contraintes
Procède par itérations pour sélectionner la solution
optimale
Un des algorithmes de calcul que l’on peut sélectionner
est basé sur des équations linéaires (méthode du
Simplexe)
Reprenons l’exemple précédent sur Excel…
Une solution X1 = 0 X2 = 37,5 X3 = 18,75
12
Le solveur d’Excel
Les dangers :
L’algorithme n’identifie pas les extremum locaux
Nous ne savons pas si la réponse est le point optimal
global
Il existe des logiciels plus performants qu’Excel pour
faire de l’optimisation
La capacité de calcul d’Excel est rapidement excédée
lorsqu’on ajoute quelques variables et contraintes
(dimension du problème élevée)
13
Programmation non-linéaire
Lorsque la fonction objectif et les contraintes ne dépendent
pas linéairement des variables, il n’est pas possible
d’utiliser la méthode du simplexe
C’est souvent le cas dans les problèmes en finance de
marché
Le risque (variance) implique des équations de 2ème degré
Le but de l’optimisation sera de déterminer l’allocation des
ressources entre les titres afin de minimiser les risques pour
un niveau de rendement donné
Problème : Comment isoler w ?
2
ptf
w' w
Vecteur des pondérations
Matrice de variance - covariance
14
Optimisation non-linéaire
En présence de contraintes en équation, nous pouvons
utiliser le multiplicateur de Lagrange pour résoudre ce
problème
C’est ce que nous avons vu la semaine dernière
Il ne faut pas oublier d’ajouter les contraintes implicites…
n
w
1
i
i 1
Dans le cadre du cours, ne verrons pas de méthodes de
résolution de problèmes non-linéaires avec contraintes en
inéquation
Nous utiliserons le Solveur d’Excel
15
Programmation non-linéaire
Exemple sur Excel
Optimiser l’allocation des ressources d’un portefeuille de
titres boursiers canadiens entre les 10 grands secteurs de
l’économie
Objectif :
Minimiser le risque pour un rendement
journalier de de 0,02 %
Contraintes : - Interdiction de faire des ventes à découvert
- Limite sectorielle : secteur S&P/TSX + 10 %
Variables :
10 au total représentant la pondération à
investir dans chaque secteur économique
16