Hladanie motívov v DNA sekvenciách

Veľkosť: px
Začať zobrazovať zo stránky:

Download "Hladanie motívov v DNA sekvenciách"

Prepis

1 Slovenská techncká unverzta v Bratslave Fakulta nformatky a nformačných technológí FIIT Bc. Róbert Cuprk Hl adane motívov v DNA sekvencách Dplomová práca Vedúc práce: prof. Ing. Pavol Návrat, PhD. Máj 2017

2 Slovenská techncká unverzta v Bratslave Fakulta nformatky a nformačných technológí FIIT Bc. Róbert Cuprk Hl adane motívov v DNA sekvencách Dplomová práca Študjný program: Študjný odbor: Mesto vypracovana: Vedúc práce: Máj 2017 Informačné systémy Informačné systémy Ústav nformatky, nformačných systémov a softvérového nžnerstva, FIIT STU v Bratslave prof. Ing. Pavol Návrat, PhD.

3

4 ČESTNÉ PREHLÁSENIE Čestne prehlasujem, že záverečnú prácu som vypracoval samostatne s použtím uvedenej lteratúry a na základe svojch vedomostí a znalostí.... Bc. Róbert Cuprk

5

6 POĎAKOVANIE Touto cestou by som sa chcel pod akovat svojmu vedúcemu práce prof. Ing. Pavlov Návratov PhD. za odborné vedene a rady pr písaní tejto práce. v

7

8 Anotáca Slovenská techncká unverzta v Bratslave FAKULTA INFORMATIKY A INFORMAČNÝCH TECHNOLÓGIÍ Študjný program: Dplomová práca: Autor: Vedúc práce: Máj 2017 Informačné systémy Hl adane motívov v DNA sekvencách Bc. Róbert Cuprk prof. Ing. Pavol Návrat, PhD. V súčasnom svete sa často stretávame s problémam, ktorých rešene s vyžaduje časovo náročné prehl adávane doménového prestoru rešení. Jedným z takýchto problémov je aj problém hl adana motívov v DNA sekvencách. Motívy sú krátke úseky DNA, ktoré nesú bologckú nformácu. Tento problém sa dá opísat ako problém optmalzáce, kde sa snažíme nájst taký motív, ktorý dosahne čo najlepše ohodnotene. Jedným z možných prístupov, ako rešt problémy optmalzáce, sú metaheurstké algortmy. Táto skupna algortmov sa snaží teratívnym procesom vylepšovat nájdené rešena až kým nedosahne globálne optmum, ktoré ale negarantuje. Vylepšene týchto algortmov paralelzácou nemusí predstavovat ba ch zrýchlene, ale ponúka aj možnost zlepšena kvalty výsledkov. Príkladom môžu byt genetcké algortmy, kde vaceré populáce paralelne hl adajú rešene, a ch jednc následne mgrujú, aby dosahl vyššu kvaltu výsledkov. V tejto prác sa budeme zaoberat takýmto prístupm a opíšeme paralelnú kooperatívnu metaheurstku, ktorá sa dá aplkovat ne len na problémy hl adana motívov. v

9

10 Annotaton Slovak Unversty of Technology Bratslava FACULTY OF INFORMATICS AND INFORMATION TECHNOLOGIES Degree Course: Master thess: Author: Supervsor: 2017, May Informaton systems Motf Fndng In DNA Sequences Bc. Róbert Cuprk prof. Ing. Pavol Návrat, PhD. Currently, t s common to be challenged by a problem whose soluton requres exhaustve search n doman space. One example of such can be motf fndng problem n DNA sequences. Motfs are short sequences of DNA that contan bologcally relevant nformaton. Ths problem can be seen as problem of optmzaton, where our goal s to fnd motf that has the hghest score n some knd of evaluaton metrc. One way to solve optmzaton problems s to use metaheurstc algorthms. Ths group of algorthms tres to mprove found solutons n teratve process untl t reaches global optma, whch s not guaranteed. Parallelzaton n ths group of algorthms may mprove not only tme needed for executon but qualty of found solutons as well. In parallel genetc algorthm, multple concurrent populatons exchange ndvduals to mprove overall qualty of solutons. In ths work we analyze possbltes of parallelzaton n metaheurstcs and descrbe parallel cooperatve algorthm that can be used to solve problems of optmzaton. v

11

12 Obsah 1 Úvod Štruktúra práce Problém hl adana motívov v DNA sekvencách Defníca problému Ohodnotene motívov Exstujúce rešena Weeder Metaheurstky Rozdelene metaheurstík Metaheurstky založené na trajektór Metaheurstky založené na populácách Mult-objectve metaheurstky Pareto optmálne rešena Mult-objectve Artfcal Bee Colony Paralelzmus v metaheurstkách Zdroje paralelzmu Klasfkáca paralelných stratégí C paralelzáca na nízkej úrovn Nezávslé mult-vyhl adávane Kooperátívne stratége Asynchrónny model ostrovov Špecalzovaný model ostrovov Perzstentné dátové štruktúry Path copyng Tre Persstent bt-parttoned vector tre Návrh algortmu 29 x

13 7 Implementáca Jednec Ostrov Confg Problem Search State Vyhl adávací proces ostrova Mgráce jedncov Susedstvo a topológa Funkce ponúkn jedncov, zober jedncov a asmluj MOABC Non-domnated sort Usporadane v rámc paretových radov Crowdng dstance Maxmn Usporadane a výber jedncov Postprocessng Extrahovane motívu pomocou konsenzu Vederkové skóre Weed-out Bucket-out Instance-flter Fltrovane výsledkov DTLZ Ops problému Testovane pomocou DTLZ Testovane a vyhodnotene Testovací dataset Použté metrky Parametre algortmu Metodológa testovana x

14 8.5 Výsledky testov a porovnane Záver Budúca práca Lteratúra 63 A Elektroncké médum A-1 B Plán práce B-1 C Používatel ská príručka C-1 C.1 Konfguráce C-2 D Techncká dokumentáca D-1 D.1 Lenngen D-1 D.2 Základný prehl ad balíkov D-2 D.3 Problém D-3 D.4 Vyhl adávaca metaheurstka D-3 D.5 Spustene vyhl adávana D-4 E Výsledky ostatných algortmov E-1 F Článok na IIT.SRC 2017 F-1 x

15

16 1 Úvod Každý organzmus na tejto zem sa formuje pomocou DNA. Snaha ju pochopt a rozlúštt motvovala bológov z celého sveta, aby vyvíjal stále nové a nové metódy na jej čítane. Proces tohto čítana ne je dokonalý a preto bológova potreboval pomoc nformatkov, aby vyvíjal algortmy na jej skladane. Medz takéto bonformatcké problémy patrí aj problém hl adana motívov, ktorý pracuje už s poskladaným úsekm DNA. Takéto motívy sú krátke úseky DNA nazývané aj bndng stes, ktoré sa vyskytujú pred d alším dlhším úsekm, ktoré používa organzmus na tvorbu belkovín. Teto proteíny, nazývané aj transkrpčné faktory, sa upínajú na motívy a pomáhajú následnému čítanu nformáce z DNA [11]. Aby sme vedel lepše pochopt obsah DNA, je užtočné vedet, kde sa takéto motívy vyskytujú. Za nm sa totž nachádza preps pre proteín, ktorý môže organzmus použt napríklad na boj prot nfekc. Hl adane týchto motívov ne je jednoduché. Veme o nch ba to, že sú pomerne krátke (rádovo v desatkách nukleotdov) a že sa zvyknú opakovat. Takže pre danú množnu ret azcov hl adáme taký podret azec, ktorý sa vyskytuje vackrát. Za navné rešene by sa dalo považovat skúšane všetkých možných podret azcov. To bohužal ne je možné ne len kvôl časovej zložtost (tento problém je NP-úplný), ale aj pre to, že teto motívy podlehajú mutácám. Môže sa stat, že v danom motíve je nejaký nukleotd navyše, chýba, alebo je zmenený [8]. Metaheurstcké algortmy sa na problém hl adana motívov pozerajú ako na problém optmalzáce. Predmetom optmalzáce je samotný motív, resp. jeho ohodnotene. To, ako tento motív ohodnott, sa stále skúma, no v [17] použl na jeho ohodnotene tr metrky. Dĺžku motívu čím dlhší tím lepší, podporu motívu v kol kých sekvencách sme daný motív našl, a podobnost motívu ako vel m sa tento motív medz sekvencam podobá. Na toto ohodnocovane sa dá použt aj tzv. entropa, ktorá presnejše opsuje podobnost medz motívm. Pr normálnej podobnost sa sčíta frekvenca najčastejše sa vyskytujúcch nukleotdov na daných pozícách. Pr entrop sa berú do úvahy aj ostatné frekvence a teda dokážeme rozlíšt motívy, ktoré možno majú rovnaké frekvence najdomnantnejších nukle- 1

17 otdov, ale môžu sa líšt v ostatných frekvencách. Pomocou entrope dokážeme určt, ktorý z týchto motívov je zakonzervovanejší, to znamená, že menej podleha mutácám. Pr metaheurstckých algortmoch sú ohodnocovace funkce rovnako dôležté, ako samotný spôsob hl adana rešena. Metaheurstky sa snaža rôznym teratívnym metódam posúvat rešene v prestore tak, aby zlepšoval optmalzoval jeho ohodnotena. Exstuje vel ké množstvo spôsobov tohto prehl adávana, ale vo všeobecnost každý zachováva dva prncípy. Intenzfkáca, kde sa algortmus snaží usmernt nájdené rešene k lepšemu, a dverzfkáca, kde sa algortmus snaží nájst nové rešena. Pr dôraze na ntenzfkácu algortmus nájde rešene skôr, no nemusí dosahnut globálne optmum. Jedným z druhov metaheurstík je tzv. rojová ntelgenca. Je to koncept umelej ntelgence, kde sa práve na prehl adávane doménového prestoru využívajú algortmy nšprované tým, ako zveratá a hmyz hl adajú potravu. V [17] využl metaforu včel a mplementoval algortmus MOABC (Mult Objectve Artfcal Bee Colony). Tento algortmus je založený na tom, že doménový prestor, v ktorom sa pohybujú včely, určuje polohu a vel kost motívu v sekvencách. Ked sa včela pohne, zmení sa aj príslušný motív. V súčasnost sa trend v metaheurstkách používaných pr hl adaní motívov presúva od hl adana najlepšej metafory alebo ohodnotena k preskúmavanu možnost využta vacerých metaheurstík a prístupov počas prehl adávana. Následne sa kombnujú výsledky, č už na konc, alebo počas samotného procesu hl adana. V tejto prác sa budeme venovat problému hl adana motívov použtím metaheurstík ako jedného z možných prístupov. Pokúsme sa navrhnút rešene, ktoré bude využívat paralelné prístupy, ne len na zrýchlene behu algortmu, ale aj na zlepšene kvalty dosahnutých rešení. 1.1 Štruktúra práce Táto práca je členená nasledovne. V kaptole 2 opsujeme, čo sú to motívy a defnícu problému ch hl adana. V kaptole 3 a 4 opsujeme metaheurstky, paretové rady a klasfkácu metaheurstík z paralelzačného hl adska. V kaptole 5 následne opíšeme perzstentné dátové štruktúry ako jeden z možných prístupov 2

18 zdel anej pamäte medz paralelne bežacm procesm. V 6. kaptole opíšeme náš návrh algortmu, ktorý je postavený na predošlých kaptolách. V kaptole 7 opíšeme blžše mplementácu a nektoré návrhové rozhodnuta. V kaptolách 8 a 9 následne opíšeme spôsob testovana a vyhodnotíme celú prácu. 3

19

20 2 Problém hl adana motívov v DNA sekvencách DNA motívy sú krátke opakujúce sa vzory v DNA, o ktorých sa predpokladá, že majú bologckú funkcu [11]. Častokrát ndkujú väzobné mesto pre proteíny zvané transkrpčné faktory alebo sú zahrnuté v procesoch s mrna. Aj ked sú teto motívy krátke (okolo 30 nukleotdov), mesta, na ktorých sa môžu vyskytovat v DNA, môžu mat nekol ko sto až vyše tsíc nukleotdov [21]. Teto motívy navyše nemusa byt rovnaké. Zatal čo enzým EcoRI sa napája ba na sekvencu GAATTC, enzým HndII sa napája na sekvencu GTYRAC, kde písmeno Y môže predstavovat nukleotd C alebo T a písmeno R môže byt nukleotd A alebo G [11]. Motívy tvora nukleotdy (A,T,G,C), ktoré nemusa byt v každom výskyte motívu rovnaké. Zvyknú sa preto reprezentovat cez tzv. poston frequency matrx (PFM). Takúto matcu je možno vdet v tabul ke 1 spolu s logom, ktoré je znázornené na obrázku č. 1. Tabul ka 1: Čast PFM pre motív YJL056C v géne ZAP1 1. A T G C Obr. 1: Logo motívu YJL056C v géne ZAP

21 PFM matca je tvorená frekvencam výskytov určtého nukleotdu na danom meste. Logo motívu, ktoré navrhol Schneder a Stephens [34], zobrazuje teto frekvence pomerm vel kost písmen. Narozdel od PFM uvádza aj zakonzervovanost motívu znázornenú výškou nukleotdu v btoch. Tá súvsí s tým, ako vel m podleha dané mesto mutácám. 2.1 Defníca problému V [21] defnujú problém hl adana motívov ako problém lokálneho zarovnana vacerých sekvencí, za predpokladu, že model motívu dosahne optmálne skóre pre nejakú ohodnocovacu funkcu. Tento problém je NP-úplný, no dá sa na neho pozerat ako na problém optmalzáce. V [21] sú optmalzačné problémy o M ohodnocovacích funkcíach matematcky opísané takto: Mnmalzujf(x) = [f (x), = 1,..., M] zatal čo platí: g j (x) 0 h (x) = 0 j = 1, 2,...J = 1, 2,...K Ohodnotene motívov Takýto ops problému hl adana motívov využívame d alej v tejto prác. Preto uvádzame ohodnocovace funkce a ohrančena, ktoré bol opísané v [17] a [21] vzhl adom na túto problematku. Maxmalzuj: dĺžku motívu l, podporu motívu táto metrka opsuje, v kol kých sekvencách sme bol schopní daný motív dentfkovat, podobnost motívu medz sekvencam na základe PFM, 6

22 entropu motívu táto metrka opsuje meru nestoty v rozložení nukleotdov v PFM, čím je entropa nžša, tým lepše. Ked že maxmalzujeme ohodnocovace funkce, musíme túto metrku upravt napríklad prenásobením -1. Vo všeobecnost ju ale upravujeme tak, aby mala rozsah od 0 po 1, zatal čo je splnené: ohrančene dĺžky v [17] je to medz 6 a 64 nukleotdov, mnmálna podpora motívu medz sekvencam, mnmálna komplexta motívu. Na to, aby sme vedel vyrátat teto metrky, potrebujeme získat PFM reprezentácu daného motívu. Prehl adávací algortmus (metaheurstka) nám poskytne pozícu v doménovom prestore, ktorá predstavuje jedno možné rešene. Toto rešene obsahuje pozíce motívov v každej sekvenc a jeho dĺžku. PFM avšak nerátame z každého motívu [17]. Najprv s z týchto motívov vytvoríme tzv. konsenzus motív, čo je motív, ktorý obsahuje pre každú pozícu nukleotd vyskytujúc sa najvac. Proces skladana matce PFM je znázornený na obrázku č. 2. Obr. 2: Skladane matce PFM [17]. Do matce PFM akceptujeme ba motívy, ktoré majú s konsenzus motívom spoločných aspoň 50% nutkleotdov. Počet akceptovaných motívov tvorí výsledok 7

23 jednej z ohodnocovacích funkcí, konkrétne podpory motívu. PFM následne tvora frekvence nukleotdov z akceptovaných motívov. V rovnc 1 uvádzame vzorec na výpočet podobnost motívu ako jednej z ohodnocovacích funkcí. f(b, ) je frekvenca nukleotdu b {A, T, G, C} na -tej pozíc a l je dĺžka motívu. l=1 max b f(b, ) P odobnost = (1) l V rovnc 2 je uvedený výpočet komplexty. n je počet nukleotdov {A, C, G, T } vo výslednej sekvenc motívu. Komplexta = log N l! (n )! (2) Posledná ohodnocovaca funkca je uvedená v rovnc 3. Entropa ohodnocuje frekvence výskytov podobne ako podobnost. Odlšujú sa v tom, že entropa bere do úvahy celé rozložene frekvencí a ne ba najdomnantnejší nukleotd. l=1 b f(b, ) log Entropa = 2 (f(b, )) l (3) 2.2 Exstujúce rešena Aj ked exstujú algortmy, ktoré exhaustívne prehl adávajú doménový prestor ako napr. medánový ret azec, v prax sa väčšnou využívajú ba algortmy, ktoré prehl adávajú ba čast doménového prestoru. Teto algortmy sú založené na štatstckých prístupoch [21]. Medz ne patrí napríklad Consensus [18] a MEME [3]. Okrem nch exstujú aj metaheurstcké algortmy ako MOGAMOD [21], čo je genetcký algortmus alebo MOABC [17], kde využívajú na hl adane motívov metaforu včel. Predmetom výskumu sú aj hybrdné prístupy ako v [16], kde využívajú vacero metafor naraz Weeder Algortmus Weeder [31] je založený na prehl adávaní sufxového stromu vytvoreného zo vstupných DNA sekvencí. Sufxový strom [36] pre n znakový ret azec S je stromová dátová štruktúra s n lstam. Každá hrana je označená neprázdnym 8

24 podret azcom z S a každá cesta od koreňa po lst predstavuje jeden sufx ret azca S. Algortmus Weeder hl adá všetky (m, e) vzory, teda motívy o dĺžke m, ktoré sa vyskytujú aspoň v q sekvencách a podlehajú maxmálne e mutácám. Rekurzívne prehl adáva cesty v sufxovom strome a zahadzuje te cesty, ktoré prekročl maxmálny počet mutácí. Ohodnotene motívov Nad testovacím datasetom od Tompa a spol. [35], kde je úlohou nájst vo vacerých vstupných sekvencách motívy s neznámou dĺžkou, musel spustt vyhl adávane pre každý vstup vackrát. Použl vaceré hodnoty m od 6 po 12 a e od 1 až 4. q mohlo byt pr k vstupoch rovné k alebo k/2 [32]. Takto nájdené motívy dodatočne ohodnocoval, aby nemal prílš vel a výsledkov a vyhl sa tak falošným poztívam. Rovnca 4 opsuje tzv. očakávanú frekvencu 1. H(p, e) je množna motívov, ktoré majú Hammngovú vzdalenost 2 od p menšu alebo rovnú e. obs(p ) je počet výskytov p v sekvencách. total m je počet známych motívov danej dĺžky pre daný organzmus. E(p, e) = p H(p,e) Skóre špecfcké pre sekvencu je dané nasledovne: obs(p ) total m (4) Seq(p) = log 1 E(p, e ) l (5) kde p je motív, ktorý sa vyskytuje aspoň v q sekvencách s maxmálnym počtom mutácí, e. l je dĺžka -tej sekvence a e je mnmálny počet mutácí, s ktorým sa p vyskytuje v -tej sekvenc. Ďalej defnoval aj globálne skóre, kde L = l : Glo(p) = log obs(p, e) E(p, e) L (6) 1 Pre krátke motívy používal verzu, ktorá nedovol ovala mutáce. 2 Hammngová vzdalenost medz dvoma ret azcam je rovná počtu mest, kde sa nezhodujú znaky. 9

25 Výsledné skóre pre daný motív p je defnované ako: Score(p) = Seq(p) + Glo(p) (7) Následne s odložl pät najlepše ohodnotených motívov a te sa snažl ešte dodatočne vylepšt vzájomným spájaním alebo rozšrovaním. Označene výskytu motívu Testovací dataset [35] vyžaduje, aby program na výstupe presne uvedol ret azec nukleotdov, ktorý popsuje motív spolu s jeho pozícou v konkrétnej sekvenc. Motív defnovaný ako výsledok prehl adávana (m, e) preto nestačí. Na ohodnotene jednotlvých ret azcov bolo preto defnované skóre výskytov. Toto skóre využíva matcu PFM vytvorenú z ret azcov H(p, e). Potom pre každý výskyt ret azca p v sekvencách vyráta: kde M(p ) je Occ(p ) = M(p ) Mn(P F M) Max(P F M) Mn(P F M) (8) m M(p ) = log f(b, ) (9) j=1 a f(b, ) je hodnota frekvence 3 (z PFM) nukleotdu b na pozíc daného hodnoteným výskytom p. Mn(P F M) a Max(P F M) sú defnované ako súčet mnmálnych resp. maxmálnych hodnôt jednotlvých stĺpcov v matc PFM. Algortmus Weeder následne uvádzal na výstupe ba ret azce, ktoré mal toto skóre väčše ako 0,9. 3 Nulové frekvence bol nahradené hodnotou 0,

26 3 Metaheurstky Metaheurstky sú jedným z možných prístupov na rešene problému optmalzáce. Sean Luke ch vo svojej publkác Essentals of Metaheurstcs [26] opísal ako algortmy, ktoré sú aplkované na tzv. I know t when I see t problémy. Teto algortmy zvyčajne teratívnym spôsobom prehl adávajú doménovú oblast, prčom sa pr každej terác snaža zlepšt nájdené rešena. Takto generované rešene po stom čase (ked je splnená ukončovaca podmenka) prehlása za výsledné rešene problému. Toto rešene nemusí byt optmálne, avšak dobrá metaheurstka nájde dostatočne dobré rešene. Pojmy dverzfkáca a ntenzfkáca sú spojené metaheurstckým algortmam. Intenzfkácou ovplyvňujeme algortmus tak, aby rešene konvergovalo do lokálneho optma. Ak dbáme na ntezfkácu, nájdeme rešene rýchlejše, no nemusíme nájst globálne optmálne rešene. Dverzfkáca klade naopak dôraz na rôznorodost rešení pr spomalení konvergence. 3.1 Rozdelene metaheurstík Chrstan Blum a Andrea Rol vo svojej prác [5] rozdell metaheurstky na dve skupny metaheurstky založené na trajektór a metaheurstky založené na populácách Metaheurstky založené na trajektór Metaheurstky založené na trajektórách získal svoje meno pretože algortmus charakterzuje trajektóra, ktorú rešene prejde počas vyhl adávaceho procesu. Úplne najzákladnejší algortmus je znázornený v 1 [5]. Algorthm 1 Lokálne vylepšovane - teratívne prehl adávane 1: s GenerujPocatocneResene() 2: repeat 3: s Zleps(Suseda(s)) 4: untl s sa neda vylepst 11

27 Funkca Zleps(Suseda(s)) vyberá lepšeho suseda rešena s. Výber zlepšena môže byt založený na tom, že vybereme prvého lepšeho suseda, alebo napríklad na tom, že vybereme najlepšeho zo všetkých. Obdva teto prístupy však uvaznú v lokálnom optme a neobsahujú žaden mechanzmus, ako sa z neho dostat. Tento problém sa snaží rešt algortmus smulovaného žíhana, ktorý formuloval Krkpatrck a spol. v [22] ale aj Vladmír Černý v [6]. Tento algortmus je znázornený v ukážke 2. Algorthm 2 Smulované žíhane 1: s GenerujPocatocneResene() 2: T T 0 3: whle ne je splena ukoncovaca podmenka do 4: s VyberNahodne(Suseda(s)) 5: f f(s ) < f(s) then 6: s s 7: else f p(f(s ), f(s), T ) random(0, 1) then 8: s s 9: end f 10: T Zmens(T) 11: end whle Algortmus smulovaného žíhana je založený na metafore chladnuta rozžeraveného železa, ktoré, ak sa správne schladzuje, zaujme energetcky najvýhodnejší stav. Po tom, čo vygenerujeme počatočné rešene a určíme počatočnú teplotu, prebeha teráca tak, ako je znázornená na radkoch od 3 po 11. Nové rešene s sa zvolí náhodne z okola s a porovná sa ch ohodnotene f. Nové rešene je automatcky akceptované, ak je vyhodnotené ako lepše. Aby nedošlo k uvaznutu v lokálnom mnme, rešene s je akceptované ako nové s pravdepodobnost ou p, aj ked je horše. Táto pravdepodobnost závsí od ohodnotení daných rešení ako aj od času T, ktorý uplynul. p je z Boltzmannovej dstrbúce exp( ((f(s ) f(s))/t ). Pravdepodobnost, že bude akceptované ako nové horše rešene, klesá jednak s klesajúcm T, ale aj ak vzdalenost medz f(s ) a f(s) raste. 12

28 3.1.2 Metaheurstky založené na populácách Na rozdel od trajektorálnych metaheurstík, populačné metaheurstky generujú vacero rešení v rôznych oblastach domény naraz. Sú založené na populácách jedncov, kde každý predstavuje jedno možné rešene problému. Nové rešena sa medz terácam získavajú rekombnovaním elementov z už exstujúcch rešení [15]. Medz teto algortmy patra metaheurstky rojovej ntelgence ale aj rôzne evolučné algortmy. Príklad jednoduchého evolučného algortmu je znázornený v ukážke č. 3 [2][5]. Algorthm 3 Evolučný algortmus 1: P IncalzujPocatocnuPopulacu() 2: Ohodnot(P ) 3: whle ne je splena ukoncovaca podmenka do 4: P Rekombnaca(Selekca(P )) 5: P Mutaca(P ) 6: Ohodnot(P ) 7: VlozDoPopulace(P, P ) 8: end whle Na začatku algortmu 3 vdíme ncalzovane a ohodnotene populáce. Populácu tvora potenconálne rešena problému. V teratívom procese (radok 3 až 8) najprv vystupuje selekca a rekombnáca rešení. Pod týmto funkcam rozumeme výber rodčov a následnú tvorbu potomkov krížením. Selekca vo všeobecnost využíva prvky náhody a ohodnotene jednca. Mutáca s určtou pravdepodobnost ou mení potomka. Nakonec sa nová generáca kombnuje s tou starou. Tento proces sa opakuje, až kým ne je splnená ukončovaca podmenka. Tou môže byt uplynute času alebo aj nájdene dostatočne dobrého rešena. 3.2 Mult-objectve metaheurstky Exstuje vel a metaheurstckých algortmov. Okrem evolučného algortmu opísaného vyšše, poznáme aj algortmy rojovej ntelgence ako napríklad Ant Colony Optmzaton [12], ktorý je nšprovaný metaforou kolóne mravcov hl adajúcch potravu. Te vypúšt ajú feromóny na ceste, ktorú prešl. V Artfcal Bee Colony [19] zasa využívajú metaforu včel a ch tancovana podl a toho, aký dobrý našl 13

29 zdroj potravy. V Glowworm Swarm [23] využívajú svetelkovane hmyzu, založené na látke lucferín. Jednec svetelkuje vac vtedy, ak našel dobré rešene, a tým láka k sebe ostatných jedncov. Všetky teto algortmy sú ale vo svojom základe defnované tak, že využívajú jednu ohodnocovacu funkcu. V kaptole sme na druhej strane zadefnoval problém hl adana motívov ako optmalzácu, ktorá využíva ohodnocovace funkce štyr. Jednou z možností, ako rešt tento problém, je použt prístup, ktorý s zvoll v [39]. Ich ohodnotene jednca predstavovalo agregácu všetkých ohodnocovacích funkcí: ohodnotene = m m w f, w = 1, w > 0 (10) =1 =1 kde f sú odohodnocovace funkce, m je ch počet a w sú náhodne zvolené váhy. Exstujú ale aj prístupy, ktoré reša túto problematku nak. Te opíšeme v nasledujúcch kaptolách. Zadefnovane problému cez vaceré ohodnocovace funkce prnáša vyššu zložtost vo vacerých fázach metaheurstckých algortmov. Vo všeobecnost je problém porovnat dve rešena a najlepše rešene nemusí byt ba jedno Pareto optmálne rešena Pareto optmálne rešena sú také, pre ktoré na to, aby sme zlepšl jednu ohodnocovacu funkcu, musíme zhoršt nú. O takýchto rešenach veme, že ne sú domnované žadnym ným rešením. Rešene a domnuje rešene b ak platí [25]: {1,..., m} : f (a) f (b) j {1,..., m} : f j (a) > f j (b) (11) kde f je ohodnocovaca funkca a m je ch počet. Teda jedno rešene domnuje né, ak ne je horše v žadnom ohodnotení a aspoň v jednom je lepše. Takéto rešena tvora paretový rad. Cel om metaheurstckých algortmov je tento rad aproxmovat. V [24] sa venoval problematke udržovana paretových radov. V ukážke 4 opísal metaheurstky, ktoré pracujú s týmto radm ako s archívom rešení. V tomto pohl ade na metaheurstky A (t) predstavuje archív a f (t) predstavuje 14

30 Algorthm 4 Iteráce metaheurstík s archívom 1: t 0 2: A (0) 3: whle ukonct?(a (t), t) = false do 4: t t + 1 5: f (t) generuj() 6: A (t) aktualzuj(a (t 1), f (t) ) 7: end whle množnu jedncov vygenerovaných v terácí t. Metóda generuj predstavuje proces tvorby nových rešení a aktualzuj sa venuje udržavanu archívu. Na základe stratége archívovana veme potom metaheurstky rozdelt na: aglortmy, ktoré sa zameravajú na konvergencu teto algortmy vo všeobecnost akceptujú rešena do archívu na základe toho, č sú domnované rešenam v archíve alebo samy nejaké nedomnujú, aglortmy, ktoré sa zameravajú na dstrbúcu teto algortmy sa rozhodujú ne len na základe domnance, ale aj na základe rozložena rešení. Napríklad v NSGA-II [9] využívajú vzdalenost rešení na dodatočné ohodnotene jednca. Obdva teto prístupy majú svoje opodstatnena. Zatal čo druhé rešene dbá na to, aby bol výsledky dstrbuované a teda paretový rad bol dobre aproxmovaný, podleha chybe zhoršena rešení. Prvý prístup garantuje, že sa nemôže stat, aby sa rešene na paretovej krvke zhoršlo [24], prčom druhý prístup môže hodnotene najlepšeho lokálneho rešena znížt kvôl dstrbúc a potom ho stratt. V [24] a [25] sa následne venoval prác s paretovým radm a domnanc. Využívajú koncept ɛ-domnance, ktorý je znázornený na obr. č. 3, na zlepšene vlastností paretových radov. 15

31 Obr. 3: Rozdel medz domnancou a ɛ-domnancou [24] Mult-objectve Artfcal Bee Colony Artfcal Bee Colony (ABC) [19] je algortmus rojovej ntelgence, ktorý na prehl adávane doménového prestoru využíva metaforu včel. Defnuje tr tpy: pracovníčky, ktoré sa snaža zment svoje rešene k lepšemu, przeračov, ktorí s vyberú rešene nejakej pracovníčky a to sa snaža následne zlepšt, preskumníčky, ktoré prnášajú do kolóne úplne nové rešena. Teto typy sa v rámc terácí stredajú v troch fázach (fáza pracovníček, fáza przeračov a fáza preskumníčok). Poloha týchto včel predstavuje možné rešene problému. V MOABC [17], rozšírl tento algortmus pomocou zorad ovana z NSGA-II [9], ktoré využíva paretové rady, aby mohol ABC rešt problém hl adana motívov tak, ako sme ho opísal v kaptole Ich prístup je príkladom, ako sa dá metaheurstka postavená na jednom ohodnotení rozšírt na tzv. mult-objectve metaheurstku. 16

32 4 Paralelzmus v metaheurstkách Základnou motvácou na paralelzovane metaheurstík môže byt zrýchlene ch behu. V obdvoch typoch spomínaných v kaptole a nájdeme vnútorné cykly, ktoré sa dajú paralelzovat. Hl adane najlepšeho suseda v trajektorálnych metaheurstkách veme rozdelt medz procesy na základe prehl adávaného prestoru. Pr populačných algortmoch veme na druhej strane paralelzovat ohodnocovane jedncov. Takéto optmalzáce na nízkej úrovn ale nemusa byt dostačujúce. V našej mplementác MOABC [17] algortmus tráv najvac času (vac ako polovcu 4 ) pr zorad ovaní populáce 5. Kedže paralelzáca tohto zorad ovana je netrválna, algortmus sme paralelzoval na tej najvyššej úrovn, teda spúšt al sme vaceré nštance vyhl adávana paralelne nezávsle od seba. Nam zvolený prístup ale njako nezlepšl výsledky vyhl adávana a práve to môže byt druhá, slnejša motváca pre paralelzácu. V [16] napríklad použl pr hl adaní motívov paralelne bežace metaheurstky, ktoré v určtých bodoch synchronzujú svoje paretové rady rešení na to, aby zlepšl výsledky vyhl adávana. Takýto prístup zlepšuje výsledky, pretože rôzne algortmy spolu nteragujú a môžu s vymeňat eltných jedncov. V nasledujúcch kaptolách opíšeme rôzne prístupy pr paralelzácí metaheurstckých algortmov. 4.1 Zdroje paralelzmu V [15] opsujú hlavne zdroje paralelzmu a ch aplkovatel nost v metaheurstkách. Paralelzmus ako súbežné vykonávane vacerých procesov je založený na rozdelení zát aže medz samostatné jednotky. Takáto dekompozíca sa da docelt na vacerých úrovnach: algortmus functonal paralelsm vaceré úlohy, ktoré môžu pracovat nad rovnakou množnou dát a vymeňat s údaje, sú rozdelené medz procesy tak, aby bežal paralelne, 4 Pr nektorých behoch až 80% v závslost od konfguráce. 5 Tento čas sme meral pomocou IDE Netbeans a jeho funkce Profler. 17

33 dáta problémovej oblast data parallelsm / doman decomposton delená je problémová doména alebo prehl adávaný prestor, štruktúra problému mathematcal / attrbute-based decomposton rozdelene problému na základe atrbútov, kde nektoré úlohy reša podproblémy (podmnožnu atrbútov) a ostatné kombnujú teto rešena na rešene celého problému. V metaheurstkách je paralelzáca na úrovn vnútorných cyklov častokrát najjednoduchša. Na druhej strane paralelzované kroky bývajú na sebe časovo závslé a nároky na synchronzácu jej prínos znžujú. Zaujímavé je paralelzovat prehl adávane na úrovn problémovej oblast, kde jedným zo spôsobov je explctne rozdelt prehl adávaný prestor medz jednotlvé procesy. Druhou možnost ou je delt prestor mplctne pomocou metódy tzv. mult-search, kde využívame možnost aplkovat na doménu vaceré algortmy s rôznym spôsobm prehl adávana. S obdvoma prístupm prchádza problém radena celého vyhl adávaceho procesu, prčom pr prvom prístupe exstuje ešte možnost, že proces bude prehl adávat oblast s malou kvaltou rešení. Na druhej strane, pr mplctnom delení neexstuje garanca, že bude problémová oblast rozdelená tak, aby sa jednotlvé čast neprekrýval. 4.2 Klasfkáca paralelných stratégí V [15] použl klasfkácu z [7], ktorá delí paralelné metaheurstky na základe troch dmenzí: 1. Kardnalta ovládana prehl adávana (angl. Search Control Cardnalty) táto dmenza opsuje kol ko procesov rad prebeh vyhl adávana. (a) 1-control (1C) prehl adávane rad jeden proces, (b) p-control (pc) prehl adávane je radené vacerým procesm, ktoré spolu môžu ale nemusa spolupracovat. 2. Radene a komunkovane (angl. Search Control and Communcatons) zvyčajne sa v tejto dmenz dela algortmy na synchrónne procesy 18

34 musa zastavt v dohodnutom čase a potom komunkovat a asynchrónne, kde s každý proces rad vyhl adávane sám a rozhoduje sa, kedy chce komunkovat. V [15] teto tredy rozšírl a rozdell nasledovne: (a) Rgd (RS) procesy medz sebou počas vyhl adávana nekomunkujú, (b) Knowledge Synchronzaton (KS) procesy s na dohodnutých mestach zosynchronzujú vedomost o doménovom prestore napr. zjednota populáce ponechaním ba najlepších, (c) Collegal (C) asynchrónne komunkujú so susedm a vymeňajú s rešena, (d) Knowledge Collegal (KC) snaža sa získat vedomost z komunkáce, napríklad tvort nové rešena z častí komunkovaných rešení. 3. Delene prehl adávana (angl. Search Dfferentaton) táto dmenza delí algortmy podl a toho, č paralelné procesy začínajú z rovnakého mesta alebo populáce a č používajú rovnaký algortmus na prehl adávane doménového prestoru: (a) Same ntal Pont/Populaton, Same search Strategy (SPSS), (b) Same ntal Pont/Populaton, Dfferent search Strateges (SPDS), (c) Multple ntal Ponts/Populatons, Same search Strateges (MPSS), (d) Multple ntal Ponts/Populatons, Dfferent search Strateges (MPDS). V nasledujúcch kaptolách opíšeme vybrané prístupy, klasfkované v rámc týchto dmenzí C paralelzáca na nízkej úrovn Tento druh paralelzáce je založený na model master-slave, ktorý je znázornený na obrázku č. 4. Jeden proces kontroluje celý prebeh vyhl adávana, zatal čo ostatné procesy spracúvajú nízko úrovňové výpočty. V populačných algortmoch master proces reš procesy ako výber rodčov a pohyb jedncov. Slave procesy reša ohodnotena a poselajú výsledky master-ov. V trajektorálnych metaheurstkách môžu zasa procesy paralelne hl adat a ohodnocovat suseda daného rešena. Takáto paralelzáca patrí do tredy 1C/RS/SPSS. 19

35 Obr. 4: Konfguráca master-slave [15] Nezávslé mult-vyhl adávane V [15] defnujú toto vyhl adávane ako stratégu, kde prebeha nezávsle od seba nekol ko vyhl adávaní v rámc celého doménového prestoru. Po skončení prehl adávana sa vybere najlepše rešene zo všetkých prehl adávaní. Procesy spolu njako nak nekomunkujú. Algortmy, ktoré sa rada touto stratégou, sú v trede pc/rs a môžu byt v hocktorej trede delena prehl adávana Kooperátívne stratége Teto stratége majú za cel pomocou nterakcí medz nezávslým procesm vyhl adávana zlepšt kvaltu výsledkov. Napríklad s môžu vymeňat doteraz najlepše získané výsledky. Jedným zo spôsobov, ako docelt takúto výmenu, je pomocou tabúl (angl. blackboard), teda nejakej formy zdel anej pamäte ako je znázornené na obrázku č. 5. Takáto tabul a môže byt jedna, alebo ch môže byt vacero. Jedným z príkladov kooperatívnych algortmov pc/c je paralelný evolučný algortmus založený na ostrovoch, ktorý bol v [28] opísaný tak, ako je uvedený v ukážke 5. Tento algortmus obsahuje E hlavných terác zvaných epochy. Na radku 6 až 8 vdíme, ako v rámc tejto epochy prebeha paralelne v procesoch sekvenčný evolučný algortmus nad podpopulácou P o G terácách. Následne na radkoch 9 20

36 Algorthm 5 Obr. 5: Model zdel anej pamäte[15]. Model ostrovov v EA 1: procedure MODELOSTROVOV(E,N,µ) 2: paralelne for 1 to N do 3: Incalzuj(P, µ) 4: end for 5: for epocha 1 to E do 6: paralelne for 1 to N do 7: Sekvencna EA(P, G ) 8: end for 9: for 1 to N do 10: for each j Suseda() do 11: Mgraca(P, P j ) 12: end for 13: Asmluj(P ) 14: end for 15: end for 16: end procedure 21

37 až 12 prebeha proces mgráce a následnej asmláce jedncov. Teto dva procesy na sebe závsa a sú špecfcké pre mplementácu. Napríklad pr mgrác jednca z P do P j ho môžeme z P vymazat alebo ne. Ak to tak neurobíme, asmláca musí po skončení mgrácí populácu redukovat, aby sa zachovala jej vel kost. 4.3 Asynchrónny model ostrovov Asynchrónny model ostrovov je modfkáca modelu ostrovov načrtnutého v kaptole Tento model využíval napríklad v [27], kde ho použl spolu s algortmom NSGA-II [9] na návrh trajektóre medzplanetárneho letu. V [30] ho využíval takým spôsobom, že každý ostrov vylepšoval podmnožnu rozhodovacích premenných a kompletné rešena bol vyhodnotené pomocou výmeny jedncov medz ostrovm. Ich asynchrónny model je opísaný v algortme 6. Algorthm 6 Asynchrónne CCMOEA 1: t 0 2: paralelne for 1 to N do 3: Incalzuj(P 0, ) 4: end for 5: for 1 to N do 6: Zdelaj(P 0, ) 7: end for 8: paralelne for 1 to N do 9: Ohodnot(P 0, ) 10: end for 11: synchronzuj() 12: paralelne whle not ukoncovacapodmenka() 13: Generuj(P t, ) 14: Zdelaj(P t, ) 15: t t : end whle 17: spojparetoverady() Na radkoch 1 až 11 prebeha ncalzáca algortmu. Najprv na radku 3 algortmus vytvorí podpopuláce. Potom sa na radku 6 prešíra častočné rešena 22

38 a následne sa ohodnota rešena v podpopulácach. Podstatné pre ops asynchrónneho modelu ostrovov sú radky 12 až 17, kde sa paralelne generujú nové populáce a následne každý ostrov asynchrónne zdel a svoje rešena. Po ukončení terácí algortmus spojí paretové rady všetkých ostrovov. Výhodou asynchrónneho prístupu je jeho zrýchlene oprot normálnemu prístupu, pr ktorom sa musa ostrovy čakat. Nevýhodou je nžša kontrola nad vyhl adávaním a rzko, že nektorý z ostrovov teruje rýchlejše ako ostatné. 4.4 Špecalzovaný model ostrovov Špecalzovaný model ostrovov (SIM) [38] je taký model, kde každý ostrov optmalzuje nú podmnožnu ohodnocovacích funkcí s cel om zlepšt dverzfkácu vyhl adávana. V [38] testoval vacero možností usporadana ostrovov a ch topológe a zstl, že usporadane na obrázku č. 6 bolo pre nm testované problémy najoptmálnejše. Obr. 6: Príklad SIM pre 3 ohodnocovace funkce[38]. 23

39

40 5 Perzstentné dátové štruktúry Rch Hckey 6 v jednej svojej prezentác 7 na tému stavu a času uvedol zaujímavý príklad s kontrolovaním dodržavana pravdel v pretekoch v atletckej chôdz. Pretekár poruša pravdlá, ak sa počas celého behu nedotýkajú zeme aspoň jednou nohou, teda nemôžu mat vo vzduchu obdve nohy naraz. Ak by sme programoval kontrolovač behu pretekára, proces by zrejme vyzeral nasledovne spýtal by sme sa prvej premennej, č je pravá noha vo vzduchu a dostal by sme kladnú odpoved. Následne by sme sa spýtal druhej premennej, l avej nohy, č je vo vzduchu a dostal by sme opät kladnú odpoved. Na otázku, č pretekár porušl pravdlá, ale neveme odpovedat. Musel by sme poznat, akú mal hodnotu teto premenné naraz v jednom čase. Toto je paralela s vacnt ovým programovaním, kde vaceré paralelné algortmy neustále mena stav nejakých premenných. Počas pretekov nechceme sút ažaceho zastavt len preto, aby sme skontroloval, č dodržuje pravdlá tak, ako častokrát nechceme zastavt bežace procesy. Jedným z rešení je odfott s pretekára, teda prradt k hodnotám premenných aj čas, kedy ch nadobudl. S programovaceho hl adska nám takéto fotky umožňujú robt perzstentné dátové štruktúry. Sla týchto štruktúr spočíva v tom, že pr každej zmene dostaneme úplne novú štruktúru. Pr paralelnom programovaní to napríklad znamená, že pr nektorých operácach nepotrebujeme zámky a né synchronzačné nástroje. Každý proces alebo vlákno s vypýta aktuálny stav (fotku premenných) a s nm následne pracuje, aj ked ch ostatné procesy počas toho znova mena. 5.1 Path copyng Predstavme s, že máme jednorozmerné pole prvkov. Na to, aby sme vedel vytvort jeho fotografu za každým, ked ho zmeníme, by sme musel vytvárat jeho kópe. Kopírovane n-prvkového pol a po každej zmene ne je časovo optmálne. Našt aste, nemusíme kopírovat celé pole, ale ba zmenené čast. Jedným zo spôsobov, ako docelt zdel ane prvkov medz verzam pol a, je použte metódy tzv. 6 Autor programovaceho jazyka Clojure

41 Path copyng [20]. Základnou myšlenkou tohto prístupu je udržavane s vektora v stromovej dátovej štruktúre. Majme pole prvkov a = [1, 2, 3, 4, 5]. Jeho perzstentná reprezentáca použtím bnárnych stromov je znázornená na obrázku č. 7. Obr. 7: Vektor a reprezentovaný bnárnym stromom 8. Vrchol stromu obsahuje dĺžku pol a a smerníky na ostatné čast. Dáta sú uložené v lstoch stromu. Ak by sme toto pole zmenl napríklad prdaním d alšeho prvku b = a.push(6), dostal by sme nové pole, tak ako je znázornené na obrázku č. 8. Každá zmena pol a a vytvorí úplne nové pole, v tomto prípade je to b znázornené červenou farbou. Pr takejto prác so štruktúram nevytvárame skutočné kópe celého pol a ale ba kópe cesty. Analogcky fungujú aj d alše operáce ako zmena prvku alebo jeho odobrate

42 Obr. 8: Pole a a b po prdaní prvku. 5.2 Tre Vyhl adávane prvkov v takomto strome je založené na stromoch zvaných Tre [14]. Pr klasckých bnárnych stromoch je prehl adávane postavené na tom, že hodnoty menše ako hodnota vrchola sa nachádzajú v l avom podstrome a hodnoty väčše naopak v pravom. V tre stromoch je nájdene prvku založené na kl úč napríklad na postupnost písmen, ako je znázornené na obrázku č. 9. Vyhl adávane vrchola v bnárnom strome, ktorý je na obrázku č. 9 vl avo, predstavuje rekurzívne vyberane správneho podstromu na základe hodnoty vrchola, až kým sa nedostaneme po hl adaný vrchol. Na obrázku je znázornené hl adane vrchola 2, kde na základe hodnôt deme stále do l avého podstromu. V pravej čast obrázka je znázornený strom tre a kl úč aa. Pr hl adaní prvku podl a kl úča sa najprv vybereme po vetve a a následne znovu po vetve a. 27

43 Obr. 9: Nájdene prvku v bnárnom strome a strome tre. 5.3 Persstent bt-parttoned vector tre V Clojure mplementácí takýchto perzstentných štruktúr využívajú stromy, ktoré sa volajú Persstent bt-parttoned vector tre. Teto stromy su vel m podobné stromom opísaným vyšše, líša sa však v nektorých vlastnostach: počet hodnôt uložených v jednom vrchole je 32 takáto reprezentáca spôsobuje, že stromy sú plytké a tučné, kl účom k prvku je 32-btové číslo na adresovane jednej vetvy potrebujeme 5 btov z tohto kl úča, teda maxmálna hĺbka takéhoto stromu je 6. Počet prvkov, ktoré sa dajú v takomto strome uložt, je dostatočne vel ký vzhl adom na hardvérové obmedzena a zložtost prístupu je maxmálne O(6), tal optmsaton 9 teto stromy využívajú optmalzácu, kde vrchol ukazuje na koncový vrchol pramo. Pr takomto usporadaní prdávane prvku do pol a znamená, že vytvárame ba dva vrcholy koreň a koncový vrchol. Novú cestu treba vytvárat, ba ak sa koncový vrchol zaplní celý. To sa pr 32-prvkových vektoroch stáva pr každom 32. prdaní

44 6 Návrh algortmu V [15] spomínajú 6 problémov, ktorým sa treba venovat pr návrhu paralelných kooperatívnych metaheurstík: aké nformáce sa prenášajú medz procesm, medz ktorým procesm sa teto nformáce prenášajú, kedy sa teto nformáce prenášajú, akým spôsobom, ako proces narába so získaným nformácam, sú nformáce menené v rámc prenosu alebo sú vytvárane úplne nové nformáce. V nasledujúcch radkoch opíšeme návrh algortmu a budeme sa snažt teto otázky zodpovedat. Prvotnou deou, s ktorou sme pracoval, bolo rozdelene ohodnocovacích funkcí. Rozhodl sme sa ch rozdelt do rôzne vel kých skupín. Týchto skupín je 2 n n 1, kde n je počet ohodnocovacích funkcí a dokopy tvora každú podmnožnu množny ohodnocovacích skupín, okrem prázdnej množny a množín, ktoré obsahujú ba jednu funkcu. Ak teda O je množna ohodnocovacích funkcí, potom defnujeme množnu F, takú, že F = {F, F P (O) F > 1}, kde P (x) je potenčná množna. Pr čítaní článkov sme našl paralelu tohto prístupu v dekompozící multobjectve ohodnotení pomocou vážených vektorov. V SDMOPSO [1] rozšírl Partcle Swarm Optmsaton na mult-objectve takým spôsobom, že každému jedncov prradl ný vektor váh, pomocou ktorého sčítaval ohodnocovace funkce a agregát následne optmalzoval. Každý jednec teda optmalzoval sngleobjectve problém len s ným náhodne zvoleným váham, prčom dva jednce nemal rovnaké váhy. Ich motvácou bola aproxmáca paretového radu, kde každý jednec nklnoval k nejakej jeho čast na základe svojho vektora váh. Je vhodné spomenút, že v [1] používal aj né mechanzmy, avšak našu paralelu tvorí 29

45 fakt, že potláčame nektoré ohodnocovace funkce na to, aby sme dosahl čo najlepšu dverzfkácu a aproxmácu paretového radu. Tento prístup je podobný modelu SIM, ktorý sme opísal v kaptole 4.4. Máme teda 2 n n 1 procesov P kde každý pracuje s nejakou množnou ohodnocovacích funkcí F F. Algortmus, ktorý navrhujeme, je asynchrónny a decentralzovaný, teda v klasfkác opísanej v kaptole 4.2 zapadá do pc a do nektorej z kolegálnych kategórí. Komunkáca medz procesm prebeha asynchrónne a s pravdepodobnost ou p c po každej terác algortmu. Komunkujeme dfúzou so susedným procesm. Teto procesy budu náhodne rozložené v 2D prestore tak, ako je znázornené na obrázku č. 10. Táto komunkáca sa dá opísat nasledovným bodm: Obr. 10: Procesy P v 2D prestore a ch dosah. Proces P má dosah ba na susedov vo svojom okolí o t. Toto okole sa časom mení tak, ako je znázornené na obrázku č. 10, kde proces P 4 na začatku ovplyvňuje procesy v červenom kruhu (o 1 ) a po stom čase sa jeho okole zväčší na zelený kruh (o 2 ). Procesy ponúkajú ostatným procesom celý paretový rad. Prjímajúc proces 30

46 sa teda môže rozhodnút, ktorého jednca s vybere. V našej mplementác to je prvý jednec v rade, no napríklad v [27] využívajú pr výbere jednca metrku crowdng dstance z NSGA-II [9]. Vel kost okola, s ktorým komunkujú o t aj pravdepodobnost p c ako často komunkujú, časom raste. Toto je paralela so smulovaným žíhaním, kde na začatku je podporovaná dverzta a neskôr chceme, aby algortmus konvergoval. Takto procesy na začatku môžu konvergovat podl a svojch ohodnocovacích funkcí, ale neskôr budú nklnovat k mplctnému globálnemu optmu. Komunkáca prebeha pomocou tabúl, teda exstuje centralzovaná pamät, kde sú pomocou perzstentných dátových štruktúr uložené ponúkané rešena spolu s pozícou, kde bol vytvorené. Proces P po skončení teráce ponúkne ostatným procesom rešene x s pravdepodobnost ou p c. Ostatné procesy toto rešene vda ked komunkujú a vyberú s ho s pravdepodobnost ou, ktorá závsí od vzdalenost medz P j a P. Proces P j s môže vybrat jedno alebo vacero rešení. Pravdepodobnost výberu x procesom P j raste lneárne no exstuje možnost použta gausovej dstrbúce. V prehl adávacích procesoch beží sekvenčná mult-objectve metaheurstka. Krok jednca resp. jeho zmena musí obsahovat prvky, ktoré využívajú najlepšeho doteraz nájdeného jednca, alebo rôzne pamät ové prvky, kde s jednce pamätajú doteraz najlepše rešene. V algortme Gbest-guded ABC [40] využíval na pohyb jednca rovncu 12. v j = x j + φ j (x j x kj ) + Ψ j (y j x j ) (12) Táto rovnca popsuje pohyb včely, kde v je nová pozíca a x je stará. Index a j popsuje, o ktorú včelu sa jedná a o aký prvok vektora. φ j je náhodné číslo medz [-1,1] a Ψ j je náhodné číslo medz [0,C]. Okrem prvej čast rovnce prdal aj člen, v ktorom sa vyskytuje y, čo je najlepše dosahnuté rešene. To teda smeruje rešena k nejakému určenému bodu. V našom prípade to je k bodom, ktoré proces prjal od susedov. Pravdepodobnost, s akou sú jednce t ahané, sa môže časom ment. Alternatíva k tomuto rešenu je, aby proces začlenl všetky jednce, ktoré 31

47 prjme do svojej populáce. Z globálneho pohl adu na prehl adávane exstuje proces, ktorý spravuje tabul u. Ked že procesy ponúkajú svoje najlepše rešena, dá sa na ne pozerat ako na rešena, ktoré aproxmujú paretový rad celého prehl adávana. Výsledný rad, teda bude zložený z rešení, ktoré bol použté pr komunkác. 32

48 7 Implementáca Algortmus sme sa rozhodl mplementovat v programovacom jazyku Clojure 10. Ide o funkconálny jazyk bežac v Java JVM. Tento jazyk natívne pracuje s perzstentným dátovým štruktúram opísaným v kaptole č. 5 a obsahuje aj né mechanzmy na zjednodušene paralelzáce 11. Pr mplementác sme dbal na to, aby sme využíval prevažne ba čsté funkce. Funkca je čstá, ak jej výsledok závsí ba od jej vstupu a počas svojho vykonávana nemá žadne vedl ajše účnky. Takéto funkce sa l ahše testujú, no prmárnym dôvodom pre ch používane bolo zjednodušene paralelzáce. Čsté funkce môžeme bezpečne používat v paralelnom prostredí, kedže njako nezmena svoj vstup a an neprstupujú do žadnej krtckej oblast. Tento pohl ad na funkce ovplyvňuje aj návrh celého systému. Entty ako jednec (rešene) alebo ostrov by bol v OOP klasckým tredam, ktoré by mal svoj stav a metódy. Volane týchto metód by menlo stav danej entty. Pr funkconálnom programovaní sa ale na teto entty pozeráme ako na dáta. Jednec alebo aj ostrov sú dáta, ktoré nejaká funkca pretvorí na né dáta. Funkconálna paradgma, ktorá využíva perzstentné dátové štruktúry opísané v kaptole č. 5 a čsté funkce, nám umožňuje paralelné programovane pr mnmálnom použtí zámkov. V nasledujúcch kaptolách opíšeme návrh a mplementácu ostrova opísaného v kaptole č. 6. Ostrov musí vedet fungovat v paralelnom prostredí, kde s budú ostrovy medz sebou vymeňat jedncov asynchrónne. Musí vedet pracovat s l ubovolným optmalzačným problémom a l ubovol nou metaheurstkou. 7.1 Jednec Jednec predstavuje jedno možné rešene problému, ktorý sa snažíme optmalzovat. V ukážke č. 1 je znázornená naša mplementáca jednca ako záznamu dát, bez vlastných metód alebo funkconalty Futures, Promses, Agents a né 33

49 S týmto jedncom musí vedet pracovat čo najvac metaheurstík a problémov, preto sme sa ho snažl navrhnút čo najvšeobecnejše. Skladá sa z atrbútov, ktoré opsujú jeho ohodnotene, č už normalzované alebo ne, pozícu v doménovom prestore alebo to, č je valdný. Jednec je valdný, ak spĺňa ohrančena dané problémom a zároveň je jeho pozíca v hrancach doménového prestoru. Každá metaheurstka s môže navyše ukladat pre ňu špecfcké dáta, napríklad počet pokusov o zlepšene pozíce a pod. {:objectves {:orgnal {} :normalzed {}} :poston [] :data {} :vald false} Ukážka 1: Jednec Ostrov Ostrov je základná jednotka nášho algortmu, ktorý bol opísaný v kaptole č. 6. Každý ostrov slúž ako abstrakca, ktorá vykonáva jeden konkrétny optmalzačný algortmus nad daným problémom. Aj ked náš algortmus ne je programovaný v paradgme OOP, použl sme dagramy tred na to, aby sme opísal jednotky programu a ch vzt ahy. Dagram, ktorý opsuje ostrov, je možné vdet na obrázku č. 11. Každý ostrov je defnovaný štyrm jednotkam: confg problem search state 12 Vo formáte EDN 34

50 Obr. 11: Dagram tred opsujúc ostrov Confg Jednou z požadavek na ostrov je, aby bežal v samostatnom procese čo možno najoddelenejše od ostatných procesov. Preto s každý ostrov nese vlastnú nštancu konfguráce, ku ktorej môže prstupovat bez toho, aby musel rešt problémy spojené so synchronzácou. Táto konfguráca je využívaná ostatným jednotkam ostrova. Kedže všetky parametre sú oddelené od mplementáce problému alebo vyhl adávaceho algortmu, vaceré ostrovy môžu využívat rovnaký kód no s ným nastavenam. Takýto návrh zjednodušuje aj testovane, pretože každý parameter, ktorý ovplyvňuje beh programu, je dostupný na jednom meste. 35

51 Obr. 12: Dagram tred opsujúc objekt Problem Problem Tento objekt, znázornený na obrázku č. 12, predstavuje nštancu problému ako napríklad problém hl adana motívov (kaptola č. 2) alebo DTLZ7, ktorý opíšeme v kaptole č Pre problém ako taký, resp. pre jeho abstrakcu sme defnoval 4 funkce, ktoré treba mplementovat, aby ho vedel ostrov optmalzovat : evaluate táto funkca slúž na ohodnotene jednca defnovaného v kaptole 7.1. Po vykonaní tejto funkce musí mat jednec nastavené výsledky svojho ohodnotena a pre zjednodušene aplkáce aj príznak, ktorý popsuje, č je daný jednec valdný. generate vytvorí valdného a ohodnoteného jednca na náhodnej pozíc v doménovom prestore. s-vald? vrát true alebo false podl a toho, č je jednec valdný. objectves vrát kl úče, na základe ktorých sa dá prstupovat k ohodnotenu jednca. Teto kl úče môžu byt jednoduché čísla, ale aj symboly ako :smlarty alebo :length v závslost od konkrétneho problému. 36

52 7.2.3 Search Obr. 13: Dagram tred opsujúc objekt Search. Dagram na obrázku č.13 opsuje objekt Search. Ten je nštancou metaheurstky, ktorú využíva ostrov na prehl adávane doménového prestoru. Tento objekt poskytuje dve metódy terate a nt-sland. Metóda terate predstavuje jednu terácu metaheurstky. Jej argumentom je celý ostrov, ktorého stav následne mení. Vyhl adávane MOABC (kaptola č. 7.4) napríklad vykoná všetky fázy včel. Metóda nt-sland slúž na ncalzácu ostrova a jeho populáce z pohl adu použtej metaheurstky. MOABC potrebuje vytvorené paretové rady a dodatočné ohodnotena opísané v kaptole State Tento objekt (obrázok č. 14) je nostel om stavu ostrova resp. vyhl adávana. Obsahuje súčasnú populácu a množnu jedncov, ktorí tvora paretový rad. Okrem toho obsahuje dáta špecfcké pre vyhl adávací algortmus a atrbút g-best. Tento atrbút predstavuje jednca, ku ktorému sú ostatné jednce akokeby t ahané (rovnca č. 12). 37

53 Obr. 14: Dagram tred opsujúc objekt State Vyhl adávací proces ostrova V algortme č. 7 opsujeme vyhl adávací proces ostrova. Na radkoch 1-4 vytvárame ostrov ako kombnácu rešeného problému, vyhl adávaceho algortmu a konfguráce. Nasleduje teratívny proces, kde vyhl adávací algortmus S vykoná terácu metaheurstky. Následne na radkoch 8-10 sa s určtou pravdepodobnost ou závslou na čase t vykoná funkca ponuknjedncov. Na radkoch sa znova s nejakou pravdepodobnost ou vykonajú funkce zoberjedncov a asmluj. Algorthm 7 Vyhl adávane ostrova 1: P vytvorp roblem(:dtlz7) 2: S vytvorsearch(:moabc) 3: C vytvorkonf guracu() 4: I 0 vytvorostrov(c, S, P ) 5: whle ukonct?(i t, t) = false do 6: t t + 1 7: I t teruj(s, I t 1 ) 8: f p(t) random(0, 1) then 9: ponuknjedncov(i t ) 10: end f 11: f p 2 (t) random(0, 1) then 12: M zoberjedncov(i t, t) 13: I t asmluj(i t, M) 14: end f 15: end whle Funkce ponuknjedncov, zoberjedncov a asmluj predstavujú mechanzmy 38

54 komunkáce medz ostrovm, ktoré opíšeme v nasledujúcch kaptolách. 7.3 Mgráce jedncov Mgráca jedncov je mplementovaná pomocou zdel anej pamäte (kaptola č ). Každý ostrov má k dspozíc dve entty: zdel aná pamät tá obsahuje štruktúry pre každý ostrov, kde môžu zapsovat svoje rešena. Teto štruktúry sú krtcké oblast z pohl adu paralelného programovana. Každý ostrov môže písat ba do svojej štruktúry, no čítat môže zo všetkých. Teto krtcké oblast sú chránené pomocou Atom-ov 13, ktoré zabezpečujú chránený záps a čítane. Kedže používame perzstentné dátové štruktúry (kaptola č. 5) nemôže sa stat, že jeden ostrov s zobere dáta zo zdel anej pamäte a nekto ný mu ch zmení. susedstvo táto štruktúra je špecfcká pre každý ostrov tj. každý ma nú nštancu. Pre ostrov I k sa skladá z dvojíc (I, d k ), kde I I k a d k je vzdalenost medz ostrovm I k a I. Obsahuje teda nformácu o tom ako sú ostatné ostrovy vzdalené od ostrova I k Susedstvo a topológa Topológe určujú cesty, ktorým môžu ostrovy komunkovat. Na obrázku č. 15 uvádzame príklad kruhových topológí, kde ostrovy komunkujú ba s ostrovm, s ktorým majú spoločnú hranu. V mplementácí nášho algortmu nemáme takto explctne určenú topológu, resp. každý ostrov je prepojený s každým ným ostrovom a komunkáca závsí od času a vzdalenost medz ostrovm. Ostrovy sú v našej mplementác rozmestnené v mrežke prčom v prvom a v poslednom bode tejto mrežky sú umestnené ostrovy, ktoré optmalzujú všetky ohodnocovace funkce. V budúcej prác by bolo vhodné vyskúšat aj né rozmestnene. Z tejto topológe a vzdaleností sa pre každý ostrov vyrátavá jeho susedstvo

55 Obr. 15: Topológe (zl ava) Kruh, Kruh+1+2, Kruh+1+2+3[33] Funkce ponúkn jedncov, zober jedncov a asmluj Funkce ponuknjedncov, zoberjedncov a asmluj zabezpečujú výmenu jedncov medz ostrovm a sú volané po každej terác metaheurstky s určtou pravdepodobnost ou. Funkca ponuknjedncov zapíše prvý paretový rad do zdel anej pamäte, čím poskytne jedncov ostatným ostrovom na čítane. Funkca zoberjedncov pracuje so susedstvom ostrova. Najprv na základe času obmedzí množstvo kanddátov, s ktorým môže ostrov komunkovat. Toto množstvo závsí od vzdalenost ostrovov. Na začatku vyhl adávana môže ostrov komunkovat ba s blízkym ostrovm. Okole, s ktorým s môže vymeňat rešena, sa časom zväčšuje. Potom s náhodne vybere ostrov od ktorého chce čerpat rešena pomocou rulety. Ostrovy, ktoré sú blžše, majú väčšu šancu na výber. Kedže ostrovy poskytujú celý paretový rad, ostrov prjímajúc rešena sa musí rozhodnút, ktoré rešene z paretového radu s zobere. V našej mplementác je to prvý jednec v rade. Je možné vyskúšat aj ný výber, napríklad v [27] vyberal jedncov pomocou ohodnotena crowdng dstance. Funkca asmluj nastaví prjatého jednca ako nového g-best. 7.4 MOABC Metaheurstka, ktorú používame v ostrovoch, sa volá Multobjectve Artfcal Bee Colony (MOABC) [17]. Jej fungovane sme už načrtl v kaptole V algortme 8 uvádzame pseudokód metódy terate, ktorú poskytuje naša mplementáca MOABC ostrovu. 40

56 Algorthm 8 MOABC - terate 1: procedure ITERATE(Island I) 2: Stav stav(i) 3: P populaca(stav) 4: W, O, S rozdelp opulacu(p ) 5: W fazap racovncek(p, W ) 6: O fazap rzeracov(p, W, O) 7: S f azap reskumcek(s) 8: P 2 spoj(w, O, S) 9: F ronts vytvorp aretof ronty(p 2 ) 10: F ronts zoradv RamcF rontov(f ronts) 11: P 3 vytvornovup opulacu(f ronts) 12: I 2 zmenstav(i, Stav, P 3, F ronts) 13: return I 2 14: end procedure V radkoch 2-4 získame populácu zo súčastného ostrova a následne ju rozdelíme na 3 skupny pracovníčky, przeračov a preskumníčky. Rozdelene prebeha takým spôsobom, že napríklad prvých 50% považujeme za pracovníčky, dalších 40% za przeračov a zvyšné včely za preskumníčky. Po tomto delení nasledujú fázy na radkoch 5-7 tak, ako sú defnované v ABC [19]. V pôvodnom algortme vo fáze przeračov s včely tejto skupny náhodne zvola jednu pracovníčku a jej pozícu sa snaža zlepšt. Pravdepodobnost, že táto včela bude vybraná, závsí od jej ohodnotena. Kedže pôvodné ABC optmalzovalo ba 1 ohodnocovacu funkcu, takýto výber sme nemohl presne mplementovat. Pravdepodobnost výberu pracovníčky v našom algortme môže závset bud od pozíce v paretovom rade alebo od nejakého ného ohodnotena v rámc tohto radu. Tomuto problému sa venujeme v nasledujúcch kaptolách. Po týchto fázach nasledujú kroky spojené s optmalzácou vacerých ohodnocovacích funkcí. Na radku 8 vytvoríme novú populácu spojením vyšše opísaných skupín. Následne na radku 9 vytvoríme z tejto populáce paretové rady pomocou non-domnated sort opísaného v nasledujúcej kaptole. Tento spôsob zoradena nám vrát množnu radov, kde v prvom rade sú všetky včely lepše ako v druhom atd. Nehovorí ale nč o tom, v akom vzt ahu sú včely v rámc jedného radu. Preto musíme v 10 zoradt teto včely ným spôsobom. 41

57 Následne na radkoch 11 a 12 veme z týchto radov vyskladat novú populácu a zment stav ostrova. 7.5 Non-domnated sort V NSGA-II [9] opísal algortmus, ktorý na zoradene jedncov používal tzv. nondomnated sort. Tento zarad ovací algortmus slúž na rýchle vytvorene paretových radov z populáce. Je založený na prncípe domnance opísanej v kaptole č Jeho výstupom je množna paretových radov, kde prvý rad obsahuje jednce, ktoré domnujú jednce v ostatných radoch. Nasledujúce rady obsahujú zasa jednce, ktoré domnujú ostatné v radoch za nm. 7.6 Usporadane v rámc paretových radov Pr opse pseudokódu MOABC v kaptole 7.4 sme narazl na problém náhodného výberu jedncov vo fáze pracovníček. Potrebujeme metrku, ktorou veme ohodnott jednca v rámc paretového frontu. Na základe tejto metrky veme následne ovplyvnt náhodný výber jednca. V nasledujúcch kaptolách uvádzame dve také metrky. Obe sú založené na vzdalenost jedncov v doméne ohodnotení a preferujú jednce, ktoré sú v redších oblastach. Táto preferenca by mala zlepšt aproxmácu paretového radu Crowdng dstance Tento algortmus bol spolu s non-domnated sort defnovaný v NSGA-II [9]. Ohodnocuje jedncov spôsobom, pr ktorom sleduje polohu jednca v porovnaní s jeho susedm. V rámc jednej dmenze ohodnocovaceho prestoru vyrátame pre jedného jednca súčet vzdaleností k dvom najblžším susedom (jednému menšemu a druhému väčšemu). Ohodnotene jednca je potom súčet týchto vzdaleností cez všetky dmenze. 42

58 7.6.2 Maxmn Maxmn ohodnotene [4] je defnované ako: ftness = max j (mn k (f k f j k )) kde f k sú ohodnocovace funkce. Na obrázku č. 16 môžeme vdet ohodnotene touto funkcou v dvoch prípadoch. Kedže de o mnmalzácu, môžeme vdet, že jednce, ktoré sú d alej od susedov, majú lepše ohodnotene. Obr. 16: Ohodnotene maxmn[29] Usporadane a výber jedncov Po tom, čo prebehnú fázy včel v MOABC potrebujeme jedncov usporadat. Prvým krokom je vytvorene paretových radov pomocou NSGA-II. Nasleduje usporadane v rámc týchto radov použtím crowdng dstance. Teto usporadané rady sa následne spoja a vytvora d alšu terácu populáce. V pôvodnej verz algortmu ABC [19] s vo fáze przeračov včely vyberajú zdroje potravy, ktoré chcú preskúmat, na základe ch ohodnotena ftness. Kedže pr probléme hl adana motívov máme vaceré ohodotena, nemôžeme použt pôvodný návrh. V našej mplementác s przerač vyberajú zdroje potravy pomocou rulety, kde je ftness odvodená od príslušnost k paretovému radu a zároveň aj od crowdng dstance: ftness(x) = 2 MAX rank(x) MAX 43 + normcd(x) (13)

59 kde rank(x) je číslo paretového radu od 0 (najlepše) po N (najhorše) do ktorého patrí jednec a MAX = N + 1. normcd(x) je hodnota crowdng dstance normalzovaná v rámc radu. 7.7 Postprocessng Vstupom pre náš algortmus sú DNA sekvence vo formáte f asta z testovaceho datasetu [35]. Tento dataset vyžaduje, aby výstupom bol ret azce nukleotdov, ktoré predstavujú motív a ch presná poloha. V nasledujúcch kaptolách opíšeme mechanzmy, ktoré okrem toho, že z najlepších jedncov extrahujú ret azce DNA motívov, sú schopné ch aj dodatočne ohodnott a prefltrovat Extrahovane motívu pomocou konsenzu V kaptole č sme opísal proces ohodnocovana jedncov, ktorý použl v MOABC. V tomto procese vystupoval konsenzus motív, čo je akás abstrakca nad motívm, na ktoré ukazuje poloha včely. V extrakc motívu pomocou konsenzu využívame práve tento konsenzus motív. V algortme 9 opsujeme prebeh takejto extrakce. Algorthm 9 Extrakca motívu pomocou konsenzu 1: procedure EXTRAHUJMOTIVKONS(Soluton s) 2: motvy vyberm otvyp odlap olohy(s) 3: k 1 konsenzus(motvy) 4: kanddat fltrujp odlamnp odpory(motvy, k 1, 0.5) 5: k 2 konsenzus(kanddat) 6: nstancamotvu vybernajblzs(kanddat, k 2 ) 7: return nstancamotvu 8: end procedure Radky 2-4 fltrujú ret azce, na ktoré ukazuje jednec rovnakým spôsobom ako pr jeho vyhodnocovaní. Z kanddátov, ktorých dostaneme na radku 4, by sa pr ohodnocovaní vytvorla matca PFM. Sú to práve teto motívy, z ktorých vyberáme rešene. Vytvoríme s z nch d alší konsenzus motív a za výsledok považujeme ten motív, ktorý je k nemu najblžše. Tento prístup extrahuje z každého jednca ba jedno rešene problému. 44

60 7.7.2 Vederkové skóre Vederkové skóre slúž na ohodnotene ret azca nukleotdov k, ktorý má predstavovat motív. Pre kanddáta k sa z každej sekvence vytvora n-gramy, ktoré majú rovnakú dĺžku. Teto n-gramy sa ohodnota podl a toho, akú majú Hammngovú vzdalenost voč k a zahoda sa te, ktoré majú vzdalenost väčšu ako e 14. N- gramy, ktoré ostal, sa zatreda do vederok B. N-gram patrí k vederku B ak je Hammngová vzdalenost n-gramu od k rovná. Vederkové skóre je defnované rovncou 14: vederkoveskore = B 1 =0 B + 1 kde B je počet vederok a B je počet n-gramov v -tom vederku. (14) Weed-out Tento prístup je založený na fungovaní algortmu Weeder, ktorý sme opísal v kaptole č Na rozdel od prístupu v algortme 9 Weed-out využíva pr extrakc všetky jednce naraz. Algorthm 10 Extrakca motívov pomocou weed-out 1: procedure WEED-OUT(Soluton solutons[]) 2: kanddat 3: for each s solutons do 4: motvy vyberm otvyp odlap olohy(s) 5: kons konsenzus(motvy) 6: k f ltrujp odlam np odpory(motvy, kons, 0.5) 7: for each k k do 8: kanddat kanddat vederkoveohodnotene(k) 9: end for 10: end for 11: kanddat vederkovyf lter(kanddat) 12: kanddat occf lter(kanddat) 13: return kanddat 14: end procedure 14 e v našom prípade závsí od dĺžky k. 45

61 Na radku 2 najprv ncalzujeme prázdnu množnu kanddátov. Potom pre každé rešene, podobne ako pr extrakc pomocou konsenzu, vybereme z každého jednca kanddátov. Následne ohodnotíme každého kanddáta vederkovým ohodnotením. Na radku 11 s ponecháme ba najlepších 5 jedncov podl a vederkového skóre. occflter je skóre výskytov tak, ako bolo defnované v kaptole č V tomto ohodnotení sa použjú n-gramy blízke kanddátov na vytvorene matce PFM. Podl a nukleotdov kanddáta a rovnce 8 sa vyráta skóre medz 0 a 1. Všetc kanddát, ktorí majú skóre menše ako 0,9, sú zahodení Bucket-out Bucket-out využíva rovnaký algortmus ako Weed-out, no vynechá fltrovane pomocou occflter Instance-flter Instance-flter kombnuje vederkové skóre a extrahovane motívov konsenzom. Funguje spôsobom, pr ktorom sa vederkovým skóre ohodnocujú ba také ret azce, ktoré bol pred tým extrahované z jedncov pomocou konsenzu (kaptola 7.7.1). Takto ohodnotené ret azce sa potom zorada podl a skóre a následne sa zobere ba n najlepších Fltrovane výsledkov Náš algortmus poskytuje 4 módy postprocesngu a fltráce, medz ktorým s môžeme vyberat. Všetky teto módy pracujú s n najlepším jedncam zo všetkých populácí: :only-pareto-n použje extrakcu motívu pomocou konsenzu, :only-weeder použje Weed-out, :bucket-out použje Bucket-out, :nstace-flter použje Instance-flter. 46

62 7.8 DTLZ 7 Ked že návrh nášho algortmu umožňuje optmalzovat vacero problémov, mplementoval sme za účelm testovana aj jednoduchší problém ako je hl adane motívov a to problém DTLZ7 [10]. Ten na rozdel od MFP (Motf Fndng Problem) je matematcky jednoznačne popísaný a je známe jeho úplné rešene. Vd aka tomu veme presne určt, ako vyzerá jeho paretový rad a napríklad aj to, ako d aleko sú od neho vzdalené nam nájdené rešena. Pr hl adaní motívov vyhodnocujeme algortmus na základe prekryvu nam nájdených motívov a motívov zasadených v testovacom datasete. DTLZ7 veme vyhodnott na základe pokryta paretových radov. Veme teda presnejše sledovat správane algortmu Ops problému Problém DTLZ7 patrí do skupny problémov DTLZ, ktorú defnoval K. Deb a spol. v [10]. V tejto skupne je defnovaných 9 optmalzačných problémov, ktoré testujú rôzne vlastnost algortmu. DTLZ7 testuje schopnost algortmu udržavat podpopuláce v rôznych pareto optmálnych regónoch. Je defnovaný nasledujúco: kde Mnmalzuj: zatal čo platí f 1 (x 1 ) = x 1, f 2 (x 2 ) = x 2,. f M 1 (x M 1 ) = x M 1, f M (x) = (1 + g(x M ))h(f 1, f 2,..., f M 1, g), g(x M ) = x, x M x x m M 1 h(f 1, f 2,..., f M 1, g) = M f =1 1 + g (1 + sn(3πf )), 0 x 1, = 1, 2,..., n 47

63 Funkce f predstavujú ohodnocovace funkce, zatal čo vektor x predstavuje pozícu rešena v doménovom prestore. n je počet rozmerov tohto prestoru a M je celkový počet ohodnocovacích funkcí. Takáto parametrzáca problému je d alšou výhodou problémov z tredy DTLZ, kde s môžeme sam určt počet ohodnocovacích funkcí alebo vel kost doménového prestoru. Autor problému d alej uvádza, že funkca g potrebuje k = x m rozhodovacích premenných (pozíce vo vektore x) prčom celkový počet premenných je n = M + K + 1. Autor odporúča k = 20. Pr našom testovaní sme používal M = 3 ohodnocovace funkce, teda počet dmenzí doménového prestoru bol v súlade s odporúčaným k n = 22. Pre tr ohodnocovace funkce sme sa rozhodl preto, lebo v knžnc jmetal[13] je dostupný pre tento počet pareto optmálny rad. Tento rad pre problém DTLZ7 uvádzame na obrázku č. 17, kde os predstavujú ohodnotena jednca. Výsledky predbežných testov uvedeme v d alších kaptolách. Obr. 17: Paretový rad pre problém DTLZ

64 7.8.2 Testovane pomocou DTLZ 7 Pomocou problému DTLZ7 sme sledoval správane a vlastnost nášho algortmu. Vyhodnocoval sme to spôsobom, pr ktorom sledujeme prestor ohodnotení resp. ako sa počas terácí vyvíja paretový rad. Pr testovaní sme použl MOABC bez g-best člena. Počet včel bol 100, prčom pracovníček bolo 50, przeračov 40 a preskumníčok 10. Testoval sme schopnost algortmu konvergovat k rešenu, ale aj správane sa vyhl adávana pr uvol není ohodnocovacích funkcí, tak ako je opísané v kaptole č. 6. Na nasledujúcch obrázkoch uvádzame správane sa algortmu pr vyšše spomenutých parametroch, prčom sme neuvol nl žadnu funkcu. Na obrázku č. 18 zobrazujeme graf rešení v prestore ohodnocovacích funkcí defnovaných v kaptole č Modrou farbou sú znázornené body rešena daného problému. Červenou farbou sú znázornené body, ktoré tvorl pareto rad nášho rešena pre danú terácu. Na obrázkoch č. 18, 19, 20 a 21 uvádzame rešena v rôznych momentoch vyhl adávana. Obr. 18: MOABC prvá teráca pre všetky ohodnocovace funkce. 15 Vygenerované pomocou nástroja MATLAB 49

65 Obr. 19: MOABC 25. teráca pre všetky ohodnocovace funkce. Obr. 20: MOABC 50. teráca pre všetky ohodnocovace funkce. 50

66 Obr. 21: MOABC 100. teráca pre všetky ohodnocovace funkce. 51

67 Z daných výsledkov sme vedel vyvodt nekol ko záverov. Naše rešene teratívnym spôsobom konvergovalo k lepším rešenam. DTLZ je problém, kde sa snažíme mnmalzovat ohodnocovace funkce. Po stej terác algortmu sa všetky najdomnantnejše rešena nachádzal nad bodom [0,0,0]. To znamená, že dve z troch ohodnocovacích funkcí optmalzoval najlepše, ako sa dalo. V čom náš algortmus zlyhával bolo, že sa nedokázal dostat do skutočného optma, ktoré bolo na obrázkoch vdet modrou farbou. To môže byt spôsobené tým, že sme sa zasekl v lokálnom optme. Skonvergoval sme do bodu [0,0, 14] prčom skutočné rešena sa nachádzajú na celom rozsahu prvých dvoch súradníc. Pr pohl ade na ohodnocovace funkce DTLZ ne je prekvapvé, že sme sa zasekl práve v týchto bodoch. Teto ohodnocovace funkce sa optmalzujú jednoducho, kedže de v podstate ba o jednotlvé hodnoty pozčného vektora v prestore domény (f (x) = x ). Takéto ohodnocovace funkce sa ale môžu vyskytovat aj v ných problémoch, napríklad pr hl adaní motívov je to ohodnocovaca funkca, ktorá popsuje dĺžku motívu. Zložtá funkca je práve tá treta, ktorú sa nám nepodarlo prílš optmalzovat. Táto funkca závsí od celej polohy. Druhou chybou nášho algortmu bola slabá dverzfkáca rešení, práve na základe týchto testov sme zstl potrebu použta ohodnotení ako crowdng dstance opísaného v kaptole č Na nasledujúcch obrázkoch uvádzame výsledky algortmu po 75 terácach pr postupnom uvol ňovaní požadavek na ohodnocovace funkce. 52

68 Obr. 22: MOABC 75. teráca pr uvol není prvej jednoduchej ohodnocovacej funkce. Obr. 23: MOABC 75. teráca pr uvol není druhej jednoduchej ohodnocovacej funkce. Na prvých dvoch grafoch č. 22 a 23 je znázornená 75. teráca pr uvol není jednej z l ahkých ohodnocovacích funkcí. Pr týchto vyhl adávanach sme optmalzoval teda ba 2 funkce jednu jednoduchú a jednu zložtú. Ako môžeme vdet, znovu sme sa zasekl v lokálnom optme, no bolo to ovel a blžše ku skutočnému rešenu. Pr zložtej funkc sme namesto 14 dosahl ohodnotene prblžne 7. Ked sme nteraktívne prezeral teto grafy, vdel sme aj to, že vý- 53

69 sledky sa nachádzajú akoby na opačných stenách, teda už ba kombnácou týchto dvoch rešení by sme dosahl väčšu dverzfkácu. Obr. 24: MOABC 75. teráca pr uvol není oboch l ahkých ohodnocovacích funkcí. Na poslednom grafe na obrázku č. 24 je vyhl adávane, pr ktorom sme uvol nl obe jednoduché funkce. Z povahy fungovana paretových radov vracame ba 1 rešene to, ktoré domnuje všetky ostatné. Na tomto grafe vdíme, že sme sa dostal takmer úplne k dokonalému rešenu. Pomocou problému DTZL7 sme testoval neúplnú mplementácu algortmu. Mohl sme sledovat správane algortmu ešte pred tým, než sme mal mplementovaný problém MFP. Zstl sme potrebu použta crowdng dstance. V budúcej prác by bolo vhodné nad týmto problémom otestovat úplnú mplementácu. Okrem DTLZ7 by sme mohl použt aj ostatné DTZL verze a zstt ako efektívny je náš algortmus na ných problémoch ako MFP. 54

70 8 Testovane a vyhodnotene V tejto kaptole opíšeme testovací dataset a použté metrky na vyhodnocovane. Potom zhrneme parametre algortmu a metodológu testovana. Nakonec opíšeme dosahnuté výsledky a porovnáme ch s ným algortmam. 8.1 Testovací dataset Algortmus sme testoval nad testovacím datasetom od Tompa a spol. [35]. Tento dataset obsahuje sekvence zo štyroch žvočíchov človek, myš, mucha (D. melanogaster) a drožde (S. cerevsae). Využíva databázu TRANSFAC [37], ktorá obsahuje známe motívy spolu s génm, v ktorých sa vyskytujú. Ked že tento dataset slúž na testovane algortmov, ktoré hl adajú nové motívy, autor musel rešt dva problémy. Pr použtí reálnych sekvencí s už známym motívm nkto nepozná úplne rešene, teda č sa v nch nenachádzajú neobjavené motívy. Pr použtí vygenerovaných sekvencí zasa neveme s stotou povedat, č ch generujeme správnym spôsobom. Preto sa autor rozhodl pre každého žvočícha použt tr typy vstupov: skutočné sekvence, vygenerované sekvence s vloženým motívm, náhodne zvolené sekvence s vloženým motívm. Každý z týchto typov obsahuje 56 vstupov. Každý vstup môže mat od 1 po 35 sekvencí, ktoré môžu mat dĺžku až 3000 nukleotdov. K tomuto datasetu je verejne dostupný testovač 16, ktorý vyžaduje aby bol výstupom algortmu zoznam ret azcov nukleotdov spolu s ch pozícam v DNA sekvencách. Taktež je možné ment parametre algortmu v závslostí od vstupu

71 8.2 Použté metrky Použtý testovač ohodnocoval výsledky vacerým metrkam na úrovn nukleotdov ako aj motívov. Pr nukleotdoch sledoval presné počty pozící, v ktorých sa nukleotdy nachádzal na pozícach známych motívov. Na úrovní motívov akceptoval ret azec ak prekrýval známy motív. Testovač vracal celkové počty nájdených motívov resp. metrky ako skutočné a falošné poztíva (TP/FP) alebo skutočné a falošné negatíva (TN/FN) na úrovn motívov aj nukleotdov. Z týchto metrík potom poskytoval: senztvtu Sn = nukleotdov, T P, známe aj ako recall, na úrovn motívov aj T P +F N precíznost P P V = T P, známe aj ako postve predctve value (ppv), T P +F P na úrovn motívov aj nukleotdov. Okrem toho uvádzajú aj: špecfckost nsp = nt N nt N+nF P koefcent výkonu np C = korelačný koefcent na úrovní nukleotdov, nt P nt P +nf N+nF P na úrovní nukleotdov, ncc = nt P nt N nf N nf P ((nt P + nf N)(nT N + nf P )(nt P + nf P )(nt N + nf N)) známy aj ako matthews correlaton coeffcent na úrovn nukleotdov, premerný výkon motívov sasp = ssn+sp P V 2 na úrovn motívov. Z týchto metrík sme pr testovaní sledoval najvac senztvtu a precíznost. 56

72 8.3 Parametre algortmu V našom algortme sa dá nastavovat vacero parametrov. Rozdell sme ch preto do dvoch skupín podl a toho, č ch používa vyhl adávací algortmus (MOABC) alebo č ovplyvňujú optmalzačný problém (MFP). Parametre uvádzame s ch kl účom, ktorý používame v konfgurácách a popsom. Parametre pre MOABC: :coef-c koefcent prt ahovana (Ψ) v rovnc pohybu včel (rovnca 12), :populaton-count celkový počet včel, :sze vektor pomerov typov včel. [ ] by zodpovedalo 50% pracovníček, 40% przeračov a 10% preskumníčok, :num-of-teratons počet terác MOABC, :share-prob pravdepodobnost, s akou ostrov zdel a jedncov, :take-prob pravdepodobnost, s akou ostrov príma jedncov, :pareto-epslon hodnota ɛ v ɛ-domnanc (kaptola 3.2.1), Parametre pre MFP: :support-coeff percentuálny podel nukleotdov, ktorý musí mat motív spoločný s konsenzom, aby sa s ním rátalo pr podpore motívu počas ohodnocovana včely, :mn-length mnmálna dĺžka motívu, :max-length maxmálna dĺžka motívu, :mn-obj mnmálny počet ohodnocovacích funkcí, ktoré musí ostrov optmalzovat. 57

73 V kaptole č. 6 sme opísal ako každý ostrov ohodnocuje nú podmnožnu ohodnocovacích funkcí. Rozhodl sme sa parametrzovat teto podmnožny obmezdením ch mnmálnej vel kost. Ak je :mn-obj rovný počtu ohodnocovacích funkcí, použjeme fxný počet ostrovov, ktoré optmalzujú všetky ohodnocovace funkce 17. Okrem vyšše uvedených parametrov je potrebné nastavt aj metódu postprocessngu opísaného v kaptole č Metodológa testovana Algortmus sme musel testovat vackrát z dôvodu nastavovana parametrov. Začal sme so základným parametram pre MFP takým aké bol defnované v MOABC. K nm sme menl hodnoty vyhl adávaceho algortmu. Začal sme pr malých populácách (50 jedncov) a nízkom počte terácí (20). Potom sme postupne zvyšoval počet terácí až po 300 a vel kost populáce až po 150. Najlepše výsledky sme dosahl pr nízkych počtoch populác a aj terácí. Potom sme menl konfgurácu MFP prčom sme ju skúšal s rôznym MOABC konfgurácam. Z týchto testov vyplynula aj potreba doplnt postprocessng (kaptola č. 7.7). Preto sme ten testoval už ba nad nekol kým najlepším dvojcam konfgurácí MFP a MOABC. Nakonec sme menl hodnotu :pareto-epslon pr najlepšej konfgurác. Dokopy sme vykonal vac ako 70 testov, prčom sme nektoré konfguráce opakoval, aby sme zstl ako stablné sú výsledky. Te sa pre jednu konfgurácu menl v rozsahu ±1%. Dĺžka testovana závsí od konfguráce. Pre jeden vstup môže hl adane motívov trvat od nekol ko sekúnd až po nekol ko mnút, ak máme vel ké množstvo terácí a vel ké populáce. Vstupov je zhruba 160 a pre všetky trvá test od nekol ko mnút až po nekol ko hodín. 17 Testoval sme s 8 ostrovm. 58

74 8.5 Výsledky testov a porovnane V tabul ke č. 2 uvádzame nastavena algortmu, pr ktorých sme dosahl najlepše výsledky 18. Pr týchto nastavenach sme používal postproces :only-pareto-n, teda extrakcu motívov pomocou konsenzu. Tabul ka 2: Parametre vyhl adávana. MOABC MFP parameter hodnota parameter hodnota :coef-c 0.5 :support-coeff 0.5 :populaton-count 60 :mn-length 15 :sze [ ] :max-length 64 :num-of-teratons 20 :mn-obj 4 :share-prob 0.3 :take-prob 0.3 :pareto-epslon 0.1 V tabul ke 3 uvádzame nam dosahnuté výsledky. Úplné výsledky ostatných algortmov uvádzame v prílohe E. Tabul ka 3: Dosahnuté výsledky. Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total Pr našch testoch sme najvac sledoval senztvtu a precíznost na úrovní motívov cez všetky žvočíchy. Pracoval sme aj s myšlenkou použta rôznych nastavení pre rôzne vstupy, ale nepodarlo sa nám nájst konfguráce, ktoré by mal stále lepše výsledky ba pre nektoré druhy. Pr porovnávaní s ným algortmam sme sledoval rovnaké metrky. Najlepším algortmom bol Weeder, ktorý dosahol senztvtu 16,1% a precíznost 28,9%. Najhorším bol QuckScore s 3,3% resp. 1,9%. My sme dosahl senztvtu 16,6% a precíznost 8,4% k čomu je najblžše algortmus ANN-Spec s 15,5% a 8,5%. 18 Výsledky takmer všetkých testov sú dostupné na elektronckom médu. 59

75 Pr porovnávaní výsledkov v rámc jednotlvých žvočíchov treba vyzdvhnút naše výsledky pre sekvence z DNA muchy, kde sme dosahl senztvtu 17% a precíznost 6,4%. Dosahl sme najlepší výsledok, prčom Weeder mal senztvtu 2% a precíznost 3,4% a ANN-Spec 2% a 0,9%. V metrke nsn, čo je senztvta na úrovní motívov, sme dosahl 14,7%, čo je tež najlepší výsledok. Treba ale spomenút, že sme mal pomerne nízku precíznost, resp. vysoký počet falošných poztív. Ak sa pozreme na celkové hodnoty nájdených motívov, skutočných poztív (TP) sme mal 251 a falošných poztív (FP) Weeder mal TP rovné 84 a FP 207. ANN-Spec mal TP 81 a FP 874. Na to, aby sme znížl počet falošných poztív, sme sa ch snažl dodatočne odfltrovat. Náš najlepší výsledok sme dosahl, ked sme vracal motívy z 20 najlepších včel po spojení všetkých populácí. Z postprocesov v kaptole ba :nstace-flter dosahoval porovnatel né no trocha horše výsledky ako bez fltrovana. Ostatné fltre sa nám nepodarlo nastavt tak, aby nezahadzoval prílš vel a motívov. Sledoval sme aj vplyv paralelzáce, kde sme obmedzoval komunkácu medz ostrovm. Skúšal sme aj pravdepodobnost výmeny 0,1 a 0,5. Pr 0,3 sme dosahl najlepší výsledok. Pr uvol ňovaní ohodnocovacích funkcí sme dosahl najlepší výsledok ked 8 ostrovov optmalzovalo všetky ohodnocovace funkce. Porovnatel ný výsledok sme dosahl, ak sme uvol ňoval ba jednu funkcu. Prekvapvé bolo nastavene :pareto-epslon, ktoré sme opísal v kaptole Jeho zvýšene z 0 na 0,1 zlepšlo výsledok. 60

76 9 Záver V tejto prác sme sa venoval problému hl adana motívov. Pozeral sme sa na neho ako na problém optmalzáce a rešl sme ho pomocou metaheurstík. Navrhl asynchrónne paralelné vyhl adávane kombnácou nekol kých exstujúcch rešení. Na najnžšej úrovní sme použl sekvenčnú metaheurstku MOABC [17], ktorú sme rozšírl o entropu pr vyhodnocovaní jedncov a o použte g-best člena z [40] pr ch pohybe po doménovom prestore. Musel sme rešt problém náhodného výberu, ktorý sme vyrešl ohodnotením v kaptole Na paralelzácu sme použl model asynchrónnych ostrovov. Ostrovy s jednce nezačleňoval do populáce, ale preberal ch ba ako g-best člena. Jednotlvé ostrovy na seba vplýval len nepramo. Ako metódu komunkáce sme navrhl spôsob, kde to, č s ostrovy vymena jedncov, nezávsí pramo od topológe, ale skôr od času vyhl adávana a vzdaleností medz ostrovm. Na túto komunkácu sme použl zdel anú pamät. Expermentoval sme s myšlenkou špecalzovaných ostrovov, kde každý ostrov ohodnocuje nú podmnožnu ohodnocovacích funkcí, ktorých sme mal štyr. Pr probléme MFP takéto vypúšt ane ohodnocovacích funkcí ale neprneslo zlepšene výsledkov. Prebežné výsledky ukázal na potrebu dodatočného ohodnotena nájdených motívov s cel om ch prefltrovat. Iplementoval sme preto vacero ohodnotení, ktoré sme opísal v kaptole 7.7. Ohodnotena bol založené na algortme Weeder [31]. Okrem nch sme navrhl a mplementoval aj naše vederkové ohodnotene. Výsledky ukázal, že metaheurstcké algortmy dávaju porovnatel né výsledky voč ostatným algortmom. Problémom stále ostáva vysoký počet falošných poztív. Výsledkom pomohlo použte ɛ-domnance. Algortmus sme mplementoval takým spôsobom, že je možné modulárne vymeňat problém alebo metaheurstku ostrova. Preto sme predbežné testy robl aj na probléme DTLZ7 [10]. 61

77 9.1 Budúca práca Pr pohl ade na našu dplomovú prácu ako na metaheurstku by sa dalo v budúcnost vylepšt vacero vecí. Zmeny je možné urobt takmer na všetkých úrovnach. Vaceré práce pr paralelnom vyhl adávaní využíval rôzne metaheurstky, aby sa mohl dopĺňat. My sme mplementoval ba MOABC. Preskúmat by sa dal aj vplyv topológe na naše vyhl adávane. V našej prác sme umestňoval ostrovy do pevne stanovenej mrežky. Okrem toho by sa dala upravt aj selekca jedncov pr výbere tej včely, ktorú chceme akceptovat z poskytovaného paretového radu. Algortmus by bolo vhodné vyskúšat aj na ných problémoch ako je MFP, napríklad na problémoch z tredy DTLZ7. Pr pohl ade na problém hl adana motívov by bolo vhodné doplnt lepše fltrovane výsledkov. Navyše, vo vel a prípadoch (ohodnocovane, postprocessng) sa využíva na výpočet chybovost Hammngová vzdalenost. Kedže DNA sekvence nepodlehajú ba substtúc, vyskúšat by sa dal aj né vzdalenost, napríklad Levenshtenova. 62

78 Lteratúra [1] AL MOUBAYED, N. PETROVSKI, A. MCCALL, J. A novel smart mult-objectve partcle swarm optmsaton usng decomposton. In Parallel Problem Solvng from Nature, PPSN XI. Sprnger, s [2] ASHLOCK, D. Evolutonary computaton for modelng and optmzaton. Sprnger Scence & Busness Meda, [3] BAILEY, T. L. ELKAN, C. The value of pror knowledge n dscoverng motfs wth MEME. In Ismb, 3, s , [4] BALLING, R. WILSON, S. The max-mn ftness functon for mult-objectve evolutonary computaton: Applcaton to cty plannng. In Proceedngs of the Genetc and Evolutonary Computaton Conference (GECCO 2001), s Cteseer, [5] BLUM, C. ROLI, A. Metaheurstcs n combnatoral optmzaton: Overvew and conceptual comparson. ACM Computng Surveys (CSUR). 2003, 35, 3, s [6] ČERNỲ, V. Thermodynamcal approach to the travelng salesman problem: An effcent smulaton algorthm. Journal of optmzaton theory and applcatons. 1985, 45, 1, s [7] CRAINIC, H. T. N. Parallel meta-heurstcs applcatons. Alba, E. (ed.) Parallel Metaheurstcs: A New Class of Algorthms. 2005, s [8] DAS, M. K. DAI, H.-K. A survey of DNA motf fndng algorthms. BMC bonformatcs. 2007, 8, Suppl 7, s. S21. [9] DEB, K. et al. A fast and eltst multobjectve genetc algorthm: NSGA-II. Evolutonary Computaton, IEEE Transactons on. 2002, 6, 2, s [10] DEB, K. et al. Scalable test problems for evolutonary multobjectve optmzaton. Sprnger,

79 [11] D HAESELEER, P. What are DNA sequence motfs? Nature botechnology. 2006, 24, 4, s [12] DORIGO, M. MANIEZZO, V. COLORNI, A. The Ant System: Optmzaton by a colony of cooperatng agents. IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS-PART B. 1996, 26, 1, s [13] DURILLO, J. J. NEBRO, A. J. jmetal: A Java framework for mult-objectve optmzaton. Advances n Engneerng Software. 2011, 42, s ISSN do: DOI: /j.advengsoft Dostupné z: < artcle/p/s >. [14] FREDKIN, E. Tre memory. Communcatons of the ACM. 1960, 3, 9, s [15] GENDREAU, M. POTVIN, J.-Y. Handbook of metaheurstcs. 2. Sprnger, [16] GONZÁLEZ-ÁLVAREZ, D. L. et al. Usng a Parallel Team of Multobjectve Evolutonary Algorthms to Solve the Motf Dscovery Problem. In DCAI, s Sprnger, [17] GONZÁLEZ-ÁLVAREZ, D. L. et al. Fndng motfs n DNA sequences applyng a multobjectve artfcal bee colony (MOABC) algorthm. In Evolutonary Computaton, Machne Learnng and Data Mnng n Bonformatcs. Sprnger, s [18] HERTZ, G. Z. STORMO, G. D. Identfyng DNA and proten patterns wth statstcally sgnfcant algnments of multple sequences. Bonformatcs. 1999, 15, 7, s [19] KARABOGA, D. Artfcal bee colony algorthm. scholarpeda. 2010, 5, 3, s [20] KARGER, D J Advanced Algorthms, Fall

80 electrcal-engneerng-and-computer-scence/ 6-854j-advanced-algorthms-fall-2005, [Navštívené ]. [21] KAYA, M. MOGAMOD: Mult-objectve genetc algorthm for motf dscovery. Expert Systems wth Applcatons. 2009, 36, 2, s [22] KIRKPATRICK, S. VECCHI, M. P. OTHERS. Optmzaton by smmulated annealng. scence. 1983, 220, 4598, s [23] KRISHNANAND, K. N. GHOSE, D. Glowworm Swarm Optmsaton: a New Method for Optmsng Mult-Modal Functons. Int. J. Comput. Intell. Stud. May 2009, 1, 1, s ISSN do: /IJCISTUDIES Dostupné z: <http: //dx.do.org/ /ijcistudies >. [24] LAUMANNS, M. et al. Combnng convergence and dversty n evolutonary multobjectve optmzaton. Evolutonary computaton. 2002, 10, 3, s [25] LAUMANNS, M. et al. Archvng Wth Guaranteed Convergence And Dversty In Mult-objectve Optmzaton. In GECCO, s , [26] LONES, M. Sean Luke: Essentals of metaheurstcs. Genetc Programmng and Evolvable Machnes. 2011, 12, 3, s [27] MÄRTENS, M. IZZO, D. The asynchronous sland model and NSGA-II: study of a new mgraton operator and ts performance. In Proceedngs of the 15th annual conference on Genetc and evolutonary computaton, s ACM, [28] MARTIN, W. LIENIG, J. COHOON, J. P. C6. 3 Island (mgraton) models: evolutonary algorthms based on punctuated equlbra. B ack et al. BFM97], Seten C. 6. [29] MENCHACA-MENDEZ, A. COELLO, C. A. C. Selecton mechansms based on the maxmn ftness functon to solve mult-objectve optmzaton problems. Informaton Scences. 2016, 332, s

81 [30] NIELSEN, S. S. et al. Novel effcent asynchronous cooperatve co-evolutonary mult-objectve algorthms. In Evolutonary Computaton (CEC), 2012 IEEE Congress on, s IEEE, [31] PAVESI, G. MAURI, G. PESOLE, G. An algorthm for fndng sgnals of unknown length n DNA sequences. Bonformatcs. 2001, 17 Suppl 1, s. S ISSN do: /bonformatcs/17.suppl 1.S207. Dostupné z: < ncb.nlm.nh.gov/entrez/query.fcg?cmd=retreve& db=pubmed&dopt=ctaton&lst_uds= >. [32] PAVESI, G. Competton Results of Weeder. 2004, s Dostupné z: < parameters/weeder.pdf>. [33] RUCIŃSKI, M. IZZO, D. BISCANI, F. On the mpact of the mgraton topology on the Island Model. Parallel Computng. 2010, 36, 10-11, s ISSN do: /j.parco [34] SCHNEIDER, T. D. STEPHENS, R. M. Sequence logos: a new way to dsplay consensus sequences. Nuclec acds research. 1990, 18, 20, s [35] TOMPA, M. et al. Assessng computatonal tools for the dscovery of transcrpton factor bndng stes. Nature botechnology. 2005, 23, 1, s [36] WEINER, P. Lnear pattern matchng algorthms. In Swtchng and Automata Theory, SWAT 08. IEEE Conference Record of 14th Annual Symposum on, s IEEE, [37] WINGENDER, E. et al. TRANSFAC: A Database on Transcrpton Factors and Ther DNA Bndng Stes. Nuclec Acds Research. January 1996, 24, 1, s ISSN do: /nar/ Dostupné z: < 66

82 [38] XIAO, N. ARMSTRONG, M. P. A specalzed sland model and ts applcaton n multobjectve optmzaton. In Genetc and Evolutonary Computaton Conference, s Sprnger, [39] YANG, X.-S. KARAMANOGLU, M. HE, X. Mult-objectve flower algorthm for optmzaton. Proceda Computer Scence. 2013, 18, s [40] ZHU, G. KWONG, S. Gbest-guded artfcal bee colony algorthm for numercal functon optmzaton. Appled Mathematcs and Computaton. 2010, 217, 7, s

83

84 A Elektroncké médum Obsah CD prloženého k dokumentu: /dokument Dplomová Práca spolu s anotácam v slovenskom a anglckom jazyku /dokument/latex súbory projektu v L A TEX /source zdrojové kódy /source/outputs/results výstupy aplkáce, tj. výsledky jednotlvých testov + poznámky /source/target/ spusttel né jar súbory /source/target/coverage pokryte kódu testam vo formáte HTML /source/target/doc vygenerovaná dokumentáca vo formáte HTML /test data/ testovace vstupy readme.txt pops obsahu CD A-1

85

86 B Plán práce Na tento semester sme mal plán práce v nasledujúcom znení: V nasledujúcom semestr by sme chcel čím skôr domplementovat chýbajúcu funkconaltu. Následne na základe výsledkov testov a d alšeho výskumu teratívne upravovat rešene tak, aby dosahlo čo najlepše výsledky. Tabul ka B.1: Plán práce Týždeň Plán 1. Implementáca Crowdng-Dstance a/alebo Maxmn Implementáca mechanzmov na komunkácu medz ostrovm Implementáca problému hl adana motívov DNA spolu s testovačom 7. - Testovane, nastavovane parametrov a písane DP Pr plnení tohto plánu sme nedodržaval postupnost mplementáce, kedže sme začal problémom hl adana motívov. Následne sme mplementoval crowdng dstance a komunkáce. Nakonec sme mplementoval testovač. Z výsledkov prebežných testov vyplynula potreba mplementovat postprocesng. Teda ku koncu semestra sme testoval a mplementoval rôzne verze fltrovana výsledkov. B-1

87

88 C Používatel ská príručka Dplomová práca bola mplementovaná ako konzolová aplkáca. Pre jej spustene je potrebné mat nanštalovanú Javu vo verz 8 a prístup k nternetu, aby mohla vyhodnott výsledky. Aplkáca potrebuje mat parametram nastavené cesty ku vstupom ako aj konfguráce, ktoré ma použt pr vyhl adávaní. Príkaz na spustene môžeme vdet v ukážke C.1. java -jar ft-dp-standalone.jar <parametre> Ukážka C.1: Zapnute vyhl adávana. Aplkáca pracuje s nasledujúcm parametram: -, --nput INPUT-FOLDER (vyžadované) cesta k adresáru so vstupným.fasta súborm. Môže obsahovat podadresáre. -c, --confg CONFIG-FOLDER (vyžadované) cesta k adresáru s konfgurácam vo formáte.edn. -s, --search SEARCH-SYMBOL (vyžadované) meno konfguráce vyhl adávana. -p, --problem PROBLEM-SYMBOL (vyžadované) meno konfguráce problému. -o, --postprocess POSTPROCESS-SYMBOL meno postprocesu (kaptola č ). -f Fltrovane výsledkov na základe ohodnotena. -n, --notes NOTE-STRING poznámka k vyhl adávanu. -h, --help vypíše HELP. Po ukončení vyhl adávana aplkáca v adresár./results/ vytvorí nový adresár s výsledkam. Tento novovytvorený adresár bude mat meno vo formáte: -<search>-<problem>-<note>-<tme> C-1

89 kde: <search> je meno konfguráce vyhl adávana, <problem> je meno konfguráce problému, <note> je poznámka, ak bola špecfkovaná parametrom, a <tme> čas kedy sa ukončlo vyhl adávane. Tento adresár bude obsahovat 3 súbory: confg súbor s nformácam o použtých nastavenach, res.html súbor s výsledným metrkam (kaptola č. 8.2), <results>.fasta súbor vo formáte f asta s nájdeným motívm. Meno tohto súboru je podobné ako meno adresára. Program počas vyhl adávana nformuje o svojom prebehu výpsm do konzoly. C.1 Konfguráce Medz vstupné parametre aplkáce patra konfguračné súbory a symboly pre vyhl adávane a problém. Aplkáca funguje tak, že prečíta všetky konfguráce z adresára a spojí ch. Preto konfguráce pre vyhl adávane musa byt v súbore na ceste :search :algorthm <meno konfgurace> a konfguráce problému na ceste :search :problem <meno konfgurace>. Teto súbory sú vo formáte edn. V ukážke č. C.2 uvádzame príklad konfguračného súboru, ktorý obsahuje konfgurácu pre vyhl adávane s menom moabc. Väčšna parametrov je opísaná v kaptole č Okrem nch sa v týchto parametroch nachádzajú ale aj kl úče :ns a :search-fn. Te slúža na špecfkovane balíka s vyhl adávacím algortmom, resp. na špecfkovane ncalzačnej funkce. V ukážke č. C.3 uvádzame príklad konfguračného súboru, ktorý obsahuje konfgurácu pre problém s menom mf p. Ten podobne ako konfguráca vyhl adávana obsahuje kl úče :ns a :problem-fn. C-2

90 {:search {:algorthm {:moabc { :ns ft-dp-pmsoa.search.moo.moabc :coef-c 1.5 :sze [ ] :search-fn search :populaton-count 50 :num-of-teratons 20 :share-prob 0.5 :take-prob 0.5}}}} Ukážka C.2: Príklad konfguráce zo súboru moabc.edn. {:search {:problem {:mfp { :ns ft-dp-pmsoa.search.problem.mfp :support-coeff 0.5 ;; mnmal same nucleotdes 50% :problem-fn problem :mn-length 6 :max-length 64 :mn-obj 1}}}} Ukážka C.3: Príklad konfguráce zo súboru mfp.edn. Teto konfguráce sú rozdelené do dvoch súborov ba kvôl prehl adnost. Súbor môže obsahov l ubovol né množstvo konfgurácí. Pr spúštaní algortmu je ba potrebné špecfkovat meno konfguráce vyhl adávana a problému (v tomto prípade moabc a mfp). C-3

91

92 D Techncká dokumentáca Program bol mplementovaný v programovacom jazyku Clojure 19 vo verz alpha10, ktorý využíva Java JVM. Na komplovane a správu závslostí využívame nástroj Lenngen 20. D.1 Lenngen V tejto kaptole uvádzame základne príkazy na prácu s projektom. Všetky treba volat v adresár so zdrojovým súborm. Pre spustene aplkáce: len run -- <args> Ukážka D.1: Zapnute vyhl adávana pomocou lenngen. Pre nanštalovane závslostí: len deps Ukážka D.2: Inštalovane závslostí. Spustene testov: len test Ukážka D.3: Spustene testov D-1

93 Spustene pokryta testam 21 : len cloverage Ukážka D.4: Pokryte testam. Vygenerovane dokumentáce 22 : len codox Ukážka D.5: Generovane dokumentáce. D.2 Základný prehl ad balíkov V tejto čast uvádzame hlavné balíky spolu s ch popsom. Vygenerovaná dokumentáca k funkcám v balíkoch sa dá nájst na elektronckom médu. Hlavné balíky 23 : cl.man funkconalta spojená s CLI. parallel-search.* balíky, ktoré sa starajú o zdel anú pamät a mgráce. Okrem toho obsahujú funkce slúžace na beh vyhl adávana ostrova vo vlákne. postprocess.* obsahuje funkconaltu postprocesu opísanú v kaptole č search.sland obsahuje defnícu štruktúry ostrova. search.soluton obsahuje defnícu štruktúry rešena. search.moo.* balíky metaheurstík. Obsahuje balík moabc na vyhl adávane včelam. search.problem.* balíky problémov. Obsahuje problémy dtlz7 a mfp. 21 Treba mat nanštalované rozšírene len-cloverage 22 Treba mat nanštalované rozšírene len-codox 23 Všetky majú prefx projektu, teda ft-dp-pmsoa. D-2

94 parallel-search funkconalta vytvárana ostrovov a spúšt ane paralelného vyhl adávana a volane postprocesov. test.test-runner spúšt ane vyhl adávaní na základe men konfgurác, vyhodnotene a ukladane výsledkov. D.3 Problém Ostrov sa pozerá na problém ako na štruktúru, ktorá mu poskytuje funkce a dáta. Takáto štruktúra je znázornená v ukážke D.6. {:s-vald? s-vald-fn :evaluate evaluate-fn :generate generate-fn :objectves objectves} Ukážka D.6: Štruktúra problému. Na vytvorene nového problému je treba zadefnovat tr funkce: s-vald-fn má za parameter jednca a vrát true alebo false podl a toho, č je valdný, evaluate-fn má za parameter jednca, ktorého ohodnotí, generate-fn vytvorí nového, valdného jednca. Okrem toho obsahuje aj objectves, čo sú kl úče, podl a ktorých sa dá prstupovat k ohodnotenu jednca. Blžše sme teto funkce opísal v kaptole č V konfgurác treba potom špecfkovat meno balíka, kde sa nachádza tento problém a meno funkce, ktorá nám vrát vyšše opísanú štruktúru. Táto funkca bude zavolaná s konfgurácou problému ako parametrom a slúž na ncalzácu celého problému. D.4 Vyhl adávaca metaheurstka Tak ako pr probléme, aj na vyhl adávacu metaheurstku sa ostrov pozerá ako na dátovú štruktúru. V ukážke D.7 uvádzame príklad takejto štruktúry. D-3

95 {:terate do-terate :generate-populaton generate-populaton :nt nt-sland} Ukážka D.7: Štruktúra problému. Funkca do-terate má za parameter ostrov a vykoná jednu terácu metaheurstky. Funkca generate-populaton má ako parameter objekt problému a počet jedncov. nt-sland bere ako argument ostrov a slúž na jeho ncalzácu z pohl adu metaheurstky. Blžše sú teto funkce opísané v kaptole V konfgurác treba opät uvest meno balíka, kde sa nachádza táto metaheurstka a meno funkce, ktorá nám vrát vyšše opísanú štruktúru. Takýto ops štruktúr pre problém a vyhl adávane by mohol byt v OOP paradgme analogcký k rozhranam alebo abstraktným objektom. D.5 Spustene vyhl adávana Na to aby sme vedel spustt vyhl adávane, potrebujeme najprv vyžadat balíky ft-dp-pmsoa.test.test-runner a ft-dp-pmsoa.core. Potom treba nastavt príslušné cesty k vstupom, konfgurácam a výstupom. Následne je potrebné zavolat funkcu run-test! z balíka ft-dp-pmsoa.test.test-runner. Táto funkca má za parametre symboly pre konfguráce vyhl adávana a problému; potom symbol, ktorý určuje typ postprocesu; boolean, ktorý zodpovedá fltrovanu na základe ohodnotena a na konec číslo behu a voltel né poznámky. Celý postup je možno vdet v ukážke D.8. D-4

96 (requre [ft-dp-pmsoa.test.test-runner :as tr] [ft-dp-pmsoa.core :as core]) ;; nastavene cest (alter-var-root # tr/*seq-path* (constantly./nput/ )) (alter-var-root # core/*confg-path* (constantly./cfgs/ )) (alter-var-root # tr/*res-path* (constantly./results/ )) ;; spustene vyhladavana ;; prva konfguraca (tr/run-test! :moabc :mfp2-4obj :nstance-out false 1) ;; druha konfguraca (tr/run-test! :moabc :mfp3-4obj :nstance-out false 1) Ukážka D.8: Spustene vyhl adávana v Clojure. D-5

97

98 E Výsledky ostatných algortmov V tejto prílohe uvádzame výsledky, ktoré dosahl ostatné algortmy nad rovnakým datasetom ako my. Teto výsledky sú dostupné na stránke datasetu 24. Tabul ka E.1: YMF. Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total Tabul ka E.2: Weeder. Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total Tabul ka E.3: SeSMCMC Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total Tabul ka E.4: QuckScore Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total result.html E-1

99 Tabul ka E.5: Olgodyad-Analyss Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total Tabul ka E.6: MITRA Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total Tabul ka E.7: MEME Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total Tabul ka E.8: Improbzer Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total NaN Tabul ka E.9: GLAM Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total NaN Tabul ka E.10: Consensus Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human NaN NaN NaN NaN Mouse Yeast Total E-2

100 Tabul ka E.11: ANN-Spec Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total NaN Tabul ka E.12: AlgnACE Data set ntp nfp nfn ntn stp sfp sfn nsn nppv nsp npc ncc ssn sppv sasp Fly Human Mouse Yeast Total E-3

101

102 F Článok na IIT.SRC 2017 Na nasledujúcch stranách uvádzame článok na IIT.SRC 2017 spolu s prezentovaným posterom. F-1

103 Motf Fndng In DNA Sequences Róbert CUPRIK Slovak Unversty of Technology n Bratslava Faculty of Informatcs and Informaton Technologes Ilkovčova 2, Bratslava, Slovaka robertcuprk@hotmal.sk Abstract. Motf fndng n DNA sequences s a problem that s currently ntensvely studed n bonformatcs. The problem s to locate short nucleotde sequences called motfs. These sequences are mportant as they among other functons ndcate bndng stes used for transcrpton. We approach ths problem as a problem of optmzaton where the goal s to optmze a set of gven objectve functons whle satsfyng constrants. Our approach s based on usng metaheurstcs. In ths paper, we descrbe a parallel cooperatve algorthm that manages cooperaton of multple sequental metaheurstcs smlar to the sland model known n evolutonary computaton. 1 Introducton Motfs are short sequences n DNA also called bndng stes [5]. Ths parts precede other parts of DNA that are used by ndvdual to produce protens. Therefore knowledge of ther poston helps scentsts to better understand DNA. Search for these motfs s complcated as the only thng we know s that they tend to repeat between genes. Ths s further complcated by the fact that motfs suffer from mutatons such as nucleotde substtuton [2]. Ths problem can be vewed as a problem of optmsaton. For ths category of problems metaheurstc algorthms can be used. Metaheurstcs especally bo-nspred algorthms are versatle as they can solve varous problems from DNA assembly problem n [1] or story trackng n [13] to nterplanetary trajectory desgn n [9]. In ths paper we descrbe one approach to ths problem. We combne known metaheurstc MOABC [6] wth parallelzaton usng Specalzed Island Model [16]. We also experment wth usng g-best from [17] as means of ndvdual assmlaton. As topology n mgraton we propose usage of neghbourhoods. Ths paper s structured as follows. In secton 1.1 we descrbe Motf Fndng Problem (MFP) as a problem of optmzaton. In secton 1.2 we specfy soluton defnton as well as objectves beng optmzed. In sectons 2 and 3 we descrbe sequental metaheurstc that s used n slands. Sectons 4 and 5 are dedcated to Island model and mgraton. In secton 6 and 7 are evaluaton and conclusons. 1.1 Motf Fndng Problem Motf fndng problem s n [8] defned as multple sequence local algnment problem, where task s to detect overrepresented motfs n multple sequences [2]. If objectve functons are gven, such problem can be solved as a problem of optmzaton descrbed mathematcally [8] for M objectves as : Mnmzef(x) = [f (x), = 1,..., M] (1) satsfyng constrants: g j(x) 0 k = 1, 2,...J (2) h (x) = 0 j = 1, 2,...K (3) In MOABC [6] followng objectves to optmze were used: maxmze length of the motf, maxmze smlarty, maxmze support subjected to followng constrants: mnmal support, mnmal complexty, motf length n range [6, 64] 1.2 Soluton evaluaton Soluton that s subject to optmzaton s defned as vector of decson varables where the frst varable Master study programme n feld: Informaton Systems Supervsor: Professor Pavol Návrat, Insttute of Informatcs, Informaton Systems and Software Engneerng, Faculty of Informatcs and Informaton Technologes STU n Bratslava F-2 IIT.SRC 2017, Bratslava, Aprl 27, 2017, pp. 1 8.

104 2 To Be Added by Edtor represents motf length and followng varables specfy motf poston n each nput sequence. Motfs on these postons n each sequence are called canddate motfs. From ths motfs consensus motf s computed as a sequence of most domnant nucleotdes at each poston. Only canddate motfs that have at least 50% of nucleotdes same as consensus motf are consdered as a part of the fnal motf. Ths s optmzed usng support objectve whch s drectly relatve to the amount of canddate motfs used n fnal motf. Poston Frequency Matrx (PFM) s then computed from consdered canddate motfs as a matrx of frequences of nucleotdes (A,C,T,G) at each poston. Example of such PFM can be seen n Table 1. Table 1. Part of PFM for motf YJL056C n ZAP1 gene 1. A T G C Ths PFM s subsequently used n computaton of other objectves. In equaton 4 smlarty s computed, where f(b, ) s frequency of nucleotde b {A, T, G, C} on -th poston and l s length of the motf. Smlarty = l =1 max bf(b, ) l (4) Complexty objectve s descrbed n equaton 5. n s number of nucleotdes {A, C, G, T } n a fnal motf sequence. Complexty = log N l! (n)! (5) We use entropy (equaton 6) as an addton to objectve functons used n MOABC. Entropy s smlar to smlarty, but uses whole dstrbuton of frequences for gven poston not only the most domnant nucleotde. Entropy = l =1 b f(b, ) log 2(f(b, )) l (6) 2 Gbest-guded ABC Artfcal Bee Colony (ABC) [7] s bo-nspred algorthm utlzng concepts of Swarm Intellgence (SI) based on foragng behavour of honey bees. In ABC there are three groups of bees employed bees, onlooker bees and scouts. Employed bees locate food source, fly back to hve and then dance to share nformaton about the found food source wth other bees. Tme spent on dancng reflects the amount of nectar found. In ABC food source represents one soluton to doman problem and amount of nectar s correspondng to ts ftness. Movement of employed bee s performed usng equaton 7. v j = x j + φ j(x j x kj ) (7) Current poston of bee (poston of food source) s represented by vector of decson varables. In equaton 7 x represents poston of bee. x j s value of j-th decson varable of -th bee. New poston of employed bee v s computed usng ts prevous poston x and random other bee poston x k. φ j s random number n range [ 1, 1]. In Gbest-guded ABC [17] was ths equaton extended usng global best bee (g-best) whch s the best bee that was found n prevous teratons. In equaton 8 s g-best represented by vector y. Ψ j s random number between [0, C]. v j = x j + φ j(x j x kj ) + Ψ j(y j x j) (8) Ths extenson was proposed to mprove explotaton of ABC. We use g-best term as means of nfluence between dfferent slands and ther respectve populatons. Onlooker bees watch employed bees dancng and then choose whch food source to vst. In ABC onlooker bees use same movement equaton as worker bees. Dfference s n bee x whch s chosen from worker bees wth probablty based on ts ftness. Scount bees search randomly for new solutons and mprove exploraton. Each of these groups has ts respectve phase n ABC employed bees phase, onlookers phase and scouts phase. In teraton process these phases alternate untl endng crteron s met e.g. maxmal number of teratons s reached. 3 MOABC Mult-objectve Artfcal Bee Colony (MOABC) [6] s mult-objectve optmzaton algorthm based on ABC. As ABC was desgned to solve sngle objectve optmzaton problems, MOABC was proposed to solve mult-objectve Motf Fndng Problem. Indvduals n mult-objectve space are evaluated by more than one objectve functon. Therefore fnal soluton s not only one ndvdual but multple F-3

105 Róbert Cuprk: Motf Fndng In DNA Sequences 3 ndvduals that make up group of pareto optmal solutons called pareto front. Solutons belong to pareto front f they are not domnated by any other soluton. Soluton x t s sad to domnate soluton y f for every objectve functon f, f (x) s better or equal than f (y) and there exsts at least one for whch f (x) s strctly better than f (y). In MOABC populaton s represented as a vector of bees where bee poston n vector depends on ts ftness. Better solutons present at start of the vector are followed by worse ones. Vector s then splt nto three parts. Frst N e postons represent employed bees, second N o onlooker bees and fnal N s scout bees. N e + N o + N s = N, where N s number of bees n populaton. Smple comparson s not suffcent to sort bees n ths vector. MOABC uses non-domnated sort and crowdng dstance from NSGA-II [3]. Non-domnated sort s based on domnance descrbed above. In ths sort multple ranked fronts are created. Frst front contans pareto optmal solutons that are not domnated by any other soluton. Second front contans solutons that are only domnated by solutons n frst front. Thrd contans solutons that are domnated by solutons from second and so on. Membershp n ranked fronts ts not enough to get precse poston n populaton vector. Addtonal metrc to determne dfferences nsde of front s needed. Ths s where crowdng dstance s used as t favours solutons that are not present n dense postons of objectve space, therefore promotng dversfcaton of solutons. In fnal poston vector bees are sorted n a way where at the begnnng are bees that are not domnated and are not present n crowded areas. In MOABC same bee phases as n ABC are followed wth non-domnated sort and crowdng dstance. In our mplementaton we use g-best n movement computaton n addton to orgnal MOABC. 4 Asynchronous Island cooperaton Island model [10] s parallel cooperatve algorthm that works wth sequental Evolutonary Algorthms (EA). Each sland has ts own populaton and usng EA teratvely searches for better solutons. Islands work n parallel for predefned amount of teratons. When ths teratons are fnshed mgraton begns. In mgraton, ndvduals (solutons) are exchanged between slands usng mgraton topology. Sequental EA n parallel and subsequent mgraton make up one teraton of sland called epoch. Epochs repeat for predefned amount of tmes. There are multple exstng topologes [12] such as chans, rngs or hypercubes. We use fully connected topology, but mgraton s not based on connectons between slands but on ther dstances. Island only sees other slands n ts neghbourhood. For each sland I j ts neghbourhood n tme t s defned as N jt = {I k, d(i j, I k ) nd(t) k j}. d(i j, I k ) s dstance between slands I j and I k. nd(t) s a functon of tme that changes neghbourhood sze. As search progresses neghbourhood gets bgger. Island chooses n other slands wth whch t exchanges solutons from ts neghbourhood wth probablty that s based on ther respectve dstances. In our mplementaton we use asynchronous varaton of sland model smlar to those used n [9] and [11]. In these models slands do not wat for each other but merely provde ther solutons for others to retreve asynchronously usng shared memory. Moreover, n our mplementaton assmlaton of ndvdual after mgraton does not conssts of njectng t nto populaton. We use t as a g-best ndvdual for a gven sland. 5 Specalzed Island Model To promote dversfcaton n solutons Specalzed Island Model (SIM) [16] was proposed. In ths model sland optmzes only a subset of objectve functons. Each sland then progresses to dfferent part of global pareto front. We use ths model asynchronously wth topology based on neghbourhood. 6 Evaluaton Tompa et al. [14] created dataset desgned to test and evaluate motf fndng algorthms. As not all real motfs are known, ths dataset uses both real and generated data. It conssts of three types of nput sequences real sequences from TRANSFAC database [15] wth known motfs, Markov chan generated sequences wth planted motfs and randomly selected sequences wth planted motfs. It contans 56 nputs from each group and sequences are from human, mouse, fly and yeast genome. There are also known results from varous other algorthms rangng from exhaustve search to neural network based ones. In Table 2 we can see results obtaned by our algorthm n prelmnary testng compared to other results. MOABC+Islands s our current algorthm and MOABC+Entropy s the best result we acheved n our prevous work. We show true/false postve motfs found (st P/sF P ) and senstvty (ssn) computed as nsn = F-4 nt P nt P +nf N.

106 4 To Be Added by Edtor Table 2. Results obtaned by Tompa et. al. n comparson to our result. algorthm stp sfp ssn MEME GLAM Weeder QuckScore ANN-Spec MOABC+Entropy MOABC+Islands Concluson In ths paper we descrbe parallel cooperatve metaheurstc algorthm that s based on Specalzed Island Model (SIM) wth neghbourhood. Islands use MOABC as ther sequental algorthm used for optmzaton. Our contrbuton s n usage of g-best as a method of assmlaton as well as neghbourhood for mgraton. We apply ths algorthm to a real lfe problem of fndng DNA motfs. We performed prelmnary testng usng benchmark problem DTLZ7 [4]. Results wth sngle sland showed the need for dversfcaton usng crowdng dstance or SIM. Results also showed mprovements n ftness once some of the objectve functons were partally gnored as they would be n SIM. After mplementaton of crowdng dstance we obtaned results for Motf Fndng Problem shown n Table 2. Ths result s currently worse than results obtaned n our prevous work as the amount of false postve motfs s too hgh. We am to mprove ths result by better parametrzaton whch requres more test runs and by tweaks to our algorthm such as result flterng to suppress false postves. Acknowledgement: Ths work was partally supported by the Scentfc Grant Agency of Slovak Republc, grant No. VG 1/0752/14. References [1] BouEzzeddne A., Kasala S., Návrat P.: Applyng the Frefly Approach to the DNA Fragments Assembly Problem. Annales Unv. Sc. Budapest., Sect. Comp. (2014), 2014, vol. 42, pp [2] Das, M.K., Da, H.K.: A survey of DNA motf fndng algorthms. BMC bonformatcs, 2007, vol. 8, no. Suppl 7, p. S21. [3] Deb, K., Pratap, A., Agarwal, S., Meyarvan, T.: A fast and eltst multobjectve genetc algorthm: NSGA- II. Evolutonary Computaton, IEEE Transactons on, 2002, vol. 6, no. 2, pp [4] Deb, K., Thele, L., Laumanns, M., Ztzler, E.: Scalable test problems for evolutonary multobjectve optmzaton. Sprnger, [5] D haeseleer, P.: What are DNA sequence motfs? Nature botechnology, 2006, vol. 24, no. 4, pp [6] González-Álvarez, D.L., Vega-Rodríguez, M.A., Gómez-Puldo, J.A., Sánchez-Pérez, J.M.: Fndng motfs n DNA sequences applyng a multobjectve artfcal bee colony (MOABC) algorthm. In: Evolutonary Computaton, Machne Learnng and Data Mnng n Bonformatcs. Sprnger, 2011, pp [7] Karaboga, D.: Artfcal bee colony algorthm. scholarpeda, 2010, vol. 5, no. 3, p [8] Kaya, M.: MOGAMOD: Mult-objectve genetc algorthm for motf dscovery. Expert Systems wth Applcatons, 2009, vol. 36, no. 2, pp [9] Märtens, M., Izzo, D.: The asynchronous sland model and NSGA-II: study of a new mgraton operator and ts performance. In: Proceedngs of the 15th annual conference on Genetc and evolutonary computaton, ACM, 2013, pp [10] Martn, W., Leng, J., Cohoon, J.P.: C6. 3 Island (mgraton) models: evolutonary algorthms based on punctuated equlbra. B ack et al. BFM97], Seten C, vol. 6. [11] Nelsen, S.S., Dorronsoro, B., Danoy, G., Bouvry, P.: Novel effcent asynchronous cooperatve coevolutonary mult-objectve algorthms. In: Evolutonary Computaton (CEC), 2012 IEEE Congress on, IEEE, 2012, pp [12] Rucńsk, M., Izzo, D., Bscan, F.: On the mpact of the mgraton topology on the sland model. Parallel Computng, 2010, vol. 36, no. 10, pp [13] Sabo S., Kovarova A., Návrat P.: Multple developng news stores dentfed and tracked by socal nsects and vsualzed usng the new galactc streams and concurrent streams metaphors. Internatonal Journal of Hybrd Intellgent Systems, 2015, vol. 12, pp [14] Tompa, M., L, N., Baley, T.L., Church, G.M., De Moor, B., Eskn, E., Favorov, A.V., Frth, M.C., Fu, Y., Kent, W.J., et al.: Assessng computatonal tools for the dscovery of transcrpton factor bndng stes. Nature botechnology, 2005, vol. 23, no. 1, pp [15] Wngender, E., Detze, P., Karas, H., Knüppel, R.: TRANSFAC: A Database on Transcrpton Factors and Ther DNA Bndng Stes. Nuclec Acds Research, 1996, vol. 24, no. 1, pp [16] Xao, N., Armstrong, M.P.: A specalzed sland model and ts applcaton n multobjectve optmzaton. In: Genetc and Evolutonary Computaton Conference, Sprnger, 2003, pp [17] Zhu, G., Kwong, S.: Gbest-guded artfcal bee colony algorthm for numercal functon optmzaton. Appled Mathematcs and Computaton, 2010, vol. 217, no. 7, pp F-5

107 WhatI sdnamot f? -shor tsubst r ngpat t er n -r epeat edl ypr esentatvar ouspos t ons -subj ectt omut at onssuchas nser t on, del et onorsubst t ut on -hol dssomeb ol og cal l ys gn f cant nf or mat on Opt m zat onpr obl em Max m zeg venobj ect ves: -Lengt hofmot f -Suppor t -S m l ar t y/ent r opy Sat sf yg venconst r a nt s: -Mot fl engt h7-64 -M n mum Suppor tv al ue -M n mum mot fcompl ex t y BeeEval uat on Sol ut on ( bee pos t on) con- cons der ed.i t st hesemot f s t a ns nf or mat on aboutmot ff r om wh chpos t onf r equenpos t on n each nput se- cymat r x( PFM) scomput ed. quence and t sl engt h.fr om t hese cand dat e mot f s,con- Us ngpfm wecancomput e sensusmot f scr eat ed us ng s m l ar t y,ent r opy and commostdom nantnucl eot de f or pl ex t y.suppor t snumberof eachpos t on.onl ymot f st hat mot f st hatpassed consenhav eatl east50% nucl eot des susf l t er.lengt h sg v end same as consensus ar e r ect l ybybeepos t on. Mot ff nd ng ndnasequences Róbe r tcupr k e ma l :r obe r t c upr ma l. c om s upe r v s e dbypr of e s s orpa v ol Ná v r a t 3Phases: -Wor k er sbeephase -Onl ook er sbeephase -Scoutbeephase Beesor t ng: -NSGAI Inondom nat edsor t -Cr owd ngd st ance Mul t obj ect vear t f c al BeeCol ony( MOABC) s n o t u l o ws e dn n of Ct B A smo e s du n a l s I 1.Sequent almet aheur st cs t er at on 2. W t hpr obab l t ypshar ebestr esul t s 3. W t hpr obab l t yqacceptr esul t s St eps: -each sl andhas t sownpopul at on -each sl and sr unn ngmoabc -beeshar ng sasynchr onous -when sl andr ec ev esbee, tuses tas gbestbee I sl and Us ngmul t obj ect vear t f c albeecol ony andasynchr onousi sl andmodel me nt so d n e p e hd c a e dr n a l s I Asynchr onousi sl andmodel s d n a l s I t 1 t 2 I sl and=1thr eadr unn ngsequent alal gor t hm Beesar eexchangedus ngshar edmemor y Numberofaf f ect edne ghbour sdependsont me Usageofgbestbee WeME r g ea l lp o p u l a t o n s s f l r a o n me da a n c dp h o s t p r o c e s st o p2 0 n d v d u a l s Post pr ocess ng Dur ng MOABC we use bee st ep equat on ext ended by gbest.eachbee sbe ngpul l edt ogbestbee.gbest sr ec ev edf r om ne ghbour ng sl anddur ngm gr at on. Resul t s Foreach sol ut on we cons dercand dat e mot fw t ht he smal l esthamm ngd st ancet oconsensusmot fasar esul t. Subsequent l ywe scor et hese mot f sand out putonl yn bestoft hem. Mot fscor e G v en mot fl engt h we comput e ngr amsf r om nputsequences.ngr ams ar e scor ed by hamm ng d st ance t o mot f.scor edngr amsar et henf l t er edbymax mum hamm ngd st ancet hat sder v edf r om mot fl engt h.ngr ams ar et henspl t nt obuc k et sbyt he rscor e. Buc k etbcont a ns ngr amsw t hhamm ngd st ance.mot fscor e scomput ed as Wher e B snumberofbuc k et sand B snumberofmot f s ng v enbuc k et. F-6

Snímka 1

Snímka 1 Bayesovský klasfkátor prradí objekt trede, kde P(ω x) je maxmálne Rozhodovaca funkca Ako určť pravdepodobnost Pre kategorcké atrbúty P( x ) P( ) P( x ) k d x k k1 N N, k Navný klasfkátor Pravdepodobnosť

Podrobnejšie

APROXIMÁCIA BINOMICKÉHO ROZDELENIA NORMÁLNYM A PRÍKLAD JEJ APLIKÁCIE V AKTUÁRSTVE S VYUŽITÍM JAZYKA R Abstrakt Príspevok sa zameriava na prezentáciu l

APROXIMÁCIA BINOMICKÉHO ROZDELENIA NORMÁLNYM A PRÍKLAD JEJ APLIKÁCIE V AKTUÁRSTVE S VYUŽITÍM JAZYKA R Abstrakt Príspevok sa zameriava na prezentáciu l APROXIMÁCIA BINOMICKÉHO ROZDELENIA NORMÁLNYM A PRÍKLAD JEJ APLIKÁCIE V AKTUÁRSTVE S VYUŽITÍM JAZYKA R Abstrakt Príspevok sa zamerava na prezentácu lmtných vet v analýze rzka v nežvotnom postení. Jednoducho

Podrobnejšie

Prenosový kanál a jeho kapacita

Prenosový kanál a jeho kapacita Prenosový kanál a jeho kapacita Stanislav Palúch Fakulta riadenia a informatiky, Žilinská univerzita 5. mája 2011 Stanislav Palúch, Fakulta riadenia a informatiky, Žilinská univerzita Prenosový kanál a

Podrobnejšie

Analýza sociálnych sietí Geografická lokalizácia krajín EU

Analýza sociálnych sietí  Geografická lokalizácia krajín EU Analýza sociálnych sietí Geografická lokalizácia krajín EU Ekonomická fakulta TU v Košiciach 20. februára 2009 Vzt ahy medzi krajinami - teória grafov Doterajšie riešenia 1 problém farbenia grafov (Francis

Podrobnejšie

Paralelné algoritmy, cast c. 2

Paralelné algoritmy, cast c. 2 Paralelné algoritmy, čast č. 2 František Mráz Kabinet software a výuky informatiky, MFF UK, Praha Paralelné algoritmy, 2009/2010 František Mráz (KSVI MFF UK) Paralelné algoritmy, čast č. 2 Paralelné algoritmy,

Podrobnejšie

Metódy dokazovanie v matematike 1 Základné pojmy Matematika exaktná veda vybudovaná DEDUKTÍVNE ZÁKLADNÉ POJMY základy každej matematickej teórie sú in

Metódy dokazovanie v matematike 1 Základné pojmy Matematika exaktná veda vybudovaná DEDUKTÍVNE ZÁKLADNÉ POJMY základy každej matematickej teórie sú in Metódy dokazovanie v matematike 1 Základné pojmy Matematika exaktná veda vybudovaná DEDUKTÍVNE ZÁKLADNÉ POJMY základy každej matematickej teórie sú intuitívne jasné a názorné napr. prirodzené čísla, zlomok,

Podrobnejšie

Paralelné algoritmy, cast c. 3

Paralelné algoritmy, cast c. 3 Paralelné algoritmy, čast č. 3 František Mráz Kabinet software a výuky informatiky, MFF UK, Praha Paralelné algoritmy, 2009/2010 František Mráz (KSVI MFF UK) Paralelné algoritmy, čast č. 3 Paralelné algoritmy,

Podrobnejšie

Microsoft Word - kriteria_ubyt_ doc

Microsoft Word - kriteria_ubyt_ doc Krtérá pre prdeľovane ubytovana študentom denného štúda na FIIT STU Čl. 1 Úvodné ustanovena (1) Krtérá pre prdeľovane ubytovana sa vypracovávajú za účelom zostavena poradovníka žadateľov o ubytovane v

Podrobnejšie

17. medzinárodná vedecká konferencia Riešenie krízových situácií v špecifickom prostredí, Fakulta špeciálneho inžinierstva ŽU, Žilina, máj 2

17. medzinárodná vedecká konferencia Riešenie krízových situácií v špecifickom prostredí, Fakulta špeciálneho inžinierstva ŽU, Žilina, máj 2 17. medznárodná vedecká konferenca Rešene krízových stuácí v špecfckom prostredí, Fakulta špecálneho nžnerstva ŽU, Žlna, 30. - 31. máj 2012 PRÍSTUPY KU KVANTIFIKÁCII DOSLEDKOV DISFUNKCIE KRITICKEJ INFRAŠTRUKTÚRY

Podrobnejšie

Statika (2.vydanie)

Statika (2.vydanie) ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta špecálneho nžnerstva Doc. Ing. Jozef KOVAČIK, CSc. Ing. Martn BENIAČ, PhD. STATIKA PRE ŠPECIÁLNE INŽINIERSTVO Druhé doplnené a upravené vydane Určené pre študjné odbory

Podrobnejšie

bakalarska prezentacia.key

bakalarska prezentacia.key Inteligentné vyhľadávanie v systéme na evidenciu skautských družinových hier Richard Dvorský Základné pojmy Generátor družinoviek Inteligentné vyhľadávanie Ako to funguje Základné pojmy Skautská družina

Podrobnejšie

PowerPoint Presentation

PowerPoint Presentation Seminár Robotika.SK Ako naučiť robota vidieť ľudskú tvár pomocou knižnice Dlib Andrej Lúčny Katedra aplikovanej informatiky FMFI UK lucny@fmph.uniba.sk http://dai.fmph.uniba.sk/w/andrej_lucny www.robotika.sk/cviko7-faces.zip

Podrobnejšie

Aplikace matematiky- záverečná práca Juraj Bodík 28. septembra 2017 Definície Žena - objekt ohodnotený celým číslom. Každé dve ženy sa dajú porovnat a

Aplikace matematiky- záverečná práca Juraj Bodík 28. septembra 2017 Definície Žena - objekt ohodnotený celým číslom. Každé dve ženy sa dajú porovnat a Aplikace matematiky- záverečná práca Juraj Bodík 28. septembra 207 Definície Žena - objekt ohodnotený celým číslom. aždé dve ženy sa dajú porovnat a rozlíšit, t.j. žiadne dve nemajú rovanké hodnotenie.

Podrobnejšie

Teória pravdepodobnosti Zákony velkých císel

Teória pravdepodobnosti Zákony velkých císel 10. Zákony veľkých čísel Katedra Matematických metód Fakulta Riadenia a Informatiky Žilinská Univerzita v Žiline 6. apríla 2014 1 Zákony veľkých čísel 2 Centrálna limitná veta Zákony veľkých čísel Motivácia

Podrobnejšie

Tomáš Jelínek - včely vyhľadávanie

Tomáš Jelínek - včely vyhľadávanie Tomáš Jelínek - včely vyhľadávanie Včelí focused crawler Včelí focused crawler sa skladá z dvoch základných modelov správania sa včiel - správanie sa včely v úli (implementoval Tomáš Jelínek) a správanie

Podrobnejšie

Inteligentné rozhodovacie systémy Heuristické prehľadávanie SP Október, 2018 Katedra kybernetiky

Inteligentné rozhodovacie systémy Heuristické prehľadávanie SP   Október, 2018 Katedra kybernetiky Inteligentné rozhodovacie systémy Heuristické prehľadávanie SP Marian.Mach@tuke.sk http://people.tuke.sk/marian.mach Október, 2018 Katedra kybernetiky a umelej inteligencie FEI, TU v Košiciach 1 Best-first

Podrobnejšie

Paralelné algoritmy, cast c. 3

Paralelné algoritmy, cast c. 3 Paralelné algoritmy, čast č. 3 František Mráz Kabinet software a výuky informatiky, MFF UK, Praha Paralelné algoritmy, 2011/2012 František Mráz (KSVI MFF UK) Paralelné algoritmy, čast č. 3 Paralelné algoritmy,

Podrobnejšie

Microsoft Word - skripta3b.doc

Microsoft Word - skripta3b.doc 6. Vlastnosti binárnych relácií V tejto časti sa budeme venovať šiestim vlastnostiam binárnych relácií. Najprv si uvedieme ich definíciu. Reláciu R definovanú v množine M nazývame: a ) reflexívnou, ak

Podrobnejšie

IAB budicek - Branding Landscape & Research options_FINAL_Gregor.pptx

IAB budicek - Branding Landscape & Research options_FINAL_Gregor.pptx NES SA BRAND UDUJE V DIGITÁLI Štrukturálna štúdia pre AIMmonitor FOCUS 3,800,000 Internetová populácia SR 12+ 3,757,883 3,743,804 4 mln /2019 3,700,000 3,600,000 3,599,551 Y/Y +3-4% 3,500,000 3,400,000

Podrobnejšie

Pokrocilé spracovanie obrazu - Fourierová transformácia

Pokrocilé spracovanie obrazu - Fourierová transformácia Pokročilé spracovanie obrazu - Fourierová transformácia Ing. Viktor Kocur viktor.kocur@fmph.uniba.sk DAI FMFI UK 29.11.2017 Obsah 1 Segmentácia O čo ide 2 Watershed Princíp Postup 3 k-means clustering

Podrobnejšie

Tue Oct 3 22:05:51 CEST Začiatky s jazykom C 2.1 Štruktúra programu Štruktúra programu by sa dala jednoducho popísať nasledovnými časťami, kto

Tue Oct 3 22:05:51 CEST Začiatky s jazykom C 2.1 Štruktúra programu Štruktúra programu by sa dala jednoducho popísať nasledovnými časťami, kto Tue Oct 3 22:05:51 CEST 2006 2. Začiatky s jazykom C 2.1 Štruktúra programu Štruktúra programu by sa dala jednoducho popísať nasledovnými časťami, ktoré si postupne rozoberieme: dátové typy príkazy bloky

Podrobnejšie

Axióma výberu

Axióma výberu Axióma výberu 29. septembra 2012 Axióma výberu Axióma VIII (Axióma výberu) ( S)[( A S)(A ) ( A S)( B S)(A B A B = ) ( V )( A S)( x)(v A = {x})] Pre každý systém neprázdnych po dvoch disjunktných množín

Podrobnejšie

Pokrocilé programovanie XI - Diagonalizácia matíc

Pokrocilé programovanie XI - Diagonalizácia matíc Pokročilé programovanie XI Diagonalizácia matíc Peter Markoš Katedra experimentálnej fyziky F2-523 Letný semester 2015/2016 Obsah Fyzikálne príklady: zviazané oscilátory, anizotrópne systémy, kvantová

Podrobnejšie

Algoritmizácia a programovanie - Príkazy

Algoritmizácia a programovanie - Príkazy Algoritmizácia a programovanie Príkazy prof. Ing. Ján Terpák, CSc. Technická univerzita v Košiciach Fakulta baníctva, ekológie, riadenia a geotechnológíı Ústav riadenia a informatizácie výrobných procesov

Podrobnejšie

III. Diferenciálny počet funkcie viac premenných (Prezentácia k prednáškam, čast B) Matematická analýza IV (ÚMV/MAN2d/10) RNDr. Lenka Halčinová, PhD.

III. Diferenciálny počet funkcie viac premenných (Prezentácia k prednáškam, čast B) Matematická analýza IV (ÚMV/MAN2d/10) RNDr. Lenka Halčinová, PhD. III. Diferenciálny počet funkcie viac premenných (Prezentácia k prednáškam, čast B) (ÚMV/MAN2d/10) lenka.halcinova@upjs.sk 11. apríla 2019 3.3 Derivácia v smere, vzt ah diferenciálu, gradientu a smerovej

Podrobnejšie

Autoregresné (AR) procesy Beáta Stehlíková Časové rady, FMFI UK Autoregresné(AR) procesy p.1/22

Autoregresné (AR) procesy Beáta Stehlíková Časové rady, FMFI UK Autoregresné(AR) procesy p.1/22 Autoregresné (AR) procesy Beáta Stehlíková Časové rady, FMFI UK Autoregresné(AR) procesy p.1/22 Príklad 1 AR(2) proces z prednášky: x t =1.4x t 1 0.85x t 2 +u t V R-ku: korene charakteristického polynómu

Podrobnejšie

Microsoft Word - 1 Zakladne-pojmy

Microsoft Word - 1 Zakladne-pojmy 1 ZÁKLADNÉ POJMY Predtým ako sa začneme systematcky zaoberať jednotlvým časťam aplkovanej fyzkálnej chéme, sa zoznámme so základným pojmam, ktorým budeme pracovať. 1.1 Hmota Úlohou prírodných ved, medz

Podrobnejšie

Naučme sa pripraviť a zrealizovať počítačom podporovaný experiment

Naučme sa pripraviť a zrealizovať počítačom podporovaný experiment Laboratórne cvčena podporované počítačom epelné deje v plynoch Meno:...Škola:...reda:.... Izotermcký dej v deálnom plyne Fyzkálny prncíp: Pr pomalom stláčaní vzduchu pod pestom njekčnej strekačky zostáva

Podrobnejšie

1

1 ADM a logika 5. prednáška Sémantické tablá priesvitka 1 Úvodné poznámky Cieľom dnešnej prednášky je moderná sémantická metóda verifikácie skutočnosti, či formula je tautológia alebo kontradikcia: Metóda

Podrobnejšie

Pracovný postup pre vypĺňanie údajov elektronického formulára IŠIS pre spravodajskú jednotku 1

Pracovný postup pre vypĺňanie údajov elektronického formulára IŠIS pre spravodajskú jednotku 1 Pracovný postup pre vypĺňanie údajov elektronického formulára IŠIS pre spravodajskú jednotku 1 Prihláste sa do aplikácie pomocou prihlasovacích údajov pre spravodajskú jednotku. Link na aplikáciu: http://isis.statistics.sk/

Podrobnejšie

kde parametre α a β vyjadrujú elasticitu \(pružnosť\) produkcie y vo vzťahu k činiteľom F a Z,  t.j. relatívny prírastok p...

kde parametre α a β vyjadrujú elasticitu \(pružnosť\) produkcie  y vo vzťahu k činiteľom F a Z,  t.j. relatívny prírastok p... 8 Produkčné modely 9 8 Produkčné modely Ekonometrcké modely produkce sa zameravajú na skúmane ekonomckých závslostí, ktoré sa važu na tvorbu nových hmotných statkov. Pr zodpovedajúcej modfkác možno formulu

Podrobnejšie

Snímka 1

Snímka 1 Generovanie LOGICKÝCH KONJUNKCIÍ doc. Ing. Kristína Machová, PhD. kristina.machova@tuke.sk http://people.tuke.sk/kristina.machova/ OSNOVA: 1. Prehľadávanie priestoru pojmov 2. Reprezentácia a použitie

Podrobnejšie

Microsoft Word - Duchon 2

Microsoft Word - Duchon 2 Globálna navgáca moblných robotov na báze geometrcke mapy Frantšek Duchoň Ladslav Juršca Abstrakt Článok analyzue súčasný stav problematky navgáce moblných robotov na základe známe geometrcke rezentáce

Podrobnejšie

Úroveň strojového kódu procesor Intel Pentium Pamäťový operand Adresovanie pamäte Priama nepriama a indexovaná adresa Práca s jednorozmerným poľom Pra

Úroveň strojového kódu procesor Intel Pentium Pamäťový operand Adresovanie pamäte Priama nepriama a indexovaná adresa Práca s jednorozmerným poľom Pra Úroveň strojového kódu procesor Intel Pentium Pamäťový operand Adresovanie pamäte Priama nepriama a indexovaná adresa Práca s jednorozmerným poľom Praktické programovanie assemblerových funkcií Autor:

Podrobnejšie

Microsoft Word - mnohouholnik.doc

Microsoft Word - mnohouholnik.doc Výpočet obsahu mnohouholníka Mnohouholník je daný súradnicami svojich vrcholov: A1[x1, y1], A2[x2, y2],..., An[xn, yn]. Aby sme sa vyhli komplikáciám, obmedzíme sa na prípad konvexného mnohouholníka. Súradnice

Podrobnejšie

1

1 1. CHARAKTERISTIKA DIGITÁLNEHO SYSTÉMU A. Charakteristika digitálneho systému Digitálny systém je dynamický systém (vo všeobecnosti) so vstupnými, v čase premennými veličinami, výstupnými premennými veličinami

Podrobnejšie

Obce okresu Nové Zámky z aspektu ukazovateľov samosprávy

Obce okresu Nové Zámky z aspektu  ukazovateľov samosprávy Vnímanie volieb na úrovni miestnej samosprávy z pohľadu obyvateľov obcí okresu Nové Zámky RNDr. Katarína Vilinová, PhD., RNDr. Gabriela Repaská, PhD., Bc. Andrea Lelkešová Štruktúra prezentácie Úvod Základné

Podrobnejšie

Vzorové riešenia úlohy 4.1 Bodovanie Úvod do TI 2010 Dôvod prečo veľa z Vás malo málo bodov bolo to, že ste sa nepokúsili svoje tvrdenia dokázať, prič

Vzorové riešenia úlohy 4.1 Bodovanie Úvod do TI 2010 Dôvod prečo veľa z Vás malo málo bodov bolo to, že ste sa nepokúsili svoje tvrdenia dokázať, prič Vzorové riešenia úlohy 4.1 Bodovanie Úvod do TI 2010 Dôvod prečo veľa z Vás malo málo bodov bolo to, že ste sa nepokúsili svoje tvrdenia dokázať, pričom to je veľmi dôležitá súčasť úlohy. Body sa udeľovali

Podrobnejšie

03_ControlFlow.dvi

03_ControlFlow.dvi 1 Riadenie toku programu Príkazy v Matlabe na kontrolu toku programu fungujú veľmi podobne ako v iných programovacích jazykoch. Zoznam: IF (IF-END, IF-ELSE-END, IF-ELSEIF-ELSE-END), SWITCH-CASE, FOR cykly,

Podrobnejšie

Jednotkový koreň (unit root), diferencovanie časového radu, unit root testy Beáta Stehlíková Časové rady, FMFI UK, 2011/2012 Jednotkový koreň(unit roo

Jednotkový koreň (unit root), diferencovanie časového radu, unit root testy Beáta Stehlíková Časové rady, FMFI UK, 2011/2012 Jednotkový koreň(unit roo Jednotkový koreň (unit root), diferencovanie časového radu, unit root testy Beáta Stehlíková Časové rady, FMFI UK, 2011/2012 Jednotkový koreň(unit root),diferencovanie časového radu, unit root testy p.1/18

Podrobnejšie

Microsoft Word - DEOV.doc

Microsoft Word - DEOV.doc DENNÍK evidencie odborného výcviku kolský rok.../... Názov koly: D E N N Í K evidencie odborného výcviku tudijný u ebný odbor (kód a názov): kolský rok: Ro ník Trieda: Skupina: Po et iakov v skupine: Na

Podrobnejšie

Photo Album

Photo Album MZDY Stravné lístky COMPEKO, 2019 V programe je prepracovaná práca s evidencoiu stravných lístkov. Z hľadiska dátových štruktúr je spracovanie stravných lístkov rozložené do súborov MZSTRLH.dbf a MZSTRLP.dbf,

Podrobnejšie

Cvičenie 9 Riešené príklady 1. Príklad min f(x 1, x 2 ) = x x x 1 s.t. x 1 80 x 1 + x Pre riešenie úlohy vykonáme nasledujúce kroky

Cvičenie 9 Riešené príklady 1. Príklad min f(x 1, x 2 ) = x x x 1 s.t. x 1 80 x 1 + x Pre riešenie úlohy vykonáme nasledujúce kroky Cvičenie 9 Riešené príklady 1. Príklad min f(x 1, x 2 ) = x 2 1 + x2 2 + 60x 1 s.t. x 1 80 x 1 + x 2 120 Pre riešenie úlohy vykonáme nasledujúce kroky: 1. Najskôr upravíme ohraničenia do tvaru a následne

Podrobnejšie

Microsoft PowerPoint - OOP_prednaska_10.pptx

Microsoft PowerPoint - OOP_prednaska_10.pptx Creational Design Patterns Lecture #10 doc. Ing. Martin Tomášek, PhD. Department of Computers and Informatics Faculty of Electrical Engineering and Informatics Technical University of Košice 2018/2019

Podrobnejšie

TM Leica DISTO Leica DISTOTMD510 X310 The original laser distance meter The original laser distance meter

TM Leica DISTO Leica DISTOTMD510 X310 The original laser distance meter The original laser distance meter TM Leca DISTO Leca DISTOTMD510 X10 The orgnal laser dstance meter The orgnal laser dstance meter Obsah Nastavene prístroja - - - - - - - - - - - - - - - - - - - - - - - - 2 Úvod - - - - - - - - - - - -

Podrobnejšie

NÁVRH UČEBNÝCH OSNOV PRE 1

NÁVRH  UČEBNÝCH  OSNOV  PRE  1 PROGRAMOVANIE UČEBNÉ OSNOVY do ŠkVP Charakteristika voliteľného učebného predmetu Programovanie Programovanie rozširuje a prehlbuje žiacke vedomosti z predchádzajúcich povinného predmetu Informatika. Kompetencie

Podrobnejšie

Čísla Nájdite všetky dvojice prirodzených čísiel, ktoré vyhovujú rovnici: 2 ( a+ b) ( a b) + 2b ( a+ 2b) 2b = 49 RIEŠENIE ( ) ( ) ( ) 2 a+ b a

Čísla Nájdite všetky dvojice prirodzených čísiel, ktoré vyhovujú rovnici: 2 ( a+ b) ( a b) + 2b ( a+ 2b) 2b = 49 RIEŠENIE ( ) ( ) ( ) 2 a+ b a Čísla 9 89. Nájdite všetky dvojice prirodzených čísiel, ktoré vyhovujú rovnici: ( a+ b) ( a b) + b ( a+ b) b 9 ( ) ( ) ( ) a+ b a b + b a+ b b 9 ( a b ) + ab + b b 9 a b + ab + b 9 a + ab + b 9 a+ b 9

Podrobnejšie

Relačné a logické bázy dát

Relačné a logické bázy dát Unifikácia riešenie rovníc v algebre termov Ján Šturc Zima, 2010 Termy a substitúcie Definícia (term): 1. Nech t 0,..., t n -1 sú termy a f je n-árny funkčný symbol, potom aj f(t 0,..., t n -1 ) je term.

Podrobnejšie

ORGANIZÁCIA SPOJENÝCH NÁRODOV

ORGANIZÁCIA SPOJENÝCH NÁRODOV ORGANIZÁCIA SPOJENÝCH NÁRODOV Hospodársky a socálny výbor Dstr. VŠEOBECNE ECE/TRANS/WP.29/2017/130 25. august 2017 Orgnál: ANGLICKÝ EURÓPSKA HOSPODÁRSKA KOMISIA VÝBOR PRE VNÚTROZEMSKÚ DOPRAVU Svetové fórum

Podrobnejšie

MERANIE U a I.doc

MERANIE U a I.doc MERANIE ELEKTRICKÉHO NAPÄTIA A ELEKTRICKÉHO PRÚDU Teoretický úvod: Základnými prístrojmi na meranie elektrických veličín sú ampérmeter na meranie prúdu a voltmeter na meranie napätia. Univerzálne meracie

Podrobnejšie

Princípy tvorby softvéru Programovacie paradigmy

Princípy tvorby softvéru   Programovacie paradigmy Princípy tvorby softvéru lukotka@dcs.fmph.uniba.sk www.dcs.fmph.uniba.sk/~lukotka M-255 PTS - ƒo to je programovacia paradigma A programming paradigm is a style, or way, of programming. Paradigm can also

Podrobnejšie

Štruktúra Modelu Výsledky odhadu Záver Trh práce v krajinách strednej Európy: Small Search and Matching Model Martin Železník Národná Banka Slovenska

Štruktúra Modelu Výsledky odhadu Záver Trh práce v krajinách strednej Európy: Small Search and Matching Model Martin Železník Národná Banka Slovenska Trh práce v krajinách strednej Európy: Small Search and Matching Model Národná Banka Slovenska Humusoft, 06.06.2013 Obsah 1 Štruktúra Modelu Domácnosti Firmy Trh práce Nastavenie miezd Uzavretie modelu

Podrobnejšie

Univerzita Komenského v Bratislave Fakulta matematiky, fyziky a informatiky Zachovanie mentálnej mapy hrán pri interakcii s grafom Diplomová práca Bra

Univerzita Komenského v Bratislave Fakulta matematiky, fyziky a informatiky Zachovanie mentálnej mapy hrán pri interakcii s grafom Diplomová práca Bra Univerzita Komenského v Bratislave Fakulta matematiky, fyziky a informatiky Zachovanie mentálnej mapy hrán pri interakcii s grafom Diplomová práca Bratislava, 2013 Bc. Martin Ďuriš Univerzita Komenského

Podrobnejšie

KOMBINOVAN PRESTUP TEPLA PRDENM A RADICIOU

KOMBINOVAN PRESTUP TEPLA PRDENM A RADICIOU RONOÁHA KAALINA ARA IACZLOŽKOÉHO SYSÉMU Ceľ: Merane kompletných rovnovážnych LE údajov vaczložkového systému pr rôznych tlakoch Kompletzáca rovnovážnych údajov. ýpočet bnárnych parametrov najpoužívanejších

Podrobnejšie

Slovenská technická univerzita v Bratislave Fakulta informatiky a informačných technológií Ilkovičova 2, , Bratislava 4 Internet vecí v našich ž

Slovenská technická univerzita v Bratislave Fakulta informatiky a informačných technológií Ilkovičova 2, , Bratislava 4 Internet vecí v našich ž Slovenská technická univerzita v Bratislave Fakulta informatiky a informačných technológií Ilkovičova 2, 842 16, Bratislava 4 Internet vecí v našich životoch [IoT] Používateľská príručka - Android Tím:

Podrobnejšie

Centrum vedecko-technických informácií, Odbor pre hodnotenie vedy, Oddelenie pre hodnotenie publikačnej činnosti Vyhľadávanie a práca so záznamami - C

Centrum vedecko-technických informácií, Odbor pre hodnotenie vedy, Oddelenie pre hodnotenie publikačnej činnosti Vyhľadávanie a práca so záznamami - C Centrum vedecko-technických informácií, Odbor pre hodnotenie vedy, Oddelenie pre hodnotenie publikačnej činnosti Vyhľadávanie a práca so záznamami - CREPČ 2 Manuál pre autorov (aktualizované dňa 18.3.2019)

Podrobnejšie

Microsoft Word - Transparencies03.doc

Microsoft Word - Transparencies03.doc 3. prednáška Teória množín II relácie o operácie nad reláciami o rovnosť o usporiadanosť funkcie o zložená funkcia o inverzná funkcia. Verzia: 20. 3. 2006 Priesvitka: 1 Relácie Definícia. Nech X a Y sú

Podrobnejšie

Republika Srbsko MINISTERSTVO OSVETY, VEDY A TECHNOLOGICKÉHO ROZVOJA ÚSTAV PRE HODNOTENIE KVALITY VZDELÁVANIA A VÝCHOVY VOJVODINSKÝ PEDAGOGICKÝ ÚSTAV

Republika Srbsko MINISTERSTVO OSVETY, VEDY A TECHNOLOGICKÉHO ROZVOJA ÚSTAV PRE HODNOTENIE KVALITY VZDELÁVANIA A VÝCHOVY VOJVODINSKÝ PEDAGOGICKÝ ÚSTAV Republika Srbsko MINISTERSTVO OSVETY, VEDY A TECHNOLOGICKÉHO ROZVOJA ÚSTAV PRE HODNOTENIE KVALITY VZDELÁVANIA A VÝCHOVY VOJVODINSKÝ PEDAGOGICKÝ ÚSTAV ZÁVEREČNÁ SKÚŠKA NA KONCI ZÁKLADNÉHO VZDELÁVANIA A

Podrobnejšie

Externé mediálne karty Používateľská príručka

Externé mediálne karty Používateľská príručka Externé mediálne karty Používateľská príručka Copyright 2006 Hewlett-Packard Development Company, L.P. Logo SD je obchodná známka svojho vlastníka. Java je obchodná známka spoločnosti Sun Microsystems,

Podrobnejšie

Dobývanie znalostí

Dobývanie znalostí Dobývanie znalostí Vranec Maroš, Lučanský Ján Zadanie Predikcia pozície internetových stránok na kľúčové slovo vo vyhľadávači Google* * www.google.cz * site:cz Využitie Pri SEO (Search Engine Optimization)

Podrobnejšie

Blood Glucose Monitoring System Copyright Ascensia Diabetes Care Holdings AG. All rights reserved. diabetes.ascensia.com

Blood Glucose Monitoring System Copyright Ascensia Diabetes Care Holdings AG. All rights reserved. diabetes.ascensia.com Používanie Mojich charakteristických vzorov s aplikáciou CONTOUR DIABETES Zmeny v liečbe, diéte alebo cvičení konzultujte vždy vopred s Vašim lekárom. Funkcia Moje charakteristické vzory identifikuje špecifické

Podrobnejšie

2

2 Modul Spájanie str. 1 Modul Spájanie Obsah: 1 Úvod 2 2 Prenos údajov spájanie 2 2.1.1 Generovanie údajov 3 2.1.2 Prenos údajov 4 2.1.3 Spájanie údajov 5 3 Poznámky 7 Modul Spájanie str. 2 1 Úvod Tento

Podrobnejšie

Matematický model činnosti sekvenčného obvodu 7 MATEMATICKÝ MODEL ČINNOSTI SEKVENČNÉHO OBVODU Konečný automat predstavuje matematický model sekvenčnéh

Matematický model činnosti sekvenčného obvodu 7 MATEMATICKÝ MODEL ČINNOSTI SEKVENČNÉHO OBVODU Konečný automat predstavuje matematický model sekvenčnéh 7 MTEMTICKÝ MODEL ČINNOSTI SEKVENČNÉHO OBVODU Konečný automat predstavuje matematický model sekvenčného obvodu. Konečný automat je usporiadaná pätica = (X, S, Y, δ, λ,) (7.) kde X je konečná neprázdna

Podrobnejšie

Microsoft Word - Zaver.pisomka_januar2010.doc

Microsoft Word - Zaver.pisomka_januar2010.doc Písomná skúška z predmetu lgebra a diskrétna matematika konaná dňa.. 00. príklad. Dokážte metódou vymenovaním prípadov vlastnosť: Tretie mocniny celých čísel sú reprezentované celými číslami ktoré končia

Podrobnejšie

Podpora metód operačného výskumu pri navrhovaní systému liniek doc. RNDr. Štefan PEŠKO, CSc. Katedra matematických metód, Fa

Podpora metód operačného výskumu pri navrhovaní systému liniek doc. RNDr. Štefan PEŠKO, CSc. Katedra matematických metód, Fa Podpora metód operačného výskumu pri navrhovaní systému liniek doc. RNDr. Štefan PEŠKO, CSc. stefan.pesko@fri.uniza.sk Katedra matematických metód, Fakulta riadenia a informatiky, Žilinská univerzita v

Podrobnejšie

Snímka 1

Snímka 1 Fyzika - prednáška 12 Ciele 5. Fyzikálne polia 5.4 Stacionárne magnetické pole 5.5 Elektromagnetické pole Zopakujte si Fyzikálne pole je definované ako... oblasť v určitom priestore, pričom v každom bode

Podrobnejšie

Testovanie kointegrácie nestacionárnych časových radov

Testovanie kointegrácie nestacionárnych časových radov Recenzent Mchal ILLOVSKÝ (Katedra matematky a deskrptívnej geometre Stavebná fakulta STU) Lukáš PASTOREK (Fakulta nformatky a statstky, Vysoká škola ekonomcká v Praze) Tomáš ŽELINSKÝ (Ekonomcká fakulta,

Podrobnejšie

PL_2_2_vplyv_objemu

PL_2_2_vplyv_objemu Pokus 1 (Lapitková, et al., 2010, s. 78) Cieľ pokusu Preskúmať, ako vplýva objem a tvar telesa na hĺbku ponoru. Úloha č.1 Porovnaj hĺbku ponorenia dvoch škatúľ s rôznymi objemami, ak ich rovnako zaťažíš

Podrobnejšie

Hl adanie podobností v textoch l udových piesní Autor: Michal Mižák Vedúci práce: doc. RNDr. Stanislav Krajči, PhD. Univerzita Pavla Jozefa Šafárika v

Hl adanie podobností v textoch l udových piesní Autor: Michal Mižák Vedúci práce: doc. RNDr. Stanislav Krajči, PhD. Univerzita Pavla Jozefa Šafárika v Hl adanie podobností v textoch l udových piesní Autor: Michal Mižák Vedúci práce: doc. RNDr. Stanislav Krajči, PhD. Univerzita Pavla Jozefa Šafárika v Košiciach Abstrakt Aj ked folklór v posledných rokoch

Podrobnejšie

PoĊítaĊová sieť

PoĊítaĊová sieť Počítačová sieť Def. 1: Systém vzájomne prepojených a spolupracujúcich PC Def. 2 Skupina PC (minimálne dvoch), ktoré sú navzájom prepojené takým spôsobom, že je možný prenos dát medzi nimi. Druhy počítačov

Podrobnejšie

STRUČNÝ NÁVOD KU IP-COACHU

STRUČNÝ NÁVOD KU IP-COACHU STRUČNÝ NÁVOD KU COACHU 5 Otvorenie programu a voľba úlohy na meranie Otvorenie programu Program IP- COACH na meranie otvoríme kliknutím na ikonu na obrazovke: Obr.1 Voľba úlohy na meranie Po kliknutí

Podrobnejšie

trafo

trafo Výpočet rozptylovej reaktancie transformátora Vo väčších transformátoroch je X σk oveľa väčšia ako R k a preto si vyžaduje veľkú pozornosť. Ak magnetické napätia oboch vinutí sú presne rovnaké, t.j. N

Podrobnejšie

DediĊnosť

DediĊnosť Gymnázium, Praha 10, Voděradská 2 Projekt OBZORY Dedičnosť v jazyku C# Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond OOP rekapitulácia Trieda je základná jednotka objektového programovania

Podrobnejšie

Komplexný informa ný a monitorovací systém Monitorovanie biotopov a druhov európskeho významu Používate ská dokumentácia KIMS modul Mobilná aplikácia

Komplexný informa ný a monitorovací systém Monitorovanie biotopov a druhov európskeho významu Používate ská dokumentácia KIMS modul Mobilná aplikácia Komplexný informa ný a monitorovací systém Monitorovanie biotopov a druhov európskeho významu Používate ská dokumentácia KIMS modul Mobilná aplikácia pre výkon výskytu Programový dokument: Životné prostredie

Podrobnejšie

Monday 25 th February, 2013, 11:54 Rozmerová analýza M. Gintner 1.1 Rozmerová analýza ako a prečo to funguje Skúsenost nás učí, že náš svet je poznate

Monday 25 th February, 2013, 11:54 Rozmerová analýza M. Gintner 1.1 Rozmerová analýza ako a prečo to funguje Skúsenost nás učí, že náš svet je poznate Monday 25 th February, 203, :54 Rozmerová analýza M. Gintner. Rozmerová analýza ako a prečo to funguje Skúsenost nás učí, že náš svet je poznatel ný po častiach. Napriek tomu, že si to bežne neuvedomujeme,

Podrobnejšie

SRPkapitola06_v1.docx

SRPkapitola06_v1.docx Štatistické riadenie procesov Regulačné diagramy na reguláciu porovnávaním 6-1 6 Regulačné diagramy na reguláciu porovnávaním Cieľ kapitoly Po preštudovaní tejto kapitoly budete vedieť: čo sú regulačné

Podrobnejšie

1 Rekurencie este raz riesenia niektorych rekurencii z cvik. mame danu rekurenciu napr T (n) = at ( n b ) + k. idea postupu je postupne rozpisovat cle

1 Rekurencie este raz riesenia niektorych rekurencii z cvik. mame danu rekurenciu napr T (n) = at ( n b ) + k. idea postupu je postupne rozpisovat cle 1 Rekurencie este raz riesenia niektorych rekurencii z cvik. mame danu rekurenciu napr at b + k. idea postupu je postupne rozpisovat cleny T b... teda T b = at + 1... dokym v tom neuvidime nejaky tvar

Podrobnejšie

Microsoft Word - 06b976f06a0Matice - Uzivatelska Dokumentacia

Microsoft Word - 06b976f06a0Matice - Uzivatelska Dokumentacia Matice Užívateľská dokumentácia k programu Autor: Miroslav Jakubík 2009 Obsah 1 Úvod... 2 1.1 Stručný popis programu... 2 1.2 Spustenie programu... 2 1.3 Otvorenie dokumentu... 3 1.4 Ovládanie programu...

Podrobnejšie

Sila [N] Sila [N] DIPLOMOVÁ PRÁCA Príloha A: Sila v ose skrutky v mieste predpätia P = 0,

Sila [N] Sila [N] DIPLOMOVÁ PRÁCA Príloha A: Sila v ose skrutky v mieste predpätia P = 0, Príloha A: Sila v ose skrutky v mieste predpätia P =, Sila v ose skrutky v mieste predpätia P =, Obr. Priebeh síl v ose skrutiek pri stúpaní P =, a P =, ÚMTMB FSI VUT v Brně Sila v ose skrutky v mieste

Podrobnejšie

Microsoft Word - 3CB DF-2604.rtf

Microsoft Word - 3CB DF-2604.rtf XIII ČASOVÉ RADY 3 lasfkáca a základné charakterstk časových radov Príklad: V okrese Lptovský Mkuláš sme v roku 993 sledoval počet nezamestnaných na jedno ponúkané voľné pracovné mesto: mesac 3 4 5 6 7

Podrobnejšie

Strana 5526 Zbierka zákonov č. 590/2003 Čiastka NARIADENIE VLÁDY Slovenskej republiky zo 17. decembra 2003 o skúškach odbornej spôsobilosti pr

Strana 5526 Zbierka zákonov č. 590/2003 Čiastka NARIADENIE VLÁDY Slovenskej republiky zo 17. decembra 2003 o skúškach odbornej spôsobilosti pr Strana 5526 Zbierka zákonov č. 590/2003 Čiastka 241 590 NARIADENIE VLÁDY Slovenskej republiky zo 17. decembra 2003 o skúškach odbornej spôsobilosti príslušníkov obecnej polície a o odbornej príprave príslušníkov

Podrobnejšie

Snímka 1

Snímka 1 Alexander Chmelo Tercia 2016/2017 Podmet + základný tvar plnovýznamového slovesa. Pri tretej osobe (he/she/it) k slovesu pridávame príponu -S alebo -ES! I, you, we, they + work He, she, it + works He works

Podrobnejšie

Microsoft Word Nextra_ADSLink.doc

Microsoft Word Nextra_ADSLink.doc Nextra ADSLink Nové služby Nextra ADSLink umožňujú zákazníkom pripojiť sa na internet prostredníctvom technológie ADSL. Technológia ADSL efektívne využíva existujúce telefónne siete, bez dramatických zásahov

Podrobnejšie

Resolution

Resolution Nastavenie rozlíšenia obrazovky Kvôli podstate technológie displeja z tekutých kryštálov (LCD) je rozlíšenie obrazu vždy pevne stanovené. Najlepší výkon zobrazenia dosiahnete nastavením rozlíšenia obrazovky

Podrobnejšie

SLOVENSKÁ TECHNICKÁ UNIVERZITA V BRATISLAVE Fakulta informatiky a informačných technológií STU Ústav počítačových systémov a sietí ZADANIE SEMESTRÁLNE

SLOVENSKÁ TECHNICKÁ UNIVERZITA V BRATISLAVE Fakulta informatiky a informačných technológií STU Ústav počítačových systémov a sietí ZADANIE SEMESTRÁLNE Riešitelia: Bc. Michal Behúň Názov projektu: Napájací zdroj ovládaný cez sériové rozhranie počítača Navrhnite a zrealizujte zdroj napätia od 0 do 10 V ovládaný cez sériové rozhranie počítača na báze mikropočítača

Podrobnejšie

Preco kocka stací? - o tom, ako sú rozdelené vlastné hodnoty laplasiánu v limite, ked sú velké

Preco kocka stací? - o tom, ako sú rozdelené vlastné hodnoty laplasiánu   v limite, ked sú velké o tom, ako sú rozdelené vlastné hodnoty laplasiánu v limite, keď sú veľké o tom, ako sú rozdelené vlastné hodnoty laplasiánu v limite, keď sú veľké zaujímavé, ale len pre matematikov... NIE! o tom, ako

Podrobnejšie

Slovenská technická univerzita Fakulta informatiky a informačných technológií Ilkovičova 3, Bratislava 4 Bc. Peter Bartalos Simulované žíhanie

Slovenská technická univerzita Fakulta informatiky a informačných technológií Ilkovičova 3, Bratislava 4 Bc. Peter Bartalos Simulované žíhanie Slovenská technická univerzita Fakulta informatiky a informačných technológií Ilkovičova 3, 842 16 Bratislava 4 Bc. Simulované žíhanie pre riešenie pohybu koňa po šachovnici Evolučné algoritmy Case study

Podrobnejšie

V jedinej lekcii Meno: 1 Ako reagujete na profesionálne médiá? Pracujte vo dvojiciach a pripravte sa na hranie rolí. Označte sa ako Osoba A a Osoba B.

V jedinej lekcii Meno: 1 Ako reagujete na profesionálne médiá? Pracujte vo dvojiciach a pripravte sa na hranie rolí. Označte sa ako Osoba A a Osoba B. 1 Ako reagujete na profesionálne médiá? Pracujte vo dvojiciach a pripravte sa na hranie rolí. Označte sa ako Osoba A a Osoba B. Prečítajte si ďalej uvedené situácie a precvičte si, ako reagovať, keď vidíte

Podrobnejšie

2.5. Dotyčnica krivky, dotykový kužeľ. Nech f je krivka a nech P V (f) (t.j. m P (f) 1). Ak m P (f) = r a l je taká priamka, že I P (f, l) > r, potom

2.5. Dotyčnica krivky, dotykový kužeľ. Nech f je krivka a nech P V (f) (t.j. m P (f) 1). Ak m P (f) = r a l je taká priamka, že I P (f, l) > r, potom 2.5. Dotyčnica krivky, dotykový kužeľ. Nech f je krivka a nech P V (f) (t.j. m P (f) 1). Ak m P (f) = r a l je taká priamka, že I P (f, l) > r, potom l nazývame dotyčnicou krivky f v bode P. Pre daný bod

Podrobnejšie

ECDL Syllabus V50 SK-V01

ECDL Syllabus V50  SK-V01 SYLLABUS ECDL Modul Computing, M16 (Základy informatického myslenia a programovania) Sylabus, verzia 1.0 ECDL Module Computing Syllabus Version 1.0 Účel Tento dokument uvádza v plnom znení sylabus pre

Podrobnejšie

NSK Karta PDF

NSK Karta PDF Názov kvalifikácie: Projektový manažér pre informačné technológie Kód kvalifikácie U2421003-01391 Úroveň SKKR 7 Sektorová rada IT a telekomunikácie SK ISCO-08 2421003 / Projektový špecialista (projektový

Podrobnejšie

msu_zc_ineo224e

msu_zc_ineo224e Zmluva o poskytnutí dotáce na rok 2019 č. ZS2019063/OE uzavretá podľa 51 zákona č. 40/1964 Zb. Občanskeho zákonníka v znení neskorších predpsov a VZN Mesta Žarnovca č. 2/2019 (ďalej len zmluva ) medz:

Podrobnejšie

SK MATEMATICKÁOLYMPIÁDA skmo.sk 2009/ ročník MO Riešenia úloh česko-poľsko-slovenského stretnutia 1. Určte všetky trojice (a, b, c) kladných r

SK MATEMATICKÁOLYMPIÁDA skmo.sk 2009/ ročník MO Riešenia úloh česko-poľsko-slovenského stretnutia 1. Určte všetky trojice (a, b, c) kladných r SK MATEMATICKÁOLYMPIÁDA skmo.sk 009/010 59. ročník MO Riešenia úloh česko-poľsko-slovenského stretnutia 1. Určte všetky trojice (a, b, c) kladných reálnych čísel, ktoré sú riešením sústavy rovníc a b c

Podrobnejšie

TSS GROUP A.S. UŽÍVATEL SKÝ MANUÁL EČV 2: Basic a Light Plate recognition software Október 2015 V Dubnica nad Váhom, dňa Róbert Sokol

TSS GROUP A.S. UŽÍVATEL SKÝ MANUÁL EČV 2: Basic a Light Plate recognition software Október 2015 V Dubnica nad Váhom, dňa Róbert Sokol TSS GROUP A.S. UŽÍVATEL SKÝ MANUÁL EČV 2: Basic a Light Plate recognition software Október 2015 V Dubnica nad Váhom, dňa 10.10.2015 Róbert Sokol Obsah Úvod 3 1 Štruktúra aplikácie 4 2 Client Aplikácia

Podrobnejšie

Vybrané kapitoly zo štatistickej fyziky - domáce úlohy Michal Koval 19. mája 2015 Domáca úloha č. 1 (pochádza z: [3]) Systém pozos

Vybrané kapitoly zo štatistickej fyziky - domáce úlohy Michal Koval 19. mája 2015 Domáca úloha č. 1 (pochádza z: [3]) Systém pozos Vybrané kapitoly zo štatistickej fyziky - domáce úlohy Michal Koval koval@fmph.uniba.sk 19. mája 2015 Domáca úloha č. 1 (pochádza z: [3]) Systém pozostávajúci z N nezávislých spinov. Každý zo spinov sa

Podrobnejšie

PL_FMS5713_004_

PL_FMS5713_004_ Obj. kód: FMS5713 Capture Box Popis Capture box je analógovo-digitálny prevodník kompozitných AV vstupov (DVB-T, DVB-S, DVD prehrávač, USB (MP3/MP4) prehrávač, CCD kamera a pod. ) do MOD systému. K MOD

Podrobnejšie

eKasa

eKasa Používateľská príručka Systém ekasa ekasa zóna (Portál podnikateľa - Prevádzkar) OBSAH Základné informácie o spoločnosti... 3 História zmien... 4 Obsah... 2 1 E-kasa zóna portál podnikateľa... 3 1.1 O

Podrobnejšie

Metrické konštrukcie elipsy Soňa Kudličková, Alžbeta Mackovová Elipsu, ako regulárnu kužeľosečku, môžeme študovať synteticky (konštrukcie bodov elipsy

Metrické konštrukcie elipsy Soňa Kudličková, Alžbeta Mackovová Elipsu, ako regulárnu kužeľosečku, môžeme študovať synteticky (konštrukcie bodov elipsy Metrické konštrukcie elipsy Soňa Kudličková, Alžbeta Mackovová Elipsu, ako regulárnu kužeľosečku, môžeme študovať synteticky (konštrukcie bodov elipsy) alebo analyticky (výpočet súradníc bodov elipsy).

Podrobnejšie