Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Podobne dokumenty
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Spis treści. Koszalin 2006 [BADANIA OPERACYJNE PROGRAMOWANIE LINIOWE]

d) Definiowanie macierzy z wykorzystaniem funkcji systemu Matlak

OBLICZENIA OPTYMALIZACYJNE W MATLABIE. WEiTI PW

//warunki początkowe m=500; T=30; c=0.4; t=linspace(0,t,m); y0=[-2.5;2.5];

maj 2014 Politechnika Gdańska Wydział Oceanotechniki i Okrętownictwa St. II stop., sem. I

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Optymalizacja systemów

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania. Technologie informatyczne

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Optymalizacja systemów

WŁAŚCIWOŚCI PROGRAMOWEJ REALIZACJI ZADANIA PROGRAMOWANIA CAŁKOWITOLICZBOWEGO

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

POJEMNIK. Politechnika Warszawska. Teoria optymalizacji. Wydziaª Elektryczny ZADANIE PROBLEMOWE

Przegląd metod optymalizacji numerycznej. Krzysztof Malczewski

Egzamin / zaliczenie na ocenę*

ZASTOSOWANIE PROGRAMOWANIA LINIOWEGO W ZAGADNIENIACH WSPOMAGANIA PROCESU PODEJMOWANIA DECYZJI

Rozwiązywanie równań różniczkowych z niezerowymi warunkami początkowymi

Metody Optymalizacji Laboratorium nr 4 Metoda najmniejszych kwadratów

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Wprowadzenie do Mathcada 1

GNU Octave (w skrócie Octave) to rozbudowany program do analizy numerycznej.

Laboratorium: sprawdzian MATLAB

WPROWADZENIE DO ŚRODOWISKA SCILAB

Document: Exercise*02*-*manual /11/ :31---page1of8 INSTRUKCJA DO ĆWICZENIA NR 2

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Excel - użycie dodatku Solver

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Metody optymalizacji Optimization methods Forma studiów: stacjonarne Poziom studiów II stopnia. Liczba godzin/tydzień: 1W, 1Ć

Definicja problemu programowania matematycznego

Rozdział 1 PROGRAMOWANIE LINIOWE

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

Laboratorium 1b Operacje na macierzach oraz obliczenia symboliczne

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Materiały dodatkowe. Simulink PLC Coder

III TUTORIAL Z METOD OBLICZENIOWYCH

Matematyka stosowana i metody numeryczne

1. Zbadać liniową niezależność funkcji x, 1, x, x 2 w przestrzeni liniowej funkcji ciągłych na przedziale [ 1, ).

Metody optymalizacji - wprowadzenie do SciLab a

Rozdział 6 PROGRAMOWANIE WYPUKŁE I KWADRATOWE

Ćwiczenia laboratoryjne - 7. Problem (diety) mieszanek w hutnictwie programowanie liniowe. Logistyka w Hutnictwie Ćw. L. 7

ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1)

Laboratorium Metod Optymalizacji

Obliczenia iteracyjne

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Optymalizacja systemów

O co chodzi z tym MATLAB'em?!

Document: Exercise-05-manual /1/ : page 1 of 16. KATEDRA MECHANIKI STOSOWANEJ Wydzia! Mechaniczny POLITECHNIKA LUBELSKA

Ćwiczenia laboratoryjne - Dobór optymalnego asortymentu produkcji programowanie liniowe. Logistyka w Hutnictwie Ćw. L.

Ćwiczenie 1. Wprowadzenie do programu Octave

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania. Podstawy Automatyki

Elementy projektowania inzynierskiego Przypomnienie systemu Mathcad

Rozdział 2 PROGRAMOWANIE LINIOWE CAŁKOWITOLICZBOWE

Zad. 3: Układ równań liniowych

Wprowadzenie do Scilab: macierze

1 Programowanie w matlabie - skrypty i funkcje

Wprowadzenie do Scilab: macierze

WYKŁAD 9 METODY ZMIENNEJ METRYKI

Automatyka i Robotyka II Stopień ogólno akademicki studia niestacjonarne wszystkie Katedra Automatyki i Robotyki Prof. dr hab. inż.

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Projektowanie układów metodą sprzężenia od stanu - metoda przemieszczania biegunów

Matlab Składnia + podstawy programowania

Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab

Laboratorium WDEC. Opis posługiwania się pakietem AMPL

Modele układów dynamicznych - laboratorium. SIMULINK - wprowadzenie

Obliczenia w programie MATLAB

3 1 + i 1 i i 1 2i 2. Wyznaczyć macierze spełniające własność komutacji: [A, X] = B

Wprowadzenie do programu Mathcad 15 cz. 1

Diary przydatne polecenie. Korzystanie z funkcji wbudowanych i systemu pomocy on-line. Najczęstsze typy plików. diary nazwa_pliku

Przekształcenia liniowe

Programowanie liniowe

Laboratorium Cyfrowego Przetwarzania Obrazów

Metody Numeryczne Optymalizacja. Wojciech Szewczuk

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)

SZYBKI ALGORYTM Z MACIERZĄ SHURA DLA MACIERZY TRÓJDIAGONALNYCH

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Programowanie celowe #1

Wprowadzenie do środowiska

Laboratorium Cyfrowego Przetwarzania Obrazów

Laboratorium Przetwarzania Sygnałów

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 6 AUTOMATYKA

Wykład

Równania nieliniowe, nieliniowe układy równań, optymalizacja

Układ równań liniowych

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

Metody numeryczne Wykład 4

PROGRAMOWANIE KWADRATOWE

KADD Minimalizacja funkcji

PROGRAMOWANIE NIELINIOWE

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Transkrypt:

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Struktury i Algorytmy Wspomagania Decyzji Zapoznanie z narzędziami optymalizacyjnymi w środowisku MATLAB Materiały pomocnicze do zajęć projektowych Opracowanie: Kazimierz Duzinkiewicz, dr hab. inż. Robert Piotrowski, dr inż. Arkadiusz Cimiński, mgr inż.

. Wprowadzenie W środowisku MATLAB a dostępne są biblioteki (ang. toolbo) z procedurami wspomagającymi obliczenia numeryczne znajdujące różne zastosowania. Jedną z takich bibliotek jest Optimization Toolbo, która dostarcza szereg narzędzi i funkcji do optymalizacji.. Wybrane funkcje biblioteki Optimization Toolbo a). fminbnd poszukiwanie minimum funkcji jednej zmiennej postaci: z ograniczeniami postaci: min f () (), i skalary, f() funkcja celu zmiennej zwracająca wartość w postaci skalara. = fminbnd(fun,,) = fminbnd(fun,,,options) [,fval] = fminbnd(...) [,fval,eitflag] = fminbnd(...) [,fval,eitflag,output] = fminbnd(...) szukane rozwiązanie zadania fun funkcja celu zmiennej,, odpowiednio dolne i górne ograniczenie na zmienną, options zmienna w postaci struktury z zapisanymi informacjami o procesie rozwiązywania zadania optymalizacji (strukturę tę modyfikuje się wykorzystując polecenie optimset), fval wartość funkcji celu dla rozwiązania zadania eitflag flaga wyjściowa, czyli komunikat wyjściowy o stanie solver a, Przykład Znajdź minimum funkcji y z przedziału <-3,0>. Przykładowy m-plik może być postaci:

Function wyj=myfun() wyj=.^-; Workspace: =fminbnd(@myfun,-3,0) b). fmincon poszukiwanie minimum nieliniowej funkcji wielu zmiennych postaci: min f (3) z liniowymi i nieliniowymi oraz z równościowymi i nierównościowymi ograniczeniami postaci: c ceq 0 A b 0 Aeq beq lb ub wektor zmiennych o wymiarze [m], gdzie m liczba zmiennych zadania b, beq wektory odpowiednio o wymiarach [n ] i [k ], lb, ub ograniczenia na zmienne w postaci wektorów o wymiarach [m], A, Aeq macierze ograniczeń liniowych nierównościowych i równościowych o wymiarach odpowiednio [m n] oraz [m k], c(), ceq() - ograniczenia nieliniowe w postaci układów równań odpowiednio nierównościowych i równościowych w postaci funkcji zwracających wartości ograniczeń w postaci wektorów dla danego argumentu, f() - jest funkcja celu zwracającą wartość w postaci skalara dla danego wektora argumentów. (4) = fmincon(fun,0,a,b) = fmincon(fun,0,a,b,aeq,beq) = fmincon(fun,0,a,b,aeq,beq,lb,ub) = fmincon(fun,0,a,b,aeq,beq,lb,ub,nonlcon) = fmincon(fun,0,a,b,aeq,beq,lb,ub,nonlcon,options) [,fval] = fmincon(...) [,fval,eitflag] = fmincon(...) [,fval,eitflag,output] = fmincon(...) szukane rozwiązanie zadania fun nieliniowa funkcja celu wektora zmiennych, 3

0 wektor startowy, którego wielkość zależy od liczby zmiennych zadania b, beq wektory odpowiednio o wymiarach [n ] i [k ], lb, ub ograniczenia na zmienne w postaci wektorów o wymiarach [m], A, Aeq macierze ograniczeń liniowych nierównościowych i równościowych o wymiarach odpowiednio [m n] oraz [m k], nonlcon funkcja opisująca ograniczenia nieliniowe równościowe i nierównościowe, options zmienna w postaci struktury z zapisanymi informacjami o procesie rozwiązywania zadania optymalizacji (strukturę tę modyfikuje się wykorzystując polecenie optimset), fval wartość funkcji celu dla rozwiązania zadania eitflag flaga wyjściowa, czyli komunikat wyjściowy o stanie solver a, Przykład Znajdź takie, które minimalizuje funkcję f 3, punkt startowy 0 = [0; 0; 0] i spełnia ograniczenia: 0 3 7. Przykładowa funkcja celu zapisana w postaci m-pliku: function f = myfun() f = -() * () * (3); Ograniczenia są liniowe więc można przedstawić je w postaci macierzy A i b:,, ;,, b 0, 7 A, Następnie określamy wektor startowy jak w poleceniu: 0 0; 0; 0. Wywołując poniższą komendę otrzymamy rozwiązanie zadania optymalizacji: [,fval] = fmincon(@myfun,0,a,b) c). fminsearch poszukiwanie minimum funkcji wielu zmiennych bez ograniczeń (metoda gradientowa) postaci: min f (5) wektor zmiennych, którego wielkość zależy od liczby zmiennych zadania f() - jest funkcja celu zwracającą wartość w postaci skalara dla danego wektora argumentów. 4

= fminsearch(fun,0) = fminsearch(fun,0,options) [,fval] = fminsearch(...) [,fval,eitflag] = fminsearch(...) [,fval,eitflag,output] = fminsearch(...) szukane rozwiązanie zadania fun nieliniowa funkcja wielu zmiennych zależna od, 0 wektor startowy, którego wielkość zależy od liczby zmiennych zadania options zmienna w postaci struktury z zapisanymi opcjami rozwiązania zadania optymalizacji (strukturę tę modyfikuje się wykorzystując polecenie optimset), fval wartość funkcji celu dla rozwiązania zadania eitflag flaga wyjściowa, czyli komunikat wyjściowy o stanie solver a, Przykład 3 Znajdź takie, dla której poniższa funkcja osiągnie minimum: Przyjmij dowolny wektor startowy. 00 f Przykładowy m-plik może być postaci: Function ban = banana() ban = 00*(()-()^)^+(-())^; Wywołując poniższą komendę otrzymamy rozwiązanie zadania optymalizacji: [,fval] = fminsearch(banana,0) d). quadprog poszukiwanie minimum funkcji kwadratowej wielu zmiennych postaci: T T min H f (6) z liniowymi ograniczeniami równościowymi i nierównościowymi postaci: A b Aeq beq lb ub (7) 5

wektor zmiennych o wymiarze [m], gdzie m liczba zmiennych zadania b, beq wektory odpowiednio o wymiarach [n ] i [k ], lb, ub ograniczenia na zmienne w postaci wektorów o wymiarach [m], A, Aeq macierze ograniczeń liniowych nierównościowych i równościowych o wymiarach odpowiednio [m n] oraz [m k], f - jest funkcja celu w postaci wektora o wymiarze [m ] zwracającą wartość w postaci skalara dla danego wektora argumentów. H macierz wagowa o wymiarze [m m]. = quadprog(h,f,a,b) = quadprog(h,f,a,b,aeq,beq) = quadprog(h,f,a,b,aeq,beq,lb,ub) = quadprog(h,f,a,b,aeq,beq,lb,ub,0) = quadprog(h,f,a,b,aeq,beq,lb,ub,0,options) [,fval] = quadprog(...) [,fval,eitflag] = quadprog(...) [,fval,eitflag,output] = quadprog(...) H macierz wagowa, wektor zmiennych, którego wielkość zależy od liczby zmiennych zadania b, beq wektory, których wielkość zależy od liczby ograniczeń liniowych, odpowiednio nierównościowych i równościowych, lb, ub ograniczenia na zmienne w postaci wektorów, których wielkość zależy od wielkości wektora, A, Aeq macierze ograniczeń liniowych odpowiednio nierównościowych i równościowych, c(), ceq() - ograniczenia nieliniowe w postaci układów równań odpowiednio nierównościowych i równościowych w postaci funkcji zwracających wartości ograniczeń w postaci wektorów dla danego argumentu, f() - jest funkcja celu zwracającą wartość w postaci skalara dla danego wektora argumentów. options zmienna w postaci struktury z zapisanymi opcjami rozwiązania zadania optymalizacji (strukturę tę modyfikuje się wykorzystując polecenie optimset), fval wartość funkcji celu dla rozwiązania zadania eitflag flaga wyjściowa, czyli komunikat wyjściowy o stanie solver a, Przykład 4 Znajdź takie, dla której poniższa funkcja osiągnie minimum: f ( ) 6 6

spełniające ograniczenia: Przyjmij dowolny wektor startowy., 0 Powyższy problem należy najpierw zapisać w notacji macierzowej: H, f -, -6 Przykładowy m-plik może być postaci: H = [ -; - ]; f = [-; -6]; A = [ ; - ; ]; b = [; ; 3]; lb = zeros(,); [,fval,eitflag] = quadprog(h,f,a,b,[],[],lb) e). linprog poszukiwanie minimum liniowej funkcji wielu zmiennych postaci: min f T (8) z liniowymi, równościowymi i nierównościowymi ograniczeniami postaci: A b Aeq beq lb ub wektor zmiennych o wymiarze [m], gdzie m liczba zmiennych zadania b, beq wektory odpowiednio o wymiarach [n ] i [k ], lb, ub ograniczenia na zmienne w postaci wektorów o wymiarach [m], A, Aeq macierze ograniczeń liniowych nierównościowych i równościowych o wymiarach odpowiednio [m n] oraz [m k], f - jest funkcja celu w postaci wektora o wymiarze [ m] zwracającą wartość w postaci skalara dla danego wektora argumentów. = linprog(f,a,b) = linprog(f,a,b,aeq,beq) = linprog(f,a,b,aeq,beq,lb,ub) (9) 7

= linprog(f,a,b,aeq,beq,lb,ub,0) = linprog(f,a,b,aeq,beq,lb,ub,0,options) [,fval] = linprog(...) [,lambda,eitflag] = linprog(...) [,lambda,eitflag,output] = linprog(...) wektor zmiennych, którego wielkość zależy od liczby zmiennych zadania b, beq wektory, których wielkość zależy od liczby ograniczeń liniowych, odpowiednio nierównościowych i równościowych, lb, ub ograniczenia na zmienne w postaci wektorów, których wielkość zależy od wielkości wektora, A, Aeq macierze ograniczeń liniowych odpowiednio nierównościowych i równościowych, c(), ceq() - ograniczenia nieliniowe w postaci układów równań odpowiednio nierównościowych i równościowych w postaci funkcji zwracających wartości ograniczeń w postaci wektorów dla danego argumentu, f - jest funkcja celu w postaci wektora zwracającą wartość w postaci skalara dla danego wektora argumentów. options zmienna w postaci struktury z zapisanymi opcjami rozwiązania zadania optymalizacji (strukturę tę modyfikuje się wykorzystując polecenie optimset), fval wartość funkcji celu dla rozwiązania zadania eitflag flaga wyjściowa, czyli komunikat wyjściowy o stanie solver a, Przykład 5 f 5 4 6 z ograniczeniami: Znajdź takie, które minimalizuje funkcje 3 0 3 3 4 4 3 3 3 30 0 0 0 Funkcje celu można zapisać w postaci macierzowej: f 5; 4; 6 Ograniczenia są liniowe więc można przedstawić je w postaci macierzy A i b:,, ; 3,, 4; 3,, 0 b 0; 4; 30 A, Ograniczenia na zmienne są postaci: lb = zeros(3,); 8

Wywołując poniższą komendę otrzymamy rozwiązanie zadania optymalizacji: [,fval,eitflag,output,lambda] = linprog(f,a,b,[],[],lb); f). lsqcurverfit poszukiwanie parametrów funkcji ydata=f(data,) mając dane opis matematyczny funkcji f i eksperymentalne dane: argumenty funkcji data oraz wartości funkcji ydata. Polecenie rozwiązuje problem szukania parametrów funkcji postaci: min F (0) m, data ydata F, data i ydata i parametry funkcji f o wymiarze [ m], data wektor danych eksperymentalnych argumentów funkcji o wymiarze [ n], ydata wektor danych eksperymentalnych wartości funkcji o wymiarze [ n] (np. reakcja obiektu na sterowania data), F(, data) funkcja zależna o parametru i danych wejściowych data zwracająca wartość w postaci skalara. i = lsqcurvefit(fun,0,data,ydata) = lsqcurvefit(fun,0,data,ydata,lb,ub) = lsqcurvefit(fun,0,data,ydata,lb,ub,options) [,resnorm] = lsqcurvefit(...) [,resnorm,residual] = lsqcurvefit(...) [,resnorm,residual,eitflag] = lsqcurvefit(...) [,resnorm,residual,eitflag,output] = lsqcurvefit(...) szukane rozwiązanie zadania fun funkcja celu zależna od i od data, resnorm wartość normy kwadratowej dla rozwiązania zadania optymalizacji, residual wartość reszty F(,data)-ydata dla rozwiązania zadania optymalizacji, eitflag flaga wyjściowa, czyli komunikat wyjściowy o stanie solver a, Przykład 6 Dla danych argumentów i wartości funkcji znajdź parametry i taki aby poniższe równanie zostało spełnione. i data sin data i data ydata ( i) i Przykładowy m-plik z funkcją może być postaci: 9

Function F = myfun(,data) F(,data) = ()*data.^ + ()*sin(data) + (3)*data.^3 Wywołując poniższe komendy otrzymamy rozwiązanie zadania optymalizacji: data = [3.6 7.7 9.3 4. 8.6.8.3 7.9 0.0 5.4]; ydata = [6.5 50.6 63. 4.7 08.5 9.9.7 63.9 35.0 54.3]; 0 = [0, 0, 0] ; [,resnorm] = lsqcurvefit(@myfun,0,data,ydata) g). bintprog poszukiwanie minimum liniowej funkcji wielu zmiennych binarnych w postaci: min f () z liniowymi, równościowymi i nierównościowymi ograniczeniami postaci: A b Aeq beq () 0, wektor zmiennych o wymiarze [ m], gdzie m liczba zmiennych zadania b, beq wektory odpowiednio o wymiarach [n ] i [k ], lb, ub ograniczenia na zmienne w postaci wektorów o wymiarach [m], A, Aeq macierze ograniczeń liniowych nierównościowych i równościowych o wymiarach odpowiednio [m n] oraz [m k], f - jest funkcja celu w postaci wektora o wymiarze [m ] zwracającą wartość w postaci skalara dla danego wektora argumentów. = bintprog(f) = bintprog(f,a,b) = bintprog(f,a,b,aeq,beq) = bintprog(f,a,b,aeq,beq,0) = bintprog(f,a,b,aeq,beq,0,options) [, fval] = bintprog(...) [,fval,eitflag] = bintprog(...) [,fval,eitflag,output] = bintprog(...) wektor zmiennych, którego wielkość zależy od liczby zmiennych zadania 0

b, beq wektory, których wielkość zależy od liczby ograniczeń liniowych, odpowiednio nierównościowych i równościowych, lb, ub ograniczenia na zmienne w postaci wektorów, których wielkość zależy od wielkości wektora, A, Aeq macierze ograniczeń liniowych odpowiednio nierównościowych i równościowych, c(), ceq() - ograniczenia nieliniowe w postaci układów równań odpowiednio nierównościowych i równościowych w postaci funkcji zwracających wartości ograniczeń w postaci wektorów dla danego argumentu, f - jest funkcja celu w postaci wektora zwracającą wartość w postaci skalara dla danego wektora argumentów. options zmienna w postaci struktury z zapisanymi opcjami rozwiązania zadania optymalizacji (strukturę tę modyfikuje się wykorzystując polecenie optimset), fval wartość funkcji celu dla rozwiązania zadania optymalizacji, eitflag flaga wyjściowa, czyli komunikat wyjściowy o stanie solver a, Przykład 7 9 5 6 4 3 4 Znajdź minimum funkcji f 6 3 3 4 3 4 5 0 0 3 4 z ograniczeniami 9,,, 0,, 3 4 Przykładowy m-plik z funkcją może być postaci: f = [-9; -5; -6; -4]; A = [6 3 5 ; 0 0 ; - 0 0; 0-0 ]; b = [9; ; 0; 0]; = bintprog(f,a,b) h). optimget pobieranie parametrów zadania optymalizacji val = optimget(options,'param') val = optimget(options,'param',default) options - struktura z zapisanymi parametrami 'param' parametr który chcemy pobrać.

Przykład 8 Za pomocą poniższego polecenia można pobrać wartość właściwości Display struktury ustawień optymalizacji my_options: val = optimget(my_options,'display') lub zmienić jej wartość za pomocą polecenia: optnew = optimget(my_options,'display','final') i). optimset tworzenie lub edycja struktury z parametrami zadania optymalizacji options = optimset('param',value,'param',value,...) optimset options = optimset options = optimset(optimfun) options = optimset(oldopts,'param',value,...) options = optimset(oldopts,newopts) param nazwa opcji, value wartość danej opcji. Ważniejsze nazwy opcji oraz możliwe jej wartości (w nawiasach {} wartości domyślne) przedstawiono w tabeli. Tabela. Ważniejsze nazwy opcji funkcji optimset Nazwa opcji Dopuszczalne wartości Diagnostics 'on' {'off'} Display FunValCheck LargeScale MaIter TolFun TolX {'off'} 'iter' 'final' 'notify' {'off'} 'on' 'on' {'off'} Liczba całkowita Dodatnia wartość skalarna Dodatnia wartość skalarna

Przykład 9 Za pomocą poniższego polecenia można ustawić wartość właściwości Display struktury ustawień optymalizacji my_options: val = optimset(my_options,'display') lub zmienić jej wartość za pomocą polecenia: optnew = optimset(my_options,'display','final') Bibliografia The Mathworks. Optimization Toolbo for use with Matlab. Natick, 00. 3