La methode de tir pour des problemes de programmation ...

81
La methode de tir pour des problemes de programmation lineaire bicriteres par Anis Kadri memoire presente au departement de Mathematiques en vue de I'obtention du grade de maitre es sciences (M.Sc.) FACULTE DES SCIENCES UNIVERSITE DE SHERBROOKE Sherbrooke, Quebec, Canada, 9 septembre 2011

Transcript of La methode de tir pour des problemes de programmation ...

Page 1: La methode de tir pour des problemes de programmation ...

La methode de tir pour des problemes de programmation lineaire bicriteres

par

Anis Kadri

memoire presente au departement de Mathematiques en vue de I'obtention du grade de maitre es sciences (M.Sc.)

FACULTE DES SCIENCES UNIVERSITE DE SHERBROOKE

Sherbrooke, Quebec, Canada, 9 septembre 2011

Page 2: La methode de tir pour des problemes de programmation ...

Library and Archives Canada

Published Heritage Branch

395 Wellington Street Ottawa ON K1A 0N4 Canada

Bibliothdque et Archives Canada

Direction du Patrimoine de l'6dition

395, rue Wellington Ottawa ON K1A0N4 Canada

Your file Voire reference

ISBN: 978-0-494-83667-5

Our trie Notre reference

ISBN: 978-0-494-83667-5

NOTICE:

The author has granted a non­exclusive license allowing Library and Archives Canada to reproduce, publish, archive, preserve, conserve, communicate to the public by telecommunication or on the Internet, loan, distrbute and sell theses worldwide, for commercial or non­commercial purposes, in microform, paper, electronic and/or any other formats.

AVIS:

L'auteur a accords une licence non exclusive permettant & la Bibliothdque et Archives Canada de reproduire, publier, archiver, sauvegarder, conserver, transmettre au public par telecommunication ou par I'lntemet, pr§ter, distribuer et vendre des theses partout dans le monde, d des fins commerciales ou autres, sur support microforme, papier, eiectronique et/ou autres formats.

The author retains copyright ownership and moral rights in this thesis. Neither the thesis nor substantial extracts from it may be printed or otherwise reproduced without the author's permission.

L'auteur conserve la propri6t6 du droit d'auteur et des droits moraux qui protege cette thdse. Ni la th^se ni des extraits substantiels de celle-ci ne doivent dtre imprimis ou autrement reproduits sans son autorisation.

In compliance with the Canadian Privacy Act some supporting forms may have been removed from this thesis.

While these forms may be included in the document page count, their removal does not represent any loss of content from the thesis.

Conform6ment d la loi canadienne sur la protection de la vie priv6e, quelques formulaires secondares ont §t§ enlev6s de cette th^se.

Bien que ces formulaires aient inclus dans la pagination, it n'y aura aucun contenu manquant.

Canada

Page 3: La methode de tir pour des problemes de programmation ...

Le 9 septembre 2011

le jury a accepte le memoire de Monsieur Anis Kadri dans sa version finale.

Membres du jury

Professeur Francois Dubeau Directeur de recherche

Departement de mathematiques

Professeur Jean-Pierre Dussault Membre

Departement d'informatique

Professeur Jean-Marc Belley President rapporteur

Departement de mathematiques

Page 4: La methode de tir pour des problemes de programmation ...

Sommaire

Ce travail consiste a etudier les problemes de programmation lineaires bicritere.

En raison de la nature de ces problemes, il existe un ensemble de solutions optimales

et non pas une unique solution au probleme, ce qui pose la question de la maniere

de visualiser et d'analyser cet ensemble de solutions. Nous avons utilise les bases

de l'optimisation multicritere et la methode de la somme ponderee et nous avons

developpe une methode de resolution : la methode de tir utilisant la methode de

simplexe a un critere. Tous ces outils nous ont permis d'identifier et de visualiser

l'ensemble des solutions : la surface de Pareto.

Page 5: La methode de tir pour des problemes de programmation ...

Remerciements

Je tiens premierement a remercier mon directeur de recherche, Professeur Prangois

Dubeau pour m'avoir encadre et oriente durant ma maitrise et pour la confiance qu'il

m'a accordee.

Je remercie egalement Hichem Ayadi pour l'aide pratique et les conseils de travail.

Mes remerciements s'adressent aussi a Rariia Benrhaiem pour l'aide et le soutien

qu'elle m'a accordes tout au long de ce memoire.

Pour finir, j'axlresse un remerciement particulier pour toute ma famille qui m'a

apporte un soutien considerable : mon pere, ma mere, ma soeur Islem, mes freres

Saber, Sami, Amine et Taher.

ii

Page 6: La methode de tir pour des problemes de programmation ...

Table des matieres

Sommaire i

Remerciements ii

Table des matieres iii

Liste des tableaux . v

Liste des figures vi

Introduction 1

1 Un exemple dans K2 3

1.1 Introduction 3

1.2 Exemples 3

1.2.1 Cas du probleme borne 3

1.2.2 Cas du probleme non borne 10

2 Programme lineaire multicritere 16

2.1 Introduction . 16

2.2 Probleme de programmation lineaire multicritere . 16

2.3 Comparaison des solutions realisables 18

2.3.1 Comparaison des vecteurs 18

2.3.2 Dominance dans I'espace des criteres i . 18

iii

Page 7: La methode de tir pour des problemes de programmation ...

Table des matieres iv

2.3.3 Efficacite dans I'espace des decisions 19

2.4 Caracterisation des ensembles de Pareto S et £c 20

2.5 Ponderation des objectifs 21

2.6 Connexite de l'ensemble Sc 25

3 Probleme bicritere : methode de tir 31

3.1 Introduction 31

3.2 Le probleme bicritere 31

3.3 Condition d'optimalite du probleme (P\) 36

3.4 Algorithme 40

3.5 Exemples ' . 41

3.5.1 Exemple 1 42 3.5.2 Exemple 2 . . .- . . . 43

4 Exemples numeriques : problemes de melange 45

4.1 Introduction 45

4.2 Probleme de diete animale 46

4.2.1 Le probleme 46

4.2.2 Modele classique de formulation d'une diete animale ...... 46

4.2.3 Modelisation des rejets d'azote 47

4.2.4 Modele a deux criteres 48

4.2.5 Donnees typiques 49

4.2.6 Resultats 51

4.3 Probleme de metallurgie • • • 53

4.3.1 Le probleme 53

4.3.2 Probleme de base : Description et formulation 54

4.3.3 Probleme d'ajout a une quantite fixee de premelange 61

4.3.4 Resultats theoriques 67

Conclusion 69

Page 8: La methode de tir pour des problemes de programmation ...

Liste des tableaux

1.1 Resultats 9

1.2 Resultats 14

4.1 Liste des ingredients disponibles 50

4.2 Resultats 52

4.3 Specifications minimales et maximales en % du poids dans le melange. 58

4.4 Caracteristiques des materiaux disponibles 59

4.5 Contraintes de type 2 61

4.6 Solution optimale du melange 61

4.7 Specifications du premelange en % du poids 64

4.8 Contraintes de type 2 65

4.9 Sornmets efficaces dans I'espace des criteres K2 65

4.10 Solutions optimales dans I'espace des decisions K8. . . 66

4.11 Relations entre les ensembles realisables S et 5° 67

v

Page 9: La methode de tir pour des problemes de programmation ...

Liste des figures

1.1 Ensemble realisable S dans I'espace des decisions 5

1.2 Ensemble realisable Sc = CS dans I'espace des criteres. 6

1.3 Ensemble de Pareto £ '7

1.4 Ensemble de Pareto £c = CE. . 8

1.5 Ensemble realisable S dans I'espace des decisions 11

1.6 Ensemble realisable Sc = CS dans I'espace des criteres 12

1.7 Ensemble de Pareto £ 13 1.8 Ensemble de Pareto £c = C£. 14

3.1 Ensemble de Pareto £c 43

3.2 Ensemble de Pareto £c 44

4.1 Coefficients techniques du modele 51

4.2 Courbes de Pareto : rejet d'azote vs cout de la diete 53

4.3 Specifications couplees. 56

4.4 Specifications couplees de chrome et de carbone 60

4.5 Courbes de Pareto : Courbe de Pareto £" dans I'espace des criteres R2. 66

VI

Page 10: La methode de tir pour des problemes de programmation ...

Introduction

L'optimisation lineaire a une grande importance, elle s'applique a des problemes

varies issus de l'economie, de 1'ingenierie, de la physique, etc. Dans de nombreuses

situations, un seul critere ne suffit pas. En effet, beaucoup d'applications integrent

plusieurs criteres de decision simultanement et souvent ces criteres sont contradic-

toires. Nous utilisons alors l'analyse multicritere qui permet de trouver une solution

tenant compte de plusieurs compromis lorsqu'on desire optimiser plus d'un aspect

d'un probleme a la fois. Contrairement a l'optimisation monobjectif, la solution d'un

probleme multicritere n'est pas une solution unique, mais un ensemble de solutions

representant les differents compromis possibles. Cet ensemble est connu sous le nom

de surface de Pareto.

A la fin du 19ieme siecle, l'economiste Vilfredo Paxeto [16] formule le concept d'op-

timum de Paxeto. Ce concept constitue les origines de la recherche sur l'optimisation

multicritere. Dans la plupart des cas, l'optimum de Pareto n'est pas constitue d'une

seule solution mais d'un ensemble de solutions appelees solutions efficaces ou non

dominees au sens de Pareto. Plusieurs techniques ont ete developpees pour visualiser

et analyser la surface de Pareto. Une premiere approche transforme les problemes

multiobjectifs en une succession de problemes monobjectifs [3,10,18], comme par

exemple la methode de decomposition des faces [20] et la methode de generation des

rayons extremes [12]. Une autre approche utilise la ponderation lineaire des objec-

tifs [1,4,11,13,17,19,23]. D'autres approches utilisent des methodes probabilistes [15].

II existe aussi des approches qui resolvent les problemes a plus que deux objectifs [21].

1

Page 11: La methode de tir pour des problemes de programmation ...

Introduction 2

Dans notre travail, nous utilisons la methode de la somme ponderee qui nous

permet de ramener le probleme multicritere a un probleme monocritere sous forme

d'une agregation lineaire des objectifs, chacun pouvant avoir un poids representant

son importance. En modifiant les parametres de poids, cette methode permet de

retrouver I'ensemble de solutions optimales au sens de Pareto. L'interet de cette ap­

proche reside dans le fait qu'elle permet l'utilisation de techniques d'optimisation

monocritere pour suggerer des solutions aux problemes multiobjectifs.

Notre travail se divise en quatre chapitres. Le premier chapitre est .une illustra­

tion du probleme de programmation lineaire a l'aide d'un exemple dans K2. Nous

determinojis I'ensemble des solutions correspondant a ce probleme en utilisant les

concepts de dominance et de cone de croissance. Le deuxieme chapitre est fortement

inspire de [21]. II propose une presentation generale de l'optimisation multiobjectif.

Nous introduisons les concepts fondamentaux tels que la dominance, l'efficacite, la

ponderation des objectifs, etc. Nous caracterisons aussi les ensembles de Pareto et

nous montrons la connexite de ces ensembles. Par la suite un chapitre sera consacre

a la methode proposee dans ce memoire pour retrouver I'ensemble de solutions op­

timales. Nous nous concentrons sur le probleme lineaire bicritere et nous presentons

une methode de tir pour construire I'ensemble de Pareto. Cette methode utilise la

ponderation des objectifs et la methode du simplexe a un critere. Le dernier chapitre

sert a illustrer les resultats a l'aide de deux problemes relies a des applications reelles

de problemes de melange.

Page 12: La methode de tir pour des problemes de programmation ...

Chapitre 1

Un exemple dans R2

1.1 Introduction

Dans ce chapitre nous illustrons le probleme de programmation lineaire bicritere

a l'aide d'un exemple simple dans K2. On introduira intuitivement les concepts de

dominance et de cone de croissance. On determinera I'ensemble de Pareto corres-

pondant a ce probleme et on notera que les points de cet ensemble sont egalement

solutions d'un probleme monocritere ou les deux objectifs du probleme bicritere sont

ponderes (combinaison convexe).

1.2 Exemples

1.2.1 Cas du probleme borne

Considerons le probleme bicritere suivant :

3

Page 13: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 4

sujet a

(P)<

Max Z\ = Xi + 6x2

Max 22 = 2xi — 4x2

Xi < 20

X2 ^ 15

Xi — 2X2 ^ 11

2xi — x2 < 34

2xi + X2 < 48

Xi +, X2 < 29

Xi + 2x2 ^ 40

Xi -I- 3X2 < 52

Xi + 6x2 < 91 X!,X2 > 0

On posera

(1 0 \ (20)

0 1 15'

1 -2 11

2 -1 34

2 1 , b = 48

1 1 29

1 2 40 1 3 52

i,l 6 j \?1)

de plus Ci = (1,6), oi = (2, —4) et.

Page 14: La methode de tir pour des problemes de programmation ...

Chapitre 1 Un exemple dans R2 5

L'ensemble des solutions realisables du probleme (P) dans I'espace des decisions est

S = {x € R2 | Ax < b et x > 0} .

L'image de S dans I'espace des criteres est Sc = CS.

Les representations graphiques des ensembles S et de Sc de ce probleme, tous les

deux dans R2, sont donnees aux Figures 1.1 et 1.2. Pour notre probleme, S et Sc

sont bornes.

FIGURE 1.1 - Ensemble realisable S dans I'espace des decisions.

Page 15: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 6

A z2

100

-10

-20

-30

-40

-50

-60

FIGURE 1.2 - Ensemble realisable Sc = CS dans I'espace des criteres.

Le cone des directions de croissance dans I'espace des decisions des deux criteres

est donne par D* = {y € R2 | Cy > 0} U {0}.

Ici l'inegalite y > 0 poiir y G R2 signifie yi > 0 et 2/2 > 0 avec au moins un y< > 0

(une definition plus complete est donnee au chapitre 2). Done, si x G 5 et qu'il existe

un x € S, x ^ x tel que x — x € D- on pourra augmenter les deux criteres ou bien

augmenter un des deux criteres sans diminuer l'autre.

L'ensemble de Pareto £ est un sous ensemble de points de S pour lesquels il

est impossible d'aineliorer les deux criteres a la fois ou bien ameliorer un des deux

Page 16: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2

criteres sans diminuer l'autre. De fagon equivalente

7

x G £ si et seulement si pour tout x G S \ {x} on a x — x $ D-.

L'ensemble de Pareto £ dans I'espace des decisions est indique en trait gras a la

Figure 1.3.

FIGURE 1.3 - Ensemble de Pareto £.

Dans I'espace des criteres, le cone des directions de croissance n'est pas autre

chose que R2 — [0,+oo)2 = Df. L'ensemble de Pareto dans I'espace des criteres

Page 17: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 8

est l'image de l'ensemble de Pareto £ par la transformation x •—> Cx, c'est-a-dire

£c = C£, Cet ensemble dans I'espace des criteres est illustre en trait gras a la Figure

1.4.

A Z

30 •

100

-10

-20

-30

-40

-50

-60

FIGURE 1.4 - Ensemble de Pareto £ c = C£.

On note que les points sur £ sont les solutions optimales d'un probleme mono­

critere dont la fonction objectif est une combinaison convexe des fonctions objectife

Z\ et 22 z \ ( x ) — (1 — X)z i (x ) + Xz2{ t ) avec A 6(0,1)

On peut calculer les valeurs de A possibles pour chacun des points de £. En fait pour

Page 18: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 9

tout x 6 £ il existe un ou des A tels que x est solution optimal de

{ M a x z \ ( x ) sujet a

x £ S.

On a £ = M argmax2A(®)-

A€(0,1) X€S

Dans notre exemple on peut facilement calculer les A correspondant aux points de

£, nous obtenons les valeurs suivantes :

{ X l , X 2 ) ( z i , z 2 ) (A, A)

(13,13) (91,-26) (0,3/13)

[(13,13), (16,12)] [(91,-26),(88,-16)] 3/13

(16,12) (88,-16 ) (13/3,1/13)

[(16,12), (18,11)] [(88,-16),(84,-8)] 1/13

(18,11) (84,-8) (1/3,5/11)

[(18,11), (19,10)] [(84,-8),(79,-2)] 5/11

(19,10) (79,-2) (5/11,11/21)

[(19,10), (20,8)] [(79,-2),(68,8)] 11/21

(20,8) (68,8) (11/21,6/10)

[(20,8),(20,6)] [(68,8),(56,16)] 6/10

(20,6) (56,16) (6/10,13/19)

[(20,6), (19,4)] [(56,16),(43,22)] 13/19

(19,4) (43,22) (13/19,1)

TABLEAU 1.1 - Resultats

Page 19: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 10

1.2.2 Cas du probleme non borne

Dans cet exemple nous traitons le cas d'un probleme bicritere non borne (le

domaine realisable S est non borne) et nous visualisons la surface de Pareto dans ce

cas. Le probleme non borne que nous considerons s'ecrit sous la forme suivante :

Max zi = Xi + 6x2

Max Z2 = 2a: j — 4x2

sujet a

< xi. < 20

XI — 2X2 ^11

2xi — X2 ^ 34 XX,X2>0

Les figures 1.5 et 1.6 sont les representations graphiques des ensembles S et de

Sc de ce probleme.

Page 20: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2

FIGURE 1.5 - Ensemble realisable S dans I'espace des decisions.

Page 21: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 12

-10

-20

-30

FIGURE 1.6 - Ensemble realisable Sc = CS dans I'espace des criteres.

L'ensemble de Pareto £ dans I'espace des decisions eist donne a la Figure 1.7.

Page 22: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 13

FIGURE 1.7 - Ensemble de Paxeto £.

L'ensemble de Pareto £c

donne a la Figure 1.8.

= C£ qui est I'image de £ dans I'espace des criteres est

Page 23: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 14

-10

-20

-30

FIGURE 1.8 - Ensemble de Pareto £ c = CS.

Pour notre exemple, nous obtenons les valeurs suivantes :

(ZL,X2) (Z I ,Z2) (A, A)

(20,6)+M0,l) (56,16)+M1, -2/3) 6/10

(20,6) (56,16) (6/10,13/19)

[(20,6), (19,4)] [(56,16), (43,22)] 13/19

(19,4) (43,22) (13/19,1)

TABLEAU 1.2 - Resultats

Nous remarquons que-pour A € (13/19,1), le point (19,4) est un point efficace.

Pour A = 13/19, tous les points de l'arete [(20,6), (19,4)] sont des solutions optimales

done cet arete est efficace. Pour A € (6/10,13/19), le point (20,6) est efficace. Et

Page 24: La methode de tir pour des problemes de programmation ...

Chapitre 1 : Un exemple dans R2 15

pour A = 6/10, tous les points du rayon non borne (demi droite) (20,6) + n{0,1) (le

rayon issu de du point (20,6) et de direction (0,1)) sont optimaux, done ce rayon est

efficace. Les valeurs de A G (0,6/10) ne peuvent pas etre prise car pour ces valeurs le probleme z\(x) est non borne.

Page 25: La methode de tir pour des problemes de programmation ...

Chapitre 2

Programme lineaire multicritere

2.1 Introduction

II n'est pas rare que dans un probleme reel d'optimisation on soit amene a maxi-

miser (ou minimiser) plus d'une fonction objectif. Souvent ces fonctions objectifs

sont contradictoires et ne peuvent etre optimisees simultanement. On introduit un

ordre sur les solutions realisables et on considere l'ensemble de solutions optimales

dite nondominees, c'est l'ensemble de Pareto. Dans ce chapitre nous decrivons une fagon de comparer des vecteurs de R" et plus

specifiquement de comparer les solutions realisables d'un probleme de programmation

lineaire multicritere. Nous introduisons aussi l'ensemble de Pareto dans I'espace des

decisions et dans I'espace des criteres. Nous caracterisons cet ensemble et montrons

en particulier que c'est un ensemble connexe, propriete qui sera utilisee au chapitre

3 pour valider une methode de tir pour un probleme bicritere. Le contenu de ce

chapitre est tire de [21].

2.2 Probleme de programmation lineaire multi­

critere

Mathematiquement, un programme lineaire multicritere se pose sous la forme :

16

Page 26: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 17

(PLM) <

sujet a

Max z\ = c\x

Max z-i — c-ix

Max Zk = CfcX

Ax = b

x > 0

ou A est une (m,n)-matrice, x est une (n,l)-matrice (ou n-vecteur colonne), b est une

(m,l)-matrice (ou ra-vecteur colonne) et les q (I = 1,... ,k) sont des (l,n)-matrices

(ou des n -vec teurs l ignes ) . On ec r i t ega lement b € R m , x € M n e t c j € R n ( I =1, . . . , k ) .

Dans ce contexte on pose z = {zx, z<i,..., Zk)T € Rfc, la (/c,l)-matrice (ou le A;-vecteur

colonne) des criteres et on definit la (fc,n)-matrice C par

C =

(c , \

C2

\ C k /

On appelle Rn I'espace des decisions. Le sous-ensemble S de Rn defini par

S = {x E Rn| Ar = b et x > 0}.

est l'ensemble des solutions realisables du probleme (PLM). Egalement, on appelle

Rfc "I'espace des criteres et

Sc = C5 = {z € R* f 3 x g S et -2 = Car} C R*

est l'ensemble realisable dans I'espace des criteres.

Page 27: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere

2.3 Comparaison des solutions realisables

18

2.3.1 Comparaison des vecteurs

Soient x = (xi,... ,xn) et y = (yi, . . . , yn) cleux vecteurs de Rn. On ecrira

x — y si et seulement si x< = ( i = 1,..., n),

x y si et seulement si il existe au moins un i G {1,... ,n} tel que au ^ t/j,

x ^ y

x < y

x < y

si et seulement si

si et seulement si

si et seulement si

Xi^Vi ( i = 1,. . . ,n),

x ^ y e t x ^ y ,

Xi<Vi (i = 1,. • • ,n).

De fagon semblable, on definit les relations x ^ y, x y et x > y et on a

X ^ y si et seulement si y ^ x ,

x ^ y si et seulement si y x,

x > y si et seulement si y < x .

Exemple 1. Comparaison de vecteurs de M4

X y Relation

(2,5,-2,0) (2,4,-2,0) (2,4,-2,0)

(2,4,-1,0)

(2,4,-1,0)

(3,5,-1,1)

x ^ y

x < y x < y

2.3.2 Dominance dans I'espace des criteres

Etant donne deux vecteurs Z\ et z<i € Rfc, on dit que domine faiblement Z\

si et seulement si ^ z^,. On dit que Z2 domine fortement zx si et seulement si

Z\ < z-i.

Exemple 2. Dominance dans R3

Page 28: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 19

Vecteurs Relations

Z l = (-1,3,4)

Z2 = (2,4,6) z3 = (2,2,5)

z4 = (3, 2, 5)

z5 = (8,3,-1)

z6 = (8,3, 0)

Z i < Z 2

zz < Z2, z3 < z4

z 5 < Z 6

Dans I'espace des criteres de (PLM), on dit que z G S c est non domine si et

seulement si i l n 'existe pas un autre z G S c tel q(ue z ^ z, c 'est-a-dire tel que z

domine faiblement z.

2.3.3 Efficacite dans I'espace des decisions

Dans I'espace des decisions du (PLM), on dit qu'une solution realisable x G <5 est

efflcace si et seulement si il n'existe pas une autre solution realisable x G S telle que

z = Cx domine z — Cx dans Sc. Dans le cas contraire on dit que x est non efflcace

ou est inefficace. L'ensemble des points efficaces de S s'appelle l'ensemble efficace,

ou l'ensemble de Pareto dans I'espace des decisions, que nous noterons par S. Nous

avons ainsi

£ = {x G S | $ x G 5 tel que Cx < Cx} .

L'image de £ dans I'espace des criteres, notee £c, est definie par

£c = {z € S c | $ z G S c tel que z ^ z} .

Cet ensemble correspond aux points non domines dans S c et est appele ensemble de

Pareto dans l'ensemble des criteres.

Page 29: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 20

2.4 Caracterisation des ensembles de Pareto S et

So

Pour comparer les solutions realisables, nous introduisons le cone polaire semi-

positif pointe associe a (PLM). Ce cone est defini par

C* = {yeW l \Cy>0}.

Ce cone peut etre vide. Introduisons aussi le cone semi-positif associe a (PLM) donne

par c- = c- u {o e Rn}.

Notons que C- 0 car il contient toujours 0 G Mn.

L'ensemble des vecteurs de Rn qui domine un point x G S et qui est different de

x est alors defini par

. ^ f 0 si C* = 0,

Si x+y G D(x) 0, on a alors C(x+y) = Cx+Cy > Cx puisque Cy 0. On definit

egalement l 'ensemble D(x) = {x} © C- = {x + y \ y EC-} qui contient toujours x.

On a alors le resultat suivant.

Theoreme 1. Soit x G S. Les trois enonces suivants sont equivalents :

(i) x e € ;

(ii) D(x) n 5 = 0 ;

(Hi) D(x)nS={x}.

Demonstration.

(ii) O (iii) est evident.

(i) => (ii) Supposons x G £ et montrons que D(x)DS — 0. Si D(x)C\S ^ 0 alors

prenons x = x+y G D(x)nS. On a que x G S et Cx = Cx+Cy > Cx et ainsi x $ S.

Page 30: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 21

(ii) <= (i) Supposons x £ £ avec x € 5. II existe un x G S tel que z — Cx

domine z — Cx, c'est-a-dire Cx > Cx. Alors C(x — x) >0 et y = x — x G C-, d'ou

x G D(x). Ainsi x G D(x) OS. •

On peut ainsi ecrire l'ensemble de Pareto comme suit

• £ = {x 6 Rn | D(x) C\S = {x}}.

Lorsque C- = 0 pour tout x G S on a que D(x)DS = 0 et D(x) nS = {£}, ainsi £ = S.

DefinissOns egalement l'ensemble D c{z) = {z} 0 avec = [0,+oo)fc.

L'image de £ dans I'espace des criteres est donnee par

£ c = { z e R k j D c(z) n5c = {z}}.

On montre alors que £c est l'image par C de £.

Theoreme 2. £ c = C£

Demonstration. Montrons que £ c C C£. Si z G £ c alors il existe x G S tel que

Cx = z c'est-a-dire z, G CS et il n'existe pas de x G S tel que Cx Cx. Ainsi x G £

et z G C£. Ainsi £ c c C£.

Montrons que C£ C £ c- Si z G C£ alors il existe x G £ tel que z = Cx. Mais alors

s i z G S c t e l q u e z = C x o i l n e p e u t p a s a v o i r C x < C x q u i e s t E q u i v a l e n t a z < z .

Done si z G C£ alors z G £c. Ainsi C£ C £c. M

2.5 Ponderation des objectifs

Nous nous concentrons sur la methode de ponderation des difFerents criteres pour

resoudre le probleme de la construction de £c.

Page 31: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 22

Posons A = { A G Rfc | A > 0 et XTe = 1} .

Nous allons etudier les problemes de la forme

{Max z\ = A TCx sujet a

x e S .

Nous avons un premier resultat.

Theoreme 3. Soit A € A et z\(x) = A Tz = A TCx. Soit x G S, six € argmax z\(x),

alors x est efficace.

Demonstration. Si x G S n'est pas efficace il existe x G S tel que Cx ^ Cx.

Puisque A G A on aura alors ATCx < ATCx ce qui contredit l'optimalite de x pour

Ce theoreme entraine que UAGA argmax z\(x) C £. Pour obtenir l'egalite des deux xes

ensembles, on doit tenir compte d'une condition dite de nullite.

Definition 1. On dit que les couts C\,C2, Ck satisfont a la condition de nullite s'il

existe X € A tel que ATC — 0.

Dans la suite, on supposera que les couts ne satisfont pas a la condition de nullite.

Pour arriver a notre resultat, on utilisera un theoreme d'alternative bien connu.

Th6orfeme 4. (Tucker [14]) Soient L, M et N respectivement des (rwi,n), (7713, n)

et (mi, n)-matrices avec L ^ 0. Alors une et seulement une des deux situations

suivantes est verifiee : (1) U existe x G Rn tel que Lx ^ 0, Mx ^ 0 et Nx = 0,

ou bien

(2) U existe y2 G R"12, y3 G Rms, y4 G R"*4 tels que

Page 32: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 23

{ LTy2 + MTj/3 -I- NTyA = 0,

y2 > 0 , y3 ^ 0.

Theoreme 5. Soit x € S et D — diag(djj) une (n,n)-matrice diagonale telle que

1 si Xj = 0,

0 si Xj £ 0

de telle sorte que Dx — 0. Alors, x € £ si et seulement si le systeme

d j j — <

Cu 0, Du ^ 0, Au = 0

n'a pas de solution.

Demonstration. (=>•) Si u € Rn est une solution au systeme, soit x = x + au. II

existe una >0 tel que pour tout a £ [0, a] on a x = x + au 6 S. En effet x = x + au

a pour composante Xj + aUj et est tel que Uj ^ 0 si Xj = 0, Uj G R si Xj > 0 (car

x £ S). Dans ce cas on prend

a = mm | j tel que Uj < o| >0.

Alors pour 0 ^ a <aona Ax — Ax + aAu — b + a0 = b et Cx = Cx + aCu > Cx

et x n'est pas efficace.

(<*=) Supposons le systeme inconsistent. Soit x € S et prenons u = x — x. Ainsi Au — Ax — Ax = b — b = 0 et

(Du)j = (Dx — Dx)j =• < Xj si Xj = 0,

k 0 si Xj ± 0

Page 33: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 24

d'ou Du ^ 0. On ne peut pas avoir Cu ^ 0. Comme Cu = Cx — Cx, Cx ne domine

pas Cx et x est efficace. •

Theoreme 6. Soit x E 5 et D = diag(djj) fe/ie definie au Theoreme 5. Alors

x e £ si et seulement si il existe 7T E Rfc, y3 E Rn, e£ y4 G Km tels que

( + DTy3 + ATy4 = 0

w > 0 , y3 ^ 0.

Demonstration. En utilisant le Theoreme 4, pn trouve qu'une et seulement une

des deux situations suivantes est verifiee :

(1) il existe x, G Rn tel que Cx ^ 0,' Dx ^ 0 et Ax = 0

ou bien

(2) il existe it E Mfc, y3 G Rn et y4 G Rm tels que

f 7r + DTy3 + >lTy4 = 0

y 7r > 0 , y3 ^ 0. I

Pax le Theoreme 5, la premiere situation est non verifiee et le resultat suit. •

Remarque 7. II existe A > 0 tel que ATC = 0 si et seulement si {y E Rn | Cy ^ 0} —

0. Done dire que C-^0 est equivalent a demander qu'il n'existe pas A G A avec

A = { A G R* | A > 0 et XT1 = l}

tel que ATC = 0. Cette remarque est un cas particulier du Theoreme 4 avec C = L, M = N = 0 et m$ = m4 = 0.

Th6oreme 8. Soitx E S. Six E £ il existe alors un A G A tel quex E argmaxz\(x) a?€S

ou z\(x) — ATCx.

Demonstration. Si x G 5 est efficace, d'apres le Theoreme 6 il existe ix E Rfc,

Page 34: La methode de tir pour des problemes de programmation ...

Chapitre 2.: Programme lineaire multicritere 25

y3 G Mn et y4 G Rm tels que

f C^ir + DTy3 + ATy4 = 0

I 7r > 0 , y3 ^ 0.

Utilisons a — wTl > 0 et A = ^7r de telle sorte que A G A, nous avons

I {Cf rX)a + DTy3 + ATy4 = 0

\ A>0, y3Z0.

On a bien CFX ^ 0 pax la condition de nullite. Ainsi, pax le Theoreme 4, le systeme

C (ATC)x ^ 0 < Dx ^ 0 [ Ax = 0

est inconsistent. Mais pour tout x & S on a D{x — x) ^ 0 et A(x — x) — Ax — Ax =

6 — 6 = 0. On ne peut done pas done avoir ATC(x — x) > 0, d'ou XTCx ^ ATCx car

XTC(x — x) est un scalaire. Done on a x G argmax z\(x) ou z\(x) = ATCx. • X(zS

2.6 Connexite de l'ensemble Ec

Nous presentons dans cette section quelques definitions et resultats qui vont etre

utiles pour montrer la connexite de l'ensemble de Paxeto S et son image dans I'espace

des criteres Sc.

Theoreme 9. Si S a un point efficace, alors au moins un point extreme de S est

efficace.

Demonstration. Par le Theoreme 8, si x G S est efficace alors x est une solution

optimale de z\(x). Mais, s'il existe une solution optimale pour un probleme de pro-

grammation lineaire, alors il existe une solution optimale qui est un point extreme. •

Page 35: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 26

Definition 2. Etant donnee A une (m,n)-matrice de rang m, si B est une (m,m)-

sous-matrice de A de rang m, on dit que B est une base de A et on partitionne

A = [B, N]. Etant donnee cette partition de A, on partitionne de fagon correspondant

la matrice des couts C = [Cb,C^\. La matrice des couts reduits des colonnes hors

base est alors W = CU — CbB~XN.

Definition 3. On dit que B est une base efficace si et seulement si B est une base

optimale d'un probleme (PLM)X ou A 6 A.

Puisque la ligne des couts reduits du problemt (PLM)X est donnee par ATW, on

dit que la base B est efficace si et seulement si le systeme

f X T W ^ 0 \ A > 0

est consistent.

Theoreme 10. Soit x G S un point extreme associe a la base efficace B, alors x est

efficace.

Demonstration. Puisqu'il existe A G A pour lequel B est une base optimale du

probleme (PLM)A , par le Theoreme 4 on conclut que x est efficace. •

Theoreme 11. Soit x G S un point extreme efficace. Alors, il existe une base efficace

B associe a x.

Demonstration. Puisque x est un point extreme efficace, par le Theoreme 8, il

existe A G A tel que x maximise le probleme (PLM)A. Alors, puisque x est un point

extreme il existe une base optimale associee a x qui sera une base efficace. •

Par consequent, en trouvant toutes les bases efficaces par les Theoremes 10 et

11, on peut deduire tous les points extremes efficaces.

Definition 4. On dit que deux bases B et B sont adjacentes si et seulement si on

peut obtenir I'une a partir de I'autre en un seul pivot.

Page 36: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 27

Definition 5. Soit B une base efficace. Alors, on dit que Xj est une variable hors

base efficace a I'egard de B si et seulement si il existe X £ A tel que :

f XTW S 0 \ XTw* = 0

\

ou vji est la jeme colonne de W.

Definition 6. Soient B une base efficace et Xj une variable entrante hors base. Alors,

tout pivot realisable de B (y compris tous les elements avec un pivot negatif dont la

v a r i a b l e d e b a s e a s s o c i e e e s t d e g e n e r e e ) e s t u n p i v o t e f f i c a c e a I ' e g a r d d e B e t X j .

Theoreme 12. Soit B une base efficace. Alors, tout pivot efficace de B donne une

base efficace adjacente B.-

Demonstration. Soit • Xj une variable entrante associee au pivot efficace de B.

Alors, il existe A € A tel que : ( X tWB^0

ATU?B — 0.

Puisque les couts reduits ne changent pas lors du pivotement dans la base d'une

variable hors base dont sa valeur est egal a zero, nous avons done

f >?Wb ^ 0 A T K = 0 .

Ainsi, B est une base efficace adjacente. •

Theorfeme 13. Soient B et B deux bases efficaces adjacentes telles que I'on peut

obtenir I'une a partir de I'autre par I'intermediaire d'un pivot efficace. Soient x et

x deux points extremes associees d B et B, respectivement. Alors, I'arete 7(5, x) est

efficace c'est-a-dire *y(x,x) c S.

Demonstration. Ce resultat decoule du fait que nous pivotons dans la base une

variable hors base dont le cout reduit du (PLM)A est egal a zero. •

Page 37: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 28

Theoreme 14. Soit Xj une variable hors base a I'egard de la base efficace B. Soit

W la matrice des couts reduits associee a B. Alors, tous les pivots realisables (meme

ceux avec les elements pivots negatifs) qui peuvent etre faits par la colonne d'entree

Xj sont des pivots efficaces si et seulement si le soxts-probleme

MaxeTv

sujet a —Wy + uP 8 + Iv = 0

O^ye Rn-m

O g . a e R 0 ^ V € Rfc

a zero comme valewr optimale de la fonction objectif.

Demonstration. A partir de la Definition 5, Xj est une variable hors base efficace

a I'egard de la base B si et seulement si le systeme

MinOTA

sujet a

WTX 0 (w*)T\ = 0

IX e A > 0

a zero comme valeur optimale de la fonction objectif.'Comme les deux premieres

contraintes sont equivalentes a

f —wTx z o \ (wi)TX ^ 0

Page 38: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere

nous avons le dual

29

Max eTv

sujet a —Wy +1iPS + Iv + It = 0

0 ^ y e Rn_m

O ^ S e R

0 ^ v , t e R k .

Le vecteur d'ecart t n'est pas necessaire parce que s'il existe t, > 0, nous pouvons

augmenter la valeur de la fonction objectif en posant U = 0. •

Definition 7. Soient B et B deux bases efficaces. Si I'une peut itre obtenue a, partir

de I'autre en effectuant seulement des pivots efficaces, B et B sont appeles des bases

connexes.

Theoreme 15. Toutes les bases efficaces sont connexes.

Demonstration. II suffit de montrer que deux bases arbitrages efficaces B et B

sont connexes. Soient A, A 6 A deux vecteurs de ponderations pour lesquels B et B

sont optimales respectivement pour (PLM)A et (PLM)A. Supposons que B est la base

de depart, considerons le probleme de programmation lineaire parametrique dont la

fonction objectif est

(A+)TC = \TC + ${\TC- XTC) ou $€[0,1].

Apres avoir effectue une serie de pivots de programmation parametrique, nous

arrivons a la base B qui est optimale pour (PLM)A. Les pivots sont efficaces car

A+ = $A + (1 — $)A 6 A pour tout $ G [0,1] . Si B = B, on a done le resultat. Si

B ^ B, puisque B et I? sont a la fois des bases optimales pour (PLM)A, nous savons

que B peut etre obtenu 4 partir de B en effectuant seulement des pivots optimaux.

Ainsi, B et B sont connexes. . •

Page 39: La methode de tir pour des problemes de programmation ...

Chapitre 2 : Programme lineaire multicritere 30

Theoreme 16. Soit y-(x,v) une arete efficace non bornee de S. Alors, x est un point

extreme efficace et x est associe d une base efficace B.

Demonstration. Parce que S est contenue dans l'orthant non negatif, 1'arete non

borne /x(x, v) contient un point extreme et ce point extreme est x. Puisque /x(x, v) est

efficace, x est efficace. Par le Theoreme 11, il existe une base efficace B associee a x. •

Theoreme 17. En appliquant le test du sous-probleme du Theoreme 14 et pivo-

tant entre toutes les bases, nous sommes done en mesure d'identifier tous les points

extremes et toutes les aretes efficaces non bornees de S.

Demonstration. Ce resultat suit du Theoreme 15 (toutes les bases efficaces sont

connexes) et du Theoreme 16 (chaque arete .efficace peut etre identifie a partir des

bases efficaces). •

Definition 8. Deux points extremes efficaces de S sont connexes par arete s'ils

peuvent etre relies par une suite d'aretes efficaces de S.

Theoreme 18. Tous les points extremes efficaces de S sont connexe par aretes.

Demonstration. II suffit de montrer que deux points extremes efficaces arbitraires

x et x de S qui sont associees respectivement a B et B sont connexes par aretes.

D'apres le Theoreme 15, 1'arete 7(x, x) est efficace et, par le Theoreme 18, les deux

bases B et B sont connexes. On a done le resultat. •

De ces resultats on obtient que l'ensemble de Pareto £ est connexe. Comme

£c = C£, £c est l'image d'un connexe par une fonction continue, l'ensemble £c est

egalement connexe.

Page 40: La methode de tir pour des problemes de programmation ...

Chapitre 3

Probleme bicrit&re : methode de

tir

3.1 Introduction

Nous montrons que pour le cas bicritere, la surface da Pareto £c est une ligne

polygonale. Nous developpons alors une methode de tir afin de construire cette ligne

polygonale.

3.2 Le probleme bicritere

Un probleme bicritere dans Rn s'ecrit sous la forme :

(PLBC) <

Max z\ = Cix

Max z2 = c2x

sujet a Ax = b

x > 0

ou A est une (m, n)-matrice, b est une (m, l)-matrice (ou un m-vecteur colonne),

les cj (I = 1,2) sont deux (l,n)-matrices (ou des n-vecteurs lignes) et x est une

31

Page 41: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode. de tir

(n, l)-matrice (ou un n-vecteur colonne). Posons

une (2, ra)-matrice.

L'ensemble des solutions realisables est

S = {x G Rn | Ax = b et x > 0}.

On suppose que c\ et c2 sont lineairement independants, ainsi

(1 — A, A)C ^ 0 pour tout A G (0,1).

II suit que Ci et c-i ne satisfont pas a la condition de nullite.

Le probleme obtenu par ponderation des objectifs est alors :

{Max z\(x) = [(1 — A)cj 4- Ac2]x sujet a

x G S.

On sait que £ = M argmax z\(x)

Ae(o,i) x€S

et que £ c = C£.

On suppose dans la suite que S est non vide et borne (compact).

Page 42: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir 33

Pour chaque A G (0,1), l'ensemble

Fx = argmaxzA(x) x€ S

est une facette de S (point, arete,...) orthogonale a (1 — A, A)C. De plus, dans notre

cas Fx est non vide et bornee (compacte). C'est egalement l'enveloppe convexe des

points extremes de S qui sont des points optimaux. L'image CFx de Fx par l'ap-

plication de Rn dans R2 definie par x i—> Cx est une facette de R2 : un point ou

un segment. Cette image ne peut pas etre un polygene car elle ne contient que des

points non-domines (des points de £c). De plus l'image CFx est l'enveloppe convexe

d'iniages des points extremes. Ainsi, si l'image est un segment, chaque extremite du

segment est l'image d'un point extreme de F\.

Puisque

£o= |J CF> A€(0,1)

et qu'il y a un nombre fini de facettes associees a S, £ c sera l'union d'un nombre fini

de points ou segments. De plus £c est connexe (et compact).

Theoreme 19. £c est une ligne polygonale.

Demonstration. Si deux segments distincts, images de deux facettes, se touchent,

on a les configurations possibles suivantes :

Dans chacun de ces configurations il y a au moins trois extremites distinctes et

Page 43: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir 34

l'enveloppe convexe de ces extremites est dans Sc- En consequences il y a des points

sur les segments qui sont domines par d'autres points, ce qui est impossible car les

points des segments sont dans l'ensemble de Pareto £c. De la meme fagon il ne peut

y avoir plus de deux segments se joingnant a leurs extremites car sinon on aura une

configuration de la forme

ce qui est impossible pour la meme raison que precedemment. •

Theoreme 20. Pour chaque segment de la ligne polygonale Sc il existe un unique

A € [0,1] tel que (1 — A, A) soit perpendiculaire au segment.

Demonstration.

Prenons iine facette Fx tel que CF\ soit au moins un sous-segment du segment.

Alors, il existe deux points distincts du segment Cx\ et Cx2 € CFx avec Cx\ Cx2.

(l-A.-J)

Page 44: La methode de tir pour des problemes de programmation ...

•Chapitre 3 : Probleme bicritere : methode de tir 35

Mais (1 — A, A)Cx x = (1 — A, \)Cxi d'ou (1 — A, A)C(xi — x2) = 0 et (1 — A, A) est

orthogonal a Cx\—Cx2 c'est-a-dire au segment entier. Si deux autres points distincts sont les images de deux points de F\> pour un autre A' ^ A, alors (1 — A', A') est aussi

orthogonal au segment. Alors (1 — A', A') et (1 — A, A) sont proportionnels et done

identiques car A, A' € (0,1). •

Corollaire 1. Chaque segment est l'image d'une seule facette. •

Pour chaque vecteur A € (0,1), on pose (1 — A, A) = p(cos6, sinO) avec

p = \/((l — ^)2 + ^2) et 0 € [0,7r/2].

La seule configuration possible pour deux segments consecutifs de £c est :

et done Xtj+i > \t~ij. Posons

(1 — Ai,j+ i) = Pi,i+i(cosdi t i+i, sind^i+i)

(1 - Ai_i,i, Ai_i,i) = pi_i,i(cos0I_1)I, sin9i-ij)

on alors

0 < 0I-1,1 < DITI+1 < 7T/2.

En conclusion, la ligne polygonale Sc est constitue de L segments d'extremites

Page 45: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir 36

Qi-i et Qi (I = 1,...,L) auquel il est associe un Aj_i,j. Ainsi £c est completement

decrit par la suite des segments

{([Qi-i,Qi] , ^i-i,0}f=i

3.3 Condition d'optimalite du probleme (P\)

En partitionnant la matrice A du probleme (PLBC) en deux sous matrices B et

N, A = [B,N], ou B est une matrice inversible, on ecrit

xb = B_1[6 — Nxn]

et

z x{x) = (1—A, A)CBS-1[6—ATO:IV]+(L—A, \)CnXn = (1—A, A)CBJB-16+(1-A, X^Cm-CbB^N^.

La solution de base (xB = B~lb > 0,Xn = 0) est optimale lorsque

(1 - A, A)[Cjv - CbB^N] < 0

ce qui est equivalent a

(1 — A)Cuv + \C2N — 0

ou ( ( C\N = C\N — C\bB 1iV

\ C2JV = &2N ~ OibB~XN.

On obtient ainsi un systeme de n — m inegalites

A(CIJV C2N) > c1N.

Page 46: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir 37

On definit A et A en utilisant

X = max I * tel <lue - c2Ni > oj et A = max{0, .V}

A' = min {~g1N^2^ | i tel que c1Ni - c2Ni < o| et A = min {l, A'} .

Ainsi tant que A € [A, A], la solution de base demeure optimale et

(xb = B~ xb > Q,xn = 0) 6 argmaxzA(z)-xes

Oil a done montre le resultat suivant :

Th6orfeme 21. A chaque solution de base realisable optimale pour z\ on peut hi

associer un intervalle [A, A] contenant A et cette solution de base est optimale pour

tout A G [A, A].

Theoreme 22. Chaque extremite des segments de £c est l'image d'au moins une

solution de base realisable de S.

Demonstration. On a montre que chaque extremite d'un segment est l'image d'un

point extreme de S. Comme a chaque point extreme correspond une solution de base

realisable le resultat suit. •

Theoreme 23. A chaque extremite Q d'un segment on peut associer un intervalle

[A, A] tel que si x E S et Cx — Q alors

x € F\ = aigmax. z\(x) pour tout A G [A, A]. xes

Demonstration. Supposons qu'il existe deux solutions de base optimales X\ et x2

telles que Cxi = Q ?= Cx2. On peut associer a un intervalle tel que

(1 — A,-A)Cxi — maxz\(x)

Page 47: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir

pour tout A € [Aj, Aj]. Comme Cx \ — Q = Cx2 alors on a

38

(1-A,A)Cxi = (1 - A,A)CX2

t pour tout A G [Aj, Aj] (i = 1,2) d'ou [Ai, Ax] = [A2, A2]. Si x G S et Cx = Q alors

et ainsi

pour tout A € [A, A].

(1 — A, A )Cx = (1 — A, A )Q — max z\(x) xes

x E Fx — argmax2A(x) xes

Theoreme 24. Supposons qu'au sommet Qi on associe [Aj, Aj] pour 1 = 0,L, alors

A i _ i = \ 1 - 1 j = A t p o u r t o u t I = 1 , L .

: li-M

(1~-*1-L1> A-\U

Demonstration. Prenons xj_i telle que Cxi-i = Q1-1, x\ telle que Cxi — Qi et

Xf,, = (1 — n)xi-1 + \ixi pour tout fi e [0,1]. Ainsi

Cx,j, = (1 - n)Cxi-i + fiCxt — (1 - n)Qi~ 1 +p,Qi

Page 48: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir

pour tout n G [0,1], alors l'image Cx^ est le segment On a

(1 ~ ^1-1,1, i-i,i)Cxn (1 — Xi-.iti)Cxi-i = (1 — Xi~iti)Qi

Mais

(1 - Aj-i.j, Xi-hi)Cx t-i = maxzA(_u(x) x€o '

done £i_i G Fai j,! et Aj_i(j € [A|_x, Aj_i]. Aussi on a

(1 — Xi-iiyXi-i^CXft —> (1 — Aj_i i , Aj_i,i)Cxi = (1 — Aj^i i, Xi-i,i)Qi

Mais

(1 - Aj_I,I, Xi-U)Cxi = maXZAw t(x) as€o

done xt G t et Aj_i^ G [A^ Aj]. On a montre que

{ X i - i , i G [Ai_i, A/_i] € [Aj, AJ]-

De la meme fagon, on montre que

{ A j , i + i G [ A j + 1 , A / + i ] Xi,i+i G [Aj,Aj].

Done

[Aj-i,i, Aj^+i] C [Aj,Aj] =» (Aj, Aj) =£ 0.

Si A G [Aj_I, Aj_i] n[Aj> Aj] 7^ 0, alors il existe scj_I telle que

Cxi-i = Qi-1 et (1 — A, A)Cxj_I = (1 — A, A)Qj_x = maxz*(x). x(£S

Aussi il existe xi telle que

Cxi — Qi et (1 — A, X)Cxi = (1 — A, X)Qi = maxz^x).

Page 49: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir 40

On a

(1 - A,AHCxt-i -Cxi) = 0 = (1 — A,A)(Qi—i -Qi)

done (1 — A, A) est orthogonal au segment [Q/-i,Qj].

Alors par unicite du A associe a [Q/-i, Q(], on peut conclure que A = Aj-i,/. Done

A(_i = Aj et de meme A; = Ai+1. •

L

En conclusion, on a £c = (J [Qj_i, Qi] avec i=i

{[Qi-i>Qj]) ^i-i,/}^=i oil 0 < Ao.i < .... < Aj-i.i < A^j+i < .... < < 1

* r \ i n ' I A o = 0 , A i = A / _ 1 ) I p o u r / = l , . . . , L et {Qi, Aj.A,]} out

\L = 1, Aj = AI>1+1 pour I = 0,...,L - 1.

3.4 Algorithme

Nous proposons dans cette section un algorithme qui s'appelle methode de tir.

On a vu qu'a chaque sommet Qi (I = 0, ...L) de £c on associe [Aj, A/]. L'idee consiste

a determiner ces sommets et en deduire les intervalles [Aj, A;] pour lesquels Qi cor­

respond a l'optimum de (P\) pour tout A € [A/, A;]. Les valeurs A^ et Aj sont obtenus

en utilisant les couts reduits de chacun des criteres et la condition d'optimalite.

Page 50: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir 41

Algorithm 1 METHODE DE TIR

ETAPE 0. Initialisation

- Liste des intervalles a explorer : V — {([0,1], A = 1)}.

- Liste des intervalles deja explores : Q — 0. ETAPE k = 1,2,3...

- Choisir et retirer de V l'intervalle le plus long, soit [A, A]. - Prendre A = |[A 4- A],

- Resoudre (P\) et calculer les A et A a partir des conditions d'optimalite. . , ^ f (U,A], A = A-A) si A-^0

- Mettre dans la liste V : < / r— ~ _ \ ([A, A], A = A - A) si A ^ 0.

- Mettre dans la liste Q : ([A, A], A = A — A).

- Terminer lorsque V = 0.

Cet algorithme a ete programme en MATLAB par Hichem Ayadi [2].

3.5 Exemples

Dans cette section nous utilisons la methode de tir sur les exemples de probleme de

programmation .lineaire bicritere deja presentes dans le premier chapitre et donnons

les resultats obtenus.

Page 51: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir 42

3.5.1 Exemple 1

Rappelons le premier probleme bicritere de la Section 1.2 :

Max z\ = x\ + 6x2

Max Z2 = 2xi — 4^2

X\ < 20

x2 < 15

X\ — 2X2 11

2xi — X2 < 34

2xi +X2 < 48

X\ + x2 < 29

£1 •+• 2x2 40

Xi + 3X2 ^ 52

Xi + 6x2 ^91 xv,x2 > 0

En utilisant la methode de tir, nous obtenons les resultats suivants :

A A A -ZA Zl Z2 Xi X2 Etape de l'algorithme

0 0.2308 0.2272 64.4091 91 -26 13 13 3

0.2308 0.3333 0.2820 58.6667 88 -16 16 12 6

0.3333 0.4545 0.3426 52.4755 "84 -8 18 11 4

0.4545 0.5238 0.5000 38.5000 79 -2 19 10 1

0.5238 0.6000 0.5619 34.2857 68 8 20 8 7

0.6000 0.6842 0.6040 31.8396 56 16 20. 6 5

0.6842 1.0000 0.7619 27.0000 43 22 19 4 2

(PH

sujet a

Page 52: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir

100

-10

-20

-30

-40

-50

FIGURE 3.1 - Ensemble de Pareto Ec.

3.5.2 Exemple 2

Rappelons le deuxieme probleme bicritere de la Section 1.2 :

Max Z\ = X\ + 6x2

Max z-i = 2xi — 4x2

x\ < 20

X\ — 2X2 ^ 11

2XJ — X2 ^.34

X\, X2 > 0

sujet a <

En appliquant la methode de tir, nous avons les resultats suivants

Page 53: La methode de tir pour des problemes de programmation ...

Chapitre 3 : Probleme bicritere : methode de tir 44

A A A -ZA Zl *2 Xi *2 0.6000 0.6842 0.6421 30.3158 56 16 20 6

0.6842 1.0000 0.8000 26.2000 43 22 19 4

-10

-20

-30

FIGURE 3.2 - Ensemble de Pareto £c.

Comme notre programme ne traite pas le cas non borne, nous ajoutons la contrainte

X2 < R- Si nous augmentons la valeur de R, pour A = 0.6 nous obtenons le rayon

(56,16) + Ml, -2/3) = (*i(/i), Z2O1)).

Page 54: La methode de tir pour des problemes de programmation ...

Chapitre 4

Exemples numeriques : problemes

de melange

4.1 Introduction

Dans ce chapitre nous illustrons la methode developpee au chapitre precedent a

l'aide de deux problemes relies a des applications reelles de problemes de melange. La

premiere illustration est un probleme de diete pour pore ou les deux criteres tiennent

compte du cout et des rejets d'azote de la diete, il a ete traite en [8]. La seconde

illustration est un probleme de melange en metallurgie ou les deux criteres tiennent

compte du cout et du poids du melange, il a ete traite en [7].

Signalons qu'un probleme de maximisation se ramene a un probleme de minimi­

sation par cette relation :

max zix) = —min (-z(x)) xes 16s v w/

Ceci implique, par la suite, que la surface de Pareto devient convexe dans le cas

de minimisation (rappelons qu'elle est concave dans le cas de maximisation). Un

45

Page 55: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 46

probleme bicritere sous forme de minimisation s'ecrit sous la forme :

Min z\ = C\X

Min 22 = c-ix

Ax = b

x > 0.

4.2 Probleme de diete animale ^

4.2.1 Le probleme

La concentration d'elevages de pores dans certaines regions geographiques a plu-

, sieurs consequences environnementales. Un des problemes associes aux surplus d'ef-

fluents provenant de 1'elevage porcin est leur teneur elevee en azote. L'azote excrete

provient directement des fractions non digestibles et des apports excedentaires de

nutriments de la diete. La diminution des rejets peut se faire par une amelioration de

I'utiUsation metabolique de l'azote. Cette utilisation metabolique peut etre amelioree

par l'augmentation de la qualite des proteines de la diete ce qui a des consequences

inevitables sur le cout de la diete. On ajoute alors au module classique de diete une

fonction objectif qui tient compte de rejets d'azote.

4.2.2 Modele classique de formulation d'une diete animale

Le probleme de diete a cout minimum a ete introduit en [22] et repris en [5,6,9].

Une diete animale est un melange d'ingredients nutritifs disponibles qui doit satisfaire

a des besoins nutritionnels de subsistance et/ou de croissance. Associons une variable

de decision a chacun des n ingredients disponibles de sorte que x = (xj)"^ soit le

vecteur de decision de notre modele. La variable Xj represente la quantite (en kg)

du jiimt ingredient dans une unite de poids (1kg) de la diete. La fonction objectif

du modele est le cout de la diete. On associe un cout a chacun des ingredients de

sorte que c = (cj)"=1 soit le vecteur des couts, ou Cj represente le cout unitaire du

(PLBC) < sujet a

Page 56: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 47

jxbne ingr^dient ($/kg). Ainsi le cout d'une diete x = (xj)"=1 est z — cx = ]C"=i cixi

qu'il faut minimiser sur l'ensemble des dietes admissibles que nous noterons par S,

c'est-a-dire l'ensemble des dietes qui satisfont a toutes les contraintes du probleme.

Le module classique de formulation d'une diete animale a moindre cout est alors

(P) mm z — cx

sujet a

x G S = |x € Kn | Ax = b et x o|.

Les contraintes imposent des limites aux quantites d'ingredients et de nutriments

de la diete. En particulier on produit une unite de poids (1kg) de la diete, done

X^=i Xj = 1. Certains ingredients, ou combinaisons d'ingredients, peuvent etre im­

poses dans la diete ce qui donnent des contraintes de type =, de type > ou de type

<. Pour satisfaire les besoins en proteinies, on introduit les contraintes suivantes sur

le groupe des l acides amines contenus dans les ingredients. On pose

n

J2a49Xj>V (i = 1,...,!/) (4.1) i=i

ou aafj9 represente la quantite d'acide amine I digestible contenue dans une unite

d'ingredient j et b* est la quantite minimale requise d'acide amine I digestible. Fi-

nalement, la diete doit satisfaire des besoins de phosphore digestible note b*h, d'ou

I>f X; £ % I4'2) j=l

oil phf9 est la quantite de phosphore digestible contenue dans une unite d'ingredient

j.

4.2.3 Modelisation des rejets d'azote

Les rejets d'azote sont directement relics aux surplus de proteines (abides amines).

Pour modeliser les rejets nous etablissons le contenu en proteines d'une diete et tenons

Page 57: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 48

compte de la partie de ce contenu qui est effectivement assimilee.

Le contenu en proteines d'une diete x = (x,)"=1 est prx = Y =iPrixj' oh prj

est la quantity de proteines par unite d'ingredient j. II se decompose en deux par­

ties : une partie digestible et une partie non digestible. La partie non digestible est

completement rejetee par 1'animal et forme une partie du rejet total. L'autre pax-

tie du rejet total correspond a la quantite de proteines digestibles donnee en exces.

Cette quantite digestible en exces est constitute des surplus des l acides amines de

la diete. Pour chacune des l acides amines, ce surplus est donne pax la contrainte

(4.1) du modele et vaut Y^= I aa-fj9xj ~ b* puisque fy* represente la quantite d'acide

amine de type I qui doit etre assimilee pour assurer la eroissance du pore. Le rejet

de proteines rpr(a:) est alors donne par le contenu en proteines de la diete duquel on

retranche la quantite de proteines effectivement digeree donnee par ~ bpr ce

Ainsi, diminuer le rejet total rpr(x) revient a diminuer le contenu en proteines pTx

de la diete en maintenant fixes les besoins b^. en proteines.

4.2.4 Modele a deux criteres

Lorsque nous considerons le cout de la diete et les rejets d'azote, le probleme est :

qui donne rpr = PrX — 6^.. (4.3)

mm z\ — cx mm z<2 = prx

Sous forme parametrique, ce probleme s'ecrit:

min^A = (1 — A)cx H- Xprx

(PA(c,Pr)) < sujet a

x E s,

Page 58: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange

avec 0 < A < 1.

49

4.2.5 Donnees typiques

Les ingredients et les variables du modele sont enumeres au Tableau 4.1. On

retrouve a la Figure 4.1 le modele au complet avec les valeurs des coefficients tech­

niques et les prix des ingredients. D'apres la nature du probleme (les contraintes),

l'ensemble S est borne.

Page 59: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange

Type Ingredient Variable

Cereales avoine Xi bl6 dur x2

maus x3 orge Xi

Tourteaux d'oleagineux tourteau de soya x5 tourteau de colza

Sons produits vegetaux remoulage de ble dur X7 • gluten feed de ble x*

Sous produits animaux farine de viande 50% X9 farine de plumes Xio gras animal xn

Mineraux phosphate bicalcique Xl2 carbonate de calcium Xl3 chlorure de sodium Xu

Acides amines de synthese L-lysine Xl5 DL-methione xie L-threoninie xi7 L-tryptophane Xl8 .

Premix quantite imposee 5g/kg X\9

TABLEAU 4.1 - Liste des ingredients disponibles.

Page 60: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 51

A* SOO«OM< k

Xi » xs Xl X3 » xr x> Xi X10 X11 Xtt Xt3 XM Xlt Xft Xt7 Xlt XI* Type 0 O 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 - 59*9

taarMfente restraints Xt X2 xs XI XU XI Xf » M Xlt Xll X12 Xll XM Xt« Xlt »? XU xw 1 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 s 2009/kg 0 1 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 s 4009*0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 • s 800 9*0 0 O 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 s 800 9*0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 s 509*9 0 O 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 s 55 8 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 s 509*8 0 a 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 3 309*0 0 a 0 0 0 , 0 0 0 o 0 1 0 0 0 0 0 0 0 0 S 509*0

Xl xz Xl X4- xs X* xr » XI Xlt Xll XI2 XU XM xie XM XlT XU XU 1800 2450 2850 2280 1940 1510 1850 1850 2175 2290 7110 0 0 0 3380 4130 2838 4770 0 *. 2414 kca*

•orftaar XI » XS XI XB XI xr u Xt X10 XU XI2 Xtt XM X« XU Xll Xlt XI* 0.1 0.1 0,04 0,1 0* 0,4 0,2 1.7 8 3.4 0 1* o* 385 0 0 0 0 0 £ 19*9

Xf M2 XI X* x» Ml xr XI » Xlt Xll Xtt Xtt XI4 Xlt XM XlT XU Xlt 1.1 0.8 0.4 0.7 3,4 8,3 1* 1,2 78 w 0 220 305 3 0 Q 0 0 0 * 5,4 9*9

ACMMMIMM <B0e«! Me* XI XZ XS XI XI XI xr XI XI Xlt Xll Xll XU XI4 xie XM XlT XU XU

Lysine 3 2.5 1.8 2.0 24.8 13* 4,8 2,0 2S,5 15,0 0 0 0 0 798 0 0 0 0 fc «*9*0 Tfcrionfne 2.4 2,7 2.5 2,0 15* 10.8 3.8 3.4 16,2 31.3 0 0 0 0 0 0 980 0 0 & 4,39*9 mthlonin. 1.3 1.5 1,5 1.4 5,8 8 1.8 1.8 7 4* 0 0 0 0 0 990 0 0 0 £ Mfl*9 Mfchloaine+Cyttlne 3* 3.7 3* 3,4 11,8 12,8 4.4 3,8 10,4 34.7 0 0 0 0 0 890 0 . 0 0 £ 3,99*0 Tryptopfcene 1 1.1 0,4 1 5,2 3,3 1.8 1,2 2,8 4,8 0 0 0 0 0 0 0 885 0 £ 1,29*9 Isoteocine 2.8 3,4 2,7 2.8 18.7 10,8 4 J,s 13,4 32,4 0 0 0 0 0 0 0 0 0 fc 3.79*9 VsHm 4 4 3,8 4,1 18,3 13,1 5,4 4,8 21.3 49,4 0 0 0 0 0 0 0 0 0 St 4,59*9 Leucine s,e 8.4 8.5 S.7 29* 18,8 7,7 8.9 31.8 57 0 0 0 0 0 0 0 0 0 & 8.79*9 PtifaytetanJne 4.1 . <5 3.7 4.1 20* 10,8 5.1 4.5 18,4 34.5 0 0 0 0 0 0 0 0 0 £ 4.09*9 Pfcfayte<aniR*+ryroeine 8* 7.1 8.8 8,5 34,5 18.8 t js 7,8 29,8 53,5 0 0 0 0 0 0 0 0 0 & 8,39*9 HtetkUne 1.7 22 2,1 I* 10,9 7,4 3,3 3.1 9* 0,9 0 0 0 0 0 0 0 0 0 £ 2.19*9 Argiow* 5.8 4.7 3* 4 31,8 17,8 8j5 7.2 31 47* 0 0 0 0 0 0 0 0 0 5£ 2,49*9 Pool des as ooo-«*seatle9e* 40,75 57,38 38,30 48,58 208.1 144 * 72,37 81,15 254,4 357,1 0 0 0 0 0 0 0 0 0 I 43,44 gftg

fttoepfeore <aeeetible X1 X? XS XI XS X0 XT XI XI X» Xlt Xtt X13 XM x« XU Xl7 Xlt xtt 0.7 1,7 0,4 1* 1,» 2.4 3.3 2,6 31,4 1.« 0 180.4 0,2 0 0 0 0 0 0 £ 2JS*9

Vecteur de co&ts dee tegridieiit*: prix iS*a) de* in9redfent» (evrH 2W3) XI tt XI M Q » XT HI » X« XII IQ Xt3 Xt4 Xtt Xtt Xt? XU X10

0,222 0,212 0,171 0,206 0,32 0,242 0,158 0,171 0,318 0,391 0,448 0,42 0,033 0,016 3,150 3,»00 4,750 50,50 2,875

Vecteur dee rejet* (fezote: profcttnea br»t*« (gAg) XI X2 » X« Xt » O » XI Xtt »l Xll Xl* XM Xtt XM> XI7 XU X1« 98 14$ 81 101 4S3 337 154 147 $40 845 0 0 0 0 798 990 731 853 0

FIGURE 4.1 - Coefficients techniques du modele-

4.2.6 Resultats

Les resultats sont donnees au Tableau 4.2 et a la Figure 4.2. lis sont obtenus a

l'aide du logiciel MATLAB en appliquant la methode developpee au chapitre 3. Le

Tableau 4.2 montre la variation du parametre A et donne les sommets efficaces dans

Page 61: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 52

I'espace des criteres qui sont les valeurs du cout de la diete z\ et du contenu en azote

z2 suivant les difFerentes bases. La courbe de Pareto est donnee a la Figure 4.2.

A A A zx zl *2 0 0.0879 0.0439 0.2125 0.2153 0.1520 0.0879 0.1171 0.1143 0.2081 0.2154 0.1514 0.1171 0.1394 0.1282 0.2071 0.2160 0.1469 0.1394 0.2287 0.1729 0.2038 0.2169 0.1415 0.2287 0.3679 0.2321 0.1993 0.2178 0.1384 0.3679 0.3859 0.3769 0.1878 0.2190 0.1363 0.3859 0.3927 0.3896 0.1868 0.2197 0.1352 0.3927 0.4113 0.4020 0.1857 0.2202 0.1344 0.4113 0.4337 0.4160 0.1844 0.2279 0.1234 0.4337 0.4418 0.4377 0.1821 0.2304 0.1201 0.4418 0.4492 0.4489 0.1808 0.2333 0.1165 0.4492 0.4642 0.4567 0.1799 0.2352 0.1141 0.4642 0.5051 0.5000 0.1744 0.2390 0.1098 0.5051 0.6551 0.5970 0.1618 0.2392 0.1095 0.6551 0.6890 0.6720 0.1520 0.2403 0.1090 0.6890 1.0000 0.7525 0.1411 0.2441 0.1073

TABLEAU 4.2 - Resultats.

Page 62: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 53

0.155

0.15

0.145 O N

0.14

E 0.135

0.13

0.125

0.12

0.115

0.11

0.1 215 0.225 0.23 0.245 0.22 0.235 0.24

coGt

FIGURE 4.2 - Courbes de Pareto : rejet d'azote vs cout de la diete.

4.3 Probleme de metallurgie

4.3.1 Le probleme

Une operation courante dans les fonderies consiste a utiliser des materiaux, par

exemple de la ferraille a recycler, afin de constituer un melange ayant des proprietes

desirees. Ces proprietes sont appeiees les specifications du melange, ce sont les teneurs

du melange par rapport a certains elements chimiques de base.

En premier lieu nous decrirons le probleme de base qui consiste a faire un melange

a cout minimal tout en verifiant des contraintes sur les specifications. C'est un

Page 63: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 54

probleme classique de melange resolu par la programmation lineaire.

En second lieu, nous disp'osons d'un premelange c'est-a-dire d'un melange ini­

tial plus ou moins bien fait qui ne satisfait pas a toutes les contraintes sur les

specifications. Nous voulons corriger ce premelange en ajoutant des materiaux de

fagon a ce que le nouveau melange obtenu.satisfasse a toutes les contraintes sur

les specifications. C'est le'probleme de correction d'un premelange. Cette correction

peut se faire a cout minimal ou a poids minimal. Nous avons ainsi une formulation

bicritere et nous identifierons la surface de Pareto de ce probleme qui donne le lien

entre les solutions a cout minimal et a poids minimal. Nous verrons en particulier que

la solution a cout minimal ne correspond pas toujours a la solution a poids minimal.

4.3.2 Probleme de base : Description et formulation

Description des elements du probleme de base

On dispose de N materiaux pour produire un melange de poids unitaire. Posons

7rn le poids du n-ieme materiau dans le melange final (n= 1,..., N).

Le poids du melange sera n

•Zpoids = ^ ] T^n (4-4) n=l

et Tfn > 0 pour n = l,...,N. (4.5)

Les materiaux sont a couts unitaires Cn (pour n=1,..., N). Le cout du melange

sera N

^COUT = ' cn^n- (4-6) n=l

Les specifications du melange et des materiaux sont les quantites (proportions %

ou teneurs) bien connues d'elements chimiques de base (aluminium, carbone, chrome,

cuivre, fer, etc) contenues dans une unite de poids du materiau. Au total typiquement

Page 64: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 55

il peut y avoir entre 10 et 20 elements chimiques de base qui caracterisent le melange.

Chacun des materiaux est caracterise par M specifications notees Sm>n (m= 1,..., M).

On determine les specifications du melange par simple combinaison lineaire des

specifications des elements du melange. Si nous notons par specm la m-ieme specification

du melange, nous aurons alors

Les specifications du melange sont soumises & deux types de contraintes.

Type 1. Chacune des specifications doit etre dans un intervalle bien determine c'est-

a-dire

n (4.7.)

spec£Jm < specm < specJJJ"31 pour (4.8)

ou spec™" > 0, respectivement spec^Jax < 1, est la valeur minimale, respectivement

maximale, permise pour la m-ieme specification du melange.

Page 65: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 56

FIGURE 4.3 - Specifications couplees.

Type 2. Les specifications peuvent etre reliees entre elles par J relations lineaires de

la forme

( - 1 1 J,rnSpecm < = . > 0j. (4.9)

m=1 I > J pour j=1,..., J. Par exemple a la-Figure 4.3 nous illustrons une situation ou il y a

4 liens entre les specifications de deux elements chimiques notes A et B. Le couple

de specification (spec^, specB) doit etre a l'interieur du quadrilatere delimite par les

4 droites donnees.

Formulation du probleme de base

On cherche un melange de poids unite, c'est-a-dire 2p0ida = 1, a cout minimum

satisfaisant aux contraintes de types 1 et 2. Les variables de decision sont les 7rn pour

n= 1,..., N. La formulation est done

Page 66: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 57

(p) <

mill £icout — y^n—1 j sujet a

(0 Eti*« = i;

(ii) pour m = 1,..., M :

EN n= 1 5m,n^n

<- cnAr»max S specm

> spec| ,mtn . m »

(iii) pour j = 1,..., J :

£n=l 5Zm=l aj,mSm,n|

(iy) TTn > 0 pour n=l,...,N.

Pour ce probleme l'ensemble des solutions realisables S dans I'espace des decisions

RN est borne selon les contraintes (i) et (iv). II suffit alors que l'ensemble soit non-

vide pour avoir au moins une solution optimale.

Exemple num£rique.

Ensemble realisable non-vide: une solution optimale- Chacune des 11 specifications

du melange a produire doit satisfaire a 2 contraintes, il y a ainsi 22 contraintes

concernant la concentration des elements chimiques de base dans le melange. Les

specifications minimales et maximales sont enumerees au Tableau 4.3. II y a N = 8

materiaux de base avec les caracteristiques et couts donnes au Tableau 4.4.

Page 67: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 58

Specifications (%) des M = 11

elements chimiques du melange

m elements chimiques spec™"1 specj^11

1 A1 Aluminium 0 0,2

2. C Carbone 2,7 2,98

3 Cr Chrome 23,25 25,25

4 Cu Cuivre 0 0,2

5 Fe Fer 65 85

6 Mn Manganese 0,3 0,6

7 Mo Molybdene 0 0,3

8 Ni Nickel 0 0,2

9 P Phosphore 0 0,06

10 S Soufre 0 0,06

11 Si Silicone 0,3 0,8

TABLEAU 4.3 - Specifications minimales et maximales en % du poids dans le melange.

Page 68: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exempies numeriq ues : problemes de melange 59

Specifications sm,n des N = 8 materiaux disponibles

m n

1 2 3 4 5 6 7 8

1 . 0 0,01 0 0 0 0,000096 0,00034 0

2 0,002744 0 0,8 0,072096 0,017184 0,065088 0,000768 0

3 0,001666 0 0 0,482880 0,519552 0 0 0

4 0,001666 0 0 0 0 0 0 0

5 0,961772 0 0 0,406650 0,421304 0,152928 0,217728 0,691200

6 0,008232 0 0 0 0 0,732768 0,001632 0

7 0,000490 0 0 0 0 0 0 0

8 0,001862 0 0 0 0 0 0 0

9 0,000392 0 0 0,000192 0,000192 0,002688 0,000096 0

10 0 0 0 0,000384 0,000192 0,000096 0 0

11 0,001176 0 0 0,026592 0,000672 0,005952 0,731616 -0.090900

, Couts Cn d< is materiaux

0,1450 1,3500 0,1100 0,5050 0,6750 0,5760 0,3715 0,7250

TABLEAU 4.4 - Caracteristiques des materiaux disponibles.

Les contraintes de type 1 sont completement determinees a l'aide des donnees

des Tableaux 4.3 et 4.4. Les contraintes de type 2 necessitent quelques precisions.

Prenons 4 contraintes de type 2 reliant les specifications du carbone (m = 2) et

du chrome (m = 3). Les contraintes sont decrites geometriquement a la Figure 4.4.

Elles indiquent que le couple (spec^, spec3) doit etre a 1'interieur du parallelogramme

delimits par les 4 droites. Avec les donnees fournies, on a les contraintes

Page 69: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Ehcemples numeriques : problemes de melange

droiteno. 1 : spec3 — ^spec2 < 0,092500,

droite no. 2 : spec3 — ^spec2 > 0,076944,

droite no. 3 : spec3 + 10spec2 < 0,5405,

droite no. 4 : spec3 + 10spec2 > 0,5125.

Les coefficients de ces contraintes sont donnees au Tableau 4.5.

J. ± X

spac2

FIGURE 4.4 - Specifications coiiplees de chrome et de carbone..

Page 70: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 61

J = 4 contraintes de type 2

n

j 1 2 3 4 5 6 7 8 Pi 1 2

-0,013578 0 -4,444444 0,082347 0,424085 -0,361600 -0,004267 0 VI

Al 0,092500

0,076944

3

4 0,029106 0 8 1,203840 0,691392 0,650880 0,007680 0

<

>

0,540500

0,512500

TABLEAU 4.5 - Contraintes de type 2.

TTl 7T2 *3 ^4 7T5 *6 7T? na 0.5304688 0 0.0044959 0.2725179 0,1925174 0 0 0

TABLEAU 4.6 - Solution optimale du melange.

Pour ce probleme, l'ensemble des solutions realisables est borne s'il est non-vide.

Cet ensemble est effectivement non-vide puisque nous obtenons la solution optimale

du Tableau 4.6 de cout unitaire minimum zcoat = 0.3449833 $.

Ensemble realisable vide : pas de solution. Reprenons notre probleme mais enle-

vons les materiaux n = 5 et n = 6, c'est-a-dire posons = 0 et itq = 0. Ce nouveau

probleme n'a pas de solution, l'ensemble realisable est vide. II est done impossible de

faire un melange approprie avec les 6 materiaux restants.

4.3.3 Probleme d'ajout a une quantite fixee de premelange

Description du problfeme.

On dispose d'un premelange auquel on veut ajouter un melange de n materiaux

pour produire un melange final qui satisfait aux specifications desirees. Posons

7Tq le poids du premelange dans le melange final,

ir® le poids du n-ieme materiau dans le melange final (n= 1,..., n).

Page 71: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 62

Comme nous voulons corriger un poids donne de premelange on posera TTQ = 1.

On corrige une unite de poids du premelange avec une quantite

(4.10) n=l

de melange des N materiaux, avec

TTn — 0 pour n=l,...,N. (4.11)

Le poids de la partie a ajouter au premelange est

n <4'12)

n=l

Si on desire ajouter une quantite d'elements a poids minimal, on minimise 2pCids.

Le cout du melange de correction est

AT = • (413)

n=1

Si on desire ajouter une quantite d'elements a cout minimal, on minimise z"o0t.

Le poids total du melange est alors

*Sis = J37rn = 7ro+S7rn = 7ro+7rtot = 1+7rtot-n=0 n=l

Le premelange a certaines caracteristiques notees smfi (m=l,..., M) et chacun

des materiaux est egalement caracterise par les M specifications decrites precedemment

et notees sm,n (m=l,..., M). Les specifications du melange sont donnees par

specmZp^ = spec^ « + TrfJ = sm,n<. (4.15) n=0

Page 72: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 63

pour m=l— , M. Les contraintes de types 1 et 2 s'appliquent directement.

Formulation premelange a poids fixe

On cherche a corriger une unite de poids d'un premelange (7Tq = 1) en y ajoutant

des materiaux a cout minimum ou a poids minimum. Pour ce probleme les variables

de decision seront les 7r° pour n— 1,..., N. La formulation bicritere est done

(p°) 4

sujet a

IXlin 2pout X3n=l '

^poids £n=l >

0) £n=i < = Kot;

(ii) pour m — 1,..., M :

Xm=0 sm,n7rn < Spec™0* ,

Elo *».«< - speC'-X, > spec™" ;

(iii) pour :

5-)n=0 [Ern=l aj,mSm,nj —

<

> >

(iv) TXQ = 1 et 7r° > 0 pour n = 1,..., N.

Pour cette formulation on ne peut affirmer que l'ensemble des solutions realisables

sa «oit borne dans I'espace des decisions rn. Toutefois si l'ensemble realisable est

non-vide, l'ensemble de Pareto sera borne etant donne la structure des fonctions ob­

jectif e'est-ardire la positivitedes coefficients c = (ci,..., c#) > 0 et 1 = (1,..., 1) >

0, sachant que (7if,... ,tt%) > 0.

Page 73: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 64

Resultats numeriques.

Ensemble realisable non borne. Le Tableau 4.7 donne les specifications du premelange.

Notons que ces specifications verifient les contraintes de type .1 mais ne verifient pas

les'contraintes de type 2. Les coefficients des contraintes de type 2 sont donnes au

Tableau 4.8.

Specifications specm 0 du premelange

m Elements chimiques spec™"1 sm,0 specm

1 Al Aluminium 0 0,15 0,2

2 C Carbone 2,7 2,98 2,98

3 Cr Chrome 23,25 25,25 25,25

4 Cu Cuivre 0 0,19 0,2

5 Fe Fer 65 80 85

6 Mn Manganese 0,3 0,55 0,6

7 Mo Molybdene 0 0,25 0,3

8 Ni Nickel 0 0,17 ° ' 2

9 P Phosphore 0 0,05 0,06

10 S Soufre 0 0,05 0,06

11 Si Silicone 0,3 0,70 0,8

TABLEAU 4.7 - Specifications du premelange en % du poids. •

Page 74: La methode de tir pour des problemes de programmation ...

Chapitre 4 •: Exemples numeriques : problemes de melange 65

J = 4 contraintes de type 2 n

3 0 1 2 3 4 5 6 7 8 PI 1 2

0,086944 -0,013578 0 -4,44 0,082347 0,424085 .0,36160 -0,004267 0 VI

Al 0,092500 0,076944

3 4

0,550500 0,029106 0 8 1,203840 0,691392 0,65088 0,007680 0

VI Al

0,540500 0,512500

TABLEAU 4.8 - Contraintes de type 2.

A - A *&>ut zpoids 0 0.8402832 0.0028354 0.0195544

0.8402832 0.9060245 0.0031773 0.0194894

0.9060245 0.9602441 0.0122307 0.0185504

0.9602441 1 0.0134135 0.0185014

TABLEAU 4.9 - Sommets efficaces dans I'espace des criteres M2.

La solution de ce probleme nous indique que la correction a cout minimal coute

0.0028354 $ et pese 0.0195544 unite de poids. Le cout unitaire de la correction est

done de 0.0028354 $ =0.1450006. «

0.0195544 unite de poids unite de poids

Le melange corrige ainsi forme pese 1.0195544 unite de poids.

Par contre la correction a poids minimal necessite un ajout de 0.0185014 unite

de poids au cout de 0.0134135 $. Dans ce cas le cout unitaire de la correction est de

0.0134135 $ $ = 0.7249992-

0.0185014 unite de poids ujiite de poids

Le melange corrig£ ainsi forme pese 1.0185014 unite de poids.

Page 75: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 66

*2 *| n *6 *8 0.0195543 0 0 0 0 0 0 0

0.0179383 0 0 0 0 0 0.0015511 0

0 0 0 0 0 0 0.0034463 0.0151041

0 0 0 0 0 0 0 0.0185014

TABLEAU 4.10 - Solutions optimales dans I'espace des decisions K8.

0.0196

0.0194

0.0192 •g o

N 0.019

0.0188

0.0186

0.0184 4 6 8 10 2 12 14 Zcout x103

FIGURE 4.5 - Courbes de Pareto : Courbe de Pareto dans I'espace des criteres

K2.

Ensemble realisable borne. Notons que la correction n'utilise pas les materiaux

n = 5 et n = 6 qu'on aurait done pu enlever. L'effet d'enlever ces deux materiaux

Page 76: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 67

supprime la possibility de faire un melange avec seulement les materiaux disponibles.

4.3.4 Resultats theoriques

Lien entre les ensembles realisables s et sa .

On demontre facilement les resultats donnes au Tableau 4.11.

s sa

vide vide

vide non vide

ferme et borne (compact)

non vide

ferme et borne (compact) vide

non vide

ferme et borne (compact)

non vide

ferme et non borne

TABLEAU 4.11 - Relations entre les ensembles realisables «S et sa .

Le Tableau 4.11 montre les cas possibles des liens entre les ensembles realisables

s et <S°. Dans le cas ou sa est non vide, nous distinguons deux sous cas possibles. Si

sa est ferme borne, on obtient l'ensemble s vide. Si non («S° est ferme non borne)

alors, on obtient s non vide. Par contre, si s est vide et sa est non vide, on obtient

sa ferme et borne. Alors que, si s est non vide et sa est non vide, on obtient sa non

borne et ferme.

Page 77: La methode de tir pour des problemes de programmation ...

Chapitre 4 : Exemples numeriques : problemes de melange 68

En effet, <S° est non vide et non borne, il existe done une direction A7r° tel que le

rayon 7ra + tAwa est dans Sa pour tout t > 0. On montre que IT = Ati^/Att^ est un

element de S. Inversement si n est dans S et Sa est non vide, en prenant 7r° + tir on

obtient un Element de <S° pour tout t > 0 et ainsi <S° est non borne.

Surfaces de Pareto £° et £°.

On montre que ces surfaces sont non vides, fermees et bornees (compactes). Si

ces surfaces £a et ne sont pas compactes, alors nous trouvons une suite =

(2^,€ £* telle que z^ -> +00 et —» +00, etant donne la structure des

fonctions objectif du probleme ce qui est impossible d'avoir dans

Page 78: La methode de tir pour des problemes de programmation ...

Conclusion

La difficulte principal des problemes de programmation lineaire multicritere pro-

vient des contradictions entre les differents criteres, done il est difficile de trouver une

solution optimale pour tous les criteres simultanement. Dans ce memoire nous avons

etudie et aborde ce type des problemes pour trouver 1'ensemble des solutions ou l'en-

semble des compromis.

Dans une premiere partie, nous avons presente les bases de l'optimisation multi­

critere. Le concept de dominance au sens de Pareto et la notion d'efficacite ont ete

rappeles. Aussi nous avons presente la methode de la somme ponderee pour resoudre

le probleme de construction de la surface de Pareto. Dans une deuxieme partie, nous

avons developpe un algorithme de construction de la surface de Pareto (methode

de tir) pour des problemes lineaires bicriteres utilisant la methode du simplexe a

un critere. Finalement nous avons illustre cette methode a l'aide de deux problemes

relies a des applications reelles de problemes de melange : un probleme de diete pour

pore et un probleme de melange en metallurgie.

II parait possible d'adapter notre algorithme pour resoudre les problemes de pro­

grammation lineaire tricritere et de determiner leur surface de Pareto. Toutefois, Le

probleme reside dans remuneration des valeurs de A.

69

Page 79: La methode de tir pour des problemes de programmation ...

Bibliographie

[1] P. Adulbhan et M.T. Tabucanon, Bicriterion Linear Programming, Computers

and Operations Research, 4 (1977), 147-153.

[2] H. Ayadi, Optimisation bicritere : La methode du simplexe en deux phases,

Rapport de Stage, Depaxtement de mathematiques, Universite de Sherbrooke,

Septembre (2010).

[3] H.P. Benson, Vector Maximization With Two Objective Functions, Journal of

Optimization Theory and Applications, 28 (1979), 253-258.

[4] J.L. Cohon, R.L. Church et D.P. Sheer, Generating Multiobjective Trade-Offs,

Water Resources Research, 15 (1979), 1001-1010.

[5] G.B. Dantzig, The diet problem, Interfaces, 20 (1990), 43-47.

[6] G.B. Dantzig, Linear Programming and Extensions, Princeton Press, Princeton,

New Jersey, 1963.

[7] F. Dubeau, Un probleme de melange en metailurgie, Rapport technique,

Depaxtement de mathematiques, Universite de Sherbrooke, avril (2011).

[8] F. Dubeau, P.-O. Julien et C. Pomar, Etude de cas : un porcin dans un envi-

ronnement sain, INFOR, AZ (2008), 199-217.

70

Page 80: La methode de tir pour des problemes de programmation ...

Bibliographie 71

[9] S.G. Garille et S.I. Gass, Stigler's diet problem revisited, Operations Research,

49 (2001), 1-13.

[10] W.B. Gearhart, On the Characterization of Pareto-Optimal Solutions in Bicrite-

ria Optimization, Journal of Optimization Theory and Applications, 27 (1979) ,

301-307.

[11] A.M. Geoffrion, Solving Bicriterion Mathematical Programs, Operations Re­

search, 15 (1967), 39-54.

[12] M. Ida, Efficient Solution Generation for Multiple Objective Linear Program­

ming Based On Extreme Ray Generation Method, European Journal of Opera­

tionI Research, 160 (2005), 242-251.

[13] G. Kiziltan et E. Yucaoglu, An Algorithm For Bicriterion Linear Programming,

European Journal of Operationl Research, 10 (1982), 406-411.

[14] O.L. Mangasarian, Nonlinear Programming, McGraw-Hill, New York, 1969.

[15] E. Mokotoff, Algorithms For Bicriteria Minimization In The Permutation Flow

Shop Sheduling Problem, Journal of Industrial and Management Optimization,

7 (2011), 253-282.

[16] V. Pareto, Cours d'Economie Politique, Lausanne, 1896.

[17] H. Pasternak et U. Passy, Bicriterion Mathematical Programs with Boolean

Variables, In J.L. Cochrane and M.Zeleny (eds.), Multiple Criteria Decision

Making, Columbia, South Carolina : University of South Carolina Press, (1973),

327-348.

[18] S.Y. Prasa4 et M.H. Karwan, A Note On Solving Bicriteria Linear Programming

Problems Using Single Criteria Software, Computers Operations Research, 19

(1992), 169-173.

Page 81: La methode de tir pour des problemes de programmation ...

Bibliographie 72

[19] S. Sadagan et A. Ravindran, Interactive Solution of Bi-criteria Mathematical

Programs, Naval Research Logistics Quarterly, 29 (1982), 443-459.

[20] S. Sayin, An Algorithm Based On Facial Decomposition For Finding The Effi­

cient Set In Multiple Objective Linear Programming, Operations Research Let­

ters, 19 (1996), 87-94.

[21] R.E. Steuer, Multiple Criteria Optimization, John Wiley and Sons, New York,

1986.

[22] G.J. Stigler, The cost of subsistance, Journal of Farm Economics, 27 (1945),

303-314.

[23] J. Walker, An Interactive Method as an Aid in Solving Bicriteria Mathematical

Programming Problems, Journal of the Operational Research Society, 29 (1978),

915-922.