Игра «Жизнь»

Игра «Жизнь»

Сообщение Дмитрий » 04 дек 2013, 00:44

Реализация игры «Жизнь» Конвея в виде Java аплета:



При загрузке страницы необходимо разрешить выполнение Java.

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

Кнопка View/Edit включает/выключает режим редактирования. В режиме просмотра фишки не ставятся и поле сдвигается любой кнопкой.

Вращение колесика мыши изменяет масштаб.

Step - переход к следующему поколению.

Start/Stop - запуск/остановка автоматической смены поколений.

Кнопки: "0", "-", "+" изменяют время задержки (ms) между сменой поколений. "0" - без задержки, максимальная скорость.

Кнопка Window открывает приложение в отдельном окне. Это позволит установить любой удобный размер окна, например, развернуть его на весь экран.

Rules - установить правила. Для каждого возможного количества соседей ( от 0 до 8 ) можно включить/выключить требуемое событие (добавлять, или удалять фишку).

Clean - очистить поле.


Размер игрового поля в этой реализации неограниченный. Для просмотра всей картины используйте изменение масштаба (колесико мыши), и перемещение поля.

eden1.png
eden1.png (377 байт) Просмотров: 890
Последний раз редактировалось Дмитрий 15 янв 2015, 18:26, всего редактировалось 3 раз(а).
Причина: Update program
Аватар пользователя
Дмитрий
Форумчанин
 
Сообщений: 964
Изображений: 695
Зарегистрирован: 29 апр 2008, 14:41
Откуда: Харьков
Кредо: Ортодокс

Re: Игра «Жизнь»

Сообщение Юрий из Петербурга » 04 дек 2013, 01:35

Эта игра инспирирована моделированием жизни и часто упоминается как модель самоорганизации, эволюции и т.д.

Что интересно, в ней есть райские сады. :wink: Кстати, из какой-нибудь симметричной конфигурации такого рода, можно было бы сделать иконку для раздела "Искусственность".
Вложения
eden1.png
eden1.png (377 байт) Просмотров: 1463
Ceterum censeo Carthaginem esse delendam
Юрий из Петербурга
Форумчанин
 
Сообщений: 724
Зарегистрирован: 27 апр 2008, 16:21
Кредо: creatio ex nihilo

Re: Игра «Жизнь»

Сообщение Дмитрий » 04 дек 2013, 15:53

Юрий Петрович писал(а):Эта игра инспирирована моделированием жизни и часто упоминается как модель самоорганизации, эволюции и т.д.


Своеобразная икона эволюции :)
Аватар пользователя
Дмитрий
Форумчанин
 
Сообщений: 964
Изображений: 695
Зарегистрирован: 29 апр 2008, 14:41
Откуда: Харьков
Кредо: Ортодокс

Re: Игра «Жизнь»

Сообщение Снеговой Павел » 04 дек 2013, 18:10

А я себе вот этот вариант как-то поставил.
http://golly.sourceforge.net/
Golly is an open source, cross-platform application for exploring Conway's Game of Life and other cellular automata. The primary authors are Andrew Trevorrow and Tom Rokicki, with code contributions by Tim Hutton, Dave Greene, Jason Summers, Maks Verver and Robert Munafo.

Golly's key features:

Supports bounded and unbounded universes, with cells of up to 256 states.
Supports multiple algorithms, including Bill Gosper's super fast hashlife algorithm.
Many different types of CA are included: John von Neumann's 29-state CA, Wolfram's 1D rules, WireWorld, Generations, Langton's Loops, Paterson's Worms, etc.
The RuleTable and RuleTree algorithms let you plug in new rules.
Responsive even while generating or garbage collecting.
Reads RLE, macrocell, Life 1.05/1.06, dblife, and MCell files.
Can also read common graphic formats: BMP, PNG, GIF, TIFF.
Can extract patterns, rules and scripts from zip files.
Can download patterns, rules and scripts from online archives.
Includes a state-of-the-art pattern collection.
Can paste in patterns from the clipboard.
Unlimited undo/redo.
Configurable keyboard shortcuts.
Auto fit option keeps patterns sized to the window.
Full screen option (no menu/status/tool/scroll bars).
Supports multiple layers, including cloned layers.
HTML-based help with an integrated Life Lexicon.
Scriptable via Perl or Python.
Runs on Windows (2000+), Mac OS X (10.4+) and Linux (with GTK+ 2.x).
Снеговой Павел
Модератор
 
Сообщений: 787
Изображений: 5
Зарегистрирован: 17 апр 2008, 23:25
Откуда: Донецк (Россия)

Re: Игра «Жизнь»

Сообщение Дмитрий » 05 дек 2013, 12:32

Снеговой Павел писал(а):А я себе вот этот вариант как-то поставил.


До этой программы мне, конечно, далеко по скорости.

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

Кроме того, кнопка "Rules" позволяет задать правила эволюции: при каких количествах соседей происходит рождение (Born), а при каких смерть (Dead). Вот так выглядят классические правила:
rules.png
rules.png (10.42 KiB) Просмотров: 1433


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

Для работы аплета нужно установить Java, (если не установлена). Просьба написать, как у кого запускается.
Аватар пользователя
Дмитрий
Форумчанин
 
Сообщений: 964
Изображений: 695
Зарегистрирован: 29 апр 2008, 14:41
Откуда: Харьков
Кредо: Ортодокс

Re: Игра «Жизнь»

Сообщение Алексей Михайлович » 15 мар 2016, 13:48

Аватар пользователя
Алексей Михайлович
Форумчанин
 
Сообщений: 631
Зарегистрирован: 12 май 2008, 11:46

Игра «Жизнь»

Сообщение SergeCpp » 26 сен 2019, 10:43

Golly есть и для Андроида.

Обратите внимание на правила Конвея — определённый знак...

— в пустой клетке, рядом с которой ровно три (!) живые клетки, зарождается жизнь;
— если у живой клетки (Я посреди них) есть две или три живые соседки (двое или трое во имя Моё), то эта клетка продолжает жить (Он продолжает жить посреди них).

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

Однако:

1) Правила Конвея — всё ещё самые известные (почему бы...).

2) Он их долго (с 1968 по 1970) и тщательно выбирал, см. Вики:

John Conway began doing experiments in 1968 with a variety of different 2D cellular automaton rules.[3] Conway's initial goal was to define an interesting and unpredictable cell automaton. Thus, he wanted some configurations to last for a long time before dying, other configurations to go on forever without allowing cycles, etc. It was a significant challenge and an open problem for years before experts on cell automatons managed to prove that, indeed, Conway's Game of Life admitted of a configuration which was alive in the sense of satisfying Von Neumann's two general requirements. While the definitions before Conway's Life were proof-oriented, Conway's construction aimed at simplicity without a priori providing proof the automaton was alive.

Conway chose his rules carefully, after considerable experimentation, to meet these criteria:

There should be no explosive growth.
There should exist small initial patterns with chaotic, unpredictable outcomes.
There should be potential for von Neumann universal constructors.
The rules should be as simple as possible, whilst adhering to the above constraints.[4]
The game made its first public appearance in the October 1970 issue of Scientific American

3) Эту параллель невозможно не провести ("они глядят, и не видят", "и глазами смотреть будете — и не увидите").

Игра "Жизнь", реализованная "на самой себе":
https://youtu.be/xP5-iIeKXE8

Один из комментариев к этому ролику:

«Robinso516 2 years ago My mind is blown by the fact that this is similar to a property seen in biology. As the spatial scale changes, also the temporal scale does. While zooming out, the elemental components need to move faster in order to make sense at a larger scale. This reminds me of the movement of transporter proteins; the classic transporter of glucose GLUT (a big molecule that transports sugar into the cells) transports about 3000 molecules of glucose into the cell in 1 second, 1 at a time. It seems very fast at our scale, but for its scale is just average speed compared with all other molecule movements.

So, if galaxies happen to organize in a working system like a thinking neural net, it must think veeeeery slow.»

Хорошая недавняя статья на Хабре: Эволюционирующие клеточные автоматы.
Есть нечто странное в простых предметах.
Аватар пользователя
SergeCpp
Форумчанин
 
Сообщений: 133
Изображений: 24
Зарегистрирован: 05 апр 2018, 21:50
Откуда: At Home

Re: Игра «Жизнь»

Сообщение р.Б.Константин » 26 сен 2019, 19:04

Клеточные автоматы имеют такое же отношение к живым клеткам, как к автоматам Калашникова.
Можно сказать, что это модель превращения Сергея в Ксюшу. Вы видите, как легко может Сергей превратиться в Ксюшу? Достаточно, чтобы рядом было три Ксюши - и - вуаля! Наш Сергей уже не тот...
Насчет генетических алгоритмов - они хороши в ОЧЕНЬ узких кругах задач. Допилить на 70% хорошую структуру до 99%
- ЕСЛИ дорога к 100% будет идти без ухабов
- ЕСЛИ.. и куча других ЕСЛИ.

Не случайно генетические алгоритмы не очень широко распространены в машинном/глубоком обучении.
Аватар пользователя
р.Б.Константин
Супермодератор
 
Сообщений: 290
Зарегистрирован: 17 апр 2008, 23:26
Кредо: Creatio+Evolutio

Re: Игра «Жизнь»

Сообщение CepгейМн » 26 сен 2019, 23:16

SergeCpp писал(а) 26 сен 2019, 10:43:Обратите внимание на правила Конвея — определённый знак...

— в пустой клетке, рядом с которой ровно три (!) живые клетки, зарождается жизнь;
— если у живой клетки (Я посреди них) есть две или три живые соседки (двое или трое во имя Моё), то эта клетка продолжает жить (Он продолжает жить посреди них).

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

Если это и является, в какой-то мере, свидетельством, то математики, а не самого Конвея. Ибо атеист.
CepгейМн
Форумчанин
 
Сообщений: 73
Изображений: 29
Зарегистрирован: 06 янв 2019, 17:27


Вернуться в Искусственность

Кто сейчас на форуме

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

Golden Time-Золотое Время. История, религия, наука