UMETNI IMUNSKI SISTEM S STRANI BIOLOGIJE NAVDIHNJENO RAČUNANJE

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "UMETNI IMUNSKI SISTEM S STRANI BIOLOGIJE NAVDIHNJENO RAČUNANJE"

Transcription

1 UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Andrej Barovič Karpov UMETNI IMUNSKI SISTEM S STRANI BIOLOGIJE NAVDIHNJENO RAČUNANJE Magistrsko delo Maribor, junij 2016

2 Smetanova ulica Maribor, Slovenija UMETNI IMUNSKI SISTEM S STRANI BIOLOGIJE NAVDIHNJENO RAČUNANJE Magistrsko delo Študent: Študijski program: Smer: Mentor: Somentor(ica): Lektor(ica): Andrej Barovič Karpov Računalništvo in informatika, podiplomski študij red. prof. dr. Marjan MERNIK I

3 ZAHVALA Zahvaljujem se mentorju red. prof. dr. Marjanu Merniku in doc. dr. Mateju Črepinšku za pomoč in vodenje pri opravljanju magistrske naloge. II

4 UMETNI IMUNSKI SISTEM S STRANI BIOLOGIJE NAVDIHNJENO RAČUNANJE Ključne besede: inteligentni sistemi, evolucijsko računanje, evolucijski algoritmi, evolucijske strategije, genetsko programiranje, genetski algoritmi, umetni imunski sistem UDK: :615.37(043.2) Povzetek Cilj magistrskega dela je opis (njihova sestava in princip, po katerem delujejo), implementacija algoritmov umetnega imunskega sistema (AIS) in njihova integracija v obstoječo EARS okolje. V AIS skupino algoritmov spadajo CLONALG, NSA, ainet in drugi. Te algoritme smo primerjali z ostalimi optimizacijskimi algoritmi, kot so: PSO, DE, ABC, in TLBO. Primerjavo med algoritmi smo izvedli na CEC skupini problemov in pri tem uporabili statistične teste (NHST) ter novejši pristop CRS4EAs. Rezultati vsake generacije so bili podvrženi dodatnim testom za ugotavljanje eksploracijskih (raziskovalnih) in eksploatacijskih (izkoriščevalnih) lastnosti algoritma AIS. III

5 BIOLOGY INSPIRED COMPUTING ARTIFICIAL IMMUNE SYSTEM Keywords: Intelligent systems, evolutionary computation, evolutionary algorithms, evolutionary strategy, genetic programming, genetic algorithms, artificial immune system UDK: :615.37(043.2) Abstract The aim of the master thesis is the description and implementation of artificial immune system algorithms and their integration into existing EARS environment. The AIS group of algorithms consists of CLONALG, NSA, ainet and others. These algorithms were compared with other optimization algorithms such as PSO, DE, ABC, and TLBO. The comparison between algorithms was performed on the CEC group of problems while using statistical tests (NHST) and the newer approach CRS4EAs. The results of each generation have been subjected to additional tests to determine the exploratory and exploitative characteristics of the AIS algorithm. IV

6 KAZALO 1 UVOD 10 2 IMUNSKI SISTEM IN NJEGOVE BIOLOŠKE OSNOVE 11 3 ALGORITMI UMETNEGA IMUNSKEGA SISTEMA Teorija klonske selekcije (CST) Algoritem negativne selekcije Imunske mreže 25 4 ZGODOVINA RAZISKAV ALGORITMOV UMETNEGA IMUNSKEGA SISTEMA Začetki AIS (raziskave pred 1990) Obdobje pionirjev AIS (raziskave med 1990 in 2000) AIS kot uveljavljena skupina algoritmov (raziskave med 2000 in 2010) Najnovejše raziskave (od 2010 do danes) 28 5 PRIMERI UPORABE ALGORITMOV UMETNEGA IMUNSKEGA SISTEMA AIS aplikacije pred AIS aplikacije od 2000 in primeri uporabe AIS algoritmov v obdobju najnovejših raziskav 31 6 DRUGI MODERNI METAHEVRISTIČNI ALGORITMI PSO (optimizacija z roji delcev) DE (diferencialna evolucija) ABC (algoritem kolonije čebel) 36 V

7 6.4 TLBO (optimizacijski algoritem na osnovi učitelj učenec) 36 7 IMPLEMENTACIJA AIS ALGORITMOV Algoritem negativne selekcije (NSA) Umetno imunsko omrežje (ainet) Algoritem klonske selekcije (CLONALG) B celičen algoritem (BCA) 44 8 PRIMERJAVA REZULTATOV ALGORITMOV Primerjava z NHST in CRS4EAs Preliminarna analiza glede na začetno populacijo Primerjava glede na eksploracijo in eksploatacijo Diskusija 67 9 ZAKLJUČEK Cilji Spoznanja in razprave LITERATURA 69 VI

8 KAZALO SLIK SLIKA 1: INTERAKCIJA MED B IN T CELICO SLIKA 2: PRIMER OPERACIJ KLONIRANJA IN MUTACIJ PROTITELES SLIKA 3: PRIMER HAMMINGOVEGA KODIRANJA SLIKA 4: PRIMER PRINCIPA NEGATIVNE SELEKCIJE SLIKA 5: GRAFIČNI PRIKAZ RAZVRSTITVE (OB DRUGEM ZAGONU) SLIKA 6: GRAFIČNI PRIKAZ RAZVRSTITVE ALGORITMOV (PRVA TEKMA) SLIKA 7: GRAFIČNI PRIKAZ RAZVRSTITVE ALGORITMOV (DRUGA TEKMA, CEC2010 PROBLEMI) SLIKA 8: GRAFIČNI PRIKAZ Z CRS4EAS DOBLJENIH OBČUTNIH RAZLIK SLIKA 9: GRAFIČNI PRIKAZ ŠTEVILA POTREBNIH KORAKOV POSAMEZNEGA ALGORITMA KAZALO TABEL TABELA 1: REZULTAT CLONALG GLEDE NA ZADAN PROBLEM (OB DRUGEM ZAGONU) TABELA 2: REZULTAT CLONALG GLEDE NA OSTALE ALGORITME (OB DRUGEM ZAGONU) TABELA 3: RAZVRSTITEV ALGORITMOV PO DOSEŽENIH TOČKAH (PRVA TEKMA) TABELA 4: RAZVRSTITEV ALGORITMOV PO DOSEŽENIH TOČKAH (DRUGA TEKMA, CEC2010 PROBLEMI) TABELA 5: ŠTEVILO POTREBNIH KORAKOV PRI PREISKOVANJU Z ROBA TABELA 6: ŠTEVILO POTREBNIH KORAKOV PRI PREISKOVANJU SPHERE IN GRIEWANK Z BLIŽINE TABELA 7: ŠTEVILO POTREBNIH KORAKOV PRI PREISKOVANJU ROSENBROCK Z BLIŽINE TABELA 8: MERITEV EVKLIDSKE RAZDALJE VSI IN USPEŠNI (CLONALG, SPHERE, PRAG 0.1) TABELA 9: MERITEV EVKLIDSKE RAZDALJE CLONALG IN DE (USPEŠNI, SPHERE, PRAG 0.1) TABELA 10: MERITEV EVKLIDSKE RAZDALJE ZA PRAG IN 0.01 (CLONALG, VSI, SPHERE) TABELA 11: MERITEV EVKLIDSKE IN MANHATTAN RAZDALJE (CLONALG, PRAG 0.001, USPEŠNI, SPHERE) TABELA 12: MERITEV EVKLIDSKE RAZDALJE CLONALG IN DE (USPEŠNI, GRIEWANK, PRAG 0.001) TABELA 13: MERITEV MANHATTAN RAZDALJE CLONALG IN DE (USPEŠNI, GRIEWANK, PRAG 0.001) TABELA 14: PRIKAZ POVPREČJA IN STANDARDNEGA ODKLONA PRI MERJENJU EVKLIDSKE RAZDALJE MED STARŠEM IN POTOMCEM TABELA 15: PRIKAZ POVPREČJA IN STANDARDNEGA ODKLONA PRI MERJENJU MANHATTAN RAZDALJE MED STARŠEM IN POTOMCEM VII

9 SEZNAM UPORABLJENIH KRATIC ABC - Artificial Bee Colony ainet, AINE - Artificial Immune Network AIRS - Artificial Immune Recognition System AIS - Artificial Immune System ALC - Artificial Lymphocytes APC - Antigen-Presenting Cells BCA - B-Cell Algorithm CLONALG - Clonal Selection Algorithm CNF - Conjunctive Normal Form CRHO - Contiguous Region Hypermutation Operator CRS4EAs - Chess Rating System for Evolutionary Algorithms CST - Clonal Selection Theory DARS - Distributed Autonomous Robotic Systems DCA - Dentritic Cell Algorithm DE - Differential Evolution DNA - Deoxyribonucleic Acid EA - Evolution Algorithm ENSA - Evolutionary Negative Selection Algorithm EP - Evolution Programming ES - Evolution Strategies GA - Genetic Algorithm GAIS - Genetic Algorithm with Iterative Shrinking GP - Genetic Programming HLA - Human Leukocyte Antigen ICARIS - International Conference on Artificial Immune Systems IgG, IgA, IgM, IgE, IgD - Immunoglobulin G, A, M, E, D JSON - JavaScript Object Notation MHC - Major Histocompatibility Complex MISA - Multi-Objective Immune System Algorithm MOM-AiNet - Multi-Objective Optimised ainet NHST - Null Hypothesis Significance Testing NSA - Negative Selection Algorithm omni-ainet - Omni Optimised ainet VIII

10 opt-ainet opt-ainet-aa-clust opt-ia PDP PSO RWA SAT SVM TEA TFH TLBO TSP - Optimised ainet - opt-ainet for Amino Acid Clustering - Optimization Immune Algorithm - Parallel Distributed Processing - Particle Swarm Optimization - Random Walk Algorithm - Satisfiability - Support Vector Machine - Trend Evaluation Algorithm - Follicular Helper T Cells - Teaching-Learning-Based Optimization - Travelling Salesman Problem IX

11 Uvod 1 UVOD S strani biologije navdihnjeno računanje je področje strojnega učenja, umetne inteligence, ki se v veliki meri opira na področje biologije, računalništva in matematike. Je izdelava algoritmov, kateri se zgledujejo po bioloških sistemih in vključujejo evolucijske algoritme, inteligenco roja (npr. kolonije mravelj, čebel), nevronske mreže in algoritme na osnovi celičnih struktur. Znanstveniki s področja računalništva že od nekdaj poskušajo posnemati čudežno funkcionalnost človeškega telesa in ob zgoraj naštetih že uveljavljenih algoritmih se pojavljajo tudi novi algoritmi, ki temeljijo na umetnem imunskem sistemu (AIS). Cilj naloge je bil raziskati in implementirati na umetnem imunskem sistemu zgrajene algoritme. Zanimalo nas je tudi, kakšna je njihova uspešnost v primerjavi s podobnimi algoritmi ter kakšne so njihove eksploracijske in eksploatacijske lastnosti. Naloga je sestavljena iz predstavitve teorije imunskega sistema in teorije do sedaj najbolj uporabljanih AIS algoritmov. Prikazali smo zgodovino raziskav in primere uporabe AIS algoritmov. Ker smo AIS algoritme primerjali z drugimi, na bioloških sistemih zgrajenimi algoritmi, smo tudi te, ki so sodelovali v tekmi, na kratko opisali. V sedmem in osmem poglavju smo predstavili jedro našega dela, implementacijo AIS algoritmov in primerjavo rezultatov med algoritmi. 10

12 Imunski sistem in njegove biološke osnove 2 IMUNSKI SISTEM IN NJEGOVE BIOLOŠKE OSNOVE Imunski sistem [5] je zapleten mehanizem, ki dnevno ščiti človeško telo pred milijoni bakterij, mikrobov, virusov, strupov in parazitov. Deluje v vsakem trenutku na tisoče različnih načinov in njegovo delovanje ostane neopaženo, dokler ne pride do odpovedi delovanja. Par primerov odpovedi oz. napačnega delovanja: - pri vreznini se imunski sistem odzove protiinfekcijsko in omogoči tkivu, da se zaceli. V kolikor pride od izpada imunskega sistema, rana zateče in se zagnoji, - prehlad je posledica izpada imunskega sistema pri uničenju virusov ali bakterij, ki se prenašajo po zraku, - do reakcije z neprimerno hrano pride v primeru, kadar želodčna kislina ne uspe uničiti patogenov, ki jih v telo vnašamo s hrano, - alergije so primer pretiranega delovanja imunskega sistema z neustreznim odzivom. Imunski sistem človeka spada med skupino imunskega sistema sesalcev, katerega sestavljajo [2]: - limfatični organi (priželjc, vranica, bezgavke in limfne kapilare ter žile), - limfociti (zaradi svojih sposobnosti uničevanja tujih zajedalcev predstavljajo glavni del obrambnih mehanizmov oz % vseh levkocitov), - imunoglobulini (topne glikoproteinske molekule, ki so se sposobne vezati na tujke in jim s tem preprečijo, da bi škodovali organizmu), - citokini (delujejo kot posredniki med elementi imunskega sistema), - sistem komplementa (sestavlja okrog 30 majhnih beljakovin, proencimov, ki nastanejo v jetrih in se nahajajo v krvi). Levkociti oz. bela krvna telesa se razvijejo iz osnovne matične celice (hemocitoblast-a) in se delijo na: limfoblast, prolimfocit, veliki limfocit, mali limfocit, limfoplazmocitoidno celico, imunoblast, imunocit, centroblast, centrocit, plazmoblast, proplazmocit in plazmatko. Po funkcionalnosti delimo limfocite na T celice, ki so nosilci celične imunosti in imajo tri različne vloge: neposredno uničujejo antigene, zavirajo delovanje antigenov, v obrambi sodelujejo z B celicami ter B celice, ki predstavljajo specifično imunost in za svojo aktivacijo potrebujejo aktivatorje. Aktivirane B celice se razvijejo v plazmatske celice in z kloniranjem proizvajajo nova protitelesa. 11

13 Imunski sistem in njegove biološke osnove Slika 1: Interakcija med B in T celico Interakcija med B in T celicami [25] je precej kompleksna in pomembna. Znano je, da B celice za izdelavo specifičnih protiteles zahtevajo pomoč T celic. Klasični poskusi kažejo, da antigensko specifične T celice pomagalke reagirajo z antigensko specifičnimi B celicami preko antigenskega "mostu". B celice se vežejo na antigenske molekule ("tujke"), medtem ko se T celice pomagalke vežejo na njihovo predstavitev oz. APC. APC dobimo z reakcijo antigena in T celic, te predstavitve pa se v kodirani obliki shranjujejo v predstavitvi MHC, ki deluje kot leksikon telesu do sedaj poznanih tujkov. V vsaki celici telesa je shranjen tudi zapis HLA, ki markira to celico kot lastno celico in ne kot tujek. Take celice imunski sistem ignorira. Pri novorojencih se mamin MHC prenese na otroka, vendar ta ni trajen. Vsak osebek si mora leksikon zgraditi sam. V pomoč nam pridejo cepiva (oslabljeni primerki bolezni), ki dopolnijo leksikon z nam do sedaj pozabljenimi boleznimi, kakor tudi v primerih, kjer se bolezen lahko tako hitro razširi, da imunski sistem sam ni sposoben pravočasno zagotoviti ustreznega obrambnega mehanizma. Zanimiv pa je tudi HLA in z njim povezani defekti. V primeru transplantacij ni nujno, da se HLA dveh osebkov ujema, zato se vedno preverja ujemanje donatorja in prejemnika. V nasprotnem primeru telo transplant smatra kot tujek. V primeru, kadar se v telesu dogajajo okvare pri zapisu HLA ali pri razumevanju HLA s strani imunskega sistema, prihaja do avtoimunskih bolezni. Takrat imunski sistem ne ločuje lastnega telesa in tujkov ter napada vse celice po vrsti. 12

14 Imunski sistem in njegove biološke osnove Slika 2: Primer operacij kloniranja in mutacij protiteles [40] Normalno delovanje imunskega sistema spremlja nizka stopnja spontanih mutacij (ena mutacija na 106 celičnih delitev). V primeru bolezenskega stanja pa se imunski sistem odzove s primarnim in sekundarnim odzivom. Primarni odziv v začetku bolezenskega stanja se odraža v proizvodnji za antigen specifičnih protiteles, ki se dogaja v limfnih organih (vranica in bezgavke). Proizvodnja B celic sestoji iz mutacij (ena na 1600 delitev) in kloniranja. Ko se zgodi dovolj veliko število mutacij, se nad klonirano populacijo B celic izvaja selekcija z njimi sorodnimi TFH (T celice pomagalke) celicami, kjer se glede na rezultat (afiniteto oz. ujemanje) celice delijo na tri skupine: večina klonov direktno sodeluje v obrambi, delež celic sodeluje kot spominske celice s podaljšano življenjsko dobo in tiste z najmanjšo afiniteto do antigena doleti apoptoza (oz. celična smrt). Sekundarni odziv se nanaša na spominske celice, kjer se odziv klonov na enak antigen odraža v akumulaciji sorodnih celic. Do sedaj ni znano, kdaj tak model doseže optimum delovanja oz. kdaj rezultat gravitira k točno določeni rešitvi t.j. populaciji klonov, ki se med seboj ne razlikujejo. 13

15 Imunski sistem in njegove biološke osnove Protitelesa se razlikujejo po velikosti, obliki molekul (vsa so sestavljena iz štirih polipeptidnih verig: dveh težkih in dveh lahkih) in po vlogi, ki jo imajo v imunskem sistemu. Verige so razporejene v obliki črke Y. So med seboj povezane z disulfidnimi mostički. Protitelesa z obema vrhovoma krakov Y (aminokislinskih ostankih) vežejo različne tujke (antigene) in jih razvrščamo v več razredov: IgG, IgA, IgM, IgE in IgD. V telesu je največ imunoglobulinov iz razreda IgG, zato so te molekule nekakšni prototipi za vsa protitelesa. Aminokislina je v kemiji na splošno vsaka molekula, ki vsebuje tako aminsko ( NH2) kot karboksilno ( COOH) funkcionalno skupino. Variacije različnih aminokislin tako določajo število kombinacij različnih antigenov. 14

16 Algoritmi umetnega imunskega sistema 3 ALGORITMI UMETNEGA IMUNSKEGA SISTEMA Algoritmi umetnega imunskega sistema (AIS) so definirani kot: "Adaptivni sistemi, ki temeljijo na teoriji imunologije in opaženih imunskih funkcij, načel in modelov, kateri se uporabljajo za reševanje problemov." [10] So eden od številne vrste algoritmov, ki se zgledujejo po bioloških sistemih, kot so: evolucijski algoritmi, inteligenca množic, nevronske mreže in računanje celičnih membran. Evolucijski algoritmi spreminjajo dedni zapis s tremi osnovnimi operatorji: mutacija, selekcija in rekombinacija. Pri inteligenci množic posamezne entitete sledijo preprostim pravilom, kako se obnašajo kot posamezniki, med seboj in s svojim okoljem. Poznamo algoritme po vzoru kolonij mravelj, čebel, ptic, rast bakterij, mikrobov in druge. Nevronske mreže so sestavljene iz množice umetnih nevronov (pragovnih funkcij), ki imajo več različno uteženih vhodov in en izhod ter so med seboj povezani. Uteži vhodov posameznih nevronov, povezave med nevroni ter prag, pri katerem nevron na izhodu odda signal, se oblikujejo z učenjem, dokler nevronska mreža ni zmožna optimalno rešiti nekega problema. Koncept računanja celičnih membran v splošnem predstavlja membrano kot ločilo dveh regij in zagotavlja selektivno komuniciranje med obema regijama. Regije povezujejo pravila, ki določajo, kako so objekti proizvedeni, porabljeni, preneseni na druge regije, in kako vplivajo drug na drugega. Navdih AIS algoritmov prihaja iz človeškega imunskega sistema. Obstaja veliko različnih podvrst algoritma, med katerimi so najpomembnejši: teorija klonske selekcije, negativna selekcija in teorija imunskih omrežij. Teorija klonske selekcije (CST) [64] je teorija, ki zajema osnovne odzive imunskega sistema na tujke (antigene). Tiste celice, ki imajo sposobnost prepoznavanja antigena, se razmnožujejo, medtem ko se tiste, ki antigena ne prepoznajo, uničijo. Celice delimo na T in B celice. B celica postane aktivirana, ko se na njene receptorje veže antigen, kar omogoči nastanek spominskih celic. Pri tem procesu se proizvajajo tudi kloni B celic, ki gredo skozi mutacijo, kar zagotavlja raznolikost populacije B celic. Za spominske celice na splošno velja, da imajo dolgo življenjsko dobo in zagotavljajo hiter odziv ob poznejšem srečanju z isto (ali podobno) obliko antigena, kar predstavlja fenomen pridobljene imunosti. Kakor na zunanje vsiljivce, lahko limfociti reagirajo tudi na material, ki prihaja iz celic gostitelja. Če to vodi do polnega imunskega odziva, lahko povzroči škodo na gostiteljevem organizmu (avtoimunost). Samoreaktivni limfociti se lahko pojavijo, ker so gradniki protiteles (B celic) različni genski segmenti, ki so naključno sestavljeni in gredo skozi 15

17 Algoritmi umetnega imunskega sistema proces mutacije. Negativna selekcija je mehanizem pomoči pri zaščiti telesa kot proizvodnja limfocitov, ki so sposobni prepoznati samopodobne antigene. Negativna selekcija T celic se dogaja v priželjcu ali timusu (žlezi, ki je nameščena znotraj prsnega koša, neposredno izza prsne kosti). Ta skrbi za dozorevanje T celic tako, da tvori visoko nepropustne ovire makromolekulam, kjer gredo nedozorele T celice skozi postopek izbire, preden so izpostavljene antigenom. Imunska omrežja [64] predstavlja mreža B celic. Ta mreža se gradi preko ujemanja paratopov in idiotopov, ki se nahajajo na vsaki B celici. Vez, ki se zgradi med paratopom ene B celice in idiotopom druge, ima učinek spodbujanja B celic in preko tega je imunski sistem sposoben doseči stabilno pomnilniško strukturo (imunološki spomin). Za preprečevanje kreiranja neželenih vezi obstaja določena količina zatiranja med celicami B, ki deluje kot regulatorni mehanizem. Obstaja veliko razlogov, zakaj je bil imunski sistem obravnavan kot vir navdiha za načrtovanje novih algoritmov in sistemov. Ima veliko lastnosti: samoorganizacijo, učenje in spomin, prilagajanje, prepoznavanje, robustnost in razširljivost; ki so v inteligentnih sistemih zaželene. Umetni imunski sistem je področje raziskav, ki povezuje discipline imunologije, računalništva in inženiringa. Raziskovalno delo o AIS lahko razdelimo na imunsko modeliranje, teoretičen AIS in aplikativen AIS. Imunsko modeliranje vključuje delo, ki opisuje modele in simulacije naravnih in umetnih imunskih sistemov. Teoretičen AIS opisuje teoretične vidike AIS in vključuje matematično modeliranje algoritmov, konvergenčno analizo, analizo zmogljivosti in zapletenosti teh algoritmov. Aplikativen AIS se nanaša na razvoj algoritmov umetnega imunskega sistema, gradnjo imunološko navdihnjenih računalniških sistemov, uporabo AIS v raznih aplikacijah v realnem svetu. Osnove umetnega imunskega sistema Ogrodje biološko navdihnjenega algoritma, zlasti kadar gre za AIS, morajo sestavljati naslednji osnovni elementi [64]: - predstavitev osnovnih gradnikov sistema, - nabor mehanizmov za oceno interakcije posameznika z okoljem in med seboj (okolje je običajno simulirano z eno ali več ocenitvenimi funkcijami), - postopki prilagajanja, ki urejajo dinamiko sistema (to je, kako se vedenje algoritma spreminja skozi čas). 16

18 Algoritmi umetnega imunskega sistema Osnovni gradniki Posledica kreiranja tega preprostega ogrodja je večslojni pristop k razvoju AIS. Mnogi avtorji so trdili, da je aplikacija predpogoj h gradnji AIS, saj gradniki in sama predstavitev temelji na danem problemu (npr. reševanje neke funkcije potrebuje čisto drugačne gradnike kot optimizacija problema trgovskega potnika). Osnovni gradniki v AIS [64] so zastopani v različnih oblikah kot npr. realna števila, Hammingov zapis števil ali katero koli drugo kodiranje, od katerih vsaka oblika nosi svojo posebnost in mora biti izbrana primerno problemu. Nabor mehanizmov za oceno interakcije Ko je predstavitev osnovnih gradnikov izbrana, se uporablja ena ali več oblik meritev afinitete oz. načinov za merjenje interakcije med elementi sistema. To je npr. lahko Hammingova ali evklidska metrika razdalje, ki ponovno ima svojo posebnost. Funkcija afinitete mora prav tako biti izbrana z veliko pozornostjo, saj lahko vpliva na splošno učinkovitost sistema. Postopki prilagajanja Perelson in Oster sta uvedla pojem oblike prostora [55] kot kvantitativen način za opis afinitete med celicami in antigeni. Osnovna ideja oblike prostora je, da stopnja ujemanja med receptorji na površini imunske celice in epitopi (molekularni strukturi, ki se ujema z receptorji) določa trdnost vezave (afiniteto) [64] oz. v kolikšni meri se molekule fizično ujemajo, kar je odvisno od njihove oblike. Količina afinitete določa, kateri tip celic bo stimuliran ter se bo s klonsko selekcijo množil, in kateri tip bo nazadoval. Analogijo ujemanja receptorjev in antigenov lahko na enostaven način predstavimo z ujemanjem ključa in ključavnice. Vrata odpira ključ, ki se poda v ključavnico, medtem ko ujemanje epitopov in receptorjev daleč od perfektnega in vendar lahko pride do stimulacije, ker je stopnja ujemanja ustrezna. Ko modeliramo stopnjo ujemanja, lahko receptor predstavimo s točko (ali obširneje z regijo) v obliki prostora določene dimenzije. Epitop je prav tako predstavljen s točko (ali regijo), afiniteto med njima pa definiramo z razdaljo med točkami. V biološkem okolju dimenzija oblike prostora ni nujno enako fizičnem prostoru, v katerem merimo, ampak število različnih koordinat, ki so potrebne za določitev posplošene oblike vpletenih osebkov (epitopov in receptorjev). 17

19 Algoritmi umetnega imunskega sistema Za enostaven primer vzemimo enodimenzionalni prostor, kjer vsak celični receptor vsebuje nabor dolžin l, in epitopi, ki se povezujejo, morajo imeti dolžino manjšo ali enako dolžini l iz nabora. Afiniteto v tem primeru predstavlja ujemanje dolžin. V tem enodimenzionalnem prostoru imajo receptorji in epitopi gradnike iz realnih števil, afiniteto iz pozitivnih realnih števil pa zapišemo s x [0, l] in l predstavlja maksimalno afiniteto. Za receptor s koordinatami x = (x 1, x 2,... x n ) in epitop z y=(y 1, y 2,... y n ), nam standardna evklidska metrika med njima da afiniteto D(x, y) = n j=1 (x j y j ) 2. Kot poenostavitev sta Perelson in Oster predlagala "prepoznavno žogo" [59] radija B(x) = {y D(x, y) < r} in v tej poenostavitvi odziv lahko zapišemo kot t. Epitopi znotraj radija izzivajo imunski odziv, tisti zunaj pa glede na receptor nimajo nobenega odziva. Velikost žoge (radij r) je v splošnem odvisna od receptorja. Žoga pa ni zmeraj okrogla. Večina modelov AIS algoritmov kljub pomanjkljivostim uporablja diskretno aproksimacijo zveznega prostora, kjer realna števila prinašajo veliko razdrobljenost številk za decimalno vejico in relativno grobo zrnatost ob pogledu večjih vrednosti. Bolj primerna bi bila Hammingova predstavitev v diskretnem prostoru [64], ki uporablja štiri simbole, temelječe na DNA kodiranju (Adenin, Citozin, Gvanin in Timin). Sama predstavitev vsebuje pravila kodiranja receptorjev in epitopov, kot tudi abstrakcijo funkcije prileganja. Večinoma se je s tem ukvarjal Percus v delu»predvidevanje velikosti receptorja T celice in protiteles s kombiniranjem regij z upoštevanjem učinkovitosti razlikovanja sebe in tujka«[54] in naj iz njegovega dela povzamemo definicijo:»element e L, z e=(e 1, e 2,... e L ) se ujema po r-ponovitvenem pravilu, če obstaja pozicija p kjer e i =d i za i=p,, p+r-1, p Lr+1. Torej dva elementa se ujemata, če se ujema r znakov. Slika 3: Primer Hammingovega kodiranja Glavnina raziskav v AIS se osredotoča na tri imunološke teorije: klonsko selekcijo, negativno selekcijo in imunska omrežja. 18

20 Algoritmi umetnega imunskega sistema 3.1 Teorija klonske selekcije (CST) Obstaja kar nekaj algoritmov, ki temeljijo na klonski selekciji in večina se uporablja za reševanje optimizacijskih problemov (npr. CLONALG [13], opt-ia [52], B celičen algoritem BCA [42] in mnogo točkovna optimizacija [16],[19]. Iz računske perspektive ideja klonske selekcije sestoji v algoritmih, ki iterativno izboljšujejo nabor osebkov. Ti rešujejo problem skozi proces kloniranja, mutacije in selekcije, kar je precej podobno genetskim algoritmom. Če se osredotočimo na enostaven primer, kjer za osebke (B celice) lahko rečemo, da je vsaka celica neodvisna entiteta (brez interakcije do ostalih celic), predstavljena kot L-dimenzionalen vektor v, v binarnem Hammingovem zapisu. Ocenitvena funkcija g v populaciji P, se izračuna za vsak g(v), nakar se B celice klonirajo v populacijo C. V populaciji C se dogajajo spremembe (mutacije), za dosego raznolikosti v iskanju rešitev pa se dodajajo tudi naključni osebki. Velikost populacije C je ponavadi enaka velikosti populacije P, vendar to ni nujno zmeraj tako. Mutacije se dogajajo po iterativnem mehanizmu hipermutacijskega operatorja somatskih regij (CRHO), kjer ρ določa verjetnost spremembe vsakega bita v nizu. Za uspešno računanje je vrednost ρ veliko večja kot mutacije v naravi in je bila določena empirično [42]. Za razliko od genetskih algoritmov, BCA in ostalih, algoritmi CST ne uporabljajo operacij križanja. Na poti B celic k globalnem optimumu je za ustavitveni kriterij uporabljena funkcija, ki meri razdaljo do znanega lokalnega optimuma. V kolikor se vrednosti v nekem času ne izboljšajo, se algoritem prisilno ustavi. Algoritem BCA vhod: g(v) = funkcija, ki jo moramo optimizirati izhod: P = populacija osebkov begin 1. Izberi osebke prvotne populacije P v prostoru Σ L, 2. Ponavljaj do ustavitvenega kriterija 2.1. Za vsak v P, preračunaj g(v) in ustvari klonirano populacijo C, 2.2. Izberi naključen v C in izvajaj CRHO, 2.3. Preračunaj g(v ); če g(v ) > g(v) potem zamenjaj v z klonom v, 3. Izpiši populacijo P kot rešitev end. 19

21 Algoritmi umetnega imunskega sistema CST algoritmi [64] so stohastične narave, zato je evolucija populacije v diskretnem prostoru odvisna le od trenutnega stanja sistema (in ne od preteklosti). To pravilo, kot tudi način, kako se izračuna naslednja generacija populacije, velja tudi za Markove verige in lahko to vrsto AIS algoritmov obravnavamo po teh znanih pravilih. Splošen CST algoritem ima populacijo N p osebkov, kjer je vsak osebek x L. je končna množica določene abecede (ponavadi = {0, 1}). Stanje, v katerem se nahaja sistem, lahko zapišemo kot X=(x 1, x 2, x Np ) in prostor kot LNp. Ker je prostor končen, lahko določimo vrednost za katerikoli X, če preštejemo elemente iz LNp ter tako identificiramo vsa stanja od 1 do M, kjer je M = LNp število vseh možnih stanj. Ker je algoritem stohastičen, za vsak korak (ali generacijo) t obstaja naključna spremenljivka X t vrednosti od 1 do M, ki odgovarja stanju sistema. Obnašanje algoritma lahko zakodiramo kot neskončno zaporedje naključnih spremenljivk X 0, X 1, X 2,..., ob tem pa nas zanima verjetnost prehoda v X t in obnašanje sistema kadar t. Naj v t označujejo vrstice enodimenzionalnega vektorja za verjetnostno porazdelitev X t, tako da je j-ta komponenta vektorja v t, j = P (X t = j), kar predstavlja verjetnost, da je sistem v stanju j v času t. Za generičen algoritem klonske selekcije verjetnost, da se sistem premakne iz j v k, v času t + 1, ni odvisna od t. Verjetnostna porazdelitev v času t+1, ob pravilih o pogojeni verjetnosti, se glasi [64]: M P(X (t+1) = k) = j=1 P(X (t+1) = k X t = j)p(x t = j); oz. bolj podrobno M v (t+1,k) = v (t,j) P jk j=1 kjer je P jk = P(X t+1 = k X t = j) verjetnost prehoda iz stanja j v k oziroma P jk = P(X 1 =k X 0 =j), torej zaporedje spremenljivk X t predstavlja homogeno Markovo verigo. Zgornjo enačbo lahko povzamemo v matrični obliki, kot v t+1 = v t P, kjer je P = (P jk ) matrika prehoda, M M prehodnih verjetnosti. Sledi v t = v 0 P t, tako da je asimptotska porazdelitev verige odvisna od mejnega obnašanja P t kadar t. Za posamezno stanje verige j rečemo, da se absorbira, če P jk = 0 za vsak k j oz. ko sistem doseže to stanje, ki ga ne bo nikoli zapustil. Markova veriga se absorbira, če ima vsaj eno absorbno stanje, ki ga je možno doseči iz katerekoli točke. Da bi razumeli konvergenčni dokaz je koristno, da predstavimo še eno teorijo. Stanje j verige, če P(X t =j za nek t 1 X 0 =j) = 1, imenujemo končno. V nasprotnem primeru ga imenujemo prehodno. Če se sistem prične v končnem stanju, je verjetnost, da tam konča, 1. Za prehodno pa ni nujno, da se sistem v njega vrne. 20

22 Algoritmi umetnega imunskega sistema Analiza BCA Algoritmi klonske selekcije se običajno uporabljajo pri optimizaciji funkcij in iskanju rešitev določenih problemov. Zlasti BCA predstavlja tipičen primer imunskega algoritma, ki se uporablja za optimizacijo, medtem ko je za bolj splošen problem večkriterijske optimizacije uporabljan MISA [19], kot večkriterijski algoritem umetnega imunskega sistema. Preden se osredotočimo na podrobnosti B celičnega algoritma [64], je vredno poudariti podobnosti med AIS algoritmi klonske selekcije in genetskimi algoritmi (GA). Z nastavitvijo matrike prehoda vidimo bolj pregledno analizo, kako se značilnosti Markove verige ujemajo z operatorji algoritma. Evolucijski algoritmi so že kar nekaj časa modelirani po principu Markovih verig. Nix in Vose [53] sta npr. predstavila natančen model Markove verige preprostega genetskega algoritma, ki je bil analiziran v številnih študijah. Model ne prikazuje konvergentnosti GA, čeprav se izkaže, da je z dodatnim pogojem elitizmom, algoritem konvergenten. Pravzaprav novejše raziskave s strani G. Rudolpha [58] govorijo o splošnih zadostnih pogojih za konvergenco. Torej je dovolj, da so ti pogoji izpolnjeni in ni potrebe po podrobnem modeliranju. V tem smislu obstaja splošno ogrodje za razumevanje konvergence GA, kar vleče vzporednico splošnemu matematičnemu ogrodju, ki bi omogočil prikaz konvergence kompletni AIS družini algoritmov, namesto iskanja specifičnega dokaza za vsak algoritem posebej. V. Cutello, G. Nicosia, P. Oliveto, M. Romeo [20] govorijo prav o takem modelu v študiji "O konvergenci imunskih algoritmov", ki vključuje izbiro različnih shem hipermutacije, staranja in drugih zadostnih pogojev za konvergenco. Ena izmed najbolj zanimivih značilnosti BCA je operator predstavljen s strani E. Clark, A. Hone, J. Timmis, v študiji "Model Markove verige za BCA" [15] kot uvod v dokaz konvergence. Iz strukture operatorja mutacije je mogoče razumeti najpomembnejše značilnosti prehoda matrike P, povezane z algoritmom. Kot je bilo že omenjeno, BCA vzdržuje dve populaciji rešitev: nabor v spominskih celicah in bazen klonov. V primeru, ko ima bazen klonov C samo enega člana, je možno dobiti formulo verjetnosti vseh možnih mutacij (dokaz je mogoče razširiti za primer poljubne velikosti klonskega bazena). Seštevek teh verjetnosti dobimo s preštevanjem vseh možnih načinov pojavljanja enake mutacije. Naj bo f T verjetnost prehoda iz nič do nekega števila T (Tstanje niza dolžine L), torej velja [64]: a L 1 A f T = 1 [ (1 ρ)(m+1 n k) ρ k + n(1 ρ) (L+1 n k) ρ k ], L2 n=1 m=b n=1 21

23 Algoritmi umetnega imunskega sistema kjer je: a položaj prvega zamenjanega bita in b položaj zadnjega zamenjanega bita (oba merjena z razdaljo od najbolj pomembnega bita), k je skupno število bitov, ki jih je treba obrniti pri mutaciji od 0 do T in ρ je verjetnost, da je bit mutiran v sosedno regijo. V tem okolju imamo 0 T 2 L 1, a b L in 0 ρ 1. Enačbo lahko uporabimo za računanje verjetnosti vseh mutacij, ki niso enake nič in ta formula je dovolj splošna, da se lahko uporablja tudi za Gray-evo ali katerokoli drugo binarno kodiranje sistema. Naj bodo ne-optimalna stanja prehodna za 0<ρ<1 in matrika elementov naj vsebuje le bite, ki niso enaki 0. Jasno je, da bo f T >0, če je (1-ρ)>0 in ρ>0. Možno je doseči lokalni optimum v enem koraku iz kateregakoli začetnega stanja, ne glede na podrobnosti primerjalne funkcije. Torej za ne-optimalno stanje j je verjetnost, da ostane v tem stanju za en časovni korak p=p jj <1. Potem ko lokalni optimum preide v stanje večje afinitete, se v lokalni optimum ne vrne nikoli več, saj verjetnost prehodne matrice prepoveduje prehode v enako ali nižjo afiniteto. Tako sledi, da če P jk (n) je j, k nivo P n potem [64]: P jj (n) = p n n=0 kjer sledi, da je stanje j prehodno. n=0 = 1 1 p < 3.2 Algoritem negativne selekcije Osnovna ideja algoritma negativne selekcije je ustvariti več detektorjev v komplementarni nabor N in nato uporabiti te detektorje za razvrstitev novih podatkov kot lastnih vrednosti ali tujkov. Algoritmi negativne selekcije se v veliki meri uporabljajo v raziskavah AIS in so bili med razvojem podvrženi številnim spremembam. Kot osnovo vzemimo študijo S. Forrest, A.S. Perelson, L. Allen in R. Cherukuri iz leta 1994 s simpozija o razvoju in varnosti o "Ločevanje lastnih vrednosti tujkov v računalniku" [27]. Tam opisan algoritem lahko povzamemo v naslednjih korakih: vhod: S = nabor lastnih vrednosti izhod: D = nabor generiranih detektorjev begin 1. Določi lastne vrednosti kot nabor elementov S v prostoru Σ L, 2. Generiraj nabor detektorjev D, tako da se vsak element iz D ne ujema z elementi iz S. 3. Preglej δ Σ L z nenehnim ujemanjem detektorjev D proti δ. Vrednosti, ki se ujemajo označimo kot lastne, ostale kot tujke. end. 22

24 Algoritmi umetnega imunskega sistema Oblika prostora Σ L vsebuje nabor lastnih vrednosti S Σ L ter nabor tujkov N Σ L, ki je komplement N = Σ L \ S, tako da Σ L = S N in S N =. Slika 4: Primer principa negativne selekcije [64] Algoritem negativne selekcije je eden izmed najbolj pogosto uporabljenih algoritmov za reševanje problemov odkrivanja anomalij. V realnem svetu se izkaže, da je ugotovitev učinkovitih r-mestnih detektorjev računsko neizvedljiva, če dolžina ujemanja r prevelika (npr. r>32). Pri analizi naključnega generiranja detektorjev se osredotočimo na k-cnf zadostitveni problem ter ugotovitev, da je iskanje detektorjev ekvivalent iskanju dodelitvenih nizov k-cnf primerov. Verjetnost zaznave naključne generacije detektorjev Aproksimacija verjetnosti naključno najdenega detektorja iz prostora {0,1} L (pri uporabi pravila ujemanja r-dolžine) izhaja iz naključno sestavljenega antigena in rezultatov iz teorije verjetnosti, kjer je problem formuliran kot: "Zaporedje n znakov S in F, ki vsebuje 23

25 Algoritmi umetnega imunskega sistema toliko S nizov dolžine r, kot je neprekrivajočih neprekinjenih blokov, ki vsebujejo le zaporedja S dolžine r. je [64]: Verjetnost neuspeha L poskusov nizov dolžine r z rezultati S (uspeh), F (neuspeh) 1 px. 1 kjer p = q = 1 in x = 1 + (r+1 rx)q x L+1 2 qpr + (r + 1)(qp r ) Zgornji izraz lahko pretvorimo v verjetnost uspeha, da detektor prepozna naključni antigen: P WF = 1 ( 1 px. 1 (r+1 rx)q x L+1) Naj bo {0, 1} L prostor v Hammingovem zapisu, {D 0, D, S} {0, 1} L in D 0 = število začetnih detektorjev (pred negativno selekcijo) D = število detektorjev (po negativni selekciji) S = število lastnih elementov v S P WF = verjetnost iz enačbe zgoraj P S = verjetnost naključnega elementa iz {0, 1} L, ki se ne ujema z elementom iz S = (1 P WF ) S e P WF S P fail = verjetnost, da D detektorji ne odkrijejo tujega bitnega niza. P fail = (1 P WF ) D e P WF D Glede na vnaprej določeno število naključno pripravljenih začetnih detektorjev D 0, S in P WF, dobimo število primernih detektorjev D, ki se ne ujemajo z nobenim elementom iz S, kot sledi: D = D 0 P S. Število detektorjev D, ki ne zazna tujega bitnega niza z verjetnostjo P fail je D = ln (P fail). Iz obeh enačb za D pa dobimo število začetnih P WF detektorjev D 0 = ln (P fail), kar pomeni, da za detekcijo tujega bitnega niza ob P WF P S verjetnosti P fail, kjer D detektorjev ne zazna tujega bitnega niza, potrebujemo D 0 začetnih detektorjev. S preoblikovanjem zgornje enačbe v e PWF S ( ln(p fail) ) se zdi, da D 0, oz. število začetnih detektorjev raste eksponentno s S in da ta naključni pristop iskanja postane neizvedljiv za velik S. P WF Povezava med detektorji dolžine r in k-cnf zadostitvenim problemom Boolean zadostitveni problem lahko oblikujemo v smislu problema odločitve oziroma v jeziku SAT [18] in sicer kot formulo v normalni konjunktivni obliki (CNF). K-CNF Boolova formula je zadostna, če obstaja niz vrednosti (0 lažnih in 1 resničnih), ki povzroči, da je skupna vrednost formule 1, torej ima logično vrednost true. 24

26 Algoritmi umetnega imunskega sistema Kompleksnost L-k-CNF Iskanje vseh r-mestnih detektorjev zahteva najmanj Ω (2 k ) vrednotenj bitnih nizov, kar utemeljuje dejstvo, da je Ω (2 k ) ocen potrebnih, da najdemo vse zadovoljive nabore za prvi stavek vsakega od s S. Preostale (l-r) stavke od vseh s S je treba preveriti, in ugotoviti, za katerega od njih zadošča O( S 2 k ) izračunov. K-CNF zadostitveni problem je odločitveni problem, kjer je vhod boolean formula f in izhod logična vrednost "da", če je f zadovoljiva in "ne" v nasprotnem primeru. Trenutno najhitrejši znani determinističen algoritem, ki rešuje 3-CNF [34] problem, potrebuje O (1.473 n ), pri čemer je n število spremenljivk. Radi bi poudarili še, da k-cnf algoritmi odločajo, kdaj je boolean formula zadovoljiva, vendar ne vrača vseh možnih rešitev. 3.3 Imunske mreže ainet algoritem sta razvila avtorja de Castro in von Zuben [9]. Cilj je najti čim manjši niz točk, ki natančno predstavljajo nabor vhodnih točk, oz. zgoščen vhodni niz, sestavljen s čim manj redundance. Razvoj populacije k nizu učinkovitih detektorjev je zelo podoben CST pristopu, s to razliko, da je interakcija med člani populacije preko mehanizma zatiranja, kar pomeni, da člane, katerih rezultat medsebojne tekme pade pod določeno mejo, odstranimo. Poenostavljeno različico ainet lahko opišemo kot: vhod: G = vzorec za prepoznavo, množica N naključnih detektorjev, število najboljših protiteles n izhod: M = množica generiranih detektorjev, ki znajo prepoznati vhodni vzorec begin 1. Ustvari začetno naključno populacijo B. 2. Ponovi za vsak naučen vzorec: 2.1. Vsakemu članu iz N določi inverzno razdaljo za vzorec v B, 2.2. Izberi n članov iz B, ki se najbolje ujemajo z vzorcem 2.3. Kloniraj in mutiraj n članov v razmerju s tem, kako dobro se prilegajo vzorcu Ohrani člana z najvišjim ujemanjem n in ga shrani v niz M 2.5. S pomočjo omrežja izvedi tekmo v M in odstrani šibke člane iz M 2.6. Ustvari b naključnih elementov in jih shrani v B end. 25

27 Algoritmi umetnega imunskega sistema Teoretična podlaga algoritmov imunskega omrežja Navdih AIS algoritmov izhaja iz modelov teoretične imunologije, predstavljene že leta 1986 v članku J.D. Farmer, N.H. Packard, A.S. Perelson, z naslovom "Imunski sistem, prilagoditve in strojno učenje" [26]. Ti modeli so oblikovani v smislu avtomatov, diferencialnih enačb ter nelinearnih diferencialnih enačb za mreže celic in populacije antigenov. Ob tem, da teorija dinamičnih sistemov vsebuje široko paleto orodij za analizo nelinearnih modelov, se vprašamo, ali bi lahko ta orodja uporabili tudi za reševanje AIS. Glede na to, da je število imunskih celic v človeškem telesu reda 10 12, je smiselno uporabiti zvezni model populacije limfocitov (diferencialnih enačb), kjer je število celic, ki predstavljajo populacijo klonov, med deset in sto. Ne glede na to, ali je izbran zvezni ali diskretni dinamični model, je le-ta v celoti determinističen, medtem pa se AIS naslanja na algoritme CST, ki so po naravi stohastični. Algoritmi imunskega omrežja imajo dva glavna dela: sistem diferencialnih enačb, ki opisuje interakcije v omrežju in kako se populacija razvija s časom ter nabor pravil za spreminjanje in posodabljanje vezi medsebojnega delovanja, spreminjanje velikosti populacije in spreminjanje osebkov v omrežju. Kadar se populacija spreminja zelo hitro, se mreža obnaša kot zvezen Markov proces in ne kot determinističen. Tudi če nam je jasno, kako se sistem (kjer velikost omrežja ostaja nespremenjena) obnaša v zelo kratkem času, je težko napovedati njegovo obnašanje za daljše časovno obdobje, kar predstavlja velik izziv za dinamično modeliranje omrežnih algoritmov AIS. 26

28 Zgodovina raziskav algoritmov umetnega imunskega sistema 4 ZGODOVINA RAZISKAV ALGORITMOV UMETNEGA IMUNSKEGA SISTEMA Teorije umetnega imunskega sistema, kakor tudi sam pojem "AIS" so se začeli pojavljati po letu Osnutki idej so vidni že prej, kakor na primer v delu F. M. Burnet-a z naslovom "Teorija klonske selekcije pridobljene imunosti" [8], izdane leta 1959, s strani založbe Univerze v Cambridgeu in v delu N. K. Jerne z naslovom "K mrežni teoriji imunskega sistema, anali imunologije" [39] iz leta Začetki AIS (raziskave pred 1990) Prve teoretične osnove opisujejo šele J. D. Farmer, N. H. Packard in A. S. Perelson v "Imunski sistem, prilagoditev in strojno učenje" [26] iz leta 1986, ter ostala dela kot "Teorija imunskih mrež" [26] (A. S. Perelson, 1989) in "Kognitivna omrežja: imunska, nevronska in druga" [67] (F. Varela, A. Coutinho, B. Dupire, N. Vaz, 1988). Pomembnost teh del je dejstvo, da opisujejo teorijo klonske selekcije, negativno selekcijo in imunske mreže kot koncepte gradnje algoritmov. 4.2 Obdobje pionirjev AIS (raziskave med 1990 in 2000) Prvi aplikativni primeri segajo v leto 1990, kjer z uporabo imunskih mrež avtorja H. Bersini in F. S. Varela [7] opisujeta reševanje problema uravnoteženja vozička ter v leto 1994, kjer je algoritem na principu negativne selekcije uporabljen v primeru reševanja računalniške varnosti. Članek, ki so ga leta 1994 napisali S. Forrest, A. S. Perelson, L. Allen, R. Cherukuri [27] je imel velik vpliv na nastanek bodočih člankov na temo reševanja problemov z algoritmi umetnega imunskega sistema. Razen naštetih avtorjev so v tem obdobju svoja dela prispevali tudi R. R. Hightower [33], S. Hofmeyr in A. Somayaji [62]. Kar se drugih zgodnjih del tiče, je potrebno izpostaviti tudi delo o porazdeljenem diagnostičnem sistemu, ki temelji na interakciji znotraj imunskega sistema avtorja Y. Ishide [38], v letu Avtor je po seriji podobnih člankov napisal knjigo o sistemih, ki temeljijo na imunskem sistemu. V sredini 90-tih se je AIS iz množice biološko motiviranih algoritmov formiral v lastno skupino. Kephart [41] in Dasgupta [23] sta Forrestino [27] delo nadaljevala in izvedla obsežne študije o negativni selekciji algoritmov. Hunt in Cooke [17] sta začela delati na imunskem omrežnem modelu v letu 1995, ga v naslednjih letih razširila preko del: "Učenje 27

29 Zgodovina raziskav algoritmov umetnega imunskega sistema z uporabo umetnega imunskega sistema" [36], "Razvoj umetnega imunskega sistema za uporabo v vsakdanjih aplikacijah" [37] in svoje teorije v zbrani obliki prepisala, poenostavila in dala v prosto uporabo. 4.3 AIS kot uveljavljena skupina algoritmov (raziskave med 2000 in 2010) "Umetni imunski sistem: tehnike podatkovne obdelave navdihnjene s strani imunskega sistema" [63] kot doktorska disertacija avtorja J. Timmisa iz leta 2000 je na področju strojnega učenja pritegnila mnoge druge avtorje, kot na primer: S. Wierzchon, V. Kuzelewska [72], M. Neal [51]. Tudi delo "Izkoriščanje analogije med imunologijo in raztresenim porazdeljenim spominom: sistem za povezovanje premikajočih podatkov v množice." E. Harta in P. Rossa [31] iz leta 2002 je pripomoglo k nadaljnjim raziskavam s strani A. Watkinsa, J. Timmisa, L. Boggessa v delu "AIRS (Umetni imunski sistem prepoznave): imunsko navdihnjen nadzorovan algoritem strojnega učenja" [71]. Naslednje delo "Preiskava vira moči AIRS, kot umetnega imunskega sistema za razvrščanje." so napisali Goodman, Boggess, in Watkin [29], dodatne raziskave pa so A. Watkinsa privedle do pisanja doktorske disertacije iz "Izkoriščanje imunoloških metafor za razvoj vzporednih, zaporednih in porazdeljenih učečih se algoritmov" [70]. Ob bok drugim znanim avtorjem sta se leta 2001 zapisala tudi L. N. De Castro in F. J. Von Zuben tako na področju teorije klonske selekcije [13] kot tudi imunskih omrežij [11]. Razen strojnega učenja se je od leta 2000 umetni imunski sistem pričel uporabljati za reševanje problemov na mnogih področjih: računalniška varnost, optimizacija numeričnih funkcij, kombinatorična optimizacija (problem trgovskega potnika in porazdelitev dela v delovnem procesu), učenje, bio-informatika, obdelava slik, robotika, adaptivni sistemi kontrole, prepoznavanje virusov, podatkovno rudarjenje itd. Naraščajoče zanimanje za algoritme na principu umetnega imunskega sistema je združevalo številne raziskovalce, kar je posledično privedlo do nastanka internacionalne konference ICARIS (International Conference on Artificial Immune Systems), ki se prireja od leta 2002 naprej. Gradivo, predstavljeno na tej konferenci, služi kot referenca na mnogih področjih AIS tako na teoretičnem kot tudi aplikativnem nivoju. 4.4 Najnovejše raziskave (od 2010 do danes) Obdobje najnovejših raziskav vsebuje glavnino neraziskanih in medijsko neprepoznanih del, ki slonijo na temeljih, postavljenih s strani prej naštetih avtorjev. S 28

30 Zgodovina raziskav algoritmov umetnega imunskega sistema pomočjo Web Of Science in Science Direct je možno iskanje po ključnih besedah in kot rezultat dobimo članke, objavljene v priznanih revijah (kot npr. Elsevier). Naštejemo nekaj takih prispevkov: - Monitoring applications: An immune inspired algorithm for software-fault detection. [46] - A novel fuzzy hybrid quantum artificial immune clustering algorithm based on cloud model. [73] - MAIS-IDS: A distributed intrusion detection system using multi-agent AIS approach. [60] - Immune clonal coevolutionary algorithm for dynamic multiobjective optimization. [61] - Integration of artificial immune network and K-means for cluster analysis. [44] - An artificial immune network for multiobjective optimization problems. [45] - Heterogeneous computing and grid scheduling with parallel biologically inspired hybrid heuristics. [69] - Reference direction based immune clone algorithm for many-objective optimization. [47] - An AIS-based hybrid algorithm for static job shop scheduling problem. [56] - An Intelligent Artificial System : Artificial Immune based Hybrid Genetic Algorithm for the Vehicle Routing Problem. [35] - Constrained Optimization via Artificial Immune System. [74] - Implementation of Immunological Algorithms in Solving Optimization Problems. [14] - A Survey on Biologically Inspired Algorithms for Computer Networking. [75] 29

31 Primeri uporabe algoritmov umetnega imunskega sistema 5 PRIMERI UPORABE ALGORITMOV UMETNEGA IMUNSKEGA SISTEMA Po vseh teoretičnih obravnavah je še zmeraj ostalo vprašanje, kje se ti algoritmi največ uporabljajo, kako se odrežejo ob zadanih nalogah in kako so primerljivi z drugimi algoritmi. Kot je nakazano že v 4. poglavju, je spekter uporabe AIS zelo širok. Prva sta seznam uporabe razdelala Leandro Nunes de Castro in Fernando José Von Zuben [12] v letu Drug seznam, ki so se ga lotili Dipankar Dasgupta, Senhua Yu in Fernando Nino [24], je bil objavljen 2011 in se nanaša na modele uporabe, ki so se skozi čas razvijali. Prva klasifikacija je razdelana pod "AIS aplikacije pred 2000" in druga kot "AIS aplikacije od 2000 in primeri uporabe AIS algoritmov v obdobju najnovejših raziskav". Seznam različnih prilagoditev oz. modifikacij algoritmov iz drugega dela je zanimiv v primeru dodatnega proučevanja obstoječih algoritmov. 5.1 AIS aplikacije pred 2000 Robotika Pri pobiranju smeti robot imunoid na vsakem koraku porablja energijo in ne sme ostati brez nje. Antigeni so zadolženi za informacijo o smeteh, ovirah, bazi in količini energije. Množica protiteles zgrajenih na danih antigenih skrbi za pravilno obnašanje robota. Model sta razvila Ishiguro in Watanabe [12]. V porazdeljenem avtonomnem robotskem sistemu roboti individualno razumejo smisel sistema, okolje in obnašanje drugih robotov. Pri tem se pri dosegu cilja sami odločajo o sodelovanju z drugimi roboti. Strategije se med roboti izmenjujejo s pomočjo kloniranja, imunski sistem pa kontrolira obnašanje in prilagajanje med roboti. Model sta razvila Jun in Lee [12]. Optimizacija Avtorja Endo in Toma [12] sta se reševanja problema n-trgovskih potnikov (N-TSP) lotila s prilagojevalnim optimizacijskim algoritmom, ki temelji na modelu imunske mreže in predstavitvi MHC peptidov. V modelu principi imunske mreže predstavljajo obnašanje potnikov, MHC pa predstavlja tekmovalnost med potniki. Potniki vsebujejo senzor, ki posnema predstavitev MHC peptidov z makrofagi, T celice kontrolirajo obnašanje in B celice predstavljajo obnašanje potnikov. 30

32 Primeri uporabe algoritmov umetnega imunskega sistema Odkrivanje nepravilnosti: Forrest [27] je raziskovala varnost računalnikov. Teorija je bila predstavljena kot razumevanje razlike med lastnimi podatki in podtaknjenimi podatki. Iz lastnih podatkov se najprej tvorijo osebki imunskega sistema. Po določenem času ti preverjajo, ali so bili prvotni podatki spremenjeni. Deaton [12] je predstavil negativno selekcijo na osnovi DNA. Postopek je enak kot pri prejšnjem primeru, le da ta izkorišča načelo spajanja A-T in C-G elementov iz DNA teorije. Lastni podatki se lahko spojijo z generiranimi, spremenjeni pa ne. Kephart [41] je predstavil prepoznavanje in uničevanje virusov, kjer je množica protiteles po principu imunskega sistema prepoznavala in odstranjevala viruse. Poseben poudarek je avtor posvetil avtoimunem odzivu (zamenjavi legitimne programske opreme z virusom). Učenje Avtorja Forrest in Perelson [27] sta pri razpoznavanju vzorcev uporabila model binarnega imunskega sistema in z njim raziskovala ohranjevanje raznolikosti in možnost detektiranja običajnih shem, ki se izmenjujejo med antigeni. Zanimivost pristopa je v uporabi poljubnega (*) simbola, tako da so nizi sestavljeni iz {0,1,*} množice znakov. Rezultat je razvoj protitelesa, ki skozi detekcijo običajnih shem ustreza raznim antigenom. Potter in De Jong [12] sta raziskovala konceptualno učenje, tako da sta zgradila model imunskega sistema, ki za dan koncept najde razliko med vzorcem in proti-vzorcem. Model je omejen na sodelovanje med B celicami in protitelesi. Pri konceptualnem učenju se uporablja tako, da pozitivne in negativne vzorce enači z lastnimi in tujimi molekulami. V primeru vzorcev brez šuma algoritem prepozna vse tuje in nobenega lastnega vzorca. 5.2 AIS aplikacije od 2000 in primeri uporabe AIS algoritmov v obdobju najnovejših raziskav Teorija klonske selekcije se je razvijala skozi CLONALG algoritem s strani L. N. D. Castra in F. J. V. Zubena [13] med letoma 2000 in Ciccazzo [24] je 2008 predstavil nov algoritem EIP (elitistično imunsko programiranje). Halavati [24] je 2007 CLONALG razširil za delo po pod-problemih, kjer manjkajoča protitelesa dobimo z naključnimi. May [24] je 2007 predstavil variacijo CLONALG za testiranje mutacij, kjer vsako protitelo predstavlja samostojni test in rezultat mutacij ovrednoti afinitito (oz. ocenitveno funkcijo). 31

33 Primeri uporabe algoritmov umetnega imunskega sistema Cuttelo [24] je 2007 v algoritem dodal inverzno hipermutacijo in hipermakromutacijo. Wilson [24] je 2006 CLONALG nadomestil s TEA (algoritem evalvacije trenda). Negativno selekcijo (NSA) je 1994 začela razvijati Forrest [27] in leta 2007 je Dasgupta [24] naredil revizijo. Gao je 2006 predstavil genetski algoritem na osnovi optimizacijske sheme negativne selekcije in v vzporednem članku metodo klonske optimizacije NSA za iskanje anomalij. Shapiro [24] je 2006 hiper kroglo zamenjal s hiper elipsoidnimi detektorji ter nad temi detektorji izvajal optimizacijo s pomočjo evolucijskih algoritmov (EA). Ostaszewski [24] je tekom 2006 in 2007 z genetskimi algoritmi in koevolucijskimi algoritmi preiskoval detektorje hiper kvadra. Luo [24] je 2006 prispeval več člankov. V enem je predlagal r[]-nsa algoritem bitnih nizov, v drugem pa hevristično metodo kreiranja detektorjev iz elementov {0, 1, *}. V naslednjem članku iz leta 2007 predstavi hiter algoritem negativne selekcije z raziskovanjem ujemanja vzorcev, medtem ko v članku iz leta 2005 dvo-evolucijski negativno selekcijski algoritem (ENSA). Ma [24] je 2008 predlagal mehanizem povratnih informacij antigenov za kreiranje efektivnih detektorjev. Chmielewski [24] je 2006 uporabil drevesno strukturo za pohitritev zmogljivosti V detektorjev. Stibor [24] je 2005 detekcijo lastnih vrednosti opredelil v območju znotraj radija r s ter metodo na istem vzorcu primerjal z V-detektorsko in SVM. V 2006 je za iskanje lukenj v anomalijah [24] ugotavljal, da je nujno potreben negativni bitni niz, luknje pa predstavljajo neznane lastne vrednosti. Še v enem članku [24] iz istega leta je raziskoval nepravilno posploševanje in semantično predstavitev z uporabo Hammingove negativne selekcije. V letu 2007 je s pristopom naključnega iskanja v k-cnf problemu [24] ugotavljal, da je v prehodni regiji iskanje detektorjev najtežje in da lahko razdaljo merimo s pomočjo modeliranja verjetnosti. V istem letu je Caldas [24] predstavil nov algoritem selekcije, temelječ na algoritmu negativne selekcije in teoriji odločanja. Odločitve se shranjujejo v podatkovno bazo, vsaka celica pa predstavlja odločitveni problem, ki je razrešitev evalvacije n-receptorjev. Graaff [24] je v 2006 predstavil genetski umetni imunski sistem (GAIS), kjer dobimo dinamični nabor umetnih limfocitov (ALC) s pomočjo genetskih algoritmov. Imunske mreže so se začele pojavljati že 1974, ko je Jerne [39] predstavil teorijo, kjer mreža B celic lahko doseže imunološki spomin. Farmer [24] je 1986 predstavil model simulirana imunska mreža, 1990 pa je Ishida [38] na tem modelu zgradil prvi algoritem. Hunt in Cooke [24] sta v 1996 prvotna dela razširila z mrežo B celic iz kostnega mozga in populacijo antigenov, ki mrežo naključno dopolnjujejo. V 1999 je Hunt [24] prepisal prvotni model in njegovo implementacijo v Javi poimenoval Jisys [37]. Uporablja relacijsko podatkovno bazo, populacija B celic pa se deli na dva dela prvotno, ki se zgradi iz 32

34 Primeri uporabe algoritmov umetnega imunskega sistema naključnih antigenov in klonirano. Klonirana uporablja funkcije genetskih algoritmov in teorijo omrežij. Implementacijo je ponovno definiral in popravil Timmis [24] v letu Razširil jo je naslednje leto in algoritme razdelil na AINE, razširjen AINE, zabrisan AINE in dinamično obtežen AINE. V splošnem si AINE izposoja osnovne ideje iz CST, saj se B celice klonirajo, mutirajo in so podvržene postopku izbire, preden se pojavijo v mreži. Castro je v 2001 predstavil ainet [9] kot učeči se algoritem. Čeprav spada v podvrsto AINE, popolnoma temelji na CST (saj vsebuje razmnoževanje, mutacijo in selekcijo) je Castro [10] za reševanje optimizacijskih problemov multi-modalnih funkcij definiral optainet, ki lahko dinamično prilagaja velikost populacije, ima možnost preiskovanja okolice z eksploracijo in eksploatacijo [22] ter za dosego boljših rezultatov uporablja lokalne in globalne metode iskanja. V 2007 je Pacheco [24] predstavil algoritem abstraktnega imunskega sistema, ki temelji na Farmerjevem modelu iz leta V 2006 sta Schmidtchen in Behn [24] preiskovala minimalističen model idiotopskega omrežja B limfocitov, kjer bitni nizi predstavljajo vozlišča omrežja ter da naključna evolucija lahko zgradi omrežje visoko organizirane arhitekture. Večina prispevka temelji na razlagi teh kompleksnih mrežnih struktur in podrobnem analitičnem razumevanju postopkov gradnje ter na preračunavanju velikosti in povezljivosti idiotopskih skupin. V 2006 sta Coelho in Zuben [24] objavila članek o omni-ainet algoritmu za preračunavanje enojnih in večtočkovnih optimizacijskih problemov z eno ali več rešitvami, ki je poenotil koncepte omni-optimizacije. Eksploracija se avtomatsko prilagaja preiskovanemu prostoru, velikost vzorca se spreminja glede na prenastavljeno velikost, razpršenost iskanja se po posebnem mrežnem mehanizmu porazdeli po preiskovanem prostoru sta Coelho in Zuben [24] objavila študijo o MOM-AiNet kot večtočkovni večpopulacijski umetni imunski omrežni algoritem, ki se od drugih razlikuje po tem, da vrača več nedominantnih rešitev v primerjavi z ostalimi algoritmi, ki vračajo eno dominantno rešitev. Kot zadnjega izmed naštetih omrežnih imunskih algoritmov naj omenimo še opt-ainet-aa-clust, podvrsto optainet, ki so ga Secker, Timmis in drugi [24] implementirali v Ta se razlikuje po novi predstavitvi proteinov, ki omogočajo večjo natančnost predvidevanja v hierarhičnih klasifikacijskih algoritmih z napovedovanjem funkcije proteinov. 33

35 Drugi moderni metahevristični algoritmi 6 DRUGI MODERNI METAHEVRISTIČNI ALGORITMI Metahevristike so strategije, ki usmerjajo proces iskanja po poljubno velikem prostoru, kjer imamo o samem problemu zelo malo ali nič predpostavk. Tehnike iskanja vključujejo enostavna iskanja kakor tudi zapletene procese učenja. Mnogi metahevristični algoritmi se zgledujejo po naravnih sistemih, njihovo računanje pa temelji na strategijah lokalnega in globalnega preiskovanja. Med algoritme spadajo: optimizacija s kolonijami mravelj, optimizacija z roji delcev, evolucijski računanje, algoritem kolonije čebel itd. Algoritmi, ki so opisani v nadaljevanju, sodelujejo v osmem poglavju, kjer primeramo njihove rezultate z rezultati AIS algoritmov. 6.1 PSO (optimizacija z roji delcev) Optimizacija z roji delcev (PSO) je računska metoda, ki optimizira rešitev problema z iterativno uporabo kriterijske funkcije za evalvacijo kandidatov. Optimizacija populacije (rešitev) poteka s premikanjem delcev po preiskovanem prostoru po principu preprostih matematičnih formul, ki upoštevajo položaj delca in hitrost. Na gibanje vsakega delca vpliva lokalni optimum ter ostale pozicije rešitev, pridobljene s premikanjem v iskalnem prostoru, kjer je samoumevno, da se roj premakne proti najboljši rešitvi. Začetke PSO so osnovali Kennedy, Eberhart in Shi [6] kot simulacijo socialnega vedenja. Z določenimi poenostavitvami so opazili, da je algoritem možno uporabljati za optimizacijo. PSO je metahevrističen, saj ne pozna podrobnosti problema in lahko preišče zelo velik prostor rešitev, kar pa samo po sebi ne zagotavlja najdbe optimalne rešitve. PSO ne zahteva, da mora biti problem optimizacije odvedljiv, kot to zahtevajo klasične optimizacijske metode in se lahko uporablja tudi na optimizacijskih problemih, katerih krivulje so nepravilnih oblik, vsebujejo šum, ali pa se spreminjajo s časom. Osnovna različica PSO algoritma ima populacijo kandidatov rešitev, imenovano roj delcev. Z S označimo število vseh delcev v roju. Vsak delec naj ima položaj x i R n in hitrost v i R n. Naj bo p i najboljši položaj delca i in g najboljši položaj celotnega roja. Ocenitvena funkcija je predstavljena kot vektor realnih števil (f: R n R), katere rešitev prav tako predstavlja realno število. Cilj je najti tak a, v f(a) f(b) za vse b v preiskovanem prostoru, kjer a predstavlja globalni minimum, oz. njegovo nasprotje, ki predstavlja globalni maksimum. Na sam rezultat pa zelo vpliva tudi izbira parametrov algoritma in obravnavanje podmnožic v primeru konvergence. begin 1. Za vsak delec i=1,, S: 34

36 Drugi moderni metahevristični algoritmi 1.1. vzpostavi položaj naključnih vektorjev x i ~ U(b lo, b up ), kjer sta b lo spodnja in b up zgornja meja preiskovanega prostora 1.2. vzpostavi najboljši položaj delca p i x i glede na začetni položaj 1.3. če (f(p i ) < f(g)) shrani najboljši položaj roja: g p i 1.4. vzpostavi hitrost delca v i ~ U(- b up -b lo, b up -b lo ) 2. Dokler ustavitveni kriterij (npr. število iteracij) ni dosežen ponavljaj za vsak delec i=1,, S: 2.1. izberi naključne vrednosti r p, r g ~ U(0,1) 2.2. osveži hitrost delca v i,d ω v i,d + φ p r p (p i,d -x i,d ) + φ g r g (g d -x i,d ) 2.3. osveži položaj delca x i x i + v i 2.4. če (f(x i ) < f(p i )) shrani najboljši položaj delca p i x i 2.5. če (f(p i ) < f(g)) shrani najboljši položaj roja: g p i 3. Ko je ustavitveni kriterij dosežen, g predstavlja rešitev. end. Velikokrat se osnoven PSO ujame v lokalni maksimum. Mnogi to rešujejo ne le s pravilno izbiro parametrov, ampak tudi s topologijo (povezavo delca s sosedi in kreiranjem komunikacijske mreže med njimi). Poznamo različne topologije: obroč (najbolj poznana), polno povezan (kot obroč, vendar so vsi delci med seboj povezani), mreža, stohastična zvezda, drevo itd. Kadar PSO uporabljamo za večtočkovno optimizacijo, se možica delcev združi v pareto fronto in se primerjava vrši med različnimi frontami. Zraven PSO algoritma z realnimi števili poznamo še: binarne, diskretne in kombinatorične PSO. 6.2 DE (diferencialna evolucija) Diferencialna evolucija (DE) je metoda, ki optimizira rešitve kandidatov (agentov) s premikanjem le-teh po preiskovanem prostoru. Kakor PSO je tudi DE metahevristična in se prav tako uporablja na optimizacijskih problemih, katerih krivulje so nepravilnih oblik, vsebujejo šum, ali pa se spreminjajo s časom. Njene začetke sta zasnovala Storn in Price [4]. Tudi na rešitve DE precej vpliva izbira parametrov F (diferencialna utež), CR (verjetnost križanja) in NP (velikost populacije). begin 1. Izberi naključne položaje za vse agente 2. Ponavljaj za vsakega agenta x v populaciji dokler ustavitveni kriterij (npr. število iteracij) ni dosežen: 2.1. izberi 3 naključne od x različne agente a, b, c 2.2. izberi naključni indeks R {1,, n}, kjer je n dimenzija problema 2.3. izračunaj agentov naslednji položaj y = [y 1,, y n ] kjer za vsak i izberemo enakomerno porazdeljeno številko r i U(0,1) 35

37 Drugi moderni metahevristični algoritmi 2.4. če r i < CR ali i = R je y i = a i + F x(b i -c i ) drugače y i = x i 2.5. če (f(y) < f(x)) zamenjaj agenta x z agentom y 3. Ko je ustavitveni kriterij dosežen, agent z najboljšo ocenitveno funkcijo predstavlja rešitev. end. 6.3 ABC (algoritem kolonije čebel) ABC je optimizacijski algoritem, ki temelji na inteligentnem obnašanju roja čebel ter ga je leta 2005 predstavil Karaboga [3]. Kolonijo v modelu ABC sestavljajo nabiralke, izvidniki in nadzorne čebele. Za nabiralke se predpostavlja, da je njihovo število odvisno od virov hrane v okolici (ena čebela za vsak vir). Če vir usahne, se nabiralka spremeni v izvidnika in začne iskati druge alternativne vire. Nadzorne čebele glede na obnašanje nabiralk izbirajo, kateri vir hrane se bo trenutno uporabljal. Glavni koraki algoritma: begin 1. Izberi naključne hrano za nabiralke 2. Ponavljaj za vse čebele v koloniji dokler ustavitveni kriterij (npr. število iteracij) ni dosežen: 2.1. nabiralka iz spomina sledi viru hrane, preuči sosednji vir in glede na količino izbere določeno obnašanje - ples 2.2. nadzorna čebela prepozna ples nabiralke, se odpravi na preiskano lokacijo in iz okolice izbere nove lokacije - pašnike 2.3. izčrpane vire nadomestijo novi pašniki, katere najdejo izvidniki 2.4. najboljši vir (pašnik) - S se shrani 3. Ko je ustavitveni kriterij dosežen, S predstavlja rešitev. end. Torej v ABC položaj vira hrane predstavlja možno rešitev problema optimizacije in količina hrane ustreza rešitvi ocenitvene funkcije. Število nabiralk je enako številu rešitev v populaciji. Pod pogojem, da je količina novega vira višja od prejšnjega vira, si čebela zapomni nov položaj, v nasprotnem primeru se ohranja položaj starega vira. Kadar nabiralke končajo cikel, nadzorne čebele na osnovi evalvacije nabiralk izbirajo nove vire iz okolice. 6.4 TLBO (optimizacijski algoritem na osnovi učitelj učenec) Poučevanje učenje je proces, kjer se vsak posameznik poskuša naučiti nekaj od drugih posameznikov. Rao in Patel sta predlagala algoritem, znan kot Teaching-Learning- Based Optimization (TLBO) [57], ki simulira tradicionalno poučevanje učenje in vsebuje dva temeljna načina učenja: 36

38 Drugi moderni metahevristični algoritmi - z učiteljem (znan kot fazo učitelja) in - v stiku z drugimi učenci (znan kot fazo učenca). V TLBO [21] je populacija skupina študentov in različni predmeti predstavljajo analogijo z različnimi spremenljivkami optimizacijskega problema. Rezultat učenec predstavlja rešitev ocenitvene funkcije problema optimizacije. Najboljša rešitev v celotni populaciji predstavlja učitelja. Faza učitelj Denimo, da obstaja m predmetov, ki so na voljo n učencem (velikosti populacije k = 1,2,..., n). Ob koncu vsakega cikla poučevanja i, predstavlja M j,i rezultat učencev za določen predmet j = 1,2,..., m. Razlika med rezultatom učitelja od učencev v vsakem predmetu se izrazi kot: Difference_Mean j, i = r i (X j, kbest, i - T F M j, i ), kjer je X j, kbest, i rezultat učitelja (tj. najboljši učenec) za predmet j. Naj bo T F faktor poučevanja in določen z enačbo T F = round[1 + rand(0, 1){2 1}]. Vrednost T F ni parameter algoritma, ampak je njegova vrednost naključna. Vrednost nove generacije učencev je definirana kot: X' j,k,i = X j,k,i +Difference_Mean j, i in nadomesti trenutno, le če se vrednost poveča. Faza učenec Ta faza algoritma simulira učenje študentov skozi medsebojno interakcijo. Učenec se bo naučil novih znanj, če imajo drugi učenci več znanja od njega. Naključno izberemo dva učenca, P in Q, kjer X' total-p,i X' total-q,i. Vrednosti teh učencev po ciklu učenja dobimo z: X" j, P, i = X' j, p, i + r i (X' j, P, i X' J, Q, i ), če X' total-p, i > X' total-q, i, X" j, P, i = X' j, p, i + r i (X' j, Q, i X' J, P, i ), če X' total-q, i > X' total-p, i kadar iščemo maksimum. Faza izločanja podvojitev Ta faza vključuje zamenjavo najslabšega rezultata vsake skupine z elitnim rezultatom in zamenjavo podvojenih rezultatov z naključnimi. Tako pridemo do skupnega števila izračunov v TLBO algoritmu, ki znaša {(2 velikost populacije število generacij) + (število izračunov potrebnih ob eliminaciji podvojenih rezultatov)}. 37

39 Implementacija AIS algoritmov 7 IMPLEMENTACIJA AIS ALGORITMOV Teoretična podlaga AIS algoritmov je bila predstavljena v okviru 3. poglavja. Preden začnemo opisovati implementacijo različnih AIS algoritmov, na kratko predstavimo eksploracijo in eksploatacijo [22], ki same algoritme dopolnjuje. Za eksploracijo lahko rečemo, da predstavlja iskanje novih regij v iskanem prostoru, medtem ko eksploatacija preiskuje okolico že obiskanih točk. Pojma se uporabljata vsaj od leta Do sedaj sta se eksploracija in eksploatacija pojavljala predvsem v EA, EP, ES, GA, GP. V EA je težko razlikovati med njima, saj je meja precej zabrisana. Dejavniki, ki vplivajo na oboje, so ne le izbira, mutacija in križanje (v primeru EA); izbira, celična delitev, kloniranje, mutacija, apoptoza (v primeru AIS); ampak tudi velikost populacije in predstavitev posameznikov. Pri tem je zelo pomembno, kako dosežemo ravnovesje med eksploracijo in eksploatacijo. Kadar sta faktorja križanja in mutacije visoka, se algoritem nagiba k eksploraciji in naključnemu iskanju. Kadar sta faktorja križanja in mutacije nizka, se algoritem nagiba k eksploataciji in algoritmom vzpenjanja na hrib, tehniki iz družine lokalnih iskanj. Iz raziskav o parametriziranju EA ugotovimo, da so določeni parametri uspešni na enem tipu problemov in povsem odpovejo na drugem tipu. Za doseganje boljših rezultatov je pametno dinamično spreminjati parametre, kar posledično pomeni, da se razmerje med eksploracijo in eksploatacijo skozi različne faze evolucijskega procesa spreminja zdaj v korist enega in nato v korist drugega. Tak način predstavlja skupino samoadaptivnih parametrov za razliko od determinističnih (na začetku nastavljenih) in adaptivnih skupin. V okviru ocen doseganja rezultatov lahko proces parametriziranja razčlenimo na pristop ene spremenljivke in pristop več spremenljivk. Prav tako želimo proces prilagajanja parametrov oceniti. Da to lahko storimo, je potrebno znati ovrednotiti raznolikost genotipa, fenotipa (v primeru EA), oziroma imunoglobulinov (v primeru AIS). Raznolikost delimo glede na: - razlike med osebki v populaciji, - medsebojno oddaljenost osebkov, - entropijo oz. nered znotraj populacije, - verjetnost pripadanja istemu rodu (EA) oz. vrsti imunoglobulinov (AIS), kar predstavlja oceno biološke raznolikosti habitata, - prednike t.j. ali osebek trenutne populacije pripada določenemu osebku prejšnje generacije. Več o nastavljanju parametrov, vrednotenju raznolikosti, oceni prilagajanja v korist eksploracije ali eksploatacije v nadaljevanju. 38

40 Implementacija AIS algoritmov 7.1 Algoritem negativne selekcije (NSA) Ideja negativne selekcije pri umetnem imunskem sistemu kot tudi sam algoritem sta opisana v poglavju 3.2. Algoritmi NSA, kot tudi drugi algoritmi na osnovi negativne selekcije, v splošnem služijo razpoznavi vzorcev, tujkov in anomalij. Poskusimo si minimum ali maksimum predstavljati kot anomalijo, ki jo iščemo. V kolikor rešitev poznamo, je algoritem izvedljiv, saj ga natančno povzamemo v korakih, prikazanih na straneh 22 in 23. Kaj storiti, kadar nam rešitev ni znana? Sam algoritem ne vsebuje kriterija ovrednotenja, kdaj in kako se bližamo rešitvi. Odpade ujemanje detektorjev D proti δ, ki je bistvo NSA, sam algoritem pa v najboljšem primeru lahko postane le RWA (algoritem naključnih korakov). Enak primer je tudi DCA (algoritem dendritskih celic), ki v primeru iskanja vzorcev uporablja kontekst zrelosti vrednosti antigenov MCAV in teorijo nevarnosti. Tudi za ta algoritem velja enako kot pri NSA, da se ne uporablja kot optimizacijski algoritem. Povzetek algoritma zgleda takole [30]: begin 1. inicializiraj: št. vh. signalov na kategorijo (I), št. kategorij vh. signala (J), št. antigenov v vektorju tkiva (K), št. DC ciklov (L), velikost DC populacije (M), št. DC vektorjev (N), št. izh. signalov na DC (P), št. na cikel vzorčenih antigenov (Q), max. št. na DC vzorčenih antigenov v ciklu (R), T max = velikost vektorja tkiva antigenov 2. Ponavljaj dokler (l<l) 2.1. ponastavi A in S 2.2. za vsak m od 0 do M ponavljaj za vsak q od 0 do Q DC m vzorči Q antigen iz A za vsak i od 0 do I in j od 0 do J s DC ij = s ij za vsak n od 0 do N DC m obdela a DC nm za vsak p od 0 do P preračunaj o p, o p (m) = o p (m) + o p, če je o 0 (m) > t m : DC m odstranimo iz populacije DC m selimo, izpišemo antigen in vsebino DC m ponastavimo vektor antigenov in vse signale 2.3. povečaj l, analiziraj antigen in izračunaj MCAV end 39

41 Implementacija AIS algoritmov 7.2 Umetno imunsko omrežje (ainet) Algoritem, ki predstavlja umetno imunsko omrežje, temelji na teoriji, opisani v poglavju 3.3, njegova implementacija pa izhaja iz članka "An Artificial Immune Network for Multimodal Function Optimisation" [11]. Inicializacija vhodnih parametrov vsebuje: - numinitcells (N=20) predstavlja začetno populacijo mrežnih celic, - numclones (N c =10) populacijo klonov, ki nastanejo iz vsake mrežne celice, - maxiterations (N gen =500) maksimalno število iteracij algoritma, - suppresionthreshold (σ s = 0.2) prag zatiranja celičnega omrežja, - errorthreshold povprečen prag napake ob klonski selekciji, - divratio (d=40%) del populacije, ki bo uporabljen, kadar želimo dodati raznolikost populacije, - mutationparam (β=100) parameter mutacije proporcionalen afiniteti, - numdimension dimenzija optimizacijskega problema, - lowerbounds {-1.0,-1.0} spodnja omejitev polja dimenzije, - upperbounds {1.0,1.0} zgornja omejitev polja dimenzije. Nastavitev parametrov ustreza parametrom N gen =200, n=n=100, d=10, β=0.1 v kolikor bi problem reševali z algoritmom ClonAlg. Za razliko od ClonAlg, opt-ainet uporablja mutacijo po Gauss-u, ki je obratno sorazmerna normalizirani ocenitveni funkciji staršev (t.j. osebkov prejšnje generacije). Opt-aiNet ima podobnosti z evolucijskimi strategijami (ES), saj je mehanizem selekcije enak kot pri (μ+λ)-es, kjer μ staršev naredi λ potomcev, ki so zmanjšani na število μ novih staršev, selekcija pa vsebuje tako starše kot potomce, kjer starši preživijo, dokler jih ne izrine eden od potomcev. V opt-ainet je μ=n (celotna populacija) in λ=n c. Tudi ES uporablja mutacijo po Gauss-u, ki pa ni odvisna od ocenitvene funkcije. Glavna razlika med naštetima strategijama je, da opt-ainet dinamično nastavlja velikost populacije z uporabo naključnih novih osebkov in s pomočjo vpliva mreže, medtem ko ima ES konstantno število osebkov populacije. Zaradi lažjega spremljanja napredka pri eksploraciji in eksploataciji smo se držali poenostavitve in namesto iskanja medsebojnih povezav med parametri izbrali raje strnjeno populacijo blizu rešitve, ter tako, ki je od rešitve precej oddaljena. Več o rezultatu v naslednjem poglavju. V kolikor želimo prikazati le delovanje samega algoritma oz. v primeru tekme opt-ainet z drugimi algoritmi, se prva generacija prične z naključnimi osebki. Ta generacija gre skozi klonsko selekcijo, kjer se ovrednoti in klonira ter izračuna ocenitvena funkcija celotne mreže. Ob ovrednotenju afinitete mrežnih celic se tisti osebki, ki se znajdejo pod pragom zatiranja, odstranijo. Kloni, ki dosežejo boljši rezultat ocenitvene funkcije, zamenjajo osebke, iz katerih so nastali, ti, ki pa dosežejo slabši rezultat, se zavržejo. 40

42 Implementacija AIS algoritmov Izvorna koda klonske selekcije: private void clonalselection(task taskproblem) { boolean proceed; // Loop stopping condition variable double preavgfitness = 0.0; // Average population fitness before clonal selection double postavgfitness; // Average population fitness after clonal selection double fitnesssum; // Sum of fitnesses of all network cells // Iterate until stopping condition is met do { fitnesssum = clonecells(taskproblem); postavgfitness = fitnesssum/celllist.size(); if ((postavgfitness-preavgfitness) < errorthres) proceed = false; else { proceed = true; preavgfitness = postavgfitness; } } while (proceed); } private double clonecells(task taskproblem) { NetworkCell currentcell; NetworkCell clones[] = new NetworkCell[numClones]; int best; // Array index of the current best clone in the clonal pool // All cells in the network undergo cloning, mutation and selection double lowestfitness = celllist.get(0).geteval(); double highestfitness = celllist.get(0).geteval(); double totalfitness = 0.0; for(int i=0; i<celllist.size(); i++) { double currentfitness = celllist.get(i).geteval(); if (lowestfitness > currentfitness) lowestfitness = currentfitness; if (highestfitness < currentfitness) highestfitness = currentfitness; } for (int i=0; i<celllist.size(); i++) if (!taskproblem.isstopcriteria()) { currentcell = celllist.get(i); bestindex = 0; double fitnessnorm = (currentcell.geteval() - lowestfitness) / (highestfitness - lowestfitness); if (taskproblem.ismaximize()) fitnessnorm = 1. - fitnessnorm; double alpha = (1.0/mutnParam) * Math.exp(-1 * fitnessnorm); for (int j=0; j<numclones; j++) if (!taskproblem.isstopcriteria()) { clones[j] = new NetworkCell(currentCell); // clone double[] cellvalues = clones[j].x; mutate(cellvalues, alpha, taskproblem); clones[j] = new NetworkCell(cellValues); if (taskproblem.isfirstbetter(clones[j].individual, clones[bestindex].individual)) bestindex = j; } 41

43 Implementacija AIS algoritmov if (!taskproblem.isstopcriteria() && (taskproblem.isfirstbetter(clones[bestindex].individual, currentcell.individual))) { celllist.set(i, clones[bestindex]); if (taskproblem.isfirstbetter(celllist.get(i).individual, best.individual)) { best = new NetworkCell(cellList.get(i)); } totalfitness += celllist.get(i).eval; } } private void mutate(double[] cellvalues, double alpha, Task taskproblem) { for (int i = 0; i < cellvalues.length; i++) { double gauss = Util.rnd.nextGaussian(); // double gauss = getgaussian(0, taskproblem.getintervallength()[i]); cellvalues[i] = taskproblem.feasible(cellvalues[i] + alpha*gauss, i); } } private double getgaussian(double amean, double avariance) { return amean + Util.rnd.nextGaussian() * avariance; } Izvorna koda interakcije omrežja: private void networkinteractions(task taskproblem) { double affinities[][] = new double [celllist.size()][celllist.size // Calculate affinities between all network cells, only the upper diagonal // of the affinities array needs to be filled out for (int i=0; i<celllist.size(); i++) for (int j=0; j<celllist.size(); j++) { if (i > j) affinities[i][j] = 0; else affinities[i][j] = celllist.get(i).getaffinity(celllist.get(j)); } NetworkCell[] cellarray = celllist.toarray(new NetworkCell[0]); // For each pair of cells in the network (the upper diagonal of the // affinities array), if their affinity is below a threshold determined by // the suppthres parameter, then the cell with the lowest fitness is removed // from the network for (int i=0; i<cellarray.length; i++) for (int j=0; j<cellarray.length; j++) if ((i < j) && (affinities[i][j] < suppthres)) { if (taskproblem.isfirstbetter(cellarray[j], cellarray[i])) celllist.remove(cellarray[i]); else celllist.remove(cellarray[j]); } } 42

44 Implementacija AIS algoritmov Izvorna koda izračuna afinitete: public double getaffinity(networkcell cell) { double affinity = 0; double[] dims = getx(); double[] celldims = cell.getx(); // Calculate the Euclidean distance between the network cells for (int i=0; i<dims.length; i++) affinity = affinity + Math.pow((dims[i]-cellDims[i]),2); return Math.sqrt(affinity); } 7.3 Algoritem klonske selekcije (CLONALG) Teoretična podlaga za ClonAlg kakor tudi BCA je opisana v poglavju 3.1. Sam ClonAlg ima dve možni različici. Splošni model izhaja iz članka»learning and optimization using the clonal selection principle.«[13] in ga lahko strnemo v: Antibody.task = taskproblem; init(taskproblem); Arrays.sort(memCells); Antibody best = new Antibody(memCells[0]); while (!taskproblem.isstopcriteria()) { for (int generation=0; generation<generations; generation++) { double totalaffinity=0; for(int i=0; i<pop_size; i++) totalaffinity += memcells[i].getaffinity(); Antibody[] clones = new Antibody[clones_size]; for(int i=0;i<pop_size;i++) { int Nc=pop_size-i; double pm=(double)memcells[i].getaffinity()/totalaffinity; for(int j=0;j<nc;j++) { clones[nc]=new Antibody(memCells[i]); if (!taskproblem.isstopcriteria()) { double xx[] = clones[nc].getnewx(); for(int k=0;k<taskproblem.getdimensions();k++) { xx[k]=taskproblem.feasible(xx[k]+change,k); } clones[nc]=new Antibody(taskProblem.eval(xx)); } nc++; } } Arrays.sort(clones); } for(int i=2;i<pop_size;i++) { if (taskproblem.isstopcriteria()) break; memcells[i] = Antibody.getRandom(); } 43

45 Implementacija AIS algoritmov } Arrays.sort(memCells); if (taskproblem.isfirstbetter(memcells[0], best)) return best; best = new Antibody(memCells[0]); Bolj zanimiv pristop pa izhaja iz članka»a Micro Artificial Immune System«[32], ki govori o populaciji 3 do 5 osebkov. Ti ustvarijo 15 klonov, algoritem je časovno manj potraten in hitreje konvergira k optimalni rešitvi. Micro AIS pa ni edini algoritem z majhnim številom osebkov. Krishnakumar [43], Toscano, Coello [66], Ming, Cheng [50], Mendoza, Morales in López [49] so razvijali različne mikro GA, Fuentes in Coello [28] pa tudi mikro PSO. Iz naštetega se poraja ideja, da bi tudi opt-ainet lahko preračunavali z bistveno manjšo populacijo. Zaradi lažjega spremljanja napredka pri eksploraciji in eksploataciji smo se tudi tu držali poenostavitve in namesto iskanja medsebojnih povezav med parametri izbrali raje strnjeno populacijo blizu rešitve, ter tako, ki je od rešitve precej oddaljena. Več o rezultatu v naslednjem poglavju. 7.4 B celičen algoritem (BCA) BCA kot tudi ClonAlg poskušata implementirati teorijo klonske selekcije in sta v osnovi precej podobna. Oba vsebujeta operacije kloniranja, selekcije, mutacije in apoptozo. Posebnost BCA je, da se vse operacije izvajajo nad bitnimi nizi. Primer razlike implementacije operatorja mutacije med BCA: public static boolean[][] mutate(int pop_dimension, boolean[][] population) { for (int i=0; i<pop_size; i++) for (int j=0; j<pop_dimension; j++) if (Math.random() < mutation_probability) population[i][j] =!population[i][j]; return population; } in ClonAlg: for(int k=0; k<taskproblem.getdimensions(); k++) { alpha = Util.rnd.nextDouble(); if (Util.rnd.nextDouble() < 0.5) change=(double)((double)alpha*range*(generation+1))/nc; else change=(double)((double)(alpha*range)/((double)(generation+1)*nc)); xx[k]=taskproblem.feasible(xx[k]+change,k); } Implementacija BCA je povzeta po članku:»assessing the Performance of Two Immune Inspired Algorithms and a Hybrid Genetic Algorithm for Function Optimisation«[65]. Članek je zanimiv iz razloga, ker izmed vseh algoritmov umetnega imunskega sistema v primeru reševanj optimizacijskih problemov na koncu izbiramo med ainet in BCA/ClonAlg algoritmi. 44

46 Primerjava rezultatov algoritmov 8 PRIMERJAVA REZULTATOV ALGORITMOV Preden se lotimo primerjave algoritmov, povejmo nekaj besed o okolju EARS [1], kjer so vsi algoritmi podvrženi enakim pogojem in v katerem smo izvajali primerjavo algoritmov. Okolje vsebuje: - razred tipa opravilo, kjer lahko določimo zaustavitveni kriterij, maksimalno št. izračunov, natančnost in definiramo, kateri problem rešujemo; - razred tipa problem, kjer so definirani testni problemi (Ackley, B2, Beale, Booth, Branin, DeJong, Easom, GoldSteinAndPrice, Griewank, MartinAndGaddy, PowellBadlyScaledFunction, Rastrigin, Rosenbrock, Schwefel in Sphere); kot tudi tekmovalni problemi (t.j. skupina CEC2010 in CEC2014 problemov); - razred tipa algoritem, kateremu smo prilagodili strukturo, v tem in v naslednjem poglavju naštetih algoritmov; - razred tipa individual, ki predstavlja elementarni delec algoritma (t.j. osebek oz. član populacije). Algoritme v okolju lahko zaganjamo posamično ali v tekmi z drugimi algoritmi. Posamične zagone smo uporabljali v preliminarni analizi in pri raziskovanju eksploracije in eksploatacije, tekmo pa v medsebojni primerjavi algoritmov. Algoritme lahko primerjamo po NHST (Null Hypothesis Significance Testing) [32], kar je izrednega pomena, saj lahko znanstveno dokažemo boljšo zmogljivost enega algoritma v primerjavi z drugim. Izhajamo iz trditve ničelne hipoteze (Null Hypothesis oz. H 0 ), da sta dva algoritma po rezultatih izenačena. Alternativna hipoteza H a predpostavlja, da je H 0 napačna, torej da je en algoritem boljši. Test je postopek, kjer poskušamo H 0 ovreči, kar počnemo na večjem številu algoritmov, z večimi podatkovnimi nizi in zagoni algoritmov. Test po tipu delimo na parametričen in neparametričen, razlika med tipoma pa je v lastnostih podatkovnih nizov. Drug novejši pristop primerjanja algoritmov se imenuje CRS4EAs (Chess Rating System for Evolutionary Algorithms) [32], [68]. Pri tem so uporabljene naslednje analogije: - igralec šaha = poljuben algoritem, - partija šaha = iskanje najboljšega rezultata za podan problem, z uporabo zgornje omejitve izračunov ocenitvene funkcije, - šahovski turnir = primerjava algoritmov na določeni množici problemov, ki poteka tako, da poljubna dva algoritma med seboj tekmujeta, turnir pa se konča, kadar s tekmo zaključijo vsi tekmovalci, - razvrščanje = tako kot stopnja oz. naziv, ki ga lahko doseže šahist, se po doseženih točkah razvščajo tudi algoritmi. 45

47 Primerjava rezultatov algoritmov CRS4EAs ima veliko podobnosti s NHST, po drugi strani tudi nekaj dodatnih ugodnosti, kot so: robustnost ob odstopanjih, nadzorni mehanizem, je preprost za uporabo, je brez nevarnosti namernih zlorab ali takih iz nerazumevanja (pri statističnih metodah je taka zloraba možna), točno ocenitev zmogljivosti algoritma dosežemo že ob majhnem številu zagonov (do 25). Ima tudi nekaj omejitev, kot so: - število zagonov (iger) je odvisno od števila primerjanih algoritmov, - seznam razvrščanja se spreminja z vsakim novo dodanim algoritmom, - ponovna uporaba dobljenih podatkov v drugih statističnih testih ni možna, - rezultat razvrstitve različnih zagonov med seboj ni primerljiv, - rezultat posamičnega algoritma za določen problem ni izpostavljen, saj gre zmeraj za primerjavo dveh algoritmov. 8.1 Primerjava z NHST in CRS4EAs Kot smo ugotovili v sedmem poglavju, vsi algoritmi ne ustrezajo reševanju zastavljenih problemov. V primerjavi so sodelovali iz šestega poglavja opisani algoritmi: ABC, TLBO, PSO (ponekod zapisan tudi kot PSO_Wiki), DE (ponekod zapisan tudi kot DE_Wiki). V prvem zagonu testa sta sodelovala tudi 2 AIS algoritma: ClonAlg in opt-ainet. Priprava programa za prvi zagon testa: Util.rnd.setSeed(System.currentTimeMillis()); ArrayList<Algorithm> players = new ArrayList<Algorithm>(); players.add(new PSO()); players.add(new MojDE(1, 20)); players.add(new BeeColonyAlgorithm()); players.add(new TLBOAlgorithm()); players.add(new RandomWalkAlgorithm()); players.add(new MicroClonAlg()); players.add(new OptAinet()); ResultArena ra = new ResultArena(100); RatingRPUOed2 suopm = new RatingRPUOed2(); //Create banchmark for (Algorithm al:players) { ra.addplayer(al.getid(), 1500, 350, 0.06,0,0,0); //init rating 1500 suopm.registeralgorithm(al); } Parametri programov (dimenzija problema = 5, število ocenitvenih funkcij Max_Fes=10 5 ): opt-ainet NP=20, Clones=10, suppthres=0.2, errorthres=0.001, divratio=0.4, mutnparam=100.0 ClonAlg NP=5, Clones=15 ABC NP=20, limit = 100 TLBO NP=20, elitism=false, removeduplicates=true PSO NP=10, omega=0.7, phig=2, phip=2 DE NP=20, Cr=1, F=20 RWS - 46

48 Primerjava rezultatov algoritmov Pri tem je RWS brez parametrov, NP velikost populacije, Cr faktor križanja, F diferencialna utež, parametri opt-ainet in ClonAlg pa razloženi v sedmem poglavju. Rezultat prvega testa (poseben poudarek na opt-ainet): Rezultat prve (Booth) funkcije prikaže, da opt-ainet izgublja proti skoraj vsem algoritmom. Pri v poglavju 7.2 omenjenem članku je bilo govora o počasnejši konvergenci opt-ainet v primerjavi z ClonAlg. Tudi znotraj implementacije opt-ainet smo to opazili in nismo našli načina, kako bi to izboljšali, da pri tem ne bi spreminjali: operatorja mutacije: c' = c + αn(0,1), α = (1/β) exp ( f*), multimodalnosti, ali naraščanja populacije σ s = 0.2; d = 40% in pri tem spremenili algoritem do te mere, da ne bi več ustrezal opisu iz članka. Problem je, da multimodalnost poveča preiskovalni prostor, vendar ni učinkovitega mehanizma medsebojnega vpliva mrežnih celic. Afiniteta (razdalja med celicami) enostavno ni dovolj. Drug problem je naraščanje populacije ob omejenem številu računskih operacij. Rezultat druge (Branin) funkcije prikaže, da opt-ainet pade iz intervala sprejemljivih rešitev, kar privede do zaustavitve testa. Posledica tega je, da je opt-ainet nesprejemljiv kandidat tekme. Priprava programa za drug zagon testa: Ni bistvene razlike od priprave za prvi zagon (zakomentirana je le vrstica za zaganjanje opt-ainet). Parametri programov (dimenzija problema = 5, število ocenitvenih funkcij Max_Fes=10 5 ): ClonAlg NP=5, Clones=15 ABC NP=20, limit = 100 TLBO NP=20, elitism=false, removeduplicates=true PSO NP=10, omega=0.7, phig=2, phip=2 DE NP=20, Cr=1, F=20 RWS - Rezultati drugega testa (tokrat brez opt-ainet): Rezultate, ki jih dobimo iz EARS, vsebujejo razvrstitev, št. zmag, št. zgub, št. neodločenih rezultatov, seznam problemov, v katerih so algoritmi znotraj tekme sodelovali in 47

49 Primerjava rezultatov algoritmov medsebojne rezultate tekme. Iz dobljenega lahko prikažemo tabelo rezultatov ClonAlg algoritma glede na zadan problem: Problem Zmaga Poraz Neodločeno Beale B Griewank Martin&Gaddy Ackley Goldstein&Price Schwefel Rigle Easom Powell badly scaled Sphere Rastrigin Schwefel Rosenbrock Booth De Jong Branin Skupaj Tabela 1: Rezultat ClonAlg glede na zadan problem (ob drugem zagonu) Iz dobljenih rezultatov lahko sestavimo tudi tabelo rezultatov ClonAlg algoritma glede na ostale algoritme: Algoritem Zmaga Poraz Neodločeno ClonAlg vs ABC ClonAlg vs TLBO ClonAlg vs PSO ClonAlg vs DE ClonAlg vs RWS Skupaj Tabela 2: Rezultat ClonAlg glede na ostale algoritme (ob drugem zagonu) Iz dobljenih rezultatov drugega testa smo ugotovili, da privzeti parametri DE niso sprejemljivi in smo jih kasneje v tekmi zamenjali s klasičnimi nastavitvami (NP=20, Cr=0.9, F=0.5), ki prinesejo mnogo boljše rezultate. Iz drugega testa, razen rezultatov podanih v tabeli 1 in tabeli 2, dobimo tudi rezultat razvrstitve udeleženih algoritmov po doseženih točkah, ki je prikazan v naslednjem grafu: 48

50 Primerjava rezultatov algoritmov 2.000, , , , , ,00 800,00 600,00 400,00 200,00 0,00 TLBO PSO_Wiki ABC ClonAlg RWSi DE_Wiki Razvrstitev po točkah Slika 5: Grafični prikaz razvrstitve (ob drugem zagonu) Po zagnanem prvem in drugem testu smo v EARS naredili tekmo (t.j. 25 ponovnih zagonov), pri kateri smo za vsak zagon beležili razvrstitev algoritmov. Parametri programov (dimenzija problema = 5, število ocenitvenih funkcij Max_Fes=10 5 ): ClonAlg NP=5, Clones=15 ABC NP=20, limit = 100 TLBO NP=20, elitism=false, removeduplicates=true PSO NP=10, omega=0.7, phig=2, phip=2 DE NP=20, Cr=0.9, F=0.5 RWS - Grafični prikaz tabelaričnih vrednosti razvrstitve (tabele 3), kjer je za vsak algoritem prikazana razvrstitev od minimalne do maksimalne vrednosti ter povprečna vrednost: Slika 6: Grafični prikaz razvrstitve algoritmov (prva tekma) 49

51 Primerjava rezultatov algoritmov Rezultat prve tekme, razvrstitev po doseženih točkah: Zagon št. DE_Wiki TLBO PSO_Wiki ABC ES(1+1) ClonAlg RWSi , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,50 Povprečje 1764, , , , , , ,07 Min 1753, , , , , , ,70 Max 1773, , , , , , ,00 Tabela 3: Razvrstitev algoritmov po doseženih točkah (prva tekma) Po zagnani prvi tekmi smo tekmo (t.j. 25 ponovnih zagonov) ponovili še na CEC2010 problemih. Parametri programov (dimenzija problema = 5, število ocenitvenih funkcij Max_Fes=10 5 ): ClonAlg NP=5, Clones=15 ABC NP=20, limit = 100 TLBO NP=20, elitism=false, removeduplicates=true PSO NP=10, omega=0.7, phig=2, phip=2 DE NP=20, Cr=0.9, F=0.5 RWS - 50

52 Primerjava rezultatov algoritmov Rezultat druge tekme, razvrstitev po doseženih točkah: Zagon št. DE_Wiki TLBO PSO_Wiki ABC ES(1+1) ClonAlg RWSi , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,70 Povprečje 1725, , , , , , ,08 Min 1691, , , , , , ,50 Max 1751, , , , , , ,40 Tabela 4: Razvrstitev algoritmov po doseženih točkah (druga tekma, CEC2010 problemi) Grafični prikaz tabelaričnih vrednosti razvrstitve: Slika 7: Grafični prikaz razvrstitve algoritmov (druga tekma, CEC2010 problemi) 51

53 Primerjava rezultatov algoritmov Za vsak algoritem je prikazana razvrstitev od minimalne do maksimalne vrednosti ter povprečna vrednost. Iz dobljenih rezultatov lahko dobimo tudi grafični prikaz z CRS4EAs dobljenih občutnih razlik. Dva algoritma sta občutno različna, kadar se z 99.7% gotovostjo, intervala razvrstitve ne prekrivata. Slika 8: Grafični prikaz z CRS4EAs dobljenih občutnih razlik Iz obeh tekem ugotovimo, da je s pravimi parametri DE nesporni zmagovalec tekme. V prvem primeru tekme algoritmi rešujejo naslednje probleme: Beale, B2, Griewank, Martin and Gaddy, Ackley, Goldstein and Price, Schwefel Rigle, Easom, Powell badly scaled, Sphere, Rastrigin, Schwefel, Rosenbrock, Booth, De Jong in Branin. Ta tekma vsebuje zelo majhno divergenco med rezultati razvrstitve algoritmov in je lažje razvidno, kako so se algoritmi uvrščali. V primeru tekme po CEC2010 problemih se rezultati razvrstitve za ABC, PSO in TLBO prekrivajo, o čem govori tudi grafični prikaz z CRS4EAs dobljenih občutnih razlik. Glede na prvo tekmo PSO implementacija prehiti TLBO, prav tako pa se tudi s TLBO izenači ABC. Razvrstitev ClonAlg na žalost v drugi tekmi ni toliko napredovala kot razvrstitev nekaterih drugih algoritmov. 52

Iskanje najcenejše poti v grafih preko polkolobarjev

Iskanje najcenejše poti v grafih preko polkolobarjev Univerza v Ljubljani Fakulteta za računalništvo in informatiko Veronika Horvat Iskanje najcenejše poti v grafih preko polkolobarjev DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE

More information

Multipla korelacija in regresija. Multipla regresija, multipla korelacija, statistično zaključevanje o multiplem R

Multipla korelacija in regresija. Multipla regresija, multipla korelacija, statistično zaključevanje o multiplem R Multipla koelacia in egesia Multipla egesia, multipla koelacia, statistično zaklučevane o multiplem Multipla egesia osnovni model in ačunane paametov Z multiplo egesio napoveduemo vednost kiteia (odvisne

More information

OPTIMIRANJE IZDELOVALNIH PROCESOV

OPTIMIRANJE IZDELOVALNIH PROCESOV OPTIMIRANJE IZDELOVALNIH PROCESOV asist. Damir GRGURAŠ, mag. inž. str izr. prof. dr. Davorin KRAMAR damir.grguras@fs.uni-lj.si Namen vaje: Ugotoviti/določiti optimalne parametre pri struženju za dosego

More information

TOPLJENEC ASOCIIRA LE V VODNI FAZI

TOPLJENEC ASOCIIRA LE V VODNI FAZI TOPLJENEC ASOCIIRA LE V VODNI FAZI V primeru asociacij molekul topljenca v vodni ali organski fazi eksperimentalno določeni navidezni porazdelitveni koeficient (P n ) v odvisnosti od koncentracije ni konstanten.

More information

UČNI NAČRT PREDMETA / COURSE SYLLABUS (leto / year 2017/18) Predmet: Optimizacija 1 Course title: Optimization 1. Študijska smer Study field

UČNI NAČRT PREDMETA / COURSE SYLLABUS (leto / year 2017/18) Predmet: Optimizacija 1 Course title: Optimization 1. Študijska smer Study field UČNI NAČRT PREDMETA / COURSE SYLLABUS (leto / year 2017/18) Predmet: Optimizacija 1 Course title: Optimization 1 Študijski program in stopnja Study programme and level Univerzitetni študijski program Matematika

More information

Attempt to prepare seasonal weather outlook for Slovenia

Attempt to prepare seasonal weather outlook for Slovenia Attempt to prepare seasonal weather outlook for Slovenia Main available sources (ECMWF, EUROSIP, IRI, CPC.NCEP.NOAA,..) Two parameters (T and RR anomally) Textual information ( Met Office like ) Issued

More information

Cveto Trampuž PRIMERJAVA ANALIZE VEČRAZSEŽNIH TABEL Z RAZLIČNIMI MODELI REGRESIJSKE ANALIZE DIHOTOMNIH SPREMENLJIVK

Cveto Trampuž PRIMERJAVA ANALIZE VEČRAZSEŽNIH TABEL Z RAZLIČNIMI MODELI REGRESIJSKE ANALIZE DIHOTOMNIH SPREMENLJIVK Cveto Trampuž PRIMERJAVA ANALIZE VEČRAZSEŽNIH TABEL Z RAZLIČNIMI MODELI REGRESIJSKE ANALIZE DIHOTOMNIH SPREMENLJIVK POVZETEK. Namen tega dela je prikazati osnove razlik, ki lahko nastanejo pri interpretaciji

More information

Biološka ekvivalenca Statistične metode. Iztok Grabnar

Biološka ekvivalenca Statistične metode. Iztok Grabnar Biološka ekvivalenca Statistične metode Iztok Grabnar Definicije EMEA: Note for guidance on the investigation of bioavailability and bioequivalence Biološka uporabnost Biovailability means the rate and

More information

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE Zaključna naloga Uporaba logistične regresije za napovedovanje razreda, ko je število enot v preučevanih razredih

More information

Hipohamiltonovi grafi

Hipohamiltonovi grafi Hipohamiltonovi grafi Marko Čmrlec, Bor Grošelj Simić Mentor(ica): Vesna Iršič Matematično raziskovalno srečanje 1. avgust 016 1 Uvod V marsovskem klubu je želel predsednik prirediti večerjo za svoje člane.

More information

AKSIOMATSKA KONSTRUKCIJA NARAVNIH

AKSIOMATSKA KONSTRUKCIJA NARAVNIH UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA Poučevanje: Predmetno poučevanje ŠPELA ZOBAVNIK AKSIOMATSKA KONSTRUKCIJA NARAVNIH ŠTEVIL MAGISTRSKO DELO LJUBLJANA, 2016 UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA

More information

Miha Troha. Robotsko učenje in planiranje potiskanja predmetov

Miha Troha. Robotsko učenje in planiranje potiskanja predmetov UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Miha Troha Robotsko učenje in planiranje potiskanja predmetov DIPLOMSKO DELO NA UNIVERZITETNEM ŠTUDIJU Mentor: prof. dr. Ivan Bratko Ljubljana,

More information

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA SAŠO ZUPANEC MAX-PLUS ALGEBRA DIPLOMSKO DELO

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA SAŠO ZUPANEC MAX-PLUS ALGEBRA DIPLOMSKO DELO UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA SAŠO ZUPANEC MAX-PLUS ALGEBRA DIPLOMSKO DELO Ljubljana, 2013 UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA ODDELEK ZA MATEMATIKO IN RAČUNALNIŠTVO SAŠO ZUPANEC Mentor:

More information

Usmerjene nevronske mreže: implementacija in uporaba

Usmerjene nevronske mreže: implementacija in uporaba Seminar - 4. letnik Usmerjene nevronske mreže: implementacija in uporaba Avtor: Miha Marolt Mentorja: Marko Žnidarič, Drago Kuzman Kranj, 24.4.2010 Povzetek Usmerjena večnivojska nevronska mreˇza(uvnm)

More information

modeli regresijske analize nominalnih spremenljivk

modeli regresijske analize nominalnih spremenljivk modeli regresijske analize nominalnih spremenljivk Cveto Trampuž An Illustrative Comparison Logit Analysis with Dummy Variable Regression Analysis. Two different regression models in which the dependent

More information

Optimizacija razporeditve preizkušanja in vzdrževanja varnostne opreme na podlagi najmanjšega tveganja

Optimizacija razporeditve preizkušanja in vzdrževanja varnostne opreme na podlagi najmanjšega tveganja Elektrotehniški vestnik 70(1-2): 22 26, 2003 Electrotechnical Review, Ljubljana, Slovenija Optimizacija razporeditve preizkušanja in vzdrževanja varnostne opreme na podlagi najmanjšega tveganja Marko Čepin

More information

Uvod v odkrivanje znanj iz podatkov (zapiski predavatelja, samo za interno uporabo)

Uvod v odkrivanje znanj iz podatkov (zapiski predavatelja, samo za interno uporabo) Uvod v odkrivanje znanj iz podatkov (zapiski predavatelja, samo za interno uporabo) Blaž Zupan 29. julij 2017 Kazalo 1 Odkrivanje skupin 7 1.1 Primer podatkov.................................. 7 1.2 Nekaj

More information

2 Zaznavanje registrske tablice

2 Zaznavanje registrske tablice Razpoznavanje avtomobilskih registrskih tablic z uporabo nevronskih mrež Matej Kseneman doc. dr. Peter Planinšič, mag. Tomaž Romih, doc. dr. Dušan Gleich (mentorji) Univerza v Mariboru, Laboratorij za

More information

Ekstrakcija časovnega znanja iz dogodkov v spletnih novicah

Ekstrakcija časovnega znanja iz dogodkov v spletnih novicah Univerza v Ljubljani Fakulteta za računalništvo in informatiko Kristijan Mirčeta Ekstrakcija časovnega znanja iz dogodkov v spletnih novicah DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE

More information

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE Magistrsko delo Izdelava in evalvacija različnih modelov za napovedovanje zvrsti turizma iz besedil (Development

More information

UČNI NAČRT PREDMETA / COURSE SYLLABUS. Študijska smer Study field. Samost. delo Individ. work Klinične vaje work

UČNI NAČRT PREDMETA / COURSE SYLLABUS. Študijska smer Study field. Samost. delo Individ. work Klinične vaje work Predmet: Course title: UČNI NAČRT PREDMETA / COURSE SYLLABUS Optimizacija Optimization Študijski program in stopnja Study programme and level Visokošolski strokovni študijski program Praktična matematika

More information

POGLAVJE IV: Klasični in kvantni Monte-Carlo

POGLAVJE IV: Klasični in kvantni Monte-Carlo POGLAVJE IV: Klasični in kvantni Monte-Carlo V statistični fiziki nas često zanimajo povprečne vrednosti opazljivk v ravnovesnem, termalnem stanju, pri dobro znani vrednosti temperature in ostalih termodinamskih

More information

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Ekstremne porazdelitve za odvisne spremenljivke

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Ekstremne porazdelitve za odvisne spremenljivke UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE Zaključna naloga Ekstremne porazdelitve za odvisne spremenljivke (Extremal Distributions for Dependent Variables)

More information

NIKJER-NIČELNI PRETOKI

NIKJER-NIČELNI PRETOKI UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA ALJA ŠUBIC NIKJER-NIČELNI PRETOKI DIPLOMSKO DELO LJUBLJANA, 2016 UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA Dvopredmetni učitelj: matematika - računalništvo ALJA

More information

Verifikacija napovedi padavin

Verifikacija napovedi padavin Oddelek za Meteorologijo Seminar: 4. letnik - univerzitetni program Verifikacija napovedi padavin Avtor: Matic Šavli Mentor: doc. dr. Nedjeljka Žagar 26. februar 2012 Povzetek Pojem verifikacije je v meteorologiji

More information

FRAKTALNA DIMENZIJA. Fakulteta za matematiko in fiziko Univerza v Ljubljani

FRAKTALNA DIMENZIJA. Fakulteta za matematiko in fiziko Univerza v Ljubljani FRAKTALNA DIMENZIJA VESNA IRŠIČ Fakulteta za matematiko in fiziko Univerza v Ljubljani PACS: 07.50.Hp, 01.65.+g V članku je predstavljen zgodovinski razvoj teorije fraktalov in natančen opis primerov,

More information

Verodostojnost in kvaliteta spletno dostopnih informacij

Verodostojnost in kvaliteta spletno dostopnih informacij Univerza v Ljubljani Filozofska fakulteta Oddelek za bibliotekarstvo, informacijsko znanost in knjigarstvo Verodostojnost in kvaliteta spletno dostopnih informacij Mentor: dr. Jure Dimec Lea Očko Katja

More information

1 Ternik Primož - Zasebni raziskovalec, Bresterniška ulica 163, Bresternica

1 Ternik Primož - Zasebni raziskovalec, Bresterniška ulica 163, Bresternica Izvirni znanstveni članek TEHNIKA numerične metode Datum prejema: 14. november 2016 ANALI PAZU 6/ 2016/ 1-2: 14-19 www.anali-pazu.si Evaporation of water droplets in the 1st stage of the ultrasonic spray

More information

Modeliranje časovnih vrst z metodami teorije informacij

Modeliranje časovnih vrst z metodami teorije informacij Elektrotehniški vestnik 76(4): 240 245, 2009 Electrotechnical Review, Ljubljana, Slovenija Modeliranje časovnih vrst z metodami teorije informacij Marko Bratina 1, Andrej Dobnikar 2, Uroš Lotrič 2 1 Savatech,

More information

Matematika 1. Gabrijel Tomšič Bojan Orel Neža Mramor Kosta

Matematika 1. Gabrijel Tomšič Bojan Orel Neža Mramor Kosta Matematika 1 Gabrijel Tomšič Bojan Orel Neža Mramor Kosta 15. december 2010 Poglavje 3 Funkcije 3.1 Osnovni pojmi Preslikavam v množico R ali C običajno pravimo funkcije v prvem primeru realne, v drugem

More information

Rudarjenje razpoloženja na komentarjih rtvslo.si

Rudarjenje razpoloženja na komentarjih rtvslo.si Univerza v Ljubljani Fakulteta za računalništvo in informatiko Brina Škoda Rudarjenje razpoloženja na komentarjih rtvslo.si DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO IN

More information

SPECIALTY OPTICAL FIBRES FOR A SENSING APPLICATION. Uporaba posebnih optičnih vlaken za zaznavanje

SPECIALTY OPTICAL FIBRES FOR A SENSING APPLICATION. Uporaba posebnih optičnih vlaken za zaznavanje UDK621.3:(53+54+621+66), ISSN0352-9045 Informacije MIDEM 40(2010)4, Ljubljana SPECIALTY OPTICAL FIBRES FOR A SENSING APPLICATION Yuri Chamorovskiy Institute of Radioengineering and Electronics Russian

More information

GEOMETRIJSKE FAZE V KVANTNI MEHANIKI

GEOMETRIJSKE FAZE V KVANTNI MEHANIKI GEOMETRIJSKE FAZE V KVANTNI MEHANIKI LARA ULČAKAR Fakulteta za matematiko in fiziko Univerza v Ljubljani V članku so predstavljene geometrijske faze, ki nastopijo pri obravnavi kvantnih sistemov. Na začetku

More information

Geometrijske faze v kvantni mehaniki

Geometrijske faze v kvantni mehaniki Seminar 1-1. letnik, 2. stopnja Geometrijske faze v kvantni mehaniki Avtor: Lara Ulčakar Mentor: prof. dr. Anton Ramšak Ljubljana, november 2014 Povzetek V seminarju so predstavljene geometrijske faze,

More information

Zbornik seminarjev iz hevristik

Zbornik seminarjev iz hevristik Zbornik seminarjev iz hevristik Izbrana poglavja iz optimizacijskih metod (2010-11) 2. marec 2012 Ljubljana, 2011 Zbornik seminarskih nalog sta po knjigi [3] izbrala in uredila R. Škrekovski (FMF) in Vida

More information

arxiv: v1 [cs.dm] 21 Dec 2016

arxiv: v1 [cs.dm] 21 Dec 2016 UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE arxiv:1612.07113v1 [cs.dm] 21 Dec 2016 Zaključna naloga (Final project paper) Odčitljivost digrafov in dvodelnih

More information

Grafični gradnik za merjenje kvalitete klasifikatorja s pomočjo krivulj

Grafični gradnik za merjenje kvalitete klasifikatorja s pomočjo krivulj UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Miha Biček Grafični gradnik za merjenje kvalitete klasifikatorja s pomočjo krivulj DIPLOMSKO DELO NA UNIVERZITETNEM ŠTUDIJU Mentor: doc. dr.

More information

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Domen Gostinčar VPELJAVA METRIK ZA OCENJEVANJE PREKLOPNE DINAMIKE V ENOSTAVNIH NA DNK TEMELJEČIH BIOLOŠKIH SISTEMIH DIPLOMSKO DELO NA UNIVERZITETNEM

More information

Iterativne metode podprostorov 2010/2011 Domače naloge

Iterativne metode podprostorov 2010/2011 Domače naloge Iterativne metode podprostorov 2010/2011 Domače naloge Naloge so razdeljene v 6 skupin. Za pozitivno oceno morate rešiti toliko nalog, da bo končna vsota za pozitivno oceno vsaj 8 točk oz. vsaj 10 točk

More information

Klemen Kregar, Mitja Lakner, Dušan Kogoj KEY WORDS

Klemen Kregar, Mitja Lakner, Dušan Kogoj KEY WORDS G 2014 V ROTACIJA Z ENOTSKIM KVATERNIONOM GEODETSKI VESTNIK letn. / Vol. 58 št. / No. 2 ROTATION WITH UNIT QUATERNION 58/2 Klemen Kregar, Mitja Lakner, Dušan Kogoj UDK: 512.626.824:528 Klasifikacija prispevka

More information

IZRAČUN POLOŽAJA GPS-SATELITA IZ PODATKOV PRECIZNIH EFEMERID GPS-ORBIT COMPUTATION FROM PRECISE EPHEMERIS DATA

IZRAČUN POLOŽAJA GPS-SATELITA IZ PODATKOV PRECIZNIH EFEMERID GPS-ORBIT COMPUTATION FROM PRECISE EPHEMERIS DATA 177 IZRAČUN POLOŽAJA GPS-SATELITA IZ PODATKOV PRECIZNIH EFEMERID GPS-ORBIT COMPUTATION FROM PRECISE EPHEMERIS DATA Polona Pavlovčič Prešeren, Bojan Stopar UDK: 528.33 Klasifikacija prispevka po COBISS-u:

More information

Gručenje z omejitvami na podlagi besedil in grafov pri razporejanju akademskih člankov

Gručenje z omejitvami na podlagi besedil in grafov pri razporejanju akademskih člankov Univerza v Ljubljani Fakulteta za računalništvo in informatiko Tadej Škvorc Gručenje z omejitvami na podlagi besedil in grafov pri razporejanju akademskih člankov MAGISTRSKO DELO MAGISTRSKI PROGRAM DRUGE

More information

DOMINACIJSKO TEVILO GRAFA

DOMINACIJSKO TEVILO GRAFA UNIVERZA V LJUBLJANI PEDAGO KA FAKULTETA tudijski program: MATEMATIKA in RAƒUNALNI TVO DOMINACIJSKO TEVILO GRAFA DIPLOMSKO DELO Mentor: doc. dr. Primoº parl Kandidatka: Neja Zub i Ljubljana, maj, 2011

More information

Seminar II: Translokacija proteinov na DNA. Avtor: Janez Dovč Delovni mentor: Gašper Tkačik Mentor: prof. dr. Rudi Podgornik

Seminar II: Translokacija proteinov na DNA. Avtor: Janez Dovč Delovni mentor: Gašper Tkačik Mentor: prof. dr. Rudi Podgornik Seminar II: Translokacija proteinov na DNA Avtor: Janez Dovč Delovni mentor: Gašper Tkačik Mentor: prof. dr. Rudi Podgornik Univerza v Ljubljani Fakulteta za matematiko in fiziko April 2005 1 Povzetek

More information

Makroekonomija 1: 4. vaje. Igor Feketija

Makroekonomija 1: 4. vaje. Igor Feketija Makroekonomija 1: 4. vaje Igor Feketija Teorija agregatnega povpraševanja AD = C + I + G + nx padajoča krivulja AD (v modelu AS-AD) učinek ponudbe denarja premiki vzdolž krivulje in premiki krivulje mikro

More information

Odgovor rastlin na povečane koncentracije CO 2. Ekofiziologija in mineralna prehrana rastlin

Odgovor rastlin na povečane koncentracije CO 2. Ekofiziologija in mineralna prehrana rastlin Odgovor rastlin na povečane koncentracije CO 2 Ekofiziologija in mineralna prehrana rastlin Spremembe koncentracije CO 2 v atmosferi merilna postaja Mauna Loa, Hawaii. koncentracija CO 2 [μmol mol -1 ]

More information

Bayesove verjetnostne mreže

Bayesove verjetnostne mreže Bayesove verjetnostne mreže Martin Žnidaršič Seminarska naloga pri predmetu Avtomatsko učenje Nosilec predmeta: prof. dr. Igor Kononenko Povzetek Uporaba verjetnostnega sklepanja je na področju umetne

More information

Izvedbe hitrega urejanja za CPE in GPE

Izvedbe hitrega urejanja za CPE in GPE Univerza v Ljubljani Fakulteta za računalništvo in informatiko Jernej Erker Izvedbe hitrega urejanja za CPE in GPE DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJ RAČUNALNIŠTVA IN INFORMATIKE Mentor: doc. dr. Tomaž

More information

Univerza na Primorskem. Fakulteta za matematiko, naravoslovje in informacijske tehnologije. Zaznavanje gibov. Zaključna naloga

Univerza na Primorskem. Fakulteta za matematiko, naravoslovje in informacijske tehnologije. Zaznavanje gibov. Zaključna naloga Univerza na Primorskem Fakulteta za matematiko, naravoslovje in informacijske tehnologije Boštjan Markežič Zaznavanje gibov Zaključna naloga Koper, september 2011 Mentor: doc. dr. Peter Rogelj Kazalo Slovarček

More information

VODENJE IN PROBLEMATIKA

VODENJE IN PROBLEMATIKA UNIVERZA V MARIBORU FAKULTETA ZA ORGANIZACIJSKE VEDE Smer: Organizacija in management kadrovskih in izobraževalnih procesov VODENJE IN PROBLEMATIKA Mentor: red. prof. dr. Jože Florjančič Kandidat: Martina

More information

Vrednotenje gibov in kretenj roke kot vhodne naprave za komunikacijo človek stroj v navideznih okoljih

Vrednotenje gibov in kretenj roke kot vhodne naprave za komunikacijo človek stroj v navideznih okoljih Elektrotehniški vestnik 71(1-2): 13 19, 2004 Electrotechnical Review, Ljubljana, Slovenija Vrednotenje gibov in kretenj roke kot vhodne naprave za komunikacijo človek stroj v navideznih okoljih Peter Rulić,

More information

Projektovanje paralelnih algoritama II

Projektovanje paralelnih algoritama II Projektovanje paralelnih algoritama II Primeri paralelnih algoritama, I deo Paralelni algoritmi za množenje matrica 1 Algoritmi za množenje matrica Ovde su data tri paralelna algoritma: Direktan algoritam

More information

USING THE DIRECTION OF THE SHOULDER S ROTATION ANGLE AS AN ABSCISSA AXIS IN COMPARATIVE SHOT PUT ANALYSIS. Matej Supej* Milan Čoh

USING THE DIRECTION OF THE SHOULDER S ROTATION ANGLE AS AN ABSCISSA AXIS IN COMPARATIVE SHOT PUT ANALYSIS. Matej Supej* Milan Čoh Kinesiologia Slovenica, 14, 3, 5 14 (28) Faculty of Sport, University of Ljubljana, ISSN 1318-2269 5 Matej Supej* Milan Čoh USING THE DIRECTION OF THE SHOULDER S ROTATION ANGLE AS AN ABSCISSA AXIS IN COMPARATIVE

More information

Umetne Nevronske Mreže UNM (ANN)

Umetne Nevronske Mreže UNM (ANN) Umetne Nevronske Mreže UNM (ANN) Glede na način učenja se ločujejo na Nenadzorovane (1) Nadzorovane () (1) Kohonenove nevronske mreže () Nevronske mreže z vzratnim širjenjem napake (error back propagation

More information

Lokalizacija mobilnega robota s pomočjo večsmerne kamere

Lokalizacija mobilnega robota s pomočjo večsmerne kamere Univerza v Ljubljani Fakulteta za računalništvo in informatiko Iztok Oder Lokalizacija mobilnega robota s pomočjo večsmerne kamere DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Naknadna stabilizacija videoposnetkov

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. Naknadna stabilizacija videoposnetkov UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE Zaključna naloga Naknadna stabilizacija videoposnetkov (Subsequent video stabilization) Ime in priimek: Kevin Sedevcic

More information

Avtomatsko prilagajanje tempa spremljave solistu

Avtomatsko prilagajanje tempa spremljave solistu Univerza v Ljubljani Fakulteta za ra unalni²tvo in informatiko Andrej Oder Avtomatsko prilagajanje tempa spremljave solistu DIPLOMSKO DELO NA INTERDISCIPLINARNEM UNIVERZITETNEM TUDIJU Ljubljana, 2013 Univerza

More information

Intervalske Bézierove krivulje in ploskve

Intervalske Bézierove krivulje in ploskve Univerza v Ljubljani Fakulteta za računalništvo in informatiko Fakulteta za matematiko in fiziko Tadej Borovšak Intervalske Bézierove krivulje in ploskve DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM

More information

VERJETNOSTNE VARNOSTNE ANALIZE JEDRSKE ELEKTRARNE V ZAUSTAVITVI

VERJETNOSTNE VARNOSTNE ANALIZE JEDRSKE ELEKTRARNE V ZAUSTAVITVI Univerza v Ljubljani Fakulteta za elektrotehniko Mitja Antončič VERJETNOSTNE VARNOSTNE ANALIZE JEDRSKE ELEKTRARNE V ZAUSTAVITVI Magistrsko delo Mentor: prof. dr. Marko Čepin Ljubljana, 2016 Zahvala Na

More information

Vzporedni algoritmi za urejanje podatkov

Vzporedni algoritmi za urejanje podatkov Univerza v Ljubljani Fakulteta za računalništvo in informatiko Darko Božidar Vzporedni algoritmi za urejanje podatkov MAGISTRSKO DELO ŠTUDIJSKI PROGRAM DRUGE STOPNJE RAČUNALNIŠTVO IN INFORMATIKA Mentor:

More information

NEODLOČLJIVI PROBLEMI V TEORIJI IZRAČUNLJIVOSTI

NEODLOČLJIVI PROBLEMI V TEORIJI IZRAČUNLJIVOSTI UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA LUKA VIKTOR ROGAČ NEODLOČLJIVI PROBLEMI V TEORIJI IZRAČUNLJIVOSTI MAGISTRSKO DELO LJUBLJANA, 2017 UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA POUČEVANJE, PREDMETNO

More information

Prvi biokemijski komplet: Življenjska števila

Prvi biokemijski komplet: Življenjska števila Prvi biokemijski komplet: Življenjska števila S prvim biokemijskim kompletom boš spoznal zgodbo o življenjskih številih. Ta števila so 1 (zate), 2 (za tvoje gene), 4 (za gradnike DNK in RNK) ter 20 (za

More information

UNIVERZA V MARIBORU EKONOMSKO-POSLOVNA FAKULTETA, MARIBOR

UNIVERZA V MARIBORU EKONOMSKO-POSLOVNA FAKULTETA, MARIBOR UNIVERZA V MARIBORU EKONOMSKO-POSLOVNA FAKULTETA, MARIBOR MAGISTRSKO DELO POSLOVNI POTENCIALI SPLETNIH ISKALNIKOV NA PODROČJU MARKETINGA BUSINESS POTENTIAL OF INTERNET SEARCH ENGINES IN MARKETING Študent:

More information

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA SARA BREZEC HAUSDORFFOV PARADOKS DIPLOMSKO DELO LJUBLJANA, 2016 UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA DVOPREDMETNI UČITELJ MATEMATIKA-FIZIKA SARA BREZEC mentor:

More information

UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA

UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO ALMA ĆORALIĆ UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO OBLIKOVANJE TIMA V VOLKSBANK LJUDSKI BANKI, D. D. Ljubljana, februar 2008 ALMA

More information

DELOVANJA GRUP IN BLOKI NEPRIMITIVNOSTI

DELOVANJA GRUP IN BLOKI NEPRIMITIVNOSTI UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA DEJAN KREJIĆ DELOVANJA GRUP IN BLOKI NEPRIMITIVNOSTI DIPLOMSKO DELO Ljubljana, 2015 UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA Dvopredmetni učitelj: matematika -

More information

MODELI CESTNEGA PROMETA

MODELI CESTNEGA PROMETA MODELI CESTNEGA PROMETA LUKA ŠEPEC Fakulteta za matematiko in fiziko Univerza v Ljubljani V članku so predstavljeni različni pristopi k modeliranju cestnega prometa. Najprej so predstavljene empirične

More information

Determination of the adhesive fracture energy G C. Določitev raztržne žilavosti strukturnih adhezivov G C

Determination of the adhesive fracture energy G C. Določitev raztržne žilavosti strukturnih adhezivov G C RMZ Materials and Geoenvironment, Vol. 55, No. 4, pp. 476 489, 2008 476 Determination of the adhesive fracture energy G C of structural adhesives using DCB and Peel tests Določitev raztržne žilavosti strukturnih

More information

STRAST PRI DELU Seminarska naloga pri predmetu Psihološka diagnostika in ukrepi v delovnem okolju

STRAST PRI DELU Seminarska naloga pri predmetu Psihološka diagnostika in ukrepi v delovnem okolju Univerza v Ljubljani Filozofska fakulteta Oddelek za psihologijo STRAST PRI DELU Seminarska naloga pri predmetu Psihološka diagnostika in ukrepi v delovnem okolju Avtorica: Urška Marušič Mentorica: doc.

More information

Algoritam za množenje ulančanih matrica. Alen Kosanović Prirodoslovno-matematički fakultet Matematički odsjek

Algoritam za množenje ulančanih matrica. Alen Kosanović Prirodoslovno-matematički fakultet Matematički odsjek Algoritam za množenje ulančanih matrica Alen Kosanović Prirodoslovno-matematički fakultet Matematički odsjek O problemu (1) Neka je A 1, A 2,, A n niz ulančanih matrica duljine n N, gdje su dimenzije matrice

More information

Sistem za sledenje in analizo uporabe računalniških aplikacij

Sistem za sledenje in analizo uporabe računalniških aplikacij Univerza v Ljubljani Fakulteta za računalništvo in informatiko Dejan Mesar Sistem za sledenje in analizo uporabe računalniških aplikacij DIPLOMSKO DELO NA UNIVERZITETNEM ŠTUDIJU Mentor: izr. prof. dr.

More information

FOTONSKI POGON. Avtor: Črt Harej Mentor: prof. dr. Simon Širca. Ljubljana, Maj 2016

FOTONSKI POGON. Avtor: Črt Harej Mentor: prof. dr. Simon Širca. Ljubljana, Maj 2016 FOTONSKI POGON Seminar I b - 1. letnik, II. stopnja Avtor: Črt Harej Mentor: prof. dr. Simon Širca Ljubljana, Maj 2016 Povzetek Človeštvo že skoraj 60 let raziskuje in uresničuje vesoljske polete. V tem

More information

Kako proteini najdejo specifično zaporedje na DNK

Kako proteini najdejo specifično zaporedje na DNK Seminar I a - 1. letnik II. stopnja Kako proteini najdejo specifično zaporedje na DNK AVTOR: Peter Šušnjar MENTOR: dr. Andrej Vilfan Ljubljana, 19. junij 2013 Povzetek Preko vezave proteinov na specifična

More information

Introduction of Branching Degrees of Octane Isomers

Introduction of Branching Degrees of Octane Isomers DOI: 10.17344/acsi.2016.2361 Acta Chim. Slov. 2016, 63, 411 415 411 Short communication Introduction of Branching Degrees of Octane Isomers Anton Perdih Faculty of Chemistry and Chemical Technology, University

More information

ANALIZA MOŽNOSTI REALIZACIJE PRIMITIVNIH RAČUNALNIŠKIH STRUKTUR NA OSNOVI DNK GRADNIKOV

ANALIZA MOŽNOSTI REALIZACIJE PRIMITIVNIH RAČUNALNIŠKIH STRUKTUR NA OSNOVI DNK GRADNIKOV UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Božidara Cvetković ANALIZA MOŽNOSTI REALIZACIJE PRIMITIVNIH RAČUNALNIŠKIH STRUKTUR NA OSNOVI DNK GRADNIKOV Diplomska naloga na univerzitetnem

More information

Rok ČERNE. PLENILSTVO in VOLK

Rok ČERNE. PLENILSTVO in VOLK Rok ČERNE PLENILSTVO in VOLK Ljubljana, 2010 KAZALO: 1 Splošne zakonitosti o plenilstvu...1 1.1 Osnovna opredelitev plenilstva...1 1.2 Vpliv neodvisnih dejavnikov na dinamiko plenjenja...1 1.3 Razpoložljivost

More information

UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO ODDELEK ZA FIZIKO SEMINAR. Pulzni eksperiment

UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO ODDELEK ZA FIZIKO SEMINAR. Pulzni eksperiment UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO ODDELEK ZA FIZIKO SEMINAR Pulzni eksperiment AVTOR: Andraž Petrović MENTOR: prof. Matjaž Ravnik Ljubljana, Maj 2004 POVZETEK: V seminarju bom opisal

More information

Open Data Structures (za programski jezik Java) v slovenščini. Izdaja 0.1F. Pat Morin

Open Data Structures (za programski jezik Java) v slovenščini. Izdaja 0.1F. Pat Morin Open Data Structures (za programski jezik Java) v slovenščini Izdaja 0.1F Pat Morin Kazalo 1 Uvod 1 1.1 Zahteva po učinkovitosti.................... 2 1.2 Vmesniki............................. 4 1.2.1

More information

A L A BA M A L A W R E V IE W

A L A BA M A L A W R E V IE W A L A BA M A L A W R E V IE W Volume 52 Fall 2000 Number 1 B E F O R E D I S A B I L I T Y C I V I L R I G HT S : C I V I L W A R P E N S I O N S A N D TH E P O L I T I C S O F D I S A B I L I T Y I N

More information

Usmerjenost v samopreseganje in dosežke vodenje samega sebe

Usmerjenost v samopreseganje in dosežke vodenje samega sebe Usmerjenost v samopreseganje in dosežke vodenje samega sebe Petra Povše* Fakulteta za organizacijske študije v Novem mestu, Novi trg 5, 8000 Novo mesto, Slovenija petra.koprivec@gmail.com Povzetek: Raziskovalno

More information

Mary Agnes SERVATIUS Izomorfni Cayleyevi grafi nad neizomorfnimi grupami (Isomorphic Cayley Graphs on Non-Isomorphic Groups)

Mary Agnes SERVATIUS Izomorfni Cayleyevi grafi nad neizomorfnimi grupami (Isomorphic Cayley Graphs on Non-Isomorphic Groups) UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE Matematične znanosti Študijski program 2. stopnje Mary Agnes SERVATIUS Izomorfni Cayleyevi grafi nad neizomorfnimi

More information

ija 3 m Kislost-bazi - čnost Hammettove konstante ska ke acevt Farm Izr. prof. dr Izr. prof. dr. Marko Anderluh. Marko Anderluh 23 oktober.

ija 3 m Kislost-bazi - čnost Hammettove konstante ska ke acevt Farm Izr. prof. dr Izr. prof. dr. Marko Anderluh. Marko Anderluh 23 oktober. acevts ska kem mija 3 Farm Kislost-bazičnost Hammettove konstante Izr. prof. dr. Marko Anderluh 23. oktober 2012 Vpliv kislinsko bazičnih lastnosti Vezava na tarčno mesto farmakodinamsko delovanje Topnost/sproščanje

More information

Izboljšanje natančnosti razpoznavanja govora z določanjem njegove aktivnosti na podlagi statističnega modela

Izboljšanje natančnosti razpoznavanja govora z določanjem njegove aktivnosti na podlagi statističnega modela Elektrotehniški vestnik 69(1): 75 82, 2002 Electrotechnical Review, Ljubljana, Slovenija Izboljšanje natančnosti razpoznavanja govora z določanjem njegove aktivnosti na podlagi statističnega modela Bojan

More information

Statistika 2 z računalniško analizo podatkov

Statistika 2 z računalniško analizo podatkov Statistika 2 z računalniško analizo podatkov Bivariatne analize 1 V Statistične analize v SPSS-ju V.4 Bivariatne analize Analyze - Descriptive statistics - Crosstabs Analyze Correlate Bivariate Analyze

More information

Modeliranje in simulacija helikopterskega žerjava

Modeliranje in simulacija helikopterskega žerjava Modeliranje in simulacija helikopterskega žerjava Marko Hančič Mentor: prof.dr. Aleš Belič Fakulteta za elektrotehniko, UL Tržaška 25, 1000 Ljubljana markohancic@gmail.com Modelling and simulation of a

More information

Hiperbolične funkcije DIPLOMSKO DELO

Hiperbolične funkcije DIPLOMSKO DELO UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA FAKULTETA ZA MATEMATIKO IN FIZIKO Študijski program: Matematika in fizika Hiperbolične funkcije DIPLOMSKO DELO Mentor: dr. Marko Razpet Kandidatka: Teja Bergant

More information

Statistika 2 z računalniško analizo podatkov. Neizpolnjevanje predpostavk regresijskega modela

Statistika 2 z računalniško analizo podatkov. Neizpolnjevanje predpostavk regresijskega modela Statistika 2 z računalniško analizo podatkov Neizpolnjevanje predpostavk regresijskega modela 1 Predpostavke regresijskega modela (ponovitev) V regresijskem modelu navadno privzamemo naslednje pogoje:

More information

VERJETNOSTNI RAČUN IN STATISTIKA. Aleksandar Jurišić, FRI

VERJETNOSTNI RAČUN IN STATISTIKA. Aleksandar Jurišić, FRI VERJETNOSTNI RAČUN IN STATISTIKA Aleksandar Jurišić, FRI 2. avgust 2012 ii Seznam poglavij 1. Uvod........................... 1 I. VERJETNOST................... 7 2. Poskusi, dogodki in definicija verjetnosti............

More information

TERMODINAMIKA, BIOENERGETIKA

TERMODINAMIKA, BIOENERGETIKA TERMODINAMIKA, BIOENERGETIKA Osnovni termodinamski koncepti Fizikalni pomen termodinamskih količin ph in standardni pogoji Sklopljeni procesi Energijsko bogate biomolekule Osnovni termodinamski koncepti

More information

Distance reduction with the use of UDF and Mathematica. Redukcija dolžin z uporabo MS Excel ovih lastnih funkcij in programa Mathematica

Distance reduction with the use of UDF and Mathematica. Redukcija dolžin z uporabo MS Excel ovih lastnih funkcij in programa Mathematica RMZ Materials and Geoenvironment, Vol. 54, No. 2, pp. 265-286, 2007 265 Distance reduction with the use of UDF and Mathematica Redukcija dolžin z uporabo MS Excel ovih lastnih funkcij in programa Mathematica

More information

Obisk iz rezultatov iskanj na iskalniku Google

Obisk iz rezultatov iskanj na iskalniku Google Univerza v Ljubljani Fakulteta za računalništvo in informatiko Uroš Okorn Obisk iz rezultatov iskanj na iskalniku Google DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

DIGITALNO VODENJE Laboratorijske vaje

DIGITALNO VODENJE Laboratorijske vaje II FAKULTETA ZA ELEKTROTEHNIKO DIGITALNO VODENJE Laboratorijske vaje GREGOR KLANČAR Kazalo 1. Spoznavanje z mikrokrmilniškim okoljem Arduino Uno 1 1.1 Opis tiskanine Arduino Uno..................... 1

More information

Metoda za dolgoročno vizualno sledenje z značilnimi točkami

Metoda za dolgoročno vizualno sledenje z značilnimi točkami Univerza v Ljubljani Fakulteta za računalništvo in informatiko Tina Strgar Metoda za dolgoročno vizualno sledenje z značilnimi točkami DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

(semiotic) in»semeiotičen«(semeiotic). S

(semiotic) in»semeiotičen«(semeiotic). S C. S. Peirce velja za avtorja prve splošne novoveške teorije znakov, prve splošne semiotike. Termin je uporabljal v dveh pridevniških oblikah, semiotičen (semiotic) in»semeiotičen«(semeiotic). S semiotično

More information

PODATKOVNO RUDARJENJE ALI SAMODEJNO NAPOVEDOVANJE V ENERGETIKI

PODATKOVNO RUDARJENJE ALI SAMODEJNO NAPOVEDOVANJE V ENERGETIKI CIGRÉ ŠK D2-11 PODATKOVNO RUDARJENJE ALI SAMODEJNO NAPOVEDOVANJE V ENERGETIKI BORIS BIZJAK Univerza v Mariboru, FERI, Smetanova 17, 2000 Maribor E-mail: boris.bizjak@um.si, boris.bizjak57@gmail.com, tel.

More information

Avtomatska transkripcija zvočnih posnetkov tolkal

Avtomatska transkripcija zvočnih posnetkov tolkal Univerza v Ljubljani Fakulteta za računalništvo in informatiko Miha Pešič Avtomatska transkripcija zvočnih posnetkov tolkal DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO IN

More information

Sistem za optimizacijo sledilnikov v

Sistem za optimizacijo sledilnikov v Univerza v Ljubljani Fakulteta za računalništvo in informatiko Maja Zadnikar Sistem za optimizacijo sledilnikov v računalniškem vidu DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE

More information

NAPOVEDOVANJE STEČAJEV PODJETIJ Z LOGIT MODELOM IN DISKRIMINANTNO ANALIZO

NAPOVEDOVANJE STEČAJEV PODJETIJ Z LOGIT MODELOM IN DISKRIMINANTNO ANALIZO UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO NAPOVEDOVANJE STEČAJEV PODJETIJ Z LOGIT MODELOM IN DISKRIMINANTNO ANALIZO Ljubljana, januar 2008 MATJAŽ ŠIRCA IZJAVA Študent Matjaž Širca izjavljam,

More information

Karakteristične vrednosti dvojnih vezanih kozolcev

Karakteristične vrednosti dvojnih vezanih kozolcev Karakteristične vrednosti dvojnih vezanih kozolcev mag. Edo Wallner, univ.dipl.inž.grad. Povzetek [O AVTORJU] V preteklem letu smo pričeli z zbiranjem pomembnejših podatkov dvojnih vezanih kozolcev. V

More information

Teorija naklju nih matrik

Teorija naklju nih matrik Teorija naklju nih matrik Univerza v Ljubljani, Fakulteta za matemematiko in ziko Avtor: Benjamin Batisti Mentor: prof. dr. Tomaº Prosen Maj 2006 Povzetek Kompleksne kvantnomehanske sisteme, ki jih ne

More information