Rule 30 ( English Rule 30 ) este un automat celular elementar , adică un automat celular unidimensional cu două stări (0 și 1), descris pentru prima dată de Stephen Wolfram în 1983 [2] . Stephen Wolfram spune că „aceasta este regula lui preferată” și o descrie în detaliu în cartea sa A New Kind of Science . Dintre cele patru comportamente descrise în această carte, Regula 30 are clasa de comportament III, arătând un comportament aperiodic, haotic .
Regula este interesantă deoarece generează structuri complexe, în multe privințe aleatorii, din reguli simple, bine definite. Wolfram consideră că automatele celulare în general, și Regula 30 în special, sunt cheia pentru înțelegerea modului în care regulile simple pot genera structuri complexe și diferite comportamente complexe ale diferitelor obiecte naturale. De exemplu, o structură similară cu cea generată de Regula 30 poate fi găsită pe coaja textilului larg răspândit de scoici tropicale Conus . Regula 30 este, de asemenea, folosită ca generator de numere pseudo-aleatoare (PRNG) în Wolfram Research 's Mathematica [3] . De asemenea, această regulă a fost propusă pentru utilizare ca codificator de secvență în criptografie [4] .
Cu toate acestea, M. Sipper și M. Tomassini au arătat că, la fel ca regula PRNG 30, are rezultate slabe la testul de bunătate a potrivirii Pearson (testul χ²) în comparație cu alte secvențe pseudo-aleatoare care au fost obținute folosind alte automate celulare .
Regula 30 este numită așa deoarece 30 este cel mai mic cod pentru descrierea regulii de comportament a lui Wolfram din 1983 pentru automatele celulare. codurile de sistem de numere zecimale 120, 225 și, respectiv, 135.
Este considerată o matrice infinită unidimensională de celule (celule) ale unui automat celular cu două stări posibile. Fiecare dintre celule are o stare inițială . La momente discrete de timp, fiecare celulă își schimbă starea, iar această stare depinde de starea anterioară a acestei celule și de starea anterioară a două celule învecinate - celule învecinate. Pentru Regula 30, tabelul oferă regulile pentru tranziția celulei centrale a triadei la următoarea stare și, pentru comparație, sunt date regulile 120, 225 și 135.
Starea actuală a trei celule învecinate | 111 | 110 | 101 | 100 | 011 | 010 | 001 | 000 |
---|---|---|---|---|---|---|---|---|
conform Regula 30 | 0 | 0 | 0 | unu | unu | unu | unu | 0 |
conform Regula 120 | 0 | unu | unu | unu | unu | 0 | 0 | 0 |
conform Regula 225 | unu | unu | unu | 0 | 0 | 0 | 0 | unu |
conform Regula 135 | unu | 0 | 0 | 0 | 0 | unu | unu | unu |
Numerele binare 11110 2 = 30 10 , 1111000 2 = 120 10 , 11100001 2 = 225 10 , 10000111 2 = 135 10 , motiv pentru care aceste reguli, conform lui Wolfram, se numesc regulile 2251203, respectiv 0 22 51203.
Având în vedere diferite stări inițiale ale celulelor, regula 30 dă naștere la diferite evoluții ale generațiilor ulterioare de celule.
De exemplu, este dată evoluția conform Regulii 30, a cărei stare inițială este doar o celulă neagră înconjurată de celule albe. (Se presupune că o celulă neagră corespunde unei singure stări de celulă conform tabelului).
Evoluția unei singure celule în timp conform regulii celor 30
În această imagine, timpul este reprezentat de-a lungul axei verticale, fiecare strat orizontal reflectând starea tuturor celulelor automatului celular de generație în timpul evoluției Regulii 30. În imagine pot fi observate mai multe caracteristici, cum ar fi apariția frecventă a triunghiurilor albe de diferite dimensiuni, care seamănă cu forma unei pate pe o coajă de scoici și cu o structură regulată clară în partea stângă a imaginii. Cu toate acestea, structura generală a desenului nu se pretează la o descriere generală obișnuită. Numărul de celule negre din generațiile ulterioare de evoluție a automatelor este secvența:
1, 3, 3, 6, 4, 9, 5, 12, 7, 12, 11, 14, 12, 19, 13, 22, 15, 19, ... secvența OEIS A070952și crește aproximativ ca - numărul generației.
După cum se poate observa din figură, Regula 30 generează o secvență care pare a fi aleatorie în multe feluri, având în vedere condițiile inițiale care nu sunt aleatoare. Stephen Wolfram a propus utilizarea barelor verticale în evoluția automatelor celulare pentru o anumită stare inițială dată ca o secvență pseudo-aleatorie. Secvențele obținute în acest fel trec multe dintre testele standard de aleatorie . Stephen Wolfram folosește regula lui 30 pentru a genera numere întregi aleatorii în pachetul Mathematica .
Regula 30 produce structuri aleatorii pe multe seturi de condiții inițiale. Cu toate acestea, există și un număr infinit de vectori de condiție inițială care generează structuri periodice în evoluție. Un exemplu banal este vectorul de condiție inițială , constând numai din celule albe (0). Un exemplu mai puțin trivial găsit de Matthew Cook este orice succesiune infinită constând din repetări ale modelului 00001000111000 , posibil separate de șase 1. Mai multe dintre aceste modele au fost găsite de Frans Faase și sunt prezentate aici Arhivat 8 august 2013 la Wayback Machine .
Wolfram a sugerat caracterul aleatoriu al evoluției conform Regulii 30, bazându-se în principal pe forma sa grafică externă. Cu toate acestea, aplicarea regulii 30 s-a dovedit mai târziu că satisface definițiile mai stricte ale haosului formulate de Devaney și Knudson. În conformitate cu criteriul Devaney, Regula 30 demonstrează efectul fluture - (dacă specificați 2 stări inițiale care diferă, de exemplu, doar de un bit , atunci descendenții acestor 2 stări îndepărtate de multe generații vor fi complet diferiți), periodic configurațiile sunt dense în spațiul tuturor configurațiilor topologiei Cantor . De asemenea, regula 30 are proprietatea de amestecare . Conform criteriului Knudson, acesta arată sensibilitatea la condițiile inițiale și densitatea orbitelor procesului (orice configurație duce în cele din urmă la apariția tuturor configurațiilor posibile ale celulelor finale). Ambele caracteristici ale comportamentului haotic al evoluției regulii 30 rezultă dintr-o proprietate a regulii 30 care este ușor de verificat: dacă două configurații C și B diferă cu o celulă la poziția i , atunci după un pas noile configurații vor diferi la celulă. i + 1 [5] .
Etapele inițiale în evoluția regulii 30
2000 de pași de evoluție Regula 30
Aproximativ 15.000 de pași în evoluția regulii 30
Structuri periodice în timpul evoluției
Evoluție în condiții inițiale aleatorii
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 |