Professional Documents
Culture Documents
Robert Logožar
RAČUNSKI ZASNOVANO
MODELIRANJE DINAMIČKIH SUSTAVA
DOKTORSKI RAD
Zagreb, 2012.
FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA
Robert Logožar
RAČUNSKI ZASNOVANO
MODELIRANJE DINAMIČKIH SUSTAVA
DOKTORSKI RAD
Zagreb, 2012.
FACULTY OF ELECTRICAL ENGINEERING AND COMPUTING
Robert Logozar
COMPUTATIONALLY BASED
MODELING OF DYNAMICAL SYSTEMS
DOCTORAL THESIS
Zagreb, 2012
Robert Logoµzar, doktorski rad:
Raµcunski zasnovano modeliranje dinamiµckih sustava
(Computationally Based Modeling of Dynamical Systems)
iv
O mentoru. Leo Budin ro†en je u Vinkovcima 1937. godine. Diplomirao je, magistrirao
i doktorirao na Elektrotehniµckom fakultetu (danas: Fakultet elektrotehnike i raµcunarstva –
FER) Sveuµcilišta u Zagrebu 1962., 1967., odnosno 1976. godine. Godine 1962. prikljuµcio se
Zavodu za elektroniku, mikroelektroniku, raµcunalne i inteligentne sustave FER-a. Godine
1982. izabran je za redovitog profesora. Umirovljen je 2007. godine, a 2008. izabran je
za profesora emeritusa Sveuµcilišta u Zagrebu. Od godine 2004. redoviti je µclan Hrvatske
akademije znanosti i umjetnosti. Kao stipendist fondacije Alexander von Humboldt bo-
ravio je godinu dana kao gostujući istraµzivaµc na Universität Erlangen –Nürnberg, SR Nje-
maµcka (1968.–1969.) te, kao stipendist Fulbrightove fondacije, bio gostujući profesor na
University of Illinois, Urbana-Champaign, S.A.D. (1979.–1980.). Bio je glavni istraµzi-
vaµc na pet znanstvenih projekata koje je …nanciralo Ministarstvo znanosti, obrazovanja
i sporta Republike Hrvatske, a kao istraµzivaµc sudjelovao je i na mnogim drugim projek-
tima. Objavio je stotinjak radova u µcasopisima i zbornicima konferencija, uglavnom s
tematikom algoritama za analizu i projektiranje raµcunalom te algoritama za ugra†ene
raµcunalne sustave. Akademik Budin µclan je mnogih svjetskih udruga od kojih se istiµcu
Institute of Electrical and Electronic Engineers (IEEE) i Association for Computing Ma-
chinery (ACM). Bio je µclan programskih odbora više me†unarodnih konferencija te µclan
uredništava nekoliko me†unarodnih i domaćih µcasopisa.
About the Mentor. Leo Budin was born in Vinkovci in 1937. He received his B.Sc.,
M.Sc. and Ph.D. degrees in electrical engineering from the University of Zagreb, Faculty
of Electrical Engineering (now Faculty of Electrical Engineering and Computing –FER),
Zagreb, Croatia, in 1961, 1967 and 1976, respectively. Since 1962, he was with the De-
partment of Electronics, Microelectronics, Computer and Intelligent Systems of FER. He
was promoted to Full Professor in 1982. He retired in 2007 and was promoted to Professor
Emeritus in 2008. Leo Budin is a regular member of the Croatian Academy of Sciences and
Arts since 2004. As a Humboldt scholar he was a visiting researcher at the University of
Erlangen –Nürnberg, Germany (1968–1969) and, as a Fulbright scholar, he was a visiting
professor at the University of Illinois, Urbana-Champaign, U.S.A. (1979–1980). He was
the principal investigator in …ve scienti…c projects …nanced by the Ministry of Science,
Education and Sports of the Republic of Croatia, and participated in numerous other
projects. He published more than a hundred papers in journals and conference proceed-
ings, in the area of algorithms for computer aided analysis and design, and algorithms for
embedded systems. Professor Budin is a member of Institute of Electrical and Electronic
Engineers (IEEE), Association for Computing Machinery (ACM), and a few Croatian as-
sociations. He was a member of several international conferences’ program committees
and a few journal editorial boards.
v
vi
Predgovor
vii
viii
Saµzetak
Raµcunski zasnovano modeliranje dinamiµckih sustava
ix
x
je da se stopa entropije modela dalje rastavlja na sumu stope entropije niza odaslanog
iz modela i nedeterminiranosti prijelaza, ili na sumu stope entropije Markovljevog izvo-
ra i novouvedene stope entropije simbola po prijelazu. De…nirani teorijsko-informacijski
pokazatelji izraµcunani su za raznovrsne sustave, a za periodiµcne su i dokazani.
Modeliranje do razine SFA ostvareno je u našem programskom alatu DSA. Opisana
je implementacija podatkovnih struktura i algoritama korištenih u njegova tri glavna pro-
gramska modula: za simulaciju dinamiµckih sustava, za hranidbu binarnog rašµclambenog
(glavnog) stabla i za nalaµzenje SFA. Pregledavanje vremenskog niza, glavnog stabla, mor-
fova i dobivenih modela omogućeno je u gra…µckim suµceljima. Za ostvarenje statistiµcki
relevantnog glavnog stabla, vremensko-prostorna sloµzenost procesa hranidbe eksponenci-
jalna je u njegovoj visini D . Dokazana je korektnost izvornih algoritama za nerekurzivni
prolazak kroz stabla te napravljena njihova usporedba s rekurzivnim algoritmima. FM al-
goritam unaprije†en je u odnosu na prvobitnu inaµcicu. Za njega je implementacija pomno
obrazloµzena, a za vrlo opseµzan TFM algoritam u bitnim crtama. Napravljena je iscrpna
analiza vremenske sloµzenosti FM algoritma za sluµcajeve razliµcitih glavnih stabala i razli-
µcitih naµcina njegova rada. Općenito je ta sloµzenost eksponencijalna u raznim linearnim
kombinacijama parametara L i D, a u najgorem sluµcaju u njihovoj razlici 2D L .
DSA program primijenjen je za modeliranje brojnih sustava. Za njihova su rašµclambena
-stabla utvr†ene krajnje razine statistiµcke konzistentnosti, odnosno maksimalne visine ko-
rektnih glavnih stabala u kojima će se nalaziti morfovi. Te su razine teorijski povezane s
toµcnosti numeriµckog izraµcuna i s Lyapunovljevim eksponentom sustava. Za periodiµcne i su-
stave zadane pravilom te za potpuno kvazistohastiµcke sustave dobivaju se toµcni SFA-modeli
i uz uporabu FM i TFM algoritama. To vrijedi i za logistiµcko preslikavanje u nastupu kaosa
na kraju puta udvostruµcavanjem perioda, za koje porastom duljine L morfa broj stanja
SFA divergira. Tu su dobiveni SFA-modeli plauzibilniji od prethodno poznatih, a na višoj
je razini potvr†en konaµcan registarski stroj. Logistiµcka preslikavanja u kaosu na mahove,
za Misiurewiczev parametar i nadomak potpunog kaosa pokazuju strukturu izmiješanu s
kvazistohastiµcnosti. Sveobuhvatno modeliranje ovih sustava za zadani L i sve manji daje
niz sve preciznijih SFA-modela, sa sve većim brojem stanja. Na temelju njihovih grafova i
izraµcunanih informacijsko-teorijskih pokazatelja odabrani su oni najreprezentativniji. Neki
su od njih potvr†eni i TFM algoritmom. Takav sloµzen postupak modeliranja uµcinkovito
obavlja humani modelar s pomoću DSA programa. Time je ustanovljena funkcionalna
modelirajuća platforma, pogodna za daljnju nadogradnju i poopćenja.
Kljuµcne rijeµci: modeliranje, (nelinearni) dinamiµcki sustavi, binarni vremenski niz, teorija
-strojeva, stohastiµcki konaµcni automati, mjere sloµzenosti sustava, FM i TFM algoritmi,
prostorno-vremenska kompleksnost algoritama, DSA program, logistiµcko preslikavanje.
Abstract
Computationally Based Modeling of Dynamical Systems
In this multidisciplinary work we describe, implement, and apply the modeling of one-
dimensional dynamical systems, in which the computational model with added stochastic
properties is built solely from the received binary time series. The introductory theoretical
chapters show the correctness of such an approach. Symbolic dynamics is connected to
the encoding in the measuring-modeling channel and approximated by the …nite-length
substrings. Among a few presented methodologies, the Crutch…eld’s theory of -machines
is selected as the best for the modeling from a time series. The basic -machine is presented
by a stochastic …nite automaton (SFA), which is here derived from the class of …nite
automata (FA). The equality of the stochastic nondeterministic …nite automata (SNFFA)
to the edge-output hidden Markov models (EOHMM) is illustrated. The more complex
automata that are suitable for the higher-level -machines are shortly outlined.
The basic concepts of the theory of -machines are given their operational versions:
(L; )-equivalent causal states and their practical substitutions — (L; )-morphs (further,
morphs), together with their classes of equivalence. Known states and their transitions’
probabilities de…ne the transition tensor, and thus an -machine and its SFA. The number
of the morph-correlated symbols and the morph-investigated correlation length are intro-
duced, as well as the correlation length of the SFA-model and the length of its recurrent
cycle. The reconstruction of -machines is a hierarchical process. From the time series, the
parse tree of height D is created, wherefrom morphs are found as (L; )-unique subtrees.
These -(sub)trees — with leaves at the constant level (L) D — are theoretically described.
Their statistics is based on the average number bl of children from an l-level node.
The main computational contributions of this work are original FM and TFM algo-
rithms. They …nd morphs (states), their mutual transitions and probabilities, and thus
de…ne the SFA-model of a system. For given L and , FM algorithm …nds the deepest
morph on level lDM and generally stops before having checked all the subtrees. This is
called (potential) super…ciality. The condition for a regular SFA is lDM + L + 1 D . The
concept of comprehensive modeling is introduced. By the variation of L and — with a
chosen resolution for the latter — the whole space of the FM algorithm solutions is being
explored for a parse tree of height D. The thorough, TFM algorithm …rst investigates all
the subtrees in the parse tree and then removes those which are (L; )-equivalent to earlier
subtrees. It con…rms the correctness of the FM algorithm results. Both algorithms guar-
antee the minimality and determinism of their regular SFA-models, which is their main
advantage over other algorithms of the same purpose. A complete information-theoretical
analysis of the time series and the SFA-model is given. The corresponding entropy rates
and various complexities are de…ned. An original expansion of the SFA total entropy to
xi
xii
the sum of statistical complexity and the model entropy rate is presented. It is proved
that the latter can be resolved as the sum of the entropy rate of the time series emitted
from the model and the transition indeterminacy, or the sum of the entropy rate of the
Markov source and the newly introduced symbol-per-transition entropy rate. All de…ned
quantities are calculated for various dynamical systems and proven for the periodic ones.
The modeling up to the SFA level is realized by our original DSA programming tool.
The implementation of data structures and algorithms used in its three main programming
modules is presented. Inspection of the time series, main (parse) tree, morphs and the
created models is possible via graphical user interfaces. The time-space complexity of the
tree-feed process for a statistically relevant main tree is generally exponential in the tree
height D . The correctness of original nonrecursive tree-traversal algorithms was proven,
and they were compared to the recursive versions. FM algorithm is upgraded from its
…rst version. Its implementation is described in detail, and the implementation of the
extensive, TFM algorithm in its essential parts. The exhaustive analysis of FM algorithm
time complexity is made for the cases of di¤erent parse trees and di¤erent ways of its
operation. For general systems, this complexity is exponential in di¤erent linear combina-
tions of parameters L and D, and in the worst case in their di¤erence 2D L.
DSA program was applied for the modeling of numerous systems. For their parse -
trees, the utmost levels of statistical consistency had been determined, so that their morphs
were being found from the consistent main trees. Those levels were theoretically connected
to the accuracy of numerical calculation and Lyapunov exponent of the system. For pe-
riodical, rule-de…ned, and fully quasi-stochastic systems, both FM and TFM algorithms
give the exact SFA-models. The same is true for the logistic map at the onset of chaos by
the end of the period-doubling route, for which the number of SFA states diverges with in-
creasing morph height L. Here, more plausible SFA-models were obtained than previously
known. Also, on a higher level, a …nite register machine is con…rmed. Logistic maps at the
intermittency chaos, Misiurewicz parameter, and near the climax of chaos show structure
mixed with quasi-stochasticity. The comprehensive modeling of these systems for a given
range of L and decreasing gives more and more precise SFA-models, with increasing
number of states. Based on their graphs and the calculated information-theoretic indica-
tors, the best representative models are chosen among them. Some of them were con…rmed
by the TFM algorithm. Such a complex modeling task can be e¤ectively accomplished
by a human modeler with the aid of the DSA program. It provides a functional modeling
platform that is suitable for further upgrades and generalizations.
Predgovor vii
Saµzetak ix
Abstract xi
Sadrµzaj xiii
1 Uvod 1
1.1 Modeliranje dinamiµckih sustava . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Od linearnog k nelinearnom . . . . . . . . . . . . . . . . . . . 2
1.1.2 Novi pristup modeliranju . . . . . . . . . . . . . . . . . . . . . 3
1.2 Raµcunska mehanika . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 Crutch…eldovska raµcunska mehanika . . . . . . . . . . . . . . . 5
1.2.2 -strojevi i njihova rekonstrukcija . . . . . . . . . . . . . . . . 7
1.2.3 Princip raµcunske ekvivalencije . . . . . . . . . . . . . . . . . . 7
1.2.4 Autori i literatura . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Tema, podruµcje i plan ovog rada . . . . . . . . . . . . . . . . . . . . . 9
1.3.1 Raµcunarski i informacijski pristup raµcunskoj mehanici . . . . . 9
1.3.2 Obim i organizacija rada . . . . . . . . . . . . . . . . . . . . . 10
1.3.3 Uvodni dio i izbor modela (poglavlja 2 do 5) . . . . . . . . . . 10
1.3.4 Teorijska razrada (poglavlja 6 i 7) . . . . . . . . . . . . . . . . 11
1.3.5 Programska implementacija (poglavlje 8) . . . . . . . . . . . . 12
1.3.6 Primjeri i rezultati modeliranja (poglavlje 9) . . . . . . . . . . 12
1.3.7 Prilozi na CD-u: popratni tekst i DSA program . . . . . . . . 13
xiii
xiv µ
SADRZAJ
3 Od izmjere do modela 39
3.1 Znanstveno modeliranje . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1.1 Epistemološki temelji . . . . . . . . . . . . . . . . . . . . . . . 41
3.1.2 Teorija -strojeva kao epistemološki model . . . . . . . . . . . 43
3.1.3 Nuµznost eksperimentalne aproksimacije . . . . . . . . . . . . . 44
3.2 Mjerno-modelirajući kanal . . . . . . . . . . . . . . . . . . . . . . . . 45
3.2.1 Diskretizacija faznog prostora i kodiranje mjerenja . . . . . . . 46
3.2.2 Gruba izmjera . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.2.3 Dinamiµcki sustav kao izvor informacije . . . . . . . . . . . . . 49
3.3 Izmjera u jeziku simboliµcke dinamike . . . . . . . . . . . . . . . . . . 50
3.3.1 Preciznost konaµcne prezentacije . . . . . . . . . . . . . . . . . 51
3.4 Odabir i ugodba instrumenta . . . . . . . . . . . . . . . . . . . . . . 53
3.4.1 Odre†ivanje kritiµcne toµcke i generirajuće particije . . . . . . . 54
3.5 Modeliranje iz vremenskog niza . . . . . . . . . . . . . . . . . . . . . 58
10 Zakljuµcak 321
Bibliogra…ja 333
µ
Zivotopis autora 339
Uvod
1
2 1. Uvod
i. Atraktor …ksne toµcke, kad orbita konvergira u µcvrstu toµcku sustava (§2.1);
ii. Atraktor ograniµcenog ciklusa, kad orbita stabilno oscilira izme†u konstantnog
broja toµcaka (vidjeti odjeljak 2.2);
iii. Kaotiµcni atraktor, kad su toµcke (nepredvidljivo) razasute u nekom dijelu faznog
prostora, moµzebitno posebnoga pa i vrlo pravilnog oblika, ali koji se ne moµze
svesti na atraktore prva dva tipa (za µcudne atraktore vidjeti npr. [48]).
te se analize moµze dobiti uvid u unutarnja stanja sustava i prijelaze izme†u njih,
µcime se dinamika razvoja sustava de…nira kroz prona†eni raµcunski ustroj. Uz do-
voljnu koliµcinu prikupljenih podataka tim se prijelazima moµze dodijeliti i stohastiµcka
mjera. Prijelazi izme†u stanja moraju inicirati odašiljanje (ili prihvat) uvedenih kod-
nih znakova, tako da je njihov niz u prosjeku jednak kodiranom nizu primljenom iz
sustava. Tako†er, koliµcina informacije koju model pri tom odašilje (ili prihvaća)
jednaka je koliµcini informacije odaslanoj iz izvornog kodiranog niza. Rezultat je dis-
kretan model dinamiµckog sustava u obliµcju automata ili stroja iz teorije automata,
koja je disciplina teorije raµcunarstava (engl. su nazivi redom: automaton, machine,
automata theory, theory of computation).
Za uspješnu reprodukciju jednostavnih procesa dovoljni mogu biti i jednostavniji
automati, dok će za one najsloµzenije trebati Turingov stroj. Na Turingovom je stroju
u naµcelu moguće ostvariti svaki algoritam, pa tako i onaj koji daje isti izlaz kao i
poµcetni program temeljen na integraciji ili iteraciji jednadµzbi sustava. To potvr†uje
tezu da je primjena raµcunskog modela (automata) u naµcelu uvijek moguća. Da ona
ne bude tek formalne naravi, traµzimo najjednostavniji model, na najmanje moćnoj
razini raµcunskih strojeva, koji daje dovoljno toµcan opis sustava. Time dobivamo
minimalni model koji odaje suštinski raµcunski ustroj promatranog sustava.
Gornji je opis skicirao novi, multidisciplinarni i interdisciplinarni pristup mode-
liranju dinamiµckih sustava, kojeg je u okviru svoje raµcunske mehanike razvio J. P.
Crutch…eld. To je ujedno i širi tematski okvir ovog rada.
Svi procesi, bilo produkti ljudskog stvaranja bilo oni koji se spontano doga†aju
u prirodi, mogu se promatrati kao raµcunanje. Mnogi fundamentalni prirodni
sustavi, s izuzetkom onih koji su oµcito jednostavni, mogu obaviti izraµcune sve
do maksimalne, univerzalne razine, pa su u tom smislu ekvivalentni.
Slika 1.1: Rašµclambeno stablo dubine 7 i prva tri morfa dubine 4, dobiveni u DSA pro-
gramu za sustav logistiµckog preslikavanja s parametrom r = 3:997. Za r = 4 (reµzim pot-
punog kaosa) sustav bi emitirao niz nalik Bernoullijevom nizu sluµcajnih nula i jedinica.
Tada bi stablo bilo puno i postojao bi samo jedan morf. Tik do tog vrhunca kaosa, za
samo malo manji r, otkrivamo tragove zaostale pravilnosti — nakon µcetiri znaka 0 uvijek
dolazi 1 . Tri prikazana morfa (podstabla) de…nirana su svojim korijenima: e ="" (prazan
niz), 0 i 00. Pored njih, za ovaj se sustav otkriva još 16 oblikovno razliµcitih podstabala
dubine L = 4 (sl. I.17). Ovaj i drugi dinamiµcki sustavi detaljnije su obrazloµzeni u pogl. 9.
Poglavlje 2
Cilj modeliranja jest stvoriti odgovarajući opis nekog sustava na temelju niza po-
dataka primljenih od njega. Izraµzen u prikladnoj formi, takav opis ili prikaz predsta-
vlja model sustava. Znanstveni model i zadaće koje on mora ispuniti de…nirat ćemo
u sljedećem poglavlju, a ovdje se usredotoµcujemo na dinamiµcki sustav i podatke
koje on odašilje. Evoluciju sustava u vremenu odraµzava njegova orbita, koju µcini
niz toµcaka faznog prostora. Za jednodimenzionalne sustave — µcijim se modeliranjem
bavimo u ovom radu — te ćemo toµcke na jednostavan naµcin preva†ati u diskretne
simbole, a njegovu orbitu u niz takvih simbola. Ovime smo ocrtali rad program-
skog modula za simulaciju dinamiµckih sustava i generaciju njihova vremenskog niza
u poglavlju 8. Model ćemo rekonstruirati iz vremenskog niza sastavljenog od upra-
vo takvih, diskretnih znakova, pa nas zanima toµcnost s kojom takav niz i njegovi
podnizovi konaµcne duljine opisuju dinamiku sustava.
Otuda proizlazi i poµcetni cilj ovog rada — potvrditi korektnost te ustanoviti pre-
ciznost simboliµckog opisa dinamiµckih sustava, iz kojeg ćemo u daljnjem izlaganju
rekonstruirati modele. Zato u ovom poglavlju utvr†ujemo formalizam simboliµcke
dinamike, nadopunjujući time izlaganje iz [44, pogl. 2]. Vremenski razvoj dinami-
µckih sustava dobiva se (numeriµckom) iteracijom njihovih rekurentnih jednadµzbi. U
kratkom pregledu iznosimo osnovne manifestacije nelinearnih pojava koristeći za to
logistiµcko preslikavanje kao arhetipski primjer jednodimenzionalnog nelinearnog su-
stava. Potom prelazimo na simboliµcki opis dinamiµckih sustava te ustanovljujemo
njegovu srodnost s dinamikom faznog prostora i kaotiµcnost posmaµcnog preslikava-
nja. Uvodimo pojmove generirajuće particije i mjernog kodiranja, na temelju kojih
de…niramo simboliµcki vremenski niz. Time ćemo pripremiti teorijsku podlogu za
raµcunarsko-eksperimentalni pristup u sljedećim poglavljima.
15
16 2. Simboliµcki opis dinamiµckih sustava
x (t + t) = F (x (t)) ; t; t 2 R: (2.1)
xi = F i (x0 ) : (2.3)
0-ta iteracija jest funkcija identiteta, F0 (x) = x. Toµcka xf jest …ksna toµcka (engl.
…xed point) ako vrijedi F i (xf ) = xf , i > 1 . Periodiµcne toµcke uvest ćemo u 2.2.2.
Poznavanjem funkcije F (xi ) gornje se iterativne jednadµzbe jednostavno imple-
mentiraju na digitalnim raµcunalima. Numeriµcko rješavanje diferencijalnih jednadµzbi,
odnosno jednadµzbi diferencija, u suštini se tako†er svodi na iterativan proces.
Za 1-dimenzionalne (1D) iterativne procese uzimamo skalarnu verziju izraza (2.1)
te postavljamo sljedeću de…niciju:
Kao što je dobro znano, µcak se i vrlo jednostavne nelinearne iterativne jednadµzbe
ne mogu analitiµcki riješiti u općenitom sluµcaju [29]. Primjer je za to i µcuveno logis-
tiµcko preslikavanje (engl. logistic map),
Mjera osjetljivosti orbite sustava na pomak njezine poµcetne toµcke jest Lyapunov-
ljev eksponent. Ako su dvije orbite u koraku i = 0 me†usobno udaljene za d0 > 0,
tada njihovu udaljenost di u i-tom koraku izraµzavamo preko i-tog Lyapunovljevog
eksponenta baze b (najµcešće e ili 2),
1X
n
di+1
= lim logb ; (2.9)
n!1 n i=0 d0;i
1X
n
= lim logb jF 0 (xi )j : (2.10)
n!1 n
i=0
4
Za kraću diskusiju ovih toµcaka vidjeti i sljedeći pododjeljak. Za detalje vidjeti npr. [28, 48].
20 2. Simboliµcki opis dinamiµckih sustava
Slika 2.2: Veća slika: orbitni dijagram logistiµckog preslikavanja u podruµcju najzanimljivi-
jih vrijednosti parametra r. Za r inkrementiran po 10 3 ucrtano je po 105 toµcaka (r; xi ),
uz i 1000 (preuzeto iz [67]). Umetnuta manja slika: povećani dio desno od druge donje
bifurkacije— koji kreće iz treće grane podruµcja perioda 4 (konstruirano programom iz [78]).
2.2.1 Putopis
U razmatranju simboliµcke dinamike pojavljuje se pojam putopisa (engl. itinerary),
kojim ćemo opisivati razvoj dinamiµckog sustava unutar nizovnog prostora.
De…nicija 2.2 Nizovni prostor. Neka je A abeceda koja sadrµzi a = card (A)
simbola. Skup svih beskonaµcnih nizova sastavljenih od simbola abecede A zvat ´cemo
nizovni prostor (engl. sequence space) i oznaµcavati sa 1 ,
na dva podintervala, lijevi i desni, koje ćemo oznaµciti kao 0, odnosno 1, za koje
vrijedi 0 [ 1 = . O tome govori sljedeća de…nicija:
De…nicija 2.3 Particija P (I) predstavlja podjelu faznog prostora prikazanog in-
tervalom I kao P (I) = f 0 ; 1 g, uz 0 [ 1 = = I A1 I , 0 \ 1 = ; .
xi+1 = fr (xi ) ;
fr (x) = rx (1 x) ; x 2 I = [0; 1] ; r 2 [0; 4] : (2.13)
intervala [0; 1], pa je skup = I = [0; 1]. Najprirodnije je kao toµcku diskrimi-
nacije uzeti upravo kritiµcnu toµcku xc = 1=2; odre†enu kriterijem ekstrema (odnosno
in‡eksije) f 0 (xc ) = 0. Odatle dobivamo particiju koja je potpuna:
X
1
jsi ti j
d [s; t] = : (2.17)
i=0
2i
X
1
jsi ti j X1
1 X1
1 Xn
1
d [s; t] = = (2.18)
i=n+1
2i i=n+1
2i
i=0
2i i=0
2i
1 1
=2 2 1 = :
2n+1 2n
Time je prva tvrdnja dokazana. Za dokaz druge tvrdnje pretpostavit ćemo da postoji
j < n takav da je sj 6= tj . U tom je sluµcaju
1 1
d [s; t] : (2.19)
2j 2n
Dakle, ako je d [s; t] 1=2n , tada prethodna pretpostavka ne moµze vrijediti, pa za
i n nuµzno mora biti si = ti .
Sada smo spremni za de…niciju posmaµcnog preslikavanja (engl. shift map):
k
(s0 s1 s2 : : :) = sk sk+1 sk+2 : : : ; k 2 N+
0 : (2.21)
2. Simboliµcki opis dinamiµckih sustava 25
s = s0 s1 : : : sn 1 s0 s1 : : : sn 1 : : : = s0 s1 : : : sn 1 ; (2.22)
gdje smo potezom oznaµcili ponavljajući niz znakova. Za ovu toµcku mora vrijediti
n
(s) = s : (2.23)
Ako se radi o naposljetku periodiµcnoj toµcki (engl. eventually periodic point), koja
tek nakon k-iteracija prelazi u periodiµcnu toµcku perioda n, tada vrijedi:
s = s0 s1 : : : sk 1 sk sk+1 : : : sk+n 1 ;
n k
s =s: (2.24)
Toµcaka s periodom 3 ima tri za primarne uzorke s dvije nule i jednom jedinicom
te isto toliko za komplementarne uzorke — s jednom nulom i dvije jedinice. One
se pregledno mogu prikazati u obliku dva ciklusa perioda 3. U svakom se ciklusu
sljedeća toµcka dobiva posmaµcnim preslikavanjem prethodne:
Slika 2.3: Izvatci iz liste toµcaka orbite logistiµckog preslikavanja s parametrom r = 3:741
i sjemenom iteracije x0 = 0:00079 , dobivene u DSA programu. Legenda: i0 = relativni
indeks toµcke u zadnjoj skupnoj iteraciji, i = apsolutni indeks (izvedena je tek jedna skupna
iteracija, pa su ova dva indeksa jednaka), x (i) = vrijednost toµcke, BI (i) = BI [x (i)] =
kodni simbol toµcke prema binarnoj izmjeri. U prvih 20 toµcaka nema pravilnosti. Nakon
stotinjak toµcaka sustav se stabilizira te je od 104. toµcke naposljetku-periodiµcan s primar-
nim uzorkom 01101 . Varijacije u vrijednostima sliµcnih toµcaka tu su jošu drugoj decimali.
Nakon 103 iteracija podudarno je 5 decimala, a nakon 106 iteracija njih 11 . [Preslike
prozora DSA programa za prikaz liste toµcaka ure†ene su (poravnate) za potrebe slike.]
2. Simboliµcki opis dinamiµckih sustava 27
su na slici 2.4. Gornja slika prikazuje poµcetnih 13 toµcaka iteracije, bez ikakve pravil-
nosti, a na donjoj je vidljiva stabilizacija orbite u ciklusu perioda 5.
Iako djeluje na diskretne simbole, posmaµcno preslikavanje : 1 ! 1 ima
svojstvo kontinuiranosti. Za formalizaciju pojma kontinuiranosti potrebna je:
De…nicija 2.7 Funkcija F kontinuirana je u toµcki s 2 1 ako za svaki " > 0
postoji > 0; takav da iz d [s; t] < slijedi da je d [F (s) ;F (t)] < ":
De…nicija 2.8 Dva su skupa homeomorfna ako izme†u njih postoji homeomor…zam,
tj. preslikavanje koje je “jedan naprama jedan i na”(dakle bijekcija) te kontinuirano,
s inverznom funkcijom koja je tako†er kontinuirana.
S : ! 1 ; S : x0 7! s ; (2.28)
s = s0 s1 s2 : : : ; si 2 f0; 1g ;
(
0 ; F i (x0 ) 2 0 ;
si =
1 ; F i (x0 ) 2 1 :
6
Poštujemo dogovor da desna funkcija u kompoziciji djeluje prva.
30 2. Simboliµcki opis dinamiµckih sustava
F
!
S# #S : (2.32)
!
1 1
F
!
1 1 : (2.33)
S " "S
!
1 1
1 1 1
F S = S S F S (2.34)
1 1
= S S S
1
= S :
2. Simboliµcki opis dinamiµckih sustava 31
S Fi = S F Fi 1
(2.35)
= S Fi 1
= S F Fi 2
2
= S Fi 2
..
.
i
= S:
Korolar 2.1 Iz gornje de…nicije proizlazi da za svaki prostor nad kojim je de…ni-
rana metrika i udaljenost moµzemo de…nirati guste podskupove. Zato što je i na
nizovnom prostoru 1 de…nirana udaljenost (2.17), tada to vrijedi i za njegove
toµcke, tj. u simboliµckoj dinamici de…nirani su gusti podskupovi.
Dakle, sustav je tranzitivan ako se za bilo koje dvije njegove toµcke moµze izna-
ći treća, koja prolazi proizvoljno blizu objema toµckama. Ako je dinamiµcki sustav
gust, tj. ima orbitu koja je gusti skup, tada je i tranzitivan jer gusta orbita pro-
lazi proizvoljno blizu svim toµckama. Obrat ove tvrdnje tako†er vrijedi, ali iziskuje
zahtjevan dokaz.
Konaµcno, de…niramo svojstvo osjetljivosti na poµcetne uvjete ili kratko, osjetljivost
(engl. sensitivity). To je najµcešće navo†eno svojstvo kaotiµcnih sustava, za koje po-
stoji opća suglasnost da predstavlja presudni kriterij kaotiµcnosti.
s = |{z}
^ 0 1 00
| 01{z10 11} 000
| 001{z : : }: 0000
| : : : : : :} : : : : : :
{z : (2.36)
l=1 l=2 l=3 l=4 :::
u kojoj smo grupirali sve podnizove duljine 1, 2 itd. Sada se, uz sliµcnu argumentaciju
kao i u dokazu gustoće, pokazuje da orbita toµcke ^
s prolazi proizvoljno blizu bilo koje
druge toµcke (detalji u [29, pogl. 10]).
Osjetljivost. Da dokaµzemo osjetljivost sustava : 1 ! 1 , odaberimo kao pa-
rametar divergencije = 1 . Neka je s; t 2 1 , s 6= t, te neka je d [s; t] < ", uz
" < 2 n : Drugim rijeµcima, s i t se razlikuju, ali tek u znakovima za neki indeks
k > n, tako da vrijedi jsk tk j = 1 . Sada je dovoljno primijeniti k iteracija funkcije
pa da se orbite koje polaze od s i t udalje za više ili jednako :
jsk tk j X
1
jsi ti j
k k
d (t) ; (s) = +
20 i=1
2i
jsk tk j
=1: (2.37)
20
U sluµcaju proizvoljnog moramo jednostavno napraviti pn q iteracija, pa time
izneseni dokaz postaje općenit.
Rezimirajmo najvaµznije zakljuµcke o kaotiµcnosti posmaµcnog preslikavanja. Usta-
novljenjem konjugacije izme†u (uobiµcajenih) nelinearnih dinamiµckih sustava de…ni-
ranih svojim iterativnim funkcijama na faznom prostoru i simboliµcke dinamike na
prostoru beskonaµcnih nizova, moµzemo o znaµcajkama prvih govoriti prouµcavajući
mnogo jednostavniji sluµcaj drugih. Egzaktno gledano, ako µzelimo prouµcavati neki
34 2. Simboliµcki opis dinamiµckih sustava
Termin “u gotovo svakoj toµcki” precizno se de…nira kao -skoro u svim (engl.
-almost all), što znaµci da mjera skupa toµcaka koje ne zadovoljavaju zadani
uvjet iznosi nula, tj. = 0 . Za realne je brojeve standardna Lebesgueova mjera
(engl. Lebesgue measure), kao što je za 1D sustave duljina. Dakle, ako za neke toµcke
gornji zahtjev i ne vrijedi, duljina njihova skupa iznosi nula.
Ova je de…nicija ekvivalentna zahtjevu da je inverz S 1 funkcije S kontinuiran
u svakoj toµcki s 2 1 . Drugim rijeµcima za svaki " > 0 mora postojati n > 0
9
Precizna de…nicija generirajuće particije moµze se naći i u [57]. Njezino bi obrazloµzenje zahtije-
valo preveliku digresiju za ovaj rad.
2. Simboliµcki opis dinamiµckih sustava 35
1 1
d S (s) ; S (t) = d [x0;s ; x0;t ] < " ; x0;s ; x0;t 2 : (2.38)
Teorem 2.5 Putopis stvoren na temelju generiraju´ce particije moµze po volji toµcno
opisati toµcku u faznom prostoru, tj. za proizvoljnu toµcku x0 2 i za svaki " > 0,
postoji n > 0 takav da je parcijalan putopis duljine n, sn =S (x0 ) = s0 s1 s2 : : : sn ,
udaljen od nje za d [S 1 (sn ) ; x0 ] < " .
Dokaz. Prema de…niciji 2.14 za gotovo svaku toµcku postoji jedinstven niz sim-
bola. Pretpostavimo da to vrijedi i za x0 (ako ne, odemo u njoj proizvoljno blisku
toµcku u kojoj to vrijedi), tako da za nju postoji de…nirani putopis t =S (x0 ) : Sada
zbog kontinuiranosti S 1 , iskazanoj izrazom (2.38), postoji n takav da uz odabir
parcijalnog putopisa sn , koji se u prvih n simbola podudara s t, vrijedi:
1 1
d S (sn ) ; S (t) = d [x0;sn ; x0 ] < " : (2.39)
xi = F (xi 1 ) ; i 1; (2.40)
si = B (xi ) :
Ovdje B oznaµcava funkciju mjernog kodiranja koju će obavljati mjerni instrument.
Mjerno kodiranje u bitnom je odre†eno particijom P iz de…nicije 2.3, P =
f 0 ; 1 g . Već je istaknuto da particija P u općenitom sluµcaju ne mora (primjer
kvadratne porodice), ali i moµze biti potpuna (logistiµcko preslikavanje). Ako je par-
ticija binarna, što je µcest sluµcaj za funkcije s vodećim kvadratnim µclanom, tada je i
2. Simboliµcki opis dinamiµckih sustava 37
B : I ! f0; 1g ; (2.41)
(
0; x 2 0;
B (x) =
1; x 2 1 :
Uz uporabu funkcije mjernog kodiranja tvorbu putopisa iz de…nicije 2.9 moµzemo
preformulirati na sljedeći naµcin:
S (x0 ) = s0 s1 s2 : : : (2.42)
= B F 0 (x0 ) B F 1 (x0 ) B F 2 (x0 ) : : :
= B F 0 (x0 ) B F 0 (x1 ) B F 0 (x2 ) : : :
= B (x0 ) B (x1 ) B (x2 ) : : : :
Dakle, putopis kreiramo tako da nakon svake iteracije na faznom prostoru do-
bivenu toµcku kodiramo (npr. binarno), te novodobiveni znak (bit) dodajemo u pu-
topis. Dobiveni putopis s moµzemo opisati i kao beskonaµcan vremenski niz znakova.
O njegovoj eksperimentalno-raµcunarskoj prezentaciji govori sljedeći pododjeljak.
Od izmjere do modela
39
40 3. Od izmjere do modela
sheme (vidjeti 3.2). Modelar mora pratiti koliµcinu informacije sadrµzanu u primljenim
podacima te uga†ati mjerni instrument tako da se ona maksimizira. Ovaj proces
uga†anja instrumenta nije trivijalan, jer modelar mora znati kako iskljuµciti pogrešne
podatke, odnosno razaznati šum u komunikacijskom kanalu koji koliµcinu primljene
informacije moµze povećati irelevantnim podacima. Uga†anje instrumenta u našem se
sluµcaju konkretizira u nalaµzenju prave particije faznog prostora dinamiµckih sustava,
što ćemo detaljnije obrazloµziti u odjeljku 3.4.
Kao što je prikazano na slici 3.1, stanje procesa Xt doznajemo na temelju mje-
renja instrumenta I . Mjerenje interpretiramo kao nalaµzenje projekcije S stanja Xt
na tzv. mjerni prostor RDim (npr. Euklidski prostor). Tu je dimenzija Dim jednaka
broju eksperimentalnih proba instrumenta I . Instrument je neki pretvornik (engl.
transducer), na slici prikazan kao dvodimenzionalan. Shema predvi†a mogućnost
prilago†ivanja i uga†anja instrumenta za dati eksperiment “u hodu”.
3. Od izmjere do modela 47
Model
Eksperiment
I : RDim ! N ; (3.5)
I (S (Xt )) = i ; uz S (Xt ) 2 i ;
i = 1; 2; : : : ; nI :
Ovime smo pokazali formalnu vezu izme†u niza mjerenja stanja dinamiµckog su-
stava sa simboliµckom dinamikom.
nI = 2 = a ;
3. Od izmjere do modela 49
IP h (X) : (3.11)
analize moµze postati prezahtjevan. Duljina rijeµci jednaka je visini binarnog stabla s
pomoću kojeg ćemo te rijeµci parsirati (rašµclaniti) te tvoriti njihovu statistiku, a i sta-
tistiku svih njihovih pre…kasa. Zbog općenito eksponencijalnog rasta broja µcvorova
stabla s njegovom visinom, duljina D ograniµcena je raspoloµzivim raµcunarskim resur-
sima. U prvom se redu to odnosi na memoriju za pohranu strukture rašµclambenog
stabla, a za sustave u kaotiµcnom reµzimu D je ograniµceno i korištenom numeriµckom
preciznosti (vidjeti 8.3.3 i noticu 3 u prilogu H.2, odnosno kraj 3.3.1 i 9.1.3).
µ
Zelimo li postići statistiµcku relevantnost prikupljenih podataka, analizu moramo
obaviti nad velikim brojem rijeµci. Uz D ns taj je broj pribliµzno jednak ns
(vidjeti 6.5). Kod odre†enja broja rijeµci koje će se uµcitavati, morat ćemo uvaµziti da
je za postizanje veće statistiµcke relevantnosti potrebno utrošiti duµze vrijeme.5 ns je i
dodatno ograniµcen brojem bitova cjelobrojne aritmetike kojom u µcvorovima brojimo
koliko je odgovarajućih podnizova prona†eno.6
De…nicija 3.1 Toµcnost ili preciznost "l konaµcne simboliµcke prezentacije sl s ukup-
no l simbola odre†ena je gornjom granicom njezina odstupanja l;max u odnosu na
putopis s 2 1 . To ´cemo kratko zapisivati kao "l / l;max i µcitati da je preciznost
"l do na l;max , ili u labavijoj verziji da je preciznost "l reda veliµcine l;max .
Korolar 3.3 Neka niz sl duljine l 2 N+ 0 predstavlja prvih l simbola putopisa S (x0 )
logistiµckog preslikavanja. Tada je toµcka x0 u pripadnom faznom prostoru I = [0; 1]
duljine 1 opisana s preciznoš́cu od "l / 2 l .
prema teoremu 2.5 dobiva po volji toµcno pribliµzenje toµcki xj u : Ili, drugim
rijeµcima, ako primjenom iterativne funkcije F na toµcku xj dobijemo trajektoriju
xj xj+1 : : : xj+l : : : kojoj odgovara beskonaµcni vremenski niz sj sj+1 : : : sj+l 1 sj+l : : : ;
tada išµcitavanjem konaµcnog podniza sjL = sj sj+1 : : : sj+l 1 duljine l , dobivamo
informaciju o poloµzaju xj unutar intervala odre†enog s "l ' I a l .
Me†utim, ovdje valja navesti da kod numeriµcke iteracije toµcaka orbite sustava u
kaotiµcnom reµzimu, dakle onih koji imaju veliki Lyapunovljev eksponent, zbog kona-
µcne preciznosti izraµcuna dolazi do znatnih odstupanja orbite, što smo već napomenuli
u uvodu ovog odjeljka. Uz dvostruku preciznost, s oko 15 signi…kantnih dekadskih
znamenaka, to se za izrazito kaotiµcne atraktore doga†a već za l & 20 . Ukoliko toµcke
xj+1 postaju sustavno krivo izraµcunane te pri tom prelaze u drugu kodnu particiju,
tada će i simboli sj+i = B (xj+i ) biti krivi i narušivati strukturu (pod)nizova. Stoga
je duljina rijeµci D koje ćemo analizirati ograniµcena odozgo, i to vrijedi jednako i za
sustave dobivene uporabom generatora sluµcajnih brojeva (vidjeti 9.1.1 i 9.1.3).
7
Za nalaµzenje generirajućih particija ovih sustava predlaµzu se metode teselacije faznog pro-
stora [36] te statistiµcko-relaksacijski algoritmi [8]. Njihovo se testiranje standardno provodi
na Hénonovom i Ikedinom preslikavanju. Prvo je opisano dvjema iterativnim jednadµzbama:
2
xi+1 = yi + 1 ax2i , yi+1 = bxi , a drugo kompleksnom funkcijom zi+1 = A + B zi ei(jzi j +C ) .
3. Od izmjere do modela 55
.726
.789
.544
MJERNI INSTRUMENT hµ ( xC' )
Ugodba:
Algoritam 3.1 IAS (od engl. naziva: Instrument Adjustment on a Single critical
point). Ugodba instrumenta na jednostruku kritiµcnu toµcku, za porodicu 1D dina-
miµckih sustava predstavljenu zajedniµckom iteracijskom funkcijom. Kritiµcna toµcka
xc 2 I dijeli fazni prostor I na disjunktne podskupove 0 i 1 (def. 2.3).
59
60 4. Izbor raµcunarskog modela
Odavde zakljuµcujemo:
Uz jednostavnu organizaciju neuronske mreµze kao binarnog dekodera nailazi-
mo na standardan problem broja izlaza dekodera, koji raste eksponencijalno s
brojem D njegovih ulaza. Ostaje pitanje kako bi izbor drugaµcije sheme, odno-
sno povećanje broja me†uslojeva mreµze, utjecali na transparentnost modela i
mogućnost zakljuµcivanja o strukturi i broju rijeµci uµcitanih iz vremenskog niza,
odnosno na nalaµzenje stanja sustava i njihovih me†uodnosa.
U sluµcaju modeliranja u kojem nemamo prede…nirani izlaz, ne moµzemo rabiti
standardne modele i algoritme neuronskih mreµza, kao što su modeli temeljeni
na uµcenju s nadzorom uz korištenje spomenutog unatraškog algoritma.
Postavlja se pitanje kako za neki prepoznati niz ustanoviti njegovu relaciju
naspram drugih nizova, odnosno bi li se to moglo ostvariti išµcitavanjem vrijed-
nosti teµzinskih indekasa modela.
Pri korištenju uµcenja bez nadzora, postoji problem de…niranja “mjere kvalitete
znanja” na kojem se ono zasniva. Ta bi mjera mogla biti povezana s mini-
mizacijom broja na†enih stanja, no implementacija mjere i algoritma uµcenja
ostaje upitna.
µ
Zelimo li ne samo raspoznati pripadnost uzorka nekom (dinamiµckom) sustavu,
već iz modeliranja zakljuµciti i na njegovu strukturu te pronaći stanja i ustroj
sustava, nije jasno kako to ostvariti, µcak i uz uporabu redundantne neuronske
mreµze. Takva mreµza već i samom svojom topologijom predeterminira neke
elemente modela (npr. broj stanja) te moµzebitno jednostavne sustave prikazuje
nepotrebno sloµzenima.
Već je iz ove kratke analize svojstava neuronskih mreµza jasno da one nisu pogodne
za modeliranje iz vremenskog niza.
crnom toµckom (kao što je to i na slikama 4.1, 4.2), taj automat kreira središnju,
okomitu, crnu crtu. Ako postoji više takvih samostalnih toµcaka, bez susjeda, iz
svake će biti generirana takva crta. Sve crne toµcke koje imaju barem jednog susjeda
nestaju već u sljedećem koraku, jer vrijednosti ćelija postaju 0.
Vraćamo se na pobliµzi opis preostala dva elementarna staniµcna automata iz tab-
lice 4.1. Za ECA-30 prema Wolframovom je kodiranju 30d = 1Eh = 00011110b , pa
iz tablice išµcitavamo sljedeće pravilnosti u ponašanju ovog automata:
Ćelija se ne mijenja ako je razliµcita od obje susjede (bi;3 = 010; 101), ili ako
je jednaka desnoj susjedi pod uvjetom da je lijeva nula (bi;3 = 000; 011);
Ćelija se mijenja ako je jednaka lijevoj i ako je razliµcita od desne susjede
(bi;3 = 001; 110), ili ako je jednaka desnoj i ako je lijeva susjeda jednaka jedan
(bi;3 = 100; 111);
Ćelija će biti 0 ako je razliµcita od desne susjede i ako bi;3 ima više jedinica od
nula (bi;3 = 110; 101), ili ako su sve ćelije jednake (bi;3 = 000; 111);
Ćelija će biti 1 ako je jednaka desnoj i ako je razliµcita od lijeve susjede (bi;3 =
011; 100), ili ako je razliµcita od svoje desne susjede, uz uvjet da vektor susjed-
stva ima više nula od jedinica (bi;3 = 001; 010);
Itd.
4. Izbor raµcunarskog modela 63
Slika 4.1: Elementarni staniµcni automat ECA 30 (pravilo 30d = 00011110b ). Za 250 ćelija
prikazan je vremenski razvoj u 250 uzastopnih koraka, prema dnu slike. U poµcetnom
stanju sve su ćelije na 0 (bijele) osim središnje, koja je na 1 (crna). Tijekom vremena
sustav prelazi u nepravilno, kaotiµcno stanje (na dnu dijagrama). Preuzeto sa [81].
Slika 4.2: Staniµcni automat ECA-110 (6Eh = 01101110b ). Za razliku od kaotiµcnog ECA-
30, koji daje nasumiµcan uzorak, ECA-110 gradi uzorke sloµzene unutarnje strukture. To je
odraz njegove ultimativne raµcunarske moći, ekvivalentne univerzalnom Turingovom stroju.
Poµcetni uvjet te broj ćelija i koraka isti su kao i na prethodnoj slici. Preuzeto sa [81].
64 4. Izbor raµcunarskog modela
Ćelija se ne mijenja za bi;3 = 000; 010; 011; 100, 110 , tj. kad je desna susjeda
0 ili kad je bi;3 = 011b = 3d (bi;3 je paran broj ili 3);
Ćelija se mijenja za bi;3 = 001; 101; 111 , tj. kad je desna ćelija 1 i kad je
bi;3 6= 011b = 3d (bi;3 je neparan broj razliµcit od 3);
Ćelija će biti 0 ako je jednaka svojoj desnoj susjedi i ako bi;3 ima više nula od
jedinica (bi;3 = 000; 100), ili ako su sve ćelije 1 (bi;3 = 111);
Ćelija će biti 1 kad je jednaka lijevoj i razliµcita je od desne susjede (bi;3 =
001; 110), ili kad je razliµcita od obje susjede (bi;3 = 010; 101), ili kad je jednaka
desnoj susjedi koja je 1 a razliµcita je od lijeve, tj. kad je bi;3 = 011b = 3d ;
Itd.
III. Automati koji prelaze u stanje koje moµzemo opisati kao puko sluµcajno ili
kaotiµcno, bez bogate strukture (primjeri: ECA-22, 30, 126, 150, 182, . . . );
IV. Automati koji u svojim uzorcima pokazuju ponavljajuća ili stabilna stanja,
ali tvore i bogate strukture koje me†usobno djeluju na kompleksan i općenito
nepredvidljiv naµcin (primjer: ECA-110).
De…nicija 4.2 SOHMM jest ure†ena trojka SO = (T; S; p0 ), gdje je broj stanja
implicitno odre†en dimenzijom kvadratne T matrice, T = [Tij ]n n , a broj simbola
brojem kolona matrice S = [Sik ]n a .
1| 1
2
1| 1 A B
2
0|1
samo dva stanja — jedan simbol. Ako se emitira 0, time je jedinstveno odre†en
prijelaz B ! A, pa se sustav mora nalaziti u stanju A . To je opisano degeneriranom
distribucijom u drugom retku prve sastavne matrice. Me†utim, ako se emitira signal
1, jedino što moµzemo odrediti jest da se sustav s podjednakom vjerojatnošću nalazi
ili u stanju A ili u stanju B. Umjesto toµcnog odre†enja konaµcnog stanja, nedetermi-
nistiµcnost sustava nam sugerira da takvo stanje opišemo distribucijom vjerojatnosti
p2 = (pA = 1=2; pB = 1=2), tj. da prije†emo iz deterministiµckog u nedeterministiµcki
opis stanja sustava (usporediti s 5.2.1 i 5.2.2), koji nadopunjujemo i stohastikom
prijelaza. To smo formalno mogli napraviti i u sluµcaju emitiranja znaka 0, uvo†enjem
degenerirane distribucije p1 = (pA = 1; pB = 0) . Prema tome, usprkos poznavanju
matrica ili dijagrama prijelaza, prava stanja u naµcelu ostaju skrivena.
Sada smo spremni i za formalnu de…niciju ove vrste HMM-a (prilago†eno forma-
lizmu ovog rada na temelju [65]):
Tikj 0; 0 i; j n 1; 0 k a 1; (4.3a)
X
n 1
Ti j = 1 ; 0 i n 1; (4.3b)
j=0
X
n 1
Sik = Tikj ; 0 i n 1; 0 k a 1: (4.5)
j=0
Pr (vi ; sk ; vj )
Tikj = Pr (sk ; vj jvi ) (4.8)
Pr (vi )
Pr (vi ; vj ) Pr (sk jvi ; vj )
= = Pr (vj j vi ) Pr (sk jvi ; vj )
Pr (vi )
= Tij Pr (sk jvi ; vj ) , Tij Sjk :
4.3.5 Primjeri
Polazimo od primjera EOHMM-a sa slike 4.3, µcije su sastavne matrice (4.2). Iz
njih slijedi matrica prijelaza T (def. 4.3) i matrica S promatranja (korolar 4.2), koje
de…niraju SOHMM:
! !
1 1
2 2
0 1
T = ; S = : (4.9)
1 0 1 0
Ove se vrijednosti mogu i izravno išµcitati iz grafa modela prema de…niciji 4.1.
Promotrimo još i primjer sa slike 4.4. On je dobiven modi…kacijom EOHMM-a
sa slike 4.3, dodavanjem novog prijelaza iz stanja B, po drugom simbolu (1). Model
je zadan sljedećim sastavnim matricama:
! !
1 1
0 0
T s=0 = 1
; T s=1 = 2 2
1
: (4.10)
2
0 0 2
Kao i gore, iz de…nicije 4.3 i transformacije (4.5) slijede matrice SOHMM forme:
! !
1 1
2 2
0 1
T = 1 1
; S = 1 1
: (4.11)
2 2 2 2
4. Izbor raµcunarskog modela 73
One se tako†er mogu lako zakljuµciti i izravno iz grafa. Iz matrice prijelaza T koja
u svim retcima ima uniformne distribucije, proizlazi stacionarna vjerojatnost pst =
1 1
; . Tako†er, µcitatelj se lako moµze uvjeriti da primjenom transformacije (4.7) ni
2 2
u kojem od gornjih primjera ne dobivamo poµcetne sastavne matrice, što je posljedica
gore diskutiranog gubitka informacije u kreiranju matrica T i S.
Promotrimo joškakve će nizove generirati sustavi iz gornjih primjera. Iz grafova
sustava lako je uoµciti da u oba sluµcaja vrijedi sljedeće pravilo: pošto je emitiran znak
0 (prijelaz u stanje A), on se ne moµze ponoviti, već nakon njega mora uslijediti znak
1. Pošto se emitira znak 1, oba sustava mogu emitirati bilo 0 bilo 1. Ovo pravilo i
niz znakova nastao po njemu moµzemo kratko opisati nazivom nema uzastopnih nula
(engl. No Consecutive Zeros, NCZ). Taj ćemo jednostavan sustav koristiti kao testni
primjer i u okviru teorije -strojeva, od poglavlja 6 (§6.5) pa nadalje.
Gornji problemi odraz su same suštine HMM-a koja leµzi u stohastiµckoj inter-
pretaciji naµcelno nepoznatih stanja. U domeni prepoznavanja uzoraka oni nisu pre-
sudni. No za modeliranje u kojem µzelimo analizirati veze izme†u stanja dinamiµckog
sustava i njihove uzroµcno-posljediµcne veze, kao bolji nameće se koncept kauzalnih
4. Izbor raµcunarskog modela 75
77
78 5. Raµcunski automati u kontekstu modeliranja
L A : (5.1)
O konkretnom jeziku ovisi pobliµze odre†enje ovog skupa, odnosno izbor rijeµci
koje će on sadrµzavati.
Ograniµcimo li duljinu rijeµci na maksimalnu vrijednost lmax 2 N+ 0 , de…niramo
skup Almax = fw0 ; w1 ; : : : ; wlmax g . U tom ćemo sluµcaju promatrati jezik Llmax
opisan sljedećom de…nicijom.
De…nicija 5.2 Formalni jezik Llmax s rijeµcima maksimalne duljine L neki je pod-
skup iz skupa Almax ,
Llmax Almax : (5.2)
Lema 5.1 (i) Za konaµcnu abecedu A s a 2 simbola, jezik Llmax ima maksimalno
card Almax = Almax rijeµci,
almax +1 1
Almax = : (5.3a)
a 1
(ii) Specijalizacija gornjeg izraza za a = 2 daje:
1
Uobiµcajena oznaka za prazan niz u literaturi ovog podruµcja jest ili " [37, 56]. Da se iz-
bjegnu krive konotacije te oznake naspram -strojeva i s njima povezanih -stabala (vidjeti sljedeće
poglavlje), ovdje ćemo za prazan niz koristiti oznaku e.
5. Raµcunski automati u kontekstu modeliranja 79
Dokaz. Dokaz se svodi na izraµcun broja rijeµci u skupu Almax , koji odgovara
jeziku Llmax s maksimalnim brojem rijeµci, µcija je maksimalna duljina lmax . Dokaz
slijedi izravno iz sume koja predstavlja prvih lmax + 1 µclanova geometrijskog niza:
X
lmax
almax +1 1
Almax = al = : (5.4a)
l=0
a 1
de…niraju gramatiku G na osnovi koje se mogu generirati nizovi znakova. Skup svih
nizova znakova koji se mogu stvoriti na temelju gramatike G, odnosno skup svih
znakova koje ta gramatika dopušta, naziva se jezik L (G) .
Tako će npr. pravila za tvorbu regularnih izraza odrediti regularne jezike (engl.
regular languages), u kojima se pravila odnose na unaprijed odre†enu strukturu i
duljinu karakteristiµcnih podnizova (vidjeti 5.3). S druge strane, rekurzivne tvorbe
generiraju kontekstno neovisne gramatike (engl. context-free grammars, CFG) i jezike
koji proizlaze iz njih. Zbog svoje rekurzivnosti ova gramatika dopušta tvorbu proiz-
voljno duboko ugnijeµz†enih struktura [37, 56].
Teorijski gledano, L (G) općenito je beskonaµcan, pa dopušta tvorbu beskona-
µcno dugaµckih nizova. Jasno je da ćemo u konkretnom modeliranju morati pribjeći
prouµcavanju jezika Llmax (G), s rijeµcima konaµcne maksimalne duljine lmax .
:Q A ! Q; (5.5)
(q; s) = q 0 :
µ
Slika 5.1: Primjer konaµcnog automata (FA). Cvorovi grafa oznaµceni kruµzićima predsta-
vljaju stanja automata. Poµcetno stanje oznaµceno je na naµcin uobiµcajen u teoriji automata
— ravnom strelicom koja dolazi slijeva te sugerira da se radi o ulaznom stanju (u našem
sluµcaju q0 ). FA na slici prihvaća sve nizove koji sadrµze ukupno paran broj jedinica i paran
broj nula. Konaµcno stanje ovdje je oznaµceno upisanim kvadratom.
S pomoću oznaµcenog usmjerenog grafa (engl. labeled directed graph, LDG), koji
se naziva i prijelazni dijagram (engl. transition diagram), moµzemo ostvariti gra…µcki
prikaz konaµcnog automata prema de…niciji 5.3. Stanja automata oznaµcena su µcvo-
rovima grafa, a abecedu simbola išµcitavamo na temelju njihovih oznaka na granama
grafa. Poµcetno stanje oznaµceno je ulaznom strelicom koja ne vodi ni iz kojeg drugog
stanja, dok su konaµcna stanja ovdje oznaµcena upisanim kvadratom.3 Funkcija prije-
laza ostvarena je usmjerenim granama od poµcetnog do konaµcnog stanja, oznaµcenim
primljenim simbolom s po kojem se doga†a prijelaz q ! q 0 , što ćemo zapisivati kao
s
q ! q 0 . Ako niz w primljen kroz poµcetno stanje završava u nekom od konaµcnih
stanja, tada kaµzemo da je novo stanje automata prihvatljivo stanje, odnosno da FA
prihva´ca niz w .
Na slici 5.1 dan je primjer konaµcnog automata koji prihvaća sve nizove s ukupno
parnim brojem jedinica i parnim brojem nula [37]. U tom se primjeru konaµcno stanje
podudara s poµcetnim.
Konaµcni automat jest stroj na kojem posredstvom primljenog niza ostvarujemo
konaµcnu kontrolu (engl. …nite control). 0pćenito će FA primati simbole iz nekog
niza, kojeg u teoriji automata zamišljamo kao zapisanog na traci (sl. 5.2). Ako je
FA trenutno u stanju q 2 Q, nakon što s trake oµcita simbol s on prema (5.5) prelazi
u stanje q 0 = (q; s) . Potom pomiµce traku tako (ulijevo) da moµze proµcitati sljedeći
3
U teoriji automata konaµcna stanja standardno se obiljeµzavaju dodatnom upisanom kruµznicom.
Kod konaµcnih stohastiµckih automata tu ćemo oznaku koristiti za poµcetno stanje, pa smo zato za
konaµcna stanja uveli novu oznaku (u SFA modelima standardno ćemo je ispuštati, vidjeti 5.4.2).
5. Raµcunski automati u kontekstu modeliranja 83
Slika 5.2: Shematski prikaz funkcije konaµcnog automata (FA). FA je ostvaren s pomoću
konaµcne kontrole koja ostvaruje funkciju prijelaza i trake na kojoj su upisani simboli. Na
temelju trenutnog stanja q i uµcitanog simbola s , konaµcna kontrola odre†uje sljedeće stanje
q 0 i pomiµce glavu za µcitanje na sljedeći simbol.
simbol (desni). Sve simbole zapisane na traci moµzemo promatrati kao jedinstveni
niz wT . Ukoliko je niz wT prihvatljiv, tj. ako nakon njegova oµcitanja FA završava u
jednom od konaµcnih stanja, tada kaµzemo da je FA prihvatio cijelu traku. Prije nego
što je završen prolazak kroz cijelu traku, FA moµze prihvatiti mnogobrojne pre…kse
od wT , neovisno o tome je li cijela traka prihvaćena ili nije.
Zato što nas kod konaµcne kontrole općenito zanima stanje stroja nakon primi-
tka nekog niza w; u daljnjem razmatranju funkciju zamjenjujemo općenitijom
funkcijom b :
b:Q A ! Q; (5.6)
b (q; w) = q 0 :
b:Q A ! Q; (5.7)
b (q; e) = q ;
b (q; ws) = ( b (q; w) ; s) :
:Q Ae ! P (Q) ; (5.8)
(q; s) 2 P (Q) :
Po de…niciji 5.4 bilo koje stanje q iz skupa Q moµze biti konaµcno, ako vrijedi
; 2
= Q . Ako u nizu postoji barem jedan nemoguć prijelaz, koji vodi u stanje ;,
tada NFA ne moµze prihvatiti niti cijeli taj niz. Kad se stanje ; formalno pojavi u
Q, kao npr. prilikom transformacije NFA u ekvivalentni DFA [vidjeti izraz (5.10)],
implicitno ćemo podrazumijevati da ono ne moµze biti konaµcno. U protivnom bi
automat prihvaćao i nedopuštene nizove, što bi bilo kontradiktorno.
Primjer NFA bez e-prijelaza dan je na slici 5.3. Nedeterministiµcki je prijelaz iz
stanja q0 po primitku simbola 0 : q0 ! fq0 ; q1 g i 1 : q0 ! fq0 ; q3 g . Ovaj NFA pri-
0 1
hvaća sve nizove koji automat nedeterministiµcki dovode u stanje q2 ili q4 . Vidljivo
je da prijelaze moµzemo odabrati tako da već i nizom 00 (11) do†emo u stanje q2
(q4 ). Otuda proizlazi da će ovaj NFA prihvatiti sve nizove koji u sebi imaju barem
jedan par uzastopnih nula ili barem jedan par uzastopnih jedinica.
1 1
1 A B 1 A B 1
0 0
(a) (b)
a 0 1 b 0 1
A ; fA; Bg A ; fA; Bg (5.9)
B A ; B A B
q2 q2 1
0 0
1 1
q1 q3 1 q1 q3 1
0 0
q2 1 q2
0 0
0 0
1 q3 q1 1 q3 q1
1 1
(a) (b)
0
DFA.a, DFA.b = (fq0 ; q1 ; q2 ; q3 g ; f0; 1g ; x ; (A) ; fq1 ; q2 ; q3 g), x = a, b ;
0 0
a 0 1 b 0 1
; ; ; ; ; ;
A ; fA; Bg A ; fA; Bg (5.10)
B A ; B A B
fA; Bg A fA; Bg fA; Bg A fA; Bg
izrazima oznaµcava Kleenovo zaokruµzenje ili okruµzenje 5 (engl. Kleen closure), koje se
za neki skup (rijeµci) W de…nira kao:
[
1
W = Wi : (5.11)
i=0
za tvorbu sastavljenog niza u kojem broj uzastopnih nula i jedinica ne mora biti
paran. Prva od njih opisuje sluµcaj kad se nakon pojave jedne nule i jedne jedinice,
ili obrnuto — jedne jedinice i jedne nule, prelazi u desno donje stanje na dijagramu.
Srednja zagrada opisuje mogućnost da se iz desnog donjeg stanja proµcita proizvoljan
paran broj nula i jedinica, a posljednja oznaµcava da se na kraju trebamo vratiti u
konaµcno stanje u lijevom gornjem uglu. Lako je provjeriti da će gornji regularni
izraz, baškao i konaµcni automat sa slike 5.1, prihvatiti svaki niz w s parnim ukupnim
brojem nula i parnim ukupnim brojem jedinica, a neće prihvatiti niz koji nema to
svojstvo. To ilustriraju sljedeći primjeri nizova:
(
101110000110101101 ; prihvatljiv ;
w= (5.13)
101110100110101101 ; nije prihvatljiv .
a
XX
s s
T = Tqq0 v v
; Tqq0 = Pr (s; q 0 j q ) ; s
Tqq0 =1: (5.17)
q 0 2Q s2A
6
Za diskusiju naziva iz teorije grafova vidjeti podbilješku 1 u 4.3.
92 5. Raµcunski automati u kontekstu modeliranja
i. Bez daljnje analize sva na†ena stanja u SFA moµzemo proglasiti konaµcni-
ma, QF = Q . Takav SFA prihvaća sve nizove koji se u njemu mogu
kreirati poµcevši od zadanog stanja i slijedeći neku od njegovih mogućih
s
staza (s prijelazima za koje je Tqq0 = Pr (s; q 0 j q ) > 0). 8 [To mora vrijediti
za sve podnizove koji su bili uµcitani u fazi uµcenja (vidjeti 6.4, 6.5).]
ii. Analizom strukture SFA ili na drugi naµcin odrediti skup prikladnih ko-
naµcnih stanja QF Q (npr. eliminacijom tranzijentnih stanja), pa onda
kao i u prethodnoj toµcki koristiti takav SFA za provjeru prihvatljivosti
proizvoljnih nizova.
De…nicija 5.5 SFA jest ure†ena µcetvorku (Q; A; q0 ; T) odre†ena skupom stanja Q;
abecedom A; poµcetnim stanjem q0 i vjerojatnosnim tenzorom prijelaza T de…nira-
nim izrazom (5.17), pri µcemu je svaki prijelaz (grana grafa) e = (q; s; q 0 ) funkcijski
odre†en ure†enim (zdruµzenim) parom doga†aja (q; s) .9 Ako nije drugaµcije navedeno,
sva stanja iz Q smatramo konaµcnima.
Napomena 1. SFA jest regularan ako i samo ako je T regularan prema (5.17).
Napomena 2. Vjerojatnost prijelaza (grane) e = (q; s; q 0 ) iz skupa E iznosi Pr (e) =
Pr (q) Pr (s; q 0 j q) , 10 pa tenzor T de…nira dozvoljene (nedozvoljene) prijelaze e kao
s
one za koje je Tqq0 s
= Pr (s; q 0 j q) > 0 (Tqq0 = 0). Nedozvoljene ili nemoguće prijelaze
ne prikazujemo u SFA-grafu. Za deterministiµcki prijelaz vrijedi Tqqsd0 = 1 (§5.4.1).
d
si
Korolar 5.2 Neka je (Q; A; q0 ; T) SDFA i Tqq0 > 0, si 2 A, q; q 0 2 Q . Tada
je vjerojatnost prijelaza u sva ostala stanja q 00 2 Q, q 00 6= q 0 , Tqqsi00 = 0 . Drugim
rijeµcima, u svakom retku matrice T si postoji jedan i samo jedan nenulelement .
Dokaz. Za SDFA je prijelaz e = (q; si ; q 0 ) funkcijski odre†en zdruµzenim parom
doga†aja (q; si ) . Dakle, za svaki par (q; si ) postoji jedinstveno konaµcno stanje q 0 ,
si
pa stoga i samo jedan element u retku q matrice T si takav da je Tqq0 > 0.
Gornje ćemo svojstvo pokazati na konkretnim primjerima prilikom razmatranja
informacijsko-teorijskih aspekata SFA u odjeljku 7.4.
Nestohastiµcku aproksimaciju SFA, koju ćemo oznaµcavati s FA’, dobivamo “ukla-
njanjem”vjerojatnosti prijelaza. U tenzoru T sve nenulelemente zamjenjujemo jedi-
nicama, µcime tvorimo spojni tenzor T0 (§7.3.3). FA’nalik je FA, ali on dozvoljava
da po nekim simbolima prijelazi ne postoje (vidjeti i podbilješku 8, u 5.4.2).
Rezimiramo da stroj M iz razreda SFA formalno moµzemo opisati kao:
i. Stohastiµcki konaµcni automat MSF A = (Q; A; q0 ; T) ;
ii. Nestohastiµcku aproksimaciju SFA s FA’, MF A0 = (Q; A; q0 ; T0 ) .
Zbog ukljuµcene stohastike SFA sadrµzi više informacije od FA’. Stoga bi njemu
ekvivalentan regularan izraz trebao sadrµzavati informaciju o vjerojatnostima prije-
laza izme†u stanja. Primjerice, za Bernoullijev niz u kojem su jedinice dvostruko
vjerojatnije od nula to bismo mogli zapisati kao 0j 23 + 1j 13 . Uobiµcajeno su te
vjerojatnosti jednake i tada zapis pojednostavljujemo na standardni, (0 + 1). Uz
ovu, implicitnu, de…niciju vjerojatnosti regularni izrazi u potpunosti de…niraju SFA.
Koristit ćemo ih za opis “pravilnih”dinamiµckih sustava (primjeri u 6.5, 7.4, I.3).
Stohastiµcki konaµcni automati predstavljat će temeljni -stroj — kljuµcnu opera-
tivnu razinu modeliranja u teoriji -strojeva. Podudarnost izme†u ta dva pojma i
naµcin njihove gradbe iz vremenskog niza pokazat ćemo u sljedećem poglavlju.
De…nicija 5.6 Neprazan skup Q stanja proizvoljnog automata dijeli se na dva dis-
junktna podskupa Q = Qt [ Qr , Qt \ Qr = ;, za koje vrijedi:
(i) Qt je skup prolaznih ili tranzijentnih stanja (engl. transient states) u koja se
sustav više ne vra´ca nakon prelaska u bilo koje stanje skupa Qr ;
5. Raµcunski automati u kontekstu modeliranja 95
(ii) Qr je skup ponavljajućih ili rekurentnih stanja (engl. recurrent states) izme†u
kojih sustav prelazi po ulasku u bilo koje od tih stanja.
Korolar 5.3 (i) Za regularan SFA (Q; A; q0 ; T), s nepraznim skupom Q stanja,
skup Qt moµze biti prazan, dok Qr mora biti neprazan, tj. kQt k 0, kQr k 1 .
(ii) Skup Qr rekurentnih stanja i skup Er prijelaza me†u njima, Er = fe : e =
(q; s; q 0 ) ; q; q 0 2 Qr g, µcine jako povezanu sastavnicu (engl. strongly connected com-
ponent) oznaµcenog usmjerenog grafa kojim je SFA prikazan.
Ovako de…nirani SNFA predstavlja poopćenje SDFA. Za njega vrijedi uvjet normi-
ranosti jednak onom za SDFA u (5.17). Naravno, za SNFA ne vrijede korolari 5.1 i
5.2, što slijedi iz diskusije u prethodnom odjeljku.
Gornja de…nicija navodi nas na sljedeći vaµzan teorem.
Teorem 5.1 SNFA (Q; A; T; pst ) odre†en prema de…niciji 5.7 ekvivalentan je
EOHMM-u V; A ; T k ; pst , uz Q = V , T , T k .
Korolar 5.4 Za SDFA (Q; A; q0 ; T) i SNFA (Q; A; T; pst ) (def. 5.5, 5.7) ure-
†ena trojka M C = (V; T; pst ) jest pozadinski Markovljev lanac.
Ulazna traka
1 0 1 1 1 0 0 1 1 0 1 1 1
Radna traka
1 1 0 1 1 1
Bernoulli- Kontrolna
Turingov jedinka
Stroj (s konačnim
(BTM) brojem stanja) Izvor
stohastičnosti
0 0 1 0 1 0 0 0 1 0 1 0 1
Izlazna traka
Slika 5.6: Bernoulli-Turingov stroj (BTM). To je univerzalni Turingov stroj (UTM) s pri-
dodanim izvorom stohastiµcnosti — ovdje u formi sonde koja mjeri brzine molekula u uza-
vreloj tekućini. Motiv za uvo†enje BTM-a odustajanje je od deterministiµckog opisa (kvazi)
stohastiµckih sustava [u koje spadaju i oni u reµzimu deterministiµckog kaosa]. UTM zahtijeva
beskonaµcni raµcunarski napor za toµcnu reprodukciju beskonaµcno dugaµckog sluµcajnog niza.
BTM stohastiµcke nizove samo simulira, tj. generira njihove statistiµcke ekvivalente.
poµcetno odabrani razred ne moµze dati odgovarajući model, moramo preći u moćniji
razred strojeva (vidjeti §6.4).
TM/UTM
RE/2LS
RS
2NSA 2
CN
2DSA UCDTIME(2 )
UCDTIME(nCN)
2NENSA
2
2NEDSA NSPACE(n )
DSPACE(nlogn) 1LS
NLBA/CSG
2DLBA NSPACE(n)
DSPACE(n)
1NnSA
ICFG
0LS
RICFG
1NRPA
1NSA
PDA
1NENSA
CFG
1DSA mogućnosti
Opisne
DPDA
1NEDSA
DCFL
Beskonačno
Konačno
DFA/NFA
Pravilni izrazi
Striktno Konačni
sofički potposmaci
Jednoliki
Periodični
Bernoulli
Slika 5.7: Hijerarhija raµcunskih automata i strojeva (prema [26]). Idući od dna prema
vrhu nailazimo na sve moćnije strojeve, sposobne za interpretaciju sve sloµzenijih jezika.
Stroj više razine razaznaje jezik stroja niµze razine s kojim je povezan. Legenda pridjeva
(engl.): 1 (2) = 1 (2) way input tape, D (N) = (non)deterministic, I = indexed, RI =
restricted I, n = nested, NE = nonerasing, CF = context free, CS = context sensitive, R =
recursive, RE = R enumerable, U = universal. Legenda objekata (engl.): G = grammar, A
= automaton (automata), FA = …nite A, PDA = pushdown A, SA = stack A, LBA linear
bounded A, RPA = reading PDA, TM = Turing machine, LS = Lindenmayer system, 0L
= CF LS, 1L = CS LS, RS = R set.
5. Raµcunski automati u kontekstu modeliranja 101
SNFA/EOHMM/
RHMM/FMC
Nedeterministički
Kontinuirani
Deterministički SDA
Fraktalni
SDA
Prebrojivi
SDA
SDFA
MC
Bernoulli
DFA NFA
Striktno
sofički
Topološki Konačni
MC potposmaci
Puni
posmak Periodični
Slika 5.8: Hijerarhija raµcunskih strojeva i sustava s konaµcnom memorijom (prema [26]).
Odijeljeni su deterministiµcki od nedeterministiµckih sustava te sustavi bez od sustava sa
podrškom stohastiµckoj mjeri. Opisne mogućnosti rastu koso, gore-udesno. Nestohastiµcki
su klasiµcni automati koji razaznaju formalne jezike (preuzeti iz donjeg dijela sl. 5.7). Sto-
hastiµcki automati pored topologije stanja i prijelaza daju i njihove vjerojatnosti, pa zato
podrµzavaju mjeru entropije. Na ovoj bi slici ultimativni BTM stroj bio gore-desno, iznad
svih ostalih automata. Legenda kratica (engl.): A = automaton (automata), F = …nite,
D = Deterministic, N = nondeterministic, S = stochastic, MC = Markov chain, HMM
= hidden Markov model, RHMM = recurrent HMM, FMC = Function of Markov Chain.
Pridodano izvorniku: EOHMM = edge output HMM (§ 4.3, 5.5).
102 5. Raµcunski automati u kontekstu modeliranja
U prethodnom dijelu ovog rada osvrnuli smo se na širi kontekst raµcunske mehanike
te pripremili podlogu za izlaganje teorije -strojeva i algoritama njihove gradbe. U
poglavljima 2 i 3 opisana je generacija vremenskog niza iz dinamiµckog sustava, a u
poglavlju 4 — kao najpogodnija za modeliranje iz takve vrste ulaznih podataka —
odabrana je upravo teorija -strojeva. Potom su u poglavlju 5 formalno izvedeni
stohastiµcki konaµcni automati, za koje ćemo ovdje pokazati da su temeljni prezen-
tacijski model -strojeva. Tako†er, dan je pregled automata i strojeva viših razina
koji mogu posluµziti kao raµcunski modeli za sloµzenije sustave.
Ovo poglavlje zapoµcinjemo nerigoroznim opisom -strojeva u kontekstu crutch-
…eldovske raµcunske mehanike. Potom na temelju izvornika u [21, 22, 26] i naših pre-
gleda teorije iz rakursa raµcunarskih znanosti [44, 45], de…niramo njezine osnovne poj-
move u matematiµcki postroµzenoj formi. Radi aktualizacije teorije uvodimo operativ-
ne de…nicije u kojima su pored parametra vjerojatnosne preciznosti ukljuµcena i pre-
ostala dva parametra modela — duljina izluµcenih rijeµci i duljina sljedova unaprijed.
Time je omogućena analiza duljina korelacija i postavljanje uvjeta regularnosti mo-
dela. Matematiµcko-formalni dio završit ćemo de…nicijama operativnog i reprezen-
tativnog temeljenog -stroja te uspostavom njihove formalne podudarnosti sa sto-
hastiµckim konaµcnima automatima (SFA). Naµcelnu hijerarhijsku gradbu -strojeva
konkretizirat ćemo na primjeru nalaµzenja SFA iz rašµclambenog stabla testnog su-
stava, “na papiru”. To će posluµziti kao ideja za konstrukciju izvornog, FM algoritma
za nalaµzenje SFA-modela [44, 45]. On će biti nadopunjen temeljitim, TFM algorit-
mom koji pri gradbi modela istraµzuje sva podstabla rašµclambenog stabla. Poglavlje
završava primjerom uporabe DSA programa za modeliranje testnog dinamiµckog su-
stava zadanog pravilom i detaljnom analizom dobivenih rezultata.
103
104 6. Raµcunska mehanika i -strojevi
1
Zbog deterministiµcnosti kauzalnog modela, trenutno stanje i simbol jedinstveno odre†uju
sljedeće kauzalno stanje, odnosno, trenutno i sljedeće stanje jedinstveno odre†uju simbol po kojem
se prijelaz doga†a (vidjeti izlaganja u 6.2.7, 6.2.8 i def. 5.5).
6. Raµcunska mehanika i -strojevi 105
i toµcnost mjerenja: nI " Dim (pogl. 3). Indeks i kodiramo kao jedan znak s iz
abecede A, koju odabiremo tako da vrijedi card (A) = kAk = nI :
s = si 2 fs0 ; s1 ; : : : ; sa 1 g = A : (6.1)
2 = 0; 1; : : : ; v 1 ; (6.2)
gdje je skup svih mogućih stanja i v = k k . Cilj nam je pronaći ta stanja iz niza
mjerenja s = s0 s1 s2 : : : i opisati ih kauzalnim modelom. Uvodimo pojam uzroµcnog
(kauzalnog) stanja (engl. causal state) za vremenski niz proizvoljne duljine.
Pr st 1 ; s!
t = zdruµzena vjerojatnost pojave para doga†aja:
(slijed unatrag = st 1 , slijed unaprijed = s!
t );
Pr s!
t j st 1 = uvjetna vjerojatnost, za pojavu uvjetnog doga†aja:
(slijed unaprijed = s!
t j pod uvjetom: prethodio je slijed unatrag = st 1 ).
Pr (s) = Pr st 1 ; s!
t = Pr s!
t j st 1 Pr st 1 : (6.4)
s s0 () jPr (s!
t j s) Pr (s! 0
t j s )j ; s!
t 2 A ; (6.5a)
Pr (s!
t j s) Pr (s! 0
t js ) : (6.5b)
sD = s1 s2 : : : sk 1 sk sk+1 : : : sD ; 1 k D;
1 k D L+1: (6.8)
6. Raµcunska mehanika i -strojevi 111
s s0 () jPr (s!
k j s) Pr (s! 0
k j s )j ; (6.9a)
L;
8 s!
k 2 AL :
To zapisujemo i kao (L; )-ekvivalentnost pripadnih uvjetnih distribucija:
Pr (s!
k j s) Pr (s! 0
k js ) : (6.9b)
L;
Sva stanja koja su me†usobno (L; )-ekvivalentna de…niraju jedan razred ekviva-
lencije (engl. equivalence-class) i isto kauzalno stanje. O tome govori:
De…nicija 6.5 Skup D; L; svih stanja i sustava jest skup razreda ekvivalencije
uzroµcnih stanja s za sljedove unaprijed s! !
t;L = sk;L 2 AL s obzirom na relaciju ,
L;
u kojima je s predstavnik (engl. representative) razreda ekvivalencije stanja i:
D; L; =f i : s; s0 2 AL ; s0 sg; (6.10)
L;
L D ; i = 0; 1; : : : ; v 1; v 2 N :
Napomena 1. Za ograniµcene nizove duljine D , kao i za sve nizove ograniµcene slijeva,
za predstavnika razreda ekvivalencije odabiremo najkraći s . Iz njega se za zadani
D moµze ostvariti najveći L, a i vjerojatnosti će mu biti najpreciznije (§6.5.5).
Napomena 2. Za L se moµze uzeti L = D , no tada je jedini slijed unatrag prazan
niz, pa se moµze ustanoviti postojanje samo jednog, inicijalnog, stanja.
Zanemarenjem stohastiµckih parametara, odnosno otpuštanjem na 1, proma-
tramo samo morfološki razliµcita (engl. morphologically di¤erent) stanja.
De…nicija 6.6 Skup D; L svih stanja sustava prona†enih u nekom podskupu iz
AD promatramo kao skup razreda ekvivalencije morfološki razliµcitih uzroµcnih stanja
s!
t 2 AL s obzirom na relaciju = prema de…niciji 6.5.
L L; =1
112 6. Raµcunska mehanika i -strojevi
6.2.6 Morfovi
U praktiµcnom modeliraju vaµzan je pojam morfa (engl. morph).
M i = f s! !
i : Pr (si j s) > 0 g ; si ; s!
i 2 A ; (6.11)
naziva se budući morf (engl. future morph) ili kratko morf. Skup svih sljedova s
unazad koji potpadaju pod klasu ekvivalencije stanja i (koji dovode do tog stanja),
naziva se prošli morf (engl. past morph).
M i ;L = f s! ! !
i : Pr (si j s) > 0 g ; si ; si 2 AL ; (6.12)
nazivamo budu´ci L-morf (engl. future L-morph) ili kratko L-morf. Maksimalnu
duljinu L sljedova u (budu´cem) morfu nazivat ´cemo, ovisno o prikladnosti: duljina,
visina ili dubina morfa. Skup svih sljedova si unazad duljine od 0 do D L koji
su doveli do stanja i , naziva se prošli L-morf (engl. past L-morph).
Napomena. Naziv L-morf µcesto ćemo skraćivati u morf.
i j =) M i ;L
=M i ;L
; i; j 2 ; L D: (6.13)
L;
i j ; (L D) : (6.14)
L
Slika 6.1: Budući morfovi (sljedovi unaprijed) proistekli iz općenito razliµcitih uzroµcnih
stanja. Kad su palete budućih mogućnosti i odgovarajuće vjerojatnosti jednake, proces je
u istom uzroµcnom stanju, neovisnom o prošlosti koja mu je prethodila. U trenucima t11 i
t15 uzroµcna su stanja jednaka, jer su jednaki izgledi za budućnost (prema [21, 26]).
i j : (6.17)
L;
i Ms; L = M i ; L; : (6.18)
L;
3
Primjer morfova (stanja) i sljedova unatrag koji ih de…niraju vidljiv je i na sl. 7.4.
6. Raµcunska mehanika i -strojevi 115
Kao nadopuna korolaru 6.1, koji vrijedi za sve morfove, iz gornje de…nicije slijede
dodatne dvije tvrdnje kojima se eksplicira ekvivalencija novouvedenih (L; )-morfova
s uzroµcnim stanjima.
Korolar 6.2 (i) Svako stanje i odre†eno je skupom (L; )-morfova Ms0 ; L , sa slje-
dovima unatrag (stanjima) s0 iz klase (L; )-ekvivalencije koju de…nira stanje i .
(ii) Morfovi M i ; L; , de…niraju klase ekvivalencije iste kao i stanja i 2 D; L; ,
i = 1; 2; : : : ; v , kojima su (L; )-ekvivalentni.
Po korolaru 6.1 (budući) L-morf ili (L; )-morf de…niran je svojim uzroµcnim sta-
njem, odnosno slijedom sk 1 unatrag koji to stanje de…nira. Otuda zakljuµcujemo:
ii. Kao i ranije, s0 = e prazan je slijed unatrag duljine 0, koji po de…niciji 6.3
predstavlja inicijalno stanje. Njega sada povezujemo s indeksom l = 0 . Dva
moguća slijeda unatrag duljine 1, s1 = 0 i s1 0 = 1, povezujemo s indeksom
l = 1 te, općenito, 2l sljedova unatrag duljine l povezujemo s indeksom l .
116 6. Raµcunska mehanika i -strojevi
Pr (ssi ) X
= Pr s!
l+2; L 1 jsi
Pr (s) s!
l+2; 2AL 1
= Pr (si j l ) ; si 2 A : (6.19)
Kroz shemu dozvoljenih prijelaza operator T daje topologiju procesa (engl. process’s
topology). Preciznije — preko uvjetnih vjerojatnosti tih prijelaza — on de…nira i sto-
hastiku procesa (engl. process’s stochasticity). Uvjetnu vjerojatnost prijelaza,4
Pr ! T ( ; si ) = Pr ! 0
= Pr (si ; 0 j ) = T si0 ; (6.21)
si si
zapisujemo kao element T si0 tenzora prijelaza (engl. transition tensor) T . Time su
prijelazi izme†u stanja odmah povezani s poopćenom inaµcicom tenzora prijelaza T
SFA-modela [vidjeti izraz (5.17)].
Sumiranjem tenzora T po svim simbolima, reduciramo ga na matricu prijelaza:
X a
T = T si0 ; (6.22)
i=1
kauzalno stanje de…nirano je morfom koji predstavlja skup mogućih budućih sljedova
znakova. U tako dobivenom -stroju skup mogućih budućih razvoja stanja sustava
moµzemo promatrati kao budući morf više razine. Uvo†enjem prikladnih relacija
ekvivalencije, za takve morfove moµzemo de…nirati kauzalno stanje više razine, iz
kojeg nalaµzenjem veza izme†u stanja dobivamo i -stroj više razine. Motiv za takav
postupak moµze biti divergencija broja stanja u poµcetnom modelu, što ćemo detaljno
opisati u sljedećem odjeljku.
Uvo†enje apstraktnog -stroja, općenite razine, omogućava modeliranje proiz-
voljno sloµzenih sustava i zaokruµzuje teoriju -strojeva kao općenito primjenjivu mo-
delirajuću shemu. Pri tom zahtijevamo da općeniti -stroj zadrµzi sva kljuµcna svojstva
temeljnog -stroja, koja su primjenjiva na općenitim razinama modeliranja (uspore-
diti sa svojstvima saµzetim na kraju pododjeljka 6.2.7). Otuda proizlazi funkcionalno-
programatska de…nicija -stroja koju Crutch…eld nagovještava u [18] i formulira u
[19, 21, 26, 24], koju ovdje nadopunjujemo u njezinoj toµcki (iii):
gdje smo indeksom LNG1 oznaµcili ovaj tip kon…guracije. Za vr < a ta je duljina
manja od vr 1, pa je l M = vr 1 . Iz zadnjeg povezanog stanja moµze se izravno
prijeći u polazno, pa je duljina ciklusa samo za jedan veća. Otuda slijedi:
(
vr 1; vr a ;
l M;LNG1 = (6.32a)
a (vr a + 1) 1 ; vr > a :
M;LNG1 = l M;LNG1 + 1 : (6.32b)
Kod većeg broja rekurentnih stanja mogu se kreirati kon…guracije -stroja koje
daju jošveće duljine korelacije. Njih ćemo oznaµciti kraticom LNG2. One se zasniva-
ju na višestrukim uzastopnim grananjima i kompleksnim parcijalnim povratcima na
poµcetno rekurentno stanje, pa se pri povezivanju stanja u sredini pojedinih zasebnih
grana treba više puta prolaziti kroz iste dijelove staze. Izraµcun duljina korelacije tu
je vrlo sloµzen pa ga izostavljamo. Na†eni su konkretni primjeri u kojima se takva
kon…guracija pojavljuje tek djelomiµcno (§I.4.4), pa su u konaµcnici duljine korelacije
i za te modele ispod onih u izrazima (6.32). Stoga kao pribliµznu gornju granicu
duljina korelacija navodimo vodeći µclan iz prethodnog izraza (a),
Za mnoge -strojeve, ali ne i sve, pokazat će se da vrijedi upravo k = 0 . U tom će
smislu iznos k posluµziti kao jedna od komparativnih odrednica dobivenih modela.
Zadaća -stroja jest nalaµzenje svojstava sustava na temelju vremenskog niza kojeg
taj sustav odašilje. Odlike primljenog niza u općenitom su sluµcaju nepoznate. No,
u svrhu provjere, pretpostavit ćemo da znamo pravila, odnosno program, kojim je
taj niz kreiran. Za niz de…niramo broj koreliranih simbola i duljinu korelacije me†u
tim simbolima na analogan naµcin kao u de…niciji 6.18. O tome govori sljedeća:
De…nicija 6.20 (i) Najve´ci broj uzastopnih simbola vremenskog niza me†u kojima
se nuµzno uspostavlja me†uzavisnost prilikom njegove kreacije nazivamo broj ko-
reliranih simbola vremenskog niza (engl. number of the correlated symbols of
the time series) i oznaµcavamo s Ncrr;T S . (ii) Izme†u Ncrr;T S koreliranih simbola
vremenskog niza postoji duljina korelacije lcrr;T S = Ncrr;T S 1 .
Napomena 1. Pri nalaµzenju Ncrr;T S i lcrr;T S podrazumijeva se da je faza poznata,
jer je to podatak koji je nuµzan za kreiranje (programiranje) niza.
Napomena 2. Ista kao i napomena 2 nakon de…nicije 6.15.
Da -stroj ( D; L; ; T ) vjerno opiše sustav, broj Ncrr;DM morfovima povezanih
simbola, odnosno duljina lcrr;DM morfovima istraµzene korelacije, ne smiju biti manji
6. Raµcunska mehanika i -strojevi 127
Veliµcina modela odgovara broju µcvorova stabla koji moµze rasti i eksponencijalno s
dubinom stabla D. Parametar podsjeća nas da — pored ograniµcenja navedenih za
model M0 — ovdje postoje i ograniµcenja na duljinu rijeµci D. Razlozi su ograniµcena
memorija za pohranu µcvorova stabla, potreba da se stabla hrane s brojem rijeµci koji
općenito raste eksponencijalno s D te ograniµcena preciznost izraµcuna D uzastopnih
simbola (vidjeti 8.3.3, 9.1.3). Ovaj model razvrstava sve l-blokove i daje njihovu
statistiku, na temelju koje je moguć izraµcun uµcestalosti l-blokova u vremenskom nizu.
Model postiµze saµzimanje niza proizvoljne duljine ns na veliµcinu kM1 k = O aD
neovisnu o ns . Pored onog što je izravno predstavljeno modelom M1 , rašµclambeno
stablo daje i uvjetne vjerojatnosti za prijelaze iz svakog µcvora, opisanog rijeµcju wl ,
u sebi nasljedne µcvorove po svakom od a znakova abecede, što je kljuµcna informacija
za inovativni korak na sljedećoj razini modeliranja.
2. Konaµcni automat (FA) s pridodanom stohastikom prijelaza (SFA).8 Na
drugoj razini modeliranja iz rašµclambenog stabla modela M1 nalazimo oblikovno
i stohastiµcki jedinstvena podstabla, odnosno morfove. Dodatni parametar koji se
pojavljuje na ovoj razini modela jest dubina (duljina, visina) L tih morfova te vje-
rojatnosna preciznost ili rezolucija kojom diskriminiramo stohastiµcke razliµcitosti u
njihovim sljedovima unaprijed. To je postupak jednak nalaµzenju kauzalnih stanja na
temelju (L; )-ekvivalencije (§6.2). Rezultat je skup D; L; kauzalnih stanja i ope-
rator T prijelaza izme†u njih, što de…nira operativni -stroj ( ; T )D; L; ; . Ukoliko
za širi interval parametara modela dobivamo isti skup stanja i isti operator T , -
stroj ( ; T ) jest reprezentativan (def. 6.12). Po korolaru (6.3) ovi strojevi de…niraju
SFA-model (T; i0 ) s tenzorom prijelaza T (5.17, 6.21) i indeksom poµcetnog stanja
i0 (najµcešće i0 = 1), pa za model M2 ove razine vrijedi:
Razred
STROJ Veličina Relacija
Razina modela / ekvivalencije
[ računski model ] modela
automata
1 0 1 1 Rezultat
Vremenski
0 ns mjerenja
niz
p(0)|0 1| p(1)
Nezavisnost
1 Stablo p(1|0) 1 ...0 1... O ( || A || D
)
D-blokova
0 0 1 1
s | p (q2 | q1,s)
s’| p’
Stohastički ...
Uvjetna
2 konačni ... O (|| T ||) nezavisnost
automat
[ Temeljni -stroj ]
1 A 1 A 0 A
Konačno-
Stroj za
rekurzivna
3 proizvodnju 0 A O (|| T || + ||P||) uvjetna
nizova
A 0 1 1 1 0 nezavisnost
[ -stroj više razine ]
Slika 6.2: Hijerarhija raµcunskih modela kao rezultat iterativne rekonstrukcije -strojeva
iz vremenskog niza, prema [26]. Na svakoj višoj razini model se gradi iz moćnijeg razreda
automata. Stanja modela oznaµcena su kruµzićima ili kvadratićima, poµcetno s dodatnom
upisanom kruµznicom. Niz znakova iz abecede A nulta je razina modela. Iz nje se na razini
1 formiraju stabla dubine D . Od te razine naviše prijelazima izme†u stanja (granama
grafa) pridijeljene su uvjetne vjerojatnosti. Grupiranjem morfova u stablima dobiva se
na razini 2 temeljni -stroj i ekvivalentni SFA-model. Na višim razinama slijede moćniji
-strojevi, kao npr. stroj za proizvodnju nizova (PM). Red veliµcine modela slijedi iz njegove
raµcunske prezentacije (za SFA iz tenzora T). Detaljnija razrada hijerarhije dana je u [19].
134 6. Raµcunska mehanika i -strojevi
II. Strojevi viših razina. Ako je prva etapa u svojoj ultimativnoj toµcki 2 rezul-
tirala divergentnim modelom, tada je potrebno napraviti daljnji inovativni korak.
Divergentan je model onaj koji uz povećanje parametara D i L daje sve veći broj
stanja sustava, usprkos udovoljenju moµzebitnog zahtjeva za uporabom povećanih
raµcunarskih resursa. Dakle, iako bismo npr. povećali memoriju za pohranu stati-
stike svakog µcvora te utrošili više vremena za uµcitavanje i rašµclambu većeg broja
rijeµci u svrhu dobivanja statistiµcki relevantnijeg stohastiµckog prikaza, kod takvog se
modela broj na†enih stanja ne bi se smanjio. U tom je sluµcaju potrebno prijeći na
više raµcunske modele, s beskonaµcnom memorijom, kao što su npr. sljedeća dva:
3. Stroj za proizvodnju nizova i potisni stoµzni automat. Stroj za proizvodnju
nizova PM (od engl. string production machine) koristi konaµcnu kontrolu i registar
neograniµcene veliµcine za pohranu i rekurzivnu tvorbu proizvoljno dugaµckih nizova.
Dijelovi tih nizova emitiraju se, odnosno prihvaćaju, pri promjeni stanja stroja.
Pravila za proizvodnju nizova nalaze se na temelju analize simetrija koje postoje u
SFA-modelima -strojeva u koraku 2 (vidjeti i I.4.2). Dodatnim unaprje†enjem PM
stroja dobiva se jednosmjerni nedeterministiµcki ugnijeµz†eni stoµzni automat (1NnSA,
§5.6.1), koji simbole generira (prihvaća) jednog po jednog. To je u potpunoj analogiji
s iteriranjem i kodiranjem jedne po jedne toµcke orbite sustava.
Modeliranje strukturalno vrlo bogatih kaotiµcnih sustava pri nastupu kaosa po-
kazuje da je ova razina automata dostatna, tj. da rezultira konaµcnim modelom [17].
Njegova je raµcunska moć bitno veća od SFA, ali manja od univerzalnih strojeva
najviše razine koji su ekvivalentni UTM-u (BTM-u) [usporediti s komentarom uz
princip raµcunske ekvivalencije u 1.2.3].
4. Nuµzna još viša razina? Ukoliko i prethodna razina daje divergentan model,
npr. za procese sloµzene strukture i s dugaµckim korelacijama izme†u simbola, treba
prijeći u još viši razred raµcunskih strojeva.
povećanjem duljine D rijeµci otkrivaju sve dulje korelacije. Primjer za to jest sustav
logistiµckog preslikavanja u nastupu kaosa udvostruµcenjem perioda (§I.4.2).
(c) U nizu Mlev ( 1 ), Mlev ( 2 ),: : :, Mlev ( i ),: : : modela uoµciti pravilnosti
u rastu njihovih raµcunskih i memorijskih zahtjeva nastalih s porastom
njihove preciznosti. Odabrati raµcunski stroj (automat) moćniji od pret-
hodnog ali najmanje razine, takav da moµze reproducirati modele Mlev ( i )
za ! 0 na naµcin da njegova veliµcina (opis) ne divergira. Pri tom mogu
postojati proizvoljni (neograniµceni) zahtjevi na veliµcinu memorije. Podići
razinu modeliranja, lev lev + 1, i vratiti se na korak 2.
w0D = s0 s1 : : : sD 1 ; (6.42)
w1D = s1 s2 : : : sD ;
w2D = s2 s3 : : : sD+1 ;
.. .. ..
. . .
wnDs D = sns D sns D+1 : : : sns 1 :
D
Rijeµc wi+1 dobiva se djelovanjem posmaµcnog preslikavanja na prethodnu rijeµc,
D
wi (§2.2.2), pri µcemu se na mjesto nedostajućeg simbola pridodaje sljedeći simbol
iz niza s :
D
wi+1 = wiD si+D ; i = 0; 1; : : : ; ns D 1; (6.43a)
wiD = wD i
(s) ; i = 0; 1; : : : ; ns D: (6.43b)
wD = s0 s1 s2 : : : sD 1 : (6.44)
s = 01101011011110110101 : : : : (6.45)
(0 + e) (1 + 10) ; (6.46)
t
0 1
Slika 6.3: Hranidba binarnog stabla. Prikazan je izgled binarnog -stabla dubine D = 5
nakon hranidbe vremenskim nizom s = 01101011011110110101::: . Rijeµci duljine 5 uµci-
tavaju se u rašµclambeno stablo. Podebljana je linija staza stvorena uµcitavanjem prve rijeµci
(podniza), wt50 = 01101 , u trenutku t0 . Crtkano su oznaµceni µcvorovi koje niz s ne sadrµzi,
ali ih dozvoljava pravilo NCZ sustava. Tanje oznaµceni µcvorovi nepostojeći su.
c c
Pr wl j s = Pr ( ) = = : (6.47)
ns D+1 cRoot
6. Raµcunska mehanika i -strojevi 145
B A C
1 2 1 1
11 0 3 1 3 0 2 1 2
1 1 1 1 1 1
0 2 1 2 11 0 2 1 2 11 0 2 1 2
1 1
Pr (01jY) = Pr (01j1) = Pr (1j0) Pr (0j1) = 1 2
= 2
: (6.51c)
0 1
0 13 32
B C
T = T0 + T1 = @ 0 0 1 A : (6.53)
0 12 21
Lijevi svojstveni vektor za gornju matricu T iznosi
1 2
pst = 0; ; : (6.54)
3 3
2
1 3
11 1
A B C 1 2
1 1
0 3 0 2
Slika 6.5: Stohastiµcki konaµcni automat (SFA) za proces “nema uzastopnih nula”, prikazan
svojim oznaµcenim usmjerenim grafom (LDG). U poµcetnom stanju, A, model odraµzava svoje
neznanje o fazi procesa. Vjerojatnosti prijelaza tu su jednake (bezuvjetnim) vjerojatno-
stima za pojavu nula i jedinica. Stanje A je tranzijentno. Po pojavi nule model nalazi
fazu i dalje oscilira izme†u rekurentnih stanja B i C. Prijelaz iz B u C deterministiµcki je.
6.6.1 FM algoritam
Prilikom nalaµzenja SFA-modela u zadanom je rašµclambenom stablu potrebno pro-
naći morfološki i vjerojatnosno jedinstvene morfove te ustanoviti prijelaze izme†u
njih. Prema tim kljuµcnim radnjama algoritmu je dano englesko ime Find Morphs
i kratica FM. Algoritam se zasniva na teorijskim postavkama iz odjeljaka 6.2 i 6.4,
posebice na operativnoj de…niciji (L; )-ekvivalencije kauzalnih stanja (def. 6.4) i
njima ekvivalentnih morfova te prikazu morfova kao -podstabala (§6.4.2). FM
algoritam slijedi postupak iznesen u primjeru iz prethodnog odjeljka.
Algoritam 6.2 (FM) Nalaµzenje (L; )-morfova (podstabla) u rašµclambenom -stablu
dubine D i de…niranje SFA-modela.
Rezime de…nicija. L je dubina morfova (podstabala), je preciznost vjerojatnosne
usporedbe. Uzroµcno stanje i 2 D; L; predstavljeno je morfom kojeg pojednosta-
vljeno oznaµcavamo s i (def. 6.11). Uvodimo skup C razreda ekvivalencije morfova
koji je ekvivalentan skupu D; L; stanja sustava (korolar 6.2). Morf i odre†en
je korijenom i svojeg -podstabla i njegovom dubinom (visinom) L µ
D . Cvor
binarnog -stabla de…niran je binarnim nizom koji odgovara stazi od korijena glavnog
stabla do tog µcvora. Korijen glavnog stabla de…niran je praznim nizom e.
1. Tekući µcvor 0 postaviti u korijen nepraznog glavnog stabla, 0 = e . -pod-
stablo s korijenom u 0 = e, dubine L, prvo je i zato morf 0 , koji je prvi
element u skupu razreda ekvivalencije, C = f 0 g [a time i D; L; = f 0 g].
2. Naći morf iz C kojem nisu provjerena njegova podstabla. Taj je morf neprazno
-podstablo koje po de…niciji mora imati barem jednu stazu duljine L . Ako je
korijen 0 morfa na razini D L, tada se njegova podstabla-kandidati dubine
L ne mogu kreirati. Zabiljeµziti da morf ima nede…nirane prijelaze i ići na korak
3. Ako pak je korijen morfa 0 na razini manjoj od D L, odabrati jedno od
152 6. Raµcunska mehanika i -strojevi
dva njegova moguća djeteta, dodajući mu 0 (1) ako se radi o lijevom (desnom)
djetetu:
0 0
s ; s 2 f0; 1g : (6.55)
3. Ako su u koraku 2 na†eni novi morfovi, odnosno ako još postoje morfovi za
µcija podstabla-kandidate nije provjeren razred ekvivalencije, vratiti se na korak
2. Ako nema neprovjerenih morfova, u skupu C sadrµzani su svi (jedinstveni)
morfovi koji odgovaraju stanjima i iz skupa stanja, što zajedno s podacima
o shemi i vjerojatnostima prijelaza izme†u njih predstavlja model M proma-
tranog sustava. Kraj.
Rezultat algoritma. Ukoliko u skupu C postoje morfovi na razini D L s nede…ni-
ranim prijelazima, tada operator T (6.20) nije valjano de…niran i dobiveni je SFA
neregularan (engl. irregular). Ako to nije sluµcaj, model M jest temeljni -stroj
( D; L; ; T ), odnosno regularan (engl. regular) deterministiµcki SFA-model (SDFA)
6. Raµcunska mehanika i -strojevi 153
MSF A = (Q; A; q0 ; T). Postupak u koraku 2a osigurava da dobiveni SFA ima mi-
nimalan broj me†usobno (L; )-razliµcitih stanja (morfova).
Odmah istiµcemo još dva vaµzna svojstva FM algoritma (rezimirana u 8.6.6). Po
poloµzaju svojih korijena u glavnom stablu prona†eni morfovi i , j poredani su po
ure†aju širinom-prvo, tj. uz i < j za razine l morfova vrijedi l ( i ) l j (§8.4).
To je posljedica redoslijeda biljeµzenja morfova — nakon korijenskog morfa na nultoj
razini njegovi se novoprona†eni lijevi i desni podmorf uvijek umeću na kraj liste.
Me†utim, svaki morf neće nuµzno biti i predstavnik klase ekvivalencije na najmanjoj
razini cijelog glavnog stabla. U nekim je stazama potraga za morfovima mogla biti
obustavljena, a duµz drugih nastavljena, pa u neistraµzenim dijelovima glavnog stabla
mogu postojati istovjetni morfovi i na ranijim razinama. Stoga kaµzemo da je to tek
djelomiµcni ure†aj širinom-prvo. Ipak, za istraµzeni dio glavnog stabla predstavnik
klase ekvivalencije uvijek će biti na najmanjoj razini, gdje su stohastiµcna obiljeµzja
glavnog stabla statistiµcki relevantnija i vjerojatnosti prijelaza toµcnije.
Na ovo se nadovezuje i drugo svojstvo. Ako se morfu i na razini l ( i ) za
njegovo lijevo, desno ili oba podstabla na razini l ( i ) + 1 ustanovi da su ona (L; )-
ekvivalentna s prethodno prona†enim morfovima, tada se na toj stazi potraga za
dubljim morfovima obustavlja. Sva podstabla — µciji korijeni kao pre…ks sadrµze niz
kojim je opisan takav morf i — na razinama l l ( i ) + 2 ostaju neistraµzena.
Dakle, u općenitom će sluµcaju FM algoritam okonµcavati svoj rad bez provjere svih
podstabala u glavnom rašµclambenom stablu. Stoga za njega kaµzemo da je (potenci-
jalno) površan [engl. (potentially) super…cial].
Rezultat algoritma. Ako me†u preostalim podstablima ima rubnih (na razini D L),
rezultat je neregularan SFA. Inaµce, regularan i deterministiµcki SFA, s minimalnim
brojem (L; )-razliµcitih stanja,17 poredanih po (strogom) ure†aju širinom-prvo.
Zbog provjere svih podstabala u glavnom stablu TFM algoritam uvijek postiµze
0
najveći broj morfovima povezanih simbola pri nalaµzenju -stroja, Ncrr;DM = D i
0
maksimalnu duljinu morfovima istraµzene korelacije pri nalaµzenju -stroja, lcrr;DM =
D 1 (def. 6.18, kor. 6.5). Ove veliµcine vrijede za sve podnizove (rijeµci) prona†ene
u vremenskom nizu i uvrštene u rašµclambeno stablo, a ne za samo neke — kao što u
općenitom sluµcaju vrijedi za FM algoritam (vidjeti napomenu 1 iza def. 6.17).
Da bi TFM algoritam dao regularan SFA, sva rubna podstabla (s nede…niranim
daljnjim prijelazima) moraju biti uklonjena. Stoga su uvjeti na parametre L i D za
regularan SFA jednaki onima za FM algoritam [§6.6.2, izrazi (6.58, 6.59)].
Prilikom uklanjanja podstabala koja imaju ranijeg (L; )-ekvivalentnog pred-
stavnika, TFM algoritam (posebice njegova inaµcica TFM1) zadrµzava konzistenciju
me†uodnosa prona†enih morfova, a time i konzistentnost konaµcnog modela. Zato
se — pored postojanja ranijeg ekvivalentnog podstabla — za promatrano podstablo
17
Za minimalnost uz TFM2 inaµcicu ponekad će trebati formalno prede…nirati (§ F.1.1, I.4.3).
160 6. Raµcunska mehanika i -strojevi
Izvješće za model br. 7 (odabran u gornjem prozoru sl. 6.6) prikazano je u do-
njem, manjem prozoru, zvanom Stochastic Finite Automaton – Tree Morphs Transi-
tions. Njega µcini lista prona†enih morfova (stanja sustava) s vjerojatnostima njihovih
me†usobnih prijelaza i dodatnim podacima. Lista uvijek zapoµcinje korijenskim mor-
fom (ID broj 1). Svaki je morf jednoznaµcno de…niran svojim korijenskim µcvorom —
predstavljenim binarnim nizom u koloni String — i svojom visinom. Korijenski morf
uvijek proistjeµce iz korijena glavnog stabla, pa mu je korijen opisan praznim nizom.
Nakon korijenskog morfa u listi se niµzu njegovi podmorfovi (ako postoje). U našem
su sluµcaju to morf br. 2 (3) s korijenom oznaµcenim nizom 0 (1). Prva dva morfa
oblikovno (morfološki) su jedinstvena. U koloni $ / Dif to je oznaµceno znakom $, a u
prethodnoj koloni, Twin, minusom, jer oni nemaju ranijeg oblikovno jednakog morfa.
Za morf koji pak nije morfološki jedinstven (morf br. 3), zapisuje se identi…kacijski
broj ranijeg morfa kojemu je on morfološki blizanac s najmanjim vjerojatnosnim
razlikama. Tada je u susjednoj koloni $ / Dif maksimalno vjerojatnosno odstupanje
prona†eno za dva odgovarajuća µcvora takvih blizanaca. Taj podatak daje minimalan
iznos parametra koji je potreban za vjerojatnosnu asimilaciju tih blizanaµckih sta-
nja s njihovim ranijim predstavnicima. Proširenjem pete kolone dobiva se i podatak
o µcvoru u kojem se to maksimalno odstupanje pojavilo (vidjeti opis sl. 6.6).
si j p ! 0 = Pr (si ; 0 j ) : (6.62)
si
0.666900
0.666761
0.666688
1 0.666662 0.500525
0.666653 0.500212
0.666667 0.500049
1 0.499989
0.499969
0.500001
11
A B C
0.333100 0.499475
0.333239 0.499788
0.333312 0.499951
0 0.333338 0 0.500011
0.333347 0.500031
0.333333 0.499999
Slika 6.7: SFA-graf sustava “nema uzastopnih nula”, prema modelima iz DSA programa
sa sl. 6.6. Visina (dubina) glavnog stabla D = 10 . Vjerojatnosti prijelaza izme†u stanja
po primljenom simbolu oznaµcene su odozgo prema dolje za 6 hranidbi s 105 , 106 , 107 ,
108 , 109 ; 231 2:147 109 rijeµci. Iteracija kreće iz sjemena x0 = 1=3 . Hranidba stabla
zapoµcinje nakon 100 tranzijentnih toµcaka. Za svaku hranidbu generirana su po dva modela,
s visinom morfova L i parametrom navedenima u listi na sl. 6.6. Oba ta modela imaju
jednake vjerojatnosti prijelaza — prikazane na ovoj slici.
Tablica 6.1: Konvergencija prijelaznih vjerojatnosti SFA sustava “nema uzastopnih nula”
za dvije skupine rastućih hranidbi. Svaka skupina ima zasebnu iteraciju zaµcetu u sjemenu
x0 , s 0 tranzijentnih toµcaka. S porastom broja NwD uµcitanih rijeµci vjerojatnosti prije-
laza teµze k teorijskim vrijednostima iz (6.63). Konvergencija je nemonotona. Oscilacije
uzrokuje statistiµcki nekonzistentan generator pseudosluµcajnih brojeva (vidjeti i sl. 6.7).
generator pseudosluµcajnih brojeva ima period od 2Gi = 231 . Taj ćemo zakljuµcak
dodatno potvrditi u odjeljku 9.1, nakon analize rašµclambenih stabala ovog i drugih
sustava zadanih pravilom.
Iz ovog primjera konkretnog modeliranja jasno proizlazi vaµznost uporabe konzi-
stentnog generatora pseudosluµcajnih brojeva s dobrim statistiµckim svojstvima te —
posebice ako se radi o lošijem generatoru — vaµznost poznavanja njegovih osobina
(mana). Budući da ovaj testni sustav ima vrlo kratku duljinu korelacije, uspjeli
smo po vrlo obilnoj hranidbi dobiti odstupanja vjerojatnosti prijelaza u odnosu na
teorijske vrijednosti od svega 1 10 6 .
Na koncu zakljuµcujemo da je za zadanu duljinu rijeµci od D = 10 i za obilne
hranidbe s 108 i više rijeµci, nizom SFA-modela sa slike 6.6 predstavljen saµzetak sve-
obuhvatnog modeliranja NCZ sustava (§6.6.4). U listi modela predstavljen je
tek presjek rezultata dobivenih za razliµcite parametre L i koji daju isti, korektan,
SFA. Iz prethodnog izlaganja proizlazi da se on dobiva i za Lmin = 1, pa sve do
maksimalne dubine Lmax = 8 za regularan morf [prema (6.59)]. Zato je SFA na
slici 6.7 reprezentativan SFA-model MSF A = (T; i0 = 1) , u smislu de…nicije
6.12 i korolara 6.3, koji toµcno opisuje NCZ sustav, neovisno o izboru D i L za
3 D Dmax , 1 L D 2, 24 te za širi izbor vjerojatnosne tolerancije,
5 10 6 < 1=6 . Parametar podsjeća nas da je preciznost ipak konaµcna i
ovisna o broju uµcitanih rijeµci te da bi npr. uz premali ili puno veći D i L mogli
dobiti i drugaµcije, nekorektne i neregularne modele.
Ovako ilustrirani koncept sveobuhvatnog modeliranja pokazat će se nezamjenji-
vim u analizi zaista nepoznatih sustava, kakve ćemo istraµzivati u poglavlju 9.
24
Dmax odre†en je konaµcnim raµcunarskim izvorištima (kapacitetom memorije i vremenom po-
trebnim za statistiµcki relevantnu hranidbu, § 6.6.3, 8.3.3) te konzistentnošću generatora pseudoslu-
µcajnih brojeva za izrazito duge rijeµci (§ 9.1.1).
Poglavlje 7
Informacijsko-teorijski aspekti
modela
171
172 7. Informacijsko-teorijski aspekti modela
loµzene kao mjere strukture dinamiµckih sustava, ta se mjera nameće zbog jedno-
stavnog teorijskog utemeljenja na pozadinskom Markovljevom procesu kojeg SFA
de…nira. Nakon aksiomatskog obrazloµzenja tu i druge sloµzenosti izvest ćemo iz SFA-
modela te ilustrirati na primjerima. U tom se postupku koristi informacijsko-teorijski
raµcun µciji su opseµzniji dijelovi — zajedno s nekoliko osnovnih de…nicija i svojstava
funkcije entropije — izdvojeni u prilog C.
(l 1)
st = st l+2 ; st l+1 ; : : : ; st ; l = 1; 2; : : : , (7.1)
gdje taj slijed unatrag moµze biti i prazan. Ovdje ćemo apsolutni trenutak t posmi-
cati redom na vrijednosti t = l 1; l; l + 1; : : : i promatrati prozor ukupne širine l
znakova, od kojih l 1 simbola µcine slijed unatrag, a posljednji, l-ti znak jest onaj za
kojeg promatramo uvjetnu vjerojatnost. Da pojednostavimo oznake, uvodimo rela-
tivno vrijeme t0 koje se prilikom svakog posmaka prozora resetira, tako da najljeviji
1
U [33] koristi se i naziv gusto´ca entropije (engl. entropy density). U domaćoj se literaturi nalazi
i prijevod omjer entropije.
7. Informacijsko-teorijski aspekti modela 173
t ! t0 ; t0 = 1; 2; : : : ; l ; (7.2)
slt 1 ! sll 11 =s l 1
; st+1 ! sl :
sl 1
= s1 s2 : : : sl 1 ;
Pr (s) = Pr sl 1
; sl = Pr sl 1
Pr sl j sl 1
; 8 sl 1
2 Al 1 ; (7.3)
jednak razvoju (C.13), na temelju kojeg su u prilogu C.2 izvedene sljedeće dvije
metriµcke stope entropije:
1 1 X
h0 ;l = H Pr sl = Pr sl ld Pr sl ; (7.4a)
l l l
s 2Al
X
h00 ;l = Pr sl ld Pr sl j sl 1 : (7.4b)
sl 2Al
Stopa entropije predstavlja brzinu ili uµcestalost kojom sustav odašilje informa-
ciju. Izraµzava se kao prosjeµcna koliµcina informacije po jednom znaku. Jasno je da
ćemo u općenitom sluµcaju umjesto toµcne entropije h za konaµcnu duljinu l-cilindara
moći odrediti tek aproksimacije h0l ili h00l . No, za kratke korelacije izme†u simbola
vremenskog niza veliµcina h00l moµze dati zadovoljavajuće rezultate i uz vrlo mali l .
Ako je niz Markovljev lanac s memorijom prvog reda, tada je dovoljno razmatrati
sljedove unatrag duljine 1, pa već i 2-cilindri daju potpuno toµcnu vrijednost stope
entropije h002 = h (vidjeti primjer NCZ sustava u tab. 7.1).
2
U ovom, teorijsko-informacijskom pristupu, odabrana je standardna matematiµcka indeksacija
koja kreće od 1. Za sliµcan koncept prozora, u 6.5.4 rabljena je raµcunarska indeksacija od 0.
174 7. Informacijsko-teorijski aspekti modela
De…nicija 7.1 Kolmogorovljeva sloµzenost K (s) nekog niza s jednaka je duljini naj-
kra´ceg programa koji na univerzalnom Turingovom stroju kao izlaz proizvodi (ekvi-
valent od) s i zaustavlja stroj, što pišemo kao:
niz s . Ukoliko je niz potpuno stohastiµcan, kao što je npr. bacanje novµcića, tada
tu ne postoji deterministiµcki komponenta i prevladava puka sluµcajnost. Najkraći
program potreban da se na UTM-u toµcno reproducira takav niz znakova bit će sam
taj niz. Budući da su niz i program koji ga reproducira jednake duljine, s porastom
duljine niza, divergirat će i duljina programa. Ovo ćemo joši dodatno objasniti kroz
relaciju izme†u deterministiµcke i statistiµcke sloµzenosti u sljedećem pododjeljku.
Mjera sloµzenosti koja odraµzava “pravu” strukturu sustava, ranije opisanu kao
intrigantnu (zanimljivu), iz koje su iskljuµceni puki sluµcajni procesi.
De…nicija 7.2 Statistiµcka sloµzenost C (s) nekog niza s predstavlja duljinu naj-
kra´ceg programa koji na Bernoulli-Turingovom stroju kao izlaz proizvodi statistiµcki
ekvivalent od s i zaustavlja stroj:
naravi, kao što su npr. Markovljevi lanci, K (s) moµzemo izraµcunati preko stope en-
tropije prema (7.9) [26]. Tada, zbog zahtjeva za deterministiµckom reprodukcijom
niza, K (s) divergira s duljinom tog niza. Jednako vrijedi i za sve druge deter-
ministiµcki, odnosno algoritamski, de…nirane sloµzenosti, kao npr. one temeljene na
Lemepl-Zivovim algoritmima saµzimanja [60, (ii)].
Izraz (7.12b) za statistiµcku sloµzenost u praksi je tako†er koristan tek u jednostav-
nim sluµcajevima, u kojima je — kao u prethodnim primjerima — lako razluµciti izme†u
stohastiµcki i algoritamski uvjetovanih sastavnica sustava. Me†utim, za razliku od
Kolmogorovljeve, statistiµcku ćemo sloµzenost uspješno izraµcunavati za proizvoljne
nizove, izravno iz stohastiµckih odrednica njihovih -strojeva na SFA-razini.
preko bezuvjetnih ili uvjetnih distribucija vjerojatnosti, pišemo je kao h0 ;l; M ili
h00 ;l; M , u skladu s oznakama u (C.16a, b).
U prilogu C.2.2 pokazano je da vrijedi:
X X
h00 ;l; M = Pr si ; j ld Pr si j j = H ( jX) ; (7.13)
j2 si 2A
Slika 6.5 ilustrira graf SFA-modela na kojem µcvorovi prikazuju stanja, a usmje-
rene oznaµcene grane odgovaraju prijelazima izme†u stanja, s oznaµcenim simbolom
po kojem se prijelaz doga†a i vjerojatnošću tog prijelaza.
Nenulelementi iz T de…niraju postojeće prijelaze e, od kojih je sastavljen skup
E grana SFA-grafa,
n o
0 0 s
E = e : e = (q; s; q ) q ! q ; pq ! q0 = Tqq0 > 0 : (7.16)
s s
U skladu s poµcetnom de…nicijom u izrazu (5.15), tu ulaze i one grane za koje će —
zbog nulte vjerojatnosti pq = 0 stanja u stacionarnoj distribuciji — totalna vjero-
jatnost p (q; s; q 0 ) = pq Pr (s; q 0 j q) išµcezavati (vidjeti pododjeljak 7.3.4).
s
Sumiranjem elemenata tenzora Tqq0 po svim simbolima abecede A dobivamo
elemente Tqq0 matrice prijelaza (engl. transition matrix ) T . Elementi daju ukupnu
prijelaznu vjerojatnost izme†u stanja bez obzira na simbol,
X X
Tq q0 = pq!q0 = p (q 0 jq) = p (s; q 0 jq) = s
Tqq0 : (7.17)
s2A s2A
Nadalje, preko broja v svih stanja odnosno broja vr rekurentnih stanja, uvo-
dimo topološku sloµzenost (engl. topological complexity) C0 i topološku sloµzenost
rekurentnih stanja (engl. topological complexity of recurrent states) C0;r [21, 22]:
C0 = ld kQ k = ld v ; (7.21a)
C0;r = ld kQr k = ld vr : (7.21b)
koja daje entropiju prirasta broja razliµcitih nizova sl emitiranih iz -stroja, sa sva-
kim novim znakom, tj. po inkrementaciji duljine niza, l ! l + 1 [21, 22].
Granice za ovu veliµcinu proizlaze iz (7.24):
(
ld a ; za SDFA ;
0 h0; M (7.27)
ld av ; za SNFA .
Prva od njih jest entropija H (X) = H (Prq ), koja daje mjeru neizvjesnosti glede
ishoda stanja sustava, odnosno prosjeµcnu koliµcinu informacije koju dobivamo sazna-
njem o tome u kojem je stanju promatrani sustav.
Druga entropija, H ( ; X 0 jX), prosjeµcna je koliµcina informacije koju daje model
nakon što iz poznatog stanja predstavljenog sluµcajnom varijablom X emitira simbol
i pri tom prije†e u novo stanje, što je predstavljeno zdruµzenim parom doga†aja
( ; X 0 ) . Budući da se radi o ukupnoj takvoj informaciji pri jednoj promjeni stanja,
ovu ćemo veliµcinu nazvati ukupna metriµcka stopa entropije -stroja (modela) [engl.
total metric entropy rate of the -machine (model)] i oznaµciti je s h ; M . Gdje ne
moµze doći do zabune, naziv ćemo skraćivati u stopa entropije modela. Prema drugom
µclanu u (C.22a), uz uporabu oznaka za vjerojatnosti prijelaza prema (7.15), za tu
veliµcinu dobivamo sljedeću eksplicitnu formulu:
h ; M = H ( ; X 0 jX) (7.31)
X XX
= pq pq pq ! q0 ld pq pq ! q0 :
s s
q2Q q 0 2Q s2A
0 h ; M h0; M ; (7.32)
što vrijedi i za odnose svih ostalih metriµckih i topoloških entropija (vidjeti dalje).
Entropiju grana, odnosno ukupnu entropiju modela, moµzemo sada prema (7.30)
raspisati kao sumu entropije stanja modela i stope entropije modela,
Kad se pri svakom prijelazu q ! q 0 emitira samo jedan simbol, uvjetne distribucije
Pr (sj (q; q 0 )), (q; q 0 ) 2 Q Q, degenerirane su, pa vrijedi h (s) = H (Pr (sjq; q 0 )) =
0 . Tada elementi spojne matrice T0 , de…nirani izrazom (7.23), ne mogu premašiti
vrijednost 1 . Postoji li mogućnost ostvarenja istog prijelaza preko dva ili više od
ukupno a mogućih simbola, te su entropije veće od nule,
h ; M = h (T ) + h (s) : (7.45)
7
Tu smo veliµcinu uveli u [45] i tamo za nju koristili engl. naziv symbol-per-transition entropy.
7. Informacijsko-teorijski aspekti modela 189
Ce = C + h ;l; M + IG ; (7.46a)
= C + h (T ) + h (s) : (7.46b)
h000
l = H( 1; 2 ;:::; l ; l+1 ) H( 1; 2 ;:::; l) ; l = 1; 2; : : : : (7.48)
8
U µclanku [45] jednakost (7.45) izvedena je na drugaµciji naµcin — izravno iz raspisa ukupne stope
entropije modela prema (7.31). U nešto elegantnijem obliku taj je izvod naveden i u dodatku
C.3.2, kao primjer informacijsko-teorijskog raµcuna.
190 7. Informacijsko-teorijski aspekti modela
Entropija suviška dade se izraziti i kao uzajamna informacija (engl. mutual in-
formation) [13] koju slijed unatrag daje o slijedu unaprijed i obrnuto. Slijed unatrag
(unaprijed) jest lijevi (desni) dio primljenog niza, povezan s prošlim (budućim) mor-
fom, odnosno sa sadašnjim (budućim) stanjem sustava, pa otuda slijedi da je
E = H (X; X 0 ) = H (X) H (X jX 0 ) (7.50)
= C H (X jX 0 ) :
Dakle, gornja granica entropije suviška jest statistiµcka sloµzenost, E C . E
mjeri povećanje neizvjesnosti glede sadašnjeg stanja sustava ako nestane informacija
sadrµzana u slijedu unatrag. U funkciji stohastiµcnosti sustava E se u grubo ponaša kao
i C — išµcezava za potpunu deterministiµcnost i potpunu stohastiµcnost, dok je izme†u
tih krajnjih sluµcajeva razliµcita od nule (§7.2.2). Za poseban sluµcaj Markovljevih
lanaca u kojima su l-cilindri simbola s 2 A u bijekcijskom odnosu spram internih
stanja q 2 Q sustava, vrijedi sljedeća jednakost [32]:
C = E+lh : (7.51)
Logiµcka dubina (engl. logical depth) još je jedna mjera sloµzenosti koja se djelo-
miµcno podudara sa statistiµckom sloµzenosti i entropijom suviška [4, 5]. Za razliku
od Kolmogorovljeve sloµzenosti (def. 7.1), logiµcka dubina nekog objekta veµze se uz
vrijeme izvršavanja algoritma na UTM-u. Ona se de…nira kao vrijeme potrebno da
algoritam izvede (izraµcuna) objekt iz njegova najkraćeg potpunog opisa na standar-
dnom UTM-u. Ova će sloµzenost, jednako kao i statistiµcka, prepoznati manjak prave
strukture u sluµcajnim procesima i proglasiti ih plitkima (engl. shallow). S druge
strane, procese koji imaju daleku kauzalnu povijest (kao npr. izraµcunavanje zname-
naka broja ) prepoznat će kao duboke (engl. deep). Takvi će procesi zahtijevati dugo
vrijeme izvršavanja, bez obzira na moµzebitnu relativnu kratkoću njihovih programa.
Me†utim, logiµcka dubina vuµce istu manu kao i Kolmogorovljeva sloµzenost — nema
praktiµcnog naµcina za njezin izraµcun.
Za razliku od toga, statistiµcku sloµzenost raµcunamo na temelju izgra†enih -
strojeva. U sljedećem ćemo odjeljku to ilustrirati na nizu primjera. Dodatna raz-
matranja i usporedba mjera sloµzenosti mogu se pronaći npr. u [58, 59].
7. Informacijsko-teorijski aspekti modela 191
Matricu Tr prijelaza rekurentnih stanja mogli smo dobiti kao u (7.57) ili iz T
uklanjanjem redaka i stupaca s indeksima svih tranzijentnih stanja. Tr ima sta-
cionarnu distribuciju jednaku kao i matrica prijelaza T , pst;r = 13 ; 23 , jer obje
matrice imaju isti lijevi svojstveni vektor sa svojstvenom vrijednosti 1 .
Iz izloµzenog slijedi jedinstvena statistiµcka kompleksnost,
Pre = pA pA !0 A ; pA pA !1 C ; : : : ; pC pC !1 C
2 1 1 2 1 2 1
= 0 3
; 0 ;
3 3
1; 3
;
2 3 2
1 1 1
= 0; 0; 3
; ;
3 3
: (7.60)
Stopa entropije simbola po prijelazu prema (7.43) iznosi h (s) = 0, jer uz zadano
poµcetno i konaµcno stanje nema neizvjesnosti glede simbola po kojem se to dogodilo.
Stoga iz (7.45) slijedi ukupna metriµcka stopa entropije modela:
Tablica 7.1: Broj Nl l-blokova i stope entropije za vremenske nizove sustava: (i) “nema
uzastopnih nula”(NCZ), gdje je Nl izraµzen preko Fibonaccijevih brojeva: Nl; NCZ = Fl+2 ;
(ii) Bernoullijev niz (BTS), s maksimalnih Nl = 2l podnizova duljine l . h0;l topološka
je stopa entropije (C.12a), a h0 ;l i h00 ;l metriµcke stope entropije (C.16). Za BTS je
h0 ;l = h00 ;l = h ;l za svaki l 1 . Za NCZ sustav h0l sporo konvergira. Uvjetna stopa
entropije h00l pak postiµze graniµcnu vrijednost već od l = 2 , jer se radi o memoriji 1. reda.
Periodi 2 i 3. Ciklus perioda 2 opisan je regularnim izrazom (01) + (10) koji daje
dva vremenska niza: 0101 : : : ili 1010 : : : . Iz njih se mogu izluµciti samo dva razliµcita
podniza koji će popunjavati dvije staze u parsirajućem stablu. Ukupno postoje tri
stanja koja su sva morfološki (topološki) razliµcita: prvo izrasta iz korijena glavnog
stabla, a druga dva iz njegova lijevog, odnosno desnog, djeteta. SFA je prikazan
na slici 7.2b. Po hvatanju faze (nalaµzenju o kojem se podnizu radi) sustav napušta
prolazno stanje A i deterministiµcki oscilira izme†u ponavljajućih stanja B i C.
Matrica prijelaza T i njezina rekurentna inaµcica Tr iznose:
0 1
0 21 12 !
B C 0 1
T = @ 0 0 1 A; Tr = : (7.66)
1 0
0 1 0
7. Informacijsko-teorijski aspekti modela 197
A1
A 1 2
0| 3
1| 3
1
1 1 1
0 2 1 2 0| 2
1 B A2
A
0|1
1
1|1 1| 2
B C
C D
0 1 1|1
Slika 7.2: Stohastiµcki konaµcni automati (SFA) za cikluse perioda: (a) 1 , (b) 2 , (c) 3 , koji
generiraju nizove: 1111111 : : : , 0101010 : : : , odnosno 0110110 : : : . Prvi SFA prelazi u
automat za emitiranje nula uz zamjenu 1 ! 0 . Drugi SFA jedinstven je za sve period-2
sustave. Treći automat, uz zamjenu 0 ! 1 , 1 ! 0 , emitira niz 0010010 : : : (drugi od
dva ciklusa perioda 3). Sva tri poµcetna ciklusa moµze generirati sustav logistiµcke jednadµzbe:
period 1 za 2 r . 3 , period 2 za 3 r . 3:45 , a period 3 dobiva se npr. uz r 3:83 .
Za njih DSA program reproducira SFA jednake ovima prikazanim na slici.
Topološka stopa entropije h0; M = 0 bit, jer topološka matrica T0 ima glavnu
svojstvenu vrijednost 1 . Nulti iznos stope h0; M govori da broj mogućih razliµcitih
nizova ne raste s njihovom duljinom l , jer od l 2 postoje samo dva strukturalno
razliµcita niza: 010101 : : : i 101010 : : : .
Iz T se dobiva stacionarna distribucija pst = 0; 12 ; 21 , a iz Tr reducirana, uni-
formna inaµcica pst;r = 12 ; 21 . Otuda slijedi i statistiµcka sloµzenost C = 1 bit (rezul-
tati su saµzeti u tab. 7.2). Determiniranost sustava po nalaµzenju faze ogleda se u
degeneriranim uvjetnim distribucijama u retcima matrice Tr , zbog kojih je stopa
entropije h ; M modela, a time i (procijenjena) stopa entropije sustava:
Ce = C + h ; M = C = 1 bit : (7.69)
198 7. Informacijsko-teorijski aspekti modela
A1
1| 3
4
0| 1
4
A1 A2
0| 1 1| 1 0| 1
2 2 3 1| 23
A2 A3 0| 1 A3
2
0| 12 1| 12 0| 12 1| 12 1| 1
2
1|1 1|1 0|1 1|1 1|1 1|1
B C D E B C D E
0|1 0|1
(a) (b)
Slika 7.3: Sustavi perioda n = 4 koji primaju (emitiraju) nizove: (a) 001100110. . . (b)
011101110 : : : Tri su tranzijentna: A1, A2, A3 i µcetiri rekurentna stanja: B, C, D, E.
Lijevi SFA nalazi fazu po prijamu bilo koja dva znaka. Desni SFA nalazi fazu po prijamu
rijeµci wn od n znakova: w1 = 0 , w2 = 10 , w3 = 11 0 , što uz prikazane vjerojatnosti daje
prosjek od 9=4 bita. Ovaj se SFA dobiva u DSA programu odabirom logistiµckog su-
stava s r = 3:5 , uz sjeme x0 2 (0; 1), broj tranzijentnih toµcaka ' 50 , podrazumijevajuće
postavke binarnog instrumenta (xBI = xc = 0:5) i parametre modela: L 3 , D 7 .
B, C, D ili E. Tako nakon prva dva znaka 00 sustav prelazi u rekurentno stanje B,
nakon kojeg slijede sami deterministiµcki prijelazi. Rezultantni je niz 0011 0011 : : : .
Ako su prva dva znaka 01 sustav prelazi u rekurentno stanje C, pa se dobiva niz
0110 0110 : : : . Jednako slijede i prijelazi u rekurentna stanja D i E.
Iz tranzijentnih stanja moµze se ući u bilo koje od rekurentnih. Za njihove uvjetne
vjerojatnosti, a time i za vjerojatnost pojave bilo kojeg od µcetiri niza, vrijedi:
1
Pr (BjA1) = Pr (CjA1) = Pr (DjA1) = Pr (EjA1) = : (7.70)
4
Prosjeµcan broj hmn;ph i primljenih simbola, ili broj prijelaza potrebnih da sustav
perioda n uhvati fazu i prije†e u rekurentno stanje, ovdje je toµcno 2 :
1
hmn;ph i = 4 2 =2: (7.71)
4
ne = kEk = 2 (n 1) + n = 3n 2: (7.74)
vr = ne;r = n ; ne = 3n 2; (7.75a)
e
C0;r = C0;r = ld n ; C0e = ld (3n 2) ; (7.75b)
C = ld n ; C e = C = ld n ; (7.75c)
h ; M = h (T ) + h (s) = 0 . (7.75d)
e
Sloµzenosti C0;r i C0e odraµzavaju ono što smo lako mogli primijetiti na konkret-
nim primjerima periodiµcnih sustava, posebice onima većeg perioda — strukturalna
sloµzenost periodiµcnih sustava ogleda se u tranzijentnom dijelu modela, u kojem se
uspostavlja faza. To moµzemo išµcitati iz razlike ukupne topološke sloµzenosti C0e grana
e
i topološke sloµzenosti C0;r rekurentnih grana. Za njih vrijedi C0e C0;r e
, gdje znak
jednakosti nastupa ako i samo ako je n = 1 .
Generacija periodiµcnih sustava s pomoću logistiµckog preslikavanja. Pret-
hodne primjere SFA-modela periodiµcnih sustava, ukljuµcujući i model sa slike 7.4,
reproducira DSA program uz izbor sustava logistiµckog preslikavanja s odgovara-
jućim cikliµcnim (periodiµcnim) atraktorima (§1.1.1). Iznose kontrolnog parametra r
za neke od periodiµcnih toµcaka moµzemo išµcitati izravno sa slike 2.2, a preciznije vrijed-
nosti poµcetaka njihovih podruµcja mogu se pronaći npr. u [80]. Tako se za r = 3:83
dobiva sustav perioda 3 (sl. 7.2c).12 Taj je SFA-model potpuno stabilan već po pro-
puštanju nekoliko desetaka tranzijentnih toµcaka, za većinu izbora sjemena orbite, a
nakon njih stotinjak stabilan je za sva sjemena koja smo testirali.13 Budući da se
12
Povećano podruµcje orbitnog dijagrama u okolini ove vrijednosti r dano je na sl. H.6 .
13
Ako za 1D dinamiµcki sustav postoji period 3 , tada po teoremu Sarkovskog moraju postojati svi
periodi [29]. No od njih stabilan moµze biti samo jedan. U ovom su sluµcaju ostali periodi zatomljeni
u kratkom tranzijentnom dijelu orbite, koja brzo konvergira u super-stabilni period-3 atraktor.
202 7. Informacijsko-teorijski aspekti modela
1
0| 25 1| 35
0| 23
2 3
1|1 1| 13
1| 12
4 5
0| 1 0|1
2
1|1
6 7 (a)
1|1 1|1
8 9 Legenda stanja
0|1 Niz ID# (b)
A1
0| 25 1| 35
0| 23
A2 A3
1|1
A4 1| 1 (b)
3
0| 12 1| 1
2
B
0| 12 1| 12 0| 12 1| 12 1| 12 1| 12
A A 1| 12 0| 12 D
( 0.49980 ≈ ½ ) ( 0.50020 ≈ ½ ) 0| 12 0| 12
C
(a) (b)
Slika 7.5: SFA za Bernoullijev niz. Oba modela korektno simuliraju Bernoullijev niz je-
dinica i nula, opisan pravilnim izrazom (0 j 12 +1 j 21 ) . (a) Minimalan model, reproduciran
DSA programom uz D = 10 , L = 5 , = 2:5 10 4 , po hranidbi s ' 8:4 106 rijeµci.
Odstupanja od idealnih vrijednosti su (tek) u µcetvrtoj decimali. Parametar mora biti
veći od tih odstupanja, u protivnom će za podmorfove biti prona†ena -nejednakost. (b)
Neminimalan model koji toµcno reproducira sustav ali precjenjuje njegovu kompleksnost.
FM algoritam (alg. 6.2) garantira minimalnost modela, pa ne daje takve rezultate.
Zadnji je primjer ovog poglavlja Bernoullijev (vremenski) niz [engl. Bernoulli (time)
series, BTS ]. On predstavlja elementarni stohastiµcki sustav koji sluµcajno, s jedna-
kom vjerojatnošću, generira simbole 0 i 1 . Njega moµzemo simulirati nasumiµcnim
bacanjem novµci´ca (engl. coin ‡ip) koji s jednakom vjerojatnošću pada na glavu i na
pismo. Regularan izraz ovog sustava jest
1 1
BT S = 0j + 1j = (0 + 1) : (7.76)
2 2
14
Notacija s eksplicitno naznaµcenim vjerojatnostima uvedena je na kraju pododjeljka 5.4.3. U
6.5.4 pretpostavili smo da znak + oznaµcava jednaku vjerojatnost izbora simbola.
7. Informacijsko-teorijski aspekti modela 205
0 1 1 1
T= T11 = ; T11 = : (7.77)
2 2
Programska implementacija
Nakon što smo u prethodna dva poglavlja izloµzili teoriju -strojeva, predstavili al-
goritme za njihovu rekonstrukciju i iznijeli informacijsko-teorijske pokazatelje do-
bivenih modela, ovdje prelazimo u domenu raµcunarskih znanosti i primijenjenog
raµcunarstva. Izloµzit ćemo programsku implementaciju našeg izvornog, DSA pro-
grama, koji korištenjem navedenih teorijskih rješenja ostvaruje konkretan zadatak
ovog rada — modeliranje jednodimenzionalnih dinamiµckih sustava iz primljenog vre-
menskog niza. DSA program cjelovit je alat s razvijenim gra…µckim suµceljem, koji
omogućuje generaciju vremenskog niza odabranog sustava i njegovu uµcinkovitu i in-
teraktivnu analizu. On nalazi SFA-modele promatranog sustava uporabom izvornih
FM i TFM algoritama (uvedenih u odjeljku 6.6). Prema nama dostupnim navodima
to je ujedno i jedini program za modeliranje iz vremenskog niza koji je koncipiran
kao sveobuhvatna radna okolina s korisniµcki prijateljskim suµceljem.1
Poglavlje zapoµcinje odjeljkom u kojem obrazlaµzemo opće odrednice programa i
njegova razvoja. Potom predstavljamo izvorne klase i s pomoću njih ostvarene po-
datkovne strukture koje µcine temelj implementacije DSA programa. Detaljno ćemo
proanalizirati dizajn i prostorno-vremensku sloµzenost kljuµcnih algoritama programa,
od kojih neki mogu imati i širu primjenu. Velik dio DSA programa predstavljaju
programski vrlo zahtjevna gra…µcka suµcelja, na koja ćemo se moći tek ukratko osvr-
nuti. Uvid u njihovu, kao i u cjelokupnu implementaciju DSA programa, moµze se
dobiti pregledom svih zaglavnih i izvornih datoteka programskog koda, u popratnoj
dokumentaciji ovog rada na priloµzenom kompaktnom disku.
1
U § 6.6.6 već smo diskutirali oskudnost dostupnog opisa Crutch…eld-Youngovog algoritma. O
njegovoj programskoj implementaciji tako†er nam nisu dostupni nikakvi podaci. CSSR algoritam,
koji je najmanje deset godina mla†i, implementiran je u C++ jeziku kao konzolna aplikacija [60](i).
Stoga pretpostavljamo da je na sliµcan naµcin izveden i prvospomenuti, CY algoritam.
207
208 8. Programska implementacija
2
Za poµcetnu verziju programa, iz 1999. godine, korišten je Visual C++ 5 i Developer Studio 97.
Kasnije su korišteni Visual C++ 6, 2005 i 2010, uz pripadne Visual Studio razvojne okoline.
3
Jezik C++ tek odnedavna utire svoj put u širem podruµcju raµcunske mehanike [69]. Tradici-
onalni je izbor ovog podruµcja bio jezik FORTRAN. Od 1990-tih standard postaje i matematiµcka
razvojna okolina MATLAB, sa svojim programskim jezikom i mnogim pogodnostima za prezenta-
ciju i vizualizaciju podataka. Ta i druga RAD programska okruµzenja (od engl. Rapid Application
Development), znanstvenicima omogućuju neposredniji i brµzi rad na konkretnom problemu, bez
potrebe implementacije zasebnog programa, njegovih modula, klasa i korisniµckih suµcelja.
8. Programska implementacija 209
koja je vaµzan zadatak ovog rada. Bez ostvarenja mogućnosti odabira krajnjih para-
metara koje dopušta logika cijelog sustava, pojedini dijelovi programa i algoritmi u
njima ne bi mogli biti testirani u potpunosti.
Iteracija i
bin. izmjera
1D dinamičkih 0
sustava
.243 .739 .812 .324 .698 ... ... .173 .796 .173 .912
0 1 1 0 1 ... ... 0 1 0 1
Vanjski t
vremenski niz,
+ bin. kodiranje I
Glavno
II
binarno
stablo
visine D Morfovi:
- oblikovno i SFA(D,L,δ)
D t δ - vjerojat. izvješće
jedinstvena
podstabla ε - stroj
visine L ≤ D
Slika 8.1: Tri glavna modula programa DSA: (0) za generaciju binarnog niza iteracijom i
binarnom izmjerom 1D dinamiµckih sustava (ili na temelju vanjskog niza — zasad neostva-
reno); (I) za kreaciju i hranidbu binarnog stabla visine D ; (II) za pronalaµzenje morfova
visine L D (L < D ) uz vjerojatnosni parametar te kreiranje SFA(D; L; )-modela.
fova unutar glavnog (rašµclambenog) stabla s pomoću FM ili TFM algoritma (§6.6).
Na†eni morfovi (oblikovno i vjerojatnosno jedinstvena podstabla koja predstavljaju
kauzalna stanja) i njihove me†usobne vjerojatnosti prijelaza de…niraju SFA-model
sustava. Taj je model prikazan u SFA-izvješću, zajedno s dodatnim korisnim po-
dacima (sl. 6.6). U radnom dijaloškom okviru Morphs/Show and Find (sl. 8.7) moµze
se vidjeti poloµzaj morfova unutar glavnog stabla, pregledavati µcvorove i prolaziti
kroz one koji su unutar tzv. prolaznog stabla (§8.6.1), prouµcavati statistiku morfova
te išµcitati vremena izvršavanja FM i TFM algoritama. Izlazni rezultat ovog modula
spomenuto je izvješće o SFA-modelu s parametrima (D; L; ), dobivenim za zadano
rašµclambeno stablo. Time je na†en temeljni -stroj sustava (§6.2.7).
Tablica 8.1: Statistiµcki podaci o programu Dynamical Systems Automata (DSA). Kako se
program razvija i dobiva nove funkcionalne cjeline, tako se navedene vrijednosti mijenjaju
(uglavnom rastu). Binarni pre…ksi: Ki = 210 , Mi = 220 (prema IEC preporuci), B = bajt.
ovog programa, pa moµzemo reći da je veliki trud koji je uloµzen u realizaciju dobrog
i funkcionalnog gra…µckog suµcelja na koncu itekako opravdan.
Nakon prethodnog globalnog pogleda na DSA program, u sljedećim odjeljcima
ovog poglavlja podastiremo kljuµcne podatkovne strukture i algoritme iz programske
implementacije navedena tri modula. U saµzetijoj smo verziji to objavili u [47].
Slika 8.2: Hijerarhija klasa dinamiµckih sustava. Apstraktne, bazne klase, podvuµcene su.
To su izvorna klasa CDynSys1D, u kojoj je ostvarena zajedniµcka funkcionalnost svih klasa,
te tri izvedene klase koje ostvaruju posebnosti podklasa. Nove konkretne klase mogu se
jednostavno dodavati uz prera†ivanje samo funkcije skupne iteracije.
Ispis 8.1 Funkcije temeljne klase CDynSys1D koje se rabe u skupnoj (grupnoj) ite-
raciji dinamiµckih sustava.
// DECLARATIONS
// Iteration initialization:
InitIteration(double x0);
8
Termin ispis, skraćenicu od ispis programskog koda, koristit ćemo za doslovni ili malo promije-
njeni dio ili cjelinu programskog koda, najµcešće pisan u nekom konkretnom programskom jeziku,
u našem sluµcaju u jeziku C++. Analogni engl. naziv je listing, od program code listing.
8. Programska implementacija 217
Ispis 8.2 Jednostruka skupna iteracija (bilo prva, bilo kasnija), koja ukljuµcuje bi-
narnu izmjeru. Funkcija ilustrira mjerenje vremena izvršavanja s pomo´cu objekta
CHRTimer klase. Lokalne varijable koje pohranjuju izmjereno vrijeme i broj iteracija
obnavljaju se uporabom UpdateFeedTmAndNStrFed1 funkcije.
UINT CDynSys1D::DoABatchIterInclBI(CBinInstrument* pBI,
bool bFrmLastPnt, UINT uStrl)
{
UINT uNItr;
CHRTimer hrTimer; // Object of class CHRTimer, for time measurement.
218 8. Programska implementacija
u lokalnu kazaljku p1. Pošto su u for petlji izraµcunane sve toµcke, poziva se glavna
funkcija koja obavlja zajedniµcke poslove, kao što su biljeµzenje ukupnog broja do
sada iteriranih toµcaka, brojanje obavljenih skupnih iteracija i odra†ivanje potvrdnih
(engl. assert) funkcija u ispravljaµckoj (engl. debug) verziji programa.
xn 2 [0; 1) ; n = 0; 1; 2; : : : : (8.1)
Otvorenu gornju granicu xn < 1 postiµzemo tako da normiranje brojeva koje vraća
funkcija rand ne obavljamo izravno njezinim maksimalnim rezultatom RAND_MAX ,
već brojem dNorm koji je za (malu) konstantu cdSmall1 = 1.0e-10 veći od njega
(vidjeti linije 11 i 12 u ispisu 8.4).
Prije poziva funkcije rand, s pomoću funkcije srand inicijalizira se sjemena
toµcka. To je organizirano u preradi µclanske funkcije InitIteration , u nadklasi
CDynSys1D_RlRnd, pošto se s pomoću funkcije CDynSys1D::InitIteration odradi
inicijalizacija iteracije zajedniµcka svim klasama.
Ostatak algoritma moµze se pratiti iz priloµzenog programskog koda. Uoµcimo kako
algoritam osigurava konzistenciju slijednih toµcaka bez suvišnog pozivanja funkcije
generatora sluµcajnih brojeva, tj. kako se iz njega dobivene vrijednosti uvijek na
koncu iskoriste. Propuštanje uporabe već generiranih sluµcajnih brojeva po bilo kojem
kriteriju pogoršalo bi njihovu distribuciju, koja je ionako daleko od idealne. Uvjet
za ostanak u while petlji nije postavljen za zadnju toµcku, već za predzadnju, jer se
prema pravilu sustava u svakoj iteraciji moµze dodati jedan ili dva znaka. Stoga se
na kraju provjerava treba li ili ne popuniti još i tu završnu toµcku.
Ispis 8.4 Funkcija iteracije za sustav “nema uzastopnih nula” (skra´cena inaµcica).
Implementacija slijedi regularan izraz sustava, (0 + e) (1 + 10) : generiraj nula ili
ništa, a potom niz u kojem se pojavljuje ili 1 ili 10.
8. Programska implementacija 221
(
xb
x; 0 x < pb ;
x0 = pb
1 xb
(8.3a)
xb + 1 pb
(x pb ) ; p b x 1:
(
pb
xb
x0 ; 0 x0 < xb ;
x = 1 pb
(8.3b)
pb + 1 xb
(x0 xb ) ; x b x0 1 :
Dokaz. (a) x je i.i.d. sluµcajna varijabla iz jediniµcnog intervala (dobivena npr.
iz generatora sluµcajnih brojeva i normirana na jedinicu, pa je Pr ( x 2 [0; pb ) ) = pb .
Dakle, vjerojatnost da se pojavi broj x iz intervala 0 x < pb upravo je pb . Da
dobijemo vjerojatnosnu pristranost pb po de…niciji 8.1, taj se interval duljine pb
mora normirati na duljinu xb lijevog podintervala [0; xb ) . Zato svaki broj x prenor-
maliziramo dijeljenjem s omjerom pb =xb , odakle slijedi gornja transformacija. Za
donji interval i.i.d. varijable x vrijedi: Pr ( x 2 [pb ; 1] ) = 1 pb . Za x iz tog intervala
µzelimo postići da to budu brojevi koji popunjavaju desni podintervalu [xb ; 1] veliµcine
1 xb , koji poµcinje iz toµcke xb . Otuda slijedi donja transformacija u (8.3a).
(b) Obrnuta transformacija slijedi lakim raµcunom iz (a), jednako kao i pripadni
uvjeti na x0 . Iz ove transformacije sada lako provjeravamo da vaµze poµcetni uvjeti
leme i uvjet normiranosti vjerojatnosne mjere:
pb
Pr (x 2 [0; xb )) = xb = x0b = x0b = pb ; (8.4a)
xb
Pr (x 2 [xb ; 1]) = 1 xb = 1 pb ; (8.4b)
Pr (x 2 [0; 1]) = pb + 1 pb = 1 : (8.4c)
Ovdje broj lokalnih i pomoćnih varijabli NLoc:V ar: moµze biti zanemaren. Zahtjev
NCB D traµzi kruµzni spremnik koji je relativno velik, ali neovisan o broju iteriranih
toµcaka. Na primjer, uz NCB = 1 Mi elemenata po spremniku, za oba će se utrošiti
oko 9 MiB memorije, što je za današnja raµcunala malen iznos.
prethodnoj tablici za NCB ' 1000, pa izraz (8.14a) moµzemo napisati i kao
Slika 8.3: Hijerarhija klasa binarnih -stabala izvedenih iz temeljne klase CABinTree .
CBinTreeNode i CTreeStatistics.
Prva je od njih kljuµcna klasa za realizaciju µcvora stabla, kao objekta na kojeg
ćemo se stalno pozivati prilikom rada sa stablima.
}
p++;
} // The end of the for loop.
Nw ' kF F 1 l
b : (8.18)
Nw ' kF F 1 D
b (8.19)
1 1
TT F; abn (b; D; ; kF F ) kF F ts D bD = kF F ts D 2D ld b : (8.20)
1
TT F; abn (b; D; ; kF F ) = O kF F D 2D ld b ; (8.21a)
D ld b
TT F; abn (b; D) = O D 2 : (8.21b)
U najbrµzem sluµcaju, koji odgovara konstantnoj orbiti sustava, odnosno lijevo ili
desno degeneriranom -stablu, vrijedi b = 1. Najsporiji je sluµcaj punog stabla, s
b = 2. Stoga je vremenska sloµzenost obilne hranidbe u rasponu:
1 1
kF F ts D TT F; abn (D) kF F ts D 2D ; (8.22a)
O (D) TT F; abn (D) O D 2D : (8.22b)
A.5). Tamo je utvr†eno da ove dvije vrste srednjih stabala bolje opisuju prosjeµcnu
strukturu -stabala od aritmetiµcki srednjih stabala. Zato će i geometrijska sredina
u izrazima (8.23) bolje opisivati prosjeµcnu vremensku sloµzenost algoritma hranidbe.
bD+1 bD+1
ST F (b; D) sN d a sN d ; (8.24a)
b 1 b 1
( D+1
min bD+1 ; (b b1)(D+1) 1; 1 < b < 2;
Uz uvjet:
2D+1 1; b=2:
b D ld b b
ST F (b; D) = O 2 = O 2ld b0 +D ld b (8.24b)
b0
= O 2D ld b :
D E
hST F (D)iAvr= bM = sN d N^N ds (D) sN d 2EAvr= bM (D) (8.25d)
Avr= bM
O 2EAvr= bM (D) :
=
8
>
< D=2 + 1 ; Avr = D=2 ;
1
EAvr (D) = (D+ ld D + 1) ; Avr = Gm ; (8.25e)
>
:
2
D; Avr = Ar :
(
D ld (3=2) + ld 3 ; bM = 3=2 ;
EbM (D) = (8.25f)
(D + 2) ld ; bM = :
Tablica 8.3 daje rezultate mjerenja vremena za tri hranidbe dva dinamiµcka su-
stava: logistiµckog preslikavanja u kaotiµcnom reµzimu i sustava “nema uzastopnih
nula”, s punim, odnosno zlatno srednjim, glavnim stablom (§A.3.5, A.4.2).
Mjerenje vremena zasniva se na funkciji QueryPerformanceCounter. Ona broji
periode sata procesora, pa postiµze toµcnost reda veliµcine ispod 10 9 s. Kao posve
sigurnu procjenu moµzemo uzeti da je pogreška naših mjerenja manja od 10ns.13
Prije mjerenja iskljuµceni su — koliko je to bilo moguće — nepotrebni korisniµcki i
sustavski procesi višezadaćnog operacijskog sustava da se njima uzrokovano uspore-
nje rada DSA programa smanji na najmanju moguću mjeru. Rezultati s velikim po-
zitivnim odstupanjima odbaµceni su, jer se kod njih oµcito radilo o zastojima u izvrša-
vanju TF algoritma zbog obavljanja drugih, pozadinskih procesa. No i pored toga,
za funkcije koje dinamiµcki alociraju memoriju ili pristupaju memorijskoj hrpi — kao
što to µcini i osnovna funkcija TF algoritma FeedWithABinString — opaµzaju se ‡uk-
tuacije u vremenu njihova izvršavanja µcak i do 10% .
Usprkos tome, rezultati mjerenja vrlo su informativni. Desna kolona za svaku
od hranidbi daje vrijeme izvo†enja po rijeµci. Za iteraciju i binarnu izmjeru već
13
Ova mjerenja obavljena su na raµcunalu s Pentium 4 procesorom radnog takta od 2:6 GHz, s
glavnom memorijom od 1GiB i s Windows XP (SP3) operacijskim sustavom.
240 8. Programska implementacija
FunctionThruTrvPreOrdRR(BTrNd-ref Nd)
Function(Nd); // Placement prior recursive calls.
if Nd.LChild != NULL and Nd not a leaf then
FunctionThruTrvPreOrdRR(BTrNd.LChild);
if Nd.RChild != NULL and Nd not a leaf then
FunctionThruTrvPreOrdRR(BTrNd.RChild);
FunctionThruTrvInOrdRR(BTrNd-ref Nd)
if Nd.LChild != NULL and Nd not a leaf then
FunctionThruTrvInOrdRR(BTrNd.LChild);
Function(Nd); // Placement between the recursive calls.
if Nd.RChild != NULL and Nd not a leaf then
FunctionThruTrvInOrdRR(BTrNd.RChild);
FunctionThruTrvPostOrdRR(BTrNd-ref Nd)
if Nd.LChild != NULL and Nd not a leaf then
FunctionThruTrvPostOrdRR(BTrNd.LChild);
if Nd.RChild != NULL and Nd not a leaf then
FunctionThruTrvPostOrdRR(BTrNd.RChild);
Function(Nd); // Placement after the recursive calls.
prima referencu na trenutni µcvor pNdC i vraća referencu na sljedeći µcvor kojeg po-
sjećuje i na kojem se obavlja funkcija Function. Tako†er, preko argumenta bDone,
pozvanog po navodu (engl. call by reference), ona javlja i status prolaska. Ako je
prolazak okonµcan (bDone == true), iteracija se prekida.
Algoritam 8.2 [NR] Pseudokod za izvo†enje funkcije Function na µcvorovima bi-
narnog -(pod)stabla u prijerednom, me†urednom i poslijerednom prolasku, ostvaren
s pomo´cu nerekurzivnih funkcija (oznaµcenih s NR).
// Auxiliary functions:
BTrNd-ref InitSomeOrdTrvNR( EpsBTr-ref Tr);
BTrNd-ref SomeOrdTrvNR(EpsBTr, bool-ref bDone);
// TrvSomeOrd = TrvPreOrd, TrvInOrd, TrvPostOrd.
FunctionThruSomeOrdTrvNR(EpsBTr-ref Tr)
bDone is false;
NdC = InitSomeOrdTrvNR(Tr);
while bDone is false
Function(NdC);
NdC = SomeOrdTrvNR(NdC, bDone);
// Watch the order in the logical AND! The level must be checked
// first in order not to hit the root node which has no parents.
// This function is correct for both the eps-trees and eps-
// subtrees. Namely, we do not check the validity of the pointer
// pNdR to parent--as is done for the general trees, where the
// root is recognized by having pNdR = NULL. Instead, the node
// relative level is checked. If 0, the node is root.
// To adapt this function for the general binary trees, replace:
// Level(pNd) > 0 ----> pNdR != NULL .
if( Level(pNd) > 0 && (pNdR = pNd->GetpParent()->GetpRChild())
!= pNd )
return pNdR; // *pND is an LChild, return the pointer to
// its right sibling, which can also be NULL.
else // The current node is the (sub)tree root or
return NULL; // the RChild, so there is no right sibling.
}
ili pak u korijenu. Stoga provjerimo da nismo u korijenu (Level(pNdC*) > 0), te ako
to vrijedi izvuµcemo se prema korijenu. Inaµce, tj. ako smo postupkom izvlaµcenja od
listova došli u korijen, kraj algoritma.
Jošmoramo promotriti sluµcaj kad funkcija GetpRSibling vraća valjanu kazaljku.
Tada posjećujemo desnog brata trenutnog µcvora. On nije mogao biti posjećen
ranije, jer na putu dolje desna djeca nisu bila posjećena ako je postojalo lijevo
dijete. A ako lijevo dijete nije postojalo, tada se radi o desnom µcvoru koji kod
binarnih stabala ne moµze imati (daljnjeg) desnog brata.
Sada je jasan prijašnji zakljuµcak za sluµcaj da je funkcija GetpRSibling vratila
kazaljku NULL. Naime, µcak i za sluµcaj da desno dijete postoji, njega ne bismo smjeli
posjetiti jer je ono posjećeno na putu prema dolje. Dakle, u tom sluµcaju nastavljamo
izvlaµcenje prema gore sve dok ne do†emo do korijena.
Sumarno, gornji prolazni algoritam: (i) na putu dolje posjećuje najprije korijen,
potom svako lijevo dijete te svu desnu “jediniµcnu djecu”(koja nemaju lijevog brata).
(ii) Na putu prema gore posjećuju se sva desna djeca koja imaju lijevog brata. Zato
što se binarno stablo sastoji od korijena i µcvorova koji su bilo lijeva ili desna djeca, iz
gornjeg razmatranja slijedi da smo posjetili sve µcvorove. Tako†er, zato što je presjek
posjeta µcvorovima na putu dolje i na putu gore prazan skup, svaki smo µcvor posjetili
samo jednom. Time je dokazana korektnost ovog algoritma.
Implementacija ovog i druga dva originalna nerekurzivna algoritma — za me†u-
redni i za poslijeredni prolaz — uvedena je u [44]. Ovdje je cilj bio njihova forma-
lizacija kroz algoritme 8.2 i 8.3 te provo†enje gornjeg dokaza korektnosti (skraćeno
iznijeto u [46]). Funkcije InitInOrd i TravrsInOrd , za nerekurzivni me†uredni pro-
lazak, te funkcije InitPostOrd i TravrsPostOrd , za nerekurzivni poslijeredni prola-
zak, dane su u prilogu L.3 (ispisi L.8 i L.9). One su tako†er detaljno provjerene i
dokazane, a to se moµze uµciniti i testiranjem njihova rada u DSA programu.17
^N ds
ST r N ^b;l = O N
sN d N ^N ds : (8.26)
^N ds
SRR N ^N ds + sStcF r D :
sN d N (8.27)
Kod nerekurzivnog rješenja imat ćemo po iteraciji prolaska samo jedan poziv i
jedan povratak iz funkcije, pa će uvijek biti rabljen prostor za samo jedan pozivni
stoµzni okvir,
SN R N ^N ds sN d N^N ds + sStcF r : (8.28)
Sada, na isti naµcin kao i kod analize prostorne sloµzenosti u 8.3.3, broj µcvorova
-stabla karakteriziranog prosjeµcnim brojem djece b i visinom D odre†ujemo iz for-
mule (A.29d) uz a = 1 (lema A.9) te ga uvrštavamo u gornja dva izraza. Dobiva se
sljedeća skupna formula:
(
bD+1 D ; RR (rekur. alg.) ,
SRs (b; D) sN d + sStcF r Rs ; Rs = (8.29)
b 1 1 ; NR (nerek. alg.) ;
uz uvjet iz (8.24a) .
b b D ld b b
SRs (b; D) = O bD =O 2 = O 2ld b0 +D ld b (8.30)
b 1 b0
= O 2D ld b :
D E
hSRs (D)iAvr= bM sN d N^N ds (D) + sStcF r d sN d 2EAvr= bM (D)
Avr= bM
Otuda slijedi
Sliµcno kao i kod analize prostorne sloµzenosti, Rt koristimo i kao oznaku dodatnog
vremenskog parametra i kao indeks rekurzivnih odnosno nerekurzivnih algoritama.
Omjer vremenske sloµzenosti za nerekurzivne i rekurzivne algoritme iznosi
TN R tN R;tot tT rvN R
= =1+ : (8.38)
TRR tRR;tot 2tCll + tF n
Zakljuµcak ove teorijske analize jest da su nerekurzivni algoritmi sporiji zbog
dodatnog vremena tT rvN R koje funkcija nerekurzivnog prolaska troši na nalaµzenje
8. Programska implementacija 253
bD+1
TRt (b; D) Rt ; uz uvjet iz (8.24a) ; (8.39a)
b 1
b b
TRt (b; D) = O 0 bD = O 0 2D ld b (8.39b)
b b
b
= O 2ld b0 +D ld b = O 2D ld b :
D E
hTRt (D)iAvr= bM Rt ^
NN ds (D) Rt 2EAvr= bM (D) (8.40d)
Avr= bM
= O 2EAvr= bM (D) ;
Slika 8.4: Izgled poruke (engl. message box ) za prikaz vremena izvršavanja nerekurzivnih i
rekurzivnih inaµcica funkcija za tri vrste prolaska i tri radnje — opisane u legendi u donjem
dijelu. Rezultati rada svih funkcija istovjetni su . Da nisu, u poruci bi se pojavilo upo-
zorenje. Na dnu je okno (engl. pane) s informacijama o sustavu, broju iteriranih toµcaka i
visini stabla (van okvira slike podatak je o hranidbi: u stablo je uµcitano 20 106 rijeµci).
Prozor koji ispisuje vremena izvršavanja 18 funkcija (tri radnje, obavljene kroz
tri vrste prolazaka, ostvarena nerekurzivno i rekurzivno) prikazan je na slici 8.4.
Za usporedbu funkcija koje isti prolazak ostvaruju u rekurzivnoj, odnosno u ne-
rekurzivnoj izvedbi, napravit ćemo statistiµcku analizu vremena izvršavanja funkcije
CalcTreeStatPreOrdRR (ispis 8.9), s analognom nerekurzivnom funkcijom CalcTree-
StatPreOrdNR (kreiranom prema algoritmu 8.2). Iz imena ovih funkcija jasno je
da obje izraµcunavaju statistiku stabla u prijerednom prolasku. Na slici 8.4 to su
256 8. Programska implementacija
donja i gornja inaµcica funkcije (radnje) f3 u prvoj koloni. Dva standardna testna di-
namiµcka sustava, “nema uzastopnih nula”(NCZ) i Bernoullijev vremenski niz (BTS),
nahranili su svoja stabla visine 20, svaki s 20 106 rijeµci. Prvi je sustav oformio
relativno rijetko, a drugi puno, stablo. Jednostavnim odabirom novog mjerenja — u
prozoru poruke sa slike 8.4 — dobiva se novi skup rezultata. Iz višestrukih mjerenja
napravljena je statistika tih vremena, koja je izloµzena u tablici 8.4.
Vrijeme t izvršavanja algoritma odre†eno je na temelju 10 stabilnih i konzi-
stentnih mjerenja bez većih odstupanja. Problematika mjerenja vremena na višeza-
daćnim operacijskim sustavima već je diskutirana u 8.3.4. Tamo smo zakljuµcili da
naša metoda mjerenja ima toµcnost reda veliµcine jedne periode takta procesora, pa
je jasno da je ova standardna devijacija, iako nevelika, uzrokovana upravo utjeca-
jem izvršavanja pozadinskih procesa pod kontrolom operacijskog sustava. S druge
strane, sve nama zanimljive promjene znatno su veće od standardne devijacije, pa
zato iz mjerenja moµzemo izvlaµciti pouzdane zakljuµcke.
Prva vaµzna µcinjenica — moµzda iznena†ujuća za µcitatelja — jest da su rekurzivni
algoritmi zaista brµzi. Nerekurzivni algoritmi zaostaju za njima u rasponu od 12%
do 14% (što je vrlo signi…kantan iznos s obzirom na standardnu devijaciju mjerenja
od oko 1% i manje). Time se potvr†uje teorijski izvod koji za rekurzivne algoritme
daje manju vremensku konstantu nego za nerekurzivne (8.35, 8.36, 8.38). Dodatna
8. Programska implementacija 257
podstabla — binaran niz koji de…nira korijen podstabla kao µcvor unutar glavnog
stabla (vidjeti ispis L.6). Po stvaranju podstabla standardno se — prebrojavanjem
njegovih lijevih i desnih µcvorova te lijevih i desnih listova — odmah odre†uje i njegova
statistika. Ona daje globalan uvid u oblik i popunjenost podstabala te će kao takva
posluµziti i prilikom njihove usporedbe.
diskriminirajući, ne i a…rmirajući kriterij, jer će uz jednake statistike (isti broj lijevih
i desnih µcvorova i listova) stabla biti morfološki razliµcita ako su im µcvorovi drugaµcije
raspore†eni. Ako statistike jesu jednake, provjera morfoloških i vjerojatnosnih raz-
liµcitosti µcvorova stabala obavlja se u narednim koracima CT algoritma.
Usporedba statistika broja µcvorova moµze uštedjeti mnogo vremena prilikom uspo-
redbe velikih, oblikovno razliµcitih podstabala — kakva nalazimo unutar glavnog sta-
bla bogate strukture. Suprotan je sluµcaj punog glavnog stabla, s maksimalnim
brojem µcvorova i listova, kojemu su i sva podstabla puna. Puna podstabla jednake
visine imaju iste statistike, pa njih treba razluµcivati na temelju vjerojatnosnih raz-
lika (vidjeti tablicu 8.8). Tako†er, valja primijetiti da se spomenuta ušteda vremena
na komparaciji podstabala ne ostvaruje besplatno. Za prikupljanje statistike troši se
vrijeme proporcionalno broju µcvorova podstabla (§8.4.5, tab. 8.4). Ušteda ipak mo-
µze biti znatna, jer se kod nalaµzenja morfova za svako novo podstablo koje je kandidat
za morfa statistika tvori samo jednom, dok je broj potrebnih usporedbi podstabala
jednak broju prethodno prona†enih morfova (za detalje vidjeti §8.7).
Dakle, ako je ustanovljeno da je statistika podstabala identiµcna, podstabla se
moraju usporediti µcvor po µcvor. Budući da stablo raste iz korijena, njegova se
struktura najprirodnije prouµcava polazeći iz tog µcvora, pa je za ovu provjeru najpri-
kladniji prijeredni prolazak. Zato u oba stabla inicijaliziramo prijeredni prolazak i
zabiljeµzimo kazaljke korijenskih µcvorova u varijable pNdC i pNdCT. Korijenski µcvorovi
podstabala uspore†uju se posebno od ostalih µcvorova, jer po de…niciji općenitog, pa
tako i -stabla, korijen nema roditelja, pa se i odnos korijenskog µcvora podstabla
prema svom roditelju mora ignorirati (§A.1, A.2).19 Postojanje nasljednika za oba
korijena testirano je s pomoću funkcije HasChidlren na jedan od µcetiri moguća
ishoda: none , leftOnly , rightOnly , both (nijedno dijete, samo lijevo, samo desno,
oba djeteta). Ako ovo nije jednako za oba podstabla, algoritam se ponovo okonµcava
sa zastavicom fFlg = 2.0 . Ako je struktura djece ista, tada se u oba stabla obavlja
nerekurzivni prijeredni pomak na sljedeći µcvor. Ako oba prolaska nisu završena,
tj. ako su kontrolne varijable bTrv1Done == bTrv2Done == false , tada ulazimo u
iteraciju ostvarenu s pomoću while petlje. Za µcvorove koji su ispod razine korije-
na, pored provjere strukture djece funkcijom HasChidlren, provjeravamo i karakter
samih µcvorova u odnosu na njihove roditelje, tj. jesu li oni oba ili lijevo ili desno
dijete. Ako nisu, podstabla su ponovo morfološki razliµcita, pa algoritam staje i
19
Jedino podstablo µciji korijenski µcvor nema roditelja u nadstablu u kojem je podstablo kreirano
jest korijensko podstablo — ono koje izrasta iz samog korijena svojeg nadstabla.
8. Programska implementacija 261
TCT (L) ^N ds = O N
tN dC N ^N ds : (8.41)
bL+1
TCT (b; L) tN dC ; uz uvjet iz (8.24a) ; (8.42a)
b 1
b L b L ld b
TCT (b; L) = O b =O 2 (8.42b)
b0 b0
b
= O 2ld b0 +L ld b = O 2L ld b :
D E
hTCT (L)iAvr= bM tN dC ^
NN ds (L) tN dC 2EAvr= bM (L)
Avr= bM
EAvr= bM (L)
= O 2 ; (8.43d)
lT T r;Lvs = D L: (8.46)
Ispis 8.14 Kratak izvadak iz suµcelja klase morfova CATrMorphs, s najvaµznijim µclan-
skim varijablama.
u listi morfova ima onih µcija podstabala nisu provjerena. Vratiti se na korak 2.
Ako je i = NM rs , u listi nema morfova s neprovjerenim nasljednicima. Kraj.
Korak FM.1 ostvaren je jednostavnom funkcijom FindRootMorph, u skraćenoj
formi danoj u ispisu 8.15. U njoj funkcija NewSubTrMrphCand kreira korijensko pod-
stablo, koje je uvijek (korijenski) morf. On se pohranjuje na poµcetno (nulto) mjesto
u listi morfova. Za svaki novi morf stvara se objekt pomoćne klase CTrMorphsTrans.
U njega se odmah pri kreaciji biljeµzi identi…kacijski niz kojim je morf (njegov korijen)
odre†en, ovdje prazan niz, "". Prvi je morf i morfološki jedinstven, što biljeµzimo
unosom vrijednosti 2.0 (vidjeti ulogu zastavice fFlg u 8.5.1). U objekt *pTrn
zabiljeµzit ćemo i podatke o lijevom i desnom podmorfu te o vjerojatnostima prije-
laza u njih (pošto ih prona†emo s pomoću funkcije FindChildMorphs, u sljedećem
pododjeljku). Na koncu se taj objekt pohranjuje u paralelnu listu m_mrphTrnsArr.
Ako taj µcvor kao dio prolaznog stabla nema djece, radi se o listu prolaznog sta-
bla. Taj je list korijen rubnog morfa, iz kojeg prijelazi ne mogu voditi u nove niti se
zatvoriti u ranije na†ene morfove. Takvi su prijelazi neregularni, pa m_bMrphTrnsClsd
postavljamo na false. Za promatrani µcvor, *pMRtNdMI, zanima nas još postoje li
i koji su prijelazi iz njega u kontekstu glavnog stabla (ne prolaznog!). Za to ra-
bimo funkciju HasChidlren klase CBinTreeNode. Ako µcvor ima dijete u glavnom
stablu, pripadni je prijelaz moguć ali neregularan — što ćemo oznaµciti postavljanjem
indeksa podmorfa na 2. Ako µcvor nema djeteta u glavnom stablu, prijelaz je i
nemoguć — što će oznaµcavati inicijalna vrijednost indeksa, jednaka 1.
Ukoliko je promatrani morf iznad razine listova prolaznog stabla, provjerava se
struktura djece njegova korijena. Iz toga se doznaje ima li on samo lijevo, samo desno
ili oba podstabla. Promotrimo prvu granu algoritma, za sluµcaj da morf ima lijevo
ili oba podstabla. Prije usporedbe podstabala s prethodnim morfovima postavljamo
fMinDiff na vrijednost 2:0, koja — po de…niciji u funkciji CompareTo (ispis 8.13) —
znaµci morfološku razliµcitost. Odgovarajući indeks iMinDiff najsliµcnijeg morfa po-
stavljamo na 1, što oznaµcava da ne postoji morfološki jednako podstablo, a niz
sMaxDiffNd za speci…kaciju µcvora u kojem se pojavilo maksimalno vjerojatnosno
odstupanje postavljamo da bude prazan niz.
Budući da je utvr†eno postojanje lijevog djeteta, na njega pomaknemo tekući
µcvor i s pomoću funkcije NewSubTrMrphCand tvorimo novo podstablo-kandidat za
morfa, de…nirano kazaljkom pSubTr. Njega uspore†ujemo sa svim dosad prona†enim
morfovima, µcije su kazaljke pohranjene u poretku m_MrphPtrArr. Novina u odnosu
na prvotnu verziju algoritma iz [44] dva su nova naµcina ove usporedbe. Izbor izme†u
ukupno tri naµcina kontrolira vrijednost zastavice m_iCmprOrd (od engl. Comparison
Order and Method) prema shemi koja slijedi. Usporedo su za njih navedene i pri-
padne oznake u suµcelju programa,23 te slovµcane kratice koje nadalje koristimo:
23
U većem prozoru na sl. 6.6 dana je lista SFA modela, gdje se u SC koloni nalazi podatak o tipu
usporedbe uporabljene pri nalaµzenju modela.
8. Programska implementacija 271
// Initializations:
UINT uNMrphs = m_mrphTrnsPtrArr.GetCount(); // Num. of found morphs.
const CBinTreeNode* pMRtNdMI = m_MrphPtrArr[iMI]->GetpRoot();
// Pointer to the morph’s transitions typed pointer array:
CTrMorphsTrans* pTrnMI = m_mrphTrnsPtrArr[iMI];
newMorphs = none;
// Check the children of the *pMRtNdMI root in the context of the
// traversal tree:
hasChldrn = pTrvrsTree->HasChildren(pMRtNdMI);
if (hasChldrn == none) // If there are no children in the traversal
{ // tree, by def. of the CABinTree, this is its leaf level,
// so there are no valid submorphs (no valid transitions).
m_bMrphTrnsClsd = false;
switch(pMRtNdMI->HasChildren())
{
case leftOnly:
pTrnMI->m_iLSubMrph = -2;
break;
case rightOnly: pTrnMI->m_iRSubMrph = -2;
break;
case both:
pTrnMI->m_iLSubMrph = -2;
pTrnMI->m_iRSubMrph = -2;
break; // Pro forma break.
}
}
else // The morph has descendant morphs.
{
if(hasChldrn == leftOnly jj hasChldrn == both) // Check the left
{ // child subtree:
fMinDiff = 2.f;
iMinDiff = -1;
sMaxDiffNd = "";
pMRtNdNw = pMRtNdMI->GetpLChild();
pSubTr = NewSubTrMrphCand(pMRtNdNw);
// Compare the subtree to the morphs in the ptr. array list:
switch(m_iCmprOrd) // m_iCmprOrd determines the morph com-
{ // parison order and method.
case 0: // From beginning to the 1st morph within fDelta.
uI = 0;
do
{
fFlg = pSubTr->CompareTo(m_MrphPtrArr[uI], sMaxDiffNd);
if(fFlg < fMinDiff) { fMinDiff = fFlg; iMinDiff = uI;}
} while(fFlg > fDelta && ++uI < uNMrphs);
break;
8. Programska implementacija 273
okonµcanju (vidjeti 8.6.6, niµze). Tada pak će malo dulje vrijeme utrošeno za potpunu
usporedbu biti mala cijena za dobivanje toµcnijih modela. Tome u prilog ide i µci-
njenica da je za SFA-modele s µcak i više stotina stanja FM algoritam vrlo brz (za
vremena izvršavanja vidjeti pododjeljak 8.7.4).
Valja naglasiti da sva tri naµcina usporedbe daju identiµcne SFA-modele za sve su-
stave u kojima ne postoje suptilne stohastiµcke razlike — kao što su sustavi zadani pra-
vilom i periodiµcni sustavi, odnosno kad parametar nije previše otpušten s obzirom
na vjerojatnosnu preciznost glavnog stabla. Cakµ i za sustave u kojima postoje mno-
gobrojni oblikovno identiµcni morfovi s malim vjerojatnosnim razlikama dobivaju se
isti modeli ako se dovoljno stegne, pri µcemu moµze ostati dovoljno velik da se
dobiva regularan SFA, odnosno da broj morfova ne eksplodira (primjer u I.4.1).
Usporedba tipa F (“od poµcetka”) bila je ostvarena u prvobitnoj inaµcici FM al-
goritma iz [44] i u njegovoj revidiranoj inaµcici objavljenoj u [47]. Uvo†enje dvije
nove vrste usporedbi bilo je motivirano speci…µcnostima kompleksnih SFA-modela
logistiµckog preslikavanja opisanim u 9.2.5 (detalji u prilozima I.4.1, I.4.3, I.4.4).
Vratimo se sada na sluµcaj kada smo usporedbom podstabla-kandidata ustanovili
da on nije (L; )-ekvivalentan nikojem prethodno prona†enom morfu, tj. kada je
fFlg > fDelta. Tada je kandidat za morfa (L; )-jedinstven i on predstavlja novi
morf. Njegovu kazaljku uvrštavamo u m_MrphPtrArr s pomoću funkcije Add . Ta
funkcija vraća indeks (posljednjeg) mjesta u listi na koje je kazaljka pohranjena.
Njega odmah biljeµzimo kao indeks lijevog podmorfa “glavnog”, iMI-tog morfa —
kojem je kandidat bilo lijevo podstablo — u iMI-ti element poretka m_MrphTrnsPtrArr,
pokazan kazaljkom pTrnMI. Tako†er biljeµzimo i odgovarajuću vjerojatnost prije-
laza. Potom stvaramo objekt klase CTrMorphsTrans, pokazan kazaljkom pTrnNw, za
pohranu strukture i vjerojatnosti prijelaza novog morfa. Odmah pri kreaciji funkcija
GetsRoot nalazi binaran niz korijena podstabla i de…nira µclansku varijablu m_sRoot,
dok minimalna prona†ena vjerojatnosna razlika fMinDiff de…nira m_fDiffFlag.
Potom zapisujemo da je iMI indeks roditelja novoprona†enog morfa, a u µclansku
varijablu m_iMinDiff pohranjujemo iMinDiff kao indeks vjerojatnosno najbliµzeg
morfa. Podsjetimo se, ako je varijabla fMinDiff ostala na 2:0, tada je i indeks
iMinDiff ostao na 1 . Novi je morf i oblikovno jedinstven, pa ne postoji vjerojat-
nosno bliski morf. Spomenimo usput da će funkcija FindNumOfMorphlgDiffMinDiff
prebrojavati morfološki jedinstvene morfove upravo provjerom da je m_fDiffFlag
== 2.0. Nadalje, ako je fMinDiff manje od 2:0, tada iMinDiff sadrµzava indeks
najbliµzeg morfa, a isMaxDiffNd predstavlja µcvor u kojem se pojavila maksimalna
8. Programska implementacija 277
predstavnik iste klase ekvivalencije na manjoj razini. Zato ćemo poredak ko-
rijena prona†enih morfova s obzirom na cijelo glavno stablo nazvati djelomiµcni
ure†aj širinom-prvo (engl. partial breadth-…rst order).
ii. FM algoritam u općenitom je sluµcaju površan (uvedeno u 6.6.1). Kad se za
sve na†ene morfove ustanovi da su njihova podstabla (kandidati za morfove)
identiµcni već prona†enim morfovima, algoritam staje. Dakle, u općenitom
sluµcaju on ne istraµzuje sva moguća podstabla visine L unutar glavnog stabla
visine D (L D 1, D; L = 1; 2; : : : , za odnos D i L vidjeti 6.6.2).
iii. Svojstvo (i) pomaµze u okonµcanju algoritma te u formalizaciji na†enih morfova
i njihovih me†usobnih prijelaza kao regularnog SFA-modela.
0
iv. Broj Ncrr;DM morfovima povezanih simbola tijekom rada FM algoritma prema
(6.27a) moµze biti od L + 1 za lDM = 0 (jer se podmorfovi korijenskog morfa
na razini l = 1 uvijek istraµzuju), pa do ukupnog broja D simbola u rijeµci ako
su istraµzena sva podstabla do maksimalne dubine D L (pripadne duljine
0
lcrr;DM morfovima istraµzene korelacije za jedan su manje). U skladu s uvjetom
(6.58), za visinu morfa moµze se odabrati i poseban sluµcaj L = 0 .
v. Izostanak temeljitosti u istraµzivanju cijelog glavnog stabla ublaµzuje i opravdava
sljedeći argument: na većim razinama prolaznog i glavnog stabla znaµcajnost
i vjerojatnosna toµcnost opadaju, jer s povećanjem razine prosjeµcan izbrojak
u µcvoru (eksponencijalno) pada. Stoga svojstvo površnosti i ranije okonµcanje
algoritma mogu doprinijeti smanjenju utjecaja koje statistiµcke ‡uktuacije na
većim razinama glavnog stabla imaju na konaµcni model.
vi. Ako je FM algoritam istraµzio sve rubne morfove, radi se o posebnom sluµcaju
kad je njegov rad temeljit (uobiµcajeno povezano s neregularnim SFA).
Tablica 8.5: Usporedba rezultata rada TFM i FM algoritama na sustavu “nema uza-
stopnih nula” (NCZ): sjeme x0 = 0:3_ [15 dec.], 100 tranz. toµcaka, hranidba s 106 rijeµci.
Model: D = 10 , L = 4 , vjer. preciznost = 0:001 do 0:006 . TFM (Ext. F., engl.
Extended Find ) = prvi dio TFM algoritma, za nalaµzenje svih podstabala, njihovih veza i
(L; )-ekvivalentnih predstavnika; +RES1 (+RES2) = funkcije drugog dijela TFM algoritma,
za uklanjanje ekvivalentnih podstabala s nedopuštenim (dopuštenim) tranzitivnim zamje-
nama; FM (Std. F., engl. Standard Find ) = FM algoritam. Broj na†enih podstabala: MU
= morfološki jedinstvenih, Unq = (L; )-jedinst., Tot = ukupno. Reg. = regularnost SFA.
vrijediti i < 1=6 , jer bi se u protivnom morfovi (stanja) A i C sa slike 6.5, odno-
sno 6.7, asimilirali.] TFM algoritmi provjeravaju svih 53 podstabala visine L = 4
koja postoje u promatranom glavnom stablu visine D = 10 . Najdublja su od njih
rubna podstabla, na razini lDST r = 6, kojih ima 21. Ovdje je otpuštanje parame-
tra nuµzno zbog povećanih statistiµckih ‡uktuacija vjerojatnosti µcvorova na višim
razinama rašµclambenog stabla (za detaljniji opis vidjeti F.1.2).
Za ovaj posljednji sluµcaj (7 u tab. 8.6, 5.i u tab. 8.7) u preliminarnim je rezulta-
tima dana i vremenska sloµzenost FM algoritma u ovisnosti o ukupnom broju µcvorova
N^N ds [47, formula (15)]. Ta je ovisnost smanjena kvadratna i ona je jednaka novim
rezultatima (zadnja kolona u tab. 8.7). Zajedno s ovisnošću o parametrima modela,
nju rezimira sljedeći izraz, koji je (okvirno) valjan i za sluµcaj 6, odnosno 5.o :
2D L
c = b = 2 : TF M = O 22D L ^ D+1
=O N . (8.47)
N ds
5. Puno stablo, c = b = 2 :
L+1
[ o. e = 1, prosjeµcno vrijeme TCT ; x = D+1 ; 2 x = 2DD+1 L+1
.] 22D L+1 ^2 x
NN ds
L 2D L+2
i . e = 0, maks. vrijeme TCT;max ; x = D+1 ; 2 x = D+1 : 22D L+2
-jj-
Tablica 8.7: Vremenska sloµzenost FM algoritma izraµzena funkcijama reda veliµcine O (D; L)
iO N ^N ds , od najboljeg (1) do najgoreg (5) sluµcaja. D je visina glavnog stabla, L visina
^N ds broj µcvorova glavnog stabla. Periodiµcni sustavi: 1. Ciklusi perioda n. Uvjeti:
morfa, N
D 2n 1, L n 1, za ovisnost O N ^N ds dodatno je L = n. Op´ceniti sustavi: 2 do
5, zadani su baznim parametrima b i c . 2. Podstabla korijenskog morfa jednaka su njemu
samome, pa se algoritam okonµcava brµze zbog svojstva površnosti. 3. Tu je pretpostavka
da algoritam diskriminira podstabla na temelju njihove statistike. Tri su podsluµcaja: kad
dominira vrijeme TM S utrošeno na tvorbu statistike podstabala (L L0 ), kad dominira
vrijeme TCS za usporedbu tih statistika (L L0 ) te kad su ta vremena pribliµzno jednaka
(L L0 ). U zagradama su reference na (pre)dugaµcke formule. 4. Rezultati za općenite b
i c uz komparaciju podstabala “µcvor na µcvor” (§ D.2). 5. Puno stablo i maksimalan broj
na†enih morfova, c = b = 2. 5.o …ktivan je sluµcaj, nemoguć po CT algoritmu (§ D.1).
286 8. Programska implementacija
(ii) N C Z X – X – X –
L= 10 10 10 10 10 10
= 0.01 0.001 0.005 0.001 0.0001 0.00001
NStrs;Rc = 8 288 6 257 6 288
NM rs;M U = 2 276 2 5 2 2
NM rs;T ot = 4 287 3 255 3 287
TF M (->)=s 0.001509 0.01926 0.000967 2.1782 0.000972 2.8933
0.000005 0.00019 0.000005 0.0026 0.000005 0.0024
TF M (<-)=s 0.001146 0.01908 0.000723 2.1782 0.000729 2.8909
0.00010 0.00014 0.000003 0.0026 0.000002 0.0034
TF M (j - j)=s 0.001513 0.01909 0.000965 2.1794 0.000971 2.8952
0.000012 0.00007 0.000003 0.0036 0.000004 0.0027
Tablica 8.8: Statistika rezultata rada i vremena izvo†enja FM algoritma za dva dinamiµcka
sustava: (i) LMCC – logistiµcko preslikavanje na vrhuncu kaosa, r = 4 , sjeme x0 = 0:2,
100 tranzijentnih toµcaka [sliµcni su rezultati za proizvoljan x0 2 (0; 1), x0 6= 1=2; 1=4; 3=4,
vidjeti prilog H.4.5, usporediti i s I.1]; (ii) NCZ – “nema uzastopnih nula”, x0 = 1=3 na
15 decimala, 100 tranzijentnih toµcaka. Stablo visine D = 20 nahranjeno je s Nw rijeµci
da se izluµce morfovi visine L uz vjerojatnosnu toµcnost . Maksimalan broj NStrs;max
podstabala jednak je broju µcvorova prolaznog stabla visine D L. Uz L = 10, za LMCC
NStrs;max = 2047 (maksimalno moguće), za NCZ NStrs;max = 375 . Vremena su mjerena na
raµcunalu opisanom u podbilješki 13 (§ 8.3.4). Rezultati za LMCC uz = 0:00001 dobiveni
su iz pet, a ostali iz minimalno deset mjerenja. Legenda ostalih simbola: X = regularan SFA
(’* ’ oznaµcava povećani broj stanja), – = neregularan SFA, NStrs;Rc = broj zabiljeµzenih
i provjerenih podstabala, NM rs;M U = broj morfološki (oblikovno) jedinstvenih morfova,
NM rs;T ot = ukupan broj na†enih morfova (NM rs;M U NM rs;T ot NStrs;Rc NStrs;max ) ,
TF M =s = vrijeme izvršavanja algoritma s pripadnom standardnom devijacijom, izraµzeno
u sekundama, za tri usporedbe kandidata s prethodno prona†enim morfovima: od prvog
(-> = F), od zadnjeg (<- = L), sa svima (j - j = A).
290 8. Programska implementacija
Slika 8.5: Dijaloški prozor rašµclambenog (glavnog) stabla visine 6, nahranjenog rijeµcima
iz sustava “nema uzastopnih nula” (NCZ). Uz hranidbeni faktor od 16 Ki (Feed Factor,
gore lijevo) i maksimalan broj od 26 listova za stablo ove visine, program je za automatsku
hranidbu (puce Auto) predloµzio 1 048 576 rijeµci. Umjesto toga, unesen je broj od 108 rijeµci
i pucetom Manually pokrenuta je “ruµcna”hranidba. Stanje na slici jest nakon te hranidbe.
Moguća je i inkrementalna hranidba, rijeµc po rijeµc, uporabom puceta ’+’(zdesna) ili tipke
’+’na tipkovnici. U donjem dijelu pokazno je stablo visine 5 , koje omogućuje prikaz bilo
kojeg dijela glavnog stabla. Njegov je korijen, oznaµcen s ’@ ’, odabran i zato ispupµcen.
Ovdje je on postavljen u korijen glavnog stabla, de…niran praznim nizom e = "". Iznad
je sljedeća rijeµc u nizu koja će biti uµcitana (Next word). Desno je njezin apsolutan poloµzaj
brojan od prve uµcitane rijeµci i relativan poloµzaj u kruµznom spremniku. Do razine 4 µcvorovi
pokaznog stabla imaju punu funkcionalnost. U njima se mogu oµcitati izbrojci (Counts),
ili vjerojatnosti prema: roditelju (Pr/Parent), korijenu pokaznog stabla (Pr/SbRoot) ili
korijenu glavnog stabla (Pr/Root) [radiopuceta slijeva]. Na dnu pokaznog stabla (relativna
razina 5) “granµcice” oznaµcavaju postojanje lijevih i desnih nasljednika.
294 8. Programska implementacija
Slika 8.6: Glavno stablo i sustav kao na prethodnoj slici, ali uz pokazno podstablo spušteno
za dvije razine. Njegov je korijen sada u µcvoru 01 glavnog stabla. Odabrani µcvor najljeviji
je list glavnog stabla (u donjem retku, ispupµcen), de…niran relativnim nizom 0101 prema
korijenu pokaznog stabla, odnosno apsolutnim nizom 010101 prema korijenu glavnog sta-
bla. U srednjem, kontrolnom, dijelu odabire se redoslijed prolaska kroz stablo: prijeredni,
poslijeredni, me†uredni; te njegov naµcin: ruµcni (korak po korak) ili automatski. Tako†er,
mogu se oµcitavati vremena izvršavanja prolaznih algoritama i algoritma hranidbe (Tm.tst.,
Check). U pokaznom se stablu µzeljeni µcvor odabire izravno klikom miša ili pak dolaskom
u njega. Šetnja kroz µcvorove moguća je s pomoću puceta za navigaciju na desnoj strani i
tipaka: To Root, To Parent = Alt+ , Current Up, To Left = Alt+ , To Right = Alt+!, To
Child = Alt+ [uz odabir prioritetno lijevog (L) ili desnog (R) djeteta]. Listovi stabla ozna-
µceni su znakom _j_ . Na lijevom i desnom rubu apsolutne su razine pokaznog podstabla.
Korisnik moµze odabrati tri naµcina pomicanja pokaznog stabla: Normal, Force, Smart.
8. Programska implementacija 295
Slika 8.7: Dijaloški prozor za prikaz morfova SFA-modela odabranog ID broja, s nave-
denim parametrima (u gornjem lijevom kutu). Dinamiµcki sustav i glavno stablo isti su
kao i na sl. 8.5 i 8.6. Prikazani su rezultati po uporabi TFM1 algoritma, a iste rezultate
daje i TFM2 algoritam (Find + : opcija 1 = TFM1, opcija 2 = TFM2 inaµcica alg. F.1). Po
usporedbi svih 19 podstabala glavnog stabla i redukciji (L; )-ekvivalentnih, ovi algoritmi
za NCZ sustav daju isti model kao i FM algoritam, koji provjerava (samo) 6 podstabala.
Korijeni tri prona†ena morfa visine 2 uokvireni su. Za odabrani morf SFA-modela u gor-
njem je dijelu statistika njegova podstabla (Morph/Subtree Statistics). Desno od puceta
FIND podaci su o tome koliko je morfova prona†eno te koliko je od njih oblikovno razliµci-
tih. Pored je i maksimalni broj morfova koji se mogu pronaći u ovom prolaznom stablu.
Mnogi drugi detalji razumljivi su izravno iz suµcelja. Kao i u dijaloškom prozoru glavnog
stabla, korisnik moµze prolaziti kroz postojeće µcvorove, ali samo do razine D L , na kojoj
su listovi prolaznog stabla. [Usput: vjerojatnosti prijelaza izme†u morfa i njegovih pod-
morfova jednaki su vjerojatnostima djece u odnosu na korijenski µcvor morfa. Usporediti s
prijelaznim vjerojatnostima SFA modela sa sl. 6.7, dobivenim uz istu hranidbu.]
296 8. Programska implementacija
Slika 8.8: Gra…µcki prikaz glavnog stabla visine D = 6 sa sl. 8.5 i 8.6 te morfa br. 1
(korijenskog) visine L = 3 , odabranog u radnom dijaloškom prozoru sa sl. 8.7. Ovo je
izravna preslika (engl. screenshot) prozora Trees DSA programa. Nakon hranidbe glavnog
stabla u gornjem se dijelu prozora crta glavno rašµclambeno stablo do maksimalne razine
l = 12 . Da se u donjem dijelu prozora prikaµze µzeljeni morf iz nekog od dobivenih SFA
modela, treba ući u dijaloški prozor SFA Tree Morphs –Show and Find te odbrati taj model
i morf. [Puce Redraw moµze pomoći u iscrtavanju aktualnog stanja.]
8. Programska implementacija 297
Slika 8.9: Glavno stablo visine D = 5 (gore) i morfovi visine L = 2 (dolje) sustava “nema
uzastopnih nula”(NCZ), prikazani u prozoru Trees DSA programa. Uz vjerojatnosti prije-
laza poznate sa sl. 8.5 i 8.7 u potpunosti je reproducirano teorijsko izlaganje iz odjeljka
6.5, ilustrirano na sl. 6.3 i 6.4. Gornji dio prozora izvorna je preslika dijela ekrana s
aktivnim prozorom Trees. U donjem su dijelu, uz već postojeći morf br. 1, gra…µckom
obradom dodani s lijeve strane morf br. 2 i s desne strane morf br. 3. Oba su preuzeta iz
drugih preslika, u kojima su oni bili odabrani za prikaz (DSA program u sadašnjoj inaµcici
omogućuje istovremeno crtanje samo jednog, odabranog morfa, kao na slici 8.8).
298 8. Programska implementacija
Slika 8.9 prikazuje glavno stablo visine D = 5 i u njemu prona†ene morfove, tj.
oblikovno i stohastiµcki jedinstvena podstabla visine L = 2 dobivena pri modeliranju
NCZ sustava. Ona reproducira teorijske rezultate izvedene u odjeljku 6.5, koji su
prikazani na slikama 6.3 i 6.4.
Pregledan gra…µcki prikaz od velike je koristi modelaru. To vrijedi jednako za ana-
lizu glavnog rašµclambenog stabla i u njemu prona†enih morfova, kao i za pomoć pri
odabiru parametara modela i izvo†enje teorijskih zakljuµcaka. U ostvarenju spomenu-
tih i ostalih suµcelja bilo je pregršt zanimljivih programskih rješenja — podjednako s
algoritamskog i organizacijskog gledišta — koja su doprinijela funkcionalnosti i lakoći
uporabe ovog programa. No iako su ona presudna za uµcinkovitu uporabu DSA pro-
grama, ovdje ih zbog njihove opseµznosti ne moµzemo obrazlagati.
vjerojatnosti µcvora (prema roditelju ili prema korijenu) itd. Dodatan programerski
izazov jest realizacija slobodnog lutanja kroz stablo na intuitivan naµcin, kao što je
to ostvareno u gore spomenutom prozoru za njegov prikaz i hranidbu.
Nadalje, analiza rašµclambenih stabala u sljedećem poglavlju pokazat će da bi
praktiµcno bilo uvesti koncept hranidbenog rašµclambenog stabla (engl. feed parse
tree) visine DF , kao jedinog stabla kojeg zaista hranimo rijeµcima iz vremenskog
niza (vidjeti prilog H.1.1). Ono bi preuzelo funkcionalnost hranidbe i rašµclambe od
sadašnjeg glavnog stabla visine D . Jedna hranidba tog stabla omogućila bi jedno-
stavnu kreaciju cijelog niza već nahranjenih glavnih stabala, visine: 1 D DF .
301
302 9. Modeliranje s pomoću DSA programa
l 0 5 10 15 20 25
Nl 1 13 144 1 597 17 711 196 418
= F2 = F7 = F12 = F17 = F22 = F27
bl 2.000 000 000 1.615 384 615 1.618 055 556 1.618 033 813 1.618 033 990 1.618 033 989
l 26 27 28 29 30 31
Nl 317 811 514 229 832 040 1 346 269 2 178 308 3 524 562
= F28 = F29 = F30 = F31 = F32 1 = F33 16
bl 1.618 033 989 1.618 033 989 1.618 033 989 1.618 033 246 1.618 027 386 —
Tablica 9.1: Broj Nl µcvorova i prosjeµcan broj bl djece po µcvoru (bl = Nl =Nl+1 ), na razini l
rašµclambenog -stabla sustava “nema uzastopnih nula”(NCZ). Sustav je generiran prema
regularnom izrazu (0 + e)(1 + 10 ), s pomoću funkcije rand. Za l 29 Nl je Fibonaccijev
broj Fl+2 , dok za l 30 dolazi do manjka µcvorova. Stoga bl konvergira u zlatnu sredinu
(7.55) za l ! 28, dok za l 29 ta konvergencija prestaje. [Prema tab. H.6.]
Za LMM, LMNCC i LMCC oni su bliski dualnom logaritmu prosjeµcnog broja djece.
Izraµcunane razine lErr;est za njih se dobro slaµzu s eksperimentalno odre†enim ra-
zinama lErr (prilog H.5.4, tab. H.13). Za LMI sustav bitno se bolji rezultati do-
bivaju uzimanjem vrijednosti ld b umjesto Lyapunovljevog eksponenta. Za LMOC
sustav — s Lyapunovljevim eksponentom bliskim nuli — na temelju spore ali nepre-
kinute konvergencije prosjeµcnog broja bl djece po µcvoru k jedinici zakljuµcujemo da
je njegovo rašµclambeno stablo konzistentno i za visine D ' 28 .
Zakljuµcak ove razine modeliranja vrlo je vaµzan: jedino će konzistentna rašµclam-
bena stabla garantirati da u više raµcunske modele neće biti prenesene pogreške u
strukturi i vjerojatnostima µcvorova! Odstupanja toµcaka orbite od toµcnih vrijednosti
neminovna su pojava kod promatranja (pre)dugaµckih korelacija izme†u stanja di-
namiµckih sustava u kaotiµcnim reµzimima. Kod nas se to oµcituje kod (pre)dugaµckih
izluµcenih rijeµci, odnosno kod (pre)visokih rašµclambenih stabala. Stoga je gore opisana
statistiµcka analiza nuµzan korak prije prelaska na višu razinu modeliranja.
pljeni u prilogu K.1. Za sve njih odre†eni su: parametri za koje se dobivaju toµcni
SFA, broj njihovih stanja (morfološki jedinstvenih, tranzijentnih i rekurentnih) te
informacijsko-teorijske veliµcine, me†u kojima je i statistiµcka sloµzenost (tab. I.3).
ECO, OCO i ECZO sustavi imaju cikluse u svom tranzijentnom dijelu, pa su
oni striktno so…µcki. Za sve sustave zadane pravilom njihovi toµcni SFA-modeli imaju
broj morfovima povezanih simbola koji nadmašuje broj rekurentnih stanja, pa uvjet
(6.34a) vrijedi uz k = 0 . Budući da smo vremenske nizove ovih sustava generirali na
temelju njihovih pravila, poznate su nam duljine lcrr;T S korelacija me†u simbolima
u vremenskom nizu. Pokazano je da njihovi toµcni (i minimalni) SFA-modeli imaju
duljine l M korelacija modela za koje vrijedi jednakost l M = lcrr;T S . To je uvjet za
toµcno i neredundantno odgonetavanje strukture vremenskog niza.
1 0.78472
1 0.68260
C E H I J
(1 0.38746)
0 0.46498
0 0.74392 0 0.61254
A 1 0.56091 11
1 0.85595 1 0.66522
0 0.43909
11 11
0 0.31740 B D F G K
0 0.14405 0 0.33478
0 0.21528
Slika 9.2: SFA modeli LMI-11a i 11b, s 2 tranzijentna i 9 rekurentnih stanja [2 morf.
jedinst., A(D) i B]. LMI-l1a µcine pune linije. LMI-11b isti je, osim prijelaza iz stanja I po
simbolu 1 (crtkano). Mogući su ciklusi svih perioda, no dominira (kvazi)ciklus-3 BDE.
LMI sustav, r = 3:8282 . Ovo je prvi sloµzeni nelinearni dinamiµcki sustav na kojem
je provedeno sveobuhvatno modeliranje. Na konzistentnom rašµclambenom stablu
visine D = 24, za cijeli mogući raspon visina L morfova i vjerojatnosnu preciznost
0:1 / 1, izna†en je skup od 30 SFA-modela: od LMI-2, s dva stanja, do LMI-
12a, b, s ukupno dvanaest stanja (opisani u I.4.1, tab. I.4, I.5). Reprezentativni je
LMI-11(a) dan na slici 9.2 (ostali su SFA-grafovi u K.2.1). Njihova invarijanta —
postojanje samo 2 oblikovno razliµcita morfa — proizlazi iz pravila jednakog kao i za
NCZ sustav: u vremenskom nizu nema uzastopnih nula. No za razliku od NCZ, u
LMI se sa smanjenjem otkriva postepeno narastajući broj vjerojatnosno razliµcitih
morfova (stanja) i suptilna izmjena periodiµcnog i kaotiµcnog ponašanja.
Po usporedbi s prethodnim i kasnijim modelima te na osnovi informacijsko-
teorijskih pokazatelja odbaµcen je model LMI-7c, s ukupno sedam ali samo dva re-
kurentna stanja (sl. K.3e). Do prevelike redukcije njegova rekurentnog dijela dolazi
zbog posebnog izbora parametara modeliranja. Statistiµcka mu je sloµzenost za više
od 50% manja nego kod prethodnih modela, LMI-4, 5, 6 te 7a i b, a još i više u
odnosu na modele s većim brojem stanja. Sve to upućuje da se radi o iznimci. Ovaj
primjer naglašava potrebu usporedbe svakog SFA-modela s ostalima, manje i više
preciznima, te ukazuje na vaµznost provo†enja sveobuhvatnog modeliranja.
Kao reprezentativne modele ovog sustava — uz grublju vjerojatnosnu preciznost
moµzemo odabrati npr. LMI-4 ili LMI-5c, 6c, a za manji , model LMI-11(a).
njihove ovisnosti o razini na kojoj se nalaze, TFM algoritmi ne daju identiµcnu paletu
modela kao i FM algoritam. TFM1 rekonstruira tek najjednostavniji, LMI-2. TFM2
dodatno rekonstruira i FM modele LMI-6c i 11a, za sliµcne vrijednosti (tab. I.6).
To potvr†uje izbor posljednja dva od njih kao reprezentativnih za ovaj sustav.
Za sve LMI modele napravljena je analiza duljina korelacija kao i za prethodne
sustave. Njihove su duljine korelacije lSF A modela za jedan manje od broja vr
rekurentnih stanja, osim za model LMI-5c, za kojeg vrijedi: lSF A = 6 > vr 1 = 4 .
LMOC sustav, r = rF = 3:569 945 671 869 544 5 : : :. Za razliku od LMI modela,
SFA-modeli logistiµckog preslikavanja na kraju puta za kaos udvostruµcavanjem peri-
oda pokazuju izrazitu pravilnost, nalik onoj koju nalazimo kod periodiµcnih sustava.
Tako se i kod LMOC modela nalaze samo morfološki jedinstvena stanja, pa su i
rezultati modeliranja invarijantni na promjene parametra ' 10 4 (prilog I.4.2,
tab. I.8). Tako†er, istovjetni se modeli dobivaju i s pomoću FM i TFM algoritama,
ali je kod potonjeg potrebna odgovarajuća restrikcija visine glavnog stabla.
Kompleksnost ovih sustava proizlazi iz µcinjenice da se za r = rF pojavljuju parni
periodi iznosa n = 2k+1 ! 1 , k = 0; 1; 2; : : :. Maksimalan n koji SFA-model moµze
uhvatiti ovisi o duljini morfovima istraµzene korelacije, koja pak proizlazi iz odabrane
duljine (visine) L morfova. Iz uoµcenih su pravilnosti izvedene veze izme†u parame-
tara LMOC modela (L; Dmin ) i broja njihovih stanja u funkciji logaritma perioda n
(eksponenta k). Na isti su naµcin izvedeni i svi informacijsko-teorijski pokazatelji te
duljine korelacija modela. Dobivene formule u potpunosti reproduciraju rezultate
koje daju i eksperimentalno na†eni modeli, LMOC- 2k+2 + 1 . Uoµcene simetrije i
pravilnosti u dobivenim modelima te eksplicitne formule koje objašnjavaju njihovo
ponašanje, upotpunjuju i nadmašuju rezultate iz temeljnih radova ovog podruµcja
[17, 18]. Tako npr. SFA model LMOC-31, s 15 tranzijentnih i 16 rekurentnih stanja,
uspješno razaznaje ciklus-16, a LMOC-63, s 31 tranzijentnih i 32 rekurentnih stanja,
ciklus-32 (parametri u tab. I.7, I.9). Oba su modela jednostavnija i simetriµcnija od
Crutch…eldovog modela s 47 stanja [17, sl. 1a], [24, sl. 2a], [26, sl. 7a]. Taj model,
LMOC-47, naši, FM i TFM algoritmi tako†er toµcno reproduciraju, ali i korektno
ustanovljuju da se radi o nezatvorenom, tj. o neregularnom, SFA-modelu — što u
Crutch…eldovom radu nije navedeno. Uzrok je tome nevaljali izbor parametara mo-
dela, D = 32 i L = 16, što je zakljuµceno na temelju modela koje daje FM algoritam,
a potom i teorijski dokazano (§I.4.2). Ovi poboljšani rezultati potvr†uju korektnost
našeg teorijskog pristupa u odjeljcima 6.2 –6.3, vaµznost tamo uvedene regularnosti
(zatvorenosti) SFA-modela te iz nje proizašlih uvjeta na parametre D i L (korolar
9. Modeliranje s pomoću DSA programa 311
1 1
0 1 1 0 1
2
8 1
2
15 19 21 23
1
1
5
1
2
0 11 0
1
2
1 2
0 1 0 1
1
2 3 1 9 1 14 31 29 27 25
3 1 2 0 2
1
1
1
1 0
1
2 1 18 0 2 30
0
1
1 1 1 1
1 0
0 3 2 2
7 2
12 16 22 28
1
1 4 10 1 1 1 2 0
1 6 1 1 13 17 20 24 26
0 2 1 2 1 0 1
Slika 9.3: SFA LMOC-31. Kauzalni model logistiµckog preslikavanja u nastupu kaosa,
r = rF = 3:569 945 671 869 544 5 : : :, s 31 stanja, dobiven uz L = 8 do 15 , Dmin = 21
do 28 , po hranidbi s 108 rijeµci. Vjerojatnosti prijelaza odstupaju od idealnih vrijednosti
u 6. i 5. decimali. Nakon izlaska iz 15 tranzijentnih (1 –11, 15, 19, 21, 23), model je
u preostalih 16 rekurentnih stanja. Iz svih njih vode deterministiµcki prijelazi osim iz
distributivnog, stanja 22. Iz njega s vjerojatnošću od 1=2 po znaku 0 (1) slijedi primarni
uzorak 0101 1101 (1101 1101 0101 1101). [Vidjeti i prilog I.4.2, sl. I.10 i tab. I.7, I.8.]
LMM sustav, r = rM = 3:927 737 001 786 751 6 : : :. Logistiµcko preslikavanje s Mi-
siurewiczevim parametrom primjer je sustava s naglašenom statistiµckom stabilnosti.
Osim na razini rašµclambenog stabla, ta će se stabilnost oµcitovati i na razini temeljnih
-strojeva, odnosno SFA-modela — znatno više nego npr. za LMI ili niµze obra†eni
LMNCC sustav. Za široki raspon vjerojatnosne preciznosti, 2 [0:019; 1], dobivena
312 9. Modeliranje s pomoću DSA programa
0|0.38126
1|0.61874 1|0.52257
1|1.0
W X Y(2) Z (1)
1|0.47738 0|0.52262 0|0.47743
Slika 9.5: Rekurentni (stacionarni) dio SFA za LMM sustav, s r = rM (vidjeti sl. K.4c do
h). Manji broj u zagradi broj je morfa sa sl. 9.4 kojemu je stanje oblikovna kopija. W i X
originali su, jednaki morfovima 3, odnosno 4, s iste slike. U modelima su stanja odre†ena
morfovima µciji se interni broj stabilizira sa smanjenjem (s porastom ID-a modela): za
LMM7 –21 , Y = 6 ; za LMM9 –21 , W = 4 ; za LMM16 –21 , X = 8 , Z = 10 .
(1|0.39950)
(1|0.42405)
(1|0.46171)
11
0|1.0
0|1.0 1|1.0 1|1.0
19 18 17 16 15 14 13 12
1|0.48393 1|0.37524 1|0.47459 1|1.0 1|0.50773
Slika 9.6: Reprezentativni SFA modeli LMNCC-19 i 24, dobiveni za L = 4 (5) i visinu
glavnog stabla D = 23 (24). LMNCC-19 µcine samo grane i µcvorovi nacrtani punom li-
nijom. Svih 19 njegovih stanja morfološki je jedinstveno (sl. I.17). LMNCC-24 µcine sva
stanja i svi prijelazi (pune i crtkane linije) osim prijelaza 8 ! 1 po znaku 1, kojeg mijenja
prijelaz 8 ! 9a. Novih pet stanja, 9a do 13a, morfološke su kopije i µcine zasebnu cjelinu.
Dinamiµcki sustav S F A –m o d e l
Opis i primjer L Reprez. Toµcan Jedin. TFM
Tablica 9.2: Odlike SFA-modela za tri skupine dinamiµckih sustava, dobivenih uz povoljne
L i , min > 0 . X = da, = ne, !? = moguće. Primjer skupine III: Lmin (LMI) = 1,
Lmin (LMM) = 2, Lmin (LMNCC) = 4, SFA moµze biti reprezentativan, aproksimativan je,
tj. (L; )-toµcan, i zato nije jedinstven. Za LMI i LMM potvr†en je TFM algoritmom.
Sve bliµze potpunom kaosu, 3:997 < r < 4 . Pribliµzavanjem parametra logisti-
µckog preslikavanja još bliµze njegovoj graniµcnoj vrijednosti, r = 4, zaostali tragovi
strukture sve se dublje povlaµce u rašµclambeno stablo. Za njih više ne dobivamo
regularne SFA, pa su razina na kojoj se pojavljuje struktura — odnosno najveći broj
dopuštenih uzastopnih nula — prouµceni izravno iz rašµclambenog stabla. Za r 2 [3; 4]
taj broj logaritamski ovisi o razlici 4 r (tab. I.17).
koraka (alg. 6.1, §6.4.6). No, iz stvarno provedenog sveobuhvatnog modeliranja di-
namiµckih sustava oba ova tipa (§9.1, 9.2, prilozi H.4, I.4) jasno je da su konkretne
zadaće koje tu treba rješavati vrlo raznolike i sloµzene.
Zbog svega toga, “potpuno automatizirana hijerarhijska rekonstrukcija raµcun-
skih modela”— optimistiµcno nagoviještena u [23] — izgleda kao teško ostvariva, µcak
i ako se potpuna automatizacija modeliranja ograniµci samo do razine temeljnog -
stroja, odnosno SFA-modela. Analizu niµzih razina modela (rašµclambenog stabla)
i dobivenih -strojeva, kao i koordinaciju svih aktivnosti u okviru sveobuhvatnog
modeliranja, u automatskom bi procesu trebao preuzeti izrazito sloµzen i so…sticiran
inteligentni agent (engl. intelligent agent). Zadaci postavljeni pred njega ogromni
su — zbog raznolikosti sustava, potrebe uvaµzavanja toµcnosti pojedinih etapa mo-
deliranja i mnogih nepredvidivih okolnosti koje nelinearno modeliranje sa sobom
nosi. Rješavanje ovih problema iziskivalo bi primjenu metodologija iz šireg podruµcja
umjetne inteligencije, uz potrebu ulaganja enormnog programerskog rada.
S druge strane, vratimo li se na našisproban koncept u kojem procesom upravlja
humani modelar, moµzemo ustvrditi da je već i DSA program vrlo funkcionalan.
Upravo se u nadopunjujućoj sprezi µcovjeka s jedne i raµcunala s druge strane postiµzu
najbolji rezultati u rješavanju kompleksnih problema kao što je ovaj. U epistemološki
sloµzenom postupku modeliranja raµcunalni će stroj i program dati najbolje rezultate
kad se koriste kao alati uz humano upravljanje, nadzor, korigiranje i poboljšavanje.
Tome ne doprinosi samo inteligencija humanog modelara, već i njegova motivacija,
znatiµzelja, intuicija i mašta. Nismo sigurni da se arti…cijelni agent moµze takmiµciti s
time, ma koliko on “inteligentan”i “so…sticiran”bio.
Dakle, iako na naµcelnoj razini postoji ideja o tome kako bi automatizirano uni-
verzalno modeliranje trebalo izgledati, u njegovoj teorijskoj razradi i konkretnoj
raµcunarskoj implementaciji postoje brojne i velike poteškoće. Pretpostavimo li, opti-
mistiµcno, da je ono ipak ostvarivo, tada bi teorijski …ziµcari zaista mogli ostati bez
posla [59, pogl. 11]. No oµcito je da se to neće dogoditi tako skoro, jednako kao što je
oµcito da će posla za programere — barem na modeliranju dinamiµckih sustava — još
dugo vremena biti na preµcac.
Poglavlje 10
Zakljuµcak
321
322 10. Zakljuµcak
327
Sadrµzaj popratnog teksta
Raµcunski zasnovano modeliranje dinamiµckih
sustava — PRILOZI
A Teorija -stabala
A.1 Struktura stabla
A.1.1 Pregled osnovnih pojmova teorije grafova
A.1.2 Općenita stabla
A.1.3 Binarna stabla i stabla s maksimalno bN djece
A.2 -stabla i podstabla
A.2.1 Binarna -stabla
A.2.2 Binarna -podstabla
A.2.3 Veza binarnog -stabla s procesom hranidbe
A.2.4 Morfološke odlike -stabala
A.3 Statistiµcki opis binarnih -stabala
A.3.1 Svojstvo ergodiµcnosti i ergodiµcki izvori
A.3.2 Statistiµcki relevantna hranidba iz ergodiµckih izvora
A.3.3 Aproksimacija broja µcvorova geometrijskim nizom
A.3.4 Statistiµcko odre†ivanje parametara b i a
A.3.5 Izraµcun broja µcvorova na temelju parametara b i a
A.3.6 Koe…cijent popunjenosti
A.4 Srednja -stabla
A.4.1 -stabla srednja po broju µcvorova
A.4.2 -stabla srednja po prosjeµcnom broju b djece
A.4.3 Veza zlatno srednjeg -stabla i Fibonaccijevog slijeda
A.4.4 Pregled formula za srednja -stabla
B Parametri modela periodiµcnih sustava
B.1 Tranzijentni i rekurentni morfovi
B.2 Veza perioda i parametara modela
B.2.1 Tranzijentni morfovi i stanja — nalaµzenje faze
B.2.2 Rekurentni morfovi — uvjet na visinu morfa L
Popratan tekst na priloµzenom CD-u u kojem su skupljeni svi prilozi (dodaci) ovom radu.
328
B.2.3 Sveukupnost modela — uvjet na visinu D stabla
B.2.4 Rezime: sigurne i minimalne donje granice za L i D
C Informacijsko-teorijski raµcun
C.1 Entropije distribucija vjerojatnosti
C.1.1 Shannonova entropija
C.1.2 Generalizirana Rényieva entropija
C.1.3 Zdruµzene n-torke doga†aja i sluµcajnih varijabli
C.1.4 Svojstva zdruµzene i uvjetne entropije
C.2 Stope entropije
C.2.1 Stopa entropije niza znakova
C.2.2 Stopa entropije niza reproduciranog iz -stroja
C.3 Entropija modela
C.3.1 Rastav ukupne entropije modela
C.3.2 Izravan izvod izraza za stopu entropije modela
D Vremenska sloµzenost FM algoritma
D.1 Puno glavno stablo i maksimalan broj morfova (c = b = 2)
D.1.1 Pojednostavljeni izvod
D.1.2 Red veliµcine vremenske sloµzenosti
D.2 Općenito popunjeno glavno stablo, s općenitim brojem
morfova (1 c b 2)
D.2.1 c = b (tablica D.4, sluµcaj 4.v)
p
D.2.2 b = 2, c = 2 (tablica D.4, sluµcaj 4.iv)
D.2.3 b = 2, c = 1 (tablica D.4, sluµcaj 4.iii)
p
D.2.4 b = c = 2 (tablica D.4, sluµcaj 4.ii)
p
D.2.5 b = 2, c = 1 (tablica D.4, sluµcaj 4.i)
D.2.6 b = c = 1 (tablica D.4, sluµcaj 4.o, odnosno 1.o)
D.2.7 Primjeri za konkretne izbore baznih parametara i
parametara modela
D.3 Diskriminacija podstabala na temelju statistike
D.3.1 c = b (tablica D.4, sluµcaj 3.iii)
p
D.3.2 b = c = 2 (tablica D.4, sluµcaj 3.ii)
p
D.3.3 b = 2, c = 1 (tablica D.4, sluµcaj 3.i)
D.3.4 Primjeri za konkretne izbore parametara
D.4 Najranije okonµcanje po svojstvu površnosti
D.4.1 b = 2 (tablica D.4, sluµcaj 2.ii)
p
D.4.2 b = 2 (tablica D.4, sluµcaj 2.i)
D.4.3 Primjeri za konkretne izbore parametara
D.4.4 b = 1 (tablica D.4, sluµcaj 2.o, odnosno, 1.o)
329
D.5 Periodiµcni sustavi
D.5.1 n > 1, usporedba podstabala “µcvor na µcvor”
(tablica D.4, sluµcaj 1.i.b)
D.5.2 n > 1, diskriminacija podstabala na temelju njihove
statistike (tablica D.4, sluµcaj 1.i.a)
D.5.3 n = 1, …ksne toµcke 000 : : : i 111 : : : (tablica D.4, sluµcaj 1.o)
D.6 Pregled rezultata
E Izvod vremenske sloµzenosti FM algoritma za općenito -stablo
E.1 Temeljne odrednice rada FM algoritma
E.1.1 Parametri za opis prosjeµcnog ponašanja FM algoritma
E.1.2 Analiza rada FM algoritma u ovisnosti o parametru c
E.1.3 Gornja granica broja morfova (preko parametra b)
E.1.4 Reducirana gornja granica broja morfova (preko
parametara b i c)
E.1.5 Dodatno reducirana gornja granica broja morfova (preko
parametra c)
E.2 Proraµcun vremena izvršavanja FM algoritma
E.2.1 Vremenska ovisnost FM algoritma o broju morfova
E.2.2 Vremenska ovisnost FM algoritma o parametrima modela
E.2.3 Red veliµcine vremenske ovisnosti FM algoritma o parametrima
modela
E.2.4 Red veliµcine vremenske ovisnosti FM algoritma o broju µcvorova
glavnog stabla
E.2.5 Rezultati za prosjeµcan broj usporedbi µcvorova
E.2.6 Rezime rješenja za 1 < c b 2
E.2.7 Poseban sluµcaj — nalaµzenje jednog podmorfa po morfu (c = 1)
E.2.8 Raspon eksponenta 2 x = 1+ y
E.2.9 Poseban sluµcaj — degenerirano glavno stablo (b = c = 1)
E.2.10 Vremenska sloµzenost kod diskriminacije podstabala na
temelju njihove statistike
E.2.11 Okonµcanje FM algoritma po svojstvu površnosti
E.3 Periodiµcni sustavi
E.3.1 Broj morfova kod periodiµcnih sustava
E.3.2 Broj µcvorova u (pod)stablima periodiµcnih sustava
E.3.3 Vrijeme izvo†enja FM algoritma za periodiµcne sustave
F Implementacija i sloµzenost TFM algoritma
F.1 Implementacija i analiza rada TFM algoritma
F.1.1 Implementacija
F.1.2 Usporedba rada FM i TFM algoritama
330
F.1.3 Dodatno testiranje TFM algoritma
F.2 Sloµzenost TFM algoritma
F.2.1 Vremenska sloµzenost TFM algoritma
F.2.2 Prostorna sloµzenost TFM algoritma
G Uporaba DSA programa
G.1 Pregled izbornika DSA programa
G.1.1 Izbornik System
G.1.2 Izbornik Tree
G.1.3 Izbornik Morphs
G.2 Analiza poµcetnih razina modela
H Analiza rašµclambenih -stabala
H.1 Konzistentnost rašµclambenog -stabla
H.1.1 Statistika rašµclambenog -stabla iz broja µcvorova
H.1.2 Statistiµcka konzistentnost rašµclambenog -stabla
H.1.3 Strukturalna konzistentnost rašµclambenog -stabla
H.2 Rašµclambeno -stablo sustava BTS-rand
H.2.1 Popunjenost i uniformnost u ovisnosti o hranidbi
H.2.2 Komentar o radu generatora pseudosluµcajnih brojeva
H.2.3 Vjerojatnosno pristrani Bernoullijev niz
H.3 Rašµclambena -stabla dva sustava kreirana pravilom
H.3.1 Sustav “nema uzastopnih nula”
H.3.2 Sustav “paran broj uzastopnih jedinica”
H.3.3 Rezime statistiµcke analize
H.4 Rašµclambena -stabla sustava logistiµckog preslikavanja
H.4.1 Nastup kaosa (LMOC)
H.4.2 Kaos na mahove (LMI)
H.4.3 Misiurewiczev parametar (LMM)
H.4.4 Nadomak vrhunca kaosa (LMNCC)
H.4.5 Vrhunac kaosa (LMCC)
H.4.6 Eksperimentalni zakljuµcci
H.5 Konzistentnost rašµclambenih -stabala iz numeriµcki iteriranih orbita
H.5.1 Preciznost numeriµcke iteracije nelinearnih dinamiµckih sustava
H.5.2 Manjak µcvorova kao posljedica kodiranja neprecizno
izraµcunane orbite
H.5.3 Izraµcun prosjeµcnih Lyapunovljevih eksponenata
H.5.4 Analiza gubitka konzistencije rašµclambenih stabala
H.5.5 Nema viška µcvorova i nema narušenja pravila!
331
I Analiza SFA-modela dinamiµckih sustava
I.1 “Puka sluµcajnost”— iz generatora sluµcajnih brojeva i iz
deterministiµckog kaosa
I.1.1 Sustav BTS-rand
I.1.2 Sustav BTS-LMCC (r = 4)
I.2 Periodiµcni sustavi
I.2.1 Uvjeti na parametre modela
I.2.2 Primjeri periodiµcnih sustava
I.3 Sustavi zadani pravilom
I.3.1 Nema uzastopnih nula (NCZ)
I.3.2 Nema uzastopnih jedinica (NCO)
I.3.3 Paran broj uzastopnih jedinica (ECO)
I.3.4 Neparan broj uzastopnih jedinica (OCO).
I.3.5 Paran broj uzastopnih nula i paran broj uzastopnih
jedinica (ECZO)
I.3.6 Primjena TFM algoritma na sustavima zadanim pravilom
I.4 SFA-modeli logistiµckih sustava u kaotiµcnom reµzimu
I.4.1 Pravila u kaosu na mahove (LMI)
I.4.2 Nastup kaosa — nedostatnost konaµcnih automata (LMOC)
I.4.3 Statistiµcka stabilnost — LMM sustav
I.4.4 Ostaci strukture u prevladavajućem kaosu (LMNCC)
I.4.5 Osvrt na logistiµcka preslikavanja s 3:997 < r < 4
I.5 Rezime o modeliranju raznorodnih sustava
J Statistiµcka analiza rašµclambenih -stabala logistiµckih sustava
K SFA-grafovi odabranih sustava
K.1 Sustavi zadani pravilom
K.2 Logistiµcko preslikavanje
K.2.1 Kaos na mahove (LMI)
K.2.2 Misiurewiczev parametar (LMM)
L Odabrani ispisi programskog koda
L.1 Popis klasa DSA programa
L.2 Iteracija i binarna izmjera
L.3 Klase stabala
L.4 Klasa morfova
332
Bibliogra…ja
[1] Aho, A.; Hopcroft, J. E.; Ullman, J. D. The Design and Analysis of Computer
Algorithms. Addison-Wesley, Reading, Massachusetts, 1974.
[2] Aho, A.; Hopcroft J. E.; Ullman J. D. Data Structures and Algorithms. Addison-
Wesley, Reading, Massachusetts, 1983, reprinted with corrections 1987.
[4] Bennett, C. H. “On the Nature and Origin of Complexity in Discrete, Homoge-
nous, Locally-Interacting Systems.” Found. of Phys., 16(6): 585–592, 1986.
[7] Blackwell, D.; Koopmans, L. “On the Identi…ability Problem for Functions of
Markov Chains.” Annals of Mathematical Statistics, 28(4): 1011–1015, 1957.
[8] Buhl, M.; Kennel, B. “Statistically Relaxing to Generating Partitions for Ob-
served Time-Series Data.” Physical Review E, 71 (046213), 2005.
[9] Casdagli, M.; Eubank, S; editors. Nonlinear Modeling and Forecasting, vol. XII
of Santa Fe Institute Studies in the Sciences of Complexity. Addison-Wesley,
Reading, Massachusetts, 1992.
[10] Chomsky, N. “Three Models for the Description of Language.” IRE Transac-
tions on Information Theory, 2(3): 113–124, 1956.
[11] Cook, M. “Universality in Elementary Cellular Automata.” Complex Systems
15(1): 1–40, 2004.
[12] Cormen, T. H. at al. Introduction to Algorithms (3rd edition). MIT Press, Cam-
bridge, Massachusetts, 2009.
333
334 BIBLIOGRAFIJA
[13] Cover, T. M.; Thomas, A. J. Elements of Information Theory. John Wiley &
Sons, New York, 1991.
[18] Crutch…eld, J. P.; Young K. “Computation at the Onset of Chaos.” In [86], pp.
223–269 (1990).
[27] Crutch…eld, J. P. “What Lies Between Order and Chaos?” In Art and Com-
plexity (J. Casti, ed.), pp. 31–45. Oxford University Press, 2002.
[30] Eubank, S. G.; Farmer J. D. “Probability, Random Processes and the Statistical
Description of Dynamics.”In Introduction to Nonlinear Physics (L. Lam, ed.),
pp. 106–151. Springer-Verlag, New York, 1997.
[34] Friedman, S. Modeling Causal Interaction between Human Systems and Natural
Systems (lecture notes). Santa Fe Institute, University of California, Berkeley,
2002, http://csc.ucdavis.edu/~cmg/compmech/tutorials.htm (2012).
[36] Hirata, Y.; Judd, K.; Kilminister, D. “Estimating a Generating Partition from
Observed Time Series: Symbolic Shadowing.”Phys. Rev. E, 70(016215), 2004.
[41] Ito, H.; Amari, S.; Kobayashi, K. “Identi…ability of Hidden Markov Processes
and Their Minimum Degrees of Freedom.”IEEE Transactions on Information
Theory, 38(2): 324 –333, 1992.
[42] Kolmogorov, A. N. “A New Metric Invariant of Transient Dynamical Systems
and Automorphisms in Lebesgue Spaces” (original in Russian). Dokl. Akad.
Nauk. SSSR, 119: 861–865, 1958.
[43] Lynch, S. Dynamical Systems with Applications Using MATLAB. Birkhäuser,
Boston, Massachusetts, 2004.
[44] Logoµzar, R. Modeliranje dinamiµckih sustava s pomo´cu stohastiµckih konaµcnih
automata (Modeling of Dynamical Systems by Stochastic Finite Automata). Ma-
gistarski rad, Fakultet elektrotehnike i raµcunarstva, Sveuµcilište u Zagrebu, 1999.
[45] Logozar, R.; Lovrencic, A. “The Modeling and Complexity of Dynamical Sys-
tems by Means of Computation and Information Theories.” Journal of Infor-
mation and Organizational Sciences, 35(2): 173–196, 2011.
[46] Logozar, R. “Recursive and Nonrecursive Traversal Algorithms for Dynamically
Created Binary Trees.”Computer Technology and Application, David Publish-
ing, 3(5): 374–382, 2012.
[47] Logozar, R. “Algorithms and Data Structures for the Modeling of Dynamical
Systems by Means of Stochastic Finite Automata.” Technical Gazette, 19(2):
227–242, 2012.
[48] Moon, F. C. Chaotic and Fractal Dynamics. John Wiley & Sons, New York,
NY, 1992.
µ Uvod u teoriju informacije (II., dopunjeno izdanje). Školska knjiga,
[49] Pauše, Z.
Zagreb, 1989.
[50] Phatak, S. C.; Suresh Rao, S. “Logistic Map: A Possible Random-Number
Generator.”Physical Review E, 51(4): 3670–3678, 1995.
[51] Poincaré, H. J. Les méthodes nouvelles de la mécanique céleste, Vols. 1–3.
Gauthiers-Villars, Paris, 1892, 1893, 1899. (English translation edited by D.
Goro¤, American Institute of Physics, New York, 1993.)
[52] Poincaré, H. J. The Foundation of Science: Science and Method (English Trans-
lation). The Science Press, New York, 1921.
[53] Proof-Wiki article: Euler-Binet Formula; https://www.proofwiki.org (2012).
[54] Rabiner, L. R. “A Tutorial on Hidden Markov Models and Selected Applica-
tions in Speech Recognition.” Proceedings of the IEEE, 77(2): 257–286, 1989.
http://www.cs.ucsb.edu/~cs281b/papers/HMMs%20-%20Rabiner.pdf.
BIBLIOGRAFIJA 337
[62] Stamp, M. A Revealing Introduction to Hidden Markov Models. San Jose State
University, http://www.cs.sjsu.edu/~stamp/RUA/HMM.pdf.
[64] Ulam, S. M.; von Neumann, J. “On Combination of Stochastic and Determin-
istic Processes.” Bulletin of the AMS, 53: 1120–1132, 1947.
[65] Upper, D. R. Theory and Algorithms for Hidden Markov Models and Gener-
alized Hidden Markov Models. Ph.D. dissertation, Mathematics Department,
University of California, 1997 (available at the URL stated in [59]).
[81] Wolfram MathWorld, articles: Rule 30, Rule 110 (Cellular Automata);
http://mathworld.wolfram.com (2012).
[83] Wolfram, S. A New Kind of Science. Wolfram Media Inc., Champaign, 2002.
[86] Zurek, W. H.; editor. Complexity, Entropy and the Physics of Information,
vol. VIII of Santa Fe Institute Studies in the Sciences of Complexity. Addison-
Wesley, Reading, Massachusetts, 1990.
µZivotopis autora
Robert Logoµzar ro†en je u Varaµzdinu 1962. godine. Maturirao je na Gimnaziji Varaµzdin
1980. godine. Diplomirao je na Prirodoslovno-matematiµckom fakultetu Sveuµcilišta u Za-
grebu 1987. godine, stekavši zvanje diplomiranog inµzenjera …zike. Objavio je rad iz po-
druµcja atomske …zike u prestiµznom µcasopisu Physical Review A. 1994. godine upisuje po-
slijediplomski studij raµcunarstva na Elektrotehniµckom fakultetu Sveuµcilišta u Zagrebu (sada
Fakultet elektrotehnike i raµcunarstva), gdje je magistrirao 1999. godine. Radio je kao asi-
stent na kolegijima arhitektura raµcunala i teorija informacije na Fakultetu Organizacije i
informatike u Varaµzdinu, Sveuµcilišta u Zagrebu. Pored raµcunarstva, Robert Logoµzar ak-
tivno se bavi glazbenom tehnologijom i produkcijom. Sada je zaposlen na Veleuµcilištu u
Varaµzdinu u svojstvu predavaµca na studiju multimedije. Tu je uveo nastavu za tri kolegija
iz podruµcja audia i glazbene produkcije. Tako†er, voditelj je kolegija programiranja u jeziku
C++. Robert Logoµzar bavi se programiranjem od srednjoškolskih dana. Ve´cina njegovih
znanstvenih i struµcnih radova izravno je ili neizravno povezana s implementacijom origi-
nalnih primjenskih programa, izradom algoritama i njihovom teorijskom analizom. Clanµ
je IEEE organizacije.
339
Popis autorovih objavljenih radova
(The List of Publications from the Author)
340