Fizicianul Stephen Wolfram a petrecut decenii rulând experimente pe calculator cu reguli simple — fără să caute ceva grandios, ci doar urmărind ce se întâmplă. Ceea ce a descoperit s-a transformat într-un model al felului în care funcționează universul, într-o explicație pentru motivul pentru care evoluția nu rămâne niciodată blocată și într-un argument matematic pentru care viața ta nu poate fi scurtcircuitată sau prezisă de nimeni.
Mai jos, un text al lui Wolfram despre univers și ireductibilitatea computațională a universului
Regula 30
„Istoria fizicii secolului XX a fost istoria descoperirii multor fenomene diferite. Iar întrebarea era: se potrivesc toate aceste fenomene între ele? Au existat idei precum supersimetria, teoria corzilor și așa mai departe. A existat o întreagă colecție de idei care, în fapt, nu s-au conectat niciodată cu observațiile experimentale reale care fuseseră făcute. Și a existat, vreme de câteva decenii, un fel de încercare de a transforma toate acestea în ceva mai ușor de explicat, dar încercarea nu a reușit.
Propriile mele eforturi au pornit, de fapt, dintr-un alt punct. În loc să pornesc de la univers și să încerc să-l reconstitui invers, folosind idei matematice, ceea ce făceam era să folosesc calculatoare pentru a rula sisteme computaționale simple. Să vedem ce fac aceste lucruri și poate, cumva, vom vedea că ele se comportă în moduri asemănătoare cu felul în care observăm că se comportă universul nostru fizic. Iar lucrul remarcabil este că această abordare a funcționat.
Când vrem să facem ceva complicat, de obicei ne imaginăm că trebuie să depunem un mare efort, să avem planuri foarte complicate pentru ceea ce urmează să facă acel lucru. Dar ceea ce se întâmplă în universul computațional este că, pretutindeni, există seturi foarte simple de reguli care fac lucruri foarte complicate. Și se pare că începem să putem descuia multe întrebări care există de un secol sau chiar mai mult.
Sunt Stephen Wolfram. De multă vreme sunt motivat de dorința de a înțelege semnificația paradigmei calculului, atât în aplicațiile sale practice din tehnologie, cât și în implicațiile ei pentru unele probleme conceptuale profunde legate de felul în care gândim lumea.
Bun, așadar, ce este calculul? Este urmarea unor reguli și observarea a ceea ce se întâmplă. De fapt, domeniul de studiu care se ocupă cu examinarea unor reguli simple și cu urmărirea consecințelor lor am avut tendința, în ultimii ani, să-l numesc „ruliologie”: studiul regulilor și al consecințelor lor. Calculul este o metaforă foarte utilă, fiindcă suntem familiarizați cu calculatoarele și cu felul în care funcționează ele. Ruliologia este, în realitate, știința fundamentală de bază despre regulile simple și comportamentul lor.
De exemplu, când ne gândim la întregul univers, imaginea noastră actuală este că există un fel de rețea de atomi ai spațiului. Iar calculul pe care îl face universul constă în rescrierea progresivă a acestei rețele de atomi ai spațiului, făcând asta prin reguli de tipul: ori de câte ori există o bucată de rețea care arată așa, înlocuiește-o cu una care arată așa, și tot așa.
Când cineva este interesat să exploreze universul computațional, apare întrebarea ce tipuri de calcule sunt cel mai ușor de înțeles. Iar cele asupra cărora am avut norocul să dau, la începutul anilor '80, sunt niște lucruri care, într-o versiune ușor diferită, fuseseră numite automate celulare. Și am preluat acest nume istoric.
Un automat celular este un șir de celule. Fiecare celulă poate fi, de pildă, fie neagră, fie albă, iar sistemul evoluează construind un fel de imagine în josul paginii, linie cu linie. Fiecare linie succesivă este formată pornind de la cea de deasupra ei: se ia fiecare celulă și se întreabă, de exemplu, ce culori aveau acea celulă și cei doi vecini ai ei la pasul anterior, apoi se consultă un tabel pentru a vedea cum ar trebui colorată acea celulă la pasul următor.
Clasa cea mai simplă am numit-o automate celulare elementare. Există 256 de astfel de reguli. Iar în ultimii aproximativ 45 de ani, aproape fiecare dintre aceste 256 de reguli a ajuns să fie utilă ca model pentru ceva.
Preferata mea dintotdeauna este Regula 30, care are proprietatea că numerele provin pur și simplu din scrierea numărului 30 în binar, iar aceasta este o reprezentare a ceea ce face efectiv regula, în termeni de celule albe și negre și așa mai departe.
Ei bine, Regula 30 are această proprietate: pornești de la o singură celulă și ea produce un tipar extrem de complicat. Unele aspecte ale tiparului sunt oarecum regulate pe o parte. Dar dacă te uiți, de exemplu, la coloana centrală a acestui tipar triunghiular, coloana centrală arată, practic, complet aleatoriu. Nu o poți prezice în niciun fel. Se pare că singura cale prin care poți afla cum va fi este să rulezi Regula 30 și să vezi ce se întâmplă.
Este puțin asemănător cu ceea ce obții în cazul cifrelor lui pi. Este ușor să spui ce este pi: raportul dintre circumferința și diametrul unui cerc. Există metode de calcul al lui pi, dar, odată ce l-ai calculat — 3,14159 și așa mai departe —, cifrele lui pi arată complet aleatoriu. Același tip de lucru se întâmplă și cu Regula 30, doar că Regula 30 este o configurație mult mai simplă și una mult mai apropiată de tipurile de lucruri pe care te poți aștepta să le vezi în lumea naturală.
Care sunt, așadar, câteva exemple de sisteme naturale care pot fi descrise ușor în termeni de programe? Un exemplu este construirea fulgilor de zăpadă. Fulgii de zăpadă cresc prin agregarea unor bucăți de gheață pe o structură aflată în creștere. Și există reguli foarte simple care descriu felul în care unui fulg de zăpadă îi cresc brațe, apoi brațelor le cresc alte brațe și așa mai departe.
Un alt exemplu: în biologie, multe procese de creștere sunt, în esență, destul de simple din punct de vedere computațional. Fie că este vorba despre felul în care cochilia unei moluște crește în spirală, fie că este vorba despre felul în care funcționează pigmentația cochiliilor de moluște.
Da, chiar așa stau lucrurile: există acest tip de mecanism care este, probabil, secretul pe care îl folosește natura pentru a produce toată complexitatea pe care o produce. Și anume faptul că, în universul computațional al programelor posibile, chiar și un program foarte simplu poate produce un comportament extrem de complicat. Iar asta m-a condus la conceptul de ireductibilitate computațională, un concept important pentru multe dintre lucrurile pe care le-am făcut.
Este vorba, în esență, despre următoarea chestiune: când ai un program simplu și vrei să știi ce face, un lucru pe care îl poți face este să-l rulezi pas cu pas. Să spunem că vrei să știi ce va face după un milion de pași; poți rula acel milion de pași și poți vedea ce face. Întrebarea este: poți să sari înainte și să-ți dai seama ce va face fără să trebuiască să parcurgi toți acei pași?
Știm că există anumite bucăți de reductibilitate computațională. Există locuri în care știm că apar regularități în univers, regularități pe care noi, cu mințile noastre finite, suntem capabili să le folosim pentru a putea spune: aceasta este ceva predictibil, aceasta este o lege a naturii, acesta este ceva care ne permite să reducem, într-un fel, complexitatea lumii la ceva despre care putem construi o narațiune în mintea noastră.
Când începem să ne gândim la lume în termeni computaționali, apare întrebarea ce înseamnă asta. Oamenii vor spune lucruri precum: dacă lumea este computațională, unde este calculatorul pe care rulează ea? Aceasta este o confuzie. Modelele sunt un mod de a reprezenta ceea ce face lumea naturală. Ele nu sunt, mecanic vorbind, ceea ce face lumea naturală. La fel, ecuațiile matematice sunt un mod de a descrie felul în care funcționează lumea naturală.
Acum, lucrul legat de univers este următorul: cât de uluitor este universul, ca să spunem așa? Iar dacă știm regulile fundamentale ale universului, înseamnă asta că universul nu mai poate fi uluitor? Înseamnă că l-am înțeles, că totul s-a terminat?
Motivul pentru care, în fapt, universul poate rămâne și va rămâne în mod necesar fundamental uluitor este acest fenomen al ireductibilității computaționale. Într-un sens, ai putea spune că ireductibilitatea computațională este un lucru rău, fiindcă limitează ceea ce putem face în știință. Ea limitează măsura în care putem prezice ce se va întâmpla. Dar, într-un alt sens, ireductibilitatea computațională este cea care ne oferă bogăția vieții.
Pentru că, dacă am putea prezice întotdeauna ce se va întâmpla, nimic nu ar mai fi, într-un fel, realizat prin trecerea efectivă a timpului și prin trăirea efectivă a vieților noastre. Faptul că există ireductibilitate computațională înseamnă că trăirea vieților noastre se adună în ceva. Vor exista întotdeauna lucruri noi de descoperit.
În interiorul ireductibilității computaționale există întotdeauna un număr infinit de insule de reductibilitate. Și fiecare dintre ele reprezintă o descoperire despre felul în care funcționează lucrurile. Fiecare dintre ele reprezintă o surpriză. Iar apoi devine importantă alegerea umană: ce posibilitate anume să urmărim.
Așadar, în interiorul universului computațional există un fel de colecție infinită de lucruri care se pot întâmpla și care pot fi studiate. Rolul nostru, al oamenilor, este să decidem: ce alegem să ni se pară interesant?
A fost o călătorie foarte captivantă în ultimii ani, această explorare a acestor lucruri. Și presupun că, din punct de vedere filozofic, unul dintre lucrurile care m-au surprins cel mai mult este că începem cu adevărat să vedem care este codul-mașină fundamental al universului nostru, ce se află, într-un fel, dedesubtul întregii fizici pe care o cunoaștem.
În acest moment, cred că este corect să spunem că aceasta este paradigma care ne permite să gândim lucrurile la nivel fundamental. Ideea că lucrurile operează potrivit unor reguli, iar apoi le examinăm consecințele, este o idee foarte generală și foarte puternică.”
Textul are la bază acest videoclip, care merită urmărit pentru ilustrarea unora dintre ideile din text.
