Un automat celular este un model discret studiat în matematică , teoria computabilității , fizică , biologie teoretică și micromecanică. Baza este spațiul de celule (celule) adiacente între ele, formând o rețea. Fiecare celulă poate fi într-una dintr-un set finit de stări (de exemplu, 1 și 0). Rețeaua poate fi de orice dimensiune, infinită sau finită; pentru o rețea cu dimensiuni finite, bucla este adesea furnizată atunci când limita (limita) este atinsă. Pentru fiecare celulă, este definit un set de celule, numit vecinătate . De exemplu, un cartier von Neumann de rang 2 include toate celulele aflate la o distanță de cel mult 2 de cel curent. Sunt stabilite reguli pentru trecerea celulelor de la o stare la alta. De obicei, regulile de tranziție sunt aceleași pentru toate celulele. Un pas al automatului presupune parcurgerea tuturor celulelor și, pe baza datelor privind starea actuală a celulei și a împrejurimilor acesteia, determinarea noii stări a celulei, pe care aceasta o va avea la pasul următor. Înainte de a porni mașina, este specificată starea inițială a celulelor, care poate fi setată intenționat sau aleatoriu.
Direcția principală în studiul automatelor celulare este solubilitatea algoritmică a anumitor probleme. Sunt de asemenea luate în considerare problemele construirii stărilor inițiale în care automatul celular va rezolva o anumită problemă.
Stanislav Ulam , care lucra la Laboratorul Național Los Alamos în anii 1940, a studiat creșterea cristalelor folosind un model simplu de rețea [1] . În același timp, John von Neumann , un coleg cu Ulam, lucra la problema sistemelor de auto-reproducere. Conceptul original al lui Von Neumann s-a bazat pe ideea unui robot care asambla un alt robot. Un astfel de model este cunoscut sub numele de cinematic. După ce a dezvoltat acest model, von Neumann a recunoscut dificultatea de a construi un robot cu auto-replicare și, în special, de a furniza „stocul de piese” necesar din care trebuie construit robotul. Ulam ia sugerat lui von Neumann să se folosească un model matematic mai abstract, similar cu cel folosit de Ulam pentru a studia creșterea cristalelor. Astfel, a apărut primul sistem de automate celulare. La fel ca și rețeaua Ulam, automatul celular von Neumann este bidimensional, iar robotul cu auto-replicare este descris algoritmic. Rezultatul a fost un constructor universal care funcționează „în interiorul” unui automat celular cu un vecinătate care include celule imediat adiacente și are 29 de stări. Von Neumann a demonstrat că pentru un astfel de model există un model care se va copia la nesfârșit.
Tot în anii 1940, Norbert Wiener și Arturo Rosenblueth au dezvoltat modelul automatului celular al mediului excitabil . Scopul a fost o descriere matematică a propagării unui impuls în ganglionii cardiaci. Munca lor originală continuă să fie citată în cercetările contemporane privind aritmia și mediile excitabile.
În anii 1960, automatele celulare au fost studiate ca un anumit tip de sisteme dinamice și s-a stabilit pentru prima dată legătura lor cu domeniul dinamicii simbolice. În 1969, G. A. Hedland ( ing. Gustav A. Hedlund ) a trecut în revistă rezultatele obţinute în această direcţie. Cel mai semnificativ rezultat a fost descrierea setului de reguli ale unui automat celular ca un set de endomorfisme continue într-un spațiu de schimbare.
În anii 1970, un model de automat celular bidimensional cu două stări de celule, cunoscut sub numele de Jocul Vieții , a câștigat proeminență . Inventat de John Conway și popularizat de Martin Gardner , folosește următoarele reguli: pe o grilă pătrată, fiecare celulă are 8 vecini; daca celula are doi vecini „vii”, ramane in aceeasi stare. Dacă o celulă are trei vecini „vii”, aceasta intră într-o stare „vii”. În caz contrar, celula „moare”. În ciuda simplității sale, sistemul prezintă o mare varietate de comportament, oscilând între haos și ordine. Unul dintre fenomenele jocului „Viața” este planoarele - combinații de celule „se mișcă” de-a lungul rețelei în ansamblu și interacționează cu alte structuri statice sau în mișcare. Este posibilă setarea stării de pornire a celulelor, în care planoarele vor efectua unele calcule. Ulterior, sa dovedit că Jocul Vieții ar putea emula complet Mașina Turing Universală . Pe 11 noiembrie 2002, Paul Chapman a construit o variantă a „Life” care este RMM (Register Machine Minsky ). Prima versiune a eșantionului a fost mare (268.096 celule vii într-o zonă de 4.558 x 21.469 celule) și lentă (20 de generații/sec folosind Life32 de Johan Bontes pe AMD K6-II de 400 MHz ) . Astfel, s-a dovedit că în jocul „Life” este posibil să se execute orice algoritm de calcul.
În 1969, inginerul german Konrad Zuse a publicat The Computable Cosmos, unde a propus că legile fizicii sunt de natură discretă și că întregul univers este un automat celular gigant. A fost prima carte din ceea ce se numește acum fizică digitală .
În URSS, profesorul VZ Aladiev a publicat o serie de lucrări despre teoria automatelor celulare [2] . Ca termen general, a fost folosit termenul „ structuri omogene ”. S-a propus și o altă terminologie pentru a descrie anumite aspecte ale acestei probleme.
În 1983 , Stephen Wolfram a publicat prima dintr-o serie de lucrări care explorează automatele celulare elementare . Complexitatea neașteptată a comportamentului acestor automate simple unidimensionale l-a determinat pe Wolfram să sugereze că complexitatea sistemelor naturale se datorează unui mecanism similar. În plus, în această perioadă, Wolfram formulează conceptul de aleatorietate adevărată și ireductibilitate computațională și propune că un automat cu o „ regula de 110 ” poate fi universal ( Turing complet ). Acest lucru a fost dovedit în 1990 de asistentul său Matthew Cook.
În 1987, Brian Silverman a propus automatul celular Wireworld .
În 2002, Wolfram a publicat un text de 1280 de pagini , A New Kind of Science , în care susține în linii mari că progresele în automatele celulare nu sunt izolate, ci sunt foarte stabile și de mare importanță pentru toate domeniile științei.
Un automat celular bidimensional poate fi definit ca un set de automate finite în plan, etichetate cu coordonate întregi (i, j), fiecare dintre acestea putând fi într-una din stările :
.Starea automatelor se modifică conform regulii de tranziție
,unde este o vecinătate a punctului . De exemplu, cartierul von Neumann este definit ca
, .Numărul tuturor regulilor de tranziție posibile este determinat de numărul de stări și numărul de vecini n și este
[3]Stephen Wolfram în cartea sa A New Kind of Science a propus 4 clase în care toate automatele celulare pot fi împărțite în funcție de tipul evoluției lor. Clasificarea lui Wolfram a fost prima încercare de a clasifica regulile în sine, mai degrabă decât comportamentele regulilor în mod izolat. În ordinea creșterii complexității, clasele arată astfel:
Astfel de definiții sunt în mare parte de natură calitativă și pot fi interpretate în moduri diferite. Iată ce are de spus Wolfram despre asta:
În aproape orice încercare de clasificare, vor apărea situații când, conform unei proprietăți, un obiect poate fi atribuit unei clase, iar unei alte proprietăți, unei alte clase. Situația este aceeași cu automatele celulare: există reguli care arată proprietăți care sunt simultan inerente uneia și celeilalte clase.
Text original (engleză)[ arataascunde] ... cu aproape orice schemă de clasificare generală, există inevitabil cazuri care sunt atribuite unei clase printr-o definiție și unei alte clase printr-o altă definiție. Și așa este și cu automatele celulare: există ocazional reguli... care arată unele caracteristici ale unei clase și altele ale alteia.Există o clasă specială de automate celulare numite totaliste . La fiecare pas în evoluția unui automat celular, valoarea celulei este egală cu un număr întreg (alege de obicei dintr -o mulțime finită ), iar noua stare a celulei este determinată de suma valorilor celulelor învecinate și, eventual, starea anterioară a celulei. Dacă starea unei celule la un nou pas depinde de starea sa anterioară, atunci un astfel de automat celular se numește totalist extern . Jocul Vieții este un exemplu de automat celular totalist extern cu un set de valori celulare .
Termenul totalist provine din engleza totalist . La rândul său, totalul poate fi tradus ca o sumă , ceea ce se reflectă în principiul de funcționare al acestui tip de automată, atunci când noua valoare a unei celule depinde de suma valorilor altor celule.
Există multe generalizări posibile ale conceptelor de automată celulară.
Una dintre ele este utilizarea unei grile nu cu pătrate ( hipercuburi în cazul multidimensional), ci cu alte forme geometrice la bază. De exemplu, dacă câmpul este reprezentat printr-un parchet hexagonal , atunci hexagoanele ar fi celule. Cu toate acestea, uneori, astfel de automate celulare s-au dovedit a fi identice cu automatele celulare pe o rețea cu celule pătrate, doar în acest caz a fost necesar să se introducă reguli speciale pentru relațiile cu celulele învecinate. O altă modalitate de a generaliza este utilizarea unei grile neregulate (de exemplu, sub forma unui mozaic Penrose ).
O altă modalitate este de a folosi reguli probabilistice. Astfel de automate celulare sunt numite stocastice . În astfel de sisteme, este dată probabilitatea ca la pasul următor celula să-și schimbe culoarea în alta. Sau, de exemplu, în jocul „ Viața ” se adaugă o regulă conform căreia o celulă cu o anumită probabilitate își poate schimba culoarea în sens invers, în timp ce alte reguli ale acestui automat celular rămân neschimbate.
Definiția vecinătății celulei se poate schimba în timp și/sau spațiu. De exemplu, în prima etapă, vecinii vor fi celule adiacente orizontal, iar în a doua etapă, vor fi adiacente pe verticală.
În automatele celulare, noua stare a unei celule nu este afectată de noile stări ale celulelor adiacente. Regula poate fi schimbată: puteți face astfel încât, de exemplu, în blocuri 2 câte 2, stările celulelor depind de starea celulelor din interiorul blocului și de aceleași blocuri adiacente.
Există automate celulare continue . În astfel de sisteme, în loc de un set discret de stări, sunt utilizate funcții continue (definite de obicei pe intervalul ).
Se spune că un automat celular este reversibil dacă există o singură configurație anterioară pentru fiecare configurație curentă. Dacă considerăm un automat celular ca o funcție care mapează o configurație la alta, atunci reversibilitatea implică bijectivitatea acestei funcții. Dacă un automat celular este reversibil, atunci evoluția sa inversă poate fi descrisă și de un automat celular. Configurațiile care nu au predecesori, adică de neatins într-un automat celular dat, se numesc „ Grădinile Edenului ”.
Pentru automatele celulare unidimensionale, există algoritmi pentru determinarea reversibilității sau ireversibilității. Cu toate acestea, nu există astfel de algoritmi pentru automatele celulare cu două sau mai multe dimensiuni.
Automatele celulare reversibile sunt adesea folosite pentru a modela fenomene fizice, cum ar fi dinamica fluidelor și gazelor, deoarece respectă legile termodinamicii . Astfel de automate sunt special concepute pentru a fi reversibile. Astfel de sisteme au fost studiate de Tommaso Toffoli și Norman Margolus. Există mai multe tipuri de mașini de stare reversibile. Cele mai cunoscute sunt automatul celular de ordinul doi și automatul celular bloc . Ambele modele urmează o versiune oarecum modificată a definiției unui automat celular, dar s-a dovedit că pot fi emulate de un automat celular tradițional cu o dimensiune de vecinătate și un număr mult mai mare de stări. De asemenea, s-a dovedit că orice automat celular reversibil poate fi emulat de un automat celular bloc.
Cel mai simplu automat celular non-trivial va fi un automat celular unidimensional cu două stări posibile, iar vecinii unei celule vor fi celulele adiacente acesteia. Astfel de automate sunt numite elementare. Trei celule (cea centrală, vecinele ei) generează combinații ale stărilor acestor trei celule. În plus, pe baza analizei stării curente a triplei, se ia o decizie dacă celula centrală va fi albă sau neagră la pasul următor. În total există reguli posibile. Aceste 256 de reguli sunt codificate conform codului lui Wolfram , o convenție standard, o regulă care a fost propusă de Wolfram . În unele articole, aceste 256 de reguli au fost examinate și comparate. Cele mai interesante sunt regulile cu numerele 30 și 110 . Cele două imagini de mai jos arată evoluția acestor reguli. Condiția inițială pentru fiecare automat este ca o celulă centrală să fie neagră, restul să fie albe. Timpul discret este reprezentat de-a lungul axei, iar stările celulelor automate sunt reprezentate de-a lungul axei.
Starea curenta | 111 | 110 | 101 | 100 | 011 | 010 | 001 | 000 |
---|---|---|---|---|---|---|---|---|
Noua stare a celulei centrale | 0 | 0 | 0 | unu | unu | unu | unu | 0 |
Starea curenta | 111 | 110 | 101 | 100 | 011 | 010 | 001 | 000 |
---|---|---|---|---|---|---|---|---|
Noua stare a celulei centrale | 0 | unu | unu | 0 | unu | unu | unu | 0 |
Regula 161
Starea curenta | 111 | 110 | 101 | 100 | 011 | 010 | 001 | 000 |
---|---|---|---|---|---|---|---|---|
Noua stare a celulei centrale | unu | 0 | unu | 0 | 0 | 0 | 0 | unu |
Regula 30 prezintă un comportament de clasa 3, ceea ce înseamnă că evoluția condițiilor inițiale simple duce la o dinamică haotică , aparent aleatorie.
Regula 110 , ca și Jocul Vieții , prezintă un comportament de clasa 4 care nu este complet aleatoriu, dar lipsit de periodicitate. În acest caz, apar structuri care interacționează între ele într-un mod neevident, complex. În timp ce scria A New Kind of Science , asistentul lui Stephen Wolfram, Matthew Cook, a dovedit în 1994 că unele dintre structurile generate de o regulă sunt suficient de diverse pentru a fi complet Turing . Acest fapt este de interes deoarece, în esență, Regula 110 este un sistem simplu unidimensional. Este, de asemenea, un argument bun că sistemele de clasa 4 sunt într-un anumit sens universale. Matthew Cooke și-a prezentat dovada la conferința Institutului Santa Fe din 1998 , dar Wolfram a interzis ca aceasta să fie inclusă în versiunea pe hârtie a lucrărilor conferinței, deoarece nu dorea să fie publicată înainte ca A New Kind of Science să fie publicată . În 2004, dovada lui Cook a fost publicată în revista lui Wolfram Complex Systems (Numărul 15, Volumul 1), la 10 ani după ce Cook a prezentat-o pentru prima dată. Regula 110 a stat la baza construirii celor mai mici mașini Turing .
Regula 161 generează structuri fractale , care pot fi văzute în figură. Se pot vedea triunghiuri asemănătoare imbricate .
Cel mai simplu automat celular unidimensional este specificat folosind opt biți. Astfel, toate regulile automatului celular sunt situate pe vârfurile cubului unitar cu 8 dimensiuni . Un astfel de hipercub este spațiul tuturor automatelor celulare unidimensionale posibile. Pentru un automat celular unidimensional, în care vecinii unei celule sunt vecinii vecinilor ei, este nevoie de un bit și spațiul tuturor regulilor posibile va fi un cub de unitate cu 32 de dimensiuni. Distanța dintre două automate celulare poate fi considerată ca fiind numărul de pași necesari pentru a trece de la o regulă la alta de-a lungul marginilor unui cub multidimensional. Această distanță se numește distanța Hamming .
Studiul spațiului regulilor automatelor celulare ne permite să răspundem la întrebarea, care se pune astfel: sunt regulile apropiate unele de altele, care generează automate celulare asemănătoare între ele (din punct de vedere al dinamicii). Reprezentarea grafică a unui hipercub de dimensiuni mari pe un plan bidimensional este o sarcină foarte dificilă. Cu toate acestea, pe un plan bidimensional, se poate imagina cu ușurință procesul de evoluție al unui automat celular unidimensional. În acest caz, timpul discret este reprezentat de-a lungul unei axe, iar stările corespunzătoare ale automatului celular sunt reprezentate de-a lungul celeilalte. În cazul unui automat celular bidimensional, se poate adăuga o a treia axă. În acest caz, două axe vor corespunde stărilor automatului celular, iar a treia axă va corespunde timpului discret. Procesul de evoluție al unui astfel de automat este o anumită figură tridimensională în spațiu. Astfel de experimente sunt descrise mai detaliat în cartea lui Stephen Wolfram A New Kind of Science . Studiile au arătat că automatele celulare clasificate ca clasa 1 aveau mai puțini 1 biți în linia de regulă și erau concentrate în aproximativ un loc pe hipercub. În același timp, regulile de clasa 3 aveau un număr mai mare (aproximativ 50%) de 1 biți.
Pentru spații de reguli mai mari ale automatelor celulare, s-a arătat că regulile de clasa 4 sunt situate între clasele 1 și 3.
Această observație duce la conceptul de marginea haosului , așa cum este aplicat la teoria automatelor celulare și amintește de conceptul de tranziție de fază în termodinamică .
Unele organisme vii prezintă proprietățile automatelor celulare. Colorarea cochiliei unui număr de moluște marine , cum ar fi cele din genurile Conus sau Cymbiola , este generată de un automat celular natural unidimensional al cărui rezultat evolutiv este similar cu Regula 30 . Celulele lor pigmentare sunt dispuse într-o bandă subțire de-a lungul marginii cochiliei. Secreția pigmentului fiecărei celule depinde de activitatea activatoare și inhibitorie a celulelor învecinate. Pe măsură ce coaja crește, o bandă de celule formează un model colorat pe suprafața sa. Colorația solzilor șopârlei Timon lepidus este descrisă de un automat celular stocastic [4] .
Plantele reglează fluxul și ieșirea de substanțe gazoase prin mecanismul automatelor celulare. Fiecare stomată de pe suprafața frunzei acționează ca o celulă automată [5] .
Rețelele neuronale pot fi folosite și ca automate celulare. Modelul complex de mișcare pe pielea cefalopodelor este o reflectare a modelelor de activare din creierul animalului.
Reacția Belousov-Zhabotinsky este un oscilator chimic spațiu-timp care poate fi modelat de un automat celular. În anii 1950, A. M. Zhabotinsky , continuând munca lui B. P. Belousov , a descoperit că un strat subțire omogen dintr-un amestec de anumite substanțe chimice este capabil să formeze modele geometrice în mișcare, cum ar fi cercuri concentrice și spirale.
Automatele celulare sunt, de asemenea, folosite în modelarea ecosistemelor și a dinamicii populației [6] .
Procesoarele de pe automatele celulare sunt implementarea fizică a ideilor unui automat celular. Elementele procesorului sunt plasate pe o grilă uniformă de celule identice. Starea celulelor este determinată de interacțiunea cu celulele vecine. La rândul său, vecinătatea poate fi determinată de von Neumann sau de Moore . Un astfel de procesor este sub forma unei matrice sistolice . Interacțiunea particulelor poate fi implementată folosind curent electric, magnetism, vibrații (de exemplu, fononi ) sau folosind orice altă metodă de transfer de informații. Transferul de informații se poate face în mai multe moduri care nu implică utilizarea unor conductori pentru a transfera informații între elemente. Acest mod de proiectare a procesorului este foarte diferit de majoritatea procesoarelor utilizate astăzi și construite după principiul von Neumann , în care procesorul este împărțit în mai multe secțiuni care pot interacționa între ele folosind conductori direcți.
Regula 30 a fost propusă ca un posibil cifru bloc pentru utilizare în criptografie . Automatele celulare bidimensionale sunt folosite pentru a genera numere aleatorii . Automatele celulare sunt propuse pentru utilizare în criptosisteme cu cheie publică . În acest caz, funcția unidirecțională este rezultatul evoluției unui automat celular finit a cărui stare inițială este greu de găsit . După o regulă dată, este ușor de găsit rezultatul evoluției unui automat celular, dar este foarte dificil să-i calculezi stările anterioare.
Automatele celulare sunt utilizate în simularea computerizată a proceselor de recristalizare [7] .
După cum subliniază Andrew Ilachinski în cartea sa Cellular Automata (titlul original Cellular Automata ), mulți cercetători s-au întrebat dacă universul nostru este un automat celular. Andrew Ilachinski subliniază că sensul acestei întrebări poate fi înțeles mai bine printr-o observație simplă care poate fi făcută după cum urmează. Luați în considerare evoluția regulii 110 : dacă ar fi ceva de genul „fizică extraterestră” (original - fizică extraterestră ), atunci cum ar putea fi descrise tiparele emergente? Dacă nu știai cum a fost obținută imaginea finală a evoluției automatului, ai putea presupune că această cifră reflectă într-un fel mișcarea unor particule. Apoi se face următoarea presupunere: poate că lumea noastră, bine descrisă de fizica particulelor elementare , poate fi un automat celular la un nivel fundamental.
Cu toate acestea, o teorie completă bazată pe aceste afirmații este încă departe de a fi considerată completă (de asemenea, în orice mod general acceptată). Duși și dezvoltând această ipoteză, cercetătorii ajung la concluzii interesante despre modul în care această teorie poate fi folosită pentru a descrie lumea din jur. Marvin Minsky , un pionier al inteligenței artificiale , a dezvoltat o modalitate de a studia interacțiunile particulelor folosind un automat celular 4D. Konrad Zuse , cunoscut drept creatorul primului calculator programabil Z3 , care funcționează cu adevărat, a fost angajat în automate celulare pe rețele neregulate pentru a studia conținutul de informații al particulelor. Edward Fredkin a introdus ceea ce el numește „ipoteza universului finit” (ipoteza originală a naturii finite ). Sensul ipotezei este că
… fiecare cantitate din fizică, inclusiv timpul și spațiul, este finită și discretă.
Text original (engleză)[ arataascunde] în cele din urmă, fiecare cantitate de fizică, inclusiv spațiu și timp, se va dovedi a fi discretă și finită.Fredkin și Wolfram sunt adepți consecvenți ai fizicii digitale .
Laureatul Nobel Gerard 't Hooft a dezvoltat o interpretare a mecanicii cuantice bazată pe automate celulare [8] .
Dicționare și enciclopedii | |
---|---|
În cataloagele bibliografice |
|
Conway’s Game of Life și alte automate celulare | |||||
---|---|---|---|---|---|
Clasele de configurare | |||||
Configurații |
| ||||
Termeni | |||||
O altă navă spațială pe o rețea bidimensională |
| ||||
Nave spațiale unidimensionale | |||||
Software și algoritmi |
| ||||
Cercetătorii KA |