Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

2010. febr. 9Bev. a Bioinformatikába1 Bevezetés a Bioinformatikába Budapesti Műszaki és Gazdaságtudományi Egyetem 2009/10 Tavaszi Szemeszter.

Hasonló előadás


Az előadások a következő témára: "2010. febr. 9Bev. a Bioinformatikába1 Bevezetés a Bioinformatikába Budapesti Műszaki és Gazdaságtudományi Egyetem 2009/10 Tavaszi Szemeszter."— Előadás másolata:

1 2010. febr. 9Bev. a Bioinformatikába1 Bevezetés a Bioinformatikába Budapesti Műszaki és Gazdaságtudományi Egyetem 2009/10 Tavaszi Szemeszter

2 2010. febr. 9Bev. a Bioinformatikába2 Bevezetés Gál Péter Budinszky András

3 2010. febr. 9Bev. a Bioinformatikába3 Miért fontos a bioinformatika? “ A biológia közelítésmódja az adat- gyüjtéstől az adatértelmezés felé fordul….” “A biotechnológia nem más mint a biológiai információ ipari felhasználása” Lee Hood, in The Economist, 1997 Walter Gilbert, Nature, 1991

4 2010. febr. 9Bev. a Bioinformatikába4 Mit csinál a bioinformatika? FELHASZNÁLÓ Statisztika, elemzés Interpretáció Nyers szekvenciák, műszeres adatok feldolgozása Adatbázisok fenntartása Módszerfejlesztés (Biocomputing) Adatkezelés Szolgáltatás Kutatás

5 2010. febr. 9Bev. a Bioinformatikába5 Gyors áttekintés Adattípusok  Szekvenciák  3D szerkezet  Hálózatok  Szövegek (absztraktok, cikkek)  (Idősorok) Feladattípusok:  Adatgyűjtés, tárolás  Osztályozás  Integrálás  Vizualizálás  (Modellezés) Adatbázisok

6 2010. febr. 9Bev. a Bioinformatikába6 KOGNITÍV- ÉS NYELV TUDOMÁNY BIOLÓGIAI ADATOK INFORMATIKA Modellezés, leírás and vizualizálás Bioinformatika

7 2010. febr. 9Bev. a Bioinformatikába7 Molekuláris biológia, centrális dogma DNS Szekvencia RNS fenotipus (sejt aktivitás) fehérje Aminósav szekvencia

8 2010. febr. 9Bev. a Bioinformatikába8 Bioinformatikai témák DNS Szekvencia RNS fenotipus (sejt aktivitás) fehérje Szekvencia elemzésStruktura elemzés Szekvencia elemzés Gén expresszió elemzés Aminósav szekvencia

9 2010. febr. 9Bev. a Bioinformatikába9 Szekvencia elemzés Szekvencia illesztések  páronkénti  többszörös Szekvenálás  DNS szekvenálás hibridizálással  Fehérje szekvenálás tömegspektrométerrel Filogenetikai fa építése

10 2010. febr. 9Bev. a Bioinformatikába10 Gén expresszió elemzés Microarray technológia felhasználható nagy számú gén expresszió-szintjének különböző körülmények melletti meghatározására. Igy a gén expresszió elemzés a microarray kisérletek által szolgáltatott adatok komputeres elemzésére ad lehetőséget

11 2010. febr. 9Bev. a Bioinformatikába11 Egy unaloműző játék 2 játékos (A és B), 2 kupac kavics (10 és 10 db) Amikor egy játékos sorra kerül, akkor el kell vennie  egy kavicsot az egyik kupacból, vagy  egy-egy kavicsot mind a két kupacból Az a játékos nyer, aki az utolsó kavicsot elveszi ‘A’ játékos kezd Mi a nyerő stratégia?

12 2010. febr. 9Bev. a Bioinformatikába12 Nyerő stratégia ‘B’ játékos részére  2+2  A 1+1; B 1+1  A 1+0; B 1+0  A 0+1; B 0+1  3+3 ?  ? ‘A’ játékos részére  2+2  reménytelen  3+3 ?  ?

13 2010. febr. 9Bev. a Bioinformatikába13

14 2010. febr. 9Bev. a Bioinformatikába14 Újabb kérdés Van ennek a játéknak valami köze a bioinformatikához? Nagyon is sok Szekvenciák illesztése ‘álruhában’ BLAST

15 2010. febr. 9Bev. a Bioinformatikába15 Algoritmus Lépések sorozata, amely megold egy jól definiált problémát. Számítógépes algoritmus  Utasitások sorozata a probléma megoldására Algoritmus és program  Pseudo kód ill. programnyelvi kód Jó algoritmus kritériumai  Helyesség és hatékonyság

16 2010. febr. 9Bev. a Bioinformatikába16 Tervezési célkitűzések Helyesség  A kitűzött feladatot korrekt módon kell megoldania  Minden lehetséges inputra!  Mindig függ specifikusan a feladattól Hatékonyság  Ne használjon több erőforrást mint amennyi szükségeltetik  Futási idő  Memória

17 2010. febr. 9Bev. a Bioinformatikába17 Algoritmus helyessége Az algoritmusnak a kitűzött feladatot korrekt módon kell megoldania Egy algoritmus helyességét különböző igazolási technikák alkalmazásával lehet ellenőrizni

18 2010. febr. 9Bev. a Bioinformatikába18 Igazolási technikák Bizonyitás ellenpéldával  Keresünk egy példát, ami bizonyitja a hamis voltát “Minden 2 i – 1 alaku szám prímszám”  Ellenpélda: i = 4 → 2 i = 15, ami nem prímszám

19 2010. febr. 9Bev. a Bioinformatikába19 Igazolási technikák (folyt) Bizonyítás ellentmondással  Feltesszük, hogy az állitás hamis, és megmutatjuk, hogy ez a feltevés ellentmondáshoz vezet. “Ha a*b páratlan, akkor a és b is páratlanok”  Tegyük fel (az általánosság megszorítása nélkül), hogy a páros és b páratlan  a*b ekkor páros számot eredményez  Ellentmondás: a*b nem lehet egyidejüleg páros és páratlan

20 2010. febr. 9Bev. a Bioinformatikába20 Igazolási technikák (folyt) Bizonyitás indukcióval  Szingli utasitások esetén triviális return (n*(n+1)) / 2 // egészek összege 1-töl n-ig  Ciklusok esetén nem annyira triviális // keressük meg az A tömbben az x-el egyenlő elemet // és adjuk vissza ennek az indexét; // ha pedig egyik sem az, akkor adjunk vissza ‘–1’-et for i ← 0 to n – 1 if x == A[i] then return i return –1 Megj: invariáns, terminálófüggvény, stb.

21 2010. febr. 9Bev. a Bioinformatikába21 Pénzváltási probléma Váltsunk fel egy adott összeget a lehető legkisebb számú pénzérmére Első lépés: Pontosan definiáljuk a feladatot  Input: M pénzösszeg centekben  Output: a legkisebb számú ‘quarter’ q, ‘dime’ d, ‘nickel’ n, és ‘penny’ p, úgy hogy az értékük összege M legyen (25q+10d+5n+p = M) és q + d + n + p minimalizált

22 2010. febr. 9Bev. a Bioinformatikába22 US pénzváltási algoritmus USValto(M) 1. q = M / M = M – 25*q 3. d = M / M = M – 10 * d 5. n = M / 5 6. M = M – 10 * n 7. p = M

23 2010. febr. 9Bev. a Bioinformatikába23 Általánositott pénzváltási probléma Váltsunk fel egy adott összeget a lehető legkisebb számú – megadott értékű – pénzérmére  Input: M pénzösszeg, valamint d különböző felhasználható pénzérme c = (c 1, c 2, …, c d ) tömbje, csökkenő értéksorrendben (c 1 > c 2 > … > c d ).  Output, d egészszám listája (i 1, i 2, …, i d ), ahol c 1 *i 1 + c 2 *i 2 + … + c d *i d = M és i 1 + i 2 + …+ i d minimalizált.

24 2010. febr. 9Bev. a Bioinformatikába24 Általánositott pénzváltási probléma algoritmusa JobbValto(M, c, d) 1. for k = 1 to d 2. i k = M / c k 3. M = M – c k * i k 4. return (i 1, i 2, …, i k ) Helyes ez az algoritmus?  M = 40  c 1 = 25, c 2 = 20, c 3 = 10, c 4 = 5, c 5 = 1

25 2010. febr. 9Bev. a Bioinformatikába25 Helyes Algoritmus NyersEroValto(M, c, d) 1. legkisebbErmeSzam = ∞ 2. for each (i 1, …, i d ) from (0, …, 0) to (M/c 1, …, M/c d ) 3. ermekErteke = Σ i k *c k 4. if ermekErteke = M 5. ermekSzama = Σ i k 6. If ermekSzama < legkisebbErmeSzam 7. legkisebbErmeSzam = ermekSzama 8. legjobbValtas = (i 1, i 2, …, i d ) 9. return (legjobbValtas)

26 2010. febr. 9Bev. a Bioinformatikába26 Algoritmus hatékonysága Az algoritmus ne használjon több erőforrást mint amennyi szükségeltetik Két opció: Benchmarking és elemzés

27 2010. febr. 9Bev. a Bioinformatikába27 Benchmarking Mérjük az algoritmus végrehajtási idejét System.currentTimeMillis() vagy más módszer használatával Buktatók:  Limitált teszt adat áll rendelkezésre – nem feltétlenül indikatív más input esetén  Két algoritmus összehasonlítása ugyanolyan hardware konfigurációt igényel  Algoritmust elöször implementálnunk kell

28 2010. febr. 9Bev. a Bioinformatikába28 Algoritmus Elemzés Számoljuk meg a műveletek össz-számát az algoritmus pseudo kódjában: Algorithm addFromOneToN(n) Input: An integer n Output: The sum of all integers from 1 to n sum ← 0// 1 op for i ← 1 to n do// n ops sum ← sum + i// n ops return sum// 1 ops Összesen: 2n + 2 művelet

29 2010. febr. 9Bev. a Bioinformatikába29 Legrosszabb ill. átlag eset Legrosszabb eset: maximum számú végrehajtandó művelet Átlag eset: átlag számú művelet tipikus futás során Meg kell határozni  A lehetséges inputok ‘tartományát’  E tartomány valószínűségi eloszlását Running Time legrosszabb eset legjobb eset átlag eset (?) }

30 2010. febr. 9Bev. a Bioinformatikába30 Pénzváltó algoritmusok elemzése  USValto: a műveletek száma konstans  JobbValto: a műveletek száma szintén konstans  NyersEroValto:  A futási idő felső korlátja exponenciálisan nő d-től függően és ezért az algoritmus nem praktikus nagy d érték esetén.

31 2010. febr. 9Bev. a Bioinformatikába31 Big-O Definiáljuk a probléma méretét (pl., lehetséges érmék száma d, szekvencia hossza n,...) Definiáljuk az “alaplépések”-et (pl., ősszeadás, osztás,…) Fejezzük ki a futási időt a probléma méretének függvényében (pl., 3*n*log(n) +n) Amint a probléma mérete a positív végtelen felé közelít, csak a legmagasabb rendű tényező “számít” Big-O a legmagasabb rendű tényező A fenti példában Big-O: n*log(n) Polinomiális (O(n 2 )) ill. exponenciális (O(2 n )) NP-teljes

32 2010. febr. 9Bev. a Bioinformatikába32 Heurisztikus algoritmusok Bár egy adott D probléma lehet, hogy NP-teljes, bioinformatikusok gyakran megelégszenek un. heurisztika alkalmazásával. Az ilyen algorithmusok matematikailag nem garantálnak polinomiális végrehajtási időt, de átlagos adatok esetén elfogadható gyorsan lefutnak és a legtöbbször elfogadhatóan optimális megoldást adnak.


Letölteni ppt "2010. febr. 9Bev. a Bioinformatikába1 Bevezetés a Bioinformatikába Budapesti Műszaki és Gazdaságtudományi Egyetem 2009/10 Tavaszi Szemeszter."

Hasonló előadás


Google Hirdetések