Extras din laborator
Algoritm de optimizare pentru functii de o variabila prin cautare dihotomica.
Cautarea dihotomica a minimului unei funtii de o variabila pe un interval dat [a,b] cu o incertitudine “e” si ea data se bazeaza pe compararea valorilor functiei respective in punctele (a+b/2-e) si (a+b/2+e) si în functie de rezultat se modifica intervalul de cautare, el devenind [a,a+b/2+e] sau [a+b/2-e,b] în functie de rezultatul comparatiei. Cautarea se face pâna când intervalul de cautare are lungimea mai mare decât un “z’ impus. Atunci functia are valoare minima în ak+bk/2.
Programul în Matlab care realizeaza acest algoritm este urmatorul:
function [min,af,bf]=diho1var(F,al,bl,z,e)
k=1;
a(1,1)=al;
b(1,1)=bl;
f1(1,1)=feval(F,al);
f2(1,1)=feval(F,bl);
while (b(k,1)-a(k,1))>z
l(k,1)=((a(k,1)+b(k,1))/2)-e;
m(k,1)=((a(k,1)+b(k,1))/2)+e;
if feval(F,l(k,1))<=feval(F,m(k,1))
Preview document
Conținut arhivă zip
- Algoritm de optimizare pentru functii de o variabila prin cautare dihotomica.doc