Căutați extrema unei funcții a unei variabile
La rezolvarea problemelor de maximă și minimă a funcției y = f (x) a unei singure variabile, sunt selectate probleme de extremum local (pe o anumită perioadă) și globală (pe întreaga axă numerică). În MATLAB, căutarea locală minimă este efectuată de funcția:
[x, y] = fminbnd (nume, a, b [, opțiuni])
- nume - numele funcției M care calculează f (x);
- a, b - limitele intervalului la care se caută minimul;
- opțiuni - parametrii care controlează progresul soluției;
- x, y sunt coordonatele punctului în care se atinge minimul funcției la un anumit interval.
Funcția fminbnd poate fi, de asemenea, utilizată pentru a calcula maximul local. Pentru a face acest lucru, este suficient să luați funcția de nume cu semnul opus.
În fișierul M numit mf. m scriem:
Apoi, în fereastra de comandă scrie:
% Maximul funcției pe intervalul [-2 2]
Căutați extrema unei funcții a mai multor variabile.
Calcularea extremumului unei funcții a mai multor variabile z = f (x 1. x 2, ..., xn) se realizează prin comanda:
[x, z] = fminsearch (nume, x0 [, opțiuni]
- nume - numele funcției M care calculează valoarea z = f (x 1. x 2, ..., xn). care depinde de n variabile;
- x 0 este un vector de n elemente conținând coordonatele punctului de aproximare inițială;
- opțiuni - parametrii care controlează progresul soluției;
- x - din n elemente, conținând coordonatele punctului în care se atinge minimul funcției;
- z este valoarea funcției în punctul cu coordonatele x.
Găsiți funcția minimă
[z, f] = fminsearch (@ (x) sqrt (x (1) ^ 2 + x (2) ^ 2)
[x y] = meshgrid (-2: 0,2: 2, -2: 0,2: 2);