algorytmy 6

Uniwersytet Warmińsko – Mazurski w Olsztynie

Wydział Nauk Technicznych

Mechatronika

ALGORYTMY I METODY NUMERYCZNE

Ćwiczenie Nr 7

METODY OPTYMALIZACJI.

Wykonał:

Zad 4

Za pomocą funkcji fminbnd MATLAB-a wyznaczyć minimum funkcji

w przedziale [0; 2]. Przedstawić wykres funkcji.

Rozwiązanie :

fminbud (‘sin’, 0,2*pi)

x=[0:0.1:2*pi]

y=sin(x)

plot(y)

Wynik:

xmin= 4.71239108120009

ymin=-0.99999999999779~1 %wartość minimalna funkcji dla przedziału (0,2π)

Zad 5

Za pomocą funkcji fminbnd MATLAB-a wyznaczyć minimum funkcji

w przedziale [0; 5]. Przedstawić wykres funkcji.

Rozwiązanie :

fminbnd('((x-3)^2-1)',0,5)

x=[0:0.1:6];

y=((x-3).*(x-3))-1

plot(x,y)

xmin= 3

ymin= -1

Zad 6

Za pomocą funkcji fmincon MATLAB-a wyznaczyć minimum funkcji

przy początkowym znaczeniu =[10; 10;10] i ograniczeniach

Rozwiązanie :

x0=[10;10;10]

A=[-1,-2,-2;1,2,2]

B=[0;72]

z=fmincon(@funkcja,x0,A,B)

kod pliku o nazwie funkcja.m :

function f=funkcja(x)

f=-x(1)*x(2)*x(3)

z1= 23.99996314767320

z2=11.99999365045199

z3= 12.00002477571141

Zad 7

Za pomocą funkcji fminimax MATLAB-a rozwiązać zadanie minimaxne dla zestawu 5 funkcji , gdzie

Rozwiązanie :

function f=jeden(x)

y(1)= 2*x(1)^2+x(2)^2-48*x(1)-40*x(2)+304;

y(2)= -x(1)^2 - 3*x(2)^2;

y(3)= x(1) + 3*x(2) -18;

y(4)= -x(1)- x(2);

y(5)= x(1) + x(2) - 8;

x0 = [0.1; 0.1];
[x,fval] = fminimax(@jeden,x0)

WYNIK :

x = 4.0000

Zad 8

Za pomocą funkcji fminsearch MATLAB-a wyznaczyć minimum funkcji

przy początkowym znaczeniu =2.

Rozwiązanie :

function y=jeden(x);

y=sin(x)+3

x2=2;

x = fminsearch(@jeden,x2)

WYNIK :
x = 4.7124

Zad 9

Za pomocą funkcji fminunc MATLAB-a wyznaczyć minimum funkcji

przy początkowym znaczeniu =[1; 1].

Rozwiązanie :

function y=jeden(x);

y=3*x(1)^2+2*x(1)*x(2)+x(2)^2

x0=[1;1];

x = fminunc(@jeden,x0)

WYNIK :

x = 1.0e-006

x = 0.2541

x = -0.2029

ZAD 10

Za pomocą funkcji linprog MATLAB-a wyznaczyć minimum funkcji

przy ograniczeniach

Rozwiązanie :

function y=jeden(x);

y=5*x(1)-4x(2)-6*x(3);

A=[1 -1 1; 3 2 4; 3 2 0];

b=[20; 42; 30];

f10=[-5 -4 -6];

x1=linprog(f10,A,b,[],[],[0 0 0],[])

WYNIK :

x1 = 0.0000

x1 = 15.0000

x1 = 3.0000


Wyszukiwarka

Podobne podstrony:
Układy Napędowe oraz algorytmy sterowania w bioprotezach
5 Algorytmy
5 Algorytmy wyznaczania dyskretnej transformaty Fouriera (CPS)
Tętniak aorty brzusznej algorytm
Algorytmy rastrowe
Algorytmy genetyczne
Teorie algorytmow genetycznych prezentacja
Algorytmy tekstowe
Algorytmy i struktury danych Wykład 1 Reprezentacja informacji w komputerze
ALGORYTM EUKLIDESA
Algorytmy z przykladami tp 7 0
ALGORYT8
5 Algorytmy i schematy blokowe

więcej podobnych podstron