Akadēmiķa Jāņa Bārzdiņa runa LZA Rudens pilnsapulcē, saņemot LZA Lielo medaļu

30-11-2017

Datorzinātņu pasaulē gandrīz mūža garumā

Datorzinātnes, manuprāt, nav vienkārši "vēl viena zinātnes nozare". Tās veido savu pasauli, kas būtiski atšķiras no fiziskās pasaules. Datorinātņu pasaule raksturojas ar to, ka to veido pats cilvēks. Bet cilvēks uzreiz nevar izdomāt labāko variantu, tādēļ šī pasaule ļoti strauji mainās. Kas vairs atceras pirmās programmēšanas valodas - tādas kā ALGOL-60, COBOL, FORTRAN? Kas vairs atceras arī valodu PL/1, kuras izveidē firma IBM pagājušā gadsimta 60. gados ieguldīja milzīgus spēkus un enerģiju?


Akadēmiķis Jānis Bārzdiņš Foto J. Brencis

Tas pats attiecas arī uz valodu ADA. Kādēļ uzreiz nevarēja izdomāt objektorientētās programmēšanas valodas? Šķiet tāpēc, ka tās prasīja pacelšanos augstākā abstrakcijas līmenī, un laikam tas ir visgrūtākais cilvēka domai, kaut arī būtu pieticis ar telegrammu, sastāvošu no pāris teikumiem. Mans stāsts par datorzinātnēm lielā mērā būs stāsts par Lielo telegrammu meklējumiem.

Starp citu, valodai PL/1 manā un vairāku manu kolēģu zinātniskajā mūžā bija īpaša loma - 70. gados bijušajā Padomju Savienībā mēs uzrakstījām pirmo grāmatu par valodu PL/1, kura piedzīvoja vairākus izdevumus un kļuva par galveno mācību grāmatu gan studentiem, gan praktiķiem vismaz 10 gadu garumā. Mums izdevās precīzi nodefinēt iedomājamu skaitļojamo mašīnu, sauktu par "PL/1 mašīnu", uz kuras bāzes pietiekoši vienkārši varēja precīzi izskaidrot PL/1 semantiku (valodas oficiālais apraksts aizņēma aptuveni 2000 lapaspuses un to laiku programmētājam bija grūti saprotams).

Taču bijušās Padomju Savienības laikos es un mani tuvākie kolēģi pamatā bijām matemātiķi. Mēs strādājā pie divām fundamentālām problēmām. Pirmā - kā pēc programmas teksta automātiski ģenerēt tā saucamo pilno piemēru sistēmu - piemēru kopu, uz kuras programma izpilda katru sasniedzamu komandu vismaz vienu reizi. Vispārīgā gadījumā šī problēma ir algoritmiski neatrisināma. Bet mums izdevās pierādīt, ka praktiski svarīgām programmu klasēm pilno piemēru sistēmas tomēr var algoritmiski uzkonstruēt, pie tam pietiekoši efektīvi. Drīz vien šis virziens nokļuva manu bijušo doktorantu Jāņa Bičevska un Jura Borzova un viņu skolnieku drošajās rokās un es pats pievērsos otrajai fundamentālajai problēmai - kā pēc piemēriem sintezēt vispārīgas likumsakarības.

Mēs ļoti veiksmīgi attīstījām induktīvās sintēzes teoriju - izrēķināmu funkciju sintēzi pēc piemēriem. Lieli nopelni šeit bija manam dārgajam kolēģim Rūsiņam Freivaldam. Mēs kļuvām pasaulē pazīstami, pie mums brauca ārzemju zinātnieki, daudz publicējāmies. Mūsu jaunie kolēģi sekmīgi aizstāvēja disertācijas šajā jomā, arī mūsu akadēmijas ārzemju loceklis Alvis Brāzma. Mums samērā dziļi izdevās izpētīt induktīvās sintēzes teorētiskās iespējas.

Bet palika tomēr neatbildēts jautājums - kā cilvēks to dara. Piemēram, bērni dzimto valodu iemācās tikai no piemēriem, pie tam gramatiski pareizi - neko nezinot par gramatikas likumiem. Acīmredzot, Lielā telegramma vēl nebija atnākusi. Bet par to būs mana stāsta beigās.

Pienāca cerību pilnais skaistais Atmodas laiks. Centāmies apkopot Baltijas valstu datorzinātnieku svarīgākos rezultātus, kas iegūti pēdējo 10 - 15 gadu laikā. Tapa grāmata "Baltic Computer Science", J. Barzdins and D. Bjorner (Eds.), Lecture Notes in Computer Sciece, Vol. 502, Springer-Verlag, 1991. Paldies pasaulslavenajam dāņu dotorzinātniekam Dinesam Bjorneram par ideju, atbalstu un skaisto priekšvārdu. Šī grāmata pagājušā gasimta 90. gados kalpoja par mūsu vizītkarti ceļā uz Rietumu pasauli.

1991. gadā, pateicoties Jānim Gobiņam, uzsākām sistēmu modelēšanas rīka izstrādi Vācijas kompānijas "Siemens-Nixdorf Informationssysteme" vajadzībām. Vēlāk tas pārtapa GRADE projektā, kas turpinājās līdz 2000. gadam, pat nedaudz ilgāk. Rezultātā tika radīts viens no tolaik modernākajiem sistēmu modelēšanas rīkiem pasaulē. Tas ilgus gadus kalpoja par Latvijas "vizītkarti" IT jomā. To lietoja daudzos uzņēmumos un iestādēs Latvijā (Latvijas Banka, SEB banka, Balta, Lattelecom u.c.) un ārzemēs (Boeing, IBM, Beļģijas un Nīderlandes Aizsardzības ministrijas u.c.). Uz GRADE balstījās IT specialitāšu studentu apmācība Latvijas augstskolās.

Kas bija GRADE panākumu pamatā? Pati ideja apsteidza savu laiku par aptuveni 5 gadiem. Rīka izstrādē tika iesaistīti Latvijas labākie programmētāji un projektētāji. Ne mazsvarīgu lomu spēlēja Atmodas laika gaisotne un izstrādātāju entuziasms. Un, protams, Jāņa Gobiņa padomi un nesavtīgums. Man gribas teikt, ka Latvijas IT industrijas sākumi (tāds bija GRADE projekts) balstījās ne tikai uz zināšanām, bet arī uz augstiem morālajiem kritērijiem, kuru atblāzma ir jūtama vēl šodien.

Katrai lietai ir sākums un beigas. Kas bija GRADE projekta beigu pamatā? Lai cik tas dīvaini arī neskanētu, manuprāt, galvenais iemesls bija tas, ka problēma, kuru risināja GRADE - sarežģītu sistēmu modelēšana - kļuva pārāk svarīga. "Pamodās" milži - lielās programmatūru kompānijas ar daudzmiljonu kapitālu (IBM, HP, DEC, Microsoft), izveidoja konsorciju, izstrādāja Vienoto modelēšanas valodu UML un reizē arī attiecīgos modelēšanas rīkus. GRADEi bija grūti sacensties ar "milžiem". Morāle: ja tēma patiešām praktiski svarīga, tā agri vai vēlu nokļūst "milžu" lauciņā. Kur mūsu vieta lietišķo pētījumu jomā? Viennozīmīgas atbildes man nav.

Kas šajā laikā vēl notika datorzinātņu pasaulē? Pagājušā gadsimta 90. gados veidojās izpratne par objektorientēto modelēšanu un metamodeļiem (vēl viena Lielā telegramma!). Aptuveni 2003. gadā radās jauna programmsistēmu būves paradigma - Modeļu vadītā arhitektūra (MDA). Parādījās jauns jēdziens - modeļu transformācijas, kas, atšķirībā no programmēšanas valodām, daudz tiešāk operēja ar priekšmeta apgabala jēdzieniem. Šajā vilcienā mēs vēl paguvām ielekt. Izstrādājām valodu MOLA - vienu no attīstītākajām modeļu transformāciju valodām, tā nodrošināja mūsu atpazītamību pasaulē, ļāva izcīnīt (kopā ar partneriem) svarīgu ES 6. ietvarprogrammas projektu. Galvenie nopelni šeit bija manam kolēģim Audrim Kalniņam un viņa skolniekiem.

2006. gadā radās pārdroša ideja - "izgriezt" no GRADE ļoti dārgo grafiskās saskarnes komponenti (ar GRADE izstrādātāju spēkiem) un izstrādāt pilnīgi jaunu modelēšanas rīku būves arhitektūru, izmantojot MDA idejas un modeļu transformācijas, pie tam veikt to visu pamatā ar doktorantu spēkiem - sadalot problēmu vairākos promocijas darbos. Rezultātā tapa GRADE-2 un 4 promocijas darbi. Viena no svarīgākajām GRADE-2 īpašībām - tās iekšējā struktūra uzdota ar metamodeļa palīdzību, to "redz" arī gala lietotājs un var izmantot savās lietojumprogrammās. Pie tam GRADE-2 ir nevis konkrēts rīka, bet rīku būves platforma, ar kuras palīdzību var viegli ģenerēt konkrētus modelēšanas rīkus. Nedaudz žēl, ka šī Lielā telegramma neatnāca GRADE projekta sākumā, varbūt būtu varējuši piedalīties "Milžu cīniņā" (kā lai neatceras Hārdija Lediņa līdzīga nosaukuma dzejoli). Bet varbūt vēl viss nav zaudēts? Lai tas paliek manu jaunāko kolēģu ziņā...

Taču pēdējos pāris gados datorzinātņu pasaulē sācies kaut kas LIELS - tā ir mašīnapmācība balstīta uz dziļajiem neironu tīkliem. Šķiet, lielos vilcienos ir uzminēts tas loģiskais mehānisms, uz kuru balstās cilvēka izziņas process, cilvēka spēja sintezēt vispārīgas likumsakarības pēc piemēriem. Protams, šie pētījumi vēl atrodas sākuma stadijā, bet eksperimentu rezultāti ir vairāk nekā pārsteidzoši. Vairs nav nekādu šaubu, ka, piemēram, bezpilota auto vai kvalitatīvs tulks ir tikai dažu gadu darbs. Man ir prieks, ka Latvijas datorzinātnieku vidējās un jaunās paaudzes pārstāvji veiksmīgi ielekuši šajā vilcienā, pie tam ne pēdējā vagonā. Par to liecina izcīnītās pirmās vietas pasaules mēroga sacensībās angļu valodas semantikas izzināšanā, izmantojot dziļos neironu tīklus. Par to liecina izcīnītie ES projekti, par to liecina izcīnitie Google projekti. Mani priecē arī Latvijas IT vadošo kompāniju ieinteresētība šīs jomas attīstībā (beidzot mēs - IT zinātnieki esam vajadzīgi!).

Mani priecē tas, ka IKT nozare līdzās kokmateriālu un pārtikas jomai ir kļuvusi par trešo lielāko eksportētāju. Vai tiešām IKT nozare šajā izšķirošajā brīdī, kad rodas principiāli jaunas IT tehnoloģijas, nav pelnījusi savu Valsts pētījumu programmu? Bet zāle pavasarī laužas cauri arī asfaltam... Nobeidzu savu stāstu ar cerību, ka varbūt pat vēl manas paaudzes laikā Latvija kļūs par IKT lielvalsti un Latvijas IKT nozares eksports pārsniegs to produktu eksportu, kas nāk no mūsu skaistajiem mežiem un laukiem.

Powered by Elxis - Open Source CMS