💡 Идея: Игра «мета-жизнь» со связанными вселенными

 Публичный пост

Дисклеймер: я полный нуб в программировании и всем связанном с CS, поэтому надеюсь на подсказку от знающих людей. Это очень размытая идея, но хочется обсудить с кем-то.

Мы все знаем игру "Жизнь" Конвея, а клеточные автоматы где только не используются. Но есть один вариант игры, который я нигде не смог найти, а он кажется мне любопытным с фундаментальной точки зрения.

Идея такая: берем две вселенные с разными правилами эволюции. Но связываем их через несколько пикселей (т.е. при попадании на определенный пиксель клетка становится живой и в другой вселенной). По идее, в такой системе возможны разные варианты, характерные для связанных систем. Например, это влияние может быть пренебрежимо малым, а может вызвать "резонанс". Интересно посмотреть на равновесное состояние такой системы в зависимости от силы связи. Вообще, такая задача - примитивная модель приемника и передатчика. Т.е. одна вселенная передает (или нет) информацию в другую. По идее, энтропия двух вселенных может быть посчитана в зависимости от силы и закона связи. И получается, что можно изучать информацию с несколькой новой стороны.

Далее, логичный шаг: один такой элемент из двух связанных вселенных - это два пикселя в игре "мета-жизнь". Но при этом правила эволюции для такой системы уже не заданы нами напрямую, а формируются из динамики связи вселенных.

Кажется, что для моделирования биологических систем, в т.ч. при возникновении жизни, такая система может дать любопытные результаты. Можно попробовать исследовать, могут ли какие-то системы оказываться "хищниками" и полностью поглощать другие. Или могут ли устанавливаться совсем новые паттерны, возможно даже одинаковые в двух вселенных.

В общем, выглядит интересно, с моей точки зрения по крайней мере - столько перспектив. С другой стороны, просто закодить это я не могу чисто из-за отсутствия навыков.

Насколько это вообще осмысленно? Я изобретаю велосипед? Есть ли какие-то материалы, которые можно почитать на эту тему? Насколько сложно подобное написать?

Связанные посты
22 комментария 👇

Слава chatGPT! Он написал для меня программу, которая реализует эту идею. В целом, там явно возникают иные структуры. Но теперь я не могу придумать, как правильно характеризовать Вселенную. Считать энтропию финального состояния? Кто-нибудь знает, как это делается в настоящей науке? Я поискал по литературе, но ее столько всякой, что сходу сложно въехать.

Но при этом правила эволюции для такой системы уже не заданы нами напрямую, а формируются из динамики связи вселенных.

Вся крутота клеточных автоматов в том, что мы именно что задаем локальные простые правила, а дальше из этого и начальных условий возникает всякая макроскопическая красота.

Оригинальность идеи в том, чтобы кроме эквивариантных к сдвигу правил добавить привязанные к пространству. Это довольно просто напрогать, почти ничем не отличается от обычных клеточных автоматов, интересно будет посмотреть на динамику.

Вброшу еще несколько релевантных красивых штук:

  Развернуть 1 комментарий

@AlexOzerin, на мой взгляд, Lenia незаслуженно обделена вниманием. В мае 2020 у автора вышел новый пейпер, где он приводит генерализацию гладкого клеточного автомата и экспериментирует с разными вариациями, включая multi-dimensional и multi-layer, где стейт это вектор, а правила могут влиять на одни элементы этого вектора в зависимости от других. Также рассказывается про разные открытые с помощью генетических алгоритмов "виды" "существ" и паттерны поведения которые они проявляют, например движение, размножение, рост при поедании других существ и разделение труда.

Видео:


Пейпер: https://arxiv.org/abs/2005.03742

  Развернуть 1 комментарий

@LexsZero да, но...
Life, Lenia и NCA очень нишевые вещи и долго прорастают до широких масс.

Не знаешь, кстати, есть ли в опенсорсе Life или Lenia на не-евклидовых пространствах?)

  Развернуть 1 комментарий
Георгий Широков Инженер-конструктор 26 октября 2020

Интересная идея. Можно подумать как реализовать и развить.

  Развернуть 1 комментарий

@gekonshi, все, на что моих способностей хватило, так это взять чью-то реализацию обычной игры и в лоб добавить обновление состояния в зависимости от второй копии. Работало очень плохо😅

  Развернуть 1 комментарий

Если основа обеих Вселенных это что-то конвеевски-подобное, то, кажется, такое связывание приведет к тому, что либо Вселенная на которую оказано влияние "сломается" и свернёт сама себя как нестабильная, либо же это влияние (через n-пикселей) останется незаметным.
Правда есть более любопытный вариант, в котором симбиоз 2-х самостоятельно-неустойчивых Вселенных превратится в устойчивую систему 2-х Вселенных — своего рода пульсация.
Но на уровне концепта это останется всё той же Life Конвея. Или я что-то упускаю?

Или речь не о Конвее, а о генетическом программировании?

  Развернуть 1 комментарий

@rastyka,

Но на уровне концепта это останется всё той же Life Конвея. Или я что-то упускаю?

Это именно Life Конвея, но с дополнительной степенью свободы. В оригинальной версии у вас есть только один параметр, по сути: начальное положение клеток. А тут появляется дополнительный параметр - расстановка и количество клеток связи. В том и интерес, чтобы сделать минимальный шаг от оригинала и попробовать получить какое-то качественно новое решение.

Правда есть более любопытный вариант, в котором симбиоз 2-х самостоятельно-неустойчивых Вселенных превратится в устойчивую систему 2-х Вселенных — своего рода пульсация.

Да, именно на это и надежда! Чтобы, например, жизнь "перетекала" из одной Вселенной в другую. Или чтобы наоборот, период полураспада жизни сильно сокращался. В общем, какое-то явление, которое не возникает в оригинальной жизни.

А дальше - представляем каждую вселенную в виде бинарного 1/0 в зависимости от жизни в ней, связываем много-много вселенных друг с другом, и получаем мета-жизнь x)

  Развернуть 1 комментарий

о перетекании.
по-моему, тут все будет так же зависеть от начального положения клеток — просто теперь системой будет считаться не один 2-мерный мир, а система таких миров.
т.е. любое положение системы будет зависеть от начальной расстановки. вопрос получается в том, что вы выберете за начальную расстановку и какие из пикселей будут при этом "общими".
соотвественно, в некоторых положениях будет получаться именно то, о чем вы говорите, но я пока не вижу тут кардинального отличия от идеи Конвея.

с точки зрения "мета" тут любопытнее, но нужно понять каким законам подчиняется этот мета-мир.
— например, если должен родиться новый мир из соотношения позиций других бинарных миров, то какой именно он должен быть? (и начальная расстановка и вообще — один мир или вышерассмотренная система миров. каких?)
— должен ли мир исчезать на основе конвеевских правил (для метамиров, где он клетка) или не должен, если он сам по себе "живой"?

с точки зрения упражнения в программировании кажется любопытным, но не вижу приложения этому кроме как визуальной заставке или как арт-проекту.

либо нужно более подробно сформулировать начальные правила и цели. выходит, вы хотите получить сложные, неслучайные выводы из по сути случайного выбора в качестве основы конвеевской "жизни")

  Развернуть 1 комментарий

@rastyka,

я пока не вижу тут кардинального отличия от идеи Конвея.

Может бы и нет. Я подходил к идее с физической точки зрения, и в природе часто связанные системы проявляют принципиально новые свойства. Плюс такого подхода в том, что можно вселенную характеризовать одним числом (скажем, энтропией как функцией времени) и смотреть зависимость этого числа от связи для статистически большого набора начальных условий.

Другой вариант - модификация законов Вселенных. В двух вселенных могут два разных дополнительных правила, и можно сравивать, может ли правило "передаваться" через связь. В общем, в идеале хочется исследовать потоки информации.

Моя научная деятельность сейчас связана с нестационарной термодинамикой, и интуитивно кажется, что может быть какая-то связь, но я пока не знаю, какая.

— например, если должен родиться новый мир из соотношения позиций других бинарных миров, то какой именно он должен быть?

А вот это и интересно: мы напрямую не будем это контролировать. То есть, новый мир будет некоторым эмерджентным свойством системы фундаментальных миров.

— должен ли мир исчезать на основе конвеевских правил (для метамиров, где он клетка) или не должен, если он сам по себе "живой"?

К мета-миру мы уже не задаем никаких правил, мы просто задаем критерий, когда считать мир "живым". А вот этот критерий может быть бинарным, чисто на основе условной стабильности или энтропии мира. Как именно выбрать - я не знаю:)

с точки зрения упражнения в программировании кажется любопытным, но не вижу приложения этому кроме как визуальной заставке или как арт-проекту.

Возможно, для меня это скорее вопрос из разряда "а что если". Я слишком мало знаю о теории информации, чтобы что-то более осмысленное сказать, но мне ужасно любопытно:)

выходит, вы хотите получить сложные, неслучайные выводы из по сути случайного выбора в качестве основы конвеевской "жизни"

Да, кстати, именно так! Но ведь в этом и прелесть других физических законов: все частицы движутся по сути случайно, но их связь определяет, что вот этот набор частиц - стол, а вот этот - кот. И интересно, можно ли из случайности на фундаментальном уровне получить некоторые законы эволюции на более высоком "мета-уровне" чисто из задания связей между мирами.

  Развернуть 1 комментарий

а в чем игра?

  Развернуть 1 комментарий

поясню, что я в курсе и за Life Конвея, но ей тоже не хватает формальных признаков игры.

  Развернуть 1 комментарий

@WizzardRick, мне кажется, собственно название "игра" - не принципиально. Ну назвал так Конвей свои автоматы и назвал.

  Развернуть 1 комментарий

@MikhailKorobko, тогда ок :) профдеформация у меня.
А какая цель у твоей симуляции?

  Развернуть 1 комментарий

@WizzardRick, цель - попробовать воспроизвести более сложные эффекты в популяции (типа резонансов) на такой простой модели. Интересно поизучать роль связности информационных систем. Т.к. модель очень минималистичная, в ней можно попробовать характеризовать обмен информацией более формально. А в конечном итоге - подумать, какие параллели можно провести с известными нам биологическими системами. Мне интуитивно кажется, что связанные системы позволят воспроизводить гораздо более сложные паттерны поведения (типа хищник-жертва).

  Развернуть 1 комментарий

Это скорее теория игр получается?
Просто нельзя перенести всю эволюцию на другую эволюцию, по сути, ограничения несовместимости и избытка мутаций, связанных с выживаниями именно в данной среде

  Развернуть 1 комментарий

@Makcyzor, это не теория игр в том смысле, как обычно этот термин используется (тут нет игроков и нет неопределенностей, которые позволяют оптимизировать стратегии). Это пример системы, которая эволюционирует в новые формы без задания этих форм нами (мы устанавливаем только начальные условия).

Просто нельзя перенести всю эволюцию на другую эволюцию

Ну так речь об этом и не идет. Тут попытка построить простейшую модель некоторой эволюции, попытка понять законы, которые управляют подобными системами на минимальном примере. Обычно исследуются разные варианты форм, которые могут возникать, модификации правил и т.п. Я предлагаю попробовать исследовать информационные свойства системы, связывая ее с другой подобной системой и изучая их взаимодейтсвие.

  Развернуть 1 комментарий

@MikhailKorobko Какая-то квантовая спутанность получается!;)

  Развернуть 1 комментарий

@Makcyzor, это жжж - неспроста! x)

  Развернуть 1 комментарий
Maximus Электрический инженер 21 октября 2021

Тут по свежим новостям сообщают, шта Марк-Сахарна-Головушка увидел твой пост —но понял его несколько по-своему... 😋

  Развернуть 1 комментарий
Alexey Buravov Backend-разработчик 21 октября 2021

В принципе это реализуемо. Не совсем правда понял нюансы связи вселенных.
Есть вселенная А - допустим, поле 20 х 20.
Есть вселенная Б - допустим, поле 20 х 20 с другими правилами.
Пиксель (5, 4) во вселенной А как именно связан с таким же пикселем во вселенной Б?

Т.е клетка на этом пикселе теперь во вселенной Б ведет себя как ее "нативная" клетка?
Если она умирает в одной из вселенных - умирает в обеих?
Если она сходит (этого, кажется, нет в изначальной игре Конвея, но есть в других реализациях) с пикселя - "окна" между вселенными - клетка снова оказывается в одной из вселенных?
Может ли клетка совсем перейти из вселенной А во вселенную Б и исчезнуть из вселенной А?

  Развернуть 1 комментарий

@nightlord189, вообще конкретный закон для связи может быть сложным. Но в самом простом варианте так:

Т.е клетка на этом пикселе теперь во вселенной Б ведет себя как ее "нативная" клетка?

Да, моя идея была именно такая. Этот работает как "туннель" в другую вселенную. Но законы вселенной при этом не меняются.

Если она умирает в одной из вселенных - умирает в обеих?

Да, если она не сошла с пикселя.

Может ли клетка совсем перейти из вселенной А во вселенную Б и исчезнуть из вселенной А?

Да, как только она уходит с пикселя в одной вселенной, она оказывается целиком во вселенной Б.

Если она сходит (этого, кажется, нет в изначальной игре Конвея, но есть в других реализациях) с пикселя - "окна" между вселенными - клетка снова оказывается в одной из вселенных?

Да, только на пикселе-окне она находится в двух "сразу".

  Развернуть 1 комментарий

😎

Автор поста открыл его для большого интернета, но комментирование и движухи доступны только участникам Клуба

Что вообще здесь происходит?


Войти  или  Вступить в Клуб