background image

Instytut Sterowania i Systemów Informatycznych

Politechnika Zielonogórska

Laboratorium Metod i Technik Optymalizacji

Metody minimalizacji bez ograniczeń

Wszystkie programy wymagane w ćwiczeniu powinny być napisane w MATLABie. Sam program ćwiczenia
obejmuje natomiast następujące zadania:

1. Zapoznać się ze skryptem stpdsc, w którym zaimplementowano najprostszą wersję metody najszyb-

szego spadku. Przetestować jej działanie na wybranych funkcjach testujących. Jaki wpływ na zbieżność
ma długość kroku, punkt startowy i założona dokładność osiągnięcia punktu minimum?

2. Zapoznać się z funkcjami fmins i fminu. Jakie algorytmy zostały w nich zaimplementowane? Omówić

wady i zalety każdego z nich. Przetestować działanie obu procedur na wybranych funkcjach testują-
cych (w przypadku procedury fminu zbadać trzy wersje: z algorytmem DFP, z algorytmem BFGS i
z algorytmem najszybszego spadku z optymalnym doborem kroku – zob. options(6)). Zwrócić przy
tym uwagę na następujące problemy:

(a) wymagana liczba wywołań funkcji i gradientu;

(b) wpływ wyboru punktu startowego i założonej dokładności na czas obliczeń;

(c) wpływ zastosowanej metody minimalizacji w kierunku (por. options(7));

(d) wpływ numerycznego wyznaczania gradientu na dokładność i czas obliczeń;

(e) porównanie metod gradientowych i bezgradientowych.

Dokonać wizualizacji pracy algorytmu na wykresie poziomicowym minimalizowanej funkcji (na wykre-
sie nanieść ścieżkę, wzdłuż której wyznaczane są kolejne wartości funkcji).

Czy w każdej sytuacji można osiągnąć minimum globalne? Jak postąpić w sytuacji, gdy zachodzi ko-
nieczność minimalizacji funkcji rzeczywistej zmiennych zespolonych? Jak dokonać minimalizacji funkcji
przy warunku, że zmienne niezależne mogą przyjmować tylko wartości całkowitoliczbowe? Czy mini-
malizowana funkcja może mieć nieciągłości?

3. Przy użyciu wybranej metody poszukiwania minimum funkcji rozwiązać poniższe układy równań:



x

2
1

x

2

= 11

x

1

x

2
2

= 7

oraz

x

1

x

2

x

3

= 6

x

2
1

x

2
2

x

2
3

= 14

x

3
1

x

3
2

x

3
3

= 36

4. Wielkości wiąże zależność b C, jednak pomiar wielkości jest obarczony błędami.

Określić wartości na podstawie następujących danych:

F

51

68

84

103

121

141

C

10

20

30

40

50

60

Uwaga:

Jest to najprostsze zadanie regresji liniowej, które rozważa się w wielu książkach poświęconych

elementarnej statystyce. Istnieją m.in. gotowe wzory do obliczania wartości b. Sprawdzić otrzymany
wynik wykorzystując te rezultaty.

1

background image

5. Wiadomo, że wielkości związane są zależnością (nie uwzględniającą błędu pomiaru Qa h

n

,

gdzie są stałymi.

Na podstawie danych pomiarowych z poniższej tabeli wyznaczyć wartości n.

h

4

6

8

10

12

Q

650

1740

3640

6360

9790

6. Przy planowaniu produkcji dwóch produktów firma ocenia spodziewany zysk wg wyrażenia

α

1

(1 − e

−β

1

x

1

− β

1

x

1

e

−β

1

x

1

) + α

2

(1 − e

−β

2

x

2

− β

2

x

2

e

−β

2

x

2

) + α

3

(1 − e

−β

3

x

1

x

2

− x

1

− x

2

gdzie x

1

x

2

są kwotami pieniędzy przeznaczonymi na produkcję i reklamę odpowiednio produktu 1

i produktu 2, a α

i

β

i

są zadanymi stałymi. Wielkości x

1

x

2

wyrażają się w jednostkach rów-

nych kwocie 10

5

dolarów. Określić maksymalny zysk oraz optymalne wartości x

1

x

2

przy poniższych

warunkach:

(a) α

1

= 3, α

2

= 4, α

3

= 1, β

1

= 1.2, β

2

= 1.5, i β

3

= 1.

(b) α

1

= 3, α

2

= 4, α

3

1, β

1

= 1.2, β

2

= 1.5, i β

3

= 1.

Zestaw funkcji testujących

1. Rosenbrock

(x) = 100 (x

2
1

− x

2

)

2

+ (1 − x

1

)

2

x

0

= (1.21.); x

?

= (1., 1.); (x

?

) = 0.

2. Rosenbrock

(x) = (x

2
1

− x

2

)

2

+ (1 − x

1

)

2

x

0

= (2., −2.); x

?

= (1., 1.); (x

?

) = 0.

3. Rosenbrock

(x) = (x

2
1

− x

2

)

2

+ 100 (1 − x

1

)

2

x

0

= (2., −2.); x

?

= (1., 1.); (x

?

) = 0.

4. White and Holst

(x) = 100 (x

2

− x

3
1

)

2

+ (1 − x

1

)

2

x

0

= (1.21.); x

?

= (1., 1.); (x

?

) = 0.

5. Beale

(x) = (1.− x

1

(1 − x

2

))

2

+ (2.25 − x

1

(1 − x

2

)

2

)

2

+ (2.625 − x

1

(1 − x

2

)

3

)

2

x

0

= (1., 0.8) lub (2., 0.2); x

?

= (3., 0.5); (x

?

) = 0.

6. Zangwill

(x) = (1/15)(16 x

2
1

+ 16 x

2
2

− x

1

x

2

− 56 x

1

− 256 x

2

+ 991)

x

0

= (3., 8.); x

?

= (4., 9.); (x

?

) = 18.2.

7. Engvall

(x) =

5

X

i=1

f

i

(x)

2

gdzie

f

1

(x) = x

2
1

x

2
2

x

2
3

− 1,

f

2

(x) = x

2
1

x

2
2

+ (x

3

− 2)

2

− 1

f

3

(x) = x

1

x

2

x

3

− 1,

f

4

(x) = x

1

x

2

− x

3

+ 1

f

5

(x) = x

2
1

+ 3 x

2
2

+ (5 x

3

− x

1

+ 1)

2

− 36

x

0

= (1., 2., 0.); x

?

= (0., 0., 1.); (x

?

) = 0.

2

background image

8. Wood-Colville

(x)

= 100 (x

2

− x

2
1

)

2

+ (1 − x

1

)

2

+ 90 (x

4

− x

2
3

)

2

+ (1 − x

3

)

2

+10.1 [(x

2

− 1)

2

+ (x

4

− 1)

2

] + 19.8 (x

2

− 1) (x

4

− 1)

x

0

= (3., 1., 3., 1.); x

?

= (1., 1., 1., 1.); (x

?

) = 0.

9. Powell

(x) = (x

1

+ 10 x

2

)

2

+ 5 (x

3

− x

4

)

2

+ (x

2

− x

3

)

4

+ 10 (x

1

− x

4

)

4

x

0

= (3., 1., 0., −1.); x

?

= (0., 0., 0., 0.); (x

?

) = 0.

10. Box

(x) =

10

X

i=1

[exp(−x

1

t

i

− exp(−x

2

t

i

− exp(−t

i

) + exp(10 t

i

)]

2

gdzie t

i

= 0.10.20.30.40.50.60.70.80.91.0 oraz x

0

= (4., 6.); x

?

= (1., 10.); (x

?

) = 0.

11. Engvall

(x) = x

4
1

x

4
2

+ 2 x

2
1

x

2

− x

1

+ 3

x

0

= (0.52.0); x

?

= (1.00.); (x

?

) = 0.

12. Zangwill

(x) = (x

1

− x

2

x

3

)

2

+ (−x

1

x

2

x

3

)

2

+ (x

1

x

2

− x

3

)

2

x

0

= (100., −1., 2.5); x

?

= (0., 0., 0.); (x

?

) = 0.

13. Cragg and Levy

(x) = [exp(x

1

− x

2

]

4

+ 100 (x

2

− x

3

)

6

+ tg

4

(x

3

− x

4

) + x

8
1

+ (x

4

− 1)

2

x

0

= (1., 2., 2., 2.); x

?

= (0., 1., 1., 1.); (x

?

) = 0.

14.

(x) =

20

X

i=1

ix

2
i

x

0

= (1., −1., . . . , −1.); x

?

= (0., 0., . . . , 0.); (x

?

) = 0.

15.

(x) =

20

X

i=1

i! (x

i

− i/3)

2

x

0

= (1., −1., . . . , −1.); x

?

= (1/32/3, . . . , 20/3); (x

?

) = 0.

3