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
Last modified: 2020-09-17 19:41:01 EEST