Kursinių darbų temos

"Tikrosios" Z reikšmės PDB failuose apskaičiavimas

PDB archyvas apibrėžia: "The Z value is the number of polymeric chains in a unit cell. In the case of heteropolymers, Z is the number of occurrences of the most populous chain". Panašus apibrėžimas naudojamas ir PDBx duomenyse. Šie apibrėžimai migloti, biologiškai mažai naudingi ir prieštarauja kristalografijoje priimtam Z apibrėžimui. Vietoj to siūloma suskaičiuoti kristalografinę Z reikšmę pagal baltymo grandines: Jei baltymo grandinių *biologinė* arba *biofizinė* asociacija aprašytame kristale yra 'αx βy', kur α ir β yra baltymo grandinės, PDB faile žymimos A ir B atitinkamai, o x ir y – sveiki skaičiai, tada Z yra 'αx βy' vienetų skaičius kristalo elementariame narvelyje. Galioja lygybės: x * Z = nα * Nau, kur nα yra A grandinių skaičius asimetriniame vienete, o Nau yra asimetrinių vienetų skaičius narvelyje. Z reikšmę automatiškai galima įvertinti pagal PIZA serverio duomenis apie biologinio multimero sandarą, o patikrinti „rankomis“ – pagal pradinius straipsnius ir baltymo biologinį aprašymą (Proteopedia?). Saulius Gražulis   2020-02-09

Mažų Žiniatinklio (Web) programėlių kūrimas

Skaičiavimų rezultatus patogu pavaizduoti Žiniatinklio (Web) puslapiais, tačiau publikuoti juos patogiai ir greitai nėra paprasta. Šiuo metu paplitę Žiniatinklio svetainių kūrimo karkasai blogai integruojasi su Unix/Linux komandinės eilutės įrankiais. Karkasus sunku išplėsti funkcijomis, kurių ypatybės nebuvo numatytos iš anksto, projektuojant karkasą, o išplėtimo „įskiepiai“ tinkami tik tam vienam karkasui, dažniausiai tik tam tikrai jo versijai. Siūloma įgyvendinti ir išbandyti alternatyvią duomenų pateikimo svetainių architektūrą, padarytą pagal Unix ir Linux programų komponavimo principus. Kiekvienam duomenų tipui ar puslapio rūšiai generuoti bus naudojamas atskiras Unix filtras, kurio paleidimą valdys paprasta, nuo dalykinės srities kiek įmanoma nepriklausoma Web programa (dabartiniame prototipe ji realizuota kaip CGI skriptas). Bus pasiūlyta taip pat padaryti saugų duomenų įkėlimą į serverį ir saugų programų paleidimą, kad svetaines būtų galima naudoti interaktyviai. Saulius Gražulis   2020-02-09

Gardelės parametrų išgavimas iš žmogui skirtų tekstų ir COD apžvalginės DB kūrimas

Deja, kol kas ne visuose straipsniuose paskelbtos kristalų struktūros yra atvirai aprašytos viešai prieinamais duomenimis. Daugeliui tokių „paslėptų“ struktūrų straipsniuose nurodomi pagrindiniai kristalo parametrai – gardelės konstantos, simetrijos grupė, molekulės cheminė formulė ir pavadinimas. Tai, nors ir nepilni, bet vis viena labai vertingi duomenys, nes leidžia preliminariai identifikuoti kristalinę medžiagą. Kursiniame darbe bus pasiūlyta surinkti visų publikuotų kristalų struktūrų bibliografijas ir pagal atvirai prieinamus straipsnių tekstus arba santraukas (abstracts), naudojant paprastas Perl reguliarias išraiškas (o vėliau gal būt ir sudėtingesnę lingvistinę analizę) automatiškai išgauti kiekviename straipsnyje publikuotų medžiagų kristalų parametrus. Saulius Gražulis   2020-02-09

Informacijos išgavimas iš mokslinių straipsnių

Pastaruoju metu publikuojamų mokslinių straipsnių skaičius auga eksponentiškai [1]. Tikėtina, kad šiuo metu straipsnių paskelbiama tiek daug, jog net ekspertai negali fiziškai perskaityti visų straipsnių savo darbų tematika, jau nekalbant apie gretimų tyrimo krypčių straipsnius. Mokslo žinios tampa išsklaidytos po daugelį žmogui sunkiai aprėpiamų šaltinių, jas vis sunkiau susisteminti, o tarpdisciplininiai tyrimai – vienas svarbių inovacijos šaltinių – dėl šių priežasčių neatskleidžia viso savo potencialo. Turėtų būti įmanoma sukurti apmokytus DNT ir/arba kitas kompiuterines sistemas, gebančias iš žmogui skirto teksto (mokslinio straipsnio, patento, monografijos, disertacijos, preprinto) išgauti faktinę mokslinę informaciją, pvz. medžiagos formulę, kristalo ir molekulės struktūros aprašymą, molekulės chemines ir fizines savybes, tų savybių epistemologinį statusą (matavimo rezultatas, teorinis skaičiavimas), ir pateikti šią informacija formalizuotu, automatiniam apdorojimui tinkamu pavidalu, pavyzdžiui, formaliai specifikuotų CIF, CML a SDF failų pavidalu, reliacinių duomenų lentelių pavidalu, RDF failų pavidalų naudojant kurią nors žiniatinklio ontologiją ar pan. Darbe bus pasiūlyta, pasitelkiant įvairias teksto analizės priemones (teksto segmentatorius, simbolių atpažinimo programas, tokias kaip 'tesseract', dirbtinius neuroninius tinklus, mašinų mokymo programas) išgauti iš mokslinių straipsnių vertingus faktus ir apjungti juos į sistemingą duomenų bazę greitai ir išsamiai paieškai. Saulius Gražulis   2020-09-17

Naršyklės įskiepis kristalografinei informacijai rinkti

Šiuolaikiniame mokslo pasaulyje labai didelė informacijos dalis yra išbarstyta po daugybę teksto puslapių (mokslinių straipsnių, disertacijų, monografijų), ir jų sisteminga paieška kompiuterinėmis priemonėmis yra labai apsunkinta. Deja, automatinė tekstų analizė ne visada sugeba teisingai išgauti reikiamus duomenis, ir tenka įdėti daug žmogaus rankų darbo, įvedant informaciją į kompiuterizuotas duomenų bazes. Siūloma sukurti įrankį, kuris palengvintų tyrėjams informacijos surinkimą ir kaupimą vienoje gerai struktūruotoje duomenų bazėje. Siūlomas darbas būtų skirtas įskiepiui, kuris padeda rinkti kristalografinę ir cheminę informaciją, sukurti. Tai leistų šimtams tyrėju vienu metu visame pasaulyje rinkti informaciją, dėti ją į bendrą duomenų bazę ir po to bendrai naudotis surinktais duomenimis. Toks modelis jau neblogai pasiteisino renkant citavimo ir bibliografinius duomenis; naudinga būtų pritaikyti jį kitoms mokslo duomenų rūšims. Saulius Gražulis   2020-09-17

Mažos programos bioinformatikai

Pagal Unix ir Linux sistemų architektūros principus, programos turėtų būti mažos, gerai daryti po vieną funkciją, o daugelį funkcijų reikalaujantys skaičiavimai turėtų būti atliekami, pasitelkiant daug skirtingų programų, kurios gali efektyviai tarpusavyje sąveikauti. Toks architektūrinis stilius atrodo tinkamas bet kokiai moksliniai-tiriamajai disciplinai, tame tarpe ir bioinformatikai. Panašios idėjos išsakytos eilės nepriklausomų tyrėjų; žr. pvz. Mažų įrankių bioinformatikai manifestą@. Kursiniame darbe bus pasiūlyta sukurti ir/arba papildyti repozitoriją su programiniai bioinformatikos įrankiais, sukurtais pagal aukščiau išvardintus principus, ypatingą dėmesį atkreipiant į tai, kad tie įrankiai gerai sąveikautų tiek vienas su kitu repozitorijos viduje, tiek su programomis iš išorinių repozitorijų. Reikės išnagrinėti, kokios problemos (standartai, formatai, specifikacijos tikslumas, duomenų aprašymo semantika, greitaveika ar kas kitas) iškyla, siekiant programų sąveikos ir bendro programų panaudojimo. Saulius Gražulis   2020-02-09

Mažų molekulių, randamų COD DB, susiejimas su PDB

COD duomenų bazėje sukaupta virš 450000 įrašų apie mažų molekulių kristalų struktūras. Apie 2/3 jų yra organinės molekulės. Dalis tų molekulių yra ligandai, kofaktoriai ar vaistai, galintys jungtis su baltymų molekulėmis, o šių baltymų struktūros gali būti randamos PDB duomenų bazėje. Darbo metu bus pasiūlyta surasti tas molekules COD duomenų bazėje, kurios yra chemiškai tokios pačios, kaip ir PDB archyve rasti ligandai, ir susieti COD su PDB, naudojant PDB papildomos informacijos pateikimo JSON schemą. Saulius Gražulis   2020-02-09

Saugumo auditas COD ir panašiose interneto svetainėse

Žiniatinklis (World Wide Web) buvo sukurtas tam, kad įgalintų mokslininkus greitai ir patogiai keistis tyrimų rezultatais bei kita informacija. Naujos žiniatinklio priemonės leidžia ne tik parsisiųsti informaciją iš nutolusios svetainės, bet ir interaktyviai pateikti informaciją šioms svetainėms arba paleisti procesus nutolusiuose serveriuose. Deja, šios galimybės atveria eilę saugumo spragų – serveriai gali būti panaudojami ne taip ir ne tam, kam jie buvo sukurti, ir tai gali atsitikti be svetainės kūrėjo žinios. Šiame darbe, naudojant įvairius svetainių audito įrankius (e.g Kali Linux), bus pasiūlyta patikrinti įvairių mokslo duomenims skurtų interneto svetainių (COD, RestfulDB, Web Scriptlets) saugumą; kitaip tariant, pabandyti „nulaužti“ ;) programinę įrangą, kurios pagrindu veikia šios svetainės, ir pasiūlyti, kaip galima nuo išnagrinėtų grėsmių apsisaugoti. Saulius Gražulis   2020-02-09

Teisingumo įrodymų palaikymas procedūrinėje programavimo kalboje Starta

Šiuolaikiniai aukšto lygio programavimo kalbų kompiliatoriai stebimai padidino programuotojų darbo efektyvumą, palyginus su autokodais ar asemblerio kalbomis. Deja, nuo to laiko nauja "magiška kulka", leidžianti pasiekti dar didesnių darbo našumų ar aukštesnės programų kokybės, taip ir nėra atrasta. Vienas iš stebėtinų dabartinių kompiliatorių trūkumų -- visiškas atotrūkis tarp teorinių darbų, skirtų programų teisingumo įrodymams, ir praktiniam programavimui naudojamų programavimo kalbų bei kompiliatorių.

Darbo eigoje bus siūloma realizuoti automatinę sistemą teiginiams apie programą įrodyti, integruotą į aukšto lygio programavimo kalbos kompiliatorių. Pirmame etape planuojama naudoti specialiai tam tikslui sukurtą programavimo kalbą ir kompiliatorių, kuriuos, reikalui esant, galima keisti, siekiant supaprastinti įrodymų išvedimą; tačiau sistema turėtų būti pakankamai moduliarizuota, kad įrodymų posistemę galima būtų perkelti į kitų kalbų (Java, C, C++, C#, Perl, Python, etc.) kompiliatorius.

Saulius Gražulis   2015-02-11

Mažų molekulių kristalų kontaktų paviršiai

Siūloma peržvelgti visas COD organinių kristalų struktūras, visų pirma tas, kuriuose yra vaistinių medžiagų molekulės ar į jas panašios molekulės. Surasti šių molekulių kontaktus su *savo pačių* kristalais, aprašyti šių kontaktų paviršius. Surasti tas molekules, kurių kompleksai su baltymais patalpinti PDB archyve. Palyginti mažos molekulės kristalo ir baltymo kontaktinius paviršius; nustatyti, ar pagal šių paviršių panašumą galima prognozuoti susirišimą su baltymu. Saulius Gražulis   2015-02-11

Paskirstytos, patikimos ir atsparios trikdžiams bei padalinimams COD duomenų bazės kūrimas.

Šiuo metu COD duomenų bazė, organizuota kaip centrinis (angl. "master") serveris, kurio duomenis patikimumo dėlei replikuoja visa eilė antrinių (angl. "mirror") kompiuterių. Tokia sistema, deja, neužtikrina nenutrūkstamo sistemos darbo, centriniam serveriui išėjus iš rikiuotės ar nutrūkus ryšiui tarp centrinio serverio ir Interneto. Darbo metu bus siūloma realizuoti paskirstytą, lygių serverių mainais (angl. "peer-to-peer") paremtą sistemą, atsparią sistemos padalinimui, užtikrinančią duomenų neprieštaringumą (consistency) ir minimizuojančią sistemos prastovas. Nors CAP teorema teigia, kad visų trijų tikslų (neprieštaringumo, prieinamumo ir atsparumo padalinimams) vienu metu pasiekti neįmanoma, bus bandoma surasti inžinerinius sprendimus, leidžiančius minimizuoti praradimus (prastovas, duomenų praradimą ir pan.), atsiradusius dėl to, kad COD bus realizuota kaip paskirstyta duomenų bazė. Darbo metu reikės išnagrinėti įvairius galimus sistemos variantus, įvertinant įvairius kompromisus (prieinamumas/neprieštaringumas, prieinamumas/patikimumas ir pan.).
Saulius Gražulis   2015-02-11

Duomenų kokybės užtikrinimas ir duomenų validavimas kristalografinėje duomenų bazėje COD.

Duomenys mokslinėje duomenų bazėje naudingi tik tada, kai jie yra patikimi ir teisingi. Deja, net aukšto lygio mokslinėse publikacijose ne visada užtikrinamas duomenų teisingumas ir atitikimas formaliems reikalavimams. COD (Crystallography Open Database) duomenų bazės kūrėjai šiuo metu pasiekė, kad visi duomenų failai yra sintaksiškai teisingi (atitinka IUCr CIF formato reikalavimus) ir gali būti apdorojami automatiškai. Sekantis žingsnis link aukštos kokybės duomenų bazės -- semantinis duomenų patikrinimas (validacija) pagal IUCr sukurtas ontologijas -- CIF žodynus (angl. "CIF dictionaries"), ir prasminių klaidų paieška, naudojant statistinius metodus. Darbo metu bus siūloma tobulinti COD duomenų validatorių, atlikti visų duomenų validaciją, pagal validacijos pranešimus sukurti automatines klaidų taisymo priemones, ištaisyti tas semantines klaidas, kurias įmanomai vienareikšmiškai atpažinti, pažymėti nepataisomas klaidas, bei integruoti klaidų taisymo priemones į COD duomenų įkėlimo svetainę.
Saulius Gražulis   2015-02-11

Didelės apimties duomenų archyvavimas paskirstytoje duomenų saugykloje.

Naujausios IUCr (Tarptautinės kristalografų sąjungos, angl. International Union of Crystallography) rekomendacijos siūlo archyvuoti visus pradinius duomenis, panaudotus struktūros nustatymui, įskaitant difrakcijos (išsklaidytų Rentgeno spindulių) vaizdus, užregistruotus monokristalinių difraktometrų. Šios rekomendacijos įgyvendinimas kelia naujus iššūkius -- bus reikalingas gerokai didesnis pastovios atminties (diskų, juostų) kiekis, negu naudotas iki šiol, ir duomenys turi būti prieinami bent jau ateinančius dešimtmečius, t.y. pergyventi kelias kompiuterinės įrangos kartas. Visa tai susiję su papildomomis sąnaudomis ir duomenų laikymo kaštais. Vienas iš galimų šių problemų sprendimo būdų -- panaudoti paskirstytą, daugelio institucijų ir/arba individų palaikomą duomenų archyvavimo sistemą, turinčią pakankamą duomenų perteklumą, užtikrinantį patikimą sistemos darbą ilgą laiką. Tokios sistemos prototipas buvo išbandytas 2018 m. studentų bakalaurų darbų metu. Darbo metu bus siūloma realizuoti veikiančią, mokslininkams tinkamą sistemą Tahoe-LAFS ir/arba IPFS pagrindu.
Saulius Gražulis   2015-02-11; atnaujinta 2020-09-17

Senų kristalografinių duomenų skaitmeninimas COD duomenų bazei.

Dalis duomenų apie svarbius cheminius junginius, tame tarpe apie jų erdvines struktūras, buvo publikuota prieš plačiai plintant kompiuteriams ir internetui, tad šie duomenys yra prieinami tik "popieriniame" pavidale, išbarstyti po daugelį skirtingų žurnalų ar leidinių, arba patalpinti nuosavybinėse duomenų bazėse. Tokia situacija techniškai ir/arba juridiškai apsunkina duomenų radimą bei panaudojimą. Darbo metu siūloma sukuri įrankius struktūrinės informacijos įvedimui ar optiniam simbolių atpažinimui, PDF failų tekstų analizei, siekiant atpažinti ir išskirti kristalografinius duomenis, ir galimai suskaitmeninti senas publikacijas, įkeliant jų duomenis į atvirą kristalografinę duomenų bazę COD (Crystallography Open Database).
Saulius Gražulis   2015-02-11

Vidutinių trimačių simetrijos grupių apskaičiavimas iš keturmačių moduliuotų struktūrų simetrijos operatorių.

Pastaruoju metu daugėja informacijos apie medžiagos būvį, kuris, nors ir turi daugumą kristalo savybių (pvz., sklaido Rentgeno spindulius siaurais koncertuotais atspindžiais), nėra tikras kristalas, nes negali turėti periodinės gardelės, suderinamos su stebima objekto ar sklaidymo vaizdo simetrija, tokia kaip penkto laipsnio simetrijos ašis. Tai -- kvazikristalai (http://en.wikipedia.org/wiki/Quasicrystals) ir (nebendramatės) moduliuotos struktūros. Šioms struktūroms aprašyti kuriamas matematinis aparatas, panaudojantis simetrijos grupių teoriją. Pasirodo, kad neperiodines trimates struktūras galima aprašyti kaip periodinių struktūrų daugiamatėse erdvėse pjūvius. Pavyzdžiui, kai kurias moduliuotas struktūras galima nagrinėti kaip periodinių 4-mačių gardelių pjūvius. Perėjimas į aukštesnių matavimų erdves leidžia panaudoti jau žinomą erdvinių simetrijos grupių mat. aparatą, ir kompaktiškai aprašyti neperiodines struktūras. Darbo metu bus siūloma sukurti programinę įrangą, kuri tikrintų keturmačių simetrijos grupių aprašymus, pagal šiuos aprašymus sukurtų vidutinius nemoduliuotos trimatės simetrijos grupės aprašus, ir integruoti šiuos algoritmus į duomenų bazę COD, kad būtų galima efektyviai kaupti ir tvarkyti neperiodinių medžiagos pavyzdžių aprašymus.
Saulius Gražulis   2015-02-11

BOINC serverio ir klientų parengimas statistiniams skaičiavimams ir jų pritraukymas COD duomenų bazės analizei.

Statistiniai skaičiavimai, paremti Bajeso statistikos principais, duoda universalią ir koherentišką skaičiavimo metodiką, bet reikalauja itin daug skaičiavimo resursų. Vienas iš būdų tokius resursus surinkti -- panaudoti masinį paralelizmą „savanorių skaičiuotojų“ (angl. "volunteer computing") pateiktuose kompiuteriuose. Šiuo principu yra paremta Berklio universiteto BOINC sistema. Darbo metu bus siūloma: a) paleisti BOINC sistemos serverį; b) parašyti paprasčiausius BOINC klientus; c) parašyti klientus, skirtus COD atstumų ir jungčių parametrų tikimybių pasiskirstymų pasiskirstymų radimui ir atnaujinimui, naudojant Bajeso statistikos metodus, ir skaičiavimų organizavimas.
Saulius Gražulis   2015-02-11

Gramatikos atstatymas iš kalbos pavyzdžių.

Gerai žinomi yra uždaviniai pagal nurodytą gramatiką nustatyti, ar duota simbolių eilutė priklauso gramatikos generuojamai kalbai, ir ar dvi gramatikos yra ekvivalenčios; žinomi efektyvūs šių uždavinių sprendimo būdai daugeliui praktiškai svarbių kalbų klasių. Tačiau praktikoje kartais tenka spręsti atvirkščią uždavinį: pagal kalbai priklausančių ir nepriklausančių eilučių pavyzdžius sukonstruoti minimalią gramatiką, generuojančią tokią kalbą. Šis uždavinys kur kas blogiau apibrėžtas (neturi unikalaus sprendimo) ir efektyvūs sprendimo būdai bendru atveju nėra žinomi. Darbo metu bus pasiūlyta suformuluoti ir išspręsti uždavinį paprasčiausiai -- reguliarių kalbų -- klasei. Konkrečiai, pagal duotas eilutes su teisingais ir klaidingais duomenų (teksto) pavyzdžiais reikės sukonstruoti reguliarias išraiškas, kurias atitiktų teisingos eilutės bet neatitiktų klaidingos eilutės. Galimi sprendimo būdai būtų euristikos, kodo evoliucija ir genetiniai algoritmai, apmokomų neuronų tinklų ar atraminių vektorių mašinų panaudojimas.
Saulius Gražulis   2015-02-11

Teorinės kristalografinės duomenų bazės TCOD duomenų validavimas.

Pastaruoju metu labai sparčiai vystosi skaičiuojamosios chemijos metodai, leidžiantys suskaičiuoti kristalų bei molekulių struktūras naudojant pamatinius kvantinės mechanikos principus. Atsiranda vis daugiau laisvų programų, leidžiančių atlikti šiuos skaičiavimus, ir sparčiai daugėja suskaičiuotų struktūrų duomenų. Atsiranda poreikis šiuos skaičiavimo rezultatus sistematizuoti, įvertinti jų patikimumą bei palyginti su eksperimentiniais duomenimis. Tuo tikslu buvo paleista TCOD duomenų bazė. Darbo metu bus pasiūlyta įgyvendinti duomenų kokybės patikrinimo programas ir palyginti skirtingas suskaičiuotas struktūras tarpusavyje ir su eksperimentiškai nustatytomis struktūromis.
Saulius Gražulis   2015-02-11

C kalba parašytų programų transliavimas į Java JVM baitų kodą.

Mūsų turimas CIF sintaksinis analizatorius parašytas C programavimo kalba. C kodas yra efektyvus, perkeliamas į daugelį OS ir skaičiavimo platformų, leidžia sukurti sąsajas (angl. bindings) daugeliui programavimo kalbų: Perl'ui, Pitonui, C++ ir kitoms. Java kalba parašytose programose būtų galima naudoti šią biblioteką JNI sąsajos pagalba, tačiau toks sprendimas Java „pasaulyje“ turi savų trūkumų: kai kurios platformos, pvz. Android/Dalvik arba HTML5/JS, nepalaiko JNI sąsajų, arba šių sąsajų naudojimas per daug sudėtingas, o Java taikomosioms programoms naudojamas klases tenka perkompiliuoti kiekvienai procesoriaus architektūrai vietoj to, kad panaudoti Java baitų kodą ir, jei reikia, turimus JIT optimizuojančius kompiliatorius.

Idėja yra surasti transliatorių, kuris transliuotų C kalbos programas į Java virtualios mašinos kodą. Tyrimo eigoje reikės nustatyti ir aprašyti, kaip suderinti C standartą atitinkančias vykdymo aplinkas ir Java virtualias mašinas. Jei reikės, bus modifikuojamas egzistuojantis C kompiliatorius (tcc, lcc arba gcc), nutaikant jį JVM kodo generavimui. Tikslas yra sukompiliuoti turimą CIF sintaksinio analizatoriaus tekstą į gryną JVM baitų kodą.


Saulius Gražulis   2017-11-10

Polimerų paieška atviroje mažų molekulių duomenų bazėje COD

Siūloma įgyvendinti algoritmus, kurie leistų aptikti vienmačius, dvimačius ir trimačius polimerus, „persipinančius“ polimerus, rotaksanus, katenaninius polimerus kristalų struktūrose, aprašytose kristalografinėje duomenų bazėje COD. Darbo metu taip pat kursime algoritmus, kurie automatiškai išskirtų tinkamiausią monomerinę grandį polimero aprašymui. Saulius Gražulis   2017-12-05

RDF sistemų panaudojimas išvadoms ir daugelio duomenų bazių federuotai paieškai įgyvendinti

Siūloma paversti atviros kristalografinės duomenų bazės COD duomenis į RDF formatą, paleisti SparQL prieigos tašką („end-point“) ir įgyvendinti federuotą, daugelį Internetinių duomenų bazių apimančią paiešką. Saulius Gražulis   2017-12-05

Taisyklėmis paremtos ekspertinės sistemos sukūrimas COD esančių atomų cheminiams tipams nustatyti

Siūloma paversti molekulių aprašymus Prolog duomenų baze ir užkoduoti chemines žinias taip, kad būtų galima automatiškai gauti išvadas apie molekulių ir jose sujungtų atomų savybes (hibridizaciją, geometriją, dalinius ir formalius krūvius, reakcingumą). Saulius Gražulis   2017-12-05

dRel programavimo kalbos realizavimas

Siūloma įgyvendinti dRel programavimo kalbos interpretatorių CIF failuose įterptų funkcijų interpretavimui. Saulius Gražulis   2017-12-05

Molekulinių mazgų ir sankabų analizė COD duomenų bazėje

Molekulių kovalentiniai ryšiai gali būti traktuojami kaip tvirti strypeliai, jungiantys atomus (briaunos, jungiančios grafo viršūnes). Jei tokiame molekuliniame grafe yra ciklai, jie gali sudaryti mazgus arba sankabas (pavyzdžiui, sukabintus žiedus, Boromėjaus žiedus ar sudėtingesnes topologines struktūras). Kol kas nėra efektyvių programų, kurios leistų aptikti ir suklasifikuoti tokias struktūras, aptiktas molekuliniuose medžiagos kristaluose. Darbo metu bus siūloma sukurti programas, generuojančias 3D grafo aprašymą pagal kristalografinės informacijos CIF failus su kristalų struktūromis, pritaikyti šias programas Crystallography Open Database (COD, https://www.crystallography.net/) duomenų bazei, sugeneruoti iš gauto molekulinio grafo mazgo aprašymą, ir pagal mazgo aprašymą pritaikyti įvairius mazgo invariantus skaičiuojančius algoritmus. Darbo pabaigoje sukursime aptiktų mazgų duomenų bazę. Saulius Gražulis   2020-09-17

Kvantinės mechanikos metodų pritaikymas

Darbe bus siūloma pritaikyti kelias atviro kodo kvantinės mechanikos programas (Abinit, Quantum Espresso) atviros kristalografinės duomenų bazės Crystallography Open Database (COD, https://www.crystallography.net/) duomenims patikrinti ir galimoms eksperimento ar duomenų tvarkymo klaidoms aptikti. Saulius Gražulis   2020-09-17

DNT ir mašinų mokymo pritaikymas kristalų savybėms prognozuoti

Nauji Dirbtinių neuroninių tinklų (DNT) ir mašinų mokymo algoritmai leidžia aptikti dėsningumus ir atpažinti bruožus didelėse duomenų masyvuose, kurie seniau buvo neprieinami išsamiai analizei. Atviroje kristalografinėje duomenų bazėje Crystallography Open Database (COD, https://www.crystallography.net/) yra sukaupta virš 450 tūkst įrašų apie kristalų struktūras, o susieti straipsniai talpina informaciją apie šių kristalų savybes. Darbe bus siūloma panaudoti COD DB duomenų imtį DNT ar mašinų mokymo sistemai apmokyti, siekiant prognozuoti įvairias kristalo savybes (pvz. kristalo elementaraus narvelio tūrį, lydymosi temperatūrą ir pan.). Gauti tinklai gali būti naudojami COD ir kitų publikuotų duomenų validavimui, naujų kristalų savybių nustatymui. Saulius Gražulis   2020-09-17

Interaktyvios COD recenzavimo svetainės kūrimas

Interaktyvios programų archyvų svetainės, tokios kaip GitLab, GitGub ar BitBucket, gerai užsirekomendavo programinės įrangos kūrimo procese. Darbe bus siūloma pritaikyti analogiškus programų kūrimo įrankius mokslo duomenims tvarkyti. Atvira kristalografinė duomenų bazė Crystallography Open Database (COD, https://www.crystallography.net/) sėkmingai naudoja Subversijos versijų kontrolės sistemą duomenims versijuoti ir kaupti. Natūralu panaudoti sistemą, analogišką aukščiau minėtoms priemonėms, pvz. Redmine, kuri leistų kristalografams aptarinėti ir taisyti kristalų struktūrų duomenis, panašiai kaip programuotojai aptarinėja ir taiso programas. Darbo metu reikės sukurti COD ir Redmine svetainių sąsają ir išbandyti kristalografinių duomenų valdymo srautą realaus gyvenimo sąlygomis. Saulius Gražulis   2020-09-17

COD P1 narvelių skaičiavimas

Kristalografiniai duomenų failai pateikia minimalų parametrų rinkinį, būtiną kristalo struktūrai atstatyti naudojant kristalo simetrijos grupės operatorius. Toks aprašymas dažnai nepateikia visos chemikų tikslams reikalingos informacijos; pavyzdžiui, kristale molekulė gali būti aprašyta, nurodant tik jos dalį, o likusi dalis turi būti suskaičiuota, pritaikant informaciją apie simetriją. Toks atvaizdavimo būdas chemikams yra nepatogus ir sukelia sunkumų tolimesnėje duomenų analizėje. Darbe bus siūloma pagaminti iš COD duomenų bazę su pilna informacija apie kristalų elementarius narvelius, t.y. sugeneruojant visus atomus, kurių reikia, norint aprašyti kristalo struktūrą tik elementarių transliacijų pagalba (taip vadinamus P1 narvelius). Šioje duomenų bazėje galima atlikti tolimesnę analizę, pavyzdžiui optinių izomerų paiešką. Saulius Gražulis   2020-09-17

Srautinio CIF parserio (sintaksinio analizatoriaus) sukūrimas

Dabar paplitę Crystallography Interchange File (CIF) failų formato sintaksiniai analizatoriai veika, naudodami DOM modelį, t.y. visas failas perskaitomas į atmintį ir tada apdorojamas. Toks metodas visiškai netinka dideliems konkatenuotiems CIF srautams skaityti, pvz. visiems PDB arba COD duomenų bazių įrašams Unix konvejeryje apdoroti. Siūloma sukurti jau esamo cod-tools sintaksinio analizatoriaus pagrindu (C/Bison) srautinį analizatorių, t.y. tokį analizatorių, kuris perskaitytų ir grąžintų failo informaciją po vieną įrašą, ir leistų kreiptis į save daug kartų, pratęsiant sintaksinę analizę nuo tos failo vietos, kurioje buvo sustojęs. Saulius Gražulis   2020-09-17

Kokybiško CIF parserio (sintaksinio analizatoriaus) sukūrimas Java ir C# (.NET) platformoms

CIF (Crystallography Interchange Format) yra paplitęs struktūruotas duomenų formatas kristalografinių duomenų archyvavimui ir mainams. Yra parašyti kokybiški sintaksiniai šio formato analizatoriai C, Perl ir Python kalbomis. Deja, Java ir .NET aplinkoms šie analizatoriai nėra labai tinkami, nes minėtos platformos sukelia daug keblumų, paleidžiant joms svetimomis kalbomis parašytas bibliotekas. Pvz. Java JNI sąsaja sunkiai perkeliame į mobilias platformas ir dėl to programuotojai labiau vertina „gryna Java“ ("pure Java") parašytus modulius. Darbe bus siūloma perkelti CIF (CIF 1.1 ir CIF 2.0) standarto sintaksinius analizatorius į grynos Java ir C# terpes. Saulius Gražulis   2020-09-17

Valid HTML 4.0!


Last modified: 2020-09-17 19:41:01 EEST