M0/II
M0/II
M0/II
M0/II ---- 09
09
09
09
METODY OPTYMALIZACJI
OPTYMALIZACJA LINIOWEJ FUNKCJI CELU Z LINIOWYMI OGRANICZENIAMI
(Metoda Simplex)
Wyznaczyć ekstrema funkcji celu
3
2
1
3
2
1
2
4
)
,
,
(
x
x
x
x
x
x
f
−
+
=
wiedząc, że zmienne decyzyjne mogą
przyjmować wartości nieujemne i spełniają następujące ograniczenia:
30
2
,
10
,
8
3
2
1
3
2
3
2
1
≤
+
+
=
+
≥
+
+
x
x
x
x
x
x
x
x
> with(simplex);
> f:=4*x1+2*x2-x3;
> r1:=x1+x2+x3>=8; r2:=x2+x3=10; r3:=x1+x2+2*x3<=30; r4:=x1>=0;
r5:=x2>=0; r6:=x3>=0;
> p_max:=maximize(f,{r1,r2,r3,r4,r5,r6});
> maximize(f,{r1,r2,r3},NONNEGATIVE);
# wykorzystanie opcji NONNEGATIVE
> p_min:=minimize(f,{r1,r2,r3,r4,r5,r6});
> minimize(f,{r1,r2,r3},NONNEGATIVE);
# wykorzystanie opcji NONNEGATIVE
> subs(p_max,f); seq(evalb(subs(p_max,r||i)),i=1..6);
> subs(p_min,f); seq(evalb(subs(p_min,r||i)),i=1..6);
OPTYMALIZACJA NIELINIOWEJ FUNKCJI CELU BEZ OGRANICZEŃ
Wyznaczyć ekstrema funkcji celu
+
+
−
+
+
−
=
1
2
1
2
1
2
1
2
)
,
(
3
2
3
2
y
y
y
x
x
x
y
x
f
, oraz określić ich
charakter (minimum, maksimum, punkt siodłowy). Wyznaczyć wartość funkcji w punktach
ekstremalnych.
1) Wprowadzenie danych, oraz określenie warunków koniecznych i wystarczających istnienia ekstremum
> f:=(x-2*x^2+1/2*x^3+1)*(y-2*y^2+1/2*y^3+1);
> zmienne:=[x,y]; n:=nops(zmienne);
Warunki konieczne istnienia ekstremum
> for i to n do
r||i:=diff(f,zmienne[i])=0:
end do;
Hesjan
> H:=Matrix(1..n):
> for i to n do
for j to n do
H[i,j]:=diff(f,zmienne[i],zmienne[j]):
end do:
end do:
2) Wyznaczenie punktów spełniających warunki konieczne istnienia ekstremum.
Wskazówka: rozwiązania poszukuj (fsolve) w następujących obszarach: a) x = 0..1 , y = 0..1, b) x =
1.5..3 , y = 0..1, c) x = 0..1 , y = 1.5..3, d) x = 1.5..3 , y = 1.5..3, e) x = 1..2 , y = 1..2.
3) Określenie charakteru punktów wyznaczonych w 2).
Wskazówka: Sprawdź określoność hesjanu (dodatnia, ujemna) w każdym z wyznaczonych punktów.
4) Wyznaczenie wartości funkcji w punktach ekstremalnych.
5) Sporządzenie wykresu funkcji f(x,y) w obszarze x = 0 .. 3, y = 0 .. 3.
OPTYMALIZACJA NIELINIOWEJ FUNKCJI CELU Z OGRANICZENIAMI RÓWNOŚCIOWYMI
(Mnożniki Lagrange’a)
Wyznaczyć minimum funkcji
2
12000
)
,
(
y
x
y
x
f
=
wiedząc, że zmienne decyzyjne mogą przyjmować
wartości dodatnie i spełniają następujące ograniczenie
400
)
,
(
2
2
−
+
=
y
x
y
x
h
.
1) Skonstruowanie funkcji Lagrange’a:
)
,
(
)
,
(
y
x
h
y
x
f
L
λ
−
=
.
2) Określenie warunków koniecznych istnienia ekstremum i wyznaczenie punktów spełniających te
warunki.
3) Wyznaczenie minimalnej wartości funkcji celu przy zadanym ograniczeniu.