• Aucun résultat trouvé

Programmation linéaire multiobjectif : un résumé

N/A
N/A
Protected

Academic year: 2021

Partager "Programmation linéaire multiobjectif : un résumé"

Copied!
41
0
0

Texte intégral

(1)

HAL Id: hal-01544116

https://hal.archives-ouvertes.fr/hal-01544116

Submitted on 21 Jun 2017

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

To cite this version:

Michel Prévot. Programmation linéaire multiobjectif : un résumé. [Rapport de recherche] Institut de mathématiques économiques (IME). 1988, 37 p., figures, bibliographie. �hal-01544116�

(2)

DOCUMENT DE TRAVAIL

INSTITUT DE MATHEMATIQUES ECONOMIQUES

UNIVERSITE DE DIJON

FACULTE DE SCIENCE ECON OMIQUE ET DE GESTION

(3)

PRDGRAMIATION LINEAIRE MULTIOBJECTIF UN RESUME

Michel PREVOT Février 1988

(4)

de choisir pour résoudre de tels problèmes.

Par la suite le problème général est posé et différentes méthodes de résolution sont proposées.

Nous insisterons principalement sur les méthodes interactives en déterminant leurs assises théoriques et en essayant de préciser les méthodes de résolution et en donnant des comparaisons entre celles-ci, pour terminer par l'introduction de la programmation dynamique.

(5)

PROGRAMMATION LINEAIRE MJLTIOBJECTIF

La programmation linéaire multiobjectif est un instrument d'aide à la décision. Aussi pour commencer notre étude essayons de préciser ce concept de décision.

I Décision

1-1) Définition : On peut dire qu'une décision est l'aboutissement ou la conclusion d'une réflexion. Cependant cette définition ne nous paraît pas satisfaisante, car le point final d'une réflexion peut être le point de départ d'une autre, comme dans le cas de la programmation dynamique. Cela nous fait penser à une image qui se répéterait à l ’infini ccmme dans une galerie de glaces.

Aussi plutôt que de chercher une définition précise ou de donner le terme décision comme un concept primitif essayons de répondre à la question : "pourquoi doit-on décider" ? Cette question répond au besoin de réduire l'écart entre une situation actuelle caractérisée par des faits ayant leurs causes et leurs conséquences et une situation plus ou moins confusément souhaitée.

Cependant il est difficile de tenir compte de tous les éléments qui entrent en jeu et de définir exactement la situation souhaitée ; aussi pour tourner cette difficulté on détermine une représentation simplifiée de la réalité qui constitue ce que l'on appelle un modèle.

1-2) Modèle : Un modèle est une activité du processus de décision reposant sur des flux d'informations apparaissant comme des éléments de base d'une construction plus ou moins explicite. Celle-ci

constituant le lien entre des phénomènes concrets et un modèle abstrait représente le modèle. Ainsi on désigne par modèle toute représentation de la réalité. Celui-ci doit avoir un caractère de ressemblance

avec la réalité représentée, il doit en constituer une simplification et par définition il en est une idéalisation. De plus pour pouvoir être utilisable il doit être résoluble mathématiquement. Il apparaît donc que le modèle est constitué par un ensemble de relations entre divers facteurs ; ces relations sont sélectionnées de façon à fournir une simplification de la réalité en ne retenant que les aspects essentiels

(6)

pour sa compréhension, tout en gardant avec celle-ci une ressemblance suffisante. L'appel à des modèles permet d'envisager les différents aspects de l'environnement en préparant la décision de celui qui en dernier ressort devra choisir. D'où le nom de modèles d'aide à la décision qui leur sont donnés. Comme ceux-ci sont des simplifications de la réalité il est nécessaire de les tester.

Nous avons donc préciser le moyen de parvenir à une définition de la décision, il s'agit de déterminer quel type de décision il faut prendre.

1-3) Types de décisions : Il est possible de classer les décisions suivant le niveau de responsabilité des décideurs:

a) exécutants : à ce niveau les tâches sont répétitives et les décisions se traduisent par des traductions d'ordres qui deviennent rapidement exécutoires et dont les conséquences sont facilement prévisibles.

b) encadrements, dans ce cas on opère par sélection et choix. c) au niveau direction,dans ce cas l'avenir est incertain et on procède par stratégie et intuition.

Beaucoup d'auteurs se sont penchés sur ce problème. Par exemple SIMON distingue un continum de décision depuis celles programmées jusqu'aux non programmées. Les premières se prennent par habitude ; les secondes font appel à l'intuition au jugement créatif résolu par des régies empiriques, la recherche opérationnelle, les modèles stochastiques, la simulation et l'analyse des données.

ZELENY opère de même mais précise les distinctions en quatre groupes. a) décision clairement définie avec une alternative bien définie, évaluée avec un critère unique, dont le mode de résolution est l'estima­ tion à l'aide de 1'économètrie ou le calcul numérique et l'analyse des données.

b) décision faiblement définie il existe un seul critère de choix, mais relativement mal défini, on procède par jugement ou recherche

empirique.

c) décisions clairement définies mais il existe plusieurs critères de choix ; dans ce cas on cherche un compromis entre les différents objectifs.

(7)

d) décisions faiblement définies il existe plusieurs critères de choix et on procède par inspiration.

. Ayant d6flni les dlf«rents types d'objectifs passons aux différentes

étapes de la prise de décision.

1*4) D ifférentes étapes :

a) Identification du problème, il s'agit de répondre

i

la

question : "pourquoi doit-on prendre une décision" ? Il faut établir

un bilan de toutes les actions possibles puis déterminer des critères de jugement sous différentes contraintes obtenu en faisant une étude de l'environnement.

b) Solution du problème ayant établi le modèle, la méthode mathématique doit fournir, en général, l'ensemble des solutions du problème.

c) Parmi cet ensemble de solutions il faut choisir laouelle est la meilleure.

d) Passage à la mise en oeuvre et contrôle de la solution obtenue.

Il faut ranarquer que l'usage de l'ordinateur facilite beaucoup le travail de résolution.

Cette présentation est théorique, mais il peut arriver que la prise de décision echoue soit parce que l'étude de 1 'environnaient est incor­ rect, soit parce que le choi* du modèle mathématique est mauvais ou trop simplicateur.

Nous avons précisé les questions pourquoi et comment décider il reste à déterminer qui va décider.

1-5) Ç h o ^ d e ^ a r t e r i a i r e s : Lé décideur peut être difficile n

cerner ; pour pallier à cette difficulté B. ROY introduit le "demandeur" qui assiste l'analyste et est effectivement 1 .'utilisateur du modèle ; I . r ™ 1;. les informations et donne le moyen de percevoir les relations

an cans le modèle. L'analyste construit le modèle, l'exploite e oriente l'action du décideur. Le décideur est c e l u i qui on dernier

ressort prend la décision.

Donc nous avons retenu pour des raisons do rialisrcela pluralité des

(8)

II Programme linéaire multiobjectif

2-1) Généralités : Comme l'introduction du multiobjectif est relativement récentedonnons un bref aperçu historique

2-1-1) Historique

Les premiers VON NETJMANN et MQRGENSTERN ont présenté la première étude dans "Several conflicting maximum problems" et l'oit résolu en utilisant la théorie des jeux.

Par la suite KOOPMANS a introduit la notion de vecteur efficient, puis KUHN et TUCKER ont présenté le premier essai de maximisation vectorielle.

Dans les annees 60, ZELENY a établi la relation entre le programme multiobjectif et le programme multiparamètrique et a effectivement donné une méthode permettant de résoudre un tel problème. CHARNES et COOPER ont introduit le goal programming.

A partir des années 70 nous assistons à une explosion de cette théorie avec l'introduction de méthodes nouvelles de résolution et de nombreuses applications. Par exemple dans les colloques de recherche opérationnelle l'aide à la décision multicritère représente plus de 25 % des conférences.

Comme d'habitude dans une théorie nouvelle il existe de nombreux concepts et des définitions diverses aussi commençons par préciser celles-ci

2-1-2) Définitions

Attributs : Caractéristiques, qualités, paramètres de perfor­ mance du monde extérieur.

Objectifs : Ils traduisent les besoins ou les désirs du décideur et sont choisis par celui-ci parmi les attributs. Il peut arriver que les objectifs soient limités soit par les influences extérieures, soit par les niveaux d'aspiration du décideur.

Buts : Ils traduisent les besoins ou les désirs du décideur et sont donnés a priori ; ce sont des cibles particulières de réalisation.

Critères : Ce sont des mesures qui règlent la prise de décision.

2-2) Position du problème : Soit le système linéaire Cx il s'agit de maximer celui sous les contraintes

(9)

x est un vecteur colonne inconnu à n éléments

w e M l £ m j e n a ü xj ‘!bi

V i € H - M , j e » a i j X j - b i

v. e N1 - N Xj > 0

Yj € N - Xj de signe quelconque

L ’application z définie par

z = Cx est l'application critère

La i : composante définie par

« N ---

ÌÌ

---T.

zi (x) = ~ N CL j Xj est le i critere

Par des transformations bien connues analogues à celles que l ’on utilise dans le cas d'un programme linéaire ordinaire, tout programme multiobjectif peut se mettre sous la forme

max Cx

(10)

Comme il existe plusieurs objectifs il faut trouver un compromis ce

qui nous conduit à la definition des critères d'optimisation.

^ M

2-3) Critères d'optimisations : x G $ est une solution si et seulement

si les contraintes Ax < b sont satisfaites ; soit D l'ensemble des solutions

D = jxi; x G d* Ax < bj

x G d^ est une solution réalisable si et seulement si Ax < b et x > o, soit X l'ensemble des solutions réalisables

X = jxi; x G d* A x < b e t x > o J

\ G d" est un résultat si et seulement si z = Cx x G X soit Z l'ensemble des résultats

Z = J^zi; z 6 3 x G X/ z = Cx 1

>

Etant donne deux résultats z^ et z2 on dit que z^ domine

(respective-2 1 ?

ment strictement) z si et seulement si z i ^ z i avec au moins une inégalité stricte ( resp z^ > z.2) Vi G L

Un résultat est efficient ou est un optimum de PARETO si et seulement si il n'est lominé par aucun autre.

z efficient ** ] z' G Z / z' > z avec au moins une inégalité stricte fausse. On dit aussi que z est un résultat non dominé. Soit P l'ensemble des optima de PARETO.

P = ^xi x G d* Vy zi (y) > zi (x) avec au moins une inégalité stricte => y £ \ l

)

Comme on a défini une relation de dominance faible il est possible de définir les optima de PARETO faible.

Un état x G X est un optimum de PARETO si. et seulement si z(x)

n'est strictement dominé par aucun autre élément de X, soit Pf l'ensemble des optima de PARETO faible

(11)

Pf = ^xi ; x e é Vy zi (y) > zi (x) Vi G L =* y f- X ^

On a P - Pf

Ajoutons deux autres concepts

a) Une solution préférée est le choix du décideur parmi les solutions non dominées

b) IJne solution satisfaisante est une solution qui satisfait les niveaux d'aspiration du décideur.

Pour déterminer les optima de PARETO il est possible d'utiliser un programme linéaire ordinaire ce qui nous conduit à la notion de

programme multiparamètrique.

2-4) Programme multiparamètrique : On appelle programme multipara- mctrique, le programme linéaire défini comme suit

max tCx

sous les contraintes Ax < b x > 0 t est un vecteur colonne à L composantes

On démontre les théorèmes suivants

Théorème 1 : x est un optimum de PARETO faible si et seulement si

J t G if - jol / tCx = sup tCy y £ x

Donc il y a équivalence entre les optima de PARETO faible et les solutions d'un programme multiparamètrique.

Théorème 2 : Si X est borné P n'est pas vide et Vx G X il existe un optimum de PARETO x dominant x.

Ce théorème assure la non vacuité de P et montre que quelque soit le point de départ de l'algorithme on est sur d'aboutir 3 un optimum de PARETO.

Théorème 3 : Dans le cas linéaire si X est borné, x est un optimum de PARETO si et seulement si il existe des multiplicateurs strictement positifs t € (f tels que tCx = sup tCy

(12)

Ce théorème est la clé de la résolution des programmes linéaires multiobjectifs ; cependant le choix des t n'est pas neutre. En effet

si l'on augmente le poids d'un critère, on favorise ce critère.

Soit (t.j + S) z^(x') +... + ^ zl 0 0 comparé à

2 t. z. (x) alors si ^,> o z1 (x) < z1(x')

i G L 1 1 1 1

Néanmoins la plupart des méthodes utilisées pour résoudre un

programme multiobjectif utilise cette équivalence ; tout dépend de la manière dont sont déterminées Tes valeurs de t. Nous obtenons trois types de méthodes suivant que les t sont donnés a priori, a postériori ou progressivement.

III Résolution effective d'un programme linéaire multiobjectif 3-1) Méthodes d'information a priori

3-1-1) Utilisation d'une fonction d'utilité

Dans tous les cas le programme multiobjectif est transformé en

U (C(x)) où II est la fonction d'utilité associée aux différents objectifs. Ces méthodes demandent que la fonction d'utilité soit connue a priori. Mais même pour un problème simple, la détermination de IJ est délicate car il faut la construire avec une information incomplète. Le principal avantage est que si IJ(C(x)) est correctement construite et utilisée, la solution est la plus satisfaisante pour le décideur et qu'en général la résolution est ramenée à un problème unidimensionnel.

3-1-2) Méthode des objectifs bornés : Dans ces méthodes il est nécessaire que le décideur donne au moins le niveau minimum acceptable pour chaque objectif. Le problème multiobjectif est transformé en

max Cr x

sous les contraintes Ax < b Cjx > Lj Vj € L j f r

x > o

(13)

inférieur et le maximum acceptable pour chaque objectif. Le programme devient

max Crx

sous les contraintes Ax < b x > o C.x > L . C.x < H . 3 3 3 ' 3 Vj G L j f r

La principale difficulté de ces méthodes est d'obtenir les valeurs Lj et éventuellement Hj que le décideur doit fournir a priori. Or puisque le décideur doit donner ces informations il peut arriver que le problème n'admette plus de solutions réalisables. De plus même le décideur est bien informé et si le problème a encore des solutions celles fournies en résolvant le programme linéaire précédent peuvent ne pas toujours donner satisfaction au décideur.

3-1-3) Méthode lexicographique : Cette méthode suppose que les objectifs sont rangés par ordre d ’importance décroissante par le décideur , la solution retenue est celle qui maximise les objectifs qui ont la plus grande importance et on itère le procédé suivant l'ordre d'importance des objectifs.

Le premier problème à résoudre est

max C^x x g X

Soit = C^x une solution de ce problème. Si le programme donne une solution unique, elle est considérée comme la meilleure possible, sinon on résoud le problème

max Z2 = CyX

Sous les contraintes x e X C^x = z* , puis on itère le procédé Cette méthode est très simple mais présente une grande sensibilité. WALTZ a proposé une variante qui réduit ce défaut. Après avoir maximisé le premier objectif, le second objectif est maximisé à condition de

(14)

conserver au premier objectif un certain pourcentage de cet optimum. ! m s la ¡irocodure est itérée. Finalement chaque lois on a à résoudre le programme linéaire.

max C-x

J

j 6 L

x

ex

c^x = z£ - sk ke [ 1, j -

1

]

où Sk est le seuil de tolérance défini par le décideur.

3-1-4) Goal programming : le problème peut être présenté de la

manière suivante : le decideur définit un but à atteindre sur 1'ensemble des objectifs ; puis on cherche la solution qui permet de se rapprocher le plus possible de ce but à atteindre.

Si g est le but fixé, le programme revient à

min d (Cx, g) x

e x

Puisque nous sommes dans le cas linéaire, le programme prend la forme

min f (y+ , y") = . | L (y* + yTï

sous les contraintes Ç)x + y7 - y* = g . y. çz l

A x < b x > o y+ > o y~ > o

Il est possible pondérer le coût de surachèvement du but de manière di flérente de son sous achèvement. On obtient ainsi

f (y* , y-) - j ï L »j + j i L w J y J

Remarquons que les contraintes peuvent être aussi traitées de la même manière que les buts à atteindre.

La méthode conduit parfois à uni- solution contestable ; en effet si le point idéal choisi par le décideur n'est pas assez audacieux, on aboutit à une solution non efficiente.

(15)

que le décideur a fourni ses informations, il n'intervient plus dans la construction de la solution. Aussi nous allons passer au cas de la détermination apcstériori des objectifs.

3-2) Pondération a posteriori des objectifs. Toutes ces méthodes utilisent l'algorithme du simplex modifié pour la circonstance. Dans tous les cas les méthodes comprennent quatre phases.

3-2-1) Trouver une solution de base réalisable. Ceoroblème est un problème classique de la programmation linéaire et ne nous attardons pas.

3-2-2) Trouver une solution extrême efficiente à partir d'une base réalisable,il faut trouver une base efficiente s'il en existe une sinon le problème est non borné. Pour ce faire il faut disposer d'un test. Les tests proposés par les différents auteurs sont nombreux et variés. Il apparaît que seules des expériences pratiques permettront de

savoir lesquels conviennent le mieux au calcul. Or celles-ci font cruellement défaut.

3-2-3) Générer l'ensemble des solutions extrêmes efficientes. On sait que l'ensemble des points extrêmes efficient? est bien enchaîné, c'est-à-dire qu'il est possible de passer d'un point efficient à un autre en faisant des transformations pivot. Pour leur détermination il n'existe pas de méthode analogue à la programmation linéaire ordin­ aire car ce programme de changement de base est choisi de telle sorte que l'objectif croisse. Il n'en est pas de même pour la programmation multiobjectif par définition même d'un optimum de PARETO. Aussi deux stratégies sont possibles soit à partir d'un premier point efficient calculer un point voisin et tester s'il est efficient soit à partir d'un point efficient, chercher un point voisin efficient et calculer ses coordonnées.

3-2-4) Générer l'ensemble des solutions non dominées : cette recherche se décompose en deux phases d'abord déterminer si une face est non dominée et ensuite générer cette face.

Ce problème se ramène au test d'un point d'une face, car si un point d'une face est non dominé toute la face est dominée. Donc l'ensemble des solutions se présente sous la forme II F^ F^ étant

une face non dominée. i G A

La plupart des auteurs ont négligés cette dernière étape, seul ZELENY a donné un algorithme complet de résolution que nous présentons à la suite.

(16)

Début

l I|(U<V1>* une» solution ré«i limita le

J —

f oui n o n ^ ^ .

non

^ T o u i

{. , . . . , . . . ,

ot ookcr xCs index 00 d s s c corresponoantij

qui conduisent à une base non explorée.

Y a-t-il une base inexplorFt5^

^ ___déjà stockée ^ —■—

[non

Tous les sommets non dominés ont été calculés

(17)
(18)

Il faut donc introduire un critère supplémentaire pour aboutir à une solution efficace.

Pour augmenter l'influence du décideur il faut passer à la détermination progressive des poids.

3-3) Détermination progressive des poids 3-3-1) Généralités

Le décideur ne pouvant pas expliciter sa fonction d'utilité on cherche une méthode qui incite celui-ci à définir ses préférences de manière ponctuelle au cours du processus d'exploitation des décisions. A partir d'une solution trouvée on interroge le décideur pour savoir si une ou plusieurs valeurs des critères sont insuffisantes. Si oui on

lui propose une autre solution qui accroit la valeur de ces critères mais, qui par définition d'un optimum de PARETO en dégrade d'autres. On voit que le processus est itératif et ne s ’arrête que lorsque le décideur est satisfait ou quand aucune autre solution n'est possible. Ces méthodes ont un avantage certain c'est le décideur et non plus

seulement l'analyste qui participe à l'élaboration de la décision et leur emploi est relativement facile. Elles ont en revanche un inconvénient : rien ne garantit une convergence rapide c'est-à-dire conduit en un nombre fini de cycles à la solution péférée.

Le principe de ces méthodes est simple. B. ROY a fourni une procédure dégagée de tout concept mathématique que nous allons présenter.

Soit A l'ensemble des actions possibles

g = (?!••• gn) la valeur des critères

g*= (g*... g^) la valeur correspondant au maximum de chaque critère c'est le point de mire.

g = (g-j • • gn) un point réal isable qui représente la meilleure solution après g*

(19)

O éb u t

Recherche du point de mire. Délimitation de A . et détermination du point de mire associé à A

-9 * = < -9 * ,.

Réinitialisation avec le nouveau point de mire

oui Compromis

> — ».... a*

ïcceptez-vous ^des compromis moir

J>OQJ

non

oui

Réaction en vue de recueillir les informations relatives à un possible élargissement de

l'ensemble A

Réaction en vue de recueillir des informations suffisantes pour localiser un meilleur

9 < g*

OUI

Recherche d'un projet de com­ promis a, action dominante la plus proche dé g compte tenu de la direction de préférence

---— ... ... ... Réinitialisation avec le nou­ veau projet de compromis, S est candidat avec les performances

§

Réaction en vue de reçueillir les informations suffisantes pour sélectionner la performan» i à améliorer en priorité

(20)

3-3-2) Méthodes ne demandant aucun information

3-3-2-1) Méthode STEM , dans un premier temps un tableau du gain est construit en calculant 1'optimum de chaque fonction objectif donc en

résolvant max z^ (x) = c^x i € L Ax < b x ^ o On obtient le tableau Z> ^ • z. 1 ZL ★ i L :1 Z1 Z1 Z ^ Z 1 •y★ L T zi 1 Z 1• ,1 ★ L L ZL

La ligne i correspond à la solution qui maximise zi, i : fonction critère, z. est la valeur prise par le ne critère quand z. atteint son

★ 1

maximum en z..

L' algorithme se décompose en 2 phases

i) Phase de calcul : A chaque itération on cherche la solution du problème

min X

X > [ z* - zi (x) ] 7T i i e L x € if1 X > o

7ri mesure l'importance relative du critère i. Il faut noter que cette pondération est locale et varie à chaque itération.

D01 est le domaine de l'itération if c X et comprend des contraintes qui seront précisées par la suite.

u) Phase de décision : On présente la solution trouvée au décideur qui comparé à la valeur du point idéal. Si certaines composantes sont satisfaisantes, d'autres ne le sont pas, le décideur doit accepter un

(21)

certain montant D . de relaxation des contraintes. Le domaine réalisable

zi

devient :

i f 1 *

La procédure s'arrête dès que la solution trouvée est jugée satisfaisante par le décideur.

(x) > (xm ) - D zi

(22)

A l g o r i t h m e S T E M D é b u t f C o n s t r u c t i o n de la tab l e de d é p a r t z*. 1 P o s e r D.j = X C a l c u l e r les p o i d s II. R é s o u d r e le p r o g r a m m e l i n é a i r e m i n X , X G X m x > [2^ - ^ (x )] nx V I E L X > 0 C h o i s i r les c o m p o s a n t e s z_j' à r e l a x e r --- Nf C h o i s i r le n de la rel lontant D z ^ a x a t i o n non Pas de s o l u ­ tion F I N m L i x est le m e u < leur c o m p r o ­ mis n i = 0 x m •X m+1 = Z l (x) > z 1 (xm ) - D ( z r ) z. (x) k X N V k G L k i 1

(23)

S-3-2-2) Goal programming interactif. Le problème que l'on se propose de résoudre est de maximiser une fonction d'utilité du décideur non connue de celui-ci. La procédure revient îî

max IJ(CX ) = max lî(x)

k 1

Soit x la solution obtenue à la k : itération (x étant arbitraire) la meilleure direction de déplacement basée sur une approximation linéaire

le

de la fonction d'utilité en x est déterminée par y. y*= X maximisant grad U (Cx) . or la fonction U n'est pas connue explicitement

il est donc impossible de déterminer directement son gradient. Comme y n'est pas affecté par une pondération positive des objectifs, en utilisant les propriétés des fonctions composées il est possible de mettre l'expression précédente sous la forme

max | L wj C. (xk) y

"tîju

avec — au point x

J

3 X 1 k

Wj est le taux de substitution entre l ’objectif 1 et l'objectif j, il doit être demandé au décideur en procédant par question. Il reste alors

k •

à déterminer dans la direction d = y - x le point optimal. Cela revient à trouver la valeur t e f o , 11 qui maximise

U !c(xk + tkdk) 1 e [°>11 v k k

Mais comme c(x + t d ) détermine cette valeur en utilisant une représentation graphique car la valeur de C ne dépend que de t.

(24)

3-3-3) Méthodes nécessitant des informations :

3-3-3-1) Méthode de Zionts et Wallenius : La première étape de cette méthode consiste à choisir un ensemble arbitraire de multiplicateurs positifs et à générer une fonction d'utilité à partir de ces multiplica­

teurs. La fonction d'utilité optimisée fournit une solution non dominée à partir de l'équivalence entre le programme multiobjectif et le

programme multiparamétrique. De l'espace des variables hors bases sont sorties des variables efficientes c'est-à-dire des variables qui

introduites dans la base peuvent augmenter un objectif sans en diminuer un autre. Pour chaque variable efficiente un ensemble de gains est défini par l'augmentation et la diminution de chaque objectif, line série de tels gains est présentée au décideur à qui il est demandé quel gain est

accepté^refusé ou indifférent. D'après ses réponses un nouvel espace de multiplicateurs est construit et la solution non dominée correspondante est trouvée. Le procédé est itéré et poursuivi jusqu'à la convergence de l'algorithme.

(25)

i G L

x G X 2 Xi = 1 X i > o i G L

Ce programme fournit une solution non dominée. L ’étape suivante consiste à construire l'ensemble des variables hors bases efficientes. Pour ce faire il faut construire le tableau des wij qui fournit la

variation de l'objectif j par l'introduction de la variable hors base i, Il faut résoudre le programme linéaire

max xj Vj G

J

(ensemble des indices des variables hors bases) X G X

Si z' est la valeur de la fonction objectif on a

w . .

xj

Si tous les wij sont positifs, xj n'est pas efficient, sinon il faut tester si la solution obtenue est efficiente. Pour ce faire, il faut résoudre le programme linéaire

sous les contraintes

. 2 w,, \) > o V, G J j f 1 T. . • _ 1

i G L 1J v J i F L Xl ' 1

D'après la théorie dtj programme linéaire on a les tests suivants si t < 0 Xj est efficient, si, t ?» o Xj n'est pas efficient.

Par la"suite on aborde la phase de décision. On s'adresse au décideur pour savoir s'il accepte ufte variation des objectifs, la réponse est oui, non ou indifférent.

(26)

g : g + 1 D é b u t

I

>r

q

-

1

R é s o u d r e m a x Z A. Cx i = 1 1 Ax < b x > 0 C o n s t r u i r e V L . p a r max x , j 6 J A x < b j W.j = C - C ' z z x. n o n e f f i c i e n t ,

éli-j

m i n e r c e t t e v a l e u r ■ N r é s o u d r e m i n t = m i n Z W., X. i = 1 11 1 N N Z W. . X. > 0, j € J, j * 1, Z X = 1 i = 1

ij i

i = 1 x^ n on e f f i c i e n t , éli- . min er c e t t e v a l e u r oui Xe* fo ur n i t la t \ 1 U U 1 1 I X w A V* s o l u t i o n T r o u v e r une s o l u t i o n ' é f f i c i e n t e . R é s o u d r e N N Z W.. X. < -c i = i 1 1 1 p o u r oui, Z W., X. > e p o u r n o n i = 1 11 1 N Z X .= 1 i = 1 1

(27)

s'arrête et les valeurs des X fournissent les poids.

Sinon pour chaque réponse oui on construit les inégalités

D w . . H < - fi fi est un nombre positif suffisamment petit, car i G N 1J

v

la plus grande valeur de w . . X • est toujours plus petite que i G N 1J 1

zéro dans le cas d'une attraction. Pour toute réponse non on a

S

S

i e n w iî ^ et Pour l'indifférence w . . X- = o,

J i G N 13 1

A partir de ces relations on construit un nouvel espace des X

y

vérifiants ' X . = 1 et on itère le procédé, i G N 1

3-3-3-2) Méthode de VINCKE. Le début de la méthode est analogue n la méthode de STEM. On détermine le point idéal, c'est-à-dire on résoud

M, = max C, x k G L K x G X K

Puis on cherche à minimiser la distance entre ce point et le point idéal ; on résoud le programme

min > y = C x

- Ckx)

Ax < h x > 0 ^ > o

7r^ est à calculer comme dans le cas de la méthode STEM. La solution optimale de ce programme fournit le point admissible dont l'image dans l'espace des fonctions économiques est le plus proche au sens minimax du point idéal.

L'introduction des variables d'ocart et des variables artificielles conduit au programme suivant

min ( X + ' ? Mv, ) k G I, K y-cx = 0

n k V - + X " h + vk = Mk k <EL Ax + s = b

(28)

t^, sont les variables d'écart, v^ les variables artificielles et M une quantité arbitrairement grande.

Le tableau initial du simplex est

y^. • • yL * * *^n’ t-|• • • s r ..sm ,

XLL -C 0 0LL 0LL 0LM 0

°LL ^ 1 -ILL ILL °LM *M

°ML A 0 0 0 1 ^ b

°1L 0 1 0 M 0 0

La résolution du programme conduit à un tableau du type suivant y^... y^ x.j... xn, X, t-j... tL, v ^ ... v^, s.|...

yij xij -1j tij vij sij Bi

ligne des indicateurs égale à zéro.

Les variables Vi sont supposées hors bases dans le tableau final, car on suppose évidemment que le programme admet une solution. La variable X a été indiquée en base. S'il n'en est pas ainsi sa valeur optimale est nulle. Cela signifie que l'on peut atteindre le point idéal dans le domaine admissible et que la solution trouvée est la meilleure possible.

Le vecteur Bj fournit les composantes de la solution optimale du programme, ainsi que les valeurs des fonctions économiques en ce point. Celui-ci est le premier compromis propose au décideur. De plus il résulte des critères d'optimalité du simplex que Bi > o et que les indicateurs sont négatifs ou nuls.

Supposons que le décideur ne soit pas satisfait par cette solution mais qu'il accepte de relâcher la contrainte, c'es-à-dire d'augmenter b^. Il résulte de l'algorithme du simplex que si est remplacé par b^ + X^ et si l ’on applique les mêmes changements de base qu'au

programme initial alors le vecteur B^ devient B^ + X^ s ^ > le reste du tableau étant inchangé. Si d'autre part B^ + X^. s ^ > o

Y. e f 1, 2.1, + M] alors ce nouveau vecteur représente la solution optimale du programme perturbé. Dans ce cas ce vecteur fournit un nouveau compromis compte tenu de la perturbation X^ apportée par le décideur.

(29)

Il en est de meme si le dccideur modifie une des composantes du point idéal. Si par exemple ^ est remplacé par + Xj. le

second membre devient B. + V .^ qui, tant que scs composantes sont non négatives fournit la solution optimale du programme perturbé.

Par conséquent, l'influence sur le compromis initial d'une

modification d'une contrainte ou d'une composante du point idéal se lit. immédiatement sur le tableau final. Le programme s'arrête quand le décideur s'estime satisfait.

(30)
(31)

3-3-3-3) Résolution dans le cas d'objectifs Ordonnés. Supposons que les objectifs soient rangés par ordre d'importance décroissante. Le

classement peut être fourni par h' décideur lui même on être obtenu dans le cas de plusieurs décideurs par une méthode de classement type Electre.

Dans un premier temps on résoud le programme

max c^x x G X

Soit x1 les valeurs des variables et z les valeurs correspondantes des objectifs. Si le décideur n'accepte pas la solution, on cherche comme dans la méthode de VINCKE quelles contraintes il faut relâcher de façon à fournir une solution acceptable pour le décideur.

Dès qu'un compromis est trouvé on passe au 2e objectif et on résoud le programme

max

1

Ax <^b x > 0 C^x > z

Deux cas peuvent se présenter

i) la solution trouvée est x \ Si le décideur accepte la solution on passe au 3e objectif sinon on procède comme dans la 1e étape en lisant directement dans le tableau simplex les gains obtenus par relaxation des contraintes.

u) la solution obtenue est différente de . Dans ce cas on résoud le programme.

max C ?x

x

e

x

2 2

Soit x les valeurs des variables et z les valeurs correspondantes des obje^ti fSu. A p a r t ir de ces résultats on construit le point

1

9

^ x + (1 ) x ^ e f 0,1 ] ; On demande un compromis au décideur et on résoud le programme

(32)

max C^x

sous les contraintes Ax < b x > o > <\ (compromis retenus par le décideur.

On présente les résultats au décideur. S'il refuse, on propose une re­ laxation des contraintes jusqu'à ce qu'un compromis acceptable soit trouvé sinon on itère le procédé jusqu'à épuisement des objectifs.

(33)
(34)

Rien souvent les décisions se prennent au cours de périodes succes­ sives, ce qui nous conduit à la programmation dynamique. Que devient un programme linéaire multiobjectif dans le cas de la programmation dynamique.

IV - Programmation dynamique.

4-1) Présentation du problème.Considérons le programme

i N " 1 i max Jj = max S zJ (x (k), 11 (k) ) j G L k=o

N_1

i

i

= max S (cJ (k). x(k) + d3 (k) u (k) + 2P(k)) k=o

L'équation de comportement du système est

x(k + 1) - x (k) = A (k) x(k) + B (k) u (k) + a (k) k e fo,N-11

L'état initial est connu x (o) = e

x(k) vecteur colonne à n dimensions pour la période k u(k) vecteur colonne à m dimensions pour la période k x(k) est le vecteur d'état, u(k) le vecteur de commande c3 (k) est un vecteur ligne à N dimensions pour la période K d3(k) est un vecteur ligne n m dimensions pour le période K

)P (k) scalaire représentant les paramètres exogènes pour la pér iode k j G L

A(k) matrice (n,n) pour la période k B(k) matrice (n,m) pour la période k

a (k) vecteur à n dimensions pour la période k représentant les paramètres exogènes influançant le système.

Nous allons procéder à la résolution de ce programme d'une part par le principe du maximum de Pontriagin et d'autre part par le principe de BliLLMANN.

4-2) Principe du maximum : Celui-ci consiste en l'introduction de variables duales permettant de construire la fonction hamiltonienne qui sera optimisée à chaque étape. Ainsi le principe du maximum permet de décomposer le problème de commande optimale en une suite d'optimisations

(35)

statiques tout en réduisant ic nombre des variables.

Pour résoudre ce problème associons aux équations de comportement des multiplicateurs 'P' (k) j £ I, qui dépendent du critère considéré, nous obtenons de cette manière un problème d'optimisation libre

N " 1 , N- 1

max 2 H* (x(k), u(k), v J (k) ,k) = max ? zJ (x(k), u 00,1c) -

k=o k=o

* J (k) tx(k+1) - x(k) - A(k), x(k) - B(k) u(k) -<*(k)l

H étant décomposable pour réduire ce problème on procède par récurrence.

Pour k e f o,N-1 J la condition nécessaire et suffisante d'optimation pour chaque objectif est

3 -}1 3'i0s.(k)> U(k), k) . l j (k)à [Afk) x n o + Bfk) x_ fkJ_-jvm]_

^ x ( d ) ^ x ( k ) ^rx(k) * + - v? J çk-l) = 0 j e t, l î l (k) u (k), k) jpî (k) $ ÇA(k) x (k) + B (k) x fk) +jy_î1Q = o ^ u f k ) ^u (k ) y u ( ] ) ~ k ^ ro,N-l] j f= L y_HJ = x(k + 1 - X (k) - A(k) X(k) - B(k) u (k) - cv (k) = o J J (k)

Pour k = N comme notre système dynamique a pour horizon temporel k = N-1 on suppose que la condition finale est

V *(N-1 ) = o vj G y,

On obtient le système canomique des conditions du premier ordre

<p’(k) -spj(k-l) = cJ (k) - y ^(k)A(k) k G f o,N-1 ] * j ( N - 1 ) = o j<= L

x(k + î- - x(k) = A(k) x(k) + B(k) u(k) + « (k) xfo) = e

(36)

I.a condition du premier ordre des variables de commande est d-1 fk) + j (k) B(k) = o j € L k G [ o,N-1]

Les variables de commande sont optimales donc elles vérifient max (d^Ck) + j (k) B(k)) u(k) k G [o,N-1]

j G L

On retrouve un programme linéaire multiobjectif classique. Pour résoudre ce programme on doit d'abord calculer les valeurs duales

(k) de k = N-1 à o, calculer dJ (k) + ^ (k) B(k) pour trouver la valeur optimale de la commande u(k) enfin déterminer la trajectoire du

système et la valeur optimale des critères de jugement.

La simplicité de cette technique en fait un outil de décision très puissant pour les problèmes dynamiques mis sous la forme de commande. Tille permet non seulement de décomposer le problème dynamique à

objectifs multiples en une suite de problèmes d'optimisation statique multiobjectif mais encore elle réduit le nombre de variables de ces programmes aux seules variables de commande, les autres calculs ne sont que du calcul matériel.

Remarque Bien évidemment il est possible d'introduire des contraintes sur les variables de commande cela ne modifie en rien le principe de résolution de ce programme.

4-3) Principe d'optimalité. Notre problème se présente comme suit N-1 .

max 2 7? (x (k), u (k) , j (k) j G L k=o

x(k + 1 ) - x(k) = A (k) x(k) + B(lc) u(k) + j (k) kG[o,N-1l

Nous supposons en outre que les variables de commande et d'états vérifient les contraintes suivantes

u(k) = [ u(k)G <R m b(k)u(k) < Ç(k) u(k) > o k G [o,N-1]} X(k) = \ x(k)F m a(k)x(k) ^fl*(k) x(k) > o k G fo,N-1^ b(k) matrice (j),m) pour la période k

a(k) matrice (q,n) pour la période k

p(k) vecteur colonne n p dimensions pour la période k C(k) vecteur colonne à q dimensions pour la période k

(37)

composée de sous politique optimale ; nous pouvons dire qu'à chaque période

1'optimisation doit respecter la solution ontimale de la période précédente pour l'algorithme en avant ou de la période ultérieur pour l'algorithme en arrière.

Pour exploiter ce principe présentons ces deux algorithmes.

4-3-1) Algorithmes en arrière : Dans ce cas nous procédons par étapes de la dernière période k = N-1 et de proche en proche jusqu'à l'étape d'origine k = o. On suppose que la variable d'état à l'étape N est connue x (N) = e' et que l'état initial est contraint x(o) G X(o)

Pour k = N-1 l'état final étant connu x(N) = c', le problème à résoudre est le suivant

rN-l = max zj|Cx(N-1), u(N-1, j (N-1 ) 1

u (N-1 ) g u (N-1 ) j

x (N-1 ) GX(N-1)

x(N-1) + A (N-1) x (N-1) + B (N-1) u (N-1) -r« (N-1) = x(N)

hn résolvant le problème précédant qui n'est autre qu'un programme linéaire multiobjectif nous obtenons la valeur optimale au sens de PARbTO des variables de commande u°(n-1) des variables d'état x°(N-1)

et des objectifs 1*° N-1

Pour k = N-2 le problème à résoudre est le suivant, en respectant la valeur optimale de la période précédente

l3_ 1 = max z j ( x ( N - 2 ) , u(N-2), j (N-2)) + 1 ^ (x(N-2) +...)

u(N-2) G a (N-2)

x(N-2) X(N-2) j g L

oui est également un programme linéaire multiobjectif qui nous donne u CN—2), x°(N-2) , ^ procède de même jusqu'à la période k = o ce qui nous donne

(38)

ro = max z^fxfo), u(o), j(o)) +

1^ (x(o) + A(o) x(o) + B(o) u(o) + afo)

ufo) e u(o) x(o) e x(o)

Algorithme en avant : Il suffit de procéder de la même manière en partant de l'état k = o pour aboutir à k = N-1

Ainsi le principe d'optimalité nous permet de résoudre le problème de commande optimale en une suite d'optimisations statiques. Mais contrairement au principe de PONTRIAGIN qui ne considère que les variables de commande, le principe de BELLMAN utilise à la fois les variables de commande et les variables d'état.

(39)

BIBLIOGRAPHIE

Ouvrages

FISHBURN P.C. (1970) Utility Theory for Decision Making, Wiley, New-York.

HOLINS S. (1981) L foptimisation multiobjectif thèse de mathématique appliquée à 1*économie (Dijon).

HWANG C.L. and A.S.M. MASUD (1979) Multiple Objective Decision Making, Methods and Applications. A State of the Art Survey, Springer Verlag, New-York.

HWANG C.L. and K. YOON (1981) Multiple Attribute Decision Making. Methods and Applications» A State of the Art Survey. Springer Verlag, New-York.

IGNIZIO J.P. (1976) Goal Programming and Extensions. Lexington Books Massachussets.

K Q O P M A N S J.C. (1970) Trois essais sur la science économique contempo­

raine. Dunod (Paris)«

KUHN and TUCKER. Linear Programming and the Theory of Games Activity Analysis.

VON NEUMANN J. and 0. MORGENSTERN (1947) Theory of Games and Economic Behavior, Princeton University Press, Princeton N.J.

PARETO W. (1904) Economie mathématique dans l ’encyclopédie des sciences mathématiques sous la direction de J. MOLK.

PREVOT M. et S. HOLIN (1986) Programmation linéaire multiobjectif, Collection de l'I.M.Ë. Dijon.

ZELENY M. (1974) Linear Multiobjective Programming, Springer Verlag, New-York.

ZELENY M. (1975) Multiple Criteria Decision Making (KIOTO) Springer Verlag, New-York.

ZIONTS S. (1978) Multiple Criteria Problem Solving, proceeding Buffalo, Springer Verlag, New-York.

(40)

BENAYOUN ] CHARNES A CHOUAF M. CHYUNG 0.1 DESPONTIN DYER J.S. FARQUHAR 1 FEINBERG , FISHBURN GEOFFRION HUBERT G. Articles

{. et J. TERNY (1969) Critères multiples en programmation

mathématique. Une solution dans le cas linéaire. Revue française de recherche opérationnelle, vol 2, p. 31-36. and W.W. COOPER (1977) Goal Programming and Multiple Objective

Optimization, part I. : European Journal of Operational Research, vol 1, n° 1, p. 39-45.

and M* PREVOT (1985) Programmation multiobjectif et programmation dynamique, symposium de R.O., Munich (à paraître).

I. (1967) Optimal System With Multiple Costs Functionals S.I.A.M. Journal of Control, vol 5, n° 3, P. 345-351. M. et P. VINCKE (1977) Multiple Criteria Economic Policy in

ROUBENS. Advances in Operation Research, North Holland Amsterdam, p. 119-128.

(1973) A Time Sharing Computer Program for the Solution of the Multiple Criteria Problem, Management Science, vol. 19, n° 12 (août).

/.H. (1977) A Survey of Multiattribute Utility Theory and

Applications in Strass and Zeleny, Multicriteria Decision Making, North Holland, New-York.

(1972) An Experimental Investigation of an Interactive approach for Multicriterion Optimization With an Applica­ tion to Academic Resource Allocation, Ph. D. Dissertation, University of California, Los Angeles.

).C. (1974) Lexicographic Orders, Utilities and Decisions Rules : A Survey* Management Science, vol. 22, n° 11, p. 1442 -

1471.

A.M., J.S. DYER and A. FEINBERG (1972) An Interactive Approach for Multicriterion Optimization With an Application to the Operations of an Academic Department. Management S cience, vol. 29, n° 4 (part I), p. 357-368.

’. (1974) Multiattribute Utility Models a Review of Field and Fieldlike Studies, Management Science, vol. 20, n° 10, p. 1393-1402.

(41)

KEENEY R. (1972) Utility Functions for Multiattribute Consequences, Management Science, vol. J8, n° 5 (part 1), p. 276-287. PREVOT M. (1984) Programmation linéaire multiobjective avec objectifs

ordonnés, 16 ème colloque structures économiques et

économétriques, Aix-en-Provence Revue [»ëograohique du sud est. ROY B. (1975) Vers une méthodologie générale d'aide à la décision,

M e t r a , vol. 14, n° 3, p. 459-497.

SEINFELD J.H. and W.Z. Mac Bridge (1970) Optimization With Multiple Performance Criteria, I. and E.C. Process Design and Development, vol. 9, n° 1, p. 53-58.

VINCKE P. (1976) Une méthode interactive en programmation linéaire à plusieurs fonctions économiques, R.A.I.R.O., vol. 10, n° 6, série verte, p. 5-20.

WALTZ F.M. (1967) An Engineering Approach : Hierachical Optimization Criteria, I.E.E.E. Trans on Automatic Control, vol. AC 12,

n° 2, p. 179-Î80. ~

WINTERFELDT D.V. and G.W. FISHER (1977) Multiattribute Utility Theory, Models and Assessment Procedures in WENDT and C. VLEK,

Utility Probability and Human Decision Making, D. Reidel pub. Co, Boston, p. 47-85*

YU L. and M. ZELENY (1975) The Set of All non Dominated Solutions in Linear Case and a Multicriteria Simplex Method. Journal of Mathematical Analysis and Applications, vol. 49, n°“2,

p7TT6~m:

--- --- ;—

YU L, and M. ZELENY (1974) The Technic of Linear Multiobjective Program­ ming, R.A*I.R.O., vol. 3, p. 51-71.

ZELENY M. (1973) Compromise Programming in COCHRANE and ZELENY, Multiple Criteria Decision Making, University of South Carolina Press, Columbia, South Carolina, p. 262-302.

ZIONTS S. and J. WALLENIUS (1975) On Finding the Subset of Efficient Vectors for an Arbitrary Set of Actors, Working Papers, p. 54-64.

Références

Documents relatifs

Courtillot dans cet ouvrage Chimie et changement clima- tique (EDP Sciences, 2016), coïncide avec l’expansion des vikings, partis de Scandinavie sur leurs drakkars pour

Evaluation/compétences : Nombres complexes (

Écrire des formules utilisant uniquement les symboles primitif du langage de la théorie des ensembles (soit : symboles logiques, égalité, appartenance et parenthèses) et exprimant

[r]

Première STG Exercices sur le chapitre 6 : E1

Donc elle ne correspond pas à ce type

Terminale STG Exercices sur le chapitre 11

[r]