Autor práce: Petr Michna Katedra:
Transkript
Posudek vedoucího bakalářské práce Název práce: práce: Návrh knihovny pro řešení soustav lineárních rovnic v prostředí .NET Petr Michna Autor Vedoucí práce: Mgr. Petr Kubera Škota, fakulta: Českévysoké učenítechnické Fakulta jaderná a fuzikálně inženýrská Studiiníobor: Inžen;irskáinformatika Katedra: Katedra softwarového inžen;ýrstvív ekonomii Práce se zab;ivá návrhem a vývojem knihovny pro řešení linearních rovnic v prostředí .NET. Text práce je rozdělen do čtyř kapitol a závěru V první kapitole autor stručně popisuje v současnosti existujícíprodukty. Popis je spíšeobecný a autor neuvádí praktické zkušenosti získanépoužíváním popisovaných knihoven. Druhá kapitola je věnována popisu metod pro řešenísoustav lineárních rovnic. Autor popsal poměrně rozsáhlou část metod, obsahujícíjak metody elementární, tak i pokročilémoderní metody, jako je např. Arnoldiho metoda. fietí kapitola představuje vlastní náwh knihovny. Je zde popsán jak objektový model, tak některé autorovy přístupy. Autor se v textu věnuje popisu podružných o§ektů jako jsou vektor a matice, vlastní třídy pro řešení rovnic však detailněji popsány nejsou. Popis má být suplován yygenerovanou dokumentací na CD, která je však slabá. Je to způsobeno nedostatečným používánímXI\{L komentářů v kódu. V kapitole čtvrtéje ukázáno použitíknihovny. fimto je částečněnahrazena výše zmíněná dokumentace. Dále pak se autor zabývá testováním a zhodnocením knihovny. Autor zde provádí na vybraných úlohách celou řadu testů a ilustruje chování jednotlivých metod. Postrádátm zde porovnání nawženéknihovny s již existujícími produkty. Nedostatky práce: . o o . o Rešeršníčást zabyvající se popisem současnésituace je poměrně krátká. Autor mohl otestovat některé volně dostupné knihovny a detailrrě je popsat, např. vlastní uživatelsképostřehy. pro matice a vektory by bylo pro zvýšeníefektivity dobré mít dva druhy aritmetických operací. Jedny, které vytvoří novou entitu a jedny, které modifikují již existující, např. sečtení(c=a+b) a přičtení(a=a+b). Místo dvou metod pro výpočet různých norem rezidua ve třídě ALES by bylo výhodnější(flexibilrrější) použítjednu s předávaným lambda výrazem. pro řídkématice by bylo vhodné mít vlastní speciální třídu, založenou na vektoru (ušetření místa v paměti). v části věnované numerickým experimentům postrádám podrobnější zhodnocení efektivity implementace, např. vliv řádu matice a volby konkrétnínumerické metody na volnou paměť počítače. . o o Autor se poměrně často opakuje, hlavně zdůrazňování aktuálnosti problematiky a důraz na velké systémy rovnic. poměrně volrrá/vágní mluva v některých částech textu. Autor pouze některé vztahy uvede, anižby osvětlil základní myšlenku, viz např. vztah2.24 avztab2.28. Klady práce; Práce představuje poměrně ucelený text věnovaný numerickému řešenílineárních rovnic, který, včetně softwaru, by byl použitelný při výuce numerické matematiky (po doplnění dokumentace ). Otázky: Proč bylo provedeno otestování na poměrně malých soustavách (řád matice 10^3)? Má autor zkušenosti z chováním knihovny i pro většísystémy rovnic? Závérz Vzhledem k výše uvedenému nawhuji ohodnotit práci stupněm Q. ( dobře V Děčínědne 31.8. 2011 ) Mgr. Petr Kubera a, ,//uL-.-,\ Ceské vysoké učenítechnické v Praze Fakulta jaderná a fyzlkálně inženýrská posudek ononenta bakalářské nráce Název práce: Autor práce: Návrh knihovny pro řešení soustav lineárních rovnic v prostředí .NET Petr Michna Obor: Inženy,rská informatika Zaměření: Softwarové inženýrswí v ekonomii Vedoucí práce: Mgr. Petr Kubera Oponent práce: RNDr. Jiří Škvor,Ph.D., odborný asistent KI PřF UJEP v Ústí nad Labem Termín odevzdání: červenec 2011 Po přečtenípředloženébakalářské práce bych se nezdráhal hodnotit ji (s přihlédnutím k formálním a věcným nedostatkům, které bych mohl specifikovat s uvedením konkrétních příkladů) klasifikačnímstupněm dobře, Nesměl bych ovšem nahlédnout do přiložených zdrojových kódů, jejichž vytvoření má být soudě dle názvu a tvrzení v textu (Úvod, Závér) hlavním cílem a přínosem práce. V kódu implementujícím LU rozklad (LUDecompositionSolver.cs) jsem narazii na použitíjiného algoritmu, než který je popsán vteoretické části, načežjsem zjistil, že jádro tohoto kódu je identické s tím, který lze nalézt v této publikaci (str. 257-258): Waldemar Dos Passos, Numerical Methods, Algorithms and Tools in C# (CRC Press 2010). Pouze texty výjimek jsou přeložené z angličtiny. Problém není v tom, Že autor zakomponovává cizí zdrojové kódy do svých, ale že toto přejímání zamlčuje. I kdyby se cizím zdrojoqfrn kódem pouze inspirovai (v tomto případě je ale fakticky převzal), musel by to uvést. U zdrojových kódů implementujích moderní iteračnímetody nemohu (a ani nechci) dokazovat, že jsou odněkud přejaté (uvedená publikace se jimi nezabývá), ale zároveň již nemohu autoIovi dŮvěřovat, že tomu tak není. Ono neuvedení totiŽ nepovaŽuji za autolovo opomenutí nebo přehlédnutí, ale za záměrné klamání (jednak jak bylo uvedeno, v kódu je použit jiný algoritmus než v textu popsaný, a jednak existence podobných publikací poněkud snižuje srnysl předložené práce, viz kap. 1 Popis současnésituace). Proto pokládám předloženou bakalářskou práci v této podobě za neobhajitelnou, resp, hodnotím ji klasifikačnímstupněm neclostatečně, Autorovi doporučuji přepracování práce, které ani nemusí b;ft zvlášť radikáIní. Jedním z kroků je zvýšení jazykové úrovně textu. Uvedu jeden příklad za všechny. Věta: ,,Budeme zkoumat vliv zaplněnosti na rozměru matic zkoumané netody." se jednak v práci vyskytuje v tomto znění dvakrát fiiné souvětí dokonce čtýikrát a obecně lze říci, Že se autor Často nryšlenkově, nebo jak patrno i doslova opakuje) a jednak nedává smysl. Autor chtěI patrně říci, že v práci bude zkoumat vliv rozměru matice soustavy a podílu jejích nenulových prvků na ryc}rlost a přesnost řešení prostřednictvím studovaných metod. A právě v tomto bodě (v testování a porovnávání různých metod) by měla práce posíIit (diskuse v kap. 4 je spíŠe slabší). Tato změna hlavního cíle a předpokládaného přínosu práce by měla byt asi nejdůležitějšímkrokem. Dalším krokem je zvýšení úrovně citování použitých zdrojů. Ncjcn že není úplné,což se stalo v daném případě fatální pro celkové hodnocení práce, ale je často i zmatečné.S tím souvisí i fakt, že kompilování informací z rizných zdrojů způsobuje, že se práce jeví jazykově i věcně nekonzistentní (např. vzorec 2.6 vychází ze zadání 2.4 pouze za předpokladu, že se přeznačívektor pravých stran b na nový poslední sloupec matice A). V práci by bylo v}rodné dodefinovat některé použitépojmy (např. lineární nezávislost, lineární obal, hlavní minor, varieta). je zřejmě autorův vlastní, neboť v práci |24), na kterou v příslušnéčásti autor odkazuje, se nevyskytuje. Nechť tedy autor s pomocí onoho obrázku objasní problcmatiku, ke které se vztahuje. K případné diskusi u obhajoby přikládám jedinou otázku resp. žádost. Obrázek V Ústí nad Labem , dne 2BIB|2OII '2.2 Jiří škvor / '''" ' ./Jtí, ,)fr,,rr. /i , Posudek vedoucího bakalářské práce Název práce: Autor práce: Vedoucí práce: Škola,fakulta: Studijníobor: Katedra: Návrh knihovny pro řešení soustav lineárních rovnic v prostředí .NET Petr Michna RNDr. Petr Kubera, Ph.D. Českévysoké učenítechnické Fakulta j aderná a fyzikáIně inženýrská Inženýrskáinformatika Katedra softwarového inženýrstvív ekonomii Práce se zabývá návrhem a vývojem knihovny pro řešení lineárních rovnic v prostředí .NET. Text práce je rozdělen do čtyř kapitol a závětu,. V první kapitole autor stručně popisuje v současnosti existujícíprodukty. Popis je spíšeobecný a autor neuvádí praktické zkušenosti získanépoužitímpopisovaných knihoven. Druhá kapitola je věnována popisu metod pro řešenísoustav lineárních rovnic. Autor popsal poměrně rozsáhlou část metod, obsahujícíjak metody elementární, tak i pokročilémoderní metody, jako je např. metoda GMRES. Třetí kapitola představuje vlastní návrh knihovny. Je zďe popsán jak objektový model, tak některé autorovy přístupy k implementaci jednotlivých objektů. v kapitole čtvrtéje ukázáno použitíknihovny. Autor se zde zabý,vá testováním a zhodnocením knihovny. Je zďe prováděna na vybraných úlohách celá řada testů a je i]ustrováno chování jednotlivých metod. Postrádám zde porovnánínavtženéknihovny s již existujícímiprodukty. Dílčínedostatky práce: . Rešeršníčást zabývajícíse popisem současnésituace je poměrně krátká. Autor mohl otestovat některé volně dostupné knihovny a detailně je popsat, např. vlastní uživatelsképostřehy, nebo porovnat se svojí knihovnou, aspoň v průniku implementovaných metod. o poměrně volnďvágní mluva v některých částech textu. . Autor se často opakuje, hlavně zdírazíováníaktuálnosti problematiky a důraz na velké systémy rovnic. o v práci se objevuje celá řada drobných nepřesností např.: o Autor zdůrazňaje, že přírr.émetody jsou přesné pouze v konečnéaritmetice (str. 11), předpokládám, že chtěl říci opak. Definice 8, by měla b;it větou. Věta 6, přímo nesouvisí s textem, tj. nemusí být uvedena. Co je největšívlastní vektor (kap. 2.3.2)? " " o " Autor nespecifikuje požadavky kladené na matici A v části věnované moderním iteračnímmetodám, např. druhý vztah na str. 24 neplatí pro jednotkovou matici. " U " vzta}::ů 2.22 a 2.23 chybí iteračníindex a není pak zcela zřejmé, jaký bázoý vektor je počítán. U vztahu2.24je použito órrmísto fuo jďe patrně o překlep. o Autor v práci provádí výpočty nad řídkými maticemi, ačkoliv nejsou implementovány. o v části věnované numerickým experimentům postup použitý pro zjištění paměťové náročnosti. by byIo žáďoucí specifikovat Klady práce: Práce představuje poměrně ucelený text věnovaný numerickému řešení lineárních je pouŽitelný při výuce numerické matematiky. K tomuto účeluautor vypracoval i dokumentaci. rovnic, Závér: Vzhledem k výše uvedenému nawhuji ohodnotit práci stupněm C. V Děčíněďne 1.2.2012 ,l^ RNDr. Petr Kubera, Ph.D. posudek oponenta bakalářské práce Autor práce: Návrh knihovny pro řešení soustav lineárních rovnic v prostředí.NET Petr Michna Oponent práce: Fakulta: Termín o dev zdáni pr áce Mgr. Květuše Sýkorová Fakulta jademá afyzikálně inženlizrská, |eden2012 Název práce: Slovní hodnocení práce : ČVUt : PŤedložená bakalářská práce se zabývá problematikou řešenísoustav lineámích rovnic. Jedná se o důležitou oblast numerické matematiky, se kterou se často setkáváme při řešení rtrzných problémů(např. při řešení parciálních diferenciálních rovnic). Tyto soustavy rovnic jsou typické řídkj/mi maticemi velkých rozměrů, pro které jsou přímémetody řešení nevhodné. Autor v první kapitole popisuje současnou situaci. Probírá zde dvě dostupné numerické knihovny vhodné pro řešenísoustavy rovnic a poukazuje na obsaženénumerické metody. Dalšíknihovny jsou uvedeny jen heslovitě. V druhé kapitole se již autor podrobně věnuje jednotlivým numerickým metodám. Nejprve definuje základni pojmy, poté jlž popisuje jednotlivé metody. Jako zástupce přímých metod autor vybral Gaussol,u eliminačnímetodu a LU rozklad. Pro klasické iteračnímetody zvo|il Jacobiovu, Gaussor,rr-Seide1o,urr a Richardsonovu metodu. Pro moderní iteračnímetody pak Amoldiho a GMRES metodu. U každéz těchto metod autor uvádí odvození. Některé metody jsou doplněny řešenými příklady, jiné podrobným postupem výpočtu. Třetí kapitola je věnována návrhu a implementaci knihovny. Autor se věnuje především vhodné volbě vnitřní struktury tříd Vector a Matrix. Tuto část by bylo vhodné rozšířitalespoň o přehled jednotlivých řešičůpro popisované metody. Ctvrtá kapitola pojednává o numerických experimentech s uvedenjrrni metodami na soustavě úloh s Ňzně řídkými nebo hustjrrni maticemi větších rozměrů. Na jednotlivých příkladech ukazuje rychlost a přesnost výpočtu zvolených metod. Nechytí zde ani zhodnocení výsledků. Samotný popis programu je však příliš stručný, vysvětlený na jednom příkladu s odkazem na dalšíukéaky přiloženéna CD. Y závéru autor hodnotí dosaženévýsledky experimentů a porovnává je s výsledky získanými z odborné literatury. Nechyůízde ani návrh na případné vylepšeníknihovny. V příloze autor uvádí grafické zobrazeni výsledku vyóraných experimentů. Otázky: 1. Jak je ošetřen případ Amoldiho metody, kdy v určitémiteračnímkroku 2. hodnota (str.26)? případ pro koeficientu znamená 0 Co tento výpočet řešení? Proč potřebuje metoda GMRES uchovávat v paměti všechny předchozí bázové vektory v1,...,vla1? hl+t; : Dílčíhodnocení: Splnění cílůpráce: A Cíle práce byly splněny. Autorský přínos: B Vlastním přínosem autora je vytvoření knihovny vybraných numerických metod určených pro nalezení řešení soustavy lineámích rovnic. Odborná stránka práce: B Práce je vlpracována přehledně, jednotlivé definice a metody jsou popsány jasně a srozumitelně.Y závěrujsou uvedeny výsledky jednotlivých skupin experimentů. Na některých místech se však objel,ují drobné nepřesnosti ve vzorcich (str. 12, 14, 19,25, 26 a27). Definice 8 (str. 13) označujetvrzení nebo větu. První odstavec kapitoly 2.2 (str.17) popisuj e defi nici rezídua. Formální stránka práce: B Práceje přehledně rozčleněna do kapitol, vhodně doplněna obrázky, tabulkami a výpisy kódu. Na některých místech se objelují drobné překlepy a nepřesná formulace vět. Najdeme i odkazy na jiné tabulky (str. 30 a 31). Využitízdrojů: A Autor vpráci použivá značnémnožství informačníchzdrojů, které využivá v rozumné míře a v textu se na ně odkazuje. Y závěrupráce pak najdeme jejich seznam. celkové hodnocení: Práce splňuje požaďavky kladené na bakalářskou práci. Práci celkově hodnotím stupněm velmi dobře (B). V Ústí nad Labem, dne 3 LL.2OI2 4 r<--r Mgr. KÍětuše Šýkorová
Podobné dokumenty
Exekuční příkaz
ll. Soudní exekutor zakazuje povinnému 0eho manželce), aby po doručenítohoto exekučního
příkazu nemovitosti oznaóené V bodu l. Výroku převedl na někoho jiného nebo je zatížil.
Bc. Evy nŮŽtČxovE
laboratoři LMARC Besangon. 'fyto zkoušky představují velmi cenný přínos k dlouholeté spolupráci
Úr eV ČR s francouzským pracovištěm a studentka měla během svého pobyu příležitost detailně
se seznám...
če sxé vvsoxé uče ruí T€cHN tcxé - České vysoké učení technické v
Za cenné považuji zvládnutí komplikované problematiky formulace dvoufázového problému § extremálními saturacemi pomocí globálního tlaku a použitímoderní smíšenéhybridní metody při návrhu
numerickéh...
PRUKAZ ENERGETICKE
2. Stavební konstrukce a jejich styky mají nejvýše viz projektová dokumentace dle vyhl.
požadovaný součinitel prostupu tepla a činitel
č. 49912006 Sb. - část B
prostupu tepla.
Privatizační projekt - SOS koupaliště Lhotka
k některým věcem na jiné právnické nebo fyzíckéosoby:
NE'JsoU pŘnoMĚreM PRTVAT]ZACE
Přejít na produkt FISHBACKING
Vegetační sezóna začala v dubnu standardním nástupem rozsivkového období, voda v nádrži
Měla hnědý vegetační zákal. Začátkem měsíce května začaly v nádrži převládat zelené řasy.
Během následujícího...
Scan - Augustin
ještě vyšší.PŤímo pro Univerzitu
Hradec Králové se budejednat o
5B9 milionů a celkově projekty,
/:7"
rentgenovou fluorescenční mikro ana|ýzu na KDAIZ FJFI ČVUT v Praze. Mimo jiného jsou
zde uvedeny výsledky měření šířky svazku, resp. laterální rozlišovacíschopnosti aparatury.
zde. - TJ Slavoj Husinec
se střílelo na dolejšíbránu, která byla hned za tehdejší
,,pastouškou" fdnes již zbouranou], tetjt míčněkdy az tr uuaově
dnešníhoMNV.
Po získání louky u rybníka místníSokolem, bylo započato
s kopan...