Доброго времени чтения, уважаемые пользователи Хабра! Игра Жизнь предложена Джоном Конвеем в 1970 году, и неоднократно обсуждалась на habrahabr.ru. Основные использованные теги приведены в метках к данной статье.
Предлагается ряд изменений, которые могут привести к новому направлению в развитии.
Предложение 1. В оригинальной игре предложено бесконечное поле, однако в реализациях обычно используется правило развертки тора — горизонтали и вертикали замкнуты в циклы.
Предлагается вариант, при котором горизонтали прямоугольного поля конечного размера замкнуты в цилиндр, а вертикали попарно соединены с шагом в половину размера поля по горизонтали. Таким образом можно получить легкий для расчетов аналог сферы.
Для моделирования изотропии предлагается использовать треугольную сетку, которая в расчетах подменяется оценкой близости по горизонтали, вертикали, и одной из диагоналей.
Предложение 2. Для организмов предлагается добавление уровней сложности, возможностей объединения, генетической модификации и обучения. Каждому организму назначается до 10-ти уровней сложности, каждый уровень представлен как в материальной, так и в абстрактной области.
Уровень сложности в материальной области влияет на максимальную скорость (количество клеток, на которые организм передвигается в одном направлении за один ход). Таким образом, организмы с первым уровнем сложности (индекс массива 0) неподвижны. Целостный организм передвигается целиком.
Уровень сложности в абстрактной области влияет на количество обозреваемых по прямой соседних клеток. Предлагается удвоенный по сравнению с возможностью перемещения радиус обзора: для первого уровня — 1, для второго уровня — 3 и т.д. Видимость определяется от самых крайних клеток организма.
Реализация подобных игр может быть интересна современным студентам, изучающим обработку больших данных и алгоритмы обучения. Собственного варианта реализации на данный момент нет.
Sirion
Наконец-то кто-то придумал модификацию игры «Жизнь». Респект таким людям!
palexisru
Спасибо! Совпали хорошая книга и отпуск :)
AllexIn
Я уверен, что это был сарказм.
palexisru
А презентацию книги The Master Algorithm просмотреть рекомендую. Добавил в конец статьи.
den_po
Но ведь есть действительно интересные модификации
Sirion
Мне нравится вариация Day and Night.
VaalKIA
Вообще-то игра Жизнь, настолько элементарна, что её можно даже в тетрадке, в клетку прорисовать. Соответственно когда заходит о ней речь, на ресурсах, связанных с программированием, да ещё и в ключе «смотрите что я придумал», то где картинки поколений разжигающие интерес? Сложность правил, как показывает игра Жизнь, не гарантирует этой самой жизни — вырождение или механические мигалки тому подтверждение. Статья больше похожа на: «мне лень самому или не умею, сделайте мне посмотреть как это будет».
П.С. про Верховой алгоритм ничего не понял.
palexisru
извиняюсь, ответил ниже — промахнулся веткой
ScratchBoom
Посмотрите какую неимоверную дичь этот пользователь пишет в других своих постах и сразу всё поймёте.
palexisru
Верховный алгоритм (The Master Algorithm) — соединение эволюционного, логического, математического, Байесовского, имитационного подходов. Сделать даже простейшие качественные реализации этих видов алгоритмов на данный момент времени и знаний не хватает, но игру Конвея испробовали во многих модификациях.
Думаю, будет не справедливо к сообществу, если все будут ждать, когда у меня дойдут руки.
Да и принцип разделения труда — общество выигрывает, если каждый занимается тем, что у него получается лучше всего.
begemot_sun
вся соль жизни в том, что имея простые правила, можно добиться впечатляющих результатов.
В Вашем случае, вы хотите очередную эволюцию путем стимулирования «ваших» правил. но что концептуально нового будет получено? какие будут результаты, которые в корне будут отличные от стандартной жизни? что дает ва- усложнение этих правил?
palexisru
Предполагается, что для каждого уровня сложности будут отбираться наиболее эффективные на этом уровне виды обучения. Именно выигрывающие виды обучения и будут исследоваться.
begemot_sun
Это называется генетический алгоритм, но никак не игра Жизнь.
Жизнь может быть только одна — с простыми правила.
palexisru
и в книге, и по моей модели эволюция (не обязательно с генами) — первый и основной уровень
но развились и мозг, и логика, и математика, и финансовое прогнозирование
попробовать усложнить интереснее, чем потом отключать не используемое
ScratchBoom
palexisru
longclaps
Где-то когда-то читал анекдот про изобретателя утюга на жидком топливе.
И вот опять.
dom1n1k
Впервые узнал об игре Жизнь из ещё бумажной «Компьютерры». Уж не помню, сколько это лет прошло, но немало.
И на бумаге порисовал, и программно свою реализацию писал. Очень быстро перегорел.
Игра очень переоценена, сейчас уже не понимаю, почему о ней часто пишут с придыханием.
Затея на пару-тройку вечеров, найти несколько устойчивых комбинаций — и забросить.
palexisru
с Декартом в аватарке можно увидеть картезианский дуализм в предлагаемых изменениях :)
michael_vostrikov
Вы, простите, правила-то читали? Ухудшенные условия это как — «немного живой», «более чем мертвой», или «почти трое соседей»?
Если бы вы скачали исходники какой-нибудь реализации и поигрались, то вы бы заметили, что при любом изменении констант быстро происходит либо либо статичное зацикливание, либо перенаселенность, либо вымирание. Таких красивых бегающих картинок, как при стандартных параметрах, получить не получится.
Это просто интересный клеточный автомат, не более того. Не стоит пытаться сделать из него RPG.
palexisru
вариант ухудшения условий — наличие 2-х заполненных клеток по соседству для зарождения и 1-й-2-х для жизни (генетические значения берутся от 2-х соседних клеток, например, по их похожести в материальной сложности, и непохожести в абстрактной сложности).
при выходе из комфортной части потребуется использование встроенных мозгов для выживания и размножения
от «игры жизнь» берется игровое поле. На аналогичных полях сделан, например, сокобан.
на одинаковых игровых полях можно играть и в уголки, и в шашки, и в шахматы, только в разное время
michael_vostrikov
Во-первых, выглядит как улучшение условий — меньше страдает от одиночества, меньше условий для зарождения. Во-вторых, как я уже сказал, такое изменение констант приведет к перенаселенности (а изменение в другую сторону к вымиранию). Вы похоже даже не представляете динамику игры, а еще предложения по модификации выдвигаете.
palexisru
увеличивается чувствительность к тесноте, так что перенаселенность под вопросом
michael_vostrikov
А вы возьмите и проверьте)
palexisru
Да, много еще идей проверить надо. По молодости легче перебирались :)
lair
Но никто же не говорит, что сокобан или реверси — модифицированная версия игры "Жизнь"? Вот и в вашем случае то же самое.
palexisru
Есть шашки международные, есть русские
Будем считать, что это русская жизнь :)
S_A
Рекомендую ознакомиться с книгой "программирование искуственного интеллекта в приложениях". Кажется 13-го она года. Так вот, там есть глава про моделирование стратегий «жертва-хищник» (моделирование пищевых цепочек), где каждая особь имеет свою нейросеточку, и есть и клетки, и ресурсы на них. Там есть код. И помимо этого там вообще много чего интересного.
Bhudh
Я просто оставлю это здесь: https://habrahabr.ru/post/241776
jaiprakash
А я оставлю это, с вашего позволения.
Вбивайте свой алгоритм и получайте результат.
palexisru
Спасибо всем за дополнения. Да, за современными студентами угнаться будет трудно. Приятно посмотреть, какие инструменты сделало наше поколение ;)
palexisru
Вот на работе им придется иметь дело со стандартными инструментами. Или потихоньку развивать стартап.