Ahla
On cherche numériquement le minimum d’une fonction f unimodale définie sur l’intervalle [a, b]. Pour cela, on va utiliser les méthodes de dichotomie sans et avec dérivées et la méthode de Newton-Raphson et et les appliquer sur quelques fonctions.
Question 1 :
➢ Méthode de dichotomie sans dérivées ;
Il s’agit de considérer un intervalle plus petit [a’1, b’1] tel que a’1= (1-ρ1)a0+ ρ1b0 et b’1= ρ1a0+(1- ρ1)b0 ou 0 < ρ1=-1définie par F-1=0,F0=1, Fk+1=Fk+Fk-1
Montrons que la solution est donnée par ρk=1-FN-k+1/FN-k+2
Pour cela il suffit de montrer que cette suite vérifie la relation de récurrence définie par :
ρk /(1- ρk )=1-(1-FN-k+1/FN-k+2)/( FN-k+1/FN-k+2)=1-(FN-k+2-FN-k+1)/ FN-k+1=1-FN-k/ FN-k+1= ρk+1
D’où la solution est donnée par ρk=1-FN-k+1/FN-k+2
Dans ce cas on a (1- ρ1)…(1- ρN)=FN/FN+1*FN-1/FN*…*F1/F2=1/FN+1
Pour obtenir une solution avec une erreur inférieure à e, il faut que la longueur de [aN, bN] soit inférieure à e or la longueur de [aN, bN] est égale à (1- ρ1)…(1- ρN)(b0-a0) f(b’1) et donc [a1,b1]= [a’1,b].
La longueur de l’intervalle [an,bn] est (1-r)n(b-a), et la méthode converge quand f est unimodale.
Le code de la fonction écrit dans un M-file est alors :
|function [a1,b1,n,t2]=methode1(a,b,e) |
|t=cputime; |
|r=2-(1+sqrt(5))/2; |
|a0=a; |
|b0=b; |
|a1=(1-r)*a0+r*b0;