1 / 37

Doc. Robertas Damaševičius KTU Programų inžinerijos katedra, Studentų 50-415

Biosistemų augimo ir evoliucijos modeliai. Doc. Robertas Damaševičius KTU Programų inžinerijos katedra, Studentų 50-415 Email: damarobe @soften.ktu.lt. Fraktalai. Fraktalo sąvoką apie 1980 m. įvedė Mandelbrot’as

may
Télécharger la présentation

Doc. Robertas Damaševičius KTU Programų inžinerijos katedra, Studentų 50-415

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Biosistemų augimo ir evoliucijos modeliai Doc. Robertas Damaševičius KTU Programų inžinerijos katedra, Studentų 50-415 Email: damarobe@soften.ktu.lt

  2. Fraktalai • Fraktalo sąvoką apie 1980 m. įvedė Mandelbrot’as • Fraktalas – objektas, kurio pagrindinė savybė yra savipanašumas, kai objektą galima išskaidyti į mažas dalis, kurios yra sumažintos visos objekto struktūros kopijos. • Pavyzdžiui, medis, plaučiai, kraujotakos ir nervų sistema. • Fraktalinės struktūros • Kantoro (Cantor) aibė, • Peano (Pean) kreivė, • Kocho (Koch) kreivė, • Sierpinskio (Sierpinski) trikampis ir kilimas, • Žiulia (Julia) aibės. Bioinformatika (B110M100)

  3. Mandelbrot’o fraktalas

  4. Fraktalų pavyzdžiai • Natūralus fraktalas: Romanesco kopūstas

  5. Lichtenberg’o figūros • Suformuoja aukštos įtampos (pvz., žaibo) iškrova

  6. Matematiniai fraktalų gavimo metodai • Iteracinių funkcijų sistema (IFS) • Atsitiktinių iteracinių funkcijų sistema (AIFS) • L-sistemos Bioinformatika (B110M100)

  7. Fraktalų demonstracija • Fraktalinio augimo modelis • http://apricot.polyu.edu.hk/~lam/dla/dla.html Bioinformatika (B110M100)

  8. Sierpinski trikampis • http://math.rice.edu/~lanius/fractals/sierjava.html Bioinformatika (B110M100)

  9. IFS • Pradinei figūrai pritaikomas afininių transformacijų rinkinys. • Afininė transformacija w yra sudaryta iš posūkio, atspindžio, sumažinimo ir slinkties transformacijų. • Pritaikius taškui P = (x, y) afininę transformaciją, gausime kitą tašką, kurio koordinatės P = (u, v) apskaičiuojamos taip: u = ax + by + e v = cx + dy + fa,..., f - transformacijos koeficientai • Pritaikę afininių transformacijų rinkinį figūrai (taškų aibei), gausime kitą figūrą (kitą taškų aibę). • Kartojant šį procesą kartosime, po tam tikro laiko gausime nesikeičiantį vaizdą, kuris yra vadinamas atraktoriumi. • Praktiškai gali reikėti labai daug kartojimų Bioinformatika (B110M100)

  10. IFS pavyzdys

  11. AIFS • Taikomos ne visos transformacijos iš karto, bet tik viena iš jų, kuri yra pritaikoma tik vienam taškui. • Jei yra n afininių transformacijų wi, tai joms parenkamos atitinkamos pasirodymo tikimybės pi (∑ pi =1). • Konkrečios transformacijos taikymas priklauso nuo jos tikimybės. • Tokiu būdu gaunama taškų aibė s1, s2, s3 yra atsitiktiniai skaičiai iš intervalo [1...n]. Bioinformatika (B110M100)

  12. AIFS: Kielek medis Bioinformatika (B110M100)

  13. IFS demonstracija • http://www.cut-the-knot.org/ctk/ifs.shtml Bioinformatika (B110M100)

  14. L-sistema • L-sistemas pirmasis panaudojo Lindenmajeris augalų ir dumblių augimo procesams aprašyti. • Kiekviena ląstelė turi savo pažymėjimą - raidę, kuri gali reikšti ląstelės amžių, dydį ar kitokią laike kintančią charakteristiką. • Įvedamos perrašymo taisyklės kiekvienai raidei. Pvz., ką tik gimusi ląstelė pažymima A raide, o suaugusi - B. • Ląstelė subręsta per vieną laiko tarpsnį ir kitu tarpsniu pasidalina į dvi ląsteles. Bioinformatika (B110M100)

  15. L-gramatikos • Formaliai aprašo L-sistemas • Apibrėžimas: • Formali lygiagreti gramatika • Taisyklės taikomos lygiagrečiai • Savybės: • lygiagretumas • Neskiriami terminaliniai ir neterminaliniai skirtumai • L-sistemų tipai: • Nepriklauso nuo konteksto: taisyklė priklauso tik nuo vieno simbolio • Jautri kontekstui:taisyklė priklauso ne tik nuo vieno simbolio, bet ir nuo jo kaimynų • Stochastinės: kiekviena taisyklė pasirenkama su tam tikra tikimybe

  16. DNR sekų generavimas naudojantL-gramatikas • Biologinis pagrindimas: • Visi simboliai yra vienodi, nėra skirtumo tarp terminalinių ir neterminalinių simbolių • Taisyklių tipai: • Trynimo taisyklė modeliuoja trynimo mutaciją • Grandinės taisyklė modeliuoja vieno nukleotido mutaciją • Kartojimo taisyklė modeliuoja pasikartojančius sekų motyvus • Augimo taisyklė modeliuoja DNR sekos augimą (evoliuciją) • Stochastinėtaisyklė modeliuoja atsistiktines sekos mutacijas

  17. Formalus L-gramatikos aprašas Čia: • simbolių aibė • pradinė sistemos būsena. • simbolių generavimo taisyklės. • aibė tikimybių , kad taisyklė bus pritaikyta.

  18. L-sistemos pavyzdys • Tokiu atveju perrašymo taisyklės yra tokios: A → B ir B → AA. • Jei pradėtume nuo vienos suaugusios ląstelės, gautume tokį vaizdą: B AA BB AAAA BBBB AAAAAAAA ir t.t. • Jei parinktume grafinį gautos sekos pavaizdavimą, galėtume stebėti, kaip vyksta sistemos evoliucija laike: vystymąsis arba augimas.

  19. L-sistemos augimo pavyzdys Bioinformatika (B110M100)

  20. L-sistemų pavyzdžiai Bioinformatika (B110M100)

  21. Fraktalinis augalas Kintamieji : X F Konstantos : + − Pradžia : X Taisyklės : (X → F-[[X]+X]+F[+FX]-X), (F → FF) Kampas : 25° F reiškia “piešti į priekį" “-” reiškia “pasukti į kairę 25°" “+”reiškia " pasukti į dešinę25°" Bioinformatika (B110M100)

  22. L-sistemų demonstracija • http://zool33.uni-graz.at/schmickl/models/petersil.html • http://jsxgraph.uni-bayreuth.de/wiki/index.php/L-systems • http://to-campos.planetaclix.pt/fractal/plantae.htm Bioinformatika (B110M100)

  23. Ląsteliniai automatai (LA) • Hipotetinės mašinos, kurios egzistuoja begaliniame lauke, suskirstytame į elementarius laukelius, su tam tikromis taisyklėmis ir laukelio būsenų skaičiumi • LA: paprastas erdvinės decentralizuotos sistemos modelis sudarytas iš atskirų komponentų (ląstelių) • Ryšys tarp ląstelių yra apribotas vietine sąveika. • Kiekviena atskira ląstelė yra tam tikroje būsenoje, kuri keičiasi laike priklausomai nuo jos kaimynių būsenos • LA: lygiagretaus skaičiavimo įrenginys galintis modeliuoti sudėtingus gamtos reiškinius Bioinformatika (B110M100)

  24. LA klasės • 1 klasės LA evoliucionuoja į vieną homogeninę būseną • 2 klasės LA turi paprastą periodinę struktūrą • 3 klasės LA pasižymi chaotiniu (pseudoatsitiktiniu) elgesiu • 4 klasės LA turi sudėtingą lokalizuotą struktūrą ir gali būti naudojamas kaip universalus skaičiavimo automatas

  25. “Gyvenimo žaidimas” (Life Game) • “Gyvenimo žaidimas”: LA sukurtas 1970 m. Dž. Konvėjaus. • Prielaidos • "Žaidimo" erdvė - begalinė plokštuma, suskaidyta į lygaus dydžio kvadratėlius (ląsteles). • Ląstelė (kvadratėlis lentoje) gali būti gyva arba mirusi • Ląstelė (gyva ar ne), vis tiek sąveikauja su savo visais kaimynais (viso 8) • Žaidimo taisyklės. • Ląstelė, jei gyva, gali mirti iš vienatvės, kai turi mažiau nei 2 kaimynus. • Ląstelė, jei gyva, gali mirti dėl grūsties, kai daugiau nei 3 kaimynus. • Ląstelė lieka gyva, jei turi 2 ar 3 kaimynus. • Ląstelė, jei negyva, gali "gimti", kai turi 3 kaimynus.

  26. Sistemos evoliucija • „Gyvenimo žaidimas“ yra biologinės sistemos augimo ir savi-organizacijos iliustracija. • Atsirandančios situacijos žaidimo metu yra panašios į realius procesus, vykstančius gimstant, vystantis ir mirštant gyvoms organizmų kolonijoms. • Procesas, kuris yra determinuotas ir paklūsta aiškiems dėsniams, gali atrodyti chaotiškas ir neprognozuojamas. • Vykstant evoliucijai galimos tokios sistemos būsenos: • Regresija – kaivisos ląstelės žūna (nors tai atsitinka ne iš karto) • Stabilumas – sistema pereina į svyravimų režimą. Tai pusiausvyrinis arba ciklinis vystymasis. • Katastrofa – sistema plečiasi be galo • Eksperimentiškai parodyta, kad gyvenimo žaidimo taisyklės yra pusiausvyra tarp regresijos ir katastrofos.

  27. Praktinis pritaikymas • Iš LA galima sukonstruoti loginius elementus "ir", "arba", "ne" ir netgi primityvų kompiuterį su aritmetiniu loginiu įtaisu, magistrale ir atmintimi • Šis kompiuteris pasižymi universalios Tiuringo mašinos charakteristikomis ir gali spręsti bet kokio tipo uždavinius, kuriuos galima aprašyti algoritmiškai

  28. Pavyzdys: Belousovo-Žabotinskio (BŽ) reakcijos modeliavimas • Cheminis osciliatorius • Modeliuoja periodinius biologinius procesus gyvuosiuose organizmuose (pvz. širdies plakimas) • Gali būti aprašomas Lotka-Volterra lygtimis arba LA • Jei ląstelė yra būsenoje 1, ji pereina į [a/k1]+[b/k2]+1 būseną, kur a yra ląstelių kiekis tarpinėse būsenose (t.y. ne minimalioje ir ne maksimalioje), o b yra ląstelių kiekis max. būsenoje • Jei ląstelė yra maksimalioje būsenoje, jos būsena pasikeičia į minimalią. • Tarpinėse būsenose esančios ląstelės būsena turi būti suvidurkinta atsižvelgiant į kaimynų būsenas: [S/(a+b+1)]+g, kur S yra 8 kaimynių ir pačios ląstelės būsenų suma, o g vartotojo parinkta konstanta. • http://mokslasplius.lt/rizikos-fizika/bz-reakcija

  29. Ląstelinių automatų demonstracija • 5 LA tipai • http://www.hermetic.ch/dnld.php?code=PCA • Didelis taisyklių rinkinys • http://www001.upp.so-net.ne.jp/suzudo/index_e.html Bioinformatika (B110M100)

  30. Evoliuciniai skaičiavimai (ES) • Apima genetinius algoritmus (GA), evoliucijos strategijas ir evoliucinį programavimą (EP). • Remiasi fundamentaliais “natūralios evoliucijos” principais. • Terminai buvo pasiskolinti iš biologijos ir genetikos, • “individai” (arba “genotipai”, “struktūros”) populiacijoje yra vadinami “chromosomomis” (arba “eilutėmis”), • “genai” (ar “savybės”, “tipai”, “šifratoriai”) yra chromosomų elementai (arba vienetai). • Evoliucinė programa yra tikimybinis algoritmas, kuris aprašo individų populiaciją P(t) = x1(t),...,xn(t), kur t žymi iteracijų skaičių.

  31. Tipinis ES algoritmas

  32. ES procedūra • 1) Problema apibrėžiama kaip n-mačio realių skaičių vektoriaus XR’, kuris maksimizuoja tikslo funkciją F(X), paieška. • 2) Pradinių vektorių Xi, i­­ = 1,...,P, populiacija atsitiktinai parenkama iš kiekvieno kintamojo galimų reikšmių intervalo. • 3) Rezultatų vektorius, Xi’, i­­ = 1,...,P, gaunamas prie kiekvieno vektoriaus tėvo Xi atsitiktinį dydį, pasiskirsčiusį pagal Gauso pasiskirstymą su nuliniu vidurkiu. • 4) Lyginant paklaidas F(Xi) ir F(Xi’), i = 1,...,P išrenkamas vienas vektorius. P vektoriai su mažiausia paklaida tampa naujais kitos kartos tėvais. • 5) Iteracijos 2-3 kartojamos tol, kol gaunamas pakankamas sprendinys ar baigiasi duotas skaičiavimo laikas.

  33. Genetiniai algoritmai (GA) 1) Apibrėžiama problema ir aprašoma tikslo funkcija. 2) Atsižvelgiant į apribojimus sugeneruojama galimų sprendimų X populiacija. X - “chromosoma”, o jos elementai - “genai”. 3) Kiekviena populiacijos chromosoma, Xi, i = 1,...,P, dekoduojama į formą, tinkamą skaičiavimui, ir jai priskiriama vertė atitinkanti tikslo funkciją. 4) Kiekvienai chromosomai priskiriama reprodukcijos tikimybė Pi, i = 1,...,P. 5) Iš esamos populiacijos sukuriama nauja chromosomų populiacija naudojant genetinius operatorius. 6) Procesas nutraukiamas, jeigu randamas tinkamas sprendimas arba baigiasi duotas skaičiavimo laikas. Priešingu atveju pereinama į 3 žingsnį ir ciklas kartojamas.

  34. Pagr. GA operatoriai • Kryžminimas taikomas 2 chromosomom (tėvams) ir sukuria 2 naujas chromosomas (vaikus) parenkant atsitiktinę vietą dvejetainiame kode ir sujungiant dalį pirmos eilutės prieš pasirinktą vietą su dalimi antros eilutės po pasirinktos vietos • Mutacija leidžia pakeisti bet kurį bitą naujo sprendimo kodo eilutėje

  35. Tipinis GA

  36. GA ir ES palyginimas • GA naudoja genetinių operatorių modelius, tokius kaip kryžminimas, inversija ir mutacija, ir taiko juos konkrečioms chromosomoms. • ES naudoja mutuojančius tėvus ir jų vaikus individo ar sprendimų erdvės lygyje. • Taikant GA reikalingas informacijos kodavimas (pervedimas į dvejetaines eilutes) ir dekodavimas (pervedimas iš dvejetainės eilutės į realius fizinius dydžius). • ES gali tiesiogiai dirbti su natūraliomis duomenų struktūromis be kodavimo ir dekodavimo procesų.

  37. Demonstracija • http://ccl.northwestern.edu/netlogo/models/SimpleGeneticAlgorithm Bioinformatika (B110M100)

More Related