You are on page 1of 25

Universitatea POLITEHNICA Bucureti Facultatea de Electronic i Telecomunicaii

Tez de doctorat (rezumat)

REELE FUNCIONALE cu AUTOORGANIZARE


APLICAII ALE REELELOR NK i AUTOMATELOR CELULARE
Zoltan Hascsi

Conductor tiinific: prof. dr. ing. Gheorghe tefan

2001

PREFA

................................................................................................ 2

1.1 MOTIVAII..........................................................................................................................................................2 1.2 DEMERSURI........................................................................................................................................................2 1.3 CONTRIBUII ORIGINALE ...............................................................................................................................3

CAPITOLUL 1.

INTRODUCERE .................................................................. 4

1.1 AUTOMATE CELULARE ...................................................................................................................................4 1.2 AUTOORGANIZAREA CA FENOMEN EMERGENT N SISTEMELE DINAMICE.......................................4 1.3 EVOLUIE I COEVOLUIE .............................................................................................................................4 1.4 COMPLEXITATE ................................................................................................................................................4

CAPITOLUL 2.

AUTOMATE CELULARE ................................................. 5

2.1 STRUCTURA AUTOMATELOR CELULARE...................................................................................................5 2.2 DINAMICA AUTOMATELOR CELULARE ......................................................................................................5 2.3 CLASIFICAREA AUTOMATELOR CELULARE..............................................................................................6

CAPITOLUL 3.

MULTIPLICRI DE IMAGINE N AUTOMATELE CELULARE.......................................................................... 7

3.1 PREDICIA EVOLUIEI AUTOMATELOR CELULARE................................................................................7 3.2 PREDICIA EVOLUIEI AUTOMATULUI CELULAR CU LEGE XOR (LEGEA 150 ).................................7 3.3 PREDICIA AUTOMATULUI CELULAR BIDIMENSIONAL CU LEGE XOR ..............................................8 3.4 MULTIPLICRI DE IMAGINE CU AUTOMATELE CELULARE ...................................................................9

CAPITOLUL 4.

COMPLEXITATEA FUNCIILOR LOGICE............... 11

4.1 COMPLEXITATE STRUCTURAL I COMPLEXITATE FUNCIONAL ................................................11 4.2 EXPRESIILE MINIME ALE FUNCIILOR LOGICE.......................................................................................12 4.3 REPREZENTRI GRAFICE ALE FUNCIILOR LOGICE DE GRADUL 3 ...................................................12 4.4 CLASELE DE ECHIVALEN ALE FUNCIILOR LOGICE DE GRADUL 3 ..............................................13

CAPITOLUL 5.

REELE NK....................................................................... 14

5.1 GRAFURI NK.....................................................................................................................................................14 5.2 REELE BOOLEENE ALEATOARE................................................................................................................14

CAPITOLUL 6.

PLASAREA VLSI .............................................................. 15

6.1 OBIECTIVE I RESTRICII .............................................................................................................................15 6.2 ALGORITMI DE PLASARE ..............................................................................................................................15

CAPITOLUL 7.

PLASAREA VLSI DESCENTRALIZAT ..................... 15

7.1 PROBLEM GENERALIZAT DE PLASARE ...............................................................................................15 7.2 ALGORITMUL DESCENTRALIZAT DE PLASARE ......................................................................................16 7.3 IMPLEMENTARE PARALEL ........................................................................................................................17 7.4 REZULTATE EXPERIMENTALE ....................................................................................................................18

CAPITOLUL 8.

ARTIFICIAL LIFE N ECOART .................................... 21

8.1 ARTIFICIAL LIFE..............................................................................................................................................21 8.2 ECOSISTEMUL ARTIFICIAL...........................................................................................................................21 8.3 EXPERIMENTE N ECOSISTEMUL ARTIFICIAL .........................................................................................22

CAPITOLUL 9.

CONCLUZII FINALE....................................................... 23

BIBLIOGRAFIE SELECTIV ........................................................................... 24

PREFA
Aceast lucrare este rezultatul activitii autorului, att n plan teoretic ct i aplicativ, n domeniul automatelor celulare i al reelelor booleene aleatoare, demers care s-a ntins pe o perioad de peste 6 ani. Contribuiile originale vizeaz i ele ambele laturi, teoretic i practic, unele cu implicaii care depesc cadrul aparent restrns al automatelor celulare i reelelor booleene aleatoare, atingnd probleme de o generalitate sau importan evident. Astfel teza de doctorat abordeaz ntr-un mod cu totul original complexitatea funciilor logice, relaia funcie - structur i dificila dar importanta etap a plasrii n proiectarea circuitelor VLSI. 1.1 MOTIVAII De ce funcional ? n contextul actual economic, tehnic i mai ales ecologic, n care se cer performane mereu mbuntite dar cu costuri din ce n ce mai mici, structurile i sistemele orientate ctre aplicaie capt ntietate n faa celor universale. Nu se poate spune c le vor nlocui pe cele din urm, ci mai degrab le vor completa pentru a le depi neajunsurile. Ultimele decenii au fost marcate de revoluia informaional, penetrarea extraordinar a calculatorului (poate cea mai universal unealt a omului) n aproape toate domeniile de activitate. Dar n acelai timp am asistat i la o explozie de soluii funcionale, antrennd ntr-o coevoluie rapid apariia i dezvoltarea unor domenii noi de cercetare, majoritatea interdisciplinare: ingineria genetic, reelele neurale, sistemele dinamice, algoritmii genetici, geometria fractal, sistemele fuzzy, i multe, multe altele. De ce reele NK i automate celulare ? n rndul acestor soluii funcionale se nscriu i automatele celulare i reelele booleene aleatoare (reele NK). Cele dou structuri au multe caracteristici n comun, prin urmare teoria i aplicaiile acestora sunt n multe puncte juxtapuse. Ca i celelalte domenii enumerate mai sus, istoria lor se limiteaz la ultimele decenii, teoria fiind nc n proces de maturizare, iar aplicaiile abia la nceput. De ce autoorganizare ? Complexitatea aplicaiilor acoperite de aceste domenii a dus nu numai la abordarea funcional, ci i la necesitatea mprumutrii soluiilor pe care Natura le-a gsit, de cele mai multe ori optime, la depirea problemelor pe care i le-a generat singur n evoluia ei de o complexitate nelimitat. Pentru a putea beneficia de ajutorul soluiilor naturale ns, trebuie nelese structura i comportamentul sistemelor naturale, de la cele mai simple, fizice, pn la cele mai complicate, biologice i sociale. O caracteristic general a tuturor sistemelor naturale este autoorganizarea, care n esena ei reprezint capacitatea sistemului de a funciona n fiecare din prile acestuia n condiiile n care informaia se propag n sistem cu vitez finit, limitat absolut de viteza undelor electromagnetice n vid. Majoritatea sistemelor naturale situate la limita superioar a complexitii, manifest o capacitate extraordinar de autoorganizare dei viteza de propagare a informaiei este extrem de mic. Autoorganizarea este prin consecin o caracteristic definitorie a sistemelor artificiale inspirate din natur. De ce reele ? n fine, o alt caracteristic a sistemelor complexe este structura lor distribuit, n care o multitudine de componente relativ simple sunt interconectate ntr-o reea care permite propagarea informaiei ntre prile sistemului, i contribuie la autoorganizarea ntregului. Topologia reelei, care poate fi i ea rezultatul dinamic al autoorganizrii, este n general omogen i izotrop. Att automatele celulare ct i reelele NK sunt n esen reele de automate finite foarte simple, comportamentul neliniar fiind consecina direct a caracterului discret al automatelor. 1.2 DEMERSURI Dei automatele celulare i reelele NK sunt domenii relativ noi, n care cu excepia unor ncercri de pionierat cadrul teoretic i posibilele aplicaii practice s-au conturat abia n ultimele dou decenii, sau poate tocmai pentru c suportul teoretic nu este bine fundamentat, literatura dedicat e martora unui spectru larg de abordri teoretice, uneori contradictorii, dar i a unei panoplii de aplicaii, unele promitoare. Chiar dac bibliografia nu este, i nu poate fi, exhaustiv, autorul a explorat toate curentele majore ale acestor dou domenii. 2

Teza este axat ns pe ideile i aplicaiile originale ale autorului, i nu s-a dorit o monografie a domeniului automatelor celulare i reelelor NK. Sunt trecute n revist doar principalele aspecte teoretice necesare nelegerii ideilor prezentate, fcndu-se de fiecare dat trimitere la lucrrile care trateaz n detaliu problemele respective. Propunerile autorului sunt prezentate alturi de alternativele cunoscute, pentru a stabili contextul obiectiv necesar analizei critice a originalitii acestora. Att studiul teoretic ct i aplicaiile practice au presupus un efort computaional deosebit, necesar dezvoltrii programelor specifice, rulrii acestora (timpul de rulare cumulat este de ordinul a ctorva mii de ore), i analizei rezultatelor, cu programe specializate sau concepute de autor. De multe ori ideile teoretice s-au conturat abia dup analiza rezultatelor experimentale, sau au evoluat n paralel cu dezvoltarea i perfecionarea aplicaiilor. 1.3 CONTRIBUII ORIGINALE n plan teoretic propunerile originale ale autorului sunt: o variant nou de clasificare a funciilor logice, bazat pe aspectele lor geometrice. Se analizeaz corelaia dintre complexitatea algoritmic a funciilor logice i clasele lor de echivalen geometric. distincia ntre complexitatea funcional i complexitatea structural, aducnd ca argument automatele celulare. analiza comportamentului automatului celular cu lege XOR, i a proprietilor acestuia de multiplicare a patternurilor. Teza prezint dou aplicaii originale, cte una din fiecare domeniu abordat: algoritmul de plasare VLSI descentralizat este o propunere inedit, diferit de algoritmii folosii la ora actual n proiectarea VLSI. ecosistemul virtual, chiar dac este un concept larg ntlnit n Artificial Life, a fost folosit n premier ca instrument de studiu al epidemiilor virale. Programele de simulare ale plasrii VLSI i Ecosistemele virtuale (ArtEco i ArtVirus) sunt create de autor n C++ i VisualC. Analiza rezultatelor simulrii acestor aplicaii a necesitat scripturi dedicate n MATLAB. De asemenea programul de generare i clasificare a funciilor logice dup complexitatea lor a fost conceput i optimizat de autor n C++. MULUMIRI Chiar dac urmtoarele fraze sunt ultimele adugate acestei lucri, cu voia cititorului le inserez aici, la nceputul ei, tocmai pentru a sublinia rolul pe care l-au avut cei citai mai jos n finalizarea tezei . Demersurile mele au fost n permanen sprijinite, inspirate i analizate cu o critic neierttoare dar absolut necesar de ctre ndrumtorul meu, profesorul Gheorge tefan. Interesul meu pentru automatele celulare, i n general pentru sistemele dinamice, l are printre iniiatori pe profesorul Florin Munteanu, conductorul Centrului pentru Studii Complexe, cruia i datorez de asemenea deschiderea porilor ctre fractali, sisteme dinamice i teoria haosului. Folosirea Ecosistemul virtual n studiul epidemiilor virale a fost rodul colaborrii cu domnii Alexandru Cristea i Corneliu Zaharia de la Institutul de Virusologie tefan S. Nicolau. Au fost ntotdeauna binevenite ajutorul, sfaturile i sugestiile date de Monica Dasclu, Adrian Rusu, Cristian Ioana, Cristiasn Lupu, Eduard Frantzi, Gheorge Brezeanu, Ioan Drghici, Mircea Bodea, Robert Benea, i nu n ultimul rnd de regretatul Dinu Petrescu. Mulumesc Catedrei de Dispozitive, Circuite i Aparate Electronice, precum i conducerii Facultii de Electronic i Telecomunicaii pentru sprijinul acordat nu numai pentru activitatea mea de doctorat ci i n ntreaga ma activitate didactic. i mai mult dect oricui i mulumesc Sorinei pentru c fr dragostea ei aceast tez nu ar mai fi avut nici un sens.

CAPITOLUL 2.

INTRODUCERE

2.1 AUTOMATE CELULARE Un automat celular este o reea regulat de automate finite simple identice. Fiecare automat finit reprezint o celul, i este caracterizat de un numr redus de stri. Reeaua regulat interconecteaz automatele finite, caracteristica ei esenial fiind localitatea conexiunilor. Aceast caracteristic deosebete automatele celulare de reelele neurale i de reelele booleene aleatoare care permit conexiuni ntre oricare noduri ale reelei. Simplitatea i localitatea sunt dou caracteristici benefice automatelor celulare i n teorie i n practic. Ele faciliteaz studiul teoretic al acestora, i deschid perspectivele realizrii fizice a automatelor celulare de dimensiuni mari [19]. Complexitatea funcional a AC este nelimitat fiind posibi realizarea unor structuri de calcul arbitrar de complexe, cel mai celebru exemplu fiind Game of Life [10]. Studiul formal al automatelor celulare combin instrumentele teoretice ale statisticii, teoriei sistemelor dinamice, teoriei calculabilitii i teoriei limbajelor formale [14]. 2.2 AUTOORGANIZAREA CA FENOMEN EMERGENT N SISTEMELE DINAMICE Un sistem care manifest autoorganizare este capabil, fr nici o influen extern explicit, s-i mbunteasc performana pe parcursul evoluiei sale ghidate de obiectivul sau obiectivele urmrite. n general autoorganizarea se refer la formarea spontan a unor structuri organizate sau a unor patternuri comportamentale regulate, plecnd de la condiii iniiale aleatoare. Este un fenomen emergent dar determinist, fiind rezultanta interaciunilor locale, i este asimilat deseori cu tranziia de la dezordine la ordine [8]. Autoorganizarea este un fenomen universal, caracteristic tuturor sistemelor formate din multe componente asemntoare i guvernate de legi simple. 2.3 EVOLUIE I COEVOLUIE Evoluia este considerat o caracteristic a viului, dar n ultimii ani conceptul a fost extins i la alte domenii n care biologicul nu mai este (cel puin aparent) hotrtor. Se poate vorbi de evoluie n contextul sistemelor dinamice cuplate, organizarea fiecrui sistem n parte fiind condiionat de dinamica celorlaltor sisteme. Autoorganizarea la nivelul sistemului este acum completat cu evoluia ca fenomen emergent la nivelul ansamblului de sisteme (o autoorganizare de nivel superior). Fiecare component a ansamblului se adapteaz la modificrile evolutive ale celorlaltor componente, evoluia acesteia afectnd la rndul ei toate celelalte componente. Autoorganizarea i evoluia sunt foarte utile n abordarea unor probleme care sunt dificil sau imposibil de rezolvat din punct de vedere practic. Ele nu dau soluia exact a acestor probleme, dar asigur cu o probabilitate foarte mare o soluie bun n limite rezonabile de timp i de resurse alocate. 2.4 COMPLEXITATE Complexitatea unui obiect sau fenomen este deseori asimilat gradului nostru de nelegere a acestuia. Pentru a elimina ambiguitatea dat de natura subiectiv a percepiei umane, complexitatea este definit ntr-un cadru formal adecvat, care s permit o apreciere universal. Plecnd de la postulatul lui Church, care stipuleaz c orice proces natural ce poate fi formalizat algoritmic poate fi i simulat pe o main Turing universal, se poate da o definiie riguroas i obiectiv a complexitii [1]. Observatorul imparial este maina universal Turing sau, mult mai practic, calculatorul secvenial cu memorie cu acces aleator (RAM). Complexitatea unui sistem fizic poate fi definit prin timpul i/sau resursele de calcul necesare pentru predicia acestuia. Complexitatea este raportat la dimensiunea sistemului. ntr-o perspectiv algoritmic, dac unui sistem fizic i se asociaz un model algoritmic (program), complexitatea algoritmic a modelului caracterizeaz, n limitele aproximrilor fcute, sistemul fizic modelat. Problema prediciei unui sistem fizic const n determinarea strii acestuia pentru orice moment de timp viitor, date fiind condiiile iniiale. Pentru un sistem iterativ (timpul este discret) predicia const n 4

determinarea strii acestuia pentru oricare pas ulterior strii iniiale date. O predicie eficient presupune calculul strii dorite ntr-un timp mai scurt dect cel necesar atingerii strii respective prin simpla iteraie a sistemului. Automatele celulare sunt structuri simple, cu reguli simple de construcie, i cu toate acestea evoluia lor este adeseori imprevizibil. Acest paradox (structur simpl care genereaz o evoluie complex) a impus introducerea conceptului de complexitate funcional, pentru a face distincia ntre structuri identice dar cu dinamic calitativ diferit. Complexitatea structural este dat de complexitatea descrierii sistemului, n timp ce complexitatea funcional a unui sistem este dat de complexitatea descrierii evoluiei acestuia, care poate fi asociat complexitii prediciei.
CAPITOLUL 3.

AUTOMATE CELULARE

3.1 STRUCTURA AUTOMATELOR CELULARE Automatele celulare [4] [14] sunt sisteme cu structur spaial discret (celule), i evoluie discret (automat), caracterizate prin: - paralelism masiv (numr mare de celule) - simplitatea celulelor (automate finite cu numr mic de stri) - localitatea conexiunilor ntre celule Un automat celular (AC) este o colecie de automate finite foarte simple conectate printr-o reea regulat, conexiunile fiind limitate la o vecintate local (Figura 1). Reeaua se poate extinde pe o dimensiune, pe dou, trei sau mai multe. Vecintatea unei celule se definete ca mulimea celulelor (de obicei apropiate fizic de aceasta) a cror stare influeneaz direct tranziia acesteia.
qS CLC R qC a b qD

qi-1

qi

qi+1

Figura 1 Automat celular unidimensional cu vecintate 3. (a). Fiecare celul este conectat numai la celulele vecine. Vecintatea celulei qi este reprezentat cu linie punctat. (b) Celula este un automat finit ce poate fi implementat cu un registru pentru memorarea strii curente (R) i un CLC pentru calculul strii urmtoare.

Automatul finit este n general foarte simplu, tranziia lui depinznd numai de starea curent a celulelor dintr-o vecintate mic. Funcia lui de tranziie este numit lege [de tranziie]. n general toate celulele unui AC sunt identice, funcia de tranziie comun tuturor celulelor fiind numit legea automatului celular. Variante ale modelului clasic de AC: legea de tranziie difer de la o celul la alta [11], sau tranziiile sunt asincrone. Aceste structuri, ca i modelul de baz al automatelor celulare, se nscriu printre modelele neconvenionale de calcul [13], majoritatea fiind demonstrate ca fiind capabile de calcul universal [10]. 3.2 DINAMICA AUTOMATELOR CELULARE Tranziia automatelor finite ale AC are loc n paralel pentru toate celulele. AC este un sistem dinamic discret, care poate fi caracterizat printr-un spaiu discret al strilor (globale) n care se pun n eviden tranziiile dintre acestea. Starea global a automatului celular este ansamblul strilor tuturor celulelor. O traiectorie n spaiul strilor corespunde unui ir de tranziii globale dintr-o stare global 5

iniial. Spaiul strilor este caracterizat prin atractori i bazinele lor de atracie. AC este determinist, dar traiectoriile pot converge, funcia de tranziie nefiind n general inversabil. Evoluia unui AC poate fi reprezentat sugestiv prin listarea strilor globale succesive. Efectul vizual este amplificat dac strile sunt alipite formnd o imagine spaio-temporal a evoluiei (Figura 3). Starea unei celule la momentul de timp t depinde de strile celulelor din vecintatea ei la momentul t-1, care la rndul lor depind de strile celulelor din vecintile corespunztoare la momentul t-2, .a.m.d. Extrapolnd pn la momentul iniial se obine aa numitul con de lumin al celulelor care determin starea celulei date pentru t iteraii (Figura 2). Denumirea de con de lumin sugereaz viteza maxim cu care poate fi "transmis" influena unei celule n automatul celular.
0

t-2 t-1 t

Figura 2 Conul de lumin pentru t iteraii al unui AC unidimensional cu vecintate de trei celule. Starea celulei din extrema stnga sus a conului are nevoie de t iteraii pentru a influena starea celulei aflat la distana t (care este chiar celula din vrful conului de lumin).

3.3 CLASIFICAREA AUTOMATELOR CELULARE Din punct de vedere structural AC pot fi clasificate dup topologia reelei de interconectare, forma legilor de tranziie, distribuia parametrilor structurali n reeaua de automate, etc. Fenomenologic, AC se clasific dup complexitatea secvenei spaio-temporale generate, sau dup proprietile bazinelor de atracie i traiectoriilor n spaiul strilor globale. n literatur s-a impus o clasificare neformal, calitativ, clasificarea lui Wolfram [14], bazat pe caracteristicile statistice ale dinamicii automatelor celulare: clasa I : automatele converg repede ctre un punct fix clasa II : atractori simpli clasa III : atractori haotici clasa IV : tranziii de lungime arbitrar AC din clasa IV sunt de complexitate maxim, capabile de calcul universal. Distribuia acestor clase n superspaiul format de legile posibile ale unui AC este subiectul a numeroase studii, n special grania care desparte AC periodice de cele haotice n acest superspaiu, zon unde s-ar situa cele mai complexe AC. Clasificrile fenomenologice sunt n general empirice, bazate pe analiza evoluiei AC. Problema clasificrii fenomenologice plecnd de la forma legii de tranziie rmne nerezolvat datorit lipsei unui parametru (sau set de parametri) care s permit o echivalen ntre categoriile structurale i cele fenomenologice, n special pentru AC complexe i haotice. Neajunsurile teoriei AC fac dificil proiectarea acestora n contextul unei aplicaii date. Singura cale de a gsi structuri eficiente pentru aplicaii n timp real se bazeaz pe explorarea neconvenional a superspaiului legilor, cu ajutorul algoritmilor genetici. n acest mod s-au obinut pentru anumite aplicaii structuri de AC mai eficiente chiar dect orice algoritm proiectat. Aceste structuri sunt pur funcionale pentru c ele permit rezolvarea doar a problemei n cauz, fiind lipsite de elementele specifice unei structuri de calcul generale. 6

CAPITOLUL 4.

MULTIPLICRI DE IMAGINE N AUTOMATELE

CELULARE
4.1 PREDICIA EVOLUIEI AUTOMATELOR CELULARE Predicia evoluiei unui AC presupune calcularea strii unei celule oarecare la un moment de timp viitor arbitrar. Predicia n adevratul sens al cuvntului implic existena unei modaliti de calcul mai rapide dect simpla iteraie a automatului. Un automat celular este predictibil dac exist un algoritm de calcul a strii unei celule arbitrar alese la un moment de timp arbitrar, al crui timp de calcul este ntr-o clas inferioar timpului necesar iterrii AC. Dac nu exist un asemenea algoritm atunci automatul celular este impredictibil. O categorie foarte larg de AC (liniare, quasiliniare) au o evoluie predictibil i de complexitate redus n ciuda aparentei complexiti a configuraiilor sau a imaginii spaio-temporale [7]. Complexitatea configuraiei iniiale este cea care determin complexiatea dinamicii multor automate celulare (Figura 3). Pentru aceste AC se poate gsi algoritmul de predicie plecnd de la legea automatului, exploatnd liniaritatea funciilor de tranziie. 4.2 PREDICIA EVOLUIEI AUTOMATULUI CELULAR CU LEGE XOR (LEGEA 150) Automatul celular elementar cu legea de tranziie 150 este intrigant, pe de o parte prin simplitatea legii (starea viitoare a fiecrei celule este egal cu suma modulo 2 a strilor vecintii, ceea ce corespunde unui XOR de 3 variabile), i pe de alt parte prin caracterul complex al evoluiei (Figura 3).

Figura 3 Dinamica evoluiei AC cu legea de tranziie numrul 150 pentru 350 de iteraii, pentru o configuraie iniial simpl (a) - o singur celul n 1, respectiv complex (b) - aleatoare cu o distribuie uniform.

Legea 150 a automatelor celulare elementare este liniar, prin urmare acest automat este predictibil. n tez autorul prezint o modalitate proprie de determinare a configuraiei automatului celular dup un numr arbitrar de iteraii pentru orice configuraie iniial, i se demonstreaz c timpul de calcul (timpul de predicie) este cu mult mai mic dect timpul necesar simulrii automatului celular. Starea unei celule dup t = 2K iteraii este dat de relaia: t 0 0 c 0 = c t c 0 ct0 Predicia pentru un numr oarecare de iteraii folosete complexitatea constant a calculului strii unei celule pentru un numr de iteraii egal cu o putere a lui 2 (t = 2K). Conul de lumin al celulei pentru 7

care se face predicia se mparte n seciuni cu adncimi egale cu puterile lui 2, rezultnd un numr logaritmic de seciuni pentru care trebuie calculat starea celulelor [20]. Aceast secionare se poate realiza: dinspre configuraia iniial, de la baza conului de lumin (Figura 4 a); dinspre starea final calculat, de la vrful conului de lumin (Figura 4 b);

t1

t2

t2

t1

Figura 4 Conul de lumin pentru t iteraii al unui automat celular elementar cu legea 150. Conul de lumin se descompune n seciuni de adncime 2i, pentru fiecare bit ai nenul al numrului t scris n binar. Secionarea conului se face de la baza (de sus) a), sau de la vrf (de jos) b), n ordinea descresctoare a rangului biilor numrului t

n ambele variante (secionare de sus i secionare de jos) s-a calculat limita superioar a timpului necesar prediciei pentru un numr arbitrar de iteraii, care este de ordinul O(t), inferioar timpului O(t2) necesar simulrii automatului celular pe o main secvenial de calcul. Predicia poate fi realizat pe o main paralel n maximum O(log t) pai folosind O(t) procesoare, mult mai repede dect prin iterarea AC care necesit O(t) iteraii. Metoda de predicie propus este definit pentru un AC infinit. Analiza evoluiei unui AC finit se face pe AC infinit echivalent, obinut prin repetarea periodic a automatului iniial, la care n prealabil s-a desfcut conexiunea ntre celulele extreme, i a crui configuraie iniial este obinut prin repetarea configuraiei iniiale a AC finit. Evoluia n timp a strii unei celule din AC infinit echivalent este identic cu evoluia strii celulei corespunztoare din AC finit. 4.3 PREDICIA AUTOMATULUI CELULAR BIDIMENSIONAL CU LEGE XOR Autorul extinde metoda propus pentru a cuprinde cazul AC multidimensionale cu lege XOR. Ca i n cazul automatului celular unidimensional, pentru automatul celular bidimensional se poate defini conul de lumin ca fiind succesiunea temporal a strilor celulelor care determin starea celulei din vrful conului. Conul de lumin este tridimensional cu vrful n celula a crei stare la momentul t depinde de starea celulelor de la baza conului la momentul iniial. Dac timpul pentru care se dorete predicia este o putere ntreag a lui 2, atunci starea celulei la momentul t = 2K este suma modulo 2 a strilor iniiale ale acesteia i a altor 4 sau 8 celule aflate la marginea bazei conului de lumin. Starea unei celule dup un timp oarecare t se poate calcula mult mai repede dect prin simulare, ntr-un timp O(t) pe o main secvenial, prin metoda secionrii conului de lumin descris pentru automatul celular unidimensional. Complexitatea liniar este pe de alt parte limita inferioar a complexitii AC, timpul minim de predicie fiind limitat inferior de timpul necesar citirii configuraiei iniiale care este proporional cu numrul de celule de la baza conului de lumin. Astfel pentru orice algoritm de predicie secvenial: TPREDICTIE O(t ) 8

a. t = 47

b. t = 147

Figura 5 Evoluia automatului celular bidimensional cu legea de tranziie sum modulo 2. Automatul celular are 127 x 127 celule binare cu vecintate von Neuman. Configuraia iniial are o singur celul n 1 (cea din centru). Configuraia AC dup 47 de iteraii (a) i 147 de iteraii (b).

AC cu lege sum modulo este un automat extrem de simplu, dei la prima vedere comportamentul acestuia este interesant i aparent complex. Aplicnd metoda secionrii se poate determina eficient i starea global a AC la un timp viitor arbitrar. Timpul necesar de predicie global este O(t logt) pe o main secvenial i O(logt) pe o main paralel cu O(t) procesoare. 4.4 MULTIPLICRI DE IMAGINE CU AUTOMATELE CELULARE Legea sum modulo 2 (XOR) a fost de la nceput remarcat pentru curioasa sa capabilitate de a multiplica la infinit orice pattern pe un automat de dimensiune infinit. Acest comportament este ns complet predictibil i el se bazeaz pe proprietile legii sum modulo 2 descrise anterior (Figura 6). Dac ntreg patternul iniial este inclus ntr-un ptrat cu latura 2K, atunci patternul iniial se va regsi dup 2K iteraii n cele patru ptrate de latur 2K adiacente primului. Configuraia fiecrui ansamblu ptrat de celule cu latura 2K, dup 2K iteraii poate fi dedus ca suprapunerea modulo 2 a configuraiilor iniiale ale acestuia i ale ptratelor adiacente (Figura 7). Multiplicarea, translaia i interferena patternurilor poate fi uor analizat dac automatul celular se partiioneaz n blocuri ptrate cu latura 2K (K > P, unde 2P este cea mai mic putere a lui 2 mai mare dect diametrul patternului iniial). Starea fiecrui bloc se consider 1 dac patternul este reprodus ntocmai, i 0 dac configuraia strilor este diferit de cea a patternului iniial. Ansamblul de blocuri este asimilat unui alt automat celular (redus) cu aceeai lege sum modulo 2. O iteraie a AC redus corespunde unui numr de 2K iteraii ale AC iniial. La t = 0 strile AC sunt nule cu excepia patternului iniial, prin urmare AC redus va avea 1 doar ntr-o singur celul, corespunztoare blocului n care se afl patternul iniial. Dup un numr de T iteraii, unde T poate fi descompus n scevene de 2j iteraii, j > K, starea global a automatului celular va cuprinde numai patternuri identice cu cel iniial, poziionate n blocurile ce corespund celulelor n 1 ale automatului celular redus.

Figura 6 Evoluia AC cu vecintate von Neumann i lege sum modulo 2. AC este iniializat cu o singur celul n 1 (celula din centru). Starea AC dup t = 8 = 23 iteraii (a), respectiv t = 12 = 23 + 22 iteraii (b). n partea dreapt sunt artate conurile de lumin ale celor cinci celule nenule din stnga pentru ultimele t = 4 = 22 iteraii. n punctele de intersecie ale acestora starea final a celulelor este 0 (1 + 1 mod 2).

2P

Figura 7 a) Starea unei celule dup 2K iteraii depinde doar de starea ei iniial i de starea iniial a celulelor din cele patru vrfuri ale bazei conului ei de lumin. n figur este desenat conul de lumin al unei celule (celula nnegrit din stnga). Starea ei iniial era 0, dar unul din vrfurile conului ei de lumin (pentru 2K iteraii) aparine patternului iniial. Patternul iniial este format din celulele a cror stare iniial este nenul. n cazul de fa patternul iniial este numrul 9 din centru. b) Starea fiecrei celule din ptratul central (cu linie ngroat) dup 2P iteraii depinde doar de starea iniial a celulelor corespunztoare din cele cinci ptrate (este suma modulo 2 a strilor iniiale). Patternul din ptratul central este o suprapunere modulo 2 a patternurilor iniiale din cele cinci ptrate. La momentul iniial doar ptratul din dreapta avea celule cu stri nenule (aici se afl imaginea iniial).

10

CAPITOLUL 5.

COMPLEXITATEA FUNCIILOR LOGICE

Complexitatea AC este dificil de judecat dac ne limitm doar la conceptul clasic de complexitate. AC sunt un exemplu, poate chiar cel mai bun, de sistem cu structur foarte simpl dar cu un comportament extrem de complex. Msurile clasice ale complexitii nu sunt satisfctoare pentru descrierea acestor sisteme. 5.1 COMPLEXITATE STRUCTURAL I COMPLEXITATE FUNCIONAL Dou automate celulare identice ca topologie i cu legi asemntoare se pot situa la poluri opuse din punct de vedere al complexitii dinamicii lor. Se pot gsi suficiente perechi de automate celulare aproape identice, n care unul evolueaz rapid ctre o stare stabil i cellalt are o traiectorie indefinit pseudoaleatoare prin spaiul strilor (Figura 8).

legea 22 = 000101102

legea 104 = 011010002

Figura 8 Legea de tranziie i imaginea spaio-temporala a evoluiei pentru dou AC cu structur aproape identic pentru aceeai configuraie iniial.

Descrierea structurii anui automat celular ne spune prea puin despre dinamica automatului celular. ncercrile de a extrage secretele dinamicii automatelor celulare din descrierea structural au fost n general nesatisfctoare. Pornind de la aceste observaii, ca i de la rezultatele obinute de autor n clasificarea bazat pe proprietile geometrice ale funciilor de tranziie, autorul a simit nevoia definirii separate a complexitii unui automat celular pentru structura, respectiv funcia acestuia [25]. Distingem astfel o complexitate structural i o complexitate funcional. Complexitatea funcional este rezultatul structurii, deci este cumva legat de complexitatea structural, pentru c automatul celular este determinist. Insuccesul ncercrilor de a gsi msuri ale complexitii dinamicii automatelor celulare derivate din structura, respectiv legea de tranziie, ne ndreptesc s definim separat complexitatea funcional a automatului celular. Pn acum, singura modalitate general de a releva complexitatea funcional a unui automat celular este de a urmri dinamica acestuia i de a descrie complexitatea imaginii ei spaio-temporale. Altfel spus n general nu exist o cale mai rapid de a descrie dinamica unor automate celulare dect simularea direct a acestora. S-ar putea ca n cele din urm s nu existe nici o relaie universal ntre structur i funcie n afara simulrii. Acest posibil rezultat ar putea fi pus n legtur cu teorema incompletitudinii a lui Gdel i cu limitele matematicii [1]. Analog teoremei de incompletitudine din aritmetic am putea specula c nici un numr finit de parametri nu este suficient pentru a clasifica corect orice automat celular cu un numr arbitrar de stri i un diametru arbitrar al vecintii. 11

5.2 EXPRESIILE MINIME ALE FUNCIILOR LOGICE Expresia logic este o compunere de operaii logice ntre variabile logice. Ea poate fi scris ca un ir de simboluri. Ordinea de compunere a operaiilor logice, adic ordinea n care se face evaluarea expresiei logice, este reprezentat cu ajutorul parantezelor. O expresie logic binar conine doar operaii unare sau binare. O expresie logic exclusiv binar are numai operatori binari. Orice expresie logic binar poate fi transformat ntr-o expresie logic exclusiv binar cu acelai numr de variabile i de operatori, prin transformarea operatorului de negare n operator SAUEXCLUSIV (sau SAU-EXCLUSIV-NEGAT). Lungimea unei expresii logice este egal cu numrul de simboluri. Deoarece numrul de paranteze, respectiv de operanzi, este direct proporional cu numrul de operatori, lungimea expresiilor logice exclusiv binare poate fi cuantizat direct prin numrul operatorilor logici ai expreisiei:

L(E) = nr operatori Complexitatea unei funcii logice se poate msura dup lungimea celei mai scurte expresii logice a ei. Complexitatea este definit n raport cu un set de operatori. Setul de operatori logici cu ajutorul cruia se poate gsi o expresie finit pentru orice funcie logic se numete set complet. Complexitatea unei funcii logice pentru un set dat de operatori logici se poate determina exact genernd expresiile logice ncepnd cu lungimea 0, i cutnd exaustiv prin expresiile logice de lungimi date din ce n ce mai mari.
5.3 REPREZENTRI GRAFICE ALE FUNCIILOR LOGICE DE GRADUL 3 Pentru funciile logice de trei variabile mulimea de definiie B3 poate fi reprezentat n spaiul tridimensional pe sfera unitate, sau n plan prin proiectia bidimensional a suprafeei tridimensionale a sferei (Figura 9). Pe diagrama VK laturile opuse sunt identice reprezentnd acelai semidiametru al sferei. Funciile logice de trei variabile le vom grupa n clase de echivalen dup forma geometric a suprafeei funciei. Funciile dintr-o clas de echivalen difer doar prin poziia relativ a valorilor de 1 logic pe sfera tridimensional, echivalena fiind dat de transformrile de rotaie i reflexie. Pe diagrama Veitch-Karnaugh transformrile care duc la suprafee echivalente sunt translaiile, reflexiile, i schimbarea diametrului dup care se face tietura sferei, toate aceste transformri fiind de fapt reprezentrile n plan ale rotaiilor tridimensionale.

Figura 9 Exemplu de dou funcii logice echivalente din punct de vedere geometric. Imaginea din dreapta se obine din cea din stnga prin combinarea a dou rotaii.

12

5.4 CLASELE DE ECHIVALEN ALE FUNCIILOR LOGICE DE GRADUL 3 Autorul propune o clasificare a funciilor logice bazat pe numrul de puncte n care funcia are valoarea 1 i distribuia spaial a acestora. Funciile care au majoritatea valorilor logice 1 au fost plasate n clasele de echivalen geometric dup numrul i distribuia punctelor n care ele au valoarea 0. Expresiile exclusiv binare minimale peste setul complet de operatori binari ale unei funcii logice i ale acelei funcii negate, au aceeai lungime. Studiul autorului a scos n eviden faptul c funciile logice din aceei clas de echivalen au aceeai complexitate peste setul tuturor operatorilor binari (Tabelul 1). clasa de echivalen 0 1 2a 2b 2c 3a 3b 3c 4a 4b 4c 4d 4e complexitatea (nr operatori) 0 2 1 2 3 2 3 4 0 3 1 4 2 descrierea geometric - suprafa de 0 puncte - suprafa de 1 punct - 2 puncte la distan de 1 (termen de 2 puncte) - 2 puncte la distan de 2 - 2 puncte la distan de 3 - 2 termeni de 2 puncte intersectai ntr-un punct - un termen de 2 puncte i un punct la o distan de 2 - suprafa de 3 puncte la o distan de 2 ntre fiecare - termen de 4 puncte (semisfer) - 2 termeni de 2 puncte la o distan de 1 (adiaceni) - 2 termeni de 2 puncte la o distan de 2 3 termeni de 2 puncte intersectai n acelai punct 2 termeni de 2 puncte intersectai ntr-un punct, i un punct la o distan de 2 de fiecare dintre termeni 4 puncte la o distan de 2 ntre fiecare diagrama VK a unei funcii reprezentative

4f

Tabelul 1 Complexitatea claselor de echivalen ale funciilor logice de gradul 3 peste setul tuturor operatorilor binari. Complexitatea unei funcii este egal cu numrul de operatori din expresia exclusiv binar minimal.

13

CAPITOLUL 6.

REELE NK

Reelele booleene aleatoare [5] [6] au fost introduse de biologul Stuart Kauffman pentru simularea unor procese de autoorganizare la nivel molecular i celular. Premisa de la care a plecat Kauffman este c multe fenomene de autoorganizare n sistemele vii au o esen profund care transcede particularitile structurale ale sistemului n cauz, fiind o trstur comun unei clase mult mai generale de sisteme. Ipoteza lui Kauffman este c reelele booleene aparin acestei clase generale, prin urmare studiul detaliat al comportamentului lor poate releva legiti valabile i n cazul sistemelor complexe vii. 6.1 GRAFURI NK Un graf aleator G = (N,K) este o mulime de N noduri n care fiecare nod este conectat n medie la alte K noduri alease aleator. Un graf NK aleator este un graf aleator n care fiecarui nod i se asociaz o variabil de stare, i o funcie de evaluare (fitness function) a crei valoare depinde de starea local i de strile celor K noduri conectate direct la acesta. Media celor N funcii este o funcie global de evaluare a grafului a crei valoare este dat de ansamblul tuturor strilor. Aceast funcie global de evaluare este un scalar, formnd un hiperplan peste spaiul strilor grafului (o stare a grafului este vectorul strilor tuturor nodurilor componente). Forma acestui hiperplan depinde de gradul de interconexiune ntre noduri, K. Pentru valori extreme ale lui K hiperplanul este fie simplu cu un singur maxim, fie este total aleator cu multe maxime i minime locale. Valorile moderate ale lui K dau un aspect rugos, cu o distribuie fractal a maximelor locale i a caracteristicilor acestora. 6.2 REELE BOOLEENE ALEATOARE Dac un graf NK aleator are posibilitatea de a-i modifica strile nodurilor obinem o reea NK aleatoare (RNK). Starea fiecrui nod se modific n funcie de starea nodurilor conectate. O reea boolean aleatoare (random boolean network) este o RNK n care fiecare nod are asociate o variabil logic de stare i o funcie logic care determin tranziia ei. Reelele NK pot fi - statice, dac nodurile corespund doar unor funcii logice combinaionale; - dinamice, cnd nodurile permit i memorarea variabilelor de stare; Cele dou moduri sunt fundamental diferite din punct de vedere comportamental, observaie general valabil pentru orice sistem paralel. Dinamica evoluiei RNK depinde de valorile parametrilor N i K. Dac se genereaz aleator RNK cu parametrul K/N din ce n ce mai mare se constat c evoluia reelelor cu N/K mic este simpl (punct fix sau atractor ciclic scurt), pe cnd atractorii reelelor cu conectivitate mare sunt haotici. ntre cele dou domenii de reele NK (simple, respectiv haotice) apare o tranziie de faz, n zona creia comportamentul RNK este cel mai complex. Perturbaiile care pot afecta o RNK sunt de dou feluri: fenomenologice structurale Dac perturbaiile fenomenologice afecteaz doar traiectoriile n spaiul strilor unui sistem dat, n schimb perturbaiile structurale modific aspectul spaiului strilor prin alterarea atractorilor i a bazinelor de atracie. ntr-un ansamblu de RNK fiecare reea are un numr mediu de C de conexiuni cu alte reele. n funcie de numrul de conexiuni externe o RNK din cadrul ansamblului de reele este: slab conectat, dac C < N puternic conectat, dac C > N Gradul de interconexiune al reelelor afecteaz dinamica fiecreia. Dinamica unei reele puternic conectate este instabil, pe cnd o reea slab conectat are o dinamic autonom, puin influenat de evoluia reelelor cu care este legat. 14

CAPITOLUL 7.

PLASAREA VLSI

7.1 OBIECTIVE I RESTRICII Plasarea (placement) este una din etapele proiectrii unui circuit electronic, considerat ca ansamblu de uniti funcionale. Integrarea pe scar larg, i imperativul mririi numrului de componente pe cip au ntrit rolul plasrii n gestiunea spaiului restrictiv i optimizarea altor parametri critici. Obiectivele urmrite la plasare se concretizeaz prin minimizarea unei funcii cost, care are ca argumente parametrii critici ai plasrii. Restriciile care influeneaz plasarea sunt de natur geometric, electric i structural. Obiectivul major al plasrii este gsirea poziiilor optime ale unitilor funcionale (module), n limitele suprafeei disponibile, din punct de vedere al lungimii traseelor conexiunilor ntre celule. 7.2 ALGORITMI DE PLASARE Complexitatea problemei plasrii a dus la apariia unui numr mare de algoritmi, acoperind un spectru foarte larg de moduri de abordare [9]. Se pot distinge dou clase mari de algoritmi de plasare dup modul general de tratare a problemei: 1. algoritmi constructivi 2. algoritmi iterativi Algoritmii constructivi plaseaz modulele unul cte unul cutnd pentru fiecare cea mai bun poziie ntre locurile disponibile i minimiznd lungimea conexiunilor lui cu modulele deja plasate. Algoritmii iterativi pleac de la o plasare oarecare a modulelor, la fiecare iteraie modificnd poziia unor module cu scopul reducerii funciei cost. Modelele principale folosite de algoritmii de plasare sunt: 1. modelul forelor elastice 2. bi-partiionarea regresiv 3. modele stohastice 4. reele neurale 5. algoritmi genetici 6. metode hibride
CAPITOLUL 8.

PLASAREA VLSI DESCENTRALIZAT

Autorul propune o abordare nou a problemei plasrii, care poate fi aplicat uor pentru majoritatea algoritmilor de plasare (inclusiv cei prezentai n capitolul precedent). Ideea de baz este urmrirea optimelor locale, corelaia acestora ducnd indirect la obinerea unei soluii globale bune. Avantajele localismului sunt mari: funcia de cost local este simpl i nu depinde de dimensiunea problemei, cutarea local se face de asemenea n timp constant, iar soluia local este exact. Soluia global este rezultatul autoorganizrii soluiilor locale sub presiunea unor restricii locale derivate din restriciile generale. Validitatea acestei abordri a fost testat pe o variant simpl a problemei plasrii care s pun n lumin aspectele eseniale, problema generalizat de plasare. 8.1 PROBLEM GENERALIZAT DE PLASARE Modulele se consider identice i de form ptrat. Acestea sunt interconectate din punct de vedere electric conform unei liste de conexiuni (netlist). Conexiunile sunt aleatoare. Parametrii problemei generalizate de plasare sunt numrul de module N i numrul mediu de conexiuni per modul, K. Caracterul aleator al listei de conexiuni asigur o acoperire uniform a spaiului posibilitilor de interconectare, necesar unei tratri statistice. O list de conexiuni aleatoare este total necorelat, prin urmare rezultatele obinute n simulrile prezentate acoper cazul cel mai defavorabil de plasare. Cele N module trebuiesc amplasate n limitele unui dreptunghi cu laturile l n i l m, unde l este latura unui modul (Figura 10). Aceaste simplificare reduce problema plasrii la amplasarea unui set de puncte interconectate pe o reea rectangular, sau altfel spus redesenarea unui graf pe o reea rectangular. 15

Figura 10 Posibilitile de repoziionare ale modulelor sunt uneori restricionate. Padurile trebuiesc plasate pe marginea cipului: modulul C nu poate fi deplasat dect pe lateral.

8.2 ALGORITMUL DESCENTRALIZAT DE PLASARE


procedura PLASARE_DESCENTRALIZATA do for (fiecare modul ales o singura data random/secvential) calculeaza functia cost locala pentru toate pozitiile din vecinatatea modulului plaseaza modulul in pozitia cu functia cost locala minima until (nici o imbunatatire)

Algoritmul descentralizat de plasare urmrete minimizarea funciilor cost locale, prin poziionarea modulelor numai n funcie de conexiunile lor directe, neglijnd efectele indirecte cum ar fi dislocarea altor module (Figura 11). Reducerea funciei cost globale este un efect emergent care poate fi pus pe seama autoorganizrii reelei de module sub influena funciilor cost locale.
A A B

Figura 11 Efectul antagonist al funciilor cost locale. Regruparea modulelor conectate la A n proximitatea lui fizic le poate afecta funciile cost. ncercarea de a aduce modulul B n proximitatea modulului A mrete lungimea conexiunilor primului.

Dou efecte majore pot apare cnd se minimizeaz o funcie cost local: o alt funcie cost local se poate degrada (repoziionarea unui modul se face prin dislocarea altuia. Acesta din urm poate avea n noua poziie conexiuni mai lungi). modificarea hiperspaiului altor funcii cost locale (deplasarea unui modul modific aspectul hiperplanelor modulelor conectate la acesta) Al doilea efect este cel care st la baza autoorganizrii modulelor. Funcia cost local este definit de poziia modului n raport cu modulele de care este conectat, considerate fixe. Toate poziiile posibile n raport cu aceste module formeaz un spaiu n care are loc minimizarea (cazurile n care poziiile 16

corespund cu cele ale modulelor considerate fixe necesit o tratare particular, dar aceasta nu modific calitativ ideea prezentat). Peste acest spaiu valorile funciei cost formeaz un hiperplan. Minimizarea corespunde unui traseu pe acest hiperplan ctre minimul global al funciei cost locale. Funcia cost local fiind simpl se poate face o cutare exhaustiv n acest spaiu. Dac unul din modulele considerate fixe i modific poziia, aspectul hiperplanului funciei sale cost se modific! Un modul fix care se afla n minimul global al hiperplanului su se poate gsi dup aceast modificare a nsi aspectului hiperplanului ntr-o ipostaz mai proast n noul hiperplan (definit de noile poziii relative ale celorlaltor module), deoarece minimul global n noua hipersuprafa se poate gsi n cu totul alt punct (Figura 12).
B B A A B A

Figura 12 Hiperplanul funciei cost, i implicit minima acesteia (att ca valoare ct i ca poziie), se poate modifica de la o iteraie la alta. Dac iniial (a) minimul funciei cost a lui A era la stnga, o repoziionare a lui B (ntre etapele b i c) determin un nou context n care minimul funciei cost a lui A este ntr-o poziie diferit fa de cea iniial.

8.3 IMPLEMENTARE PARALEL Caracterul descentralizat al algoritmului propus n lucrare permite abordarea lui paralel, fapt care are implicaii pozitive asupra timpului de calcul. Algoritmul descentralizat afecteaz la fiecare iteraie doar un grup mic de module: modulul procesat i vecintatea acestuia. Acest grup poate fi atribuit unui procesor ntr-o arhitectur paralel. n reeaua de module se pot identifica mai multe grupuri disjuncte de module care pot fi atribuite unor procesoare distincte i prelucrate independent n paralel. Considernd probabilitile de conectare ntre module ca fiind complet independente autorul a estimat numrul de procesoare care poate fi alocat n medie pentru a plasa N module cu un numr mediu de K conexiuni per modul, O (N / K).

Figura 13 Plasarea paralel a dou module. Modulele A i B au vecinti disjuncte, prin urmare repoziionarea unuia dintre ele nu afecteaz vecintatea celuilalt. Modulele conectate la A i B sunt fixe n timpul plasrii acestora. Nici unul din modulele conectate sau vecine unui modul procesat nu poate fi n acelai timp alocat altui procesor pentru repoziionare.

17

8.4 REZULTATE EXPERIMENTALE Algoritmul descentralizat de plasare a fost testat pentru numeroase configuraii de liste de conexiuni alese aleator, i pentru mai multe valori ale parametrilor semnificativi: - numrul de module (N = 16, 64, 256); - numrul mediu de conexiuni ale modulelor (K = 2, 4, 8); - modul de parcurgere a listei de conexiuni (aleator sau secvenial); Pentru fiecare combinaie de valori algoritmul a fost ncercat pe 25 de configuraii construite aleator. Rezultatele obinute pe configuraii iniiale aleatoare sunt acoperitoare pentru performanele algoritmului. Netlist-urile reale prezint un grad ridicat de corelare, att datorit structurilor logice regulate ct i datorit modului ierarhic, recursiv sau scalabil folosit la definirea lor. Plasarea acestor netlist-uri reale se face cu un randament superior plasrii netlist-urilor construite aleator.

Figura 14

Exemplu de plasare pentru N = 256 K = 4 Lungimea total a conexiunilor iniial 5628 a sczut dup 8000 de iteraii la 2306 8.4.1 Reducerea lungimii totale a conexiunilor Acesta este principalul obiectiv al algoritmilor de plasare. Toate graficele urmtoare se refer la reducerea lungimii totale a conexiunilor, pe ordonatele lor fiind lungimea total a conexiunilor, absolut (L) sau raportat la lungimea conexiunilor configuraiei iniiale (L/L0). n Tabelul 2 se dau valorile medii ale lungimii relative (n procente) la sfritul simulrilor pentru diferite valori ale parametrilor N (numrul de module) i K (numrul de conexiuni pe modul):

L/L0 (%)
N 16 64 256 K 2 46.7 35.2 32.5 4 58.2 43.7 39.1 8 83.0 63.3 57.8

Tabelul 2 Lungimea total final a conexiunilor n procente din lungimea total iniial a conexiunilor, pentru diferite valori ale parametrilor N (numrul de module) i K (numrul de conexiuni pe modul). Lungimea total medie este o medie peste 25 de simulri.

Performanele algoritmului sunt cu att mai bune cu ct raportul N/K este mai mare (Figura 15). Netlist-urile reale au un numr mare de module (N = 102 - 105) cu conectivitate medie mic i foarte mic (K = 10 - 102) relativ la numrul total de module N.

18

Figura 15 Lungimea total a conexiunilor raportat la lungimea iniial (L/L0), funcie de numrul de iteraii (n multiplu de N1/2) pentru reele cu N = 256 de module. Pentru fiecare valoare a lui K s-a trasat media simulrilor pe 25 de reele diferite construite aleator.

8.4.2 Convergena algoritmului Datorit modului descentralizat (local) n care se face reconfigurarea modulelor, nu se obine n general o soluie unic (fix). n spaiul configuraiilor posibile algoritmul se ndreapt ctre zone de minim bune (unde lungimea total a conexiunilor este mic), dar nu se fixeaz pe o soluie deoarece nu exist un minim local al funciei cost globale care s coincid cu minime ale tuturor funciilor cost locale. n majoritatea cazurilor algoritmul ajunge n bazinul de atracie al unui minim bun al funciei cost globale, dar se mic aleator n jurul acestuia (Figura 16).

Figura 16

N = 256 , K = 4
n stnga se prezint evoluia n timp a lungimii totale a conexiunilor. n dreapta este mrit o fereastr de timp de la sfritul simulrii.

Pentru K << N (de exemplu K = 2 pentru N = 256) algoritmul converge ctre o soluie sau o vecintate forte mic n jurul acesteia (Lmin < 0.2%). Avantajul metodei descentralizate este c algoritmul caut ntotdeauna o mbuntire (chiar dac ea este local), pe cnd n variantele stohastice globale se accept i micri eronate (sau inutile), ceea ce mrete timpul de cutare.

19

8.4.3 Timpul de calcul Pentru determinarea obiectiv a timpului mediu de calcul s-au fcut cte 25 de teste pentru fiecare pereche de parametri (N, K). Simulrile au fost oprite dup un numr prestabilit de iteraii: numr iteraii = 128 N N Figura 17 sintetizeaz pe o scar logaritmic de timp rezultatele simulrilor: valorile medii ale lungimii relative a conexiunilor, L/L0, funcie de numrul de iteraii scalat cu N N , avnd ca parametru numrul de module N, respectiv conectivitatea K. Valoarea medie a timpului de calcul justificat statistic pentru K << N, ipotez realist n cazul proiectrii VLSI, este: T = KN N

Figura 17

8.4.4 Modul de parcurgere al listei de conexiuni Au fost folosite dou moduri de parcurgere a listei de conexiuni: aleator i secvenial. Rezultatele obinute prin ambele variante sunt statistic aproape la fel de bune pentru majoritatea combinaiilor de parametri (Figura 18). Se poate explica aceasta prin faptul c numeroasele repoziionri ale modulelor modific complet configuraia de la un ciclu la altul, pierzndu-se corelaia datorat parcurgerii ciclice a listei. Metoda aleatoare are un uor avantaj din punct de vedere al soluiei, dar pe seama unui timp mai lung de calcul.

Figura 18 Rezultatele simulrilor pentru N = 256, K = 2 pentru o parcurgere aleatoare, respectiv secvenial a listei de conexiuni.

20

CAPITOLUL 9.

ARTIFICIAL LIFE N ECOART

9.1 ARTIFICIAL LIFE Artificial Life (AL) este o paradigm recent care caracterizeaz o multitudine de demersuri noi n explorarea i nelegerea mai profund a vieii, aprut dup relativul insucces al cercetrilor n direcia Artificial Intelligence (AI). AL este o ncercare de a explora caracteristicile viului pe sisteme artificiale mult mai simple, care sunt n ntregime sub controlul experimentatorului. Avantajul unei structuri simple const n numrul mic de parametri i n posibilitatea explorrii n adncime a spaiului fenomenologic, la care s-ar putea aduga timpul de calcul mic [2] [3]. Premisa care st la baza acestor demersuri este c multe din caracteristicile fundamentale pe care sistemele vii le manifest nu sunt esenialmente indisolubil legate de acestea, ci sunt mult mai generale, caracteristice tuturor sistemelor complexe. n cele ce urmeaz se prezint un model foarte general (ArtEco), construit de autor pe baza automatelor celulare i a agenilor peste care acioneaz algoritmul genetic. Variante ale acestui model au fost folosite de autor pentru simularea ecosistemelor, metabolismului molecular i epidemiilor virale.

Figura 19 Imaginea de ansamblu a unui ecosistem artificial de 400 de nie (20 X 20). Culoarea niei depinde de cantitatea de resurse primare existente (intensitatea culorii este direct proporionala cu aceasta). Niele albe sunt lipsite de resurs primara. Agenii sunt redai prin cerculee de diferite culori n funcie de sexul i specia acestora.

9.2 ECOSISTEMUL ARTIFICIAL Geografia: niele i resursele Ecosistemul artificial (ArtEco) este inclus ntr-un spaiu bidimensional discret, finit si nchis (automat celular). Un punct al acestui spaiu discretizat reprezint o nis spaiala (o celul a AC). Fiecare ni poate adposti o cantitate limitat dintr-o resurs primar i un singur agent. Populaia: agenii Agenii sunt asimilai membrilor diverselor specii din ArtEco, cu excepia resursei primare (care este o specie imobil - vegetal). Caracteristicile lor principale sunt micarea, percepia, metabolismul i reproducerea. 21

Un agent este caracterizat printr-un genotip i un fenotip. Fiecare agent conine un cromozom (genotip), genele cruia determin comportamentul (fenotipul) acestuia. Metabolismul i celelalte aciuni ale agentului comport un consum energetic. Agentul i procur energia de la componentele lanului trofic aflate sub acesta. Aciunile agentului sunt: a. Acumularea energetic Agentul i obine energia prin consumul resursei primare sau al altor ageni. Aportul energetic este limitat de cantitatea maxim de energie pe care o poate stoca agentul. b. Micarea Un agent se mic n cutare de energie. Micarea este permis numai ctre niele libere i poate fi condiionat de prezena altor ageni n niele vecine. c. Reproducerea n anumite condiii doi ageni din aceeai specie pot da natere unui agent nou. Acesta va avea un cromozom rezultat din combinarea genetic a cromozomilor prinilor. Combinarea genetic respect regulile de baz ale algoritmilor genetici. Asupra noului cromozom intervine cu o probabilitate foarte mic o mutaie punctual, asupra unei gene aleas aleator. Viaa unui agent este limitat de vrsta maxim care poate fi atins sau poate fi curmat n cazul n care acesta i epuizeaz resursele energetice (moarte prin nfometare). O imagine mai detaliat a unui ecosistem este prezentat n Figura 19. 9.3 EXPERIMENTE N ECOSISTEMUL ARTIFICIAL Condiiile iniiale ale simulrii s-au obinut cu o distribuie aleatoare uniform a resurselor i agenilor. n funcie de valoarea parametrilor agenilor i resurselor primare, ecosistemul converge ctre una din cele trei evolutii posibile: 1. dispariia agenilor dup o perioad tranzitorie. Ecosistemul nu se poate autosusine. 2. echilibru stabil, care poate fi i de tip oscilant (soluie prezis i de ecuaiile difereniale Lotka-Volterra ale sistemului prdtor-victim) 3. evoluie haotic n jurul unor valori medii. Figura 20 prezint cele trei tipuri de evoluie pentru un ecosistem artificial simplu. Ecosistemul conine numai resurse primare i ageni erbivori. Simulrile au aceeai condiie iniial, difer doar dimensiunea ecosistemului. Cele doua curbe care evolueaz oarecum n antifaz reprezint cantitatea relativ de resurse a ecosistemului i numrul relativ de ageni.

a.100 (10 x 10) nie

b. 400 (20 x 20) nie

c. 2500 (50 x 50) nie

Figura 20 Dinamica evoluiei ecosistemului n funcie de dimensiunea lui.

Ecosistemul artificial (ArtEco), creat n ntregime de autor, este prezentat pe larg n [24]. Variaiuni ale acestui model au fost imaginate i folosite de autor pentru simularea metabolismului la nivel molecular [17] [18] i pentru simularea epidemiilor virale n populaii nchise i deschise [21] [23].

22

CAPITOLUL 10.

CONCLUZII FINALE

Rspunsuri Teza de doctorat sintetizeaz demersurile mele n explorarea domeniului automatelor celulare i reelelor NK att ca obiect teoretic de studiu ct i ca instrument practic. Capitolul 2 prezint stadiul actual al teoriei automatelor celulare, punctnd principalele abordri formale i problemele pe care le ntmpin. Capitolul 3 prezint pe larg algoritmii de predicie pentru automatele celulare (AC) aditive, elaborai de mine i folosii cu succes n analiza unui AC liniar unidimensional, n particular pentru legea sum modulo 2 (XOR). Am adaptat aceti algoritmi pentru cazul AC finite i pentru AC bidimensionale. Am folosit proprietile legii sum modulo 2 pentru a pune n practic un procedeu neconvenional de multiplicare de imagini. Neconcordana dintre structura i dinamica AC m-a determinat s fac o distincie net ntre complexitatea funcional i cea structural, opiune justificat n capitolul 4. Acelai aspect m-a incitat la explorarea spaiului legilor automatelor celulare elementare (ACE), n cutarea unor legturi ntre aspectele geometrice ale funciilor logice i dinamica evoluiei AC corespunztoare. Am propus o clasificare inedit a funciilor logice plecnd de la proprietile lor geometrice. Am ales ca msur a complexitii funciilor lungimea expresiei minime construite cu ajutorul tuturor operatorilor binari, setul acestora fiind simetric. Am stabilit echivalena dintre clasele de complexitate i clasificarea geometric propus Capitolul 5 prezint modelul general de reele NK pe care l-am adaptat pentru a propune o soluie original la dificila problem a plasrii VLSI. Capitolul 6 este o succint monografie a problemei plasrii i a algoritmilor folosii pentru rezolvarea ei. Am propus un model descentralizat de plasare, prezentat n detaliu n capitolul 7 mpreun cu o ampl sintez a rezultatelor experimentale, rodul ctorva luni cumulate de simulri intensive. La analiza rezultatelor experimentale am adoptat o manier proprie de determinare a dependenei timpului mediu de calcul funcie de dimensiunea problemei, prin scalarea timpului de rulare cu parametrii de control ai reelei NK. Modelul propus are un timp de calcul comparabil ca ordin de mrime cu cel al algorimilor performani din domeniu. Am abordat implementarea paralel a algoritmului propus i am estimat timpul de calcul pe o main paralel. Valorile teoretice obinute aduc un argument suplimentar n sprijinul metodei mele. Capitolul 8 este dedicat unei aplicaii complexe, de simulare a sistemelor biologice. Am combinat modelul automatelor celulare cu programarea multi-agent i algoritmii genetici pentru a-i conferi flexibilitatea necesar abordrii unui sistem complex i a realiza un ecosistem artificial (ArtEco). Am folosit acest model pentru simularea metabolismului i simularea unor ecosisteme formate din 3-4 specii. Am adaptat ecosistemul virtual pentru studiul epidemiilor virale n cadrul unor colaborri cu cercettori din domeniu. Originalitatea abordrilor a impus dezvoltarea multor instrumente software proprii, pe care le-am conceput att din perspectiva imediat a cercetrii dedicate tezei, ct i din perspectiva mai larg a utilizrii acestora ca instrumente publice oferite mediului academic i universitar. ntrebri Ca orice demers tiinific, i acesta a generat pe parcursul lui noi i noi ntrebri, deschiznd ui ctre necunoscutul ce-i ateapt exploratorii. Cteva din aceste perspective ntrezrite care merit a fi urmrite sunt: O clasificare a legilor automatului elementar plecnd de la geometria lor n spaiul tridimensional, care s in cont de poziia special a celulei centrale. Studiul corelaiei ntre complexitile funciilor logice obinute peste diferite seturi de operatori. Se poate gsi o regul general cu care, plecnd de la expresia minim ntr-un set de operatori oarecare s se deduc una din expresiile minime peste un alt set de operatori arbitrar alei ? Exist oare pentru automatele celulare o teorem echivalent teoremei de incompletitudine a lui Gdel? 23

Este nevoie de o comparaie ntre algoritmii clasici de plasare i algoritmul descentralizat de plasare propus de autor rulndu-i pe cteva benchmark-uri. Extinderea algoritmului descentralizat de plasare pentru a manevra module dreptunghiulare de dimensiuni arbitrare. Simularea plasrii paralele de ctre algoritmul descentralizat de plasare. Ct de mult ne putem apropia de limita teoretic maxim a numrului de procesoare care pot fi alocate n paralel unui netlist arbitrar pentru plasare ?

BIBLIOGRAFIE SELECTIV
1. Gregory Chaitin. Algorithmic Information Theory. Cambridge University Press, 1990. 2. Joshua M. Epstein and Robert Axtell. Growing Artificial Societies. The MIT Press, Cambridge, MA, 1996. 3. Nigel Gilbert and Jim Doran (editors). Simulating Societies. The Computer Simulation of Social Phenomena. University College London Press, 1994. 4. Howard A. Gutowitz. Cellular Automata and the Sciences of Complexity, part I + II. In Complexity, vol. 1, no. 5, no. 6 1996. 5. Stuart A. Kauffman. The Origins of Order. Self-Organisation and Selection in Evolution, Oxford University Press, New York, 1993. 6. Stuart A. Kauffman. At Home in the Universe. The Search for Laws of Self-Organization and Complexity, Oxford University Press, New York, 1995. 7. Cristopher Moore. Quasi-Linear Cellular Automata. In Physica D, 103, pag. 100-132, 1997. 8. Ilya Prigogine and Isabelle Stengers. Order Out of Chaos, Flamingo, London, 1985. 9. Adolf F. Schwarz. Handbook of VLSI Chip Design and Expert Systems, Academic Press, 1993. 10. Karl Sigmund. Games of Life. Oxford University Press, 1993. 11. Moshe Sipper. Co-evolving Non-Uniform Cellular Automata to Perform Computations. In Physica D, 92, pag. 193-208, 1996. 12. Gheorhe tefan. Funcie i structur n sistemele digitale. Editura Academiei Romne, 1991. 13. Tommaso Toffoli. "Non-conventional computers". In John Webster editor, Encyclopedia of Electrical and Electronics Engineering, Wiley & Sons, 1998. 14. Stephen Wolfram. Cellular Automata and Complexity. Addison-Wesley, 1994.

15. Zoltan Hascsi and Gheorghe tefan. The Connex Content Addressable Memory (C2AM). In Proceedings of the 21st ESSCIRC Conference, Lille, France pag. 422-425, 1995. 16. Zoltan Hascsi, Bogdan Mu, Mariana Petre, and Gheorghe tefan. High-Level Synthesis of an Enhanced Connex Memory. In Proceedings of the 19th CAS Conference, Sinaia, Romania, pag. 163-166, 1996. 17. Zoltan Hascsi. Modelarea proceselor biologice cu automate celulare. Metabolismul - autoorganizare la nivel molecular. Raport CNAE, iun. 1996. 18. Zoltan Hascsi. Modelarea proceselor biologice cu automate celulare. Simulatoare pentru modelarea micrii macromoleculelor. Raport CNAE, dec. 1996. 19. Monica Dascalu, Eduard Franti, and Zoltan Hascsi. Hardware Version for Two-Dimensional Cellular Automata. In Proceedings of the 20th CAS Conference, Sinaia, Romania, pag. 597-600, 1997. 20. Zoltan Hascsi. Estimri Analitice ale Complexitii Automatelor Celulare. Raport CNAE, iun. 1998. 21. Alexandru Cristea, Corneliu Zaharia i Zoltan Hascsi. Propagarea epidemiilor virale n populaii deschise. Raport Grant GAR, dec. 1998 22. Dinu Petrescu i Zoltan Hascsi. Strategii infoludice pentru implementarea autoorganizrii n ansamblurile multimediale complexe. Raport CNAE, iun. 1999. 23. Zoltan Hascsi. Autoorganizarea - fenomen emergent n propagarea epidemiilor virale. Raport CNAE, dec. 1999. 24. Zoltan Hascsi. Mediu reconfigurabil pentru simularea sistemelor dinamice multiagent. Raport Grant CNCSU, iun. 1999. 25. Zoltan Hascsi. Functional versus Structural Complexity. A IV-a Conferin Modelarea structuralfenomenologic cu tema Autoorganizarea, Academia Romn, Bucureti, 20-21 iunie 2000.

24

You might also like