12. seminář: Numerická optimalizace, optimalizace v Matlabu Příklad 1: Seznamte se s používáním metod jednorozměrné numerické optimalizace v prostředí Matlab. Stáhněte si z ISu ze složky "numerické metody"soubory zlaty06.m, interpolace06.m, bisekce06.m, regula06.m atecny06.m. Jde o spustitelné soubory Matlabu, které demonstrují použití jednotlivých optimalizačních metod na minimalizaci funkce — 2sin(ic) + sin(2x) — 2sin(3x)/3 na intervalu (1,3) s přesností 0,0001. Máte-li soubory uloženy v aktuálním adresáři, lze je spustit z příkazové řádky Matlabu příkazem zlaty06, apod. Výpočet je odkrokován po jednotlivých iteracích, postup výpočtu lze sledovat na grafu. Při pozastavení výpočtu se objeví prompt K>>, pokračování výpočtu se dosáhne příkazem return. Chcete-li výpočet ukončit předčasně, je možné použít příkaz dbquit. Porovnejte, kolik bylo u jednotlivých metod potřeba iterací k dosažení stanovené přesnosti. Příklad 2: Seznamte se s Optimization toolboxem v Matlabu. Dokumentaci naleznete na odkazu http: / / www.mathworks. com/help / optim/ug/choosing-a-solver. htmlbrhkghv-19 Řešte pomocí příkazu fmincon (http://www.mathworks.com/help/optim/ug/fmincon.html) úlohu lineárního lomeného programování z minulého cvičení /Ol, x2, x3) = 2aľ1+X2+3aľ3 -> max za podmínek X\ — X2 + £3 < 5 X2 < 3 Xl,X2,Xs > 0 Pozn: Funkci / můžete definovat jako anonymní funkci příkazem f = @(x) (2*x(l)+x(2)+3*x(3))/(x(l)+x(2)+x(3)); Pozor: algoritmus je nastaven jako minimalizační! Příklad 3: Seznamte se s GUI optimtool v Matlabu. Použijte příkaz lsqlin nebo lsqnon k určení hodnoty regresních koeficientů pro úlohu o Phillipsově křivce z minulého cvičení. Uvažujeme model n = (3q + —, data jsou dána tabulkou: year I960 1961 1962 1963 1964 1965 1966 1967 1968 1969 u 6,6 6 5,5 5,5 5 4 3,8 3,8 3,4 3,5 7Í [%; 1,4 0,7 1,4 1,7 1,2 2 3,2 3,4 4,8 6