Логіка свідомості. Частина 1. Хвилі в клітинному автоматі


Почнемо розмову про мозок з дещо абстрактній теми. Поговоримо про клітинних автоматах. Клітинний автомат – це дискретна модель, яка описує регулярну сітку осередків, можливі стани комірок і правила змін цих станів. Кожна з комірок може приймати кінцеве безліч станів, наприклад, 0 і 1. Для кожної з комірок визначається околиця, задає її сусідів. Стан сусідів і власний стан осередку визначають її наступного стану.

Найбільш відомий клітинний автомат – це гра «Жизнь». Поле в грі «Життя» складається з комірок. Кожна комірка має вісім сусідів. Задається початкова комбінація. Потім починається зміна поколінь. Якщо у зайнятої комірки два або три зайнятих (живих) сусіда, то комірка продовжує жити. Якщо сусідів менше двох або більше трьох, то комірка вмирає. Коли порожньої клітинки виявляється рівно три сусіда в ній зароджується життя. Задавши довільну початкову комбінацію можна поспостерігати її еволюцію.



Потенційно осередку при виборі такого стану можуть враховувати не тільки стан околиці і правила переходів, але й досвід щодо того, з чим їм раніше довелося зіткнутися. Тоді прийнято говорити про клітинних автоматах з пам'яттю.

Уявімо наступний клітинний автомат. Розташуємо елементи (клітинки автомата) на регулярній решітці. Для кожного елемента визначимо околиця з радіусом R, яка буде областю стеження цього елемента.


Площину клітинного автомата. Червоним обведено область стеження вибраного елемента

Припустимо, що якимось чином на площині автомата виник компактний патерн активності (малюнок нижче). Компактність означає, що всі активні елементи потрапляють в область радіусом R.


Патерн початкової активності. Показані тільки активні елементи. Елементи зображені щільно, без зазору. Кожній точці зображення відповідає один елемент

Тепер підрахуємо скільки активних елементів потрапило в поле стеження кожного з елементів (малюнок нижче).


Поле стеження для одного з елементів і потрапили в це поле активні елементи

Задамося якоюсь невеликою ймовірністю p (у прикладі – це 3%). Для кожного елемента, що знаходиться в спокійному стані, у якого кількість активних елементів у полі стеження перевищить певний поріг виконаємо наступну процедуру. Змусимо елемент випадковим чином з імовірністю p перейти в активний стан. Відповідно, з імовірністю 1 — p елемент залишиться в неактивному стані. Запам'ятаємо персонально для цього елемента його вибір і картину активності в його полі стеження.

В результаті навколо патерну початкової активності утворюється оточення з активних елементів, що утворюють випадково згенерований візерунок (малюнок нижче). З причин, які скоро стануть зрозумілі назвемо таку активність хвильовий.


Перший крок моделювання. Хвильова активність (сіра) на тлі вихідної активності (червона)

Перейдемо до нового такту. На другому такті моделювання елементи, розташовані по периметру зони хвильової активності, «побачать» виникла нещодавно активність. Повторимо для них процедуру активації. Елементи, що стали активними на попередньому кроці, переведемо в стан релаксації, тобто вимкнемо їх активність і на певний час заблокуємо їх можливість порушуватися по відношенню до распространяемому сигналу.


Другий крок моделювання. Поширення фронту хвилі. Сині елементи перебувають у стані релаксації

Повторюючи кроки моделювання, ми отримаємо поширюється по автомату активність з певним унікальним випадково створеним візерунком.


Серія тактів первинного поширення візерунка хвильової активності. Білі точки – активні елементи, що утворюють фронт хвилі. Сині точки – елементи, перебувають у стані релаксації по відношенню до распространяемому сигналу

Якщо створити в автоматі інший компактний патерн активності, то він точно так само породить поширюється від нього фронт хвилі. Але, що важливо, візерунок нової хвилі буде унікальний і відрізняється від візерунка попередньої хвилі. Будь-який візерунок початкової активності буде породжувати унікальну, характерну лише для нього хвилю.

Змінюючи початковий візерунок, ми будемо кожен раз отримувати нову хвилю. При цьому елементи автомата будуть пам'ятати те, які візерунки через них вже пробігали. Введемо правило хвильового збудження. Кожен елемент, який виявив високий рівень активності навколо себе, повинен буде перевірити чи не схожа картина цієї активності на одну з раніше запам'ятованих візерунків. Якщо картина виявиться йому знайома, то йому слід поводитися так само, як і при першому проходженні такої хвилі.

Підсумкову логіку роботи нашого автомата можна описати так: якщо елемент бачить незнайомий сигнал, то він випадковим чином визначається спрацьовувати йому чи ні. При цьому він запам'ятовує і візерунок хвилі, і зроблений вибір. Якщо сигнал йому знайомий, то він повторює вибір, зроблений при першому знайомстві з цим сигналом. Спільне спрацьовування елементів породжує фронт хвилі, що розходиться від патерну початкової активності. Релаксація забезпечує однонаправлене розповсюдження хвилі від місць де активність уже була в сторону де її ще не було.



Для кожного випромінюючого патерну хвиля буде, по-перше, мати унікальний відмінний від всіх інших хвиль візерунок поширення, а по-друге, цей візерунок буде завжди один і той же для одного і того ж запускає патерну. Це означає, що якщо ми введемо словник понять і зіставимо кожному поняттю певний кодує його патерн, то ми зможемо передавати інформацію про активність якого-небудь поняття по всій поверхні клітинного автомата. Так як кожен патерн породжує хвилю з унікальним візерунком, то в будь-якому місці клітинного автомата по малюнку проходить хвилі можна судити про те яке поняття поширюється цією хвилею. На малюнку нижче видно, як розрізняються візерунки різних хвиль, проходячи через одне і те ж місце.


Візерунки хвиль від різних початкових патернів, які виникають в одному і тому ж місці клітинного автомата

Якщо сигнал кодується досить малим відсотком активних елементів, то кілька сигналів можуть поширюватися по автомату одночасно, зберігаючи свою індивідуальність і не інтерферируются один з одним. При одночасному поширенні декількох хвиль фронти цих хвиль можуть проходити один крізь одного, не змінюючи свого візерунка.


Моделювання взаємного проходження хвиль від двох джерел. Попередньо автомат був навчений на кожну з хвиль окремо

Одночасно по автомату можуть поширюватися кілька хвиль, відповідні різними сигналами. Однак при збільшенні їх кількості рано чи пізно настає момент, коли накладення декількох хвильових візерунків призводить до появи помилкових спрацьовувань. Помилкові спрацьовування лавиноподібно збільшують кількість активних елементів. З якого моменту виникає режим самозбудження, картина якого сильно нагадує картину епілептичного припадку.

Варто відзначити, що сигнали, що кодуються таким автоматом, набувають властивість дуалізму, яке відповідає дуалізму елементарних частинок. Так само, як і частинки, які проявляють одночасно і корпускулярні і хвильові властивості, інформаційний сигнал у описуваної моделі – це одночасно і патерн, який запускає хвилю, і хвиля, яка у кожній фазі свого шляху переходить у патерн, який, у свою чергу, випромінює продовження хвилі. До поширення інформаційної хвилі застосуємо принцип Гюйгенса-Френеля, коли кожна точка куди дійшов фронт хвилі може розглядатися як самостійний джерело випромінювання сферичної хвилі.

Описаний алгоритм формування хвиль має істотний недолік. Коли елемент бачить хвилю вперше він робить вибір брати участь йому у хвилі чи ні, а потім запам'ятовує зроблений вибір разом з видимим йому візерунком хвилі. Це дозволяє в наступний раз отримати повторюваність хвильового візерунка. Але при цьому елемент може дізнаватися хвилю тільки в тому випадку, коли вона приходить з тієї ж сторони, що і в момент запам'ятовування. Нескладно модифікувати алгоритм, щоб позбутися цього недоліку. Досить трохи відкласти момент запам'ятовування нової хвилі. Замість запам'ятовування візерунка в той момент, коли нова хвиля підійшла до елементу, можна дати хвилі трохи поширитися далі й запам'ятати візерунок, отриманий навколо елемента. У результаті елементи автомата стають інваріантні до напрямку поширення хвиль. Тобто один і той же візерунок хвилі відтворюється однаково, незалежно від того, звідки прийшов фронт цієї хвилі.

Така доробка автомата додає йому дуже важливе властивість. Візьмемо довільне знайоме автомату поняття. Цьому поняттю будуть відповідати хвиля з унікальним візерунком. Якщо в будь-якому місці площині автомата відтворити фрагмент такого візерунка, то з цього місця пошириться хвиля, що відтворює унікальний візерунок первісної хвилі на всьому шляху свого проходження. Наприклад, якщо на автоматі (малюнок нижче) у обведеної лінією області (1) створити певний візерунок, то дійшовши до місця (2) фронт хвилі створить якийсь унікальний для цієї хвилі візерунок.


Оригінальний візерунок запускає хвилю з області (1) і, доходячи до області (2), створює там унікальний візерунок


Якщо тепер в області (2) відтворити візерунок, який був там при проходженні фронту хвилі, то з цього місця испустится хвиля, повторює оригінальний візерунок (малюнок нижче). Дійшовши до області (1) вона створить візерунок, тотожний тому, який коли-то запускав вихідну хвилю.


Нова хвиля запускається області (2) візерунком, який був частиною вихідної хвилі. Фронт хвилі, дійшовши до області (1), створює там візерунок аналогічний вихідного

Таким чином, виходить повна пов'язаність усього простору автомата. Тобто, потенційно будь-яке його місце може запустити інформаційну хвилю і при цьому всі ділянки автомата куди дійде відповідна хвиля отримають доступ до цієї інформації.

Програма, що моделює такий клітинний автомат доступна посилання.

Описаний клітинний автомат почасти схожий на біжучу хвилю на стадіоні.



На трибунах усі встають, коли до них доходить фронт хвилі і сідають через секунду. У результаті виходить суцільна хвиля. А тепер уявіть, що ви повинні встати тільки якщо поруч вже встали певні сусіди (наприклад, конкретні троє з двадцяти сидять поруч). І припустимо, що у вас є список комбінацій, на які ви повинні реагувати. Припустимо, що у кожного на стадіоні є свій список. Тоді бігти буде вже не суцільна хвиля, а візерунок складений з тих, хто встав, дізнавшись комбінацію з свого списку. Якщо на таку конструкцію дивитися з великої відстані, то ми побачимо просто біжучу хвилю. Але якщо подивитися в конкретному місці фронту хвилі, то ми роздивимося візерунок, складений з встали людей.

За такою трибуні можна передавати нескладні послання. Наприклад, візерункам хвиль можна зіставити літери. Якщо запустити візерунок якоїсь букви в одному кінці трибуни, то в будь-якому іншому місці трибуни, коли до нього дійде хвиля, по візерунку цій хвилі можна буде сказати, яка саме буква передається.

Поки це ще не мозок, а тільки клітинний автомат. У наступній частині буде показано, яке відношення цей автомат може мати до реального мозку.

P. S. Я дуже раджу почитати трохи більше про клітинних автоматах і про те, як вони можуть бути пов'язані з пристроєм всесвіту і особливо звернути увагу на особистість Конрада Цузе.

Олексій Редозубов
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.