Комментарии 23
Не вижу ничего удивительного. На PDP-11 была командочка с точно таким же эффектом:
MOV -(PC), -(PC)
Что она делала — уменьшала адрес, хранящийся в счётчике команд (PC), который указывал на следующую команду — то есть после уменьшения он уже указывал на ЭТУ команду; брала значение с этого адреса (то есть код этой команды), опять уменьшала адрес, хранящийся в счётчике команд (PC), и клала по этому адресу только что взятое значение — при этом в PC, как нетрудно проследить, оказывался адрес только что положенного значения, которое представляло собой ту же самую команду, только на один шаг ближе к началу адресного пространства — после чего весь цикл повторялся.
Так вот, для "муравья" набор клеточек в его непосредственном окружении — это своеобразная программа (на чём-то, напоминающем Brainfuck). И некая последовательность клеточек имеет на этом "языке" ровно тот же эффект, как и вышеприведённая "самокопирующаяся" команда. Как только в результате выполнения процессором—"муравьём" эта последовательность образовалась — всё, он впадает в бесконечный цикл и "сбегает".
Такой себе однокомандный "вирус".
Помнится, мы это использовали ещё на БК-шке (БК-0010-01), чтобы быстренько "подчистить" код программы в памяти при попытке выхода. Всего ~0,1 сек – и всё. :)
Мне напомнило самосборку прионов. Стоит одному неправильно свернутому белку прикоснуться к нормальному - он тоже теряет нормальную конформацию и слепляется с первым. Вместе мы вишневый сад они натыкаются на следующую молекулу, еще одну, и каждая теряет конформацию от взаимодействия с крайним белком в агрегате и тоже прилипает на кончик. Образуется длинная фибрилла, с заразными "концами", на которые может сесть нормальный белок, и тут же схлопнется и удлинит палку еще на чуть-чуть.
Ну так бы все это и продолжалось, но клетки, они ведь слишком умные, там есть всякие протеазы/шапероны/я в этом не разбираюсь. В общем, эти структуры говорят: так, стоп, что за дерьмо тут плавает, сейчас мы его расщеплять будем. Раз - и уже не длинная палка плавает, а две маленькие, но о четырех концах. Дальше все повторяется. И затем как в детской задачке про пруд, зарастающий кувшинками: этих прионов вроде были следовые количества, а потом вдруг ХОБА - и весь мозг человека в них.
Так и этот - ему нужен лишь край той лужи, которую он нарисовал, и чтобы на нем образовались вот эти выступы в форме М и Т - все, дальше только натыкание на длинную фибриллу следующих сегментов.
Неупорядоченное движение муравья перебирает различные конфигурации стартовых площадок упорядоченных движений, отводящих муравья от хаотичных флуктуаций. Да, есть что-то в этом муравье фундаментального, гиперфрактального и эволюционного, эдакая "формула самоусложнения". Правда, нет никакой защиты от зацикливания (кристаллизации). Кажется, для полноты условий возникновения дарвиновской троицы в системе нужно добавить условия для 1) расщепления муравья и 2) смерти муравья. Надо будет поиграться :).
Интересно, а моделирование в 3D/4D проводили? Может быть какие-то физические аналогии в природе всплывут?
Результат работы симметричных муравьев (LLRR) чем-то отдаленно напоминает человеческий мозг.
Как-то давно пробовал, там не выходит сложного поведения, либо быстро циклится, либо уходит на магистраль. Хотя, если вдумчиво подобрать алгоритм, может быть и можно получить что поинтереснее, благо попробовать несложно.
Если анимаций не хватает — тут можно посмотреть https://habr.com/ru/post/490454/
Уже само это внезапное изменение поведения муравья Лэнгтона заставляет задуматься — как из полностью хаотичной системы вдруг рождается строгий порядок?!
Напоминает немного антропный принцип. В том смысле, что есть некий порядок, который позволяет муравью "сбежать". И у этого порядка есть исходная позиция. И все, что делает мураверь - это хаотично перебирает все возможные исходные позиции, пока ее не создаст.
Да, но тут главное, что такая последовательность действительно существует, а не то, что муравей рано или поздно на нее наткнется.
Потому что если-бы ее не было, то он не смог бы сбежать, как ни пытался. И мы бы не обсуждали этот удивительный парадокс.
Так что это получается такая упрощенная форма антропного принципа.
Думаю, для этого явления, которое мы будто бы видим в клеточном муравье, но не можем описать, подходит слово "самоорганизация" :). Энтропия хаотической системы будто бы у нас на глазах уменьшается, из облака пыли рождается стройный кристалл. В итерациях и самоповторениях самых абстрактных операций будто бы содержится некий потенциал, способный из хаоса родить порядок. И наше с вами возникновение в этой вселенной было неизбежным, ей всего-то нужно было расширяться и хаотично флуктуировать, чтобы родить бесконечную сложность. И это будто бы доказывает математический муравей :).
Порядок может родиться только тогда, когда такая "самокопирующаяся" опция в принципе существует (а желательно, чтобы не просто самокопирующаяся, а саморазмножающаяся).
В том и суть, что в принципе самоорганизация хаоса неизбежна (ещё не доказано, не сформулированы условия, но пытаются именно в эту сторону сформулировать и доказать - и в физике, и в математике :)). Условия возникновения самоорганизации очень абстрактны и применимы к широкому классу систем (сводимым к конечным автоматам), в том числе к физическим. Эти условия и ищут :).
В эту тему теоретически еще и известная 3N + 1 проблема подходит. Допустим, никто не проверял 10 000 шагов, максимум 1000, и возможность муравью сбежать это еще только красивая теория, не подтвержденная на практике.
Да, возможно даже ответ нам принципиально недоступен (лежит в области гипертьюринговых, т.е., "мнимых" вычислений), а на шкале натуральных чисел затеряны ничем не обоснованные порядковые номера (стартовые параметры) бесконечных вселенных, которые перебором найти не хватит жизни любой из этих вселенных :). Физики создадут Теорию Всего, в которой надо будет задать только номер вселенной, чтобы получить ответы на все вопросы, но номера вселенной, в которой мы живём, мы принципиально не сможем узнать. Что-то типа "космической цензуры", пути господни неисповедимы, и чем больше мы будем уточнять физические законы, тем они будут становиться сложнее. Жуть! :)
Муравей Лэнгтона — загадочный клеточный автомат