Искусственная жизнь. Борьба кланов. Технические детали модели.

  Рет қаралды 26,716

foo52ru ТехноШаман

foo52ru ТехноШаман

Ай бұрын

В ролике описываю некоторые технические детали проекта "Борьба кланов", где происходит эволюция виртуальных клеток, способных создавать многоклеточные организмы.
1:14 последовательность выполнения
5:07 движение энергии внутри организма
11:34 устройство генома
Поддержать канал можно на Boosty ( boosty.to/foo52ru )

Пікірлер: 372
@robdemo51
@robdemo51 Ай бұрын
Я раньше не замечал, но звуки в видео подобраны очень качественно. Даже сложные вещи с такой атмосферой интересно смотреть, будто какой-то древний магический механизм собираю)
@justafish_
@justafish_ Ай бұрын
Как по мне из за этих звуков и отсутствия музыки атмосфера в последних видосах стала какой то давящей
@PJutch
@PJutch Ай бұрын
@@justafish_ мне нормально вс1 видео, кроме заставки "Wallcraft" в начале. До скримера она не дотягивает, но звук жутковатый)
@404notfound2
@404notfound2 Ай бұрын
Как ты сказал, так и услышал. Ты прав. А то голос , как пердеда😂 любя😊
@boy4en660
@boy4en660 Ай бұрын
Таки кого я вижу...
@user-us3ss1jo9h
@user-us3ss1jo9h Ай бұрын
Мистический триллер)
@baronfox8829
@baronfox8829 Ай бұрын
Помню ты говорил в одном из прошлых видео что это будет скучно, но нет, это было очень интересно, будто на урок по информатике сходил, я к сожалению не программист и не имею представления какие можно предложить интересные альтернативы твоим алгоритмам, но я уверен тут есть другие люди, намного умнее которые предложат множество интересных идей, надеюсь ты не будешь забрасывать проект, мне нравиться смотреть за развитием твоих проектов и твоего канала
@progressive_agriculture
@progressive_agriculture Ай бұрын
Нравится - займись программированием. По минимуму тут ни чего сложного. Научись кусотром двигать точку по экрану, или графики/линии рисовать.
@baronfox8829
@baronfox8829 Ай бұрын
@@progressive_agriculture Да дело в том что я не считаю программирование такой уж полезной профессией, все нужные программы для обычного человека уже созданы, если создаешь игры то там скорее лотерея в том заметят ли твою игру, ведь есть столько хороших проектов которые умирают из-за того что их не заметили, я и так на самом базовом уровне понимаю как код устроен, этих знаний мне хватает в повседневной жизни например Картинку вытащить, скачать оригинал видео, убрать защиту от пиратства с игры или найти ключ внутри (обычно это очень нишевые игры где защита считай от обычных людей), иногда делаю мелкие модификации для игры чисто для себя, один раз даже смог скачать то что было удаленно используя одну уязвимость что я нашел в сайте, звучит круто, но это не так круто на самом деле, просто для меня важно что бы я лично сам считал профессию полезной для людей что ли, а тут дело в том что я явно не буду одним из тех кто создает передовые технологии, а буду кем то кто например создает очередной аналог скайпа для компании что бы их беседы были конфиденциальными или что то такое, то есть по факту буду делать велосипед, мне это не нравиться, я люблю создавать то чего ещё не было, а придумать то чего ещё не было очень затруднительно, хотя конечно есть несколько нишевых областей где я заметил что нет реально нужных программ и то, тогда не было, может сейчас уже есть, например в игре crossout есть рейды и они случайно сменяются каждый час на другие, какие следующие будут ты не знаешь, дело в том что одни выгоднее чем другие и потому было бы хорошо иметь прогу которая смогла бы уведомлять тебя о том какие сейчас рейды без твоего личного захода в игру, один чел даже сделал одну, но он её забросил и в конце концов она перестала работать, ведь игра не стояла на месте в отличии от программы, а исходный код он никому не захотел отдавать, учитывая тот факт как редко я встречаю случаи когда действительно нет специализированных программ для любой ситуации я считаю что профессия программиста это из рода создания велосипеда, что мне и не нравиться
@Doctor_Sad
@Doctor_Sad Ай бұрын
Один из самых интересных видеороликов, наконец то получили ответы на сложные вопросы)
@progressive_agriculture
@progressive_agriculture Ай бұрын
Не все... Ой, не все! На чем написано? Многоточность есть? Какова скорость? Как производится формирование видео записи? И т.д....
@user-oe3oh3eu8d
@user-oe3oh3eu8d Ай бұрын
Объяснения доступны и приятны глазу. Супер!
@user-or6fu5dc4s
@user-or6fu5dc4s Ай бұрын
Теперь всем стало ясно, для чего нужна предельность скорости света- чтобы успеть обсчитать процесс😂
@user-or6fu5dc4s
@user-or6fu5dc4s Ай бұрын
И это не шутка
@user-vm1hi7bo5s
@user-vm1hi7bo5s Ай бұрын
@@user-or6fu5dc4s Да, без этого никак, скорость света должна быть конечной. Иначе совсем банальные вещи, такие как два направленных друг на друга зеркала, создают неразрешимый парадокс. Это примерно как неостановимая сила сталкивается с неразрушимой стеной.
@Lux-Sphinkx
@Lux-Sphinkx Ай бұрын
Это настолько невероятно и чудно Такая дикая сложность и простота Немыслимый контент сколько труда любви и времени чудо
@user-px2rw3bt4l
@user-px2rw3bt4l Ай бұрын
Классный формат и подача! Такие видео очень полезны, ждем продолжения Занимаюсь симуляцией производственных процессов, для этих целей активно используется ECS (entity component system) на базе архитипов. Есть ощущение, что для ваших задач может быть полезно. Из доступных/готовых решений, что используем мы в своих проектах: Arch и Flecs.
@busy_beaver
@busy_beaver Ай бұрын
Очень качественно сделан ролик. Спасибо! Было интересно.
@ertitup-ch9vg
@ertitup-ch9vg Ай бұрын
Это то видео для которого я захожу на ютуб
@alexandr_s
@alexandr_s Ай бұрын
Такты работы мира можно просчитывать для каждой клетки параллельно. 1. расчет действий 2. определение конфликтов 3. разруливание конфликтов по правилам или рандому для начала 4. фиксация нового состояния после такта Этот алгоритм не только ближе к реальности, но и гораздо более производительный при многопоточной реализации
@BSpont
@BSpont Ай бұрын
Круто, спасибо за детали, очень интересно так долго наблюдать за проектом
@user-gf2yq5vn6f
@user-gf2yq5vn6f Ай бұрын
Атмосфера завораживающая! Лайк!
@AntonDudko1988
@AntonDudko1988 Ай бұрын
Приветствую ТехноШаман и всех зрителей! Вопрос/предложение: В реальном мире организм жив пока у него есть энергия\пит. в-ва, но в данной симуляции при отсутствии клетки ростка или семени весь организм по цепочке отмирает. Что мешает организму вернув цепочку энерго передачи к изначальной клетке не создать новый росток, или даже лучше не дожидаться возврата к изначальной клетке а создать её на первой энерго избыточной клетке от конца ростка. На подобии создания почек у растений у основания поврежденной ветви, или продолжении роста поврежденных кораллов. Таким образом тело организма не превратиться в статичный путь транспорта энергии а будет способен к восстановлению\адаптации, и избыток энергии не будет смертельным.
@progressive_agriculture
@progressive_agriculture Ай бұрын
У него есть понятие семян. придется еще одно понятие вводить.
@foo52ru
@foo52ru Ай бұрын
Можно и так сделать. Я как то убрал смерть в случае, когда энергию некуда пересылать. Клетка просто энергию в землю скидывала. Со временем в почве накапливался переизбыток энергии и клетка уже погибала по другой причине. Но в этом варианте мир чаще погибал, а когда выживал, то визуально был не очень интересный. Я переодически меняю правила и смотрю, как всё будет развиваться.
@bearmike_360KB
@bearmike_360KB Ай бұрын
Сам увлекаюсь кодом и внимательно слежу за проектом. Огромное спасибо за сегодняшнее видео. Идея использования генома до сих пор меня удивляет. Потому крайне интересно смотреть на этот результат.
@drago285
@drago285 9 күн бұрын
Привет Шаман! Есть у меня для тебя и твоих нейронок интересная идея, точнее загадка. Играют в шахматы двое, один читает мысли, другой прыгает во времени. Оба знают только правила игры и то как ходят фигуры. Читающий мысли узнает планы и стратегию прыгуна как только тот окажется перед ним возвращаясь из будущего. Прыгающий во времени может когда угодно вернуться в любую секунду от начала игры до того момента в котором сам находится. И он знает что играет с чтецом мыслей. Игра прекращается как только объявлен шах и мат. Кто победит? Это типа неразрешимая загадка, но я подумав над ней несколько дней прихожу к выводу что если бы эта игра начиналась снова и снова, не зависимо сохранялся бы опыт и знания от предыдущей выигрывал бы за частую один и тот же - читающий мысли. Кто прочёл это - ставь лайк что бы автор увидел.
@ustredzo
@ustredzo Ай бұрын
Очень хотелось посмотреть как раз про устройство системы на этом уровне, большое спасибо!
@stas_v
@stas_v Ай бұрын
Очень просто и доходчиво. Захотелось самому повторить. Спасибо!
@user-ul6ik9cp8d
@user-ul6ik9cp8d Ай бұрын
Супер! Обожаю твои видео про то, как работают твои симуляции Сейчас смотрю (пока только 3 минуты :D) Решил внезапно своё мнение вставить: я у себя просто перед каждым новым шагом симуляции перемешиваю порядок всех ботов тасованием Фишера Йетса, работает достаточно быстро и справедливо по-моему
@foo52ru
@foo52ru Ай бұрын
хорошая идея
@user-db2th5em3v
@user-db2th5em3v Ай бұрын
Графика это прекрасно. Визуализация процесса это то, на что заточен мозг человека, но до определенных пределов. Наверняка, не менее интересным было бы смотреть на графики и иметь возможность манипулировать ими в анализе. Наверняка интерпретация визуализации не всегда похожа на результаты из таблиц данных
@foo52ru
@foo52ru Ай бұрын
У меня реализована возможность сохранять данные симуляции в csv-файле. Но никак руки не дойдут до анализа данных, нагенерированных симуляцией :(
@user-db2th5em3v
@user-db2th5em3v Ай бұрын
@@foo52ru , как знать, может таблицы и анализ поможет сформулировать новые вводные для экспериментов
@nikitasssprogramming8710
@nikitasssprogramming8710 Ай бұрын
Это мы так долго ждали
@dyvniy_vershitel
@dyvniy_vershitel Ай бұрын
Замечательная работа! Спасибо за подробный описание логики работы своей программы. Теперь Ваше дело непременно будет продолжено. Может и я смогу собраться с мыслями, чтобы реализовать это на видеокарте, или в ботнете.
@duard8652
@duard8652 Ай бұрын
Оч классно! Спасибо!
@yobi3d
@yobi3d Ай бұрын
Спасибо вам большое! Очень познавательно 👍
@FAL0C
@FAL0C Ай бұрын
Братан, хорош, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
@progressive_agriculture
@progressive_agriculture Ай бұрын
Это немного с другого канала 😁
@FAL0C
@FAL0C Ай бұрын
@@progressive_agriculture главное, что контент в кайф 😏
@foo52ru
@foo52ru Ай бұрын
@@progressive_agriculture с какого?
@progressive_agriculture
@progressive_agriculture Ай бұрын
@@foo52ru Я на этом сталкиваюсь @ExtremeCode
@foo52ru
@foo52ru Ай бұрын
@@progressive_agriculture не совсем понял. У нас есть какие то одинаковые ролики?
@replay3069
@replay3069 Ай бұрын
Это просто офигенно!
@Ground1981
@Ground1981 Ай бұрын
Спасибо ! Круто 👍
@alexnorton1305
@alexnorton1305 Ай бұрын
Молодец. Посвящать часть своей жизни чему-то, а результатом делиться с другими говорит о личных качествах.
@turdakhov
@turdakhov Ай бұрын
Спасибо за ваши видео! Коммент в поддержку!
@MrFEARFLASH
@MrFEARFLASH Ай бұрын
не знаю задумался ли автор, но это интересное пособие по решению разных задач возникающих в циклах)
@progressive_agriculture
@progressive_agriculture Ай бұрын
И даже философии жизни и религии...
@user-gc9pw2uo6m
@user-gc9pw2uo6m Ай бұрын
Успехов!
@igorshingelevich7627
@igorshingelevich7627 Ай бұрын
Спасибо!
@user-wz7ov1xt6x
@user-wz7ov1xt6x Ай бұрын
У тебя просто талант!!
@user-cd9kj2rv1u
@user-cd9kj2rv1u Ай бұрын
Давно подписан, классный контент, уважение и успехов Вам!✨️👍💎
@user-qc2qb6lx9i
@user-qc2qb6lx9i Ай бұрын
Отличное видео, нужно начинать переписывать всё это на видеокарту и запускать обучаться где-нибудь в google collab))
@MrQuazar
@MrQuazar Ай бұрын
фундаментальная проблема все подобных систем - пошаговое выполнение каждого этапа для каждой клетки, именно это дает преимущество на начальном старте. Возможно необходим костыль - иммунитет на Н-циклов чтобы на достаточном пробеге клетки набрали силу и приступили к соревнованию
@gt34m62
@gt34m62 Ай бұрын
Возможно, я не правильно понял принцип фаз A и B, но вроде можно просто было сделать буфер для энергии, куда попадала бы перемещаемая энергия. А в конце хода она уже передавалась из этого буфера самой клетке. Т.е этим мы просто не дадим конкретной еденице энергии перемещаться более одного раза за ход.
@foo52ru
@foo52ru Ай бұрын
По моим прикидкам на бумажке, скорость в одну сторону будет клетка за ход, в обратную сторону - клетка за два хода
@gt34m62
@gt34m62 Ай бұрын
@@foo52ru разве? Это ведь будет (должно) работать просто как перекладывание всех энергии на одну клетку.
@grummusss
@grummusss Ай бұрын
У меня 2 идеи по такому проекту: Вместо того что бы симулировать передачу енергии каждой ход между клетками которые не являются носителем генома можно пересчитывать приток енергии к клеткам носителям генома при событиях приводящим к перераспределение енергии Не знаю как реализован геном но нету необходимостью давать каждому организму(отростку) копию всех данных генома. Например когда отросток создаёт 2 новых отростка без мутации то они оба будут подключены 1 геному различаясь только номером активного гена и тд. Также возможно разделить геном на более и менее стабильные части которые имеют иерархической порядок(то-есть есть типо корневая часть генома и дальнейшее части генома которые ссылаются на корневой геном/прошлую часть генома)
@dofidf3570
@dofidf3570 Ай бұрын
Здравствуй. У меня есть предложения по поводу Очередности клеток и Перемещения энергии. 1) Начнем с очередности: Так как подразумевается в симуляции, что все действия происходят одновременно, то нам понадобятся 2 списка: • Первый список (ПС) - список клеток участвующих в цикле; • Второй список (ВС) - список новых клеток (добавляются в конец ПС при новой итерации цикла). ПС можно обходить: от 1 до N с шагом 1 (то как показано в видео). А можно еще обходить таким образом: a) заведем простое число P, где P > N и N - количество элементов в ПС; b) заводим переменную: текущий индекс (ТИ) равную 0; c) вычисляем индекс клетки в ПС по формуле: ТИ = (ТИ + P) mod N, где mod - это остаток от деления (11 mod 3 = 2). Таким образом мы будем «прыгать» по клеткам из ПС в псевдослучайном порядке и если сделать N таких «прыжков», то мы побываем во всех клетках без повтора. И при каждой итерации цикла будем начинать не с клетки из предыдущего цикла, а с новой: - из этого следует, что не будет отдаваться предпочтение какой-либо клетки; - больше случайности будут добавлять новые клетки из ВС, присоединённые к ПС; - больше случайности можно добавить путем использования при каждой итерации цикла нового простого числа P (можно использовать список простых чисел). ВС при таком подходе необходимо использовать так как при увеличении количества клеток в ПС (кода еще полностью не обошли его): часть клеток не будет задействована, а другая часть пойдет по второму кругу. ВС также поможет находить клетки, которые пытаются встроится на одну и туже область, тут как поступить решает автор, единственное что я придумал: - это либо отдавать предпочтение раньше появившиеся клетки в ВС (при разных P порядок появление в ВС тоже псевдослучайный); - или при добавлении в ВС проверять не претендует ли другая клетка на туже область. 2) Перемещение Энергии: Для перемещения энергии можно использовать такой же механизм как в реальных клетках. Немного теории, адаптированной к нашей ситуации: - у клетки есть Накопитель Энергии (НЭ): в единицах или штуках; - у клетки есть Степень Требования Энергии (СТЭ): от 0 до 100% с шагом 0.1% (думаю такой шаг будет нормальным); - у клетки есть Степень Наследования Энергии (СНЭ): от 0 до 100% с шагом 0.1%; - клетка берет/передает энергию со всех соседей вокруг разом; - при делении клетка передает долю НЭ в зависимости от СНЭ. Объяснение: - НЭ - это то сколько есть энергии у клетки, которую она вырабатывает/тратит/передает, при 0 клетка умирает, возможен верхний лимит (в зависимости от автора); - СТЭ - это доля НЭ, которую клетка берет/передает соседям, тут такой смысл если: • СТЭк клетки меньше соседней СТЭс, то передаем долю НЭ соседней, долю считаем как: доля = СТЭс - СТЭк; • СТЭк клетки равна соседней СТЭс, то не передаем НЭ (по формуле выше это видно); • СТЭк клетки больше соседней СТЭс, то берем долю НЭ из соседней (формула выше); • СТЭк клетки значительно больше соседней СТЭс, то получаем раковую клетку (обычно так и происходит + ещё реплицируется постоянно). • Можно использовать в условиях (которые выше) не доли СТЭ, а конечное количество энергии (ККЭ), то есть: ККЭ = НЭ * СТЭ, а по результатам пересчитывать как передача среднего_значения( ККЭс - ККЭк ) или както по другому (тут решает автор). - СНЭ - это доля НЭ, которая передается при делении клетки наследнику (если можно так сказать): • так как было выше сказано при НЭ равно 0 клетка умирает, то при делении обязательно нужно передать часть НЭ; • причем передать такое количество НЭ, чтобы наследник смог некоторое время продержатся; • можно при делении изменить значение СНЭ у родителя, чтобы не объедать наследников или более сложного поведения, или выстроение магистрали с постоянным значением СНЭ, или при каждом делении уменьшать значение СНЭ пока клетка не сможет физически передать столько энергии и умрет, тут сложно прогнозировать что лучше; • можно поставить ограничение на количество делений (прям как в реальности ≈50). - Что касаемо передачи энергии от всех/всем соседей(ем), то можно: • каждому соседу по отдельности; • или вычислять общее кол-во передаваемой энергии от клетки, а соседи забирают её в зависимости от своей доли. - Реализация - 2 переменные (сколько получили (Дебет) и сколько потратили (Кредит)): • в начале: клетка увеличивает свой НЭ энергией, переданной от Предыдущего цикла; • в середине: тратит/передает энергию, на действия или передача соседям; • в конце: получает энергию, выработкой или от соседей. Таким образом при каждой итерации цикла мы получаем что все клетки передали/получили энергию соседям(ей). При таком решении клетки не будут умирать сразу, как только потеряют свою «цели жизни», а будут жить пока не израсходуют свой ресурс. Тут нужно подумать стоит ли пересчитывать сколько тратит каждая клетка энергии. Также этот метод можно использовать в передаче ресурсов между клетками. Надеюсь помог.
@progressive_agriculture
@progressive_agriculture Ай бұрын
При наличии буферов, чтоб энергия за 1 шаг не могла дальше 1 клетки сместиться, вся эта заумь ни к чему.
@igorkroshkin9354
@igorkroshkin9354 Ай бұрын
Классно же :)
@TheVadych
@TheVadych Ай бұрын
Спасибо за видео. Для полноты картины не хватает вводной с описанием мира и типов клеток
@alexorlov8875
@alexorlov8875 Ай бұрын
Круто
@KogothLetsPlays
@KogothLetsPlays Ай бұрын
Идея: Что если добавить клеткам нейроны, которые будут принимать решения о том нужно ли порождать новые клетки, и каким типам отдать предпочтение в зависимости от общих суммарных параметров всего тела? (размер тела, накопленная энергия всего тела, скорость получения энергии всем телом, какой тип энергии более доступен) Это может ограничить рост супер организмов или заставить их переключаться с солнца на переработку трупов. Нейроны как в нейросетях вместо генов, думаю будут более гибко обучаться управлению.
@pka_human
@pka_human Ай бұрын
Это очень хорошее предложение. Думаю нужен отдельный тип клетки хранящий определённое количество нейронов и собирать из таких клеток слои. Таким образом нейросеть будет формироваться по геному. Так-же появится забавная деталь, если повредить "мозговые" клетки можно нарушить поведение всего организма... огромнейший потенциал для эксперементов.
@Maturman
@Maturman Ай бұрын
Так уже есть в клетках условия. Они делают тоже самое, если что
@neutrinozh2070
@neutrinozh2070 Ай бұрын
@@Maturman Вроде бы как эти условия выполняються только один раз (при порождении клетки). Нейросеть функционировала б на протяжении всей жизни клетки.
@progressive_agriculture
@progressive_agriculture Ай бұрын
​@@neutrinozh2070 Эти условия выполняются в каждом цикле симуляции.
@KogothLetsPlays
@KogothLetsPlays Ай бұрын
@@Maturman В клетках сейчас есть гены, которые всегда одинаковые отростки дают, а я говорю о том чтобы учесть параметры всего растения.
@user-pf4so7sd5d
@user-pf4so7sd5d Ай бұрын
Я прям кайфую от представленного.
@user-qi6pv9jh7o
@user-qi6pv9jh7o Ай бұрын
Кста, вспомнил флешку garden of war Там боëвка основана на отрезании снабжения (у каждой территории, состоящей из граничащих покрашенных клеток, есть столица, в которой хранится голда, собираемая по 1 штуке с каждого шестиугольника каждый ход. Тратится она на содержание юнитов, и каждый юнит уровня Х абсолютно неуязвим для юнитов с таким же уровнем или слабее, а заодно защищает до 6 соседних клеток своего цвета(так сказать, зона контроля). Но чем выше уровень, тем ниже скорость, а снабжение вообще утраивается. Если столицу отрезать от территории с войском, то у новой территории появится новая с 0 голды, а и скорее всего затраты этой столицы превысят прибыль. Как только такое происходит, на следующий ход все юниты становятся гробами, а гробы территорией нежити. Нежить очень опасна, так как, несмотря на уровень силы 0, игнорирует зоны контроля и не требует снабжения, так что может всех окружать, создавая ещё больше гробов)
@user-si2iw8hl1q
@user-si2iw8hl1q Ай бұрын
читаю комменты и просто не понимаю ........ вы КТО? Вы зачем пишите вообще?) Ни один не задал вопроса по теме .... И уж тем более свои идеи..... То что делает этот человек - гениально......
@leok2640
@leok2640 Ай бұрын
Твои идеи и вопросы по теме? М?
@sergeyfamiliy2781
@sergeyfamiliy2781 Ай бұрын
По голосу, с монотонным и без интонации звучанием , понятно что это ИИ-учитель со сверхинтеллектом разработанный в Нашей РОССИИ!
@greatorb61
@greatorb61 Ай бұрын
​@@sergeyfamiliy2781чего
@user-sc4gc5mt1h
@user-sc4gc5mt1h Ай бұрын
Люди оставляют комментарии ради поддержки канала. Алгоритмам Ютуба важно количество, а не качество. Решение писать лишь "конструктивные" комментарии уменьшит их общее количество и распространение ролика соответственно.
@user-yf5zn9us5z
@user-yf5zn9us5z Ай бұрын
очень сильно на ютубе не хватает разделение комментариев по категориям. Например, категории "просто поддержка" (по умолчанию), идеи, другие проекты и т.д.
@1382200
@1382200 Ай бұрын
Лайк, подписка, комментарий!
@Rizomus
@Rizomus Ай бұрын
У каждого цикла есть начальные условия (НУ) - результат изменений предыдущего цикла. Мы хотим исключить фактор последовательности обхода клеток, т.к. в нашей реальности все клетки действуют одновременно. Иными словами, при итерации по клеткам в рамках одного такта эволюционное правило, применяемое к клетке, должно опираться ровно на те же НУ, что и остальные. Поэтому имеет смысл в начале нового цикла делать, что называется, snapshot начальных условий и для каждой клетки, брать входные значения из него. Понятно, что при таком подходе будут возникать коллизии. Для их разрешения можно придумать дополнительный слой логики, либо отдавать приоритет рандомно. В последнем случае история будет похожа на развитие квантовой системы, которая также из состояния суперпозиции (все возможные варианты исхода) каждый такт "схлопывается" в какое-то одно (ну или разделяется по параллельным вселенным, если вам больше нравится Эверетт и т.п.)
@47clere
@47clere Ай бұрын
Ккккайф!) название топ)
@Roid92
@Roid92 Ай бұрын
а почему бы не высвободить память?) вместо массива из четырех чисел с направлениями передачи энергии можно использовать битовые флаги. нужно всего четыре бита. так же поступить и с родителем. в итоге в одно восьмибитное число спокойно помещается инфа о направлении к клетке родителю и о направлениях для передачи энергии. да и битовые операции должны выполняться быстрее - что может ускорить симуляцию))
@Grey_Slime
@Grey_Slime Ай бұрын
Звучит логично
@darkfrei2
@darkfrei2 Ай бұрын
Для простоты объяснения же.
@Roid92
@Roid92 Ай бұрын
@@darkfrei2 возможно. не пришла такая мысль, когда писал комментарий)
@progressive_agriculture
@progressive_agriculture Ай бұрын
Потому что памяти в современных компьютерах "немерено," А работа с битовыми операторами в 2 раза медленней, чем просто с числами. В таких симуляциях самое сложное добиться приемлемой скорости исполнения. Такая пробежка волны по экрану может десятки тысяч циклов занять. И исполняется 1 цикл за 10 сек, или 10 циклов за 1 сек - очень сильно влияют на желание этим заниматься вообще. Ждать результат в чашке Петри приятней, чем на дубовой роще.
@foo52ru
@foo52ru Ай бұрын
Боюсь современные компиляторы для значения boolean используют байт, а не бит. Но это не точно. Для генома мне нужен был массив байтов, но в Processing байт интерпретируется, как число от -128 до 127, а мне нужно было от 0 до 225. Наверно это как то можно исправить, но я не стал заморачиваться и использовал массив int
@ruru_farm6856
@ruru_farm6856 Ай бұрын
Творец!
@user-ze3ez3iy6c
@user-ze3ez3iy6c Ай бұрын
Безумно интересно, хочу скачать openGL и повторить! Из идей - добавить организмам размножение с участием двух родителей. *** Семечко движется, пока не врежется в какую либо живую клетку. Как врежется - копирует некоторые числа из её генома в свой, предварительно проверив, достаточно ли геномы различны. Ксли геномы не слишком похожи - размножению быть. Семечко копирует числа. Каждое из 672 чисел скопируется с шансом 50/50. Таким образом, семечко получает новый геном, производит с шансом 1/100 мутацию и приступает к его выполнению
@hpw-dev
@hpw-dev Ай бұрын
Хорошие визуализации
@acectent9335
@acectent9335 23 күн бұрын
Возможно для передачи энергии в обратном направлении сделать буфер ссылками конечных потребителей, который будет обновляться каждую итерацию со стоимостью пути(можно еще и ген приоритета путей добавить). Ну и условие чтоб можно было использовать только накопленную энергию с прошлых ходов.
@user-bj4hj9gy7r
@user-bj4hj9gy7r Ай бұрын
Проблема преимущества очереди исполнения будто бы решается двухэтапным выполнением - сначала все выставляют свои намерения, дальше все намерения резолвятся с разрешением конфликтов И проблема перемещения энергии может быть решена двухэтапным выполнением организмов - создаём намерение на передачу энергии, которое отменится при невозможности
@progressive_agriculture
@progressive_agriculture Ай бұрын
Проблема преимущества несколько надуманна. Она таковой является в самом начале только если в симуляции 1 не большой многоклеточный организм. Когда организм большой и/или их много, да еще после волны вымирания. Ведь, полагаю, свободные ячейки в начале списка заполняются новорожденными элементами. Иначе, в каждом цикле придется отрабатывать все элементы массива, при том что их столько же, сколько точек на карте. То объекты начнут отрабатываться в разнобой. Уж такой цельной последовательной волны точно не будет. А если последний элемент переносить в свободную ячейку в перед по списку вместо вымершей, там такой салат будет, что ни каких преимуществ ране/поздно рожденных не останется.
@user-bj4hj9gy7r
@user-bj4hj9gy7r Ай бұрын
@@progressive_agriculture в целом вся моделируемая система выглядит несправедливо из-за того что все равно существует приоритет исполнения и может случиться каша в случайный момент Нужен эксперимент с одинаковыми начальными данными - с разными способами приоретизации и без нее вовсе
@razvigor2819
@razvigor2819 Ай бұрын
Теперь понятно, откуда описанные в предыдущих роликах проблемы. 32 генов банально не достаточно для кодирования тех возможностей, что потенциально заложены в геноме. А рудимент с 3 направлениями с заранее типизированными отростками добивает картину, т.к. чтобы просто закодировать все возможные варианты ветвления требуется 5*5*5=125 генов. А ведь еще и нужен запас на гены-условия, минимум столько же. Итого получается, что чтобы в данной структуре генома получить не урезанный по возможностям организм, необходимо не 32 гена, а 256. Решить эту проблему частично можно возвратом к коротким генам цифровых деревьев, увеличив число строк за счет их длины. Более оптимальное, имхо, решение: выделение нетипизированных побегов, которые выберут кем стать сами, по проверке параметров энергонасыщенности и органики в месте своего появления, тогда потребуется меньше генов, но вырастет размер самого гена на +6.
@user-sm7xb9xt8l
@user-sm7xb9xt8l Ай бұрын
Крутяк
@nowar452
@nowar452 Ай бұрын
Очень интересные решения! Особенно с буферами! И алгоритм определения направления для передачи энергии с логичной и простой системой перенаправления - просто музыка! Классический вечный вопрос: не пробовали добавить механизм ретравирусов? Было бы крайне интересно, если бы клетки умели заставлять соседей копировать геном. Для одного организма разницы бы не было, но вот клетки-паразиты могли бы навести шороху. Правда, встаёт вопрос, будет ли такой механизм вносить хоть какие-то изменения с учётом основного принципа: геном исполняют только отростки...
@progressive_agriculture
@progressive_agriculture Ай бұрын
Если вирусов много, то они иногда и на отростки попадать будут. Другой вопрос, что это приведет к прекращению роста этой ветви и быстрому отмиранию.
@ghost_n0
@ghost_n0 Ай бұрын
Жесть, не думал что настолько много факторов нужно учитывать при создании корректной симуляционной системы
@progressive_agriculture
@progressive_agriculture Ай бұрын
А там и не надо думать, хотя, можно. Оно само в процессе приходит, когда в одну сторону начинает расти активней, чем в остальные.
@euwaq
@euwaq Ай бұрын
превью крутое)
@zix2421
@zix2421 Ай бұрын
Это было очень интересно! Интересные решения в транспортировке энергии и геноме(условия). Вопрос: а как процессор справляется технически? Судя по видео, карта огромная, а вычислений много
@foo52ru
@foo52ru Ай бұрын
Карта 3840 на 2160. Для одного ролика обычно больше недели симуляции уходит. (примерно 2 миллиона шагов). Сейчас симуляции крутятся на двух ПК. Раз в день заглядываю, что там происходит
@tohtarbekovabzal189
@tohtarbekovabzal189 Ай бұрын
Это звучит очень круто, желаем вам удачи! Вы лучший!
@jaros.chashin
@jaros.chashin Ай бұрын
Если максимальное количество клеток определено заранее (даже если пока не доходило до того лимита) совсем новые души рождаться не смогут. Будет лишь реинкарнация старых. Умерла 4ая клетка и теперь ждёт пока какая-нибудь другая клетка её заново родит в эту очередь.
@user9x0Hj4
@user9x0Hj4 Ай бұрын
Максимальное количество клеток определенно размером мира: на поле 100x100 не может быть больше 10 000 клеток.
@foo52ru
@foo52ru Ай бұрын
Всё верно. У меня реализован механизм реинкарнации душ. У каждой клетки есть прошлая жизнь. :)
@sabbat8310
@sabbat8310 Ай бұрын
Спасибо за видео! Вечер обещает быть интересным :)
@Shedshebolda
@Shedshebolda Ай бұрын
Ураааааааа
@QuaterfoilFikusS
@QuaterfoilFikusS Ай бұрын
ничего не понял, но звучит шикарно
@user-ju7xj3qu6k
@user-ju7xj3qu6k Ай бұрын
ТехноШаман, твои проблемы являются следствием преждевременного изменения состояния клеток. Для преодоления этого можно ввести фазы подготовки к изменению и изменения состояния. На фазе подготовки мы рассматриваем состояние всех клеток "только для чтения" и формируем дельту состояния для каждой из них. А на фазе изменения состояния мы эту дельту применяем, в условиях запрета на чтение состояний других клеток.
@Myself0094
@Myself0094 Ай бұрын
Я бы порекомендовал портировать вычисления на Vulkan или cuda - они могут стать в разы быстрее. Вдобавок, можно распараллелить процессы дампа состояний и отрисовки кадров(если это не так), чтобы не перегружать симуляцию графическими процессами. По файлам дампов (json например) рисовать графику можно будет как после завершения симуляции, так и параллельно в отдельном потоке, что удобно.
@progressive_agriculture
@progressive_agriculture Ай бұрын
Дамп будет занимать на порядок больше памяти, чем видео. В видео информации гораздо меньше, чем в дампе. А у вулкана и куда проблемы с рандомизацией. Она там или медленная, или далека от случайной. Тем более, что обсчет на видюхах больше рассчитан на абсолютно одинаковые действия без условий. Условия все портят. Они требуют разных действий для всех элементов.
@foo52ru
@foo52ru Ай бұрын
У меня нет опыта в программировании видеокарт. Я не являюсь профессиональным программистом. Сейчас программирую в среде Processing - это обрезанная Java для дизайнеров. Насколько я понимаю, видеокарты накладывают ряд ограничений на код, чего нет у процессора. Так что пока на процессоре. Хотя я встречал интересные проекты на видеокарте, работающие в реальном времени.
@Myself0094
@Myself0094 Ай бұрын
@@progressive_agriculture Хм, я сейчас посчитал, дамп кадра из миллиона клеток с таким жирненьким геномом может занимать ~600мб. Если однобайтовый геном заменить полубайтовым и там понерфить чуток флаги и буферы, можно снизить до 350мб, что тоже не мало. Если уменьшить длину таблицы генов до 16, можно ужаться до 168байт на клетку и 168мегабайт на миллион клеток. Если поверх применить какой-нибудь дефлейт, можно скукожить результат еще процентов на 30, а то и больше, то есть дойти до 110-120мб, что уже гораздо проще и с ростом дампа будет увеличивать ратио компрессии, тк монотонность будет расти за счет большого числа одинаковых чисел. В итоге немаленькая эволюция системы в 200к прохождений линкед листа через нулевую клетку с дампом на каждые 20 проходов займет терабайт дискового пространства. Мда, похоже процессорным временем в данном случае действительно проще пожертвовать, чем памятью, т.к. стейт уж больно тяжел. Но вот на счет графики есть мысль, что состояние уж больно математично, поэтому существенную часть ветвлений можно заменить на математические операции а ля branch avoidance. Даже довольно сложные выражения в батче видеокарта потенциально может выполнять в десятки раз быстрее. Но от алгоритма конечно зависит.
@crystalrain7776
@crystalrain7776 21 күн бұрын
чел ты крут
@syntet8743
@syntet8743 Ай бұрын
foo52ru ТехноШаман 5:00 Есть идея о справедливом массовом ходе(шагах) организмов. Тебе надо создать иллюзию одновременности, это как в игре мафия, пока все участники не походят, действий не будет, и только когда город проснётся (это у тебя клетка 0) только тогда выполнится все запланированные действия. То есть будет одновременно убиты 2,3 клетки, рождены новые 2-3 клетки. Тогда преимущество первоочерёдных клеток будет полностью нивелировано.
@ViktorRussia14477
@ViktorRussia14477 Ай бұрын
Можно попробовать поэкспериментировать с ускорением и замедлением мутаций.
@user-cf3rm2xs5u
@user-cf3rm2xs5u Ай бұрын
если честно я бы посмотрел на мир где место в начале списка даёт приимущестово, ьыло бы интерсено посмотреть как органищмы к этому адоптируються
@progressive_agriculture
@progressive_agriculture Ай бұрын
Реальный мир не? Быть первыми в списке людей не дает преимущества по сравнению с последними?
@utimij
@utimij Ай бұрын
Спасибо! ЛУЧШАЯ СЕРИЯ ВИДЕО, БОРЬБА КЛАНОВ МАЙ ЛАВ❤
@ruby_linaris
@ruby_linaris Ай бұрын
вместо хранения прошлой-следующей в списке "всех", хранить только указатель на клетку (картотека живых клеток) (можно просто битовой картой, раз матрица статическая, и хранить индекс первой незаполненной), можно распараллелить, и хранить N списков-N картотек, например, 2х2, порождающий 4-е картотеки, (k00, k 01, k10, k11) разбивая карту на 4 равноправные непересекающиеся подкарты-полосы, для минимизации взаимного влияния от соседних полос. но возникает проблема синхронизации, которая может просадить быстродействие полностью, упростим: каждая подкарта может отправлять запрос к процессам рождения, уничтожения, которые, уже в свою очередь, получают управление после того как все подкарты отработают свой цикл. а вставлять/убирать (отдельным от подкарт циклом) уплотняя карты живых... работая исключительно с началом и концом свободных позиций... хм... с энергией что-то странное ... лучше сразу разбить на мир энергетических, мир транспортных и мир жующих... и просто контролировать, чтобы не было однофамильцев. и...?! зачем симулировать передачу энергии? если есть источник, есть путь, есть приемник ... то можно успокоится, и ждать когда что-то поломается, тогда уже перерисовать путь передачи энергии, и отправить все запросы на очистку и освобождение. с aG-table мое предложение модификации... If_P_aG If_P_aG If_P_aG Cmd_aG1_aG2, те проверка первого условия - первый ген или команда, на второе условие его ген или команда, третье - аналогичное, а потом рандомно либо команду, либо замену гена, как условие "иначе".
@progressive_agriculture
@progressive_agriculture Ай бұрын
Втыкать новорожденных, или смещать на границе подвижных можно отдельным потоком в цикле в процессе отработки по заявкам от больших массивов. Делать их очень много очень маленьких - нет смысла. Не более, чем 2-4 чисел ядер у процессора. В современных реалиях порядка 16/64 полей. Опять же, если в конкретный момент существует 4 элемента, бить их на 64 процесса смысла нет. Должно быть некое минимальное количество, что параллелить.
@habvip6551
@habvip6551 Ай бұрын
УРА новое видео
@NickProkhorenko
@NickProkhorenko Ай бұрын
Ничего не понял, но очень интересно.
@VErshov.
@VErshov. Ай бұрын
Считай мы в расчёте
@Relat_Mensal
@Relat_Mensal Ай бұрын
Ужас как сложно, завтра опять пересмотрю и попытаюсь Все понять
@o_kaneredoos_o
@o_kaneredoos_o Ай бұрын
класс
@INGVAR_K
@INGVAR_K Ай бұрын
ОНО ЖИВОЕ!
@slirsflud
@slirsflud Ай бұрын
Название топчик 🎉
@PJutch
@PJutch Ай бұрын
Ну, моя попытка сделать симуляцию с одноклеточными организмами с исполняемым геномом) привела к такому алгоритму с очерёдностью: 1. Каждая клетка решает, что она будет делать 2. Для каждой ячейки соседи, начиная со случайного и далее по часовой стрелке, пытаются с ней взаимодействовать. Можешь молодец, не можешь - ход впустую. Важный хак: мы не удаляем убитые клетки, а просто ставим флаг. И если организм передвинулся мы делаем копию и ставим флаг на старой 3. Все клетки, которые нужно удалить удаляются Таким образом все направления +- равноправны. Даже если клетки движутся против порядка обхода, может передвинуться только организм рядом с пустой ячейкой. Если 2 организма атакуют друг друга, умирают оба (О, а я кажется понял почему я не мог заставить закон сохранения энергии работать!) Я правда пока смотрел реализацию, нашёл в ней 2 проблемы: 1. Клетка может уйти от атаки если походит раньше. А если позже не может. Надо наверное атаковать в отдельную фазу или сделать разный флаги для "ушёл" и "умер". 2. Если организм размножился/походил, то его сосед по часовой стрелке имеет сильно больше шансов убить его/потомка, чем сосед против часовой стрелки. Стоит рандомизировать не только начало, но и направление обхода. Делать вообще случайный порядок, мне кажется, медленно, а то, что чем ближе организм к другому, тем проще ему помешать, можно считать фичей)
@progressive_agriculture
@progressive_agriculture Ай бұрын
Делай общий список ячеек и не придется соседей обходить для их активации. По мере смертей и дефрагментации списка объектов они все перемешаются и закономерности преимуществ не станет. А то в твоей схеме возможна ситуация, когда все соседи вокруг заставят одного 4 раза, или 8 раз выполнять действия за цикл. А это вообще анрил! Опять же. В реальной жизни действие на долю секунды раньше приводит к преимуществу. Так что, все возможно.
@PJutch
@PJutch Ай бұрын
@@progressive_agriculture ​ ну, та симуляция получилась неинтересная и я её уже с год не трогал. Про 8 раз выполнять действие за цикл я немного не понял. У меня так разрешаются только перемещение, размножение и атака. При этом организмы только добавляются или помечаются как мёртвые и ячейка не освобождается. Поэтому для каждой ячейки может выполниться только 2 действия - перемещение/размножение и потом атака. Но вообще, кто-то здесь написал поддерживать список объектов и перемешивать их каждый цикл. Это самый честный и вменяемый вариант.
@progressive_agriculture
@progressive_agriculture Ай бұрын
@@PJutch Ты писал - "Для каждой ячейки соседи, начиная со случайного и далее по часовой стрелке, пытаются с ней взаимодействовать." Тогда, представь, что "каждая ячейка" выбранные тобой для отработки объекты 4 подряд находятся вокруг некоторого до кого очередь еще не дошла. И каждый из очередных будет его заставлять взаимодействовать. 4 раза заставят. Я не перемешиваю. Просто, если кто-то помер, на его место переносится последний элемент в списке, список уменьшается на 1, отработка передается перенесенному. А если новый рождается, то он добавляется в конец списка. Список увеличивается на 1. В итоге множества смертей и рождений списки перемешиваются так, что в сейве потом концов не найти. У меня есть 4 действия, которые исполняются с некоторой вероятностью: поворот, шаг вперед, съесть, размножиться. только одно действие выполняется за шаг. Вот вероятность действия переносится в геноме. Она же и мутирует с вероятностью 1/1000. Есть 3 вида живности: плесень(еда) - медленно растет во все стороны сплошным ковром. Бактерии -ползают и едят плесень. Корни(хищные растения) - медленно растут, ветвятся, передают друг другу энергию, раз в 10 шагов съедают бактерию вплотную к корню. На полянке в размер экрана 1920х1080 пытаются выжить. А плесень растет в зависимости от "радиации" которая меняется по очень длинной синусоиде. Цикл радиации начинал с 100тыс. Сейчас около 20млн тактов обсчета живности.
@PJutch
@PJutch Ай бұрын
@@progressive_agriculture ну так суть в том, что их этих взаимодействий удачны всегда максимум 2. Вообще можно после 1 сразу останавливаться. Если список без перемешивания, то если 2 организма рядом в списке одновременно родили, то потомки тоже будут рядом в списке, и из-за этого могут быть какие-то артефакты... Вообще мне кажется, алгоритм обновления не так сильно важен, и развиваться будут примерно одинаковые организмы. Но это уже бы надо проверить экспериментально.
@user-ze3ez3iy6c
@user-ze3ez3iy6c Ай бұрын
Посчитал... Поле размером 8192х8192. Что бы в каждой клетке хранить геном, понадобится 42 Гб оперативы
@xelizy
@xelizy Ай бұрын
128GB + Xeon + 4090.
@Valentin_I
@Valentin_I Ай бұрын
Такие данные очень хорошо и быстро сжимаются. Можно из оперативы доставать блоками, их распаковывать, обсчитывать, сжимать обратно.
@Losinkyilos
@Losinkyilos Ай бұрын
Интересно, какие методы для решения таких же задач предпринял бы ИИ.
@snickersdestroyer
@snickersdestroyer Ай бұрын
Ех хочется 2х часовую версию без коментариев. Посмотреть как ячейки бегают суетятся
@smundaredda2334
@smundaredda2334 Ай бұрын
Да уж, куда сложнее самых первых проектов 😅😅
@SIM31r
@SIM31r Ай бұрын
Круто конечно. Но хотелось бы организмы с небольшим умом, нейросеть из десятка нейронов и пусть думаю этим ))
@progressive_agriculture
@progressive_agriculture Ай бұрын
Всему свое время. Половину времени жизни на зкмле ни каких сейронов не было вообще. Были одноклеточные без нервов и мозгов. Торопиться не надо!
@user-sd6xh2jo7k
@user-sd6xh2jo7k Ай бұрын
Что мешает сделать 2 массива - входной и результат, пото меняем их местами?
@Green_slimer
@Green_slimer Ай бұрын
Когда видео про кочевников это мой любимые существа!!!???
@melrim3958
@melrim3958 Ай бұрын
Техношаману. Энергия не является веществом, энергия также не является полем. Энергию следует понимать как процесс перехода материи из одного состояния в другое. Условия для энергии, или цепного запуска изменений, соблюдаются всегда. Мы называем этот набор условий материальным миром. Вы говорите, что в многоклеточном организме движется энергия!? Что там движется? Является ли процесс моделирования в компьютере материальным миром?
@Maturman
@Maturman Ай бұрын
А если мутациям дать возможность не просто менять геном, а создавать его участки. Т. е. Был геном с одним условием - стало 2, было 4 условия, стало 3. А чтобы не стало слишком много условий храниться, то чем их больше тем чаще она удаляется. Можно, например для КАЖДОГО условия сделать шанс удаления, чтобы всё было относительно нормально
@progressive_agriculture
@progressive_agriculture Ай бұрын
Можно, но тогда это будет на порядок сложней написать. Сейчас все объекты одинаковые по структуре, а там все будут разные. И работать такая тема сразу после написания станет медленней.
@Maturman
@Maturman Ай бұрын
@@progressive_agriculture С чего бы? Он же не проверяет код каждый раз, а проходится по нему последовательно. Просто идея реализации неограниченного количества условий для клетки.
@progressive_agriculture
@progressive_agriculture Ай бұрын
@@Maturman Потому что структура генома и последовательность действий четко заточена на размер таблицы генома. А если количество условий меняется произвольно от клетки к летке, то структура вычислений будет разная. размер таблички будет разный да и количество табличек у одной клетки может быть разным. А это значит, что больше вычислений, больше сложность. Дольше обсчитывать. Даже на первом элементе. Клетка одна, учитывать возможную сложность надо уже с первого цикла.
@Maturman
@Maturman Ай бұрын
@@progressive_agriculture Естественно, если больше условий, то и больше вычислений. И так и не понял вас¯\_(ツ)_/¯
@progressive_agriculture
@progressive_agriculture Ай бұрын
@@MaturmanСейчас количество условий одинаковое. Количество генов у всех клеток одинаковое. Структура программы простая. Скорость выше. Ошибок меньше. Добавляем возможность иметь больше условий - усложняется структура программы. Скорость работы падает. Размерность генома меняется. Растет время на обсчет - скорость падает. Повышается сложность обработки генома - падает скорость. Растут ошибки. В целом. Сложней, медленней, косячней. Попробуй все это удержи в голове и расчитай! Вот возьми и попробуй! 😉
@victorlisov5138
@victorlisov5138 Ай бұрын
Достаточно сложная в обработке модель с точки зрения програнгого кода, это как ради одного бита использовать байт... Подсчёт энерги можно сделать после того как все клетки в рамках организма сделают свой ход.
@klaxwork1208
@klaxwork1208 Ай бұрын
Я уже задавал вопрос, но, все-таки, задам его снова. Не сделаете ли такую жизнь на основе не генома, а нейросети? Пускай начнется с малой, буквально штук 10-15 входных нейронов, один-два слоя скрытых с 10-15 нейронами, и десяток выходных нейронов. Ну или сколько там будет действий конечных для каждой клетки... Сначала только одиночные клетки, а там, глядишь, и до растений доберетесь... :)
@nothing4542
@nothing4542 Ай бұрын
Благодарю за технический ролик, но мне все ещё интересно сколько ресурсов компьютера ест такая симуляция?
@progressive_agriculture
@progressive_agriculture Ай бұрын
В идеале, 100% потока, а если паралелить вычисления, то и 100% процессора. А памяти в зависимости от сложности объектов и размера поля. В силу любопытности экспериментатора - "а что будет если объекты сложней? А что будет, если полянка по больше?" память тоже можно утилизировать на 100%. Видеокарта 5%. Тут для нее работы нет. На диске тоже считаные мегабайты занимает.
@foo52ru
@foo52ru Ай бұрын
В приделах 3 шагов симуляции в секунду. Для ролика надо где то неделю, что бы пара миллионов шагов просчиталось.
@nothing4542
@nothing4542 Ай бұрын
@@foo52ru благодарю
@Artovna
@Artovna Ай бұрын
Извините, я на этом канале 5 минут после листания шортсов, вопрос: Борьба кланов будет в открытом доступе? Я так понимаю, что это симулятор эволюции, но когда публикация (Полноценная версия)?
@ataksanimation176
@ataksanimation176 Ай бұрын
А техношаман не думал о веб версии такой симуляции - или непотянет?
@gok-pro
@gok-pro Ай бұрын
Коммент пишу чисто для продвижения ролика, а так интересно было бы узнать на чем ты все это пишешь? Какой язык, библиотеки и тд?
@foo52ru
@foo52ru Ай бұрын
язык Processing. Библиотеки не используются
@igorcoolman
@igorcoolman Ай бұрын
а можно как-то использовать где-нибудь Чи́сла Фибона́ччи - элементы последовательности : 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, то-есть следующее число это сложение текущего с предыдущим.
@progressive_agriculture
@progressive_agriculture Ай бұрын
Их не используют. В больших системах они сами вылазят как неотъемлемое свойство вселенной.
@Eugeny_Goncharuk
@Eugeny_Goncharuk Ай бұрын
Миллионы лет эволюции за 19 минут.
@Occultist_
@Occultist_ Ай бұрын
Симуляции конечно круты, но вот ощущение, что ну как-то вот все организмы - колониальные одноклеточные. Можно ли в теории смоделировать такие процессы, как формирование именно многоклеточных организмов, то есть, когда клетки будут приобретать разные свойства в рамках некоего общего организма, подчиняясь единой цели?
@alsevorse
@alsevorse Ай бұрын
Прям так и представляю, как создатели нашей вселенной сидят вне системы и "вручную" собирают и пересобирают молекулы в попытках создать устойчивую рнк с мутациями в интересном направлении. А потом публикуют на своем ютубе видосики по симуляции на искусственной вселенной и советуются: чего еще б внести такого интересного.
@xepota
@xepota Ай бұрын
Сей алгоритм требует осмысления. Спасибо за разбор.
Параллельные миры. Небольшой эксперимент.
1:00
foo52ru ТехноШаман
Рет қаралды 61 М.
Нейросеть учится ходить
16:51
KrashheR
Рет қаралды 566 М.
0% Respect Moments 😥
00:27
LE FOOT EN VIDÉO
Рет қаралды 45 МЛН
КИРПИЧ ОБ ГОЛОВУ #shorts
00:24
Паша Осадчий
Рет қаралды 6 МЛН
Искусственная жизнь. Борьба кланов.
19:23
foo52ru ТехноШаман
Рет қаралды 517 М.
Роевой интеллект. Муравьиный алгоритм.
20:57
foo52ru ТехноШаман
Рет қаралды 364 М.
Искусственная жизнь. Борьба кланов 7.
34:27
foo52ru ТехноШаман
Рет қаралды 25 М.
Cyber biology 2 #2.  Эксперименты
26:34
farmer_2010
Рет қаралды 446
31 portals of impossible shape
35:50
optozorax
Рет қаралды 544 М.
Искусственная жизнь. Симуляция, которая смогла...
23:48
Такого вы точно не видели #SonyEricsson #MPF10 #K700
0:19
BenJi Mobile Channel
Рет қаралды 3,4 МЛН
📱 SAMSUNG, ЧТО С ЛИЦОМ? 🤡
0:46
Яблочный Маньяк
Рет қаралды 705 М.
СЛОМАЛСЯ ПК ЗА 2000$🤬
0:59
Корнеич
Рет қаралды 2,2 МЛН