1 / 44

Bioinformatikos įrankių ir duomenų bazių integracija

Bioinformatikos įrankių ir duomenų bazių integracija. Doc. Robertas Damaševičius KTU Programų inžinerijos katedra, Studentų 50-415 Email: damarobe @soften.ktu.lt. Bioinformatikos įrankiai.

norina
Download Presentation

Bioinformatikos įrankių ir duomenų bazių integracija

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. Bioinformatikos įrankių ir duomenų bazių integracija Doc. Robertas Damaševičius KTU Programų inžinerijos katedra, Studentų 50-415 Email: damarobe@soften.ktu.lt

  2. Bioinformatikos įrankiai • Bioinformatikos įrankiai yra kompiuterinės programos, skirtos svarbios informacijos paieškai ir analizei duomenų gausybėje • Pagrindiniai faktoriai, į kuriuos reikia atkreipti dėmesį kuriant šiuos bioinformatikos įrankius, yra šie: • Galutinis vartotojas (biologas, biochemikas, genetikas) nėra gerai įgudęs naudotis kompiuterinėmis technologijomis • Programiniai įrankiai turi būti mokslininkų tyrėjų bendruomenės pasiekiami žiniatinkliu Bioinformatika (B110M100)

  3. Problema Įrankis arba duomenų bazė Sekų sugretinimas BLAST, FASTA Daugybinis sekų sugretinimas Clustal W, Macaw Šablonų radimas GRAIL, FGENEH, tRNAscan-SE, NNPP, eMOTIF, PROSITE, ChloroP Struktūros numatymas Bend.it, RNA Draw, NNPREDICT, SWISS-MODEL DNARmikromatricos GeneX, GOE, MAT, GeNet Bioinformatikos įrankiai (2003-2) Bioinformatics

  4. Pagrindinės genetinių duomenų bazės

  5. Įrankių integracijos svarba • Didelė bioinformacinių duomenų įvairovė nuo sekų iki 3-mačių vaizdų • Sudėtingi ryšiai tarp duomenų • Daug panašių duomenų šaltinių • Paklaidos, skaičiavimo klaidos, interpretavimo klaidos Bioinformatika (B110M100)

  6. Įrankių sąveikos problema • Dauguma sukurtų įrankių yra labai specializuoti, pritaikyti konkrečiam bioinformatikos uždaviniui spręsti. • Norint integruoti duomenis reikia integruoti ir tuos duomenis apdorojančius įrankius. • Duomenis ir įrankius apjungiančios technologijos sukūrimas nėra triviali užduotis dėl duomenų standartų ir programų suderinamumo standartų nebuvimo. • Įrankių suderinamumo problema gali būti sprendžiama naudojant interneto servisus. Bioinformatika (B110M100)

  7. Įrankių integravimo tikslas ir funkcijos • Pateikti priemones galinčias automatiškai apjungti daugelį įvairių kompiuterinių sistemų (duomenų bazes, tarnybines stotis ir pan.) • Įrankių integravimo sistemos funkcionalumas: • vartotojas pateikia užklausą integruotai sistemai, • integruota sistema apdoroja užklausą ir nusprendžia kaip ją suskaidyti į atskiras dalines užklausas duomenų bazėms, interneto servisams ir specifiniams įrankiams, • atliekamos dalinės užklausos (naudojant bendrąją užklausų kalbą), • grąžinami apjungti jų rezultatai. Konvertavimui tarp bendrosios ir vietinės užklausų kalbų naudojami įvyniojimo scenarijai. Bioinformatika (B110M100)

  8. Integravimo sistemos pavyzdys Bioinformatika (B110M100)

  9. Svarbiausi sistemų integracijos aspektai • Paskirstymas. • Sistema turi žinoti kiekvieno resurso vietą ir automatiškai sugeneruoti dalines užklausas. • Paskirstymo aspektas turi būti paslėptas nuo vartotojo. • Autonomiškumas. • Integruota sistema negali kontroliuoti paskirstytų resursų, kurie yra autonomiški. • Heterogeniškumas. • Integravimo sistema turi užtikrinti tinkamą skirtingo formato duomenų integravimą. Bioinformatika (B110M100)

  10. Heterogeniškumo problemos • Techninis heterogeniškumas: dėl naudojamų skirtingų platformų, duomenų bazių valdymo sistemų (užklausų kalbų, duomenų modelių), prieigos protokolų, perdavimo formatų, programavimo kalbų • Problemas galima išspęsti naudojant Java programavimo kalbą, kuria parašytos programos veikia visuose platformose, standartines užklausų kalbas, kaip SQL, žiniatinklio technologijas (HTTP, XML). • Semantinis heterogeniškumas: dėl skirtingų duomenų šaltinių modelių ir duomenų schemų. • Problemas galima išspęsti naudojant bendrą duomenų modelį, į kurį atvaizduojami vietiniai duomenų modeliai. Bioinformatika (B110M100)

  11. Interneto servisai • Per internetą prieinamų programų sąsajos, pvz., interneto naršyklės • Interneto sąsajų trūkumas: • sunku organizuoti duomenų apdorojimo srautus, • automatinis apdorojimas yra sudėtingas procesas. • Pavyzdžiui, HTML yra skirta nurodyti, kaip turi būti atvaizduojami duomenys, tačiau nieko nesako apie tai, kokio tipo duomenys yra atvaizduojami • Šia problemą galima spręsti naudojant XML • Struktūrizuotos informacijos pasikeitimui internete skirtas SOAP (Simple Object Access Protocol) protokolas, kuris naudoja XML kaip duomenų formatą • Servisų kokybės problema: servisai gali būti neatnaujinami. Bioinformatika (B110M100)

  12. Tipinio serviso architektūra Bioinformatika (B110M100)

  13. Duomenų bazių servisai • Pagr. kliūtis integruojant servisus yra jų heterogeniškumas • Paprasčiausių servisų, kaip paieška duomenų bazėse, integravimas yra sėkmingai išspręstas • Sudėtingesnių servisų integravimui naudojami darbo srautų metodas ir heterogeniškumo išsprendimo metodas • Darbų srautas gali būti statinis arba dinaminis • Statiniai srautai gali būti visiškai automatizuoti • dinaminiai srautai gali būti automatizuoti iš dalies, kadangi juose būtinas vartotojo įsikišimas • Heterogeniškumo išsprendimo metodai atlieka duomenų konvertavimą tarp skirtingų servisų duomenų I/O formatų Bioinformatika (B110M100)

  14. Reikalavimai DB servisams • Duomenų kokybė– pirminė atsakomybė perkeliama naujų faktų pateikėjui, nes servisai nepalaiko duomenų patvirtinimo • Duomenų patvirtinimas–galima padaryti arba pačioje DB, arba pagal nuorodas tinklu pasiekiamoje laboratorijos DB • Išsami dokumentacija– anotacijos, apimančios informacijos patvirtinimą ir papildymą, turėtų būti pridedamos prie kiekvieno pagrindinio informacinio objekto duomenų banke • Savalaikiškumas – nauja informacija turi būti pasiekiama kelių dienų laikotarpyje nuo publikavimo ar pateikimo duomenų bankui • Integruotumas – kiekvienas DB objektas pagal nuorodas turi būti susiejamas su tokiu pačiu ar artimu objektu kitose DB Bioinformatika (B110M100)

  15. Duomenų bazių servisų ypatybės • Decentralizuotumas. Juos kuria įvairios geografiškai nutolusios organizacijos. Labai sunku įdiegti visų šių organizacijų vieningą centralizavimo mechanizmą, kuris standartizuotų teikiamus servisus. • Didelė įvairovė. Jie atspindi bioinformacinių duomenų įvairovę. Tačiau tai sukelia problemų integruojant paslaugas. • Kintamumas. Nuolat vykdomi nauji tyrimai, kurių rezultate generuojami milžiniški naujos informacijos kiekiai, kuriami ir tobulinami duomenų apdorojimo algoritmai. • Heterogeniškumastiek semantine, tiek sintaksine prasme. Servisų teikėjai yra autonomiški, todėl naudoja įvairius duomenų standartus, duomenys skirtingai įvardijami ir t.t. Bioinformatika (B110M100)

  16. Bioinformacinio serviso pavyzdys • Informacijos apie baltymų šeimą paieška pagal DNR sekos fragmentą Bioinformatika (B110M100)

  17. Bioinformacinio serviso pavyzdys (1) • Seka yra paduodama sekų transliatoriui (pvz., Transeq), kad nustatyti šešis galimus skaitymo kadrus. • Atliekama paieška DB (pvz., OWL DB) naudojant kiekvieną iš 6 galimų skaitymo kadrų ir nustatomas tinkamas skaitymo kadras. • Nustačius tinkamą baltymą, atitinkama seka yra naudojama paieškai baltymų duomenų bazėje (pvz., PIR) atlikti ir parsiunčiama visa baltymo seka. Bioinformatika (B110M100)

  18. Bioinformacinio serviso pavyzdys (2) • Naudojant homologijų paieškos įrankį (pvz., PSI-BLAST) nustatoma baltymo šeima. • Atliekama paieška keliose duomenų bazėse (pvz., Prosite, Profiles, Pfam, eMOTIF ir BLOCKS) ir surandama informacija apie baltymą, kuri yra naudojama sekos funkcijai nustatyti. • Gauta informacija yra semantiškai integruojama išsprendžiant iš įvairių duomenų bazių gautų rezultatų heterogeniškumą. Bioinformatika (B110M100)

  19. Semantinis tinklas • Semantinis tinklas: • Ateities interneto tinklas kaip globalioji duomenų bazė. • Duomenų tinklas praplėstas semantine informacija (naudojant XML ir metaduomenų aprašymo standartą RDF (Resource Description Framework). • Tikslas: užtikrinti per internetą siunčiamų duomenų ir teikiamų servisų vieningą prasmę (semantiką). • Leidžia tiek žmonėms, tiek mašinoms daryti sprendimus kaip kategorizuoti informaciją ir ją panaudoti. • Semantinio tinklo architektūra: • semantika (elementų pavadinimai), • struktūra (elementų hierarchija) • sintaksė (bendravimas) Bioinformatika (B110M100)

  20. Semantinio tinklo infrastruktūra

  21. Metaduomenys • Duomenys apie duomenys • Duomenų bazės schema NAME LENGTH FORMAT LABEL instudy 6 MMDDYY Date of randomization into study bmi 8 Num Body Mass Index. obesity 3 0=No 1=Yes Obesity (30.0 <= BMI) ovrwt 8 0=No 1=Yes Overweight (25 <= BMI < 30) Height 3 Num Height (inches) Wtkgs 8 Num Weight (kilograms) Weight 3 Num Weight (pounds)

  22. XML (eXtensible Markup Language) • Duomenų atvaizdavimo formatas • Leidžia aprašyti duomenų hierarchiją

  23. XML ypatybės • XML dokumentų prasmė yra intuityviai aiški • Tačiau žymių vardai patys savaime semantikos nepateikia • XML turi ne semantinį, o tik žemo lygio modelį (t.y., medžio tipo vidinę struktūrą)

  24. Resource Description Framework (RDF) RDF • Resursų internete atvaizdavimo kalba • Naudoja XML, tačiau semantika skiriasi RDF Schema (RDF-S) : • išplečia modeliavimo konstrukcijų rinkinį (klasė-poklasė-tipas, savybė-subsavybė, domenas-sfera); • įgalina apibrėžti taikymo srities žodyną; • organizuoja šį žodyną kaip apibendrinimų hierarchiją; • RDF-S išreiškiamoji galia yra maža (be tiksliai apibrėžiamos prasmės, be loginio išvedimo modelio).

  25. Ontologijos ir žinių bazės • Žinių bazė - duomenų bazė, kurioje saugomos išvedimo taisyklės ir informacija apie žmonių sukauptas tam tikros dalykinės srities žinias ir patirtį • Ontologija – tai ypatinga žinių bazė, aprašanti faktus, kuriuos tam tikra naudotojų grupė laiko visada teisingais, remiantis sutartomis naudojamo žodyno terminų prasmėmis • Ontologijos aprašomos naudojant standartinę kalbą OWL (Web Ontology Language) [N. Guarino. Formal Ontology and Information Systems. N. Guarino (ed.), Formal Ontology in Information Systems. Proceedings of FOIS’98, Trento, Italy, June 1998. IOS Press, pp. 3-15]

  26. Ontologijų naudojimo privalumai • Žinių struktūrizavimo palengvinimas naujose srityse • Bibliotekoje saugomų komponentų pakartotinas naudojimas (išvengiant būtinumo kurti iš naujo) • Tarpusavio sąveikos tarp skirtingų sistemos komponentų palengvinimas, išsiaiškinant atitikmenis tarp jų naudojamų terminų • Intelektuali paieška apdorojant užklausas (pvz., surandant artimiausius dalinius atitikmenis)

  27. Interneto servisų architektūros technologijų sluoksniai

  28. SOAP SOAP (Service Oriented Architecture Protocol) - paslaugomis grindžiamos architektūros protokolas • SOAP leidžia siųsti XML pranešimus tarp lygiaverčių taikomųjų programų (peer-to-peer communication) • SOAP sudaro keturi komponentai: • 1) apvalkalas, • 2) transporto susiejimo karkasas, • 3) kodavimo taisyklės • 4) nutolusių procedūrų iškvietimo (RPC) atvaizdas.

  29. Agentų tecnologija • Agentas - kompiuterinė sistema, kuri, veikdama tam tikroje aplinkoje, gali atlikti savarankiškus veiksmus, atitinkančius jo veikimo paskirtį • Savarankiškumas suprantamas kaip veikimas be tiesioginio žmogaus ar kito agento pagalbos ir sugebėjimas keisti savo vidinę būseną bei valdyti veiksmus pagal tam tikrą nustatytą valdomo proceso dėsningumą. • Programinis agentas – programa, kuri nepertraukiamai ir autonomiškai funkcionuoja tam tikroje aplinkoje ir gali bendrauti su kitais agentais ar procesais Bioinformatika (B110M100)

  30. Agentų tipai (1) • Svarstymo agentai • turi simbolinį aplinkos modelį ir atlieka loginius samprotavimus • Bendradarbiaujantieji agentai • pasižymi autonomija, greita reakcija, iniciatyva, ir gebėjimu bendradarbiauti su kitais agentais, kad galėtų atlikti savo užduotis • Sąsajos agentai • pasižymi autonomiškumu ir gebėjimu mokytis tam, kad pasiekti jų vartotojų tikslus • Mobilieji agentai • sugeba klajoti kompiuteriniuose tinkluose, sąveikauti su kitais vartotojais, savo šeimininko vardu rinkti informaciją, prisijungti prie serverių ir lokaliai peržvelgti duomenų bazes, surasti tinkamą informaciją ir grįžti „namo“ atlikus vartotojo numatytas užduotis Bioinformatika (B110M100)

  31. Agentų tipai (2) • Interneto agentai • naudojami tik interneto aplinkoje. Jie tvarko, rūšiuoja arba atrenka reikiamą informaciją iš įvairių paskirstytų šaltinių. • Reaktyvieji agentai • neturi vidinio simbolinio aplinkos modelio, o vietoj to jie veikia/atsako į aplinkos poveikius. • Hibridiniai agentai • apjungia dviejų ar daugiau aukščiau minėtų agentų rūšių savybes. • Sumanūs agentai • dar tik kuriami agentai, kurie turės dirbtinį intelektą. Bioinformatika (B110M100)

  32. Agento intelektualumas • Kiekvienas agentas turi turėti tam tikrą intelektualumo laipsnį, kad galėtų būti agentu. • Agento intelektualumas susideda iš trijų pagrindinių komponentų: • vidinės žinių bazės apimtis, • sprendimo galimybės, kuri remiasi žinių bazės turiniu, • galimybės mokytis ar prisitaikyti prie aplinkos pasikeitimo (adaptyvus elgesys) Bioinformatika (B110M100)

  33. Vidinės agentų savybės (1) • Vidinės savybės • formuoja agento vidinę būseną • apima galimybę mokytis, reaktyvumą, autonomiškumą ir tikslo siekimą. • Reaktyvumas. • Agentas turi elgesiu paremtą veiklos modelį ir turi sugebėti reaguoti į paprastus poveikius ar informaci­jos pasikeitimus jį supančioje aplinkoje. Ši aplinka gali būti reali probleminė sritis, vartotojas su atitinkama sąsaja, kitų agentų grupė, Interneto aplinka, arba visų šių komponentų kombinacija. • Sprendimas/Mokymasis. • Kiekvienas agentas turi turėti tam tikrą intelektualumo laipsnį, kad galėtų būti agentu. Bioinformatika (B110M100)

  34. Vidinės agentų savybės (2) • Autonomiškumas. • Agentas sugeba siekti savo tikslų autonomiškai, t.y., be jokių sąveikų ar komandų iš aplinkos. Vartotojas gali tik duoti agentui komandas, idėjas ar nurodyti jį dominančius dalykus, kad agentas galėtų nepriklausomai spręsti reikiamas užduotis • Tikslo siekimas. • Agentas turi žinoti konkrečius tikslus arba turėti tikslų sistemą • Iniciatyvumas. • Agentas nebūtinai tik reaguoja į savo aplinkos pokyčius, bet gali imtis ir iniciatyvos nustatytam tikslui siekti Bioinformatika (B110M100)

  35. Išorinės agentų savybės • Išorinės savybės • apima visas tas savybes, kurios turi reikšmės keleto agentų ar žmogaus-agento tarpusavio sąveikai, pvz., bendravimas ir bendradarbiavimas. • Bendravimas • naudojamas agento kontaktų su aplinka palaikymui. Agentas aprūpinamas tam tikra užklausų aibe, kad galėtų bendrauti su kitais agentais ir iš jų gauti atsakymus iš žinomos atsakymų aibės. • Bendradarbiavimas • agentų, kurie sprendžia bendrą užduotį, tarpusavio bendravimas keičiantis tikslais, savybėmis ir žiniomis. Bioinformatika (B110M100)

  36. Agento vidinė būsena (1) • Įsitikinimai (beliefs) • sudaro bazinį agento požiūrį į aplinką. • naudoja norėdamas nustatyti galimus aplinkos pasikeitimus. • Norai (desires) • išvedami tiesiogiai iš įsitikinimų. • sudaro agento nuomonę apie būsimas situacijas. • Tikslai (goals) • vaizduoja agento norų poaibį, kuriems vykdyti jis turi atlikti kokį nors veiksmą. • tikslai turi būti realūs ir įgyvendinami bei neturi prieštarauti tarpusavyje. • tikslai formuoja agento potencialių veiksmų aibę, nes jie perteikia galimų veiksmų alternatyvas tam tikru laiko momentu. Bioinformatika (B110M100)

  37. Agento vidinė būsena (2) • Ketinimai (intentions) • tikslų poaibis. • jei agentas nusprendžia įgyvendinti tam tikrą tikslą, tai šis tikslas tampa ketinimu. • Planai (plans) • sustato agento ketinimus į nuoseklias sekas. • visų planų aibė atspindi agento ketinimus. Bioinformatika (B110M100)

  38. Agento architektūra • Veiksmų pasirinkimas yra atliekamas uždavinių sprendimų įrenginyje, kuris, jei reikia, gali nauduoti planavimo ir koordinavimo modulius. • Planavimo veiklos metu nustatoma veiksmų seka užduotam tikslui pasiekti; koordinavimo veiklos metu, tam, kad būtų pasiekti aukštesnio lygio tikslai bendradarbiaujama ir su kitais agentais. Bioinformatika (B110M100)

  39. Agentų sistemos darbo scenarijus • Vartotojo agentas priima vartotojo įvedamas užklausas ir perduoda jas užduoties sprendimo agentui • Užduoties sprendimo agentas siunčiaužklausas specializuotiems agentams • Specializuoti agentai kreipiasi į specializuotas duomenų bazes ir grąžina informaciją užduoties sprendimo agentui • Užduoties sprendimo agentas apibendrina surinktą informaciją ir grąžina ją vartotojo agentui • Vartotojo agentas pateikia grąžintą informaciją vartotojui Bioinformatika (B110M100)

  40. Darbo paskirstymas naudojant agentus Bioinformatika (B110M100)

  41. Daugiaagentės sistemos • Daugiaagentės sistemos leidžia uždavinį paskirstyti skirtingiems užduotis sprendžiantiems agentams, su savo interesais ir tikslais • Daugiaagenčių sistemų architektūros: • Svarstymo architektūros - naudoja tik svarstymo agentus. Agentai pagrindines užduotis sprendžia patys, tarpusavyje besikeisdami tik rezultatais arba reikalinga informacija. • Reaktyviosios architektūros - naudoja reaktyviuosius agentus. Jos yra paprastos, kadangi pačių agentų architektūra nėra sudėtinga. Agentai atlieka tik paprastus veiksmus, o bendras tikslas pasiekiamas agentams sąveikaujant tarpusavyje • Hibridinės architektūros - apjungia pirmas dvi architektūras Bioinformatika (B110M100)

  42. Darbo planavimo problema • Užduoties išskaidymas. • Generuojamos smulkesnės užduotys kitiems agentams. • Užduočių paskirstymas. • Detalesnės užduotys perduodamos spręsti kitiems agentams. • Užduoties atlikimas. • Kiti agentai atlieka savo užduotys (patys arba paskirsto toliau kitiems agentams). • Rezultatų sintezė. • Agentui baigus spręsti užduotį arba užduoties dalį, už kurią jis buvo atsakingas, jis perduodą rezultatus atgal užduotį jam pavedusiam spręsti agentui. Pastarasis apjungia visus gautus rezultatus ir perduoda juos toliau iki pradinio agento, kuris gauna galutinį užduoties sprendimą. Bioinformatika (B110M100)

  43. Agentų technologija bioinformatikoje • Bioinformatikoje agentų technologija • padeda įveikti semantinio heterogeniškumo problemą, • gali būti naudojama kurti sudėtingoms paskirstytoms integravimo sistemoms, • paprastų darbo užduočių automatizavimui. Bioinformatika (B110M100)

  44. Nagrinėtų integravimo technologijų palyginimas • Tinklo technologijos užtikrina plataus mąsto paskirstytą infrastruktūrą. • Interneto technologijos suteikia formatavimo standartus skirtus duomenims ir žinioms atvaizduoti. • Agentų technologija užtikrina autonomiškumą ir komunikavimo/bendravimo aspektus. Bioinformatika (B110M100)

More Related