PDA

Просмотр полной версии : Аква-Тор



General
12.11.2008, 20:24
Игра Аква-тор представляет собой клеточный автомат для моделирования простейших пищевых цепочек в природе. Её можно назвать, как и игру "Жизнь" Конуэя, симулятором демиурга: основное занятие игрока - умиротворённое созерцание борьбы за существование созданным им существ на созданной им же планете. Можно иногда и подыграть понравившейся стороне или поэкспериментировать.

В мире аква-Тора живут 2 вида существ: продуценты (растения) и консументы (животные).

Продуцентам для питания достаточно, чтобы рядом было несколько пустых клеток. Они живут оседло, время от времени отпочковывая потомков.

Консументы же всё время движутся в поисках пищи - продуцентов. Они также в благоприяных условиях отпочковывают потомков, но намного реже. Однако и живут они дольше.

В последней версии добавлена возможность мутаций. На старте у всех растений минимальное количество пустых клеток рядом для питания равно восьми. Однако 1 раз на 10000 рождений этот параметр может измениться на +1 или на -1. Для наглядности существа с разными мутациями окрашиваются в разные цвета.

При отсутствии животных изначальная форма растений, комофортно чувствующая себя только в полном одиночестве, вскоре уступает мето на планете более приспособленным растениям, спосбоным безболезненно выдерживать присутстсвие одного соседа рядом, те, в свою очередь - ещё более неприхотливым, и.т.д., пока вся планета не поскроется сплошной коркой из клеток, способных вести нормальный образ жизни, даже если заняты все соседние клетки.

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

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

Особенно красивые эффекты можно увидеть при размерах мира более 150х150.

Все настройки, как стартовые параметры мира, так и параметры самих живых существ можно изменять в ходе моделировани кнопочками Initialize и Properties.

Дополнительно:
Левый клик - добавить растение
Shift+Левый клик - добавить животное
Ctrl+Левый клик - убрать существо

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

Мой Aqua-Torus можно скачать здесь (http://general.civfanatics.ru/soft/Aqua-Thorus/AT-Evo.zip) (380 кБ)

Dr Gobbels
13.11.2008, 08:02
:applau2:

Aku_Aku
13.11.2008, 11:13
На самом деле не очень и интересно,
так как в природе действует на много больше разных факторов, которые просто не реально отмоделировать в такой простой модели.

Да и сама тема довольно не нова.

См. например работы Стефана Вольфрама (владельца фирмы разработчика пакета Математика)
У него целый толстенный талмуд по клеточным автоматам написан.
Он пробует развивать теорию описания законов всей вселенной исходя из того что она один огромный клеточный автомат. ;)

AFro
13.11.2008, 13:41
<div class='quotetop'>Цитата(General * 12.11.2008, 20:24) 267952</div>

Для наглядности существа с разными мутациями окрашиваются в разные цвета.[/b]
General, ты не подскажешь: разные цвета - это "оттенки оранжевого" или они должны быть видны невооруженным глазом?
А то я запустил пару десятков Runов с разными параметрами, до полного исчезновения всего живого... а мутаций так и не увидел... :(

General
13.11.2008, 14:08
<div class='quotetop'>Цитата(Aku_Aku * 13.11.2008, 10:13) 268022</div>

Да и сама тема довольно не нова.

См. например работы Стефана Вольфрама (владельца фирмы разработчика пакета Математика)
У него целый толстенный талмуд по клеточным автоматам написан.
Он пробует развивать теорию описания законов всей вселенной исходя из того что она один огромный клеточный автомат. ;)
[/b]

Да, про идею Вселенной как клеточного автомата слышал, идея интересная, по-моему, впервые прочитал о ней у Гарднера в "Крестика-ноликах".

<div class='quotetop'>Цитата(AFro * 13.11.2008, 12:41) 268048</div>

General, ты не подскажешь: разные цвета - это "оттенки оранжевого" или они должны быть видны невооруженным глазом?
А то я запустил пару десятков Runов с разными параметрами, до полного исчезновения всего живого... а мутаций так и не увидел... :(
[/b]

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

General
13.11.2008, 15:00
Мир размером 200x200 засеялся сотней Byteria Consumentia и сотней Byteria Producentia-8 зелёного цвета (которым для комфортного существования требуется 8 пустых клеток вокруг). Вскоре последовал рост популяции байтерий-продуцентов до 2000, однако, вследствие увеличившейся до 250 особей популяции байтерий-консументов, население мира вскоре пошло на спад. В течение первого цикла возникла мутация Byteria Producentia-7 сиреневого цвета (им для комфортного существования достаточно наличия 7 свободных клеток по соседству). Первые колонии этого вида были вскоре съедены, однако на 400-м ходу новым мутировавшим особям удалось выжить и занять существенное место на планете. Примерно на 800 ходу некоторые из них мутировали в Byteria Producentia-6 синего цвета, однако данный вид появлялся в биосфере лишь эпизодически, становясь лёгкой добычей для консумо-байтерий.

Тем временем после продолжительной борьбы за существование, зелёные байтерии на 20 000 ходу вымерли, оставив роль основного вида сиреневым. В это время наблюдается новый исторический максимум популяции: 3000 особей.

На 40000 ходу во время носко исторического пика (4800 особей) новообразовавшаяся колония синих по счастливой случайности избегает уничтожения и уже к 50 000 ходу синие являются наиболее распространённым видом. Во время очередного исторического пика в 6500 особей (52 000 ход) на планете представлены 4 вида: 1800 сиреневых Byteria Producentia-7, 2700 синих Byteria Producentia-6, 2100 жёлтых Byteria Producentia-5 и около сотни серо-зелёных Byteria Producentia-4. Некоторое время роль доминирующего вида играют жёлтые, однако повышенная плотность колоний играет против них и вскоре они, как и серо-зелёные, исчезают с лица планеты.

К 70 000 ходу полностью исчезли фиолетовые, чуть позже случается новый исторический максимум в 9000 особей, когда жёлтые предпринимают очередную попытку оттеснить синих с позиций основной жизненной формы, но опять оказываются жертвами консумо-байтерий. После этого в течение 20 000 ходов синие остаются безраздельными властителями планеты. Однако на 95000 ходу в результате обратной мутации и удачного (для них) стечения обстоятельств, на сцену возвращаются сиреневые Byteria Producentia-7 и сбрасывают синих с биологического олимпа.

Господство фиолетовых вновь пошатнуло образование из них в следствие мутаций синих, которые к 120000 ходу вновь оказались доминирующей жизненной формой. А к 170000 наступил, наконец, звёздный час для жёлтых, когда им удалось полностью вытеснить синих и окончательно закрепиться на планете.

На 255 000 ходу серо-зелёные также вышли из статуса время-от-времени появляющегося вида и дальнейшая история биосферы планеты и её катастрофа связана с борьбой за существование этих двух видов. К 275 000 ходу высокая плотность двух основних видов существ позволила добиться нового исторического максимума в 11 000 существ, что значительно увеличило популяцию Byteria Consumentia, и в итоге к 290 000 ходу все Byteria Producentia были съедены, а Byteria Consumentia погибли от голода.

darkstar
14.11.2008, 20:23
:applau2:
вот только русского языка в настройках нехватает

Али Гарх
14.11.2008, 23:29
<div class='quotetop'>Цитата(darkstar * 14.11.2008, 18:23) 268219</div>
:applau2:
вот только русского языка в настройках нехватает [/b]

За русиком к Свану.

А вообще идея очень интересная. Добавляем второй мир, разумные существа живущие по алгоритмам заданными игроками на старте, добавляем климат и мутацию по климату, стравливаем миры игроков и получаем ... "Битвы мутантов"! Генерал, печатай акции, стратегия покруче тетриса :yes:

General
15.11.2008, 11:04
Майкрософтовцы в целях популяризации .Net запускали проект Терририум. Программист должен был создать живео существо (травоядное или хищника), ракидать ему статсы (дальность видимости, скорость, продолжительность жизни пр.) исходя из ограниченной суммы, и написать алгоритм поведения. Затем существа вбарывались в общую банку, где ещё росли и растения, и определялся вид, победивший в борьбе за существование.
При этом банко могли быть несоклько и существа иногда телепортировались между ними. На алгоритм накладывалось условие, что если он не успевал обсчитаться за некоторый довольно малый промежуток времени, сущетсво гибло.

В конкурсе победили русские. Они создали травоядное животное со следующими принципами поведения:
-если рядом нет конкурентов-травоядные, нужно есть растения лишь в той мере, чтобы утолить голод
- если рядом есть травоядные другого вида, нужно объедать всё, что видишь, под корень
- еслив идишь растение, бежать к нему
- если видишь хищника, бежать от него
- если видишь рядом бегущее существо своего вида, бежать в его направлении

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

Ну а если потом делать упор на создание АИ, то нужно о более дружественном механизме его задани подумать... Хотя можно программирование АИ человеком исключить: игрок просто создаёт свой мир (климат и пр.), а существа в нём мутируют и формируют своё поведение самостоятельно.

neosapient
16.11.2008, 15:47
А можно сделать так, чтобы при клике правой кнопкой мыши создавался Consument ?

General
16.11.2008, 17:10
Можно, в принципе, по-хорошему надо будет сделать максимально гибкий интерфейс и внутреннюю структуру: настраиваемые клавиши, цвета, множество параметров мутаций и пр. Пока Consument выставляется левой с шифтом. Правую пока приберегу, думаю, по дефолту ей лучше заходить редактировать свойства одного конкретного существа, когда добавлю эту возможность.

Dr Gobbels
17.11.2008, 08:13
<div class='quotetop'>Цитата(General * 15.11.2008, 11:04) 268265</div>

-если рядом нет конкурентов-травоядные, нужно есть растения лишь в той мере, чтобы утолить голод
- если рядом есть травоядные другого вида, нужно объедать всё, что видишь, под корень
- еслив идишь растение, бежать к нему
- если видишь хищника, бежать от него
- если видишь рядом бегущее существо своего вида, бежать в его направлении
[/b]
Чёрт, а ведь это национальный менталитет в двух словах! :applau2: Тот факт, что он оказался экспериментально жизнеспособен - очень помогает смотреть в будущее с оптимизмом :yes:

Али Гарх
18.11.2008, 19:40
Значит посмотрел я этот Террариум, вещь офигительная, рекомендую всем, даже филологам :rolleyes: . Особенно полезен будет желающим изучить один из языков программирования платформы .Net (C# или Visual Basic), для этого собственно и создавался проект.Хотя если вы ничего изучать не собираетесь, а просто хотите побывать в образе Создателя, то эта игра несомненно заинтересует вас.

Но обо всё попорядку.

В мире Террариум живут, как уже написал Генерал, 2 типа животных (мне почему-то встречались только насекомые) травоядные и хищники и 1 тип растений. На базе этих типов можно создать бесконечное число различных организмов.

Каждый организм имеет Свойства, такие как размер, скорость, скрытность и пр. и Реакции, которые срабатывают при выполнении определённых условий, например, рождении или нападении хищника. Свойства - это числовые значения, которые можно распределить на старте. Реакции же позволяют вызывать алгоритм поведения, который так же задаётся при создании организма. Алгоритм поведения существа отделён от основного кода игры и вынесен в отдельный файл, так что нет необходимости копаться во всём коде как это требуется, например, в cIV SDK. Язык C# очень прост так, что даже школьник может создать собственного червяка способного как минимум не умереть с голода.

Что требуется установить

1. Последняя версия Террариума 2.0 вышла этим летом и работает под .Net Framework 2.0 и следовательно для написания своего жука потребуется Visual Studio 2005. Версию Express (http://www.microsoft.com/express/2005/download/offline.aspx) можно бесплатно и абсолютно легально скачать с сайта microsoft (нужен Visual C# 2005 Express Edition или Visual Basic 2005 Express Edition каждый по 445 Мб).

2. Если нет .Net Framework 2.0 (http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5), то придётся качать и его (22.4 Мб). В Висту Framework 2.0 встроен.

3. Ну и сам Террариум (http://www.codeplex.com/terrarium2/Release/ProjectReleases.aspx). Рекомендую качать Terrarium-2.0-Source.zip, в нём всё нужное включая код сервера.

4. Если у самих пока не выходит создать собственного жука, то можно скачать и запустить червяка из примеров. Один из них
[attachmentid=4160]

Что можно почитать

В SDK есть хорогие гайды и туториалы. Выкладываю для тех кто не решил качать или нет SDK
[attachmentid=4161]

Если возникнут проблемы при установке спрашивайте, всегда готов помочь :bye: .

General
18.11.2008, 20:21
О, отлично!

я когда о нём узнал, так и не дошёл до самостоятельного создания существ, может, теперь, наконец, разберусь и сделаю что-то интересное.

<div class='quotetop'>Цитата</div>
2 типа животных (мне почему-то встречались только насекомые)[/b]
Там, как я понял, есть стандартный набор скинов - разные членистоногие, но можно и свои как-то создавать.

General
22.11.2008, 23:22
Спасибо Али, помог мне разобраться с С#, а то я когда сам первый раз про террариум узнал, потыкался немного, разобраться, как создавать существа не смог, и забросил.

Создал Зерга – травоядное, которое в свободное от питания время нападает на других травоядных, расчищая себе жизненное пространство. Но что-то плохо он приживается, надо будет параметры и алгоритмы подкорректировать.

Но нашёл я ещё одну интересную программу, моделирующую эволюцию: GenePool. Это бассейн с кормом и существами – свимботами. Свимботы могут принимать самые различные формы, цвета и использовать разнообразные алгоритмы плавания: всё это вшито в их ДНК. У них 2 инстинкта: питания и размножения. Для размножения нужны 2 свимбота, пол неважен, они гермафродиты. Потомки наследуют часть признаков от каждого родителя, плюс могут случаться мутации.

Постепенно свимботы плавают всё лучше и лучше. В конечном итоге выживают наиболее приспособленные пловцы, способные наесться и дать потомство. Вы сами можете подыграть интересному экземпляру, скажем, передвинув его поближе в корму.

Скачать это чудо можно на сайте http://www.swimbots.com

Рекомендую!

http://general.civfanatics.ru/soft/GenePool/swimbots.JPG

General
23.11.2008, 15:43
Прогонял стартовую конфигурацию вчера до ночи, и сегодня с утра - вот нескольо видов, получивших наибольшее распространение
http://general.civfanatics.ru/soft/GenePool/swimbots-2.JPG

Продолговатые (слева) развивают большую скорость и могут путешествовать на значительные расстояния, однако двухвостые (справа) за счёт большей амплитуды колебаний охватывают большую площадь и могут съесть ту пищу, мимо которой продолговатый проплыл бы, не успев развернуться.

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

Симуляция продолжается.

General
23.11.2008, 18:36
Двухвостые перекрасились в малиновый цвет и научились возвращаться к пропущенным кусочкам пищи! Поглядим, что дальше-то будет...

General
23.11.2008, 20:26
В нижнем левом углу один из видов, научившихся уеленаправленно поворачивать на пищу. Этот экземпляр за свою жизнь оставил более 12-ти потомков.

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

http://general.civfanatics.ru/soft/GenePool/swimbots-3.JPG

tac14
03.01.2009, 05:36
<div class='quotetop'>Цитата(Али Гарх * 18.11.2008, 20:40) 268785</div>

Значит посмотрел я этот Террариум, вещь офигительная, рекомендую всем, даже филологам :rolleyes: . Особенно полезен будет желающим изучить один из языков программирования платформы .Net (C# или Visual Basic), для этого собственно и создавался проект.Хотя если вы ничего изучать не собираетесь, а просто хотите побывать в образе Создателя, то эта игра несомненно заинтересует вас.

[/b]

Для кого игра Террариум еще актуальна ?
Ищу тех кто играл и кого интересует эта игра программистов. Пока интересно мнения о ней и все что вы можете о ней сказать. Здесь начинаю планомерно собирать о ней информацию http://ru.vlab.wikia.com/wiki/Microsoft_Terrarium, буду рад если поможите. Хотелось бы найти единомышлеников с которым затем можно было бы развивать эту игру.
Да, имеется введу вторая версия этой игры, которая предоставлена с открытым кодом. Если что я скорее исследователь ИИ, и игра мне интересна именно в этом плане ....
Честно говоря написать игу не самоцель, мне важно чем она может послужить как модель искуственного интеллекта, т.е. написание среды, где агенты вынужденно должны были бы становится интеллектуальными, чтобы выжить ... а вот простые алгоритмы не проходили бы ...

Пишите желательно сюда http://gotai.net/forum/Default.aspx?postid=15230#15230 (более по тематический форум)

P.S. Да, если кто может дать рекомендации как установить себе сервер на локальный компьютер - буду благодарен.

Санек21
17.02.2009, 05:36
Прикольный симулятор, жаль только хищники не регулирую свою популяцю когда корма мало(а то они сначала растения все скушают а потом только умирают)Если есть более совершенный симулятор буду рад увидеть))