Paskaidrojums dzejas ģenerēšanas programmai un uzdevumi

Par manu Scratch 2.0 programmiņu Dzejas ražošana v.1.3.

1. Dzejas ģenerēšanas programmas "Dzejas ražošana v.1.3" ideja

Radošās komūnas licenceVisi Latvijas Universitātes Datorikas fakultātes Jauno datoriķu skolas materiāli ir licencēti. Autors Imants Gorbāns šo materiālu ir licencējis ar Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported licenci.


Dzejas četrrindu ģenerēšanas programma ražo uz nejaušībām bāzētas bezatskaņu vārsmas, nejauši atlasot no 8 vārdu masīviem (aptuveni 300 vārdiem). Lielā nejaušības klātbūtne tuvina iegūtos produktus modernās dzejas spilgtākajiem izpaudumiem, kas ielaužas zemapziņas tumšākajos slāņos, liekot nejaušību plūdumā saskatīt katram savu dziļo jēgu. No aptuveni 10 vārsmām 1 ir citējama. Šī dzejnieka versija nesatur gramatikas un valodas ontoloģijas moduļus un ir interesanta kā pirmais solis dotajā virzienā.
 

Iedvesma nāca no pusvadītāju dzejnieka RCA-301, 1960. g. ("Fiziķi joko", Zvaigzne, Rīga, 1968.) un dažām japāņu Haiku programmām.
 

Šī programma balstās uz Scratch 2.0 iespēju veidot mainīgos un viendimensijas masīvus, veikt tajos atlasi pēc nejaušas izvēles, kā ari apvienot simbolu virknes. Šobrīd (2014. g. jūn.) 8 datu masīvos ir ievadīti aptuveni 300 vārdi. Tas, protams, ir visai maz, ja pat 10000 vārdu krājumu daži uzskata par trūcīgu valodu, bet dzejā jau reti kad izdodas pateikt sarežģītas domas (piemēram, programmēšanas, fizikas, matemātikas vai ķīmijas grāmatas dzejā neraksta), līdz ar to nelielais vārdu krājums ir uzskatāms par pietiekamu vienkāršu, tautai viegli uztveramu māksliniecisku asociāciju, emociju un dziļu zemtekstu izsaukšanai. Ievadīto vārdu skaitu ierobežo arī tas, ka programma visa ielādējas lietotāja datorā un tur arī izpildās, tādēļ tai nevajadzētu būt ļoti lielai (lielās datu bāzes būtu jālieto no servera, ko šeit nedaram).
 

Pierģistrējieties http://scratch.mit.edu/ un varat paņemt šo programmiņu (http://scratch.mit.edu/projects/23794930/) uz "Remix", tad varēsiet to modificēt un uzlabot (jebkuru programmu var uzlabot vismaz par vienu operatoru, tātad- bezgalīgi), kodu var redzēt, ejot "See inside".

Dzejas vārsmu ģenerēsanas programmas pirmās versijas algoritma vārdisks apraksts:

a) 8 datu viendimensijas masīvos jeb sarakstos (List) ir ievadīti vairāk kā 300 vārdi, grupēti pēc vārdu šķirām un citādi, masīvus un mainīgos veido bloku grupā Data, masīviem esmu devis nosaukumus pēc vārdu īpašībām (apst, darbv, ipashv, ipasibas, krasas, kietv, saikli, vietas),

b) programma darbības sākumā nodzēš datus no mainīgajiem (r1, r2, r3, r4) un pagaidu masīviem (tekoshais, tekoshais2, tekoshais3, tekoshais4), lai jaunais dzejolis nevirknētos galā iepriekšējā rindām,
c) tad 4 pagaidu masīvos (tekoshais..) nejauši ielasa pa vienam vārdam no katra no 8 vārdu masīviem,

d) tad četri cikli ģenerē katrs savu vārsmas rinas, rindas garums tiek izvēlēts nejauši robežās no 2 līdz 6, vārdu virkne veidojas, katrā cikla izpildes posmā liekot pa vienam vārdam galā rindiņai,

e) tad uz ekrāna izvada rindiņu manīgo (r1, r2, r3, r4) saturu,
f) programma papildināta ar gariņa paziņojumiem un skaņas efektu.