Page 16 - Fister jr., Iztok, and Andrej Brodnik (eds.). StuCoSReC. Proceedings of the 2017 4th Student Computer Science Research Conference. Koper: University of Primorska Press, 2017
P. 16
ka 1: Diagram primerov uporabe porazdeljenega sistema.

Mersennova ˇstevila z manjˇsimi faktorji, ki predstavljajo ve- 4. APLIKACIJA
lik deleˇz kandidatov. S pomoˇcjo sistem GIMPS so do sedaj
naˇsli 15 Mersennovih praˇstevil. Implementacijo porazdeljenega sistema smo naˇcrtovali tako,
da bo podpiral naslednje funkcionalnosti:
S prihodom kriptovalut je postalo razdeljevanje nagrad za
opravljeno raˇcunsko delo veliko laˇzje. Z njihovo pomoˇcjo bo • Anonimna uporaba in hitra registracija uporabnika.
projekt Golem [2] poskuˇsal postati decentraliziran superra-
ˇcunalnik in s tem globalni trg raˇcunalniˇskih virov. Naroˇcnik • Izvajanje algoritmov v varnem okolju (angl. sandbox)
bo s povezovanjem raˇcunalnikov v porazdeljen sistem lahko znotraj JavaScript okolja v brskalniku.
najel vire od drugih uporabnikov, ki se nato uporabljajo
za izvedbo nalog. Plaˇcila se izvajajo na transakcijskem sis- • Prenaˇsanje rezultatov iz odjemalca na streˇznik.
temu, ki je osnovan na Ethereum ter omogoˇca neposredne
transakcije med uporabniki in naroˇcniki. • Dodeljevanje nalog iz streˇznika na odjemalce.

V ˇclanku [9] so pokazali, da je moˇzno uporabljati spletne • Prikaz izvajanja algoritma uporabniku na intuitiven
brskalnike za izvajanje porazdeljenih algoritmov, kar nam je naˇcin.
dalo dodatni zagon pri naˇcrtovanju in implementaciji poraz-
deljenega sistema, opisanega v tem ˇclanku. Postopek implementacije smo razdelili v veˇc faz:
• Naˇcrtovanje podatkovnega modela.
3. LABS
• Izbira ogrodij za razvoj spletnih aplikacij.
Problem neperiodiˇcnih binarnih zaporedij z nizkimi avtoko-
relacijami lahko opiˇsemo z binarno sekvenco dolˇzine L: • Implementacija zalednega sistema (angl. backend).

S = s1s2...sL, si ∈ {+1, −1}. (1) • Implementacija algoritma lssOrel v jeziku JavaScript.

Energijo sekvence in faktor F izraˇcunamo z uporabo nasle- • Implementacija uporabniˇskega vmesnika.
dnjih enaˇcb:
• Implementacija nadzorne ploˇsˇce.
L−1 (2)
Porazdeljen raˇcunalniˇski sistem zaˇcne nov zagon algoritma
E(S) = Ck2(S), po ukazu administratorja na nadzorni ploˇsˇci. Vsak nov od-
jemalec poˇslje povpraˇsevanje na streˇznik, le ta pa mu posre-
k=1 duje naloge ali pa ga postavi v stanje pripravljenosti, kjer
ˇcaka na delo. Vsak odjemalec posreduje streˇzniku infor-
L−1 (3) macije o napredku reˇsevanja problema. To posredovanje se
izvaja vsakih 5 minut ali ko se najde novo najboljˇsa reˇsitev.
Ck(S) = sisi+k. Na tak naˇcin se izognemo prekomerni komunikaciji med od-
jemalcem in streˇznikom. Ker uporabljamo stohastiˇcne al-
k=1 goritme, se vsakemu odjemalcu dodeli unikatno seme. Seme
uporablja odjemalec, da inicializira generator nakljuˇcnih ˇste-
F (S) = L2/(2E(S)) (4) vil. S tem se izognemo, da bi odjemalci reˇsevali problem na
enak naˇcin.
Cilj reˇsevanja problema je minimizirati energijo oz. maksi-
mirati vrednost faktorja F . Iskanje binarnih sekvenc z naj-
boljˇsim faktorjem F ima pomembno vlogo pri reˇsevanju teh-
niˇcnih problemov na podroˇcju komunikacij.

StuCoSReC Proceedings of the 2017 4th Student Computer Science Research Conference 16
Ljubljana, Slovenia, 11 October
   11   12   13   14   15   16   17   18   19   20   21