2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Такова "Жизнь"
Сообщение25.04.2006, 18:05 
Заслуженный участник
Аватара пользователя


20/07/05
695
Ярославль
Эта тема для любителей "Жизни".

Я пока только начинающий любитель.
Играюсь вот с этой замечательной программой. :arrow: http://www.mirwoj.opus.chelm.pl/ca/index.html
Классно в ней то, что можно создавать свои собственные правила на любом языке
программирования, а также в ней есть Automation interface!.
Вот и я решил изменить правила "Жизни" Конвея, чтобы в нём у клетки было не два,
а несколько состояний: правила такие же, т.е. 3 живых клетки - клетка рождается,
2 или 3 живых - клетка выживает, но т.к. у клетки больше двух состояний, то может
возникнуть конфликт, например, если у мёртвой клетки 3 живых соседа одного цвета и
3 живых соседа другого цвета, в этом случае клетка не рождается в следующем поколении.
Я подумал, если добавить в "Жизнь" клетки с большим кол-вом состояний (пока играюсь с 5),
наверняка разнообразие конфигураций увеличится.
Я нигде в нете не встречал таких правил (может плохо искал, не знаю :? ).
Пока только обнаружил вот такие 3-осцилляторы 8-) :) :
Изображение
Изображение

Если сталкиваются два LWSS разного цвета, то получаются два глайдера разного цвета:
Изображение
Изображение
Изображение

А вот это, наверное, понравилось бы индуистам:
поколение 0
Изображение
поколение 55
Изображение
поколение 155
Изображение
А-а-а-хаа! поколение 240
Изображение

Ещё одна "интересная" вещь: можно клетки одного цвета заключить в устойчивую конфигурацию
другого, например внутрь "озера"
Расскажите о своих успехах, есть любители тратить впустую машинное и своё время :) ?

 Профиль  
                  
 
 
Сообщение26.04.2006, 15:26 
Заслуженный участник
Аватара пользователя


20/07/05
695
Ярославль
Ещё одно видоизменение правила Конвея "23/3":
Можно к обычной "Жизни" добавить ещё одно состояние, которое
вообще никак не изменяется, т.е. как было в начальной конфигурации,
так до конца в ней и остаётся (на рисунках клетки синего цвета).
Вот что получилось:
Если нарисовать две параллельные синие полоски на расстоянии 5 клеток и
внутри них нарисовать что-нибудь зелёным, то возникают "репликаторы" и ещё
какие-то странные быстро передвигающиеся конфигурации - "поезда".

"Репликаторы" (выделены):
поколение 0:
Изображение
поколение 59:
Изображение
поколение 100:
Изображение
поколение 180:
Изображение

"Поезд" (выделен):
поколение 0:
Изображение
поколение 31:
Изображение
поколение 71:
Изображение
поколение 111:
Изображение

Ну, и ещё такая вот ерундистика :) :
поколение 0:
Изображение
поколение 15000:
Изображение

 Профиль  
                  
 
 
Сообщение27.04.2006, 20:06 
Аватара пользователя


27/04/06
4
г. Радужный
Расцвеченная жизнь не нова, но ваши правила, в которых в рождении или выживании учитываются только ячейки одного цвета независимо от других мне еще не встречались. Я сперва подумал, что есть еще одна конфликтная ситуация - это когда ячейка первого цвета должна умереть, а на этом же месте должна родиться ячейка второго цвета. Что в этом случае выбрать - умирание или перекрашивание? Но по размышлении понял, что перекрашивание - это не рождение, это совсем новая операция. И если мы хотим оставить для каждого цвета правила Жизни, которые включают только рождение и выживание, то в этом случае логично выбрать умирание.

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

Из двух других осцилляторов правый - это хорошо известный пульсар. Он работает даже если не раскрашивать ячейки, то есть в обычной Конвеевской жизни. А вот для левого Ваши правила существенны. Но опять же можно обойтись всего двумя цветами живых ячеек, то есть тремя состояниями - если противоположные квадранты закрасить в один цвет.

Что касается свастики, то для образцов с поворотной симметрией она встречается в Жизни очень часто. А вот превращение ЛКК в глайдеры при симметричном столкновении - это очень интересно.
Еще было бы интересно найти образцы, для которых существенно большее, чем 3, количество состояний.

Ваша вторая модификация Жизни скорее всего тоже нова, хотя признаюсь, я думал об этом варианте, но до ума не довел. Образец с репликаторами, в общем-то, известен на цилиндре с окружностью 6. Воообще для симметричных случаев бесконечная полоса между вечно мертвыми ячейками (или, что то же, вселенная Жизни с параллельными краями) эквивалентна цилиндру с окружностью на 1 большей ширины полосы. Конечно, это относится только к симметрии относительно средней линии полосы. А для несимметричных случаев (как у Вашего поезда) разница между полосой и цилиндром существенна.

А Ваш сложный канал (как я понял, на тороидальном поле?) - это вообще здорово! И он дымит из открытого конца!

Кстати, Ваш первый осциллятор в варианте с 3 состояниями будет работать, если ячейки синего цвета заменить на вечно мертвые ячейки, то есть в рамках Вашей второй модификации Жизни.

 Профиль  
                  
 
 
Сообщение28.04.2006, 17:25 
Заслуженный участник
Аватара пользователя


20/07/05
695
Ярославль
В Словаре Жизни есть, оказывается, запись про расцвеченную жизнь, там говорится о правилах
с двумя (Immigration) и четыремя (Quadlife) состояниями. Кроме этой информации мне больше
ничего найти не удалось, что странно :!: : неужели у маститых "лайфэнтузиастов" не было такой
идеи (начиная аж с 1970-х гг. со всеми их аппаратными штуками типа CAM-8)? Возможно была
и ничего хорошего из этого не получилось, тогда почему никакой информации :? ?

Zip-файл с исходниками выше приведённых правил на языке "С" для программы "Mirek's cellebration"

Николай Белюченко писал(а):
Еще было бы интересно найти образцы, для которых существенно большее, чем 3, количество состояний.


Вот именно с этой целью я и решил написать такие правила, выбрав так сказать "свой жизненный путь" 8-) :)
Как вы думаете, на ваш гораздо опытнее чем у меня вгляд, удастся это сделать?
Мне кажется это сделать будет ещё труднее, чем найти новую форму жизни по обычным правилам :?

Кстати, Николай, вы не читали книжку W.Poundstone "Recursive Universe"? Интересно?

 Профиль  
                  
 
 Re: Такова "Жизнь"
Сообщение28.04.2006, 21:23 
Заслуженный участник
Аватара пользователя


23/07/05
18039
Москва
Борис Лейкин писал(а):
Эта тема для любителей "Жизни".

Я пока только начинающий любитель.
Играюсь вот с этой замечательной программой. :arrow: http://www.mirwoj.opus.chelm.pl/ca/index.html


Посмотрите вот эту программу: http://psoup.math.wisc.edu/Life32.html.

 Профиль  
                  
 
 
Сообщение29.04.2006, 17:49 
Заслуженный участник
Аватара пользователя


20/07/05
695
Ярославль
Someone писал(а):
Посмотрите вот эту программу: http://psoup.math.wisc.edu/Life32.html.


Да, спасибо, Someone.
Эту прогу я уже давно обнаружил. Она считается самой быстрой из существующих.
Но в ней нельзя создавать правила какие захочешь, например, с несколькими состояниями.


Ещё несколько паттернов для 1-го правила (вчера нашёл):

Осциллятор с периодом 15:
Изображение

Осциллятор с периодом 2:
Изображение

И немного блинкеров (или как они там называются):
Изображение
Изображение

 Профиль  
                  
 
 
Сообщение30.04.2006, 16:36 
Аватара пользователя


27/04/06
4
г. Радужный
Immigration и Quadlife - два наиболее известных варианта рацвеченной (colored) Жизни. Если понимать состояния по-вашему, то и то и другое - это автоматы только с 2 состояниями, то есть эквивалентны обычной Жизни. Просто для живого состояния вводится дополнительная характеристика ячейки - цвет. И дополнительные правила для цвета: 1)если ячейка выживает, то цвет ее сохраняется, 2)если ячейка рождается, то цвет ее - это цвет большинства родителей (т.е. либо все 3 родителя, либо 2 из 3 имеют этот цвет). Этих правил достаточно для Иммиграции, где имеется 2 цвета живых ячеек. Иммиграция задумывалась, как вариант Жизни, позволяющий играть вдвоем - каждый рисует начальную конфигурацию своим цветом, затем паттерн запускается до достижения стационарного состояния, состоящего из натюрмортов и осцилляторов. Чьим цветом закрашено большинство живых ячеек, тот и победил. Есть вариант с добавлением живых ячеек игроками через определенное число поколений.
Quadlife - наиболее удачная и логичная попытка увеличить количество цветов в Immigration. Здесь 4 цвета живых ячеек и к двум цветовым правилам Иммиграции добавляется 3)если все 3 родителя рождаемой ячейки имеют разные цвета, то цвет рождаемой ячейки - это четвертый цвет.
Были попытки расширить количество цветов до 24-битной палитры, например, закрашивая рождаемые ячейки в среднее арифметическое RGB-значений родителей. Недостаток этого метода - посерение конфигурации в процессе развития.
Последнее предложение Генриха Кенига - векторное сложение цветов родителей с нормировкой вектора на единицу, что обеспечивает яркость цветов новорожденных ячеек. Добавив сюда уменьшение величины вектора с каждым поколением ("старение цвета") для выживающих ячеек, можно получить красивые картины развития конфигураций.
Однако, еще раз напомню, основу Жизни, т.е. правила s23/b3 и двух ее состояний все эти раскраски никоим образом не затрагивают. У Вас же действительно несколько состояний, т.е. родить ячейку данного состояния могут только 3 ячейки этого же состояния. Взаимодействие с ячейками других состояний состоит только в факте "занятия места" этими состояниями да еще конфликным правилом "нерождения".

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

Life32 - пожалуй самый удобный инструмент исследователя Жизни под Windows. Но сегодня это уже не самая быстрая программа - Golly (http://golly.sourceforge.net) за счет алгоритма hashlife намного быстрее. В ней можно проследить например развитие квадратично растущей конфигурации до 10^50 и более поколений. Несколько очень интересных находок последних месяцев обязаны именно этой программе.

Ваш осциллятор периода 15 - это по-существу пентадекатлон, если убрать блоки. Больше пока ничего сказать не могу, т.к. пока не модифицировал MCell под Ваши правила.
Осциллятор периода 2 красив, но для такого маленького ротора у него великоват статор. я думаю, можно поработать над ним и сделать его более компактным.
То, что Вы назвали блинкерами, это осцилляторы периода 2. Слово блинкер (blinker) обычно используется для обозначения конкретного 3-битного осциллятора и имеет русский эквивалент мигалка.
Первый осциллятор, по-видимому, возможен только в Ваших правилах и именно этим интересен. Его два ротора это роторы бакена, но статоры возможны только у Вас. Его можно сократить, убрав 3 красных и 3 синих косых ряда, тогда останется только один ротор. После этого его можно сделать толще, добавив 2 синих ряда - добавится синий ротор, пересекающийся с красным, как у Ваших нижних осцилляторов. Естественно, эти 2 ротора можно сделать как синфазными, так и противофазными.
Два нижних - это варианты совмещения двух бакенов. Возможность такого совмещения появилась благодаря независимости состояний в Ваших правилах.

 Профиль  
                  
 
 
Сообщение03.05.2006, 18:50 
Заслуженный участник
Аватара пользователя


20/07/05
695
Ярославль
Осциллятор периода 24, легко, можно сказать случайно, нашёлся вручную:
Изображение

И после долгих безуспешных попыток найти что-нибудь интересное,
сотворил я вот это чудо...-юдо:
поколение 0:
Изображение

поколение 175:
Изображение

 Профиль  
                  
 
 
Сообщение06.05.2006, 19:25 
Заслуженный участник
Аватара пользователя


20/07/05
695
Ярославль
Николай Белюченко писал(а):
Но сегодня это уже не самая быстрая программа - Golly (http://golly.sourceforge.net)


Ещё хотел спросить у вас, Николай: вы как все эти паттерны рисуете, вручную?
Или может быть у вас есть какая-нибудь программа со скриптовым языком?
Вот было бы хорошо, если бы кто-нибудь сделал в MCell какой-нибудь скриптовый язык типа Лиспа.
Я думал а не сделать ли мне такую программу через Automation Interface, т.к.
я не смог найти в интернете ничего подобного и полезного.

И пока я всё это писал, [url=http://sourceforge.net/mailarchive/forum.php?thread_id=9678589&forum_id=45753]случайно узнал, что в Golly существует возможность писать
скрипты на "Python"е[/url]. :D

 Профиль  
                  
 
 
Сообщение07.05.2006, 20:42 
Аватара пользователя


27/04/06
4
г. Радужный
Я тоже модифицировал MCell под Ваши правила. Вот исходник на Delphi. А это откомпилированная пользовательская библиотека. Так что теперь я могу пробовать запускать Ваши находки.

Цитата:
Ваш осциллятор периода 15 - это по-существу пентадекатлон, если убрать блоки.


Здесь я был не совсем прав - осциллятор без блоков превращается в пентадекатлон только для Т-тетрамино одного цвета. Если же цвета разные, то итогом его развития является еще один вариант p3 пульсара. Как и предыдущие симметричные модели, этот p15 осциллятор будет работать, если его половинки раздвинуть на 1 клетку.
Изображение
Можно также оставить от него только одну активную половинку, заменив вторую бадьей.
Изображение
А еще можно обе активные половинки раздвинутого осциллятора закрасить в один цвет, перекрасив в другой стабилизирующие блоки.
Изображение
Тут встает вопрос, а нельзя ли и блоки заменить конструкциями активного цвета? Анализ работы этого осциллятора показывает, что взаимодействие с блоками происходит только в двух поколениях через 6 тиков, и блоки могут быть заменены искрами, подавляющими рождение новых ячеек. К сожалению, среди известных источников искр периода 3 не оказалось подходящих, поэтому пришлось провести поиск с помощью поисковой программы WinLifeSearch. Вот результат - осциллятор периода 15, который работает в обыкновенной конвеевской Жизни.
Изображение
Еще два паттерна на базе Вашего p15 - это p30 осциллятор
Изображение
и трубопровод, по которому движется объект со скоростью 4c/15.
Изображение
Цитата:
Осциллятор периода 2 красив, но для такого маленького ротора у него великоват статор. я думаю, можно поработать над ним и сделать его более компактным.

Вот более компактная модель.
Изображение
У этого осциллятора тот же ротор, что и у биполя. Но раздвинуть его половинки и превратить тем самым в аналог триполя, тетраполя и т.д. так просто не удается - это можно сделать, только надев на него "бандаж" другого цвета.
ИзображениеИзображениеИзображение
Заметьте, что присоединять полюсники к нему можно с 3 сторон.
Изображение
Еще на ту же тему
Изображение

Цитата:
Его можно сократить, убрав 3 красных и 3 синих косых ряда, тогда останется только один ротор. После этого его можно сделать толще, добавив 2 синих ряда - добавится синий ротор, пересекающийся с красным, как у Ваших нижних осцилляторов. Естественно, эти 2 ротора можно сделать как синфазными, так и противофазными.


Вот соответствующие картинки.
Изображение
Ваш p24 очень изящен, но найти его аналог в Жизни, думаю, будет намного труднее, чем для p15.
"Чудо-юдо" относится к горящим фитилям. Только для правил со многими состояниями возможно горение столь плотного фитиля со скоростью меньшей скорости света.

Цитата:
Мне кажется это сделать будет ещё труднее, чем найти новую форму жизни по обычным правилам


У меня другое впечатление. Несколько невзаимодействующих состояний дают больший простор для поиска. Если одно из состояний представлено только натюрмортами, то они уже не могут быть изменены никакими процессами, происходящими с другими состояниями. Это позволяет очень легко стабилизировать многие "трудные" в обычной Жизни роторы, не тратя времени на поиск подходящих пожирателей или источников искр. Многие симметричные случаи возможны здесь в нескольких вариантах - мы уже видели пульсары, p15 осциллятор. Вот варианты p14 тумблера.
Изображение
За счет невзаимодействия состояний возможны "пересечения" известных паттернов. Пересечение бакенов мы уже видели. Вот пересечение полюсников.
Изображение

Цитата:
Ещё хотел спросить у вас, Николай: вы как все эти паттерны рисуете, вручную?


Вручную приходится вводить только самые простые паттерны. Все остальное копируется из писем, сайтов или вырезается из файлов коллекций и через буфер обмена вставляется в программу-редактор.
Попутно меняется ориетация, что-то сдвигается в пространстве или времени. Это все позволяет сделать, например, Life32. В MCell это тоже все можно делать, но за счет других "горячих клавиш" для меня это пока не так удобно. Многие паттерны ищутся с помощью поисковых программ, например WLS.
Естественно, жизнелюбы обмениваются находками не в виде картинок, как на этом сайте, а в более удобных форматах. Вот как выглядит "черно-белый" p15 осциллятор, показанный выше, в формате rle.
Код:
x = 35, y = 23, rule = S23/B3
o9bobboo5boobbo9bo$3o5b3obboo5boobb3o5b3o$3bo3bo19bo3bo$bbobbobb7o5b7o
bbobbo$bbob4o7bo3bo7b4obo$3boo3bo3boobo3boboo3bo3boo$6b4o4bo5bo4b4o$
10bo13bo$10bobo9bobo$$14bo5bo$13boo5boo$14bo5bo$$10bobo9bobo$10bo13bo$
6b4o4bo5bo4b4o$3boo3bo3boobo3boboo3bo3boo$bbob4o7bo3bo7b4obo$bbobbobb
7o5b7obbobbo$3bo3bo19bo3bo$3o5b3obboo5boobb3o5b3o$o9bobboo5boobbo9bo!

Могу еще сказать, что Life32 также допускает Automation, а Python был применен в программе Жени Лангвагена plife.

 Профиль  
                  
 
 
Сообщение15.05.2006, 22:08 
Аватара пользователя


27/04/06
4
г. Радужный
Пара новых паттернов. Один из возможных трубопроводов для Пи-гептамино:
Изображение
4-ствольное ружье периода 104:
Изображение

 Профиль  
                  
 
 
Сообщение19.05.2006, 14:43 
Заслуженный участник
Аватара пользователя


20/07/05
695
Ярославль
Вот, сотворил. 8-)
Поколение 0:
Изображение
Поколение 425:
Изображение
http://www.geocities.com/borisleykin/lifepatterns/tunnels1.txt - это файл в
формате ".mcl" для "Mirek's Cellebration" (в формате "rle" у меня паттерны с несколькими
состояниями не сохраняются), в нём нужно изменить строчку с названием правила.

 Профиль  
                  
 
 
Сообщение20.05.2006, 18:22 
Заслуженный участник
Аватара пользователя


20/07/05
695
Ярославль
2 осциллятор:
Изображение

64 осцилляторы:
64oscs1.mcl
Изображение

182 осциллятор:
182osc1.mcl
Изображение

137 осциллятор:
137osc1.mcl
Поколение 0:
Изображение
Поколение 83:
Изображение

Из 4 MWSS получается разноцветный пульсар:
Изображение

Ещё одна идея для правила. Что если сделать два типа клеток, одни по размеру
в 2 раза меньше. Правила - обычная "Жизнь" "23/3".
Попробовал нарисовать вручную, вот что получилось:
Если у мёртвой клетки 3 соседа и того и другого цвета, то:
На рисунке в I ряду клетка остаётся мёртвой, во II ряду у синих приоритет,
в III ряду у зелёных приоритет.
http://www.geocities.com/borisleykin/lifepatterns/scaledlife1.gif
http://www.geocities.com/borisleykin/lifepatterns/golsize_gliders1.gif
http://www.geocities.com/borisleykin/lifepatterns/golsize_gliders2.gif

Добавил к правилу "Day&Night" "34678/3678" несколько состояний:
http://www.geocities.com/borisleykin/lifepatterns/daynight4c.cpp.txt

Картинки:

dn_colordots.mcl
Изображение
Изображение
Изображение

dn_yingyang.mcl
Изображение
Изображение
Изображение

 Профиль  
                  
 
 
Сообщение18.06.2006, 13:55 
Экс-модератор


17/06/06
5004
Цветная версия ружья на базе реакции AK47 - очень просто выглядит по сравнению с черно-белым оригиналом ;)

Это у меня тут файл .mcl в текстовом виде, в строчку #RULE надо вписать как у вас называется dll-ка с правилами, сохранить текст как *.mcl и открывать; можно просто копировать и вставлять прямо в MCell.


#MCell 4.20
#GAME User DLL
#RULE _Leikin
#BOARD 60x60
#WRAP 0
#CCOLORS 5
#L 5.AA7.A$5.AA5.3A$11.A$11.AA$$8.3A$7.A3.A$BB4.A5.A$BB4.A5.A$6.A5.A$7.A
#L 3.A$8.3A5$20.BB$20.BB4$9.AA$10.A$7.3A5.AA$7.A7.AA

upd 19.05.09: Если кому интересно, это было мое первое сообщение, и единственное за первые полгода моего присутствия здесь. В то время еще не было автоматической вставки тегов math вокруг долларов, и потому сейчас я затрудняюсь прочитать, что тут было написано.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Модераторы: Модераторы, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: Mikhail_K


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group