Top Banner
1 Techniki optymalizacji Cz. 1
262

Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

Feb 27, 2019

Download

Documents

phungtuyen
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

1

Techniki optymalizacji

Cz. 1

Page 2: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

2

Przedstawiane metody/rozwiązania

• Rodzaje przedstawianych metod: klasyczne dla dziedziny optymalizacji ciągłej– dawno zdefiniowane

– dokładnie przebadane

• Związki z metodami metaheurystycznymi: metody klasyczne mają zastosowania podrzędne– heurystyczne lub dokładne (w zaleŜności od postaci wyników)

metody lokalne

– potencjalne wykorzystanie: generowanie kolejnych rozwiązań(jako lokalnych ekstremów) w metodach metaheurystycznych

Page 3: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

3

Przedstawiane metody/rozwiązania

• Postać problemu– minimalizacja funkcji

– przy (ewentualnie istniejących) ograniczeniach• ograniczenia na zakres zmienności• ograniczenia robocze (właściwe)

• Postaci funkcji celu i ograniczeń– (zawsze) dane analitycznie– (zazwyczaj) dodatkowo uwarunkowane

• liniowe, kwadratowe, ciągłe, gładkie, …

• Generowane rozwiązania– dokładne

– przybliŜone

Page 4: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

4

Przedstawiane metody/rozwiązania

• Więcej (na te tematy) m.in. w (klasycznych) ksiąŜkach– Z. Galas i I. Nykowski (red.):

• „Zbiór zadań. Część I. Programowanie liniowe”, PWN, W-wa, 1986• „Zbiór zadań. Część II. Programowanie nieliniowe” , PWN, W-wa, 1988

– S.I. Gass: „Programowanie liniowe”, PWN, W-wa, 1976– R.S. Garfinkel, G.L. Nemhauser: „Programowanie całkowitoliczbowe”– W. Grabowski: „Programowanie matematyczne”, PWE, W-wa, 1980.– I. Nykowski: „Programowanie liniowe”, PWE, W-wa, 1980.– R. Wit: „Metody programowania nieliniowego”, WNT, W-wa, 1986.– W.I. Zangwill: „Programowanie nieliniowe”– T. Trzaskalik: „Wprowadzenie do badań operacyjnych z komputerem”, PWE,

W-wa, 2003– E. Ignasiak (red.): „Badania operacyjne”, PWE, W-wa, 2001,– Z. Jędrzejczak, J. Skrzypek, K. Kukuła, A. Walkost: „Badania operacyjne w

przykładach i zadaniach”, PWN, W-wa, 2002– W. Findeisen, J. Szymanowski, A. Wierzbicki: „Teoria i metody obliczeniowe

optymalizacji”, PWN, 1977,

Page 5: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

5

Przedstawiane metody/rozwiązania

• A takŜe w nowszych– Z. Jędrzejczyk, K. Kukuła, J. Skrzypek, A. Walkosz: „Badania operacyjne

w przykładach i zadaniach, PWN, 2011– W. Findeisen, J. Szymanowski, A. Wierzbicki: „Teoria i metody obliczeniowe

optymalizacji”, PWN, 2009,– J. Kusiak, A. Danielewska-Tułecka, P. Oprocha: „Optymalizacja. Wybrane

metody z przykładami zastosowań”, PWN, 2009– A. Ostanin: „Metody optymalizacji z MATLAB. Ćwiczenia laboratoryjne”,

Nakom, 2009

Page 6: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

6

Ogólnie stosowane oznaczenia

• Oznaczenia danych– Zmienne

• a, b, c, … – skalary (liczby rzeczywiste/zespolone)

• a, b, c, … – wektory (liczb rzeczywistych/zespolonych), przy czym– przez „wektor” rozumie się zawsze „wektor kolumnowy”– oznaczenie wektorów wierszowych: patrz niŜej– interpretacja wektorów („strzałki” i „punkty”)

• A, B, C, … – macierze (liczb rzeczywistych/zespolonych)

– Stałe• 0 – wektor zer

• 1 – wektor jedynek• O – macierz zerowa

• I – macierz jednostkowa

Page 7: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

7

Ogólnie stosowane oznaczenia

• Oznaczenia operacji– Transponowanie macierzy A: AT

• z definicji AT = [aji] dla AT = [aij]

• transponowanie jest wykorzystywane do wyraŜania wektorów wierszowych– (a)T, (b)T, (c)T, … – wektory wierszowe

– Moduł (wartość bezwzględna) skalara x: |x|• z definicji: |x| = sqrt(a2+b2) dla x = a+bi (czyli a = Re(x), b = Im(x))• moduł wyraŜa odległość (euklidesową) skalara x od skalara 0+0i• w szczególności dla skalarów rzeczywistych |x| = sqrt(x2)

– Norma wektora x: ||x||• z definicji ||x|| = sqrt(xTx)

• norma wyraŜa (euklidesową) długość wektora• norma jest wykorzystywana do zapisywania wektorów unormowanych

– a/||a||, b/||b||, c/||c||, … – wektory unormowane

Page 8: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

8

Ogólnie stosowane oznaczenia

• Oznaczenia funkcji– Funkcje jednowymiarowe (skalarne od argumentu skalarnego)

• f(x), g(x), h(x), … – funkcje (rzeczywiste/zespolone)

– Funkcje wielowymiarowe (skalarne od argumentu wektorowego)• f(x), g(x), h(x), … – funkcje (rzeczywiste/zespolone)

Page 9: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

9

Wymagane (i wykorzystywane) pojęcia

• Podstawowe operacje na wektorach i macierzach– wszędzie ☺

• RóŜniczkowanie funkcji– metody „newtonowskie”

• Szereg Taylora – metody „newtonowskie”

• Gradient i hesjan – metoda Newtona-Raphsona i jej pochodne

• Macierz nieujemnie/niedodatnio określona– metoda Levenberga-Marquarda, metoda MDS

• Wartości własne macierzy– metoda Levenberga-Marquarda, metoda MDS

• …

Page 10: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

10

Wizualizacja funkcji

• Problem wizualizacji funkcji – Funkcje/argumenty rzeczywiste

(zbiór liczb rzeczywistych jest obrazowany jako oś liczbowa)• argument wektorowy o rozmiarze 1×1 (lub argument skalarny): dwa wymiary • argument wektorowy o rozmiarze 2×1: trzy wymiary

• argument wektorowy o rozmiarze 3×1: cztery wymiary • …

Page 11: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

11

Wizualizacja funkcji

• Wizualizacja funkcji rzeczywistych– argument wektorowy o rozmiarze 1×1 (lub argument skalarny): dwa wymiary – wykres dwuwymiarowy

Page 12: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

12

Wizualizacja funkcji

• Wizualizacja funkcji rzeczywistych– argument wektorowy o rozmiarze 2×1: trzy wymiary – wykres trójwymiarowy

Page 13: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

13

Wizualizacja funkcji

• Wizualizacja funkcji rzeczywistych– argument wektorowy o rozmiarze 2×1: trzy wymiary – wykres konturowy (bez tła)

-2 0 2-3

-2

-1

0

1

2

3

Page 14: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

14

Wizualizacja funkcji

• Wizualizacja funkcji rzeczywistych– argument wektorowy o rozmiarze 2×1: trzy wymiary – wykres konturowy (z tłem)

-2 0 2-3

-2

-1

0

1

2

3

Page 15: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

15

Wizualizacja funkcji

• Wizualizacja funkcji rzeczywistych– argument wektorowy o rozmiarze 2×1: trzy wymiary – obraz dwuwymiarowy (ostatnio popularna nazwa ang.: „heat map”)

Page 16: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

16

Wizualizacja funkcji

• Problem wizualizacji funkcji – Funkcje/argumenty zespolone

(zbiór liczb zespolonych jest obrazowany jako płaszczyzna liczbowa)• argument wektorowy o rozmiarze 1×1 (lub argument skalarny): cztery wymiary • argument wektorowy o rozmiarze 2×1 (czyli skalarny): sześć wymiarów

• argument wektorowy o rozmiarze 3×1 (czyli skalarny): osiem wymiarów• …

Page 17: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

17

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

– np.

Część rzeczywista Część urojonawartości zespolonej wartości zespolonej

Page 18: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

18

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

– albo np.

Moduł Fazawartości zespolonej wartości zespolonej

– …

Page 19: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

19

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

– liczba zespolona x• czyli x = [ xre, xim ]• dwa wymiary – wizualizacja na płaszczyźnie

– wykorzystujemy definicje• moduł: m = abs(x) = sqrt( (xre)2 + (xim)2 )• faza: f = angle(x) = arctan( xim / xre )

Page 20: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

20

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

– funkcja zespolona dla argumentu zespolonego: y = f(x)• zarówno x jak i y są liczbami zespolonymi

– czyli x = [ xre, xim ] oraz y = [ yre, yim ]– moŜe być traktowana jak dwie, dwuargumentowe funkcje rzeczywiste:

» yre = f1(xre,xim), yim = f2(xre,xim)

– jeŜeli wynik chcemy przedstawiać w postaci pary moduł-faza, to po zastosowaniu f(x) trzeba dodatkowo obliczyć moduł i fazę:

» yre = f1(xre,xim), yim = f2(xre,xim)» m = abs(yre,yim), f = angle(yre,yim)łącznie:» m = abs(f1(xre,xim), f2(xre,xim)), f = angle(f1(xre,xim), f2(xre,xim))

– w obu przypadkach wymagane są cztery wymiary (a więc wizualizacja wymaga dwóch płaszczyzn)

Page 21: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

21

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

f(x) = x

Moduł? Faza?

Page 22: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

22

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

Moduł f(x) = x Faza f(x) = x

-3 -2 -1 0 1 2 3

Page 23: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

23

Wizualizacja funkcji

Page 24: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

24

Wizualizacja funkcji

Page 25: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

25

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

f(x) = x2

Moduł? Faza?

Page 26: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

26

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

Moduł f(x) = x2 Faza f(x) = x2

-3 -2 -1 0 1 2 3

Page 27: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

27

Wizualizacja funkcji

Page 28: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

28

Wizualizacja funkcji

Page 29: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

29

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

f(x) = x3

Moduł? Faza?

Page 30: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

30

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

Moduł f(x) = x3 Faza f(x) = x3

-3 -2 -1 0 1 2 3

Page 31: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

31

Wizualizacja funkcji

Page 32: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

32

Wizualizacja funkcji

Page 33: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

33

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

f(x) = x1/2+log(x)/2.5(log: podstawa e, tylko wartości główne)

Moduł? Faza?

Page 34: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

34

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

Moduł f(x) = x1/2+log(x)/2.5 Faza f(x) = x1/2+log(x)/2.5

-3 -2 -1 0 1 2 3

Page 35: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

35

Wizualizacja funkcji

Page 36: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

36

Wizualizacja funkcji

Page 37: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

37

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

f(x) = x3/2+log(x3)/2.5(log: podstawa e, tylko wartości główne; sqrt: tylko wartości główne)

Moduł? Faza?

Page 38: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

38

Wizualizacja funkcji

• Wizualizacja funkcji zespolonych– argument wektorowy o rozmiarze 1×1 (lub arg. skalarny): cztery wymiary – para obrazów dwuwymiarowych

Moduł f(x) = x3/2+log(x3)/2.5 Faza f(x) = x3/2+log(x3)/2.5

-3 -2 -1 0 1 2 31 2 3 4 5 6 7 8 9 10

Page 39: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

39

Wizualizacja funkcji

Page 40: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

40

Wizualizacja funkcji

Page 41: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

41

Optymalizacja w zastosowaniach

• Optymalizacja ma zastosowania w takich dziedzinach jak– fizyka

– technika

– chemia– inŜynieria

– informatyka

– biologia– ekonomia

– ...

Page 42: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

42

Optymalizacja w Ŝyciu…

• Problem majątku – dwaj bracia odziedziczyli majątek po ojcu, który przykazał im podzielić

się nim sprawiedliwie, nie podał jednak konkretnie, które dobra mająprzypaść w spadku któremu z braci

– bracia natychmiast pokłócili się o majątek, poniewaŜ kaŜdy z nich proponował inny podział pozostałych po ojcu dóbr na dwie części: kaŜdy dzielił rzeczy w taki sposób, aby wartości obu części nie były równe, oczywiście przydzielając sobie część o większej wartości, a swemu bratu część o mniejszej wartości

Page 43: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

43

Optymalizacja w Ŝyciu…

• MoŜliwe rozwiązanie konfliktu – jeden z braci dokonuje podziału dziedziczonych rzeczy na dwie części

– drugi podejmuje decyzję to tym, która część przypadnie komu w udziale

Page 44: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

44

Optymalizacja w Ŝyciu…

• Interesujące cechy zaproponowanego rozwiązania– jeŜeli dokonujący podziału podzieli dziedziczone dobra na dwie części

o nierównej wartości, to naraŜa się na to, Ŝe (wskutek decyzji drugiego z braci) przypadnie mu w udziale część mniej wartościowa

– dokonujący podziału powinien więc dąŜyć do tego, aby róŜnica wartości obu części spadku była jak najmniejsza, w rezultacie czego bracia zostaną sprawiedliwie obdzieleni spadkiem

• w idealnym przypadku wartości obu części będą jednakowe, ale taki podział moŜe nie być moŜliwy do zrealizowania

Page 45: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

45

Optymalizacja w Ŝyciu…

• Optymalizacyjny punkt widzenia tego problemu i jego rozwiązania– tzw. problem min-max

• osoba dokonująca podziału wie, Ŝe jeŜeli któraś z utworzonych przez niączęści majątku będzie większej wartości, to osoba wybierająca na pewno przydzieli tę część sobie (wniosek: tworzenie jakiejkolwiek części o wartości większej od innych części nie jest korzystne!)

• oznacza to, Ŝe osoba dokonująca podziału powinna minimalizować (min) wartość największej (max) z tworzonych części

lub

– tzw. problem max-min• osoba dokonująca podziału wie, Ŝe jeŜeli któraś z utworzonych przez nią

części majątku będzie mniejszej wartości, to osoba wybierająca na pewno przydzieli sobie inną część (wniosek: tworzenie części o wartości mniejszej od innych części nie jest korzystne!)

• oznacza to, Ŝe osoba dokonująca podziału powinna maksymalizować (max) wartość najmniejszej (min) z tworzonych części

Page 46: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

46

Elementy ekstremalne w zbiorach uporządkowanych

• W zbiorze X uporządkowanym relacjami ‘≤’, ‘≥’, ‘<‘ oraz ‘>’moŜna zdefiniować

– element najmniejszy: jest nim a ∈ X spełniający

∀a≠x∈X a < x

– element największy: jest nim b ∈ X spełniający

∀b≠x∈X b > x

Page 47: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

47

Elementy ekstremalne w zbiorach uporządkowanych

• W zbiorze X uporządkowanym relacjami ‘≤’, ‘≥’, ‘<‘ oraz ‘>’moŜna zdefiniować

– element minimalny: jest nim c ∈ X spełniający

∀x∈X c ≤ x ⇔ ¬(∃x∈X x < c)

– element maksymalny: jest nim d ∈ X spełniający

∀x∈X d ≥ x ⇔ ¬(∃x∈X x > c)

Page 48: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

48

Elementy ekstremalne w zbiorach uporządkowanych

• Definicje elementu minimalnego/maksymalnego wykorzystuje się w przypadku problemu optymalizacji funkcji f(x)– zbiorem uporządkowanym jest przeciwdziedzina funkcji f(x)

(która dla funkcji rzeczywistej stanowi podzbiór zbioru liczb rzeczywistych)

– poszukiwany jest argument funkcji (czyli element jej dziedziny D), dla którego wartość tej funkcji jest minimalna(niekoniecznie najmniejsza), czyli x* ∈ D taki, Ŝe ∀x∈D f(x*) ≤ f(x)

– skrócony zapis powyŜszej zaleŜności: x* = argminx∈Df(x)(x* będzie dalej nazywany „rozwiązaniem (funkcji)”)

Page 49: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

49

Pochodne funkcji w postaci wektorowo/macierzowej

• Pochodne prostych funkcji w postaci skalarnej (przypomnienie)– afinicznej (popularnie zwanej liniową)

• f(x) = ax + b• ∂f/∂x = a

– kwadratowej:• f(x) = ax2 + bx + c• ∂f/∂x = 2ax + b• ∂2f/∂x2 = 2a

Page 50: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

50

Pochodne funkcji w postaci wektorowo/macierzowej

• Pochodne prostych funkcji w postaci skalarnej (przypomnienie)– afinicznej (popularnie zwanej liniową)

• f(x) = ax + b• ∂f/∂x = a • ∂2f/∂x2 = 0 • ∂3f/∂x3 = 0 • …

– kwadratowej:• f(x) = ax2 + bx + c• ∂f/∂x = 2ax + b• ∂2f/∂x2 = 2a• ∂3f/∂x3 = 0• ∂4f/∂x4 = 0• …

Page 51: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

51

Pochodne funkcji w postaci wektorowo/macierzowej

• Pochodne prostych funkcji w postaci skalarnej (przypomnienie)– liniowej

• f(x) = ax• ∂f/∂x = a

– (ściśle) kwadratowej:• f(x) = ax2

• ∂f/∂x = 2ax• ∂2f/∂x2 = 2a

Page 52: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

52

Pochodne funkcji w postaci wektorowo/macierzowej

• Pochodne prostych funkcji w postaci skalarnej (przypomnienie)– liniowej

• f(x) = ax• ∂f/∂x = a • ∂2f/∂x2 = 0 • ∂3f/∂x3 = 0 • …

– (ściśle) kwadratowej:• f(x) = ax2

• ∂f/∂x = 2ax• ∂2f/∂x2 = 2a• ∂3f/∂x3 = 0• ∂4f/∂x4 = 0• …

Page 53: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

53

Pochodne funkcji w postaci wektorowo/macierzowej

• Pochodne prostych funkcji w postaci wektorowo/macierzowej– liniowej:

• f(x) = aTx• ∂f/∂x = a

– formy kwadratowej:• f(x) = xTAx• ∂f/∂x = (A + AT)x• ∂2f/∂x2 = A + AT

w szczególnym przypadku, gdy AT = A (czyli macierz A jest symetryczna)– ∂2f/∂x2 = A + AT = 2AT = 2A

Page 54: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

54

Pochodne funkcji w postaci wektorowo/macierzowej

• Pochodne prostych funkcji w postaci wektorowo/macierzowej– afinicznej:

• f(x) = aTx + b• ∂f/∂x = a

– (pełnej) kwadratowej:• f(x) = xTAx + bTx + c• ∂f/∂x = (A + AT)x + b• ∂2f/∂x2 = A + AT

w szczególnym przypadku, gdy AT = A (czyli macierz A jest symetryczna)– ∂2f/∂x2 = A + AT = 2AT = 2A

Page 55: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

55

Minimalizacja funkcji

• Niech f(x) będzie daną analitycznie funkcją rzeczywistą określonądla kaŜdego wektora x naleŜącego do jakiegoś ustalonego obszaru zainteresowań S (zawartego w lub równego dziedzinie funkcji), np.:– n-wymiarowej hiperprzestrzeni Vn

– n-wymiarowego hipersześcianu Hn wyznaczonego przez wektory [a1, …, an] oraz [b1, …, bn], gdzie a1 < b1, …, an < bn

• O funkcji f(x) zakładamy w ogólności, Ŝe w obszarze S jest– ciągła

– posiada przynajmniej dwie pierwsze pochodne (dane analitycznie)

– jej dwie pierwsze pochodne są ciągłe

• Niektóre metody zakładają takŜe, Ŝe f(x) w obszarze S jest– wypukła

Page 56: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

56

Minimalizacja funkcji

• Przykłady funkcji– sformułowania skalarne

• f([x1,x2,x3,x4]T) = (x1)2 + (x2)2 + (x3)2 + (x4)2

• f([x1,x2,x3]T) = (x1)2 + 2(x2)2 + 3x1

• f([x1,x2]T) = ex1 + ex2

Page 57: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

57

Minimalizacja funkcji

• Przykłady funkcji, c.d– sformułowania wektorowe/macierzowe

• f(x) = aTx/||a||/||x||, gdzie – a jest ustalonym wektorem niezerowym

(korelacja wektorów)

• f(x) = xTAx/xTx gdzie – A jest ustaloną macierzą

(współczynnik Rayleigh’a)

• f(x) = xTAx + bTx + c, gdzie – A jest ustaloną niezerową macierzą nieujemnie określoną– b jest ustalonym wektorem– c jest ustalonym skalarem

(postać macierzowej funkcji kwadratowej)

Page 58: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

58

Metody „newtonowskie”

• Mętlik terminologiczny– istnieje wiele metod noszących (pełną lub częściową) nazwę Newtona,

z których jedne słuŜą do poszukiwania ekstremów funkcji a inne do poszukiwania miejsc zerowych funkcji

– w ramach wykładu nazewnictwo tych metod będzie następujące• poszukiwanie ekstremów funkcji – metody optymalizacyjne • poszukiwanie miejsc zerowych funkcji – metody aproksymacyjne

– uwaga:• nazywanie metod optymalizacyjnymi (w odróŜnieniu od nazywania

ich aproksymacyjnymi) jest nieco mylące, poniewaŜ takŜe metody aproksymacyjne są starają się znajdować rozwiązania optymalnie (ewentualnie w przybliŜeniu optymalnie) i posługują się nieraz bardzo podobnymi technikami

• lepszą praktyką byłoby nazywanie metod poszukujacych ekstremów funkcji metodami ekstremalizacyjnymi (lub – konkretnie, w zaleŜności od specyfiki metody – minimalizacyjnymi względnie maksymalizacyjnymi)

Page 59: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

59

Metody „newtonowskie”

• Mętlik terminologiczny, c.d.– optymalizacyjne metody newtonowskie (m.in.)

• metoda jednowymiarowej optymalizacji Newtona (zwana takŜe metodą Newtona-Raphsona)

• metoda wielowymiarowej optymalizacji Newtona-Raphsona (zwana takŜe metodą Newtona), jest naturalnym uogólnieniem metody (jednowymiarowej optymalizacji) Newtona na wiele wymiarów

• metoda wielowymiarowej optymalizacji uogólniona Newtona(zwana takŜe metodą Cauchy’ego), bezpośrednio wykorzystuje metodę (jednowymiarowej optymalizacji) Newtona

• metoda wielowymiarowej optymalizacji Cauchyego• metoda wielowymiarowej optymalizacji Levenberga-Marquarda• …

– aproksymacyjne metody newtonowskie (m.in.)• metoda jednowymiarowej aproksymacji Newtona• …

Page 60: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

60

Metody „newtonowskie”

• W dalszej części wykładu – metoda Newtona

• metoda aproksymacji jednowymiarowej

– metoda Newtona• metoda optymalizacji jednowymiarowej

– metoda Newtona-Raphsona• metoda optymalizacji wielowymiarowej

– modyfikacje metod Newtona-Raphsona (uogólniona metoda Newtona, metoda Cauchy’ego i metoda Levenberga-Marquarda)

• metody optymalizacji wielowymiarowej

Page 61: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

61

Metody „newtonowskie”

• Związek pomiędzy metodą (optymalizacyjną) Newtona a metodą (optymalizacyjną) Newtona-Raphsona– metoda Newtona-Raphsona jest naturalnym uogólnieniem

metody Newtona na wiele wymiarów – nie mylić tego uogólnienia z metodą o nazwie „uogólniona metoda Newtona”!

• a więc oczywiście moŜe być stosowana w problemach jednowymiarowych

– metoda Newtona jest naturalnym uszczególnieniem metody Newtona-Raphsona na jeden wymiar

• a więc nie moŜe moŜe być stosowana w problemach wielowymiarowych

Page 62: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

62

Dygresja

• Pytanie: w jakim sensie Newtona-Raphsona jest „naturalnym” uogólnieniem metody Newtona?

• Odpowiedź: w takim samym, w jakim zapisany macierzowo układ równań z wieloma niewiadomymi jest uogólnieniem zapisanego skalarnie jednego równania z jedną niewiadomą– zapis skalarny: ax = b– zapis macierzowy: Ax = b

Page 63: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

63

Aproksymacja i optymalizacja: ilustracja problemów

• Przykład funkcji: f(x) = x4 – 50x2 + 300x + 2000

Page 64: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

64

Aproksymacja i optymalizacja: ilustracja problemów

• Aproksymacja– problem istnienia rozwiązań (miejsc zerowych)

• brak miejsc zerowych• asymptotyczne zbliŜanie• miejsca zerowe poza granicami przedziału zmienności• ...

Page 65: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

65

Aproksymacja i optymalizacja: ilustracja problemów

• Aproksymacja– problem jednoznaczności rozwiązań (miejsc zerowych)

• policzalne liczby miejsc zerowych• niepoliczalne ilości miejsc zerowych• policzalne liczby niepoliczalnych ilości miejsc zerowych• ...

Page 66: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

66

Aproksymacja i optymalizacja: ilustracja problemów

• Optymalizacja– problem istnienia rozwiązań

• brak rozwiązań• asymptotyczne zbliŜanie• rozwiązania poza granicami przedziału zmienności• ...

Page 67: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

67

Aproksymacja i optymalizacja: ilustracja problemów

• Optymalizacja– problem jednoznaczności rozwiązań (minimów/maksimów)

• policzalne liczby rozwiązań• niepoliczalne ilości rozwiązań• policzalne liczby niepoliczalnych ilości rozwiązań• ...

Page 68: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

68

Aproksymacja i optymalizacja: ilustracja problemów

• Ograniczona ilość informacji w aproksymacji/optymalizacji– wartość funkcji

Page 69: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

69

Aproksymacja i optymalizacja: ilustracja problemów

• Ograniczona ilość informacji w aproksymacji/optymalizacji– wartość funkcji i wartość jej (pierwszej) pochodnej

Page 70: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

70

Aproksymacja i optymalizacja: ilustracja problemów

• Ograniczona ilość informacji w aproksymacji/optymalizacji– bez względu na ilość takich danych, to nie to samo,

co cały przebieg funkcji!

Page 71: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

71

Szereg Taylora

• Dane jest wyraŜenie T(x) = ∑k=0..∞ak(x − x0)k

– jest ono zaleŜne od zmiennego argumentu x, ustalonej wartości x0oraz ustalonych wartości ak (dla k=0..∞)

– wyraŜenie to reprezentuje sumę nieskończonego ciągu o elementach ak(x − x0)k (dla k=0..∞)

• T(x) jest więc sumą szeregu

• Przyjmując, Ŝe w0 = 1 dla wszystkich w (takŜe dla w = 0), wyraŜenie T(x) moŜna przedstawić w postaci T(x) = a0 + ∑k=1..∞ak(x − x0)k

– gdy dla wszystkich k większych od pewnego ustalonego n zachodzi ak(x − x0)k = 0, wyraŜenie T(x) moŜna przedstawićw postaci T(x) = a0 + ∑k=1..nak(x − x0)k

– wyraŜenie to reprezentuje wtedy sumę skończonego ciągu o elementach ak(x − x0)k (dla k=1..n)

– T(x) jest wtedy wielomianem stopnia n od argumentu x

Page 72: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

72

Szereg Taylora

• Dzięki podobieństwu do wielomianu, wyraŜenie T(x) moŜe być róŜniczkowane (operacja jest analogiczna do róŜniczkowania wielomianów)

• Tzn. jeŜeli:T(x) = a0 + a1(x − x0) + a2(x − x0)2 + a3(x − x0)3 + a4(x − x0)4 + …• to:T’(x) = 0 + a1 + 2a2(x − x0) + 3a3(x − x0)2 + 4a4(x − x0)3 + …T’’(x) = 0 + 0 + 2a2 + 3·2a3(x − x0) + 4·3a4(x − x0)2 + …T’’’(x) = 0 + 0 + 0 + 3·2a3 + 4·3·2a4(x − x0) +…

Page 73: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

73

Szereg Taylora

• WyraŜenie T(x) moŜe zostać uŜyte do wyraŜania (w przybliŜony lub dokładny sposób) wartości pewnej funkcji f(x) (czyli funkcji zaleŜnej od argumentu x)– wyraŜanie to ma szanse powodzenia, gdy moŜliwe jest znalezienie

wartości x0 oraz ak (dla k=0..∞), które gwarantują f(x) = T(x) (dla wszystkich x naleŜących do dziedziny funkcji f(x))

• mówimy wtedy, Ŝe dokonano rozwinięcia wartości funkcji f(x)

– często operacji tej dokonuje się najpierw ustalając wartość x0, a potem dopiero wartości ak (dla k=0..∞)

• mówimy wtedy, Ŝe dokonano rozwinięcia wartości funkcji f(x) wokół wartości x0

– operacja ta jest bardzo łatwa dla funkcji wielokrotnie róŜniczkowalnych

Page 74: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

74

Szereg Taylora

• Niech dana będzie wielokrotnie róŜniczkowalna funkcja f(x), której wartość ma być wyraŜona z uŜyciem T(x), a więcf(x) = a0 + a1(x − x0) + a2(x − x0)2 + a3(x − x0)3 + a4(x − x0)4 + …

Page 75: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

75

Szereg Taylora

• Proces poszukiwania współczynników ak– współczynnik a0

• równanie f(x) = T(x) ma postaćf(x) = a0 + a1(x − x0) + a2(x − x0)2 + a3(x − x0)3 + a4(x − x0)4 + …

• niech x = x0, wtedy f(x0) = a0 + a1(x0 − x0) + a2(x0 − x0)2 + a3(x0 − x0)3 + a4(x0 − x0)4 + …f(x0) = a0 + a1·0 + a2·02 + a3·03 + a4·04 + …f(x0) = a0

• a więc a0 moŜna ustalić obliczając f(x0)

Page 76: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

76

Szereg Taylora

• Proces poszukiwania współczynników ak– współczynnik a1

• w rezultacie jednokrotnego zróŜniczkowania (ze względu na x) obu stron równania f(x) = T(x) otrzymujemyf’(x) = a1 + 2a2(x − x0) + 3a3(x − x0)2 + 4a4(x − x0)3 + …

• niech x = x0, wtedy f’(x0) = a1 + 2a2(x0 − x0) + 3a3(x0 − x0)2 + 4a4(x0 − x0)3 + …f’(x0) = a1 + 2a2·02 + 3a3·03 + 4a4·04 + …f’(x0) = a1

• a więc a1 moŜna ustalić obliczając f’(x0)

Page 77: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

77

Szereg Taylora

• Proces poszukiwania współczynników ak– współczynnik a2

• w rezultacie dwukrotnego zróŜniczkowania (ze względu na x) obu stron równania f(x) = T(x) otrzymujemyf’’(x) = 2a2 + 3·2a3(x − x0) + 4·3a4(x − x0)2 + …

• niech x = x0, wtedy f’’(x0) = 2a2 + 3·2a3(x0 − x0) + 4·3a4(x0 − x0)2 + …f’’(x0) = 2a2 + 3·2a3·0 + 4·3a4·02 + …f’’(x0) = 2a2

• a więc a2 moŜna ustalić obliczając f’’(x0)/2

Page 78: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

78

Szereg Taylora

• Proces poszukiwania współczynników ak– współczynnik a3

• w rezultacie trzykrotnego zróŜniczkowania (ze względu na x) obu stron równania f(x) = T(x) otrzymujemyf’’’(x) = 3·2a3 + 4·3·2a4(x − x0) + …

• niech x = x0, wtedy f’’’(x0) = 3·2a3(x0 − x0) + 4·3a4(x0 − x0)2 + …f’’’(x0) = 3·2a3·0 + 4·3a4·02 + …f’’’(x0) = 3·2a3

• a więc a3 moŜna ustalić obliczając f’’’(x0)/(2·3)

Page 79: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

79

Szereg Taylora

• Proces poszukiwania współczynników ak– współczynnik a4

• w rezultacie czterokrotnego zróŜniczkowania (ze względu na x) obu stron równania f(x) = T(x) otrzymujemyf’’’’(x) = 4·3·2a4 + …

• niech x = x0, wtedy f’’’’(x0) = 4·3·2a4 + …f’’’’(x0) = 4·3·2a4

• a więc a4 moŜna ustalić obliczając f’’’’(x0)/(2·3·4)

Page 80: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

80

Szereg Taylora

• Proces poszukiwania współczynników ak– współczynnik ak (w ogólności)

• w rezultacie k-krotnego zróŜniczkowania (ze względu na x) obu stron równania f(x) = T(x) otrzymujemyf(k)(x) = k·(k−1)·…·2·ak + …

• niech x = x0, wtedy f(k)(x) = k·(k−1)·…·2·ak = k!·ak

• a więc ak moŜna ustalić obliczając f(k)(x0)/(k!)

Page 81: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

81

Szereg Taylora

• Czyli dla wielokrotnie róŜniczkowalnej f(x) mamyf(x) = f(x0) + f’(x0)(x − x0) + f’’(x0)/2·(x − x0)2 + f’’’(x0)/3!·(x − x0)3 + …

• Wykorzystując 0! = 1! = 1 mamy:

f(x) = ∑k=0..∞f(k)(x0)/k!·(x − x0)k

– gdzie • f(0)(x) ≡ f(x)• f(1)(x) ≡ f’(x)• f(2)(x) ≡ f’’(x)• …

Page 82: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

82

Szereg Taylora

• Dzięki temu, Ŝe k! szybko rośnie, w wielu przypadkach, dla odpowiednio duŜych k zachodzi

f(k)(x0)(x − x0)k << k!

• Oczywiście wtedy:

f(k)(x0)(x − x0)k/k! << 1 czy wręcz f(k)(x0)(x − x0)k/k! ≈ 0

• Dzięki temu moŜliwe jest „skrócenie” szeregu do kilku (np. n) początkowych elementów (czyli tych, dla których nie zachodzi f(k)(x0)(x − x0)k/k! ≈ 0)

f(x) ≈ ∑k=0..nf(k)(x0)/k!·(x − x0)k

Page 83: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

83

Szereg Taylora

• Szereg T(x) nosi nazwę szeregu Taylora– gdy x0 = 0, szereg Taylora nazywa się szeregiem MacLaurina

• Wiele znanych funkcji posiada rozwinięcia w szereg Taylora (względnie MacLaurina)

• Szereg Taylora moŜe być zapisany w sposób pozwalający na wyróŜnienie tzw. reszty (Rn+1)f(x) = ∑k=0..∞f(k)(x0)/k!·(x − x0)k = ∑k=0..nf(k)(x0)/k!·(x − x0)k + Rn+1

Page 84: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

84

Szereg Taylora

• Przykład: sześcioelementowe T6(x) rozwinięcie funkcji ex w szereg Taylora wokół wartości x0 = 0– funkcja i jej pochodne:

• (ex)(0) = ex

• (ex)(1) = (ex)’ = ex

• (ex)(2) = (ex)’’ = ex

• (ex)(3) = (ex)’’’ = ex

• (ex)(4) = (ex)’’’’ = ex

• (ex)(5) = (ex)’’’’’ = ex

• ...

– współczynniki ak• a0 = f(0)(x0)/(0!) = e0/1 = 1/1 = 1• a1 = f(1)(x0)/(1!) = e0/1 = 1/1 = 1• a2 = f(2)(x0)/(2!) = e0/2 = 1/2• a3 = f(3)(x0)/(3!) = e0/6 = 1/6• a4 = f(4)(x0)/(4!) = e0/24 = 1/24• a5 = f(5)(x0)/(5!) = e0/120 = 1/120• ...

Page 85: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

85

Szereg Taylora

• Ostateczny wzór:

– rozwinięcie nieskończone

ex = T(x) = ∑k=0..∞f(k)(x0)/k!·(x − x0)k = 1 + x + x2/2! + x3/3! + x4/4! + x5/5! + ...

– rozwinięcie skończone, sześcioelementowe:

ex ≈ T6(x) = ∑k=0..5f(k)(x0)/k!·(x − x0)k = 1 + x + x2/2! + x3/3! + x4/4! + x5/5!

Page 86: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

86

-1 -0.5 0 0.5 10

0.5

1

1.5

2

2.5

3

Page 87: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

87

Szereg Taylora

• Kolory wykresów: – f(x) – w(x) = 1– w(x) = 1 + x– w(x) = 1 + x + x2/2!– w(x) = 1 + x + x2/2! + x3/3!– w(x) = 1 + x + x2/2! + x3/3! + x4/4!– w(x) = 1 + x + x2/2! + x3/3! + x4/4! + x5/5!

Page 88: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

88

Szereg Taylora

• Inny przykład: dwunastoelementowe T6(x) rozwinięcie funkcji sin(x) w szereg Taylora wokół wartości x0 = 0

sin(x) ≈ T(x) = ∑k=0..∞f(k)(x0)/k!·(x − x0)k == 0 + x + 0 − x3/3! + 0 + x5/5! + 0 − x7/7! + 0 + x9/9! + 0 − x11/11! + ...

Page 89: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

89

Szereg Taylora

• Ostateczny wzór (rozwinięcie skończone, pięcioelementowe):

-4 -3 -2 -1 0 1 2 3 4-4

-3

-2

-1

0

1

2

3

4

Page 90: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

90

Szereg Taylora

• PrzybliŜanie funkcji f(x) szeregiem Taylora– niech dane będą

• ustalony obszar S• funkcja f(x) określona w obszarze S i posiadająca wszystkie pochodne

określone w obszarze S

– rozwinięcie T(x) funkcji f(x) w szereg Taylora wokół punktu y ∈ S dane jest następującym wzorem

T(x) = f(0)(y)/(0!)·(x–y)0 + f(1)(y)/(1!)·(x–y)1 + f(2)(y)/(2!)·(x–y)2 + …

– uwaga: rozwinięcie moŜe obejmować nieskończoną lub skończonąliczbę (niezerowych) składników (w przypadku liczby skończonej ostatni element szeregu jest innej postaci /i stanowi tzw. resztę/)

– zastosowana notacja: • f(k)(x) – oznaczenie k-tej pochodnej funkcji f(x)• w szczególności

– f(0)(x) ≡ f(x) – funkcja– f(1)(x) ≡ f’(x) – jej pierwsza pochodna– f(2)(x) ≡ f’’(x) – jej druga pochodna– …

Page 91: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

91

Współczynnik i rząd zbieŜności ciągu

• Idea współczynnika i rzędu zbieŜności ciągu skalarów– niech s0, s1, s2, … będzie ciągiem skalarów zbieŜnym do skalara

s = limk→∞sk

– niech p ≥ 1 będzie maksymalną wartością, dla której istnieje granica β = limk→∞|sk+1 – s|/|sk – s|p

– wtedy• wartość p nazywamy rzędem zbieŜności• wartość β nazywamy współczynnikiem zbieŜności p-tego rzędu

– jeŜeli• p = 1 i β ∈ (0,1), to ciąg ma zbieŜność liniową• p = 1 i β = 0 lub p > 1, to ciąg ma zbieŜność superliniową

(w znaczeniu: lepszą od liniowej)

Page 92: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

92

Współczynnik i rząd zbieŜności ciągu

• Idea współczynnika i rzędu zbieŜności ciągu wektorów– niech w0, w1, w2, … będzie ciągiem wektorów zbieŜnym do wektora

w = limk→∞wk

– niech p ≥ 1 będzie maksymalną wartością, dla której istnieje granica β = limk→∞||wk+1 – w||/||wk – w||p,

– wtedy• wartość p nazywamy rzędem zbieŜności• wartość β nazywamy współczynnikiem zbieŜności p-tego rzędu

– jeŜeli• p = 1 i β ∈ (0,1), to ciąg ma zbieŜność liniową• p = 1 i β = 0 lub p > 1, to ciąg ma zbieŜność superliniową

(w znaczeniu: lepszą od liniowej)

Page 93: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

93

Metoda Newtona (aproksymacyjna)

• Metoda (aproksymacyjna) Newtona– metoda aproksymacji jednowymiarowej bez ograniczeń

(z ewentualnymi ograniczeniami na zakres zmienności zmiennej)

• Dane– jednowymiarowy obszar S

• (obszar musi spełniać kilka dodatkowych załoŜeń)

– określona w obszarze S funkcja f(x)• (funkcja musi spełniać kilka dodatkowych załoŜeń)

• Cel metody – znaleźć x0 ∈ S taki, Ŝe f(x0) = 0

(poszukiwanie miejsc zerowych funkcji f(x) w obszarze S)

Page 94: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

94

Metoda Newtona (aproksymacyjna)

• Idea metody Newtona (aproksymacji jednowymiarowej)– niech będzie dana analitycznie jednowymiarowa funkcja f(x), dla której

poszukujemy minimum w pewnym obszarze (w praktyce: w przedziale), i o której zakładamy, Ŝe w tym właśnie przedziale

• jest ciągła• posiada pierwszą pochodną (daną analitycznie), która jest ciągła

– uznaje się, Ŝe przebieg aproksymowanej, jednowymiarowej funkcji f(x)w otoczeniu pewnego ustalonego punktu x0 jest taki sam, jak przebieg pewnej funkcji afinicznej, czyli funkcji postaci g(x) = ax + b, gdzie a ≠ 0, o parametrach a i b tak dobranych, aby „dobrze” odzwierciedlały przebieg funkcji f(x)

• do „jakości” takiego odzwierciedlenia przyczyniają się oczywiście powyŜsze załoŜenia dotyczące funkcji f(x), które (nie przez przypadek, oczywiście) sątakŜe właściwościami funkcji afinicznej postaci g(x) = ax+b, gdzie a ≠ 0

– przybliŜenie funkcji f(x) jest wykonywane z uŜyciem jej pochodnych

Page 95: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

95

Metoda Newtona (aproksymacyjna)

• Idea metody Newtona (aproksymacji jednowymiarowej), c.d.– za miejsce zerowe funkcji f(x) uznaje się miejsce zerowe funkcji g(x),

przy czym:• jeŜeli znaleziony punkt (czyli miejsce zerowe afinicznej funkcji g(x)) stanowi

miejsce zerowe optymalizowanej funkcji f(x), to zadanie jest zakończone – powyŜsze sprawdzenie moŜe nie być trywialne– ogólne rozwiązanie tego problemu stanowi osobne zagadnienie (warunek stopu)

• jeŜeli znaleziony punkt (czyli miejsce zerowe afinicznej funkcji g(x)) nie stanowi miejsca zerowego aproksymowanej funkcji f(x), to przyjmuje się, Ŝe stanowi on lepsze przybliŜenie poszukiwanego miejsca zerowego i powtarza się całe postępowanie

– powyŜsze przyjęcie moŜe być błędne– ogólne rozwiązanie tego problemu stanowi osobne zagadnienie (niezbieŜność)

Page 96: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

96

Metoda Newtona (aproksymacyjna)

• Idea metody Newtona (aproksymacji jednowymiarowej), c.d.– funkcja afiniczna i jej pochodna

• funkcja: g(x) = ax + b, gdzie a ≠ 0 • jej pierwsza pochodna: g’(x) = a

– połoŜenie miejsca zerowego funkcji afinicznej• przyrównanie funkcji do zera: ax + b = 0• miejsce zerowe: x = –b/a

– poniewaŜ (z załoŜenia) a ≠ 0, więc miejsce zerowe istnieje• uwaga: w zaleŜności od a i b, funkcja g(x) = ax + b moŜe mieć róŜne liczby

miejsc zerowych, a konkretnie:– ma jedno miejsce zerowe, gdy a ≠ 0 – nie ma miejsc zerowych, gdy a = 0 i b ≠ 0– ma nieskończenie wiele miejsc zerowych, gdy a = 0 i b = 0

Page 97: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

97

Metoda Newtona (aproksymacyjna)

• PrzybliŜanie funkcji f(x) funkcją afiniczną z uŜyciem pochodnych– jeŜeli odpowiednie pochodne funkcji f(x) istnieją w pewnym obszarze S,

to w tym obszarze moŜliwe jest przybliŜenie tej funkcji wykorzystujące jej rozwinięcie w szereg Taylora

– wykorzystując dwuelementowe przybliŜenie q(x) rozwinięcia funkcji f(x) wokół punktu y ∈ S mamy dla kaŜdego x ∈ Sf(x) ≈ q(x) = f(y) + f’(y)(x–y)

– funkcja q(x)• stanowi przybliŜenie funkcji f(x)• jest dwuelementowym rozwinięciem f(x) w szereg Taylora wokół punktu y• ma postać g(x) = ax + b poniewaŜ

q(x) = f(y) + f’(y)(x–y) = f(y) + f’(y)x – f’(y)y = f’(y)x + (f(y) – f’(y)y) a więc: a = f’(y), b = f(y) – f’(y)y

Page 98: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

98

Metoda Newtona (aproksymacyjna)

• Poszukiwanie przybliŜenia miejsca zerowego– zakładamy, Ŝe dla kaŜdego x ∈ S spełniony jest warunek f’(x) ≠ 0– powyŜsze załoŜenie oraz zaleŜności a = f’(y) i b = f(y) – f’(y)y pozwalają

na następujące określenie rozwiązania funkcji

x = –b/a == –(f(y) – f’(y)y)/f’(y) == (f’(y)y – f(y))/f’(y) == y – f(y)/f’(y)

– jeŜeli y jest dowolnym punktem ustalonego obszaru S, to (zgodnie z zasadą przybliŜania funkcji f(x) funkcją afiniczną) punkt x = y – f(y)/f’(y) jest miejscem zerowym funkcji f(x) lub lepszym przybliŜeniem tego miejsca zerowego niŜ punkt y

Page 99: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

99

Metoda Newtona (aproksymacyjna)

• Schemat iteracyjny metody– zasada ustalania następnego punktu na podstawie poprzedniego

pozwala na sformułowanie następującego schematu iteracyjnego

xk+1 = xk – f(xk)/f’(xk)

Algorytm1. ustal punkt x0 i podstaw k = 02. dopóki nie zachodzi warunek stopu, wykonuj:

• oblicz xk+1 = xk – f(xk)/f’(xk)• podstaw k = k + 1

Page 100: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

100

Metoda Newtona (aproksymacyjna)

• Interpretacja geometryczna metody

• Dane: funkcja f(x) wraz z pochodną f’(x), a dla nich– xk (punkt na osi poziomej)– f(xk) (punkt na osi pionowej)– f’(xk) (tangens kąta zawartego pomiędzy osią poziomą

a prostą styczną do wykresu funkcji w punkcie xk)

Page 101: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

101

Metoda Newtona (aproksymacyjna)

• Interpretacja geometryczna metody

• Więcej informacji o funkcji (w tym przypadku dość skomplikowanej)

Page 102: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

102

Metoda Newtona (aproksymacyjna)

• Interpretacja geometryczna metody

• Poszukiwane: xk+1 (przybliŜenie miejsca zerowego)

Page 103: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

103

Metoda Newtona (aproksymacyjna)

• Interpretacja geometryczna metody

• Wykorzystując f’(xk) = tg(α) oraz tg(α) = f(xk)/(xk – xk+1) otrzymujemy zaleŜność f(xk)/(xk – xk+1) = f’(xk)

Page 104: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

104

Metoda Newtona (aproksymacyjna)

• Interpretacja geometryczna metody

• Przekształcenie zaleŜności f(xk)/(xk – xk+1) = f’(xk) dajef(xk)/f’(xk) = xk – xk+1

i ostateczniexk+1 = xk – f(xk)/f’(xk)

Page 105: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

105

Metoda Newtona (aproksymacyjna)

• Mocno uproszczona wersja metody (sytuacja f’(x) ≈ 1)

xk+1 = xk – f(xk) – gdy f(x) > 0, to xk+1 < xk

– gdy f(x) = 0, to koniec– gdy f(x) < 0, to xk+1 > xk

Page 106: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

106

Metoda Newtona (aproksymacyjna)

• Potencjalne warunki stopu metody– osiągnięcie miejsca zerowego

• teoretycznie badamy: f(xk) = 0 • praktycznie badamy: |f(xk)| ≤ ε

– ustabilizowanie wyniku• teoretycznie badamy: xk+1 = xk

• praktycznie badamy: |xk+1 – xk| ≤ ε– przekroczenie maksymalnej liczby iteracji

• k > k0

gdzie– ε jest małą, dodatnią wartością rzeczywistą (dokładność obliczeń)– k0 jest duŜą, dodatnią wartością całkowitą (maksymalna liczba iteracji)

Page 107: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

107

Metoda Newtona (aproksymacyjna)

• ZbieŜność metody– metoda nie gwarantuje zbieŜności dla kaŜdego wektora początkowego– przyczyny ewentualnej niezbieŜności

• zerowość pierwszej pochodnej (a więc nie istnieje jej odwrotność)rezultat: nie moŜna obliczyć xk+1

• niewłaściwy krok metody (choć prawidłowo obliczony) rezultat: |f(xk+1)| ≥ |f(xk)|

– w przypadkach zbieŜnych: zbieŜność rzędu drugiego (czyli wysoka!)

Page 108: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

108

Metoda Newtona (aproksymacyjna)

• Czy są moŜliwe sytuacje, w których (aproksymacyjna) metoda Newtona nie działa wcale?– tak

– przyczyny• pochodna nieokreślona (nie moŜna zainicjować ciągu {xk}) • pochodna dla pewnego xk zerowa (nie moŜna utworzyć elementu xk+1)

• ciąg {xk} jest niezbieŜny, a więc np.:– ciąg {xk} dąŜy do +∞– ciąg {xk} dąŜy do –∞– ciąg {xk} jest cykliczny– ciąg {xk} przejawia inne powody niezbieŜności

» np.: +1, –2, +4, –8, +16, –32, +64, –128, +256, …

Page 109: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

109

Metoda Newtona (aproksymacyjna)

• Czy są moŜliwe sytuacje, w których (aproksymacyjna) metoda Newtona nie działa jednoznacznie (w jakimś sensie)?– tak

– przyczyna• istnienie wielu miejsc zerowych

– z których róŜne mogą zostać osiągnięte (zaleŜnie od doboru punktu startowego)

Page 110: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

110

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300 – miejsce zerowe funkcji: xz = –6.10598343090539…– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 111: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

111

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300, |f(x)| ≤ 10–6, x0 = 1

– osiągnięto warunek stopu

Page 112: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

112

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300, |f(x)| ≤ 10–6, x0 = –5

– osiągnięto warunek stopu

Page 113: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

113

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300, |f(x)| ≤ 10–6, x0 = –1000

– osiągnięto warunek stopu

Page 114: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

114

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300, |f(x)| ≤ 10–6, x0 = 1000

– osiągnięto warunek stopu

Page 115: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

115

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300, |f(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 116: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

116

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300, |f(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 117: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

117

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300, |f(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 118: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

118

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = 4x3 – 100x + 300, |f(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 119: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

119

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x – 5– miejsce zerowe funkcji: xz = 5– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 120: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

120

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x – 5, |f(x)| ≤ 10–6, x0 = 1

– osiągnięto warunek stopu

Page 121: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

121

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x – 5, |f(x)| ≤ 10–6, x0 = –1

– osiągnięto warunek stopu

Page 122: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

122

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x – 5, |f(x)| ≤ 10–6, x0 = 1000

– osiągnięto warunek stopu

Page 123: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

123

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x – 5, |f(x)| ≤ 10–6, x0 = –1000

– osiągnięto warunek stopu

Page 124: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

124

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2

– miejsce zerowe funkcji: xz = 0– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 125: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

125

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2, |f(x)| ≤ 10–6, x0 = 1

– osiągnięto warunek stopu (uwaga: zbieŜność rzędu pierwszego)

Page 126: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

126

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2, |f(x)| ≤ 10–6, x0 = –1

– osiągnięto warunek stopu (uwaga: zbieŜność rzędu pierwszego)

Page 127: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

127

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2, |f(x)| ≤ 10–6, x0 = 1000

– osiągnięto warunek stopu (uwaga: zbieŜność rzędu pierwszego)

Page 128: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

128

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2, |f(x)| ≤ 10–6, x0 = –1000

– osiągnięto warunek stopu (uwaga: zbieŜność rzędu pierwszego)

Page 129: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

129

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2, |f(x)| ≤ 10–6, x0 = 0

– osiągnięto warunek stopu

Page 130: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

130

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x3 – 2x + 2– miejsce zerowe funkcji: xz = –1.76929235424336…– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 131: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

131

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x3 – 2x + 2, |f(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 132: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

132

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x3 – 2x + 2, |f(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 133: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

133

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x3 – 2x + 2, |f(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 134: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

134

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x3 – 2x + 2, |f(x)| ≤ 10–6, x0 = 1

– nie osiągnięto warunku stopu (problem: brak zbieŜności)

Page 135: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

135

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x1/3

– miejsce zerowe funkcji: xz = 0– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 136: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

136

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x1/3, |f(x)| ≤ 10–6, x0 = 1

– nie osiągnięto warunku stopu (problem: brak zbieŜności)

Page 137: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

137

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2 + 1– miejsce zerowe funkcji: brak (∀x∈(–∞,+∞): f(x) > 0)– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 138: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

138

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2 + 1, |f(x)| ≤ 10–6, x0 = 1

– nie osiągnięto warunku stopu (problem: dzielenie przez zero)

Page 139: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

139

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2 – 6x + 100– miejsce zerowe funkcji: brak (∀x∈(–∞,+∞): f(x) > 0)– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 140: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

140

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x2 – 6x + 100, |f(x)| ≤ 10–6, x0 = 1

– nie osiągnięto warunku stopu (problem: brak zbieŜności)

Page 141: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

141

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – uzasadnienia niektórych niezbieŜności

Page 142: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

142

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x3 – 2x + 2– czy moŜna wyjaśnić niezbieŜność dla x0 = 0?

Page 143: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

143

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x3 – 2x + 2– pochodna: f’(x) = 3x2 – 2– schemat: xn+1 = xn – f(xn)/f’(xn) = xn – ((xn)3 – 2xn + 2)/(3(xn)2 – 2) – iteracja:

• x0 = 0• x1 = 0 – (03 – 2·0 + 2)/(3·02 – 2) = –2/(–2) = 1• x2 = 1 – (13 – 2·1 + 2)/(3·12 – 2) = 1 – 1/1 = 0• ...

Page 144: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

144

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x1/3

– czy moŜna wyjaśnić niezbieŜność dla x0 ≠ 0?

Page 145: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

145

Metoda Newtona (aproksymacyjna)

• Przykład poszukiwania zer funkcji, c.d. – f(x) = x1/3

– pochodna: f’(x) = (1/3)·x1/3–1 = (1/3)·x–2/3

– schemat: xn+1 = xn – f(xn)/f’(xn) = xn – ((xn)1/3)/((1/3)·(xn)–2/3) = xn – 3(xn)1/3–(–2/3) = xn – 3(xn)3/3 = xn – 3xn = –2xn

– iteracja:• x0 = 1• x1 = –2·1 = –2 • x2 = –2·(–2) = 4 • x3 = –2·4 = –8 • ...

Page 146: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

146

Przykład ciekawego zastosowania metody Newtona

• Pierwiastki rzeczywiste z (rzeczywistych) liczb nieujemnych– pytanie: jak obliczyć pierwiastek kwadratowy z 1000? – odpowiedź: skorzystać z kalkulatora! ☺– pytanie: jak kalkulator moŜe obliczyć pierwiastek kwadratowy z 1000? – odpowiedź: moŜe skorzystać z (aproksymacyjnej) metody Newtona

Page 147: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

147

Przykład ciekawego zastosowania metody Newtona

• Aproksymacyjna metoda Newtona w poszukiwaniu pierwiastków kwadratowych z rzeczywistych liczb nieujemnych– dla nieujemnych p zachodzi x = sqrt(p) ⇔ x2 = p ⇔ x2 – p = 0– wniosek: sqrt(p) jest miejscem zerowym funkcji f(x) = x2 – p

Page 148: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

148

Przykład ciekawego zastosowania metody Newtona

• Aproksymacyjna metoda Newtona w poszukiwaniu pierwiastków kwadratowych z rzeczywistych liczb nieujemnych, c.d.– wyprowadzenie (aproksymacyjnego) schematu iteracyjnego

• funkcja: f(x) = x2 – p• pochodna: f’(x) = 2x

• schemat: xk+1 = xk – f(xk)/f’(xk) == xk – ((xk)2 – p)/(2xk) == xk – (xk)2/(2xk) + p/(2xk) == xk – xk/2 + p/(2xk) == (1/2)·xk + (p/2)/xk == (1/2)·xk + (1/2)·p/xk == (1/2)·(xk + p/xk)

(średnia arytmetyczna z xk oraz p/xk)• załoŜenie: xk ≠ 0 dla wszystkich k, w szczególności x0 ≠ 0 • po przyjęciu x0 > 0, wobec nieujemności p, mamy

gwarancję, Ŝe dla wszystkich k zachodzi xk ≠ 0

Page 149: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

149

Przykład ciekawego zastosowania metody Newtona

• Aproksymacyjna metoda Newtona w poszukiwaniu pierwiastków kwadratowych z rzeczywistych liczb nieujemnych, c.d.– algorytm (wejscie p, wyjscie y)

if (p < 0) y = „error”

elseif (p = 0)y = 0

else x0 = pfor k=0 to 19

xk+1 = (1/2)·(xk + p/xk)end y = x20

– uwagi• liczba iteracji dostosowana do kalkulatora 9-cio pozycyjnego• demonstrowane wyniki nie uwzględniają tego faktu

(zostały wygenerowane w arytmetyce typu double)

Page 150: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

150

Przykład ciekawego zastosowania metody Newtona

xk

• p = 1000 /20 iteracji/• y = 31.6227766

Page 151: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

151

Przykład ciekawego zastosowania metody Newtona

xk

• p = 2 /20 iteracji/• y = 1.41421356

Page 152: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

152

Przykład ciekawego zastosowania metody Newtona

xk

• p = 9 /20 iteracji/• y = 3

Page 153: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

153

Przykład ciekawego zastosowania metody Newtona

xk

• p = 0.12345678 /20 iteracji/• y = 0.35136417

Page 154: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

154

Przykład ciekawego zastosowania metody Newtona

xk

• p = 999999999 (dziewięć dziewiątek) /20 iteracji/• y = 31622.7765

Page 155: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

155

Przykład ciekawego zastosowania metody Newtona

• Co się dzieje, gdy załoŜenie p ≥ 0 nie jest spełnione ale schemat iteracyjny zostanie uruchomiony?

Page 156: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

156

Przykład ciekawego zastosowania metody Newtona

xk

• p = –1 (wbrew załoŜeniu!) /2 iteracje/• x0 = –1, x1 = 0, czyli jest x2 nieokreślone (formalny wynik: y = „error”)

Page 157: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

157

Przykład ciekawego zastosowania metody Newtona

xk

• p = –3 (wbrew załoŜeniu!) /20 iteracji/• cykliczność ciągu {xk} (formalny wynik: y = „error”)

Page 158: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

158

Przykład ciekawego zastosowania metody Newtona

xk

• p = –10 (wbrew załoŜeniu!) /20 iteracji/• niezbieŜność ciągu {xk} (formalny wynik: y = „error”)

Page 159: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

159

Przykład ciekawego zastosowania metody Newtona

xk

• p = –10 (wbrew załoŜeniu!) /200 iteracji/• niezbieŜność ciągu {xk} (formalny wynik: y = „error”)

Page 160: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

160

Przykład ciekawego zastosowania metody Newtona

xk

• p = –10 (wbrew załoŜeniu!) /2000 iteracji/• niezbieŜność ciągu {xk} (formalny wynik: y = „error”)

Page 161: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

161

Przykład ciekawego zastosowania metody Newtona

xk

• p = –10 (wbrew załoŜeniu!) /2000 iteracji/• niezbieŜność ciągu {xk} (formalny wynik: y = „error”)

Page 162: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

162

Przykład ciekawego zastosowania metody Newtona

xk

• p = –10 (wbrew załoŜeniu!) /2000 iteracji/, zawęŜone wartości• niezbieŜność ciągu {xk} (formalny wynik: y = „error”)

Page 163: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

163

Metoda Newtona (optymalizacyjna)

• Metoda (optymalizacyjna) Newtona– metoda optymalizacji jednowymiarowej bez ograniczeń

(z ewentualnymi ograniczeniami na zakres zmienności zmiennej)

• Dane– jednowymiarowy obszar S

• (obszar musi spełniać kilka dodatkowych załoŜeń)

– określona w obszarze S funkcja f(x)• (funkcja musi spełniać kilka dodatkowych załoŜeń)

• Cel metody – znaleźć x* ∈ S taki, Ŝe ∀x∈S f(x*) ≤ f(x)

(minimalizacja funkcji f(x) w obszarze S)

Page 164: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

164

Metoda Newtona (optymalizacyjna)

• Idea metody Newtona (optymalizacji jednowymiarowej)– niech będzie dana analitycznie jednowymiarowa funkcja f(x), dla której

poszukujemy minimum w pewnym obszarze (w praktyce: w przedziale), i o której zakładamy, Ŝe w tym właśnie przedziale

• jest ciągła• jest wypukła• posiada pierwszą i drugą pochodną (dane analitycznie), które są ciągłe

– uznaje się, Ŝe przebieg optymalizowanej, jednowymiarowej funkcji f(x) w otoczeniu pewnego ustalonego punktu x0 jest taki sam, jak przebieg pewnej funkcji kwadratowej, czyli funkcji postaci g(x) = ax2 + bx + c, gdzie a > 0, o parametrach a, b i c tak dobranych, aby „dobrze”odzwierciedlały przebieg funkcji f(x)

• do „jakości” takiego odzwierciedlenia przyczyniają się oczywiście powyŜsze załoŜenia dotyczące funkcji f(x), które (nie przez przypadek, oczywiście) sątakŜe właściwościami funkcji kwadratowej postaci g(x) = ax2 + bx + c, gdzie a > 0

– przybliŜenie funkcji f(x) jest wykonywane z uŜyciem jej pochodnych

Page 165: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

165

Metoda Newtona (optymalizacyjna)

• Idea metody Newtona (optymalizacji jednowymiarowej), c.d.– za rozwiązanie funkcji f(x) uznaje się rozwiązanie funkcji g(x),

przy czym:• jeŜeli znaleziony punkt (czyli rozwiązanie kwadratowej funkcji g(x)) stanowi

rozwiązanie optymalizowanej funkcji f(x), to zadanie jest zakończone – powyŜsze sprawdzenie moŜe nie być trywialne– ogólne rozwiązanie tego problemu stanowi osobne zagadnienie (warunek stopu)

• jeŜeli znaleziony punkt (czyli rozwiązanie kwadratowej funkcji g(x)) nie stanowi rozwiązania optymalizowanej funkcji f(x), to przyjmuje się, Ŝe stanowi on lepsze przybliŜenie poszukiwanego rozwiązania i powtarza się całe postępowanie

– powyŜsze przyjęcie moŜe być błędne– ogólne rozwiązanie tego problemu stanowi osobne zagadnienie (niezbieŜność)

Page 166: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

166

Metoda Newtona (optymalizacyjna)

• Idea metody Newtona (optymalizacji jednowymiarowej), c.d.– funkcja kwadratowa i jej dwie pierwsze pochodne

• funkcja: g(x) = ax2 + bx + c, gdzie a > 0 • jej pierwsza pochodna: g’(x) = 2ax + b• jej druga pochodna: g’’(x) = 2a

– połoŜenie rozwiązania funkcji kwadratowej: punkt zerowania się (pierwszej) pochodnej

• przyrównanie pierwszej pochodnej do zera: 2ax + b = 0• rozwiązanie: x = –b/2/a

– pierwsza pochodna jest funkcją afiniczną, która zmienia znak w punkcie x = –b/2/a (jest ujemna dla x < –b/2/a i dodatnia dla x > –b/2/a), z czego wynika, Ŝe funkcja g(x) posiada ekstremum w punkcie x = –b/2/a

– poniewaŜ (z załoŜenia) a > 0, więc takŜe 2a > 0, a zatem ekstremum funkcji g(x) jest typu minimum

• uwaga: w zaleŜności od a, funkcja g(x) = ax2 + bx + c moŜe mieć minima, maksima albo punkty przegięcia, a konkretnie:

– funkcja ma minimum, gdy a > 0– funkcja ma punkt przegięcia, gdy a = 0– funkcja ma maksimum, gdy a < 0

Page 167: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

167

Metoda Newtona (optymalizacyjna)

• PrzybliŜanie funkcji f(x) funkcją kwadratową z uŜyciem pochodnych– jeŜeli wszystkie pochodne funkcji f(x) istnieją w pewnym obszarze S,

to w tym obszarze moŜliwe jest przybliŜenie tej funkcji wykorzystujące jej rozwinięcie w szereg Taylora

Page 168: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

168

Metoda Newtona (optymalizacyjna)

• PrzybliŜanie funkcji f(x) funkcją kwadratową z uŜyciem pochodnych– niech dane będą

• ustalony obszar S• funkcja f(x) określona w obszarze S i posiadająca wszystkie pochodne

określone w obszarze S

– rozwinięcie T(x) funkcji f(x) w szereg Taylora wokół punktu y ∈ S dane jest następującym wzorem

T(x) = f(0)(y)(x–y)0/(0!) + f(1)(y)(x–y)1/(1!) + f(2)(y)(x–y)2/(2!) + …= f(y)·1/1 + f’(y)(x–y)/1 + f’’(y)(x–y)2/2 + …= f(y) + f’(y)(x–y) + f’’(y)(x–y)2/2 + …

(rozwinięcie obejmuje nieskończoną liczbę składników)– zastosowana notacja:

• f(k)(x) – oznaczenie k-tej pochodnej funkcji f(x)• w szczególności

– f(0)(x) ≡ f(x) – funkcja– f(1)(x) ≡ f’(x) – jej pierwsza pochodna– f(2)(x) ≡ f’’(x) – jej druga pochodna– …

Page 169: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

169

Metoda Newtona (optymalizacyjna)

• PrzybliŜanie funkcji f(x) funkcją kwadratową z uŜyciem pochodnych– dla dowolnej funkcji f(x)

• dla kaŜdego x ∈ S wykorzystując – nieskończoną liczbę składników rozwinięcia otrzymujemy T(x) = f(x)– skończoną liczbę składników rozwinięcia otrzymujemy T(x) ≈ f(x)

– dla szczególnej funkcji, spełniającej f(k)(x) = 0 dla wszystkich k ≥ 3• dla kaŜdego x ∈ S wykorzystując

– trzy pierwsze składniki rozwinięcia otrzymujemy T(x) = f(x)

• przykładem takiej funkcji jest g(x) = ax2 + bx + c, poniewaŜ:– g’(x) = 2ax + b– g’’(x) = 2a– g’’’(x) = 0– g’’’’(x) = 0– itd.

Page 170: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

170

Metoda Newtona (optymalizacyjna)

• PrzybliŜanie funkcji f(x) funkcją kwadratową z uŜyciem pochodnych– wykorzystując trzyelementowe przybliŜenie q(x) rozwinięcia

funkcji f(x) wokół punktu y ∈ S mamy dla kaŜdego x ∈ Sf(x) ≈ q(x) = f(y) + f’(y)(x–y) + f’’(y)(x–y)2/2

– funkcja q(x)• stanowi przybliŜenie funkcji f(x)• jest trzyelementowym rozwinięciem f(x) w szereg Taylora wokół punktu y• ma postać g(x) = ax2 + bx + c poniewaŜ

q(x) = f(y) + f’(y)(x–y) + f’’(y)(x–y)2/2 = = f(y) + f’(y)x – f’(y)y + f’’(y)(x–y)2/2 = = f(y) + f’(y)x – f’(y)y + f’’(y)(x2–2xy+y2)/2 = = f(y) + f’(y)x – f’(y)y + f’’(y)x2/2 – 2f’’(y)xy/2 + f’’(y)y2/2 = = f(y) + f’(y)x – f’(y)y + f’’(y)x2/2 – f’’(y)xy + f’’(y)y2/2 = = f’’(y)x2/2 + f’(y)x – f’’(y)xy + f(y) – f’(y)y + f’’(y)y2/2 = f’’(y)/2·x2 + (f’(y) – f’’(y)y)·x + (f(y)–f’(y)y+f’’(y)y2/2)

a więc: a = f’’(y)/2, b = f’(y) – f’’(y)y, c = f(y) – f’’(y)y+f’’(y)y2/2

Page 171: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

171

Metoda Newtona (optymalizacyjna)

• Schemat iteracyjny metody– zakładamy, Ŝe dla kaŜdego x ∈ S spełniony jest warunek f’’(x) ≠ 0– powyŜsze załoŜenie oraz zaleŜności a = f’’(y)/2 i b = f’’(y) – f’(y)y

pozwalają na następujące określenie rozwiązania funkcji

x = –b/2/a == –(f’(y) – f’’(y)y)/2/(f’’(y)/2) = –(f’(y) – f’’(y)y)/f’’(y) == –(f’(y)/f’’(y) – f’’(y)y/f’’(y)) = –(f’(y)/f’’(y) – y) == y – f’(y)/f’’(y)

– jeŜeli y jest dowolnym punktem ustalonego obszaru S, to (zgodnie z zasadą przybliŜania funkcji f(x) funkcją kwadratową) punkt x = y – f’(y)/f’’(y) jest rozwiązaniem funkcji f(x) lub lepszym przybliŜeniem tego rozwiązania niŜ punkt y

Page 172: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

172

Metoda Newtona (optymalizacyjna)

• Schemat iteracyjny metody– zasada ustalania następnego punktu na podstawie poprzedniego

pozwala na sformułowanie następującego schematu iteracyjnego

xk+1 = xk – f’(xk)/f’’(xk)

Algorytm1. ustal punkt x0 i podstaw k = 02. dopóki nie zachodzi warunek stopu, wykonuj:

• oblicz xk+1 = xk – f’(xk)/f’’(xk)• podstaw k = k + 1

Page 173: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

173

Metoda Newtona (optymalizacyjna)

• Potencjalne warunki stopu metody– osiągnięcie minimum

• teoretycznie badamy: f’(xk) = 0 • praktycznie badamy: |f’(xk)| ≤ ε

– ustabilizowanie wyniku• teoretycznie badamy: xk+1 = xk

• praktycznie badamy: |xk+1 – xk| ≤ ε– przekroczenie maksymalnej liczby iteracji

• k > k0

gdzie– ε jest małą, dodatnią wartością rzeczywistą (dokładność obliczeń)– k0 jest duŜą, dodatnią wartością całkowitą (maksymalna liczba iteracji)

Page 174: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

174

Metoda Newtona (optymalizacyjna)

• ZbieŜność metody– metoda nie gwarantuje zbieŜności dla kaŜdego wektora początkowego– przyczyny ewentualnej niezbieŜności

• zerowość drugiej pochodnej (a więc nie istnieje jej odwrotność)rezultat: nie moŜna obliczyć xk+1

• niewłaściwy krok metody (choć prawidłowo obliczony) rezultat: f(xk+1) ≥ f(xk)

– w przypadkach zbieŜnych: zbieŜność rzędu drugiego (czyli wysoka!)

Page 175: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

175

Metoda Newtona (optymalizacyjna)

• Czy są moŜliwe sytuacje, w których (optymalizacyjna) metoda Newtona nie działa wcale?– tak

– przyczyny• druga pochodna nieokreślona (nie moŜna zainicjować ciągu {xk}) • druga pochodna dla pewnego xk zerowa (nie moŜna utworzyć elementu xk+1)

• ciąg {xk} jest niezbieŜny, a więc np.:– ciąg {xk} dąŜy do +∞– ciąg {xk} dąŜy do –∞– ciąg {xk} jest cykliczny– ciąg {xk} przejawia inne powody niezbieŜności

» np.: +1, –2, +4, –8, +16, –32, +64, –128, +256, …

Page 176: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

176

Metoda Newtona (optymalizacyjna)

• Czy są moŜliwe sytuacje, w których (optymalizacyjna) metoda Newtona nie działa jednoznacznie (w jakimś sensie)?– tak

– przyczyna• istnienie wielu minimów

– z których róŜne mogą zostać osiągnięte (zaleŜnie od doboru punktu startowego)

Page 177: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

177

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000 – minimum funkcji: x* = –6.10598343090539…– przyjęty warunek stopu: |f’(x)| ≤ 10–6

Page 178: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

178

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000, |f’(x)| ≤ 10–6, x0 = 1

– osiągnięto warunek stopu

Page 179: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

179

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000, |f’(x)| ≤ 10–6, x0 = –5

– osiągnięto warunek stopu

Page 180: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

180

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000, |f’(x)| ≤ 10–6, x0 = –1000

– osiągnięto warunek stopu

Page 181: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

181

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000, |f’(x)| ≤ 10–6, x0 = 1000

– osiągnięto warunek stopu

Page 182: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

182

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000, |f’(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 183: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

183

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000, |f’(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 184: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

184

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000, |f’(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 185: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

185

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = x4 – 50x2 + 300x + 2000, |f’(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 186: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

186

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.5x2 – 5x + 50– minimum funkcji: x* = 5– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 187: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

187

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.5x2 – 5x + 50, |f’(x)| ≤ 10–6, x0 = 1

– osiągnięto warunek stopu

Page 188: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

188

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.5x2 – 5x + 50, |f’(x)| ≤ 10–6, x0 = –1

– osiągnięto warunek stopu

Page 189: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

189

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.5x2 – 5x + 50, |f’(x)| ≤ 10–6, x0 = 1000

– osiągnięto warunek stopu

Page 190: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

190

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.5x2 – 5x + 50, |f’(x)| ≤ 10–6, x0 = –1000

– osiągnięto warunek stopu

Page 191: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

191

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = (1/3)x3

– minimum funkcji: x*: brak (limx→–∞x3 = –∞)– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 192: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

192

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = (1/3)x3, |f’(x)| ≤ 10–6, x0 = 1

– osiągnięto warunek stopu (problem: wynik nie jest minimum!)(uwaga: zbieŜność rzędu pierwszego)

Page 193: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

193

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = (1/3)x3, |f’(x)| ≤ 10–6, x0 = –1

– osiągnięto warunek stopu (problem: wynik nie jest minimum!)(uwaga: zbieŜność rzędu pierwszego)

Page 194: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

194

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = (1/3)x3, |f’(x)| ≤ 10–6, x0 = 1000

– osiągnięto warunek stopu (problem: wynik nie jest minimum!)(uwaga: zbieŜność rzędu pierwszego)

Page 195: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

195

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = (1/3)x3, |f’(x)| ≤ 10–6, x0 = –1000

– osiągnięto warunek stopu (problem: wynik nie jest minimum!)(uwaga: zbieŜność rzędu pierwszego)

Page 196: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

196

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = (1/3)x3, |f’(x)| ≤ 10–6, x0 = 0

– osiągnięto warunek stopu (problem: wynik nie jest minimum)

Page 197: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

197

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.25x4 – x2 + 2x + 10– minimum funkcji: x* = –1.76929235424336…– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 198: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

198

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.25x4 – x2 + 2x + 10, |f’(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 199: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

199

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.25x4 – x2 + 2x + 10, |f’(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 200: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

200

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.25x4 – x2 + 2x + 10, |f’(x)| ≤ 10–6, x0 losowy z rozkladu N(0,1)

– osiągnięto warunek stopu

Page 201: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

201

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.25x4 – x2 + 2x + 10, |f’(x)| ≤ 10–6, x0 = 1

– nie osiągnięto warunku stopu (problem: brak zbieŜności)

Page 202: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

202

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.75x4/3

– minimum funkcji: x* = 0– przyjęty warunek stopu: |f(x)| ≤ 10–6

Page 203: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

203

Metoda Newtona (optymalizacyjna)

• Przykład poszukiwania minimów funkcji, c.d. – f(x) = 0.75x4/3, |f(x)| ≤ 10–6, x0 = 1

– nie osiągnięto warunku stopu (problem: brak zbieŜności)

Page 204: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

204

Metody Newtona: porównanie

• Porównanie: optymalizacyjna a aproksymacyjna metoda Newtona– dzięki odpowiednim załoŜeniom dotyczącym funkcji f(x) optymalizacyjny

schemat iteracyjny xk+1 = xk – f’(xk)/f’’(xk) dla funkcji f(x) prowadzi do:

• znalezienia rozwiązania funkcji f(x) (argumentu zapewniającego minimum) – a jednocześnie –

• znalezienia miejsca zerowego funkcji f’(x) (argumentu zapewniającego zerowość)

a więc jest jednocześnie schematem aproksymacyjnym dla funkcji f’(x)– przez analogię:

schematem aproksymacyjnym dla funkcji f(x) jest więc xk+1 = xk – f(xk)/f’(xk)(reszta algorytmu jest takŜe analogiczna)

Page 205: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

205

Metoda Newtona-Raphsona

• Metoda Newtona-Raphsona– metoda optymalizacji wielowymiarowej bez ograniczeń

(z ewentualnymi ograniczeniami na zakres zmienności zmiennych)

• Dane– wielowymiarowy obszar S– określona w obszarze S funkcja f(x)

• Cel metody – znaleźć x* ∈ S taki, Ŝe ∀x∈S f(x*) ≤ f(x)

(minimalizacja funkcji f(x) w obszarze S)

Page 206: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

206

Metoda Newtona-Raphsona

• Naturalne uogólnienie metody Newtona n wymiarów– niech

• x = [x1, x2, …, xn]T będzie wektorem o rozmiarze n×1• f(x) będzie funkcją jednowymiarową od wektora x

– trzyelementowe rozwinięcie q(x) funkcji f(x) w szereg Taylora wokółwektora y ∈ S dane jest następującym wzorem

q(x) = f(y) + (∇∇∇∇f(y))T(x–y) + 1/2·(x–y)THf(y)(x–y)• gdzie

– ∇∇∇∇f(y) – gradient funkcji f(x) od wektora y– Hf(y) – hesjan funkcji f(x) od wektora y

Page 207: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

207

Metoda Newtona-Raphsona

• Definicja gradientu ∇∇∇∇f funkcji f(x) dla x = [x1, x2, …, xn]T

– gradient (wektor o rozmiarze n×1)

∂f/∂x1

∇∇∇∇f = ∂f/∂x2

∂f/∂xn

(istnieje, gdy f(x) posiada wszystkie pierwsze pochodne)

Page 208: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

208

Metoda Newtona-Raphsona

• Cechy gradientu ∇∇∇∇f funkcji f(x) dla x = [x1, x2, …, xn]T

– gradient ∇∇∇∇f funkcji f(x) jest w ogólności wektorem pierwszych pochodnych funkcji f(x) (po odpowiednich elementach wektora x)

– gradient ∇∇∇∇f(y) funkcji f(x) od wektora y jest wektorem wartości pierwszych pochodnych funkcji f(x) obliczonych dla wektora y

– interpretacja graficzna: gradient funkcji w punkcie (o ile istnieje i jest niezerowy) jest wektorem wskazującym kierunek, w którym wzrost wartości tej funkcji w otoczeniu tego punktu jest maksymalny

• w punktach ekstremalnych (ale nie tylko) gradient jest wektorem zerowym (dlatego jest naturalnie wykorzystywany w warunkach stopu)

Page 209: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

209

Metoda Newtona-Raphsona

Graficzna interpretacja gradientu

Page 210: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

210

Metoda Newtona-Raphsona

• Definicja hesjanu Hf funkcji f(x) dla x = [x1, x2, …, xn]T

– hesjan (macierz o rozmiarach n×n)

∂f2/(∂x1∂x1) ∂f2/(∂x1∂x2) … ∂f2/(∂x1∂xn)

Hf = ∂f2/(∂x2∂x1) ∂f2/(∂x2∂x2) … ∂f2/(∂x2∂xn)

… … … …

∂f2/(∂xn∂x1) ∂f2/(∂xn∂x2) … ∂f2/(∂xn∂xn)

(istnieje, gdy f(x) posiada wszystkie drugie pochodne)

Page 211: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

211

Metoda Newtona-Raphsona

• Cechy hesjanu Hf funkcji f(x) dla x = [x1, x2, …, xn]T

– hesjan Hf funkcji f(x) jest w ogólności macierzą drugich pochodnych funkcji f(x) (po odpowiednich parach elementów wektora x)

– hesjan Hf(w) funkcji f(x) od wektora w jest macierzą wartości drugich pochodnych funkcji f(x) obliczonych dla wektora w

– uwaga: interpretacja graficzna hesjanu jest bardziej złoŜona niŜinterpretacja graficzna gradientu, poniewaŜ gradient jest wektorem (który posiada naturalną interpretację graficzną w postaci strzałki), podczas gdy hesjan jest macierzą (wiele strzałek?)

Page 212: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

212

Metoda Newtona-Raphsona

• Pewne właściwości hesjanu Hf funkcji f(x) – poniewaŜ dla wszystkich i oraz j zachodzi ∂f2/(∂xi∂xj) = ∂f2/(∂xj∂xi),

więc hesjan Hf(w) dla kaŜdego wektora w jest macierzą symetryczną• tw. Schwarza (jeŜeli pochodne istnieją i są ciągłe, to są sobie równe)

– jeŜeli dwukrotnie róŜniczowalna funkcja f(x) jest wypukła w obszarze S, to jej hesjan Hf(s) jest dla kaŜdego wektora s z obszaru S macierząnieujemnie określoną (prawdziwe jest takŜe stwierdzenie odwrotne)

Page 213: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

213

Metoda Newtona-Raphsona

• Uogólnienie schematu iteracyjnego na n wymiarów, c.d.– analogiczna do przypadku jednowymiarowego zasada ustalania

następnego wektora na podstawie poprzedniego pozwala na sformułowanie następującego schematu iteracyjnego

xk+1 = xk – (Hf(xk))–1∇∇∇∇f(xk)

Algorytm

1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• oblicz xk+1 = xk – (Hf(xk))–1∇∇∇∇f(xk)• podstaw k = k + 1

Page 214: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

214

Metoda Newtona-Raphsona

• Potencjalne warunki stopu metody– osiągnięcie minimum

• teoretycznie badamy: ∇∇∇∇f(xk) = 0• praktycznie badamy: ||∇∇∇∇f(xk)|| ≤ ε

– ustabilizowanie wyniku• teoretycznie badamy: xk+1 = xk

• praktycznie badamy: ||xk+1 – xk|| ≤ ε– przekroczenie maksymalnej liczby iteracji

• k > k0

gdzie– ε jest małą, dodatnią wartością rzeczywistą (dokładność obliczeń)– k0 jest duŜą, dodatnią wartością całkowitą (maksymalna liczba iteracji)

Page 215: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

215

Metoda Newtona-Raphsona

• ZbieŜność metody– metoda nie gwarantuje zbieŜności dla kaŜdego wektora początkowego– przyczyny ewentualnej niezbieŜności

• osobliwość hesjanu (a więc nie istnieje jego odwrotność)rezultat: nie moŜna obliczyć xk+1

• niewłaściwy krok metody (choć prawidłowo obliczony) rezultat: f(xk+1) ≥ f(xk)

– w przypadkach zbieŜnych: zbieŜność rzędu drugiego (czyli wysoka!)

Page 216: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

216

Metoda Newtona-Raphsona

• Idea kroku metody– wektor dodawany do wektora xk w celu przekształcenia go w wektor xk+1

nosi nazwę kroku metody i jest oznaczany przez sk

– w metodzie Newtona-Raphsona sk = –(Hf(xk))–1∇∇∇∇f(xk)(ale w innych metodach wektor ten moŜe być ustalany inaczej)

Page 217: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

217

Ilustracja kroku metody sk = – (Hf(xk))–1∇∇∇∇f(xk)

(reprezentowany strzałką)

Metoda Newtona-Raphsona

xkxk+1

sk

Page 218: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

218

Metoda Newtona-Raphsona

• Metoda Newtona jest szczególnym przypadkiem metody Newtona-Raphsona, poniewaŜ gdy x jest wektorem jednoelementowym, czyli x = [x] (rozmiar 1x1), to – f(x) = f([x]) jest funkcją jednowymiarową,

którą moŜna zapisywać jako f(x)– ∇∇∇∇f(x) = ∇∇∇∇f([x]) = [∂f/∂x1] = [f’(x)] jest wektorem jednoelementowym,

który moŜna zapisywać jako f’(x)– Hf(x) = Hf([x]) = [∂f2/(∂x1∂x1)] = [f’’(x)] jest macierzą jednoelementową,

którą moŜna zapisywać jako f’’(x)• A więc

– zapisxk+1 = xk – (Hf(y))–1∇∇∇∇f(y)

– sprowadza się doxk+1 = xk – (f’’(x))–1f’(x)

– czyli doxk+1 = xk – f’(x)/f’’(x)

Page 219: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

219

Metoda Newtona-Raphsona

• Przykład minimalizacji funkcji od argumentu dwuwymiarowego (argumenty mają postać x = [x1, x2]T)– funkcja f(x) = (x1)2 + 2(x2)2 + 3x1

– gradient

∇∇∇∇f = ∂f/∂x1 = 2x1 + 3 ∂f/∂x2 4x2

– hesjan

Hf = ∂f2/(∂x1∂x1) ∂f2/(∂x1∂x2) = 2 0

∂f2/(∂xn∂x1) ∂f2/(∂xn∂x2) 0 4

Page 220: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

220

Metoda Newtona-Raphsona

• Przykład minimalizacji, c.d.– gradient w kolejnych iteracjach

• poniewaŜ gradient nie jest wektorem stałych, więc będzie musiałbyć wyliczany w kaŜdej iteracji

– hesjan w kolejnych iteracjach• poniewaŜ hesjan jest macierzą stałych, więc będzie taki sam

we wszystkich iteracjach• odwrotność hesjanu (takŜe identyczna we wszystkich iteracjach)

(Hf)–1 = 1/2 0

0 1/4

– przyjęty warunek stopu: ∇∇∇∇f(xk) = 0

Page 221: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

221

Metoda Newtona-Raphsona

• Przykład minimalizacji, c.d.– rozwiązanie początkowe x0 = 1

2

Page 222: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

222

Metoda Newtona-Raphsona

• Przykład minimalizacji, c.d.– x0 = 1

2 – pierwsza iteracja

∇∇∇∇f (x0) = 2·1 + 3 = 5

4·2 8

– poniewaŜ warunek stopu nie jest spełniony, więc obliczamy x1 = x0 – (Hf(y))–1∇∇∇∇f(y)x1 = 1 – 1/2 0 5 = 1 – 5/2 = –3/2

2 0 1/4 8 2 2 0

Page 223: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

223

Metoda Newtona-Raphsona

• Przykład minimalizacji, c.d.– x1 = –3/2

0

– druga iteracja∇∇∇∇f (x1) = 2·(–3/2) + 3 = 0

4·0 0

– poniewaŜ warunek stopu jest spełniony, więc wektor x1jest rozwiązaniem (stanowi minimum funkcji f(x))

• uwaga: dzięki temu, Ŝe ∇∇∇∇f (x1) = 0, kolejne rozwiązania, tzn. x2, x3, …, spełniałyby x1 = x2 = x3 = …

Page 224: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

224

Przykład zastosowania metody Newtona-Raphsona

• Problem najmniejszych kwadratów (PMK) i jego rozwiązanie– problem najmniejszych kwadratów moŜe (i zazwyczaj jest )

rozwiązywany tzw. metodą najmniejszych kwadratów (MNK) ☺

• PNK jest problemem dopasowania prostej/płaszczyzny/… do zbioru pewnych punktów, czyli problemem odkrycia zaleŜności liniowej pomiędzy ustalonymi zmiennymi wejściowymi a wyjściowymi

• PNK jest (typowym) problemem optymalizacyjnym, jednak na tyle prostym, ze posiada jawne rozwiązanie analityczne

Page 225: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

225

Przykład zastosowania metody Newtona-Raphsona

• Wywód PNK startujacy od rozwiązania układu równań– niec dany będzie układ Xb = y, gdzie X, b i y są macierzami/wektorami

o wymiarach Xmxn, bnx1, ymx1, w którym X i y są (odpowiednio) macierząoraz wektorem stałych, natomiast b jest wektorem zmiennych

– rozwiązanie układu polega na znalezieniu wektora b zapewniającego równość: Xb = y

– w ogólności, róŜne moŜliwe przypadki opisuje twierdzenie Kroneckera-Capelli’ego; w szczególności (dla X będącego macierzą pełnego rzędu) moŜliwe są następujące sytuacje

• gdy m < n, to Xb = y moŜe mieć nieskończenie wiele rozwiązań• gdy m = n, to Xb = y moŜe mieć jedno rozwiązanie• gdy m > n, to Xb = y moŜe mieć zero rozwiązań

– co oznacza, Ŝe nie istnieje wektor b zapewniający równość Xb = y

Page 226: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

226

Przykład zastosowania metody Newtona-Raphsona

• Wywód PNK startujący od rozwiązania układu równań, c.d.• RozwaŜamy sytuację, w której nie istnieje wektor b zapewniający

równość Xb = y– wtedy moŜna szukać x takiego, aby wektor Xb był jak

najbardziej „bliski” wektorowi y, tzn. aby wektor Xb – ybył jak najbardziej „bliski” wektorowi 0

– formalnie: szukamy wektora b minimalizującego wartość wyraŜenia (skalarnego) ||Xb – y||2

• uwaga: znane jest optymalne rozwiązanie analityczne tego problemu, mające postać: b = (XTX)–1XTy (jest wynik tzw. metody najmniejszych kwadratów, MNK)

Page 227: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

227

Przykład zastosowania metody Newtona-Raphsona

• Rozwiązywanie PNK metodą Newtona-Raphsona • Niech s(b) = ||Xb – y||2

– poniewaŜ dla rzeczywistych w zachodzi ||w||2 ≡ wTw, więc takŜe ||Xb – y||2 = (Xb – y)T(Xb – y)

– przekształcając to wyraŜenie otrzymujemy:||Xb – y||2 = (Xb – y)T(Xb – y) = ((Xb)T – yT)(Xb – y) == (bTXT – yT)(Xb – y) = bTXT(Xb – y) – yT(Xb – y) == bTXTXb – bTXTy – (yTXb – yTy) = bTXTXb – bTXTy – yTXb + yTy == bTXTXb – 2bTXTy + yTy

Page 228: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

228

Przykład zastosowania metody Newtona-Raphsona

• Rozwiązywanie PNK metodą Newtona-Raphsona, c.d.• Ustalamy następujące składowe:

– gradient: ∇∇∇∇s(b) = 2XTXb – 2XTy = 2(XTXb – XTy) (zaleŜy liniowo od b)– hesjan: Hs(b) = 2XTX (nie zaleŜy od b)

• zatem (Hs(bk))–1 = (1/2)(XTX)–1 (nie zaleŜy od b)

• A więc (Hs(b))–1∇∇∇∇s(b) = (1/2)(XTX)–1·2(XTXb – XTy) = = (XTX)–1(XTXb – XTy) = (XTX)–1XTXb – (XTX)–1XTy == Ib – (XTX)–1XTy = b – (XTX)–1XTy

Page 229: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

229

Przykład zastosowania metody Newtona-Raphsona

• Rozwiązywanie PNK metodą Newtona-Raphsona, c.d.• Po zaadaptowaniu schematu iteracyjnego

metody Newtona-Raphsona xk+1 = xk – (Hf(xk))–1∇∇∇∇f(xk) do funkcji s(b) (zmienną jest wektor b) powstaje schemat:bk+1 = bk – (Hs(bk))–1∇∇∇∇s(bk)

• Wykorzystując równość (Hs(b))–1∇∇∇∇s(b) = b – (XTX)–1XTyotrzymujemy ostatecznie:bk+1 = bk – (bk – (XTX)–1XTy) = bk – bk + (XTX)–1XTy = (XTX)–1XTy

• Czyli dla dowolnego b0 zachodzi:b1 = b0 – (b0 – (XTX)–1XTy) = b0 – b0 + (XTX)–1XTy = (XTX)–1XTy

Page 230: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

230

Przykład zastosowania metody Newtona-Raphsona

• Rozwiązywanie PNK metodą Newtona-Raphsona, c.d.• Uzyskany wynik w postaci b1 = (XTX)–1XTy

– powstaje w wyniku wykonania jednego (pierwszego) kroku– nie zaleŜy od b0 (tzn. dla kaŜdego b0 wektor b1 będzie taki sam) – stanowi rozwiązanie optymalne (czyli wynik wygenerowany przez MNK)

• Wniosek: dla kaŜdego rozwiązania początkowego metoda Newtona-Raphsona znajduje optymalne rozwiązanie PNK w jednym kroku

Page 231: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

231

Więcej o metodach iteracyjnych

• Krok (wielowymiarowej) metody iteracyjnej– wektor dodawany do wektora xk w celu przekształcenia go w wektor xk+1

nosi nazwę kroku metody i jest oznaczany przez sk

Page 232: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

232

Więcej o metodach iteracyjnych

• Ogólna postać (wielowymiarowych) metod iteracyjnych wyraŜona z jawnym wykorzystaniem kroku metody

Algorytm

1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• znajdź sk

• oblicz xk+1 = xk + sk

• podstaw k = k + 1

Page 233: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

233

Więcej o metodach iteracyjnych

• Wersja algorytmu Newtona-Raphsona z jawnym wykorzystaniem kroku metody

Algorytm

1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• oblicz sk = –(Hf(xk))–1∇∇∇∇f(xk)• oblicz xk+1 = xk + sk

• podstaw k = k + 1

Page 234: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

234

Więcej o metodach iteracyjnych

• Wyznaczając krok metody moŜliwe jest rozwaŜenie osobno – kierunku poszukiwań: dk

• wektor (zasadniczo niezerowy)

• reprezentuje wyłącznie kierunek (tzn. kierunek kroku metody)

• jeŜeli jest niezerowy, to jest zwykle przedstawiany postaci unormowanej (tzn. o długości 1)

– długości kroku: αk

• skalar (zasadniczo niezerowy)

• specyfikuje wyłącznie długość (tzn. długość kroku metody)

• moŜe być wyznaczany tylko wtedy, gdy dk ≠ 0

– wtedy: krok metody sk = αkdk

Page 235: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

235

Więcej o metodach iteracyjnych

• Kierunek poszukiwań i długość kroku na podstawie wektora kroku– mając sk (który w metodzie Newtona-Raphsona obliczamy jako

sk = –(Hf(xk))–1∇∇∇∇f(xk)) moŜna (o ile sk ≠ 0) zawsze znaleźć kierunek poszukiwań dk i długość kroku αk wykorzystując zaleŜności

• dk = sk/||sk||• αk = ||sk||

(choć tak naprawdę nie są juŜ wtedy one metodzie potrzebne)• uwaga: krok metody, a tym samym kierunek poszukiwań i długość kroku

mogą nie istnieć!

– w niektórych innych metodach kolejność pozyskiwania tych elementów moŜe być jednak inna (najpierw kierunek i długość, a potem krok), co pozwala tym metodom pokonywać pewne słabości metody Newtona-Raphsona

Page 236: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

236

Więcej o metodach iteracyjnych

• Ogólna postać (wielowymiarowych) metod iteracyjnych wyraŜona z jawnym wykorzystaniem kierunku poszukiwańoraz długości kroku

Algorytm1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• znajdź dk

• znajdź αk

• oblicz sk = αkdk

• oblicz xk+1 = xk + sk

• podstaw k = k + 1

Page 237: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

237

Problemy metody Newtona-Raphsona

• Potencjalne problemy– kierunek poszukiwań

• nie istnieje• jest bliski wektorowi zerowemu• nie jest właściwy

– w szczególności: nie tworzy kata rozwartego z gradientem

– długość kroku • jest bliska zeru• jest niewłaściwa

• Problemy te nie są wynikiem jakiegoś błędu postepowania, lecz wynikiem stosowania w metodzie (zawsze skończonego) przybliŜania funkcji f(x))

Page 238: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

238

Idea niezaleŜnego kierunku poszukiwań i długości kroku

• Problem długości kroku w metodzie Newtona-Raphsona– obserwacja: dla znalezionego kroku metody sk = –(Hf(xk))–1∇∇∇∇f(xk)

długość tego kroku αk = ||sk|| moŜe być nieoptymalna, tzn. moŜe się okazać, Ŝe lepsze przybliŜenie muminum funkcji otrzymuje siędla długości kroku większej lub mniejszej od obliczonej

Page 239: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

239

Idea niezaleŜnego kierunku poszukiwań i długości kroku

• Inna metoda poszukiwania kroku metody sk

– ustal dk ≠ 0– znajdź αk ≥ 0 minimalizujące funkcję f(αk) = f(xk + αkdk)

• w praktyce interesują nas wartości αk > 0

– oblicz sk = αkdk

• Metoda ta zawiera wewnętrzny problem optymalizacji – jest to zawsze problem optymalizacji jednowymiarowej

z ograniczeniem na zakres zmiennej (zmienna nieujemna)

– jako taki moŜe być rozwiązywany np. metodą Newtona (z modyfikacją uwzględniającą nieujemność zmiennej)

Page 240: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

240

Uogólniona metoda Newtona

Ilustracja problemu: znajdź αk ≥ 0 minimalizujące f(αk) = f(xk + αkdk)

xk

Page 241: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

241

Uogólniona metoda Newtona

Ilustracja problemu: znajdź αk ≥ 0 minimalizujące f(αk) = f(xk + αkdk)

dk

Page 242: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

242

Ilustracja problemu: znajdź αk ≥ 0 minimalizujące f(αk) = f(xk + αkdk)

Page 243: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

243

Ilustracja problemu: znajdź αk ≥ 0 minimalizujące f(αk) = f(xk + αkdk)

Uogólniona metoda Newtona

αk0

Page 244: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

244

Idea niezaleŜnego kierunku poszukiwań i długości kroku

• Przykład tworzenia (jednowymiarowej) funkcji f(αk) = f(xk + αkdk)– funkcja: f(x) = (x1)2 + 2(x2)2 + 3x1

– xk = 1

2

– dk = –5/2

–2

– wtedy– xk + αkdk = 1 – 5/2·αk

2 – 2αk

– f(αk) = (1 – 5/2·αk)2 + 2(2 – 2αk)2 + 3(1 – 5/2·αk) == 57/4·(αk)2 – 57/2·αk + 12

Page 245: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

245

Idea niezaleŜnego kierunku poszukiwań i długości kroku

• WaŜna implikacja warunku „ znajdź αk ≥ 0 …”: – dk musi być tak dobrany, Ŝe aby dotrzeć do minimum funkcji z wektora

xk naleŜy poruszać się w stronę wyznaczoną wektorem dk („do przodu”)

– a więc przyjęcie np. • dk = –∇∇∇∇f(xk) jest dopuszczalne

– bo wektor –∇∇∇∇f(xk) wskazuje kierunek maksymalnego spadku funkcji– znalezione αk będzie potencjalnie dodatnie

• dk = ∇∇∇∇f(xk) jest niedopuszczalne– bo wektor ∇∇∇∇f(xk) wskazuje kierunek maksymalnego wzrostu funkcji– znalezione αk będzie zawsze zerem

• Sytuacje szczególne (powinny być uwzględnione w warunkach stopu metod)– dk = 0– αk = 0

Page 246: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

246

Idea niezaleŜnego kierunku poszukiwań i długości kroku

• Poszukiwanie dowolnej (niekoniecznie nieujemnej) długości kroku metody sk

– ustal dk ≠ 0– znajdź αk minimalizujące funkcję f(αk) = f(xk + αkdk)

(zamiast: „znajdź αk ≥ 0 minimalizujące funkcję f(αk) = f(xk + αkdk)”)– oblicz sk = αkdk

• Metoda ta zawiera wewnętrzny problem optymalizacji – jest to zawsze problem optymalizacji jednowymiarowej bez ograniczeń

– jako taki moŜe być rozwiązywany np. (optymalizacyjną) metodąNewtona

Page 247: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

247

Uogólniona metoda Newtona

Ilustracja problemu: znajdź αk minimalizujące f(αk) = f(xk + αkdk)

xk

Page 248: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

248

Uogólniona metoda Newtona

Ilustracja problemu: znajdź αk minimalizujące f(αk) = f(xk + αkdk)

±dk

Page 249: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

249

Ilustracja problemu: znajdź αk minimalizujące f(αk) = f(xk + αkdk)

Page 250: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

250

Ilustracja problemu: znajdź αk minimalizujące f(αk) = f(xk + αkdk)

Uogólniona metoda Newtona

αk0

Page 251: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

251

Idea niezaleŜnego kierunku poszukiwań i długości kroku

• WaŜna implikacja warunku „ znajdź αk …”: – dk moŜe być tak dobrany, Ŝe aby dotrzeć do minimum funkcji z wektora

xk naleŜy poruszać się po linii wyznaczonej wektorem dk („do przodu”lub „do tyłu”)

– a więc przyjęcie np. • dk = –∇∇∇∇f(xk) jest dopuszczalne

– wektor –∇∇∇∇f(xk) wskazuje kierunek maksymalnego spadku funkcji– znalezione αk będzie wtedy potencjalnie dodatnie

• dk = ∇∇∇∇f(xk) jest dopuszczalne– wektor ∇∇∇∇f(xk) wskazuje kierunek maksymalnego wzrostu funkcji– znalezione αk będzie wtedy potencjalnie ujemne

• Sytuacje szczególne (powinny być uwzględnione w warunkach stopu metod)– dk = 0– αk = 0

Page 252: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

252

Idea niezaleŜnego kierunku poszukiwań i długości kroku

• Modyfikacja metody Newtona-Raphsona wykorzystująca optymalizacyjne poszukiwanie długości kroku metody

Algorytm

1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• ustal dk

• znajdź αk ≥ 0 minimalizujące funkcję f(αk) = f(xk + αkdk)

• oblicz sk = αkdk

• oblicz xk+1 = xk + sk

• podstaw k = k + 1

(podstawowy algorytm tzw. uogólnionych metod newtonowskich)

Page 253: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

253

Metoda Newtona-Raphsona

• Metoda Newtona-Raphsona

Algorytm

1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• oblicz sk = –(Hf(xk))–1∇∇∇∇f(xk)• oblicz xk+1 = xk + sk

• podstaw k = k + 1

Page 254: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

254

Popularne modyfikacje (w skrócie)

• Uogólniona metoda Newtona

Algorytm

1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• oblicz dk = –(Hf(xk))–1∇∇∇∇f(xk)

• znajdź αk ≥ 0 minimalizujące funkcję f(αk) = f(xk + αkdk)

• oblicz sk = αkdk

• oblicz xk+1 = xk + sk

• podstaw k = k + 1

(metoda charakteryzuje się ulepszoną zbieŜnością)

Page 255: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

255

Popularne modyfikacje (w skrócie)

• Metoda Cauchy’ego

Algorytm

1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• oblicz dk = –∇∇∇∇f(xk)

• znajdź αk ≥ 0 minimalizujące funkcję f(αk) = f(xk + αkdk)

• oblicz sk = αkdk

• oblicz xk+1 = xk + sk

• podstaw k = k + 1

(metoda nie wymaga znajomości hesjanu ani drugich pochodnych)

Page 256: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

256

Popularne modyfikacje (w skrócie)

• Metoda Levenberga-Marquarda (ujednolicona)

Algorytm

1. ustal wektor x0 i podstaw k = 0

2. dopóki nie zachodzi warunek stopu, wykonuj:• znajdź ε ≥ 0 gwarantujące dodatnią określoność macierzy Hf(xk) + εI• oblicz dk = –(Hf(xk) + εI)–1∇∇∇∇f(xk)

• znajdź αk ≥ 0 minimalizujące funkcję f(αk) = f(xk + αkdk)• oblicz sk = αkdk

• oblicz xk+1 = xk + sk

• podstaw k = k + 1

(metoda gwarantuje zbieŜność dla kaŜdego wektora początkowego)

Page 257: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

257

Ujednolicona a nieujednolicona metoda Levenberga-Marquarda

• Podsumowując: w klasycznym sformułowaniu metody Levenberga-Marquarda kierunek poszukiwań dk, zadany równością dk = –(Hf(xk) + εI)–1∇∇∇∇f(xk), znajduje się rozwiązując układ równań(Hf(xk) + εI)dk = –∇∇∇∇f(xk),co prowadzi do uzyskania identycznego wektora dk(o ile taki istnieje)

• Stosowane w ramach wykładu ujednolicenie (w sensie: ujednolicenie zapisu) tej metody oznacza przede wszystkim, Ŝe obliczanie kierunku poszukiwań dk zapisuje się jako „oblicz dk = –(Hf(xk) + εI)–1∇∇∇∇f(xk)”, (co ujednolica ten zapis z opisami pozostałych metod)a nie jako „znajdź dk rozwiązując układ rownań (Hf(xk) + εI)dk = –∇∇∇∇f(xk)”, (co jest znacznie praktyczniejsze z obliczeniowego punktu widzenia)

Page 258: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

258

Ujednolicona a nieujednolicona metoda Levenberga-Marquarda

• Dodatkowa uwaga: obliczanie wektora zadanego równaniem x = A–1b poprzez rozwiązanie układu równań Ax = b moŜna stosować takŜe w pozostałych metodach– np. w metodzie Newtona-Raphsona krok metody sk, dany jako

sk = –(Hf(xk))–1∇∇∇∇f(xk), moŜna obliczać rozwiązając układ równań(Hf(xk))sk = –∇∇∇∇f(xk), gdzie sk oznacza wektor zmiennych (dzięki czemu nie ma potrzeby znajdowania odwrotności hesjanu)

Page 259: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

259

Parametryzacja metody Levenberga-Marquarda (ujednoliconej)

• Rola parametru ε > 0 przy ustalaniu wartości macierzy Hf(xk) + εI– jakie wartości moŜe (w ekstremalnych sytuacjach)

przyjmować parametr ε?

Page 260: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

260

Parametryzacja metody Levenberga-Marquarda (ujednoliconej)

• Oznaczenia – d ≡ dk

– g ≡ ∇∇∇∇f(xk) – P ≡ Hf(xk) + εI

(gdzie wartość ε ≥ 0 jest tak dobrana, Ŝe P jest dodatnio określona)• Przy tych oznaczeniach kierunek poszukiwań przedstawia się jako

d = –P–1g

Page 261: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

261

Parametryzacja metody Levenberga-Marquarda (ujednoliconej)

• Rola parametru ε przy ustalaniu wartości macierzy P ≡ Hf(xk) + εI– niech ε → 0

• wtedy P → Hf(xk) oraz d = –P–1g = –(Hf(xk))–1g(stosując pełne oznaczenia: dk = –(Hf(xk))–1∇∇∇∇f(xk))

– wniosek: (ujednolicona) metoda Levenberga-Marquarda sprowadza sięw tym przypadku do uogólnionej metody Newtona

Page 262: Techniki optymalizacji - fc.put.poznan.plfc.put.poznan.pl/materials/116-wyklady-to-cz-1-dla-std.pdf · Przedstawiane metody/rozwi ązania • Rodzaje przedstawianych metod: klasyczne

262

Parametryzacja metody Levenberga-Marquarda (ujednoliconej)

• Rola parametru ε przy ustalaniu wartości macierzy P ≡ Hf(xk) + εI– niech ε → ∞

• wtedy P → εI oraz d = –P–1g = –(εI)–1g = –(1/ε)I–1g = –(1/ε)Ig = –(1/ε)g(stosując pełne oznaczenia: dk = –(1/ε)∇∇∇∇f(xk))

– uwaga: poniewaŜ wektor dk definiuje jedynie kierunek poszukiwań, jego długośćjest nieistotna, a więc kaŜdy dodatni skalar s w wyraŜeniu dk = –s∇∇∇∇f(xk) moŜe byćpominięty

– wobec powyŜszej uwagi i warunku ε ≥ 0, kierunek poszukiwań moŜna zapisaćjako dk = –∇∇∇∇f(xk)

– wniosek: (ujednolicona) metoda Levenberga-Marquarda sprowadza sięw tym przypadku do metody Cauchy’ego