Anda di halaman 1dari 11

MODELISATION ET IDENTIFICATION DES SYSTEMES A.

BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
1
INTRODUCTION ET QUELQUES RAPPELS

A- Dfinition gnrale, classification

La programmation non linaire a pour but de trouver le ou les vecteurs solution du
problme de minimisation (ou maximisation) suivant :
( )
R
J
Min m
D

;

o
- ( ) J est une fonction scalaire de la variable vectorielle
- D est lensemble des admissibles, cest dire vrifiant les contraintes galits et
ingalits du problme. Ce sont, en gnral des relations sur les valeurs que peut prendre.
Voici leur forme gnrale :

( ) m p i
i
g
< = = L 1 ; 0 Contraintes galits

( ) m n j
j
h
< = L 1 ; 0 Contraintes ingalits

Si
R
m
D alors il ny a pas de contraintes respecter sur . On dit que le problme est
sans contrainte.







Figure 1

Minimum
global strict
Minimum
global
Minimum
Local strict
Minimum
local
MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
2
La figure 1 montre les diffrentes situations possibles de minimum :
Min. local ou global
Min strict ou gnral
Suivant la nature mathmatique des contraintes et du critre, on obtient des problmes
doptimisation de natures diffrentes.

Critre
( ) J
Contraintes
( )
i
g
, ( )
i
h

Variable
doptimisation

Type de problme
doptimisation
Linaire Linaires Non entire Programmation
Linaire
Linaire Linaires Entire Programmation
Linaire en entiers
Quadratique Linaires Non entire Programmation
quadratique
Convexe Convexes Non entire Programmation
convexe
Non linaire Quelconques Non entire Programmation non
linaire
Quelconque Non linaires Non entire Programmation non
linaire


Dans la suite on est concern par la programmation non linaire avec :

- critre non linaire par rapport
- sans contraintes cest dire vrifiant
R
m
D

B- Quelques applications en automatique

Application en identification

Cest la mthode du modle par exemple o on ajuste les paramtres dun modle
pour obtenir un comportement le plus proche possible dun systme rel, connu
par des donnes de mesure de lentre et de la sortie. Voir Figure 2.

Application en synthse de correcteurs.

Le systme est boucl sur un correcteur dont il faut dterminer les paramtres. Les
spcifications sont traduites par un modle de rfrence. Le comportement du
systme en boucle doit se comporter de faon la plus proche possible du modle de
rfrence. On obtient ce rsultat en ajustant les paramtres du correcteur par des
techniques doptimisation. Voir figure 3.




MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
3




















Figure 2






















Figure 3






PROCEDE

MODELE
Entre
U

CRITERE
( ) J

ALGO. PNL
Minim. /
Erreur
+

Ajustement des
paramtres
MODELE DE
REFERENCE
Entre
U

CRITERE
( ) J

ALGO. PNL
Minim. /
Erreur
+

Ajustement des
paramtres
Correct Procd
MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
4

1 CAS SANS CONTRAINTES

a- Concepts de base

Soit ( ) J un critre minimiser continu et continment drivable
(jusqu un ordre adquat)
une variation du vecteur paramtre .
Si est suffisamment petit, alors on peut faire le dveloppement au premier
ordre du critre ( ) J . En notant ( )
T

J le gradient de ( ) J par rapport au vecteur


paramtres , on obtient :

( ) ( ) ( ) ( )
2
. O
T

J J J + + = +

Soit

un minimum relatif, alors on a




|

\
|

\
|
+

J J
m
R

0 .
|

\
|


T

J
m
R

pour

= ( cest dire loptimum) on a :




0 =
|

\
|

J

Ceci rejoint le rsultat classique pour les fonctions une variable. La drive est nulle au
point optimum. Dans notre cas, cest la drive dune fonction scalaire par rapport une
variable vectorielle qui doit tre nulle au point optimum. Cette drive
|

\
|

J est un
vecteur appel gradient.

Cette condition est vrifie pour tout extremum local : Cest une condition ncessaire
dextremum local. (On parle ici dextremum local, parce quil nexiste pas de condition
similaire pour un extremum global).
MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
5

Exemple et contre exemple.

a- exemple

0 5 10
5
6
7
8
9



Figure 4

( ) ( ) b a J + =
2
0
0 > a , 0 > b


0
=

0 = |

\
|

d
d
J Condition ncessaire doptimum vrifie.

b- contre exemple
0 5 10
-10
0
10
20

Figure 5

( ) ( ) b a J + =
3
0
0 > a , 0 > b

( ) 0
0
=
d
d
J

pourtant
0
= nest pas un minimum relatif (ce nest pas une condition suffisante
dextremum relatif).

b

0
MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
6
Pour caractriser plus compltement les conditions dextremum on fait le dveloppement de
( ) J au second ordre sachant que ( )
2
C J


Soit le dveloppement au second ordre suivant :

( ) ( ) ( ) ( ) ( )
3
.
,
2
1
. O

T T

J J J J + + + = +

o ( )

J
,
est appel le Hessien. Cest la matrice des drives secondes de ( ) J
par rapport

La quantit

T
J .
,
|

\
|

.est une forme quadratique, donc un scalaire.
Supposons que est petit, alors au point optimum (cest dire

= ) on a :

=
|

\
|
|

\
|

\
|
+

J
J J


En portant ces deux quantits dans le dveloppement au second ordre on obtient :

0 .
,

|

\
|



T
J
m
R

Cette relation peut tre nonce de faon quivalente par :


|

\
|


J
,
est une matrice dfinie non ngative.

Ceci est aussi une condition ncessaire. Do, en conclusion :

Condition ncessaire de minimum relatif :


0 =
|

\
|

J
|

\
|


J
,
non ngative.

MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
7

On peut dmontrer la condition ncessaire suivante :

Condition ncessaire de minimum relatif strict est:


0 =
|

\
|

J
|

\
|


J
,
dfinie positive.
Remarques:

- Il nexiste pas de condition ncessaire et suffisante, (Sauf cas particulier de convexit
du critre, voir remarque ci dessous)
- Par contre si les hypothses suivantes sont vrifies :

( )
1
C J et ( ) J est convexe dans D convexe, alors on
obtient la condition ncessaire et suffisante de minimum global suivante :



m
R admissible on a :

minimum global 0 .
|

\
|


T

J

Remarque

En pratique, mme dans les cas simples la convexit est rarement vrifie globalement.
Cependant cette notion est importante car elle est assez souvent vrifie localement. Ce que
montre la Figure 6 o les contours (courbes fermes) reprsentent les isocritres (courbes
critre constant : ( )
te
C J = ).
On observe que dans le domaine D, le critre ( ) J nest pas convexe, car on peut trouver
deux points, par exemple a et b, tels que tous les points du segment [a b] ne se trouvent pas
lintrieur du domaine dlimit par lisocritre sur laquelle se trouvent ces deux points.

Par contre dans le domaine E on ne peut pas trouver deux points qui vrifient cette proprit.
On dira que le critre ( ) J est convexe dans E.

Voici quelques exemples et contre exemples tudier.

- ( ) ( ) 0 , 0 ,
2
0
> > + = b a b a J

- ( ) ( ) 0 , 0 ,
3
0
> > + = b a b a J

- ( ) ( ) 0 , 0 ,
4
0
> > + = b a b a J
MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
8























Figure 6


Convexit locale
Non convexit
lchelle globale
E
D
a
b
MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
9

B- PREMIERS ELEMENTS SUR LES METHODES ITERATIVES DE
RECHERCHE ;

Aprs avoir prsent quelques aspects mathmatiques sur la notion doptimum. Nous
allons maintenant examiner deux techniques de recherche du minimum dune fonction
scalaire dune variable vectorielle. Dans cette tude la variable vectorielle est un vecteur
paramtres qui intervient dans un problme didentification, de commande, de rgression
etc.

B-1 Mthode du Gradient

Dans cette partie on sera amen considrer souvent le cas o le vecteur paramtres
est de dimension 2. Nous prenons ce choix pour pouvoir faire des figures et donner des
interprtations gomtriques. Mais les raisonnements sont valables pour des dimensions du
vecteur paramtres quelconques.

Plaons nous dans le cas
|
|

\
|
=
2
1


























Figure 7

c

1
c

2
2

=
1

i
MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
10
Position du problme :

Autour dun point courant, quon notera dans la suite

i
.
- Effectuer un dplacement = avec donn, on obtient alors le point

i 1 +

- Trouver la direction de ce dplacement telle que ( ) ( ) J

i
J

i
J =
+ 1

soit maximal, voir Figure 7.

Remarque : Lquation = un cercle en dimension 2. Pour une dimension
suprieure on a une sphre ou une hyper sphre.

Solution : Il faut prendre colinaire ( )

i
J

( cest dire que ces deux


vecteurs se trouvent sur une mme droite. On dit quils ont le mme support ou quils sont
colinaires).

En pratique ci dessus nest pas connu. On exprime alors lalgorithme du gradient de la
faon itrative suivante :


( )

i
J

i

.
1
=
+


o est un facteur qui module le gradient.
Lindice i indique le numro ditration. Cette formule est interprte de la faon
suivante : Le vecteur paramtre litration 1 + i (inconnu), quon notera

i 1 +

est obtenu partir de

- la valeur

i
litration i (connue) et
- dune correction ( )

i
J


. qui constitue le pas de progression permettant de
passer de

i 1 +
. Cette procdure est explique par la Figure 8.
MODELISATION ET IDENTIFICATION DES SYSTEMES A. BENHALLA 2010
METHODES DE PROGRAMMATION NON LINEAIRE
11






















Figure 8


Direction de ( )

i
J


Cest aussi la direction de
progression vers le minimum

i 1 +

( )

i
J


.

1
2

Minimum