Comments 25
UFO just landed and posted this here
Можно картинкой. А вообще — тут статья гораздо более качественная.
0
Ох если бы студенты, я почти 1 в 1 такое в школе писал на бейсике, только параметров меньше было.
0
Ахах, так и есть.
0
У автора достаточно много проектов на github. Очень хорошее начало, сразу видно, что человеку действительно нравится программирование. Все мы когда-то были студентами =)
0
UFO just landed and posted this here
UFO just landed and posted this here
Абсолютно верно. Я и не позиционировал свою игру как клеточный автомат. У меня они действительно перемещаются по очереди. Но, ради более справедливой работы, эта очередь постоянно перемешивается в случайном порядке.
+2
UFO just landed and posted this here
Не пробовал. Вы про рендеринг?
0
UFO just landed and posted this here
Ну так у них клеточный автомат, вроде. В моей программе намного больше расчетов, если сравнивать с игрой «Жизнь», к примеру. Для каждой клетки нужно узнать что находиться на соседних 14 ячейках и еще кучу модификаторов узнать. Потом считать еще кучу модификаторов, изменять состояния клетки и прочее.
0
Чтобы моделирование было ближе к реальности и интересней, поробуйте обратить внимание на следующие моменты.
Основные мысли:
1) Должен быть не просто набор параметров — должны быть продуманные противовесы: изменяя один параметр мутацией мы в одном улучшаем, в другом одновременно ухудшаем.
2) Не обязательно делать уйму параметров — лучше меньше, но продуманней и сбалансированней.
3) Добалвять дополнительные параметры уже после того, как на текущих система ведет себя логично и сбалансированно.
По отдельным параметрам эмуляции:
1) Агрессия должна уравновешиваться параметром «силы» клетки.
Грубо говоря, у «агрессора» при нападении есть 3 варианта:
— мы сильней, мы победили, мы получили энергию
— мы равны, мы не победили, но потратили энергию на борьбу
— мы проиграли и потеряли много энергии.
Естетственно коэффициенты тут будут разные.
Сюда логино было бы как-то привязать модификатор от колониальности — если нас много, нас сложно одолеть.
И отдельный модификатор «защиты» — то есть если мы грубо говоря отрастили щипы и панцырь, то нас сожрать сложней, но мы на это тратим энергию — либо каждый тик, либо например требуем больше энергии на размножение.
2) Концепция яда была бы интересней не как пища, а типа «зараженности среды» и соответственно параметр клеток «резистентность», то есть устойчивость к яду.
На зараженных клетках энергия с каждым тиком теряется сильней.
Тогда получается развивая параметр резистентности мы можем жить на среде где мало конкуренции и агрессоров.
3) Спорная идея, но можно было бы попробовать:
При случайных мутациях и отборе как в реальном мире нужно слишком большое количество особей и генераций. Чтобы это обойтиь, можно объеденить элементы отбора с мутациями — грубо говоря если яда вокруг нет, то мутации резистентности для нас не актуальны и мы сразу их исключаем.
4) Важно, максимальное количество одновременных адаптаций должно быть как-то ограничено, скорей всего тем, что каждая их них увеличивает потребляемое количество энергии за тик, или количество энергии требуемое для размножения. Грубо говоря, надо как-то ограничить появление супер-клеток которые победят всех.
5) Колониальность должна давать преимущества:
— Когда мы вместе, мы сильней, нас сложней победить агрессору
— Когда мы вместе мы тратим меньше энергии на каждого, чем по-отдельности.
Но в ней есть и минусы, так как меньше пищи вокруг остается.
6) Пища появляется по отдельному алгоритму от развития клеток?
Или она не появляется после сотворения мира и он в итоге обречен на умирание?
Основные мысли:
1) Должен быть не просто набор параметров — должны быть продуманные противовесы: изменяя один параметр мутацией мы в одном улучшаем, в другом одновременно ухудшаем.
2) Не обязательно делать уйму параметров — лучше меньше, но продуманней и сбалансированней.
3) Добалвять дополнительные параметры уже после того, как на текущих система ведет себя логично и сбалансированно.
По отдельным параметрам эмуляции:
1) Агрессия должна уравновешиваться параметром «силы» клетки.
Грубо говоря, у «агрессора» при нападении есть 3 варианта:
— мы сильней, мы победили, мы получили энергию
— мы равны, мы не победили, но потратили энергию на борьбу
— мы проиграли и потеряли много энергии.
Естетственно коэффициенты тут будут разные.
Сюда логино было бы как-то привязать модификатор от колониальности — если нас много, нас сложно одолеть.
И отдельный модификатор «защиты» — то есть если мы грубо говоря отрастили щипы и панцырь, то нас сожрать сложней, но мы на это тратим энергию — либо каждый тик, либо например требуем больше энергии на размножение.
2) Концепция яда была бы интересней не как пища, а типа «зараженности среды» и соответственно параметр клеток «резистентность», то есть устойчивость к яду.
На зараженных клетках энергия с каждым тиком теряется сильней.
Тогда получается развивая параметр резистентности мы можем жить на среде где мало конкуренции и агрессоров.
3) Спорная идея, но можно было бы попробовать:
При случайных мутациях и отборе как в реальном мире нужно слишком большое количество особей и генераций. Чтобы это обойтиь, можно объеденить элементы отбора с мутациями — грубо говоря если яда вокруг нет, то мутации резистентности для нас не актуальны и мы сразу их исключаем.
4) Важно, максимальное количество одновременных адаптаций должно быть как-то ограничено, скорей всего тем, что каждая их них увеличивает потребляемое количество энергии за тик, или количество энергии требуемое для размножения. Грубо говоря, надо как-то ограничить появление супер-клеток которые победят всех.
5) Колониальность должна давать преимущества:
— Когда мы вместе, мы сильней, нас сложней победить агрессору
— Когда мы вместе мы тратим меньше энергии на каждого, чем по-отдельности.
Но в ней есть и минусы, так как меньше пищи вокруг остается.
6) Пища появляется по отдельному алгоритму от развития клеток?
Или она не появляется после сотворения мира и он в итоге обречен на умирание?
0
The strongest survives
Выживает не сильнейший. Выживает самый приспособленный.
+4
По скриншотам — не хватает растений, т.е. генераторов энергии. В противном случае всякая жизнь в какой-то момент прекратится, так как отсутствует подпитка энергией извне.
Life is merely an orderly decay of energy states, and survival requires the continual discovery of new energy to pump into the system.
CEO Nwabudike Morgan
Life is merely an orderly decay of energy states, and survival requires the continual discovery of new energy to pump into the system.
CEO Nwabudike Morgan
0
Я попробовал убрать с поля всю еду и весь яд. Запустив симуляцию с удивлением обнаружил что жизнь идет, а количество энергии только увеличивается. Как такое выходит?
0
Тоже хочу сделать что-то подобное, только чтобы каждая клетка имела какую-то область данных кодов, которые управляют клеткой, и если некоторые подпрограммы кода используются и приносят пользу, они передаются по наследству. Можно обмениваться подпрограммами, пожирать их, накапливая, и что-то в этом роде.
0
Sign up to leave a comment.
Разработка симулятора эволюции одноклеточных организмов «The strongest survives»