• Aucun résultat trouvé

Méthode de recherche d'un extremum d'une fonction monodimensionnelle

N/A
N/A
Protected

Academic year: 2022

Partager "Méthode de recherche d'un extremum d'une fonction monodimensionnelle"

Copied!
12
0
0

Texte intégral

(1)

R

EVUE FRANÇAISE D

AUTOMATIQUE

,

INFORMATIQUE

,

RECHERCHE OPÉRATIONNELLE

. R

ECHERCHE OPÉRATIONNELLE

O DILE M IGNOTTE

Méthode de recherche d’un extremum d’une fonction monodimensionnelle

Revue française d’automatique, informatique, recherche opé- rationnelle. Recherche opérationnelle, tome 9, noV2 (1975), p. 113-123

<http://www.numdam.org/item?id=RO_1975__9_2_113_0>

© AFCET, 1975, tous droits réservés.

L’accès aux archives de la revue « Revue française d’automatique, in- formatique, recherche opérationnelle. Recherche opérationnelle » implique l’accord avec les conditions générales d’utilisation (http://www.numdam.org/

conditions). Toute utilisation commerciale ou impression systématique est constitutive d’une infraction pénale. Toute copie ou impression de ce fi- chier doit contenir la présente mention de copyright.

Article numérisé dans le cadre du programme Numérisation de documents anciens mathématiques

http://www.numdam.org/

(2)

R.A.I.R.O.

(9e année, juin 1975, V-2, p. 113 à 123)

METHODE DE RECHERCHE D'UN EXTREMUM D'UNE FONCTION MONODIMENSIONNELLE (*)

par Odile MIGNOTTE (X)

Résumé. — On cherche à déterminer Vextremum d'une fonction unimodale sur un intervalle — une nouvelle méthode de recherche est proposée, dont les performances sont comparables aux meilleures méthodes connues (recherche de Fibonacci ou du Nombre d'Or). II s*agit d'une méthode dynamique, en ce sens que la stratégie adoptée varie en fonction des informations recueillies durant les essais antérieurs. Cette variation repose sur des considérations de nature probabiliste.

Je tiens à exprimer ma gratitude à M. le Professeur Vignes pour ses conseils et ses encoura-

EVTRODUCTION

Soit ƒ une fonction réelle d'une variable réelle, unimodale sur un intervalle [a, 6], £ > 0 étant fixé, il s'agit de déterminer un intervalle de longueur 8 qui contienne un point m tel que ƒ (m) soit maximal (ou minimal).

On choisit n + 1 points x0 = a < xx < x2 < ••• < xn_1 < xn = b de l'intervalle initial. La comparaison des ƒ {x^ permet de situer m dans l'inter- valle de type [xis xi + 1] ou [xiy xi + 2]. Et ainsi de suite.

Pour des points JC(- régulièrement espacés nous montrons que les cas opti- maux sont n = 3 et n = 4. Pour ces valeurs de n, nous chercherons la meilleure disposition possible des x(. Notre recherche sera illustrée par de nombreux exemples calculés sur machine.

(*) Reçu avril 1974.

(1) CNAM, Chaire d'Informatique.

Revue Française d'Automatique, Informatique et Recherche Opérationnelle, n° juin 1975, V-2

(3)

114 O. MIGNOTTE

I. PRÉSENTATION DE LA MÉTHODE 1. Préliminaires

Nous nous limiterons à la recherche d'un maximum. Si on calcule f (à), + f(x\f(b) pour un certain xe]a,b[, ƒ étant unimodale on a évidemment

f(x)<f(a)^me[a,x]; ƒ(*) < ƒ(*) =* me[x, b].

Dans les autres cas on ne peut situer m par rapport à x. Ainsi dans les hypothèses de notre étude, il est nécessaire de calculer au moins deux valeurs de ƒ en des points xx et x2 intérieurs à [a, b]. On aura donc n ^ 3.

REMARQUE

En pratique il faut tenir compte de la précision de la machine et de celle des calculs. On s'imposera donc un certain seuil s et on considérera que l'inéga- lité f(x) <f(y) (respectivement f(x) > f (y)) a lieu si et seulement si ƒ 0 0 < f (y) — s (respectivement ƒ (JC) > ƒ (y) + s) où ƒ (z) désigne la valeur approchée de ƒ (z), si tel est le cas on écrira ƒ (JC) ^ ƒ (y) (respectivement ƒ 0 0 ^ ƒ(ƒ))• Si f (y) appartient à l'intervalle [ ƒ (x) — s, f(x) + s] il y a indétermination, nous arrêtons alors l'exécution du programme et indiquons à l'utilisateur les dernières bornes calculées pour m. Ce cas d'indétermination sera exclu de l'étude théorique.

2. Présentation de l'algorithme

Posons yj = f(Xj),j = 0, ...,«. Soit k, le plus petit entier positif, s'il existe, tel que yk <^ yk-\ et k = n + 1 si un tel entier n'existe pas. Chaque valeur de k correspond à un événement que nous noterons Ek. L'intervalle réduit est le suivant :

ƒ [**-2> *JJ si k # 1 et k # n 1 [**- u xk] si k = lt ou k = n .

On suppose f (a) et ƒ(£>) connus. Notons Ck le nombre de calculs et Rk

le rapport

longueur du nouvel intervalle longueur de l'intervalle précédent * On a :

Ck = k pour fc ^ n — 1 et Cn = Cn+1 — n — 1 tandis que Rk = - pour fc 9e 1 et /: ^ «,

1 n n *

itevMé? Française d'Automatique, Informatique et Recherche Opérationnelle

(4)

RECHERCHE D'UN EXTREMUM 115 REMARQUE

II est aisé de voir graphiquement que dès que le cas « malchanceux » I Rk = - J s'est produit le cas « heureux » f Rk = - ) ne peut plus se produire.

n . MAJORATION DU NOMBRE DE CALCULS 1. Cas n pair

D'après ce qui précède, à chaque itération n — \ calculs suffisent toujours 2

(n — 2 suffiront si lors de l'itération précédente Rk = - , le point du milieu n

est conservé, ce que l'on supposera dans le calcul qui suit). Soient v0 — v, vu ..., vk les longueurs successives des intervalles déterminés par cet algorithme.

On a :

v

<-

v

--(-v \ - -(~yv

Le nombre total A:d'itérations nécessaires est déterminé par vk ^ e < vk^1. D'où la majoration

r< r^si+i

où [x] désigne la partie entière de x (i.e. [x] = /? e Z tel que/? < x < p + 1).

Comme le problème qui nous intéresse ne se pose que si (u/e) est assez grand, on posera pour simplifier K — A/log (n/2), où ^ = log (v/e). Le nombre A^

maximum d'opérations est donc donné par

N = A(n - 2)/log (n/2).

Pour déterminer la meilleure valeur de N en fonction du choix du nombre de points xî9 il s'agit donc d'étudier la fonction :

r \ x - 2

9ix) = 7

et de détenniner le minimum de la fonction g pour x entier > 4. On trouve :

a'(x) =

KX

K

n" juin 1975, V-2

(5)

1 1 6 O. MIGNOTTE

qui s'annule pour x = 2 et est toujours positive pour x > 2. Donc g(x) est croissante et la meilleure valeur pour n pair sera 4.

2. Cas H impair

Pour n ^ 5 l'étude précédente montre que le cas n impair ^ 5 ne peut être meilleur que le cas n = 4, même en supposant que l'on conserve l'un des points (ce qui est incompatible avec une distribution régulière des points).

m.

CAS N

= 3

1. Méthode du nombre d'or C)

Les points sont répartis de telle sorte que le rapport

soit conservé lors de chaque itération. (vk étant la longueur de l'intervalle obtenu après k itérations.) v% = vo/xk~l. BetC sont symétriques.

A B C D

Le rapport dans lequel C divise AD est le même que celui dans lequel B divise AC, ce qui répond au souhait de conserver l'un des points pour l'itération suivante. Un seul calcul de la fonction par itération suffit pour réduire l'inter- valle dans le rapport 1/x. Ceci fait tout l'intérêt de la méthode.

2. Méthode de Fibonacci

Cette méthode se différencie en ceci qu'elle ne vise pas à réduire l'intervalle de façon constante à chaque itération. Par contre elle cherche à conserver un point de l'intervalle précédent. Le point calculé au cours de l'itération est alors placé symétriquement au point conservé.

Il est aisé de noter que sur une seule itération, la meilleure réduction possible est obtenue pour une « pseudo-dichotomie », c'est-à-dire deux points situés presque au milieu de l'intervalle. Mais cette position ne permet évidem- ment pas de conserver l'un des points à l'étape suivante.

(1) Le nombre d'Or est la racine positive de T2 - T - 1 = 0.

Revue Française d'Automatique, Informatique et Recherche Opérationnelle

(6)

RECHERCHE D'UN EXTREMUM 117

Soit D la longueur du dernier intervalle (précision demandée) et E l'inter- valle qui sépare les deux derniers points :

< D >

< E >

Lk = longueur du fc-ième intervalle Ln = D < e (notation précédente) Ln_! = 2 D - E = F2 D - Fo E Ln_2 ^ID-E^FsD-F^

Lo = Fn+l D - Fn_t E = FB + 1 Ln - F„.t E = V = intervalle initial D =(L0 + F„_lE)/Fn+l.

L'inégalité évidente

montre qu'il suffit de choisir n tel que

pour que l'on ait D < e. Pour que n soit le plus petit possible (ce que l'on souhaite) il faut prendre E aussi petit que le permet la précision des calculs et en particulier E petit devant e.

IV. CAS n = 4. MÉTHODE PROPOSÉE 1. Phases de l'étude

lr e Phase

3 points au maximum sont à calculer. Ceci se fait de gauche à droite ou de droite à gauche

A B

Nous partons de l'extrémité où la valeur de la fonction est la plus grande.

Si au premier point calculé, la fonction a une valeur inférieure à celle de

n° juin 1975, V-2

(7)

118 O. MIGNOTTE

l'extrémité de départ, on peut prendre cette nouvelle valeur comme deuxième borne et l'intervalle est alors divisé par 4. Lorsque l'une des extrémités est le maximum recherché, cette méthode est meilleure que celles du hombre d'Or et de Fibonnacci.

xxxxx

A, *xxxx xxxx* • rxxxx xxxxxxxxx* xxxx Bfl An Cn Bn

2e Phase

Dès que le premier point calculé n'a plus une valeur inférieure à celle de l'extrémité de départ, l'extremum recherché ne pourra plus être encadré par 2 points consécutifs, il en faudra 3.

1

Bn

XXX XXXXX xxxxxx

c Bn+1

Soit M = mzx(f(Anlf(Bn)).

Tous les points compris entre M et ƒ (C) sont supérieurs à M (hypothèse d'unimodalité) donc il est exclu de revenir à la phase 1.

Ordre de calcul des points.

Dans cette phase, si l'on excepte l'initialisation, ce que nous ferons, il y aura deux points à calculer par itération (la valeur aux bornes est connue et la valeur médiane également).

Soient Cn la valeur au centre et Am Bn les valeurs aux bornes au cours de la w-ième itération.

X X X X "

Sens du calcul

An X Cn

-xxxx xxxxx~

Bn An X Cn Y Bn

Revue Française d'Automatique, Informatique et Recherche Opérationnelle

(8)

RECHERCHE D U N EXTREMUM 119

Sens du calcul (3)

An X Cn Y B

L J I I 1 1

r An X Cn Y Bn

Cas (£) Jfest calculé mais pas Y, l'intervalle devient An Cn. Cas (2) et 0 X et Y sont calculés, l'intervalle devient AT.

Cas (D X et Y sont calculés, l'intervalle devient Cn Bn.

Des considérations probabilistes nous amènent à adopter la tactique suivante : nous supposons que l'extrémité dont la valeur est la plus grande est en général plus proche que l'autre du maximum. Par conséquent nous supposons que le cas (î) où le calcul de Y est inutile sera plus fréquent que le cas © :

— dans un premier temps nous utilisons l'ordre de calcul qui vient d'être exposé ;

— tant que cela s'avère judicieux nous poursuivons la même tactique ;

— dès que cet ordre paraît mauvais nous adoptons l'ordre inverse, etc...

2. Nombre moyen d'opérations au cours de la 2e phase

Le calcul qui suit ne tient pas compte des améliorations apportées par la première phase ni de l'ordre du calcul dans la deuxième phase.

Nombre maximum d'itérations :

K = Nombre moyen de calculs

Notations :

Log 2 '

n° juin 1975, V-2

(9)

120 O. MIGNOTTE

Nombre de calculs nécessaires et probabilités.

Et Ei

El

E3

1 2 2

Pi 3 8 3 8 1 4

De plus l'initialisation de la recherche nécessite trois calculs : deux pour les bornes et un pour le point du milieu. D'où

j y -

Log 2 18- + - + - + 3 8 Log2

3. Comparaison avec la méthode du nombre d'or

Pour cette méthode, le nombre de calculs est donné par la formule : Log (Fe"1)

Log (1,62) car = e .

Reprenons nos trois intervalles à savoir Eu E2 et E3. La question que nous voulons résoudre est la suivante : quelles valeurs devraient avoir les pt pour que notre formule soit, en moyenne, équivalente à la formule du nombre d'Or ? Au cours de notre recherche, nous tenons le plus grand compte de tous les renseignements obtenus, et nous abordons chaque nouvelle itération en tentant de partir de l'extrémité la plus favorable. Considérons la figure pré- cédente et supposons que f {A) est supérieur à f(B). Nous pensons que dans ces conditions, la probabilité d'avoir l'extremum dans l'intervalle Ex est supérieure à celle de le trouver dans l'intervalle E2. Celle de le trouver dans l'intervalle E3 n'étant pas changée.

Revue Française d'Automatique, Informatique et Recherche Opérationnelle

(10)

RECHERCHE D'UN EXTREMUM 121

Les nouvelles valeurs des p( deviennent alors :

= P 3

= -Â-P

Nous cherchons à obtenir :

D'où

Log 2

Lorsque Fe ' est grand, les termes constants sont négligeables, d'où la relation

(2 - p) A 1 Log 2 ~ Log (1,62)' Soit p A 0,56.

V. APPLICATIONS NUMÉRIQUES

1° Etude et comparaison de nos résultats avec la méthode de Fibonacci sur les exemples étudiés par M. Hasles [1] :

F(X) = (Log (X) - 3 x + 3)2 sur (0, 1 E - 30, E + 9) 8 = E - 6 (ABS(X - ALPHA)) - r ^ sur (0, 1) s = E - 10

= Log {X) sur (£ - 25, £ - 5)

= A- sur )£ - 5, ES) e = £ - 10 X sur ( - £4, £10)

Log (X) sur )£10, 1) e = £• - 10 X sur )1, £4)

n° juin 1975, V-2

(11)

122 O. MIGNOTTE TABLEAU COMPARATIF

F Ft

ALPHA = 0,45 ALPHA = 0,925 F2

F3 Total

FlBONACCI

73 49 49 73 70 314

NOS RÉSULTATS

53 53 50 28 67 251

Sur ces exemples, notre méthode se révèle supérieure à celle de Fibonacci.

2° Etude d'une famille de polynômes

P(X) = X6 - AX5 + 3 X3 + 2 X + 1 pour A variant de 120 à 149. L'intervalle initial : 50.

Nous donnons ci-après un extrait des résultats ; une colonne sur trois.

La première ligne indique le nombre de calculs pour la méthode de Fibonacci.

L'ensemble des résultats porte sur 1 200 tests totalisant 40 000 calculs.

L'étude des résultats tend à montrer que les deux méthodes ont des per- formances équivalentes. Un examen approfondi des résultats montre que la première phase fait gagner beaucoup de points. Le nombre de calculs nécessités par la méthode que nous proposons se trouve diminué de deux si les valeurs de la fonction aux deux bornes sont connues à l'avance. Ces valeurs ne sont pas utilisées par les méthodes de Fibonacci et du nombre d'Or.

CONCLUSION

La méthode qui vient d'être exposée donne expérimentalement des résultats comparables à ceux de la méthode de Fibonacci. Elle possède par rapport à cette dernière et par rapport à toutes les autres du même type (nombre d'Or, pseudo-dichotomie) l'originalité de s'adapter à l'information recueillie, au fur et à mesure du calcul des différents points de la fonction, et il lui arrive d'être beaucoup plus rapide. L'ordre de calcul des points est déterminé au début de chaque itération, en fonction des résultats trouvés au cours des itérations précédentes. Notre méthode est dynamique. En fait elle s'apparente aux méthodes qui utilisent la dérivée, — dont ici nous ne supposons pas l'existence

— remplacée ici par la corde.

Revue Française d'Automatique, Informatique et Recherche Opérationnelle

(12)

RECHERCHE D'UN EXTREMUM 123

\120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149

8 5 6 6 7 7

6 7 8 8

a7 8 9 8 9 10 9

a9 8 7 8 9 9 9 8 9 10 9 10 gain (-)

ou +1 perte (+]

13 6 10

nn n

9 12 12 12 13 10 12 13 13 14 16 14 13 13 12 10 13 13 13 14 11 13 14 14 15 -23

17 8 14 16 16 16 12 16 16 16 17 13 17 18 ia 18 22 18 ia 18 17 13 17 17 17 18 14 ia 19 19 19 -15

21 9 18 20 20 21 15 21 21 22 22 16 22 22 22 22 28 22 22 22 22 16 22 22 23 23 17 23 23 23 23 -8

26 111 24 25 24 26 19 24 25 27 27 20 26 27 26 27 34 26 27 26 27 20 25 26 28 27 20 27 28 27 28 -20

30 12 20 23 29 31 23 28 29 32 32 26 31 32 30 31 38 33 32 30 31 24 30 31 34 32 25 31 32 30 33 -11

34 14 32 33 34 36 27 32 35 35 35 32 35 36 35 36 43 37 37 34 35 30 33 35 39 37 30 36 37 34 37 +1

39 15 36 38 39 42 32 38 40 41 59 57 58 41 40 39 48 42 43 37 40 54 57 41 42 41 55 41 41 39 42 -17

45 17 42 41 43 46 57 45 44 45 45 42 43 45 46 44 53 45 46 45 45 58 41 45 47 46 40 45 44 44 45 -1

47 ia 46 46 48 50 41 47 48 48 49 48 46 49 51 49 57 49 49 47 49 41 45 50 52 50 45 50 49 45 50 +6

52 20 50 49 53 55 44 50 54 52 53 52 50 53 56 52 61 55 54 52 50 45 50 56 57 54 48 54 53 53 55 -19

56 21 54 53

5a

61 47 55 58 57 58 55 55 57 60 57 66 57 60 57 57 49 55 61 60 58 52 5&

57 58 59 -12

60 23 59 58 62 66 59 63 61 62 60 58 61 64 61 62 65 62 55 60 64 63 55 63 62 62

+5

BIBLIOGRAPHIE

[1] J. HASLES, Algorithmes de recherche de l'optimum d'une fonction d'une seule variable, Institut Français du Pétrole, sept. 1970.

[2] J. VIGNES, Thèse. Etude et mise en œuvre d'algorithmes de recherche d'un extremum d'une fonction de plusieurs variables, février 1969.

[3] WILDE, Méthodes de recherches d'un optimum, Dunod, 1966.

n°juin 1975, V-2

Références

Documents relatifs

Et dans le nombre ÜT relatif au même système : une fois, toute conique singulière composée d'un couple de droites dont Vune touche les deux courbes données, Vautre les deux autres;

„/qui coïncident avec la tangente de contact, ne donneront pas seulement des coniques singulières du sys- tème (C m?n 0, Z l9 Z 2 ), mais aussi des coniques singulières du système

Trois fois, toute conique infiniment aplatie, tangente à C m n en un point de rencontre avec une des deux autres courbes, limitée à ce point et à la troisième courbe ;. Six fois,

4 1.. Les théorèmes du n° 40 sont encore vrais dans le cas où les courbes C m&gt;n et C m , ni coïncident et pour un système de coniques qui ont avec une même courbe deux

Deux fois dans le nombre X et une fois dans ex, toute conique infiniment aplatie renfermée dans une tangente d'inflexion de la courbe et limitée par deux points qui coïncident au

2 0 z.t f , ou le nombre des coniques infiniment apla- ties renfermées dans les tangentes d'inflexion de M, limitées aux points d'inflexion, et à la droite /, multi- plié par

Les premiers essais occuperont des positions très voisines de celles qu'elles occupent dans la méthode du nombre d'or; par contre si le maximum se trouve, par exemple, au-delà de è,

Je vais donner la solution de la question par cette méthode lorsque la fonction f ne dépend que de 2 ou de 3 variables : le problème est ici identique à celui de la recherche