Zadaní 1. Seminarní prace z predmetu Matematický software (KI/MSW )
Datum zadání: Podmínky vypracování:
Datum odevzdání:
15. 11. 2016 - Seminární práce se skládá z programové části (kódy v Matlabu) a textové části (protokol o vypracování). - Každý student odevzdává práci sám za sebe. - Zadání seminární práce obsahuje dvě části (A a B). Student si vybere z každé části nejméně jednu úlohu, kterou vypracuje. - Textová část seminární práce bude obsahovat: i) zadání, ii) postup řešení, případně zjednodušenou verzi programu (vývojový diagram), iii) výsledky (grafy, tabulky, atd..), iv) slovní zhodnocení, závěr, případně odkazy na literaturu, kterou student použil při tvorbě práce. Nejpozději 11. 2. 2017 Po tomto datu nebudu již žádné práce ani jejich opravy přijímat.
A. Matice, analýza funkce jedné proměnné. 1. Vyřešte následující soustavu rovnic:
x1 2 x2 3x3 x4 5 2 x1 3x2 x3 2 x4 7 x1 x2 x3 x4 3 3x1 2 x2 5 x3 x4 1 a) b) c)
pomocí symbolické matematiky (Symbolic Math Toolbox) Matlabu. Pomocí maticových operací Matlabu. Pomocí iterační metody numerické matematiky (Jacobiova metoda, Gauss-Seidelova metoda, atd..).
Výsledek soustavy je (1,2,-1,1). Diskutujte výsledky jednotlivých metod z hlediska efektivity, složitosti a délky výpočtu. 2. Vyšetřete průběh funkce pomocí nástrojů symbolické matematiky (Symbolic Math Toolbox) Matlabu.
f ( x) a) b) c) d) e) f) g)
x 3
x 1 2
Určete definiční obor funkce. Určete obor hodnot funkce. Určete, zda je funkce sudá, lichá nebo periodická. Vyšetřete limity funkce, najděte asymptoty grafu funkce Určete stacionární body funkce. Určete, zda má funkce ve stacionárních bodech maximum nebo minimum. Do grafu zakreslete funkci, stacionární body, asymptoty grafu funkce.
3. Vypočítejte hodnotu integrálu: 2
0
a) b) c) d)
x2 x sin 3 dx 2
analyticky, pomocí symbolické matematiky (Symbolic Math Toolbox) Matlabu, pomocí numerické matematiky (Simpsonovo pravidlo), pomocí metody Monte Carlo (metoda střední hodnoty)
Vykreslete graf konvergence numerické metody v závislosti na dělení intervalu (0,2π). Dále vykreslete graf konvergence metody Monte Carlo v závislosti na počtu pokusů
B. Komplexní úlohy 1. Obchodní cestující Pomocí metody simulovaného žíhání optimalizujte trasu obchodního cestujícího, který má navštívit celkem N měst právě jednou. První a poslední město jsou pevně dané a nelze je měnit v pořadí. Vyzkoušejte různé způsoby snižování parametru T. Pro parametry: počet měst, počet pokusů a rozměry použijte hodnoty z tabulky. Parametry úlohy jsou: Počet měst: Rozměry (Lx,Ly): Počet pokusu: Způsob ochlazovaní: Způsob prohazovaní: Metropolisův algoritmus
50 (50,50) 100 000
T
T0 , kde i je číslo iterace, T0 = 50000 i
1. 2. 3. 4. 5. 6.
Změřím počáteční délku trasy L0. Náhodně vyberu město. Zkusím prohodit s jedním sousedním městem. Změřím změnu délky trasy ΔL =L1-L0. Pokud je ΔL < 0, pak tuto změnu přijmu Pokud je ΔL > 0, pak tuto změnu přijmu s určitou pravděpodobností P = exp(-ΔL/T). 7. Vracím se do bodu č.2 a celý proces opakuji N-krát.
S výše uvedenými hodnotami a postupem se lze dostat až na 30 % původní délky. Nicméně při jiném typu ochlazování a při prohazování více než dvou měst najednou, a to zejména při vysokých teplotách, lze dosáhnout redukce původní délky až o 90 %. Pokud chcete otestovat efektivitu Vašeho algoritmu, zkuste nagenerovat města na obvod kružnice. Po velmi krátkém čase by se měla vaše dráha optimalizovat. Vypisujte průběh parametru T a průběh délky trasy L.
Typické výsledky úlohy obchodního cestujícího:
Obr. 1: Trasa před (vlevo) a po (vpravo) optimalizaci
Obr. 2: Vývoj poměru délky trasy a délky původní trasy (nahoře) a vývoj ochlazovacího parametru T (dole).
2. Isingův model feromagnetické látky Jednotlivé atomy mají vlastní magnetické momenty tvořené jednak oběhem elektronů kolem jádra a jednak vnitřními momenty hybnosti (spiny). Feromagnetické látky vykazují spontánní magnetizaci pod určitou teplotou. Jedná se o samovolné uspořádání magnetických momentů do tzv. domén. Celkový magnetický moment látky je pak určen součtem příspěvků od jednotlivých spinů mi jako:
M mi i
Isingův model feromagnetické látky využívá mřížkový model, kde v každém vrcholu(i,j) mřížky je jeden spin s momentem mi={0,1} (viz Obr.1).
Obr. 3: Schématické znázornění Isingova modelu.
Celková energie Isingova modelu, při nulovém vnějším magnetickém poli, se spočítá jako:
E J mi m j i, j
kde interakce spinu mi a mj se redukuje na interakci nejbližších sousedů a J reprezentuje velikost výměnné interakce. Aplikuje-li se Metropolisův algoritmus: 1. 2. 3. 4. 5. 6.
Změřím počáteční hodnotu energie trasy E0. Náhodně vyberu spin. Zkusím změnit jeho orientaci. Změřím změnu energie ΔE =E1-E0. Pokud je ΔE < 0, pak tuto změnu přijmu. Pokud je ΔE > 0, pak tuto změnu přijmu s určitou pravděpodobností P = exp(-ΔE/T). 7. Vracím se do bodu č.2 a celý proces opakuji N-krát.
a sleduje-li se vývoj celkové energie a magnetizace v závislosti na počtu pokusů, lze vidět organizaci spinů do větších celků, pokles energie a nárůst magnetizace (viz následující obrázky). Parametry úlohy jsou: Velikost domény: Počáteční Teplota: Způsob ochlazovaní:
50x50 bodů mříže 10
Počet pokusů změny spinu Způsob interakce spinů Velikost výměnné interakce
1000 - 100000
T T0 dT , dT = 0.05,
Nejbližší sousedi 1
Typický výsledek simulace Isingova modelu feromagnetické látky:
12000
0
10000
-5000
8000
E
M
-10000 6000
-15000 4000
-20000
2000
0
-25000 0
1
2
3
4
5
T
6
7
8
9
10
0
1
2
3
4
5
6
7
8
9
10
T
Obr. 4: Vývoj Magnetizace (vlevo) a energie (vpravo) Isingova modelu
Obr. 5: Tvorba domény v Isingově modelu. Se snižujícím se parametrem T se tvoří větší domény (směr zprava doleva)