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
17976
Москва
Борис Лейкин писал(а):
Эта тема для любителей "Жизни".

Я пока только начинающий любитель.
Играюсь вот с этой замечательной программой. :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 ] 

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



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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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