Было бы интересно посмотреть на несколько муравейников одновременно работающих по немного разным алгоритмам. А потом ещё сделать их скрещивание и отбор.
Отличная мысль! Можно например ввести понятие "энергия" в симуляцию. Каждый муравей бы тратил энергию на передвижение, еда пополняла бы энергию. От скорости перемещения нелинейно зависело бы потребление энергии. Так же можно ввести гены, влияющие на дальность работы детекторов, так же с завязкой на энергию, чем дальше - тем энергозатратней. И ген, определяющий алгоритм работы детектора (например выбор - двигаться ли к самому интенсивному феромону или к центру скопления феромонов). Кроме того, можно ввести новые типы муравьев: матка/солдат и их особые алгоритмы поведения. Класс! Это должно получиться зрелищно )
Здорово. Нужно чтобы муравьи ML-Agents использовали и самообучались, а то нечестно, действуют по заранее прописанному детерминированному алгоритму. А в плане оптимизации - двоичное разбиение пространства для проверки коллизий должно позволить и тысячу муравьев запускать одновременно.
возможно феромон должен быть не какой-то точкой, а областью с максимальной концентрацией в центре и минимальной на переферии (радиус которой со временем снижается до нуля), тогда несколько точек могли бы либо сливаться с усилением, либо перетекать в общий центр со средним значением. Еще было бы интересно посмотреть как удут строить путь мураши при движущихся преградах, или движущихся источниках пищи.
Было бы интересно реализовать это с помощью нового DOTS. Как рассказывают о том, какой он прирост даёт при верном использовании, можно было бы добавить больше сущностей.
Да, DOTS, уверен, даст бус, но в целом у меня подход - не оптимальный. Коллайдер на каждом феромоне - это перебор) В профайлере физика с ума сходит. Думаю переделать сам подход, феромоны создавать не как отдельные сущности, а заносить в виртуальный кеш, меньшего разрешения, и визуализровать кеш, как текстуру.
Нужно добавить муравьям возмлжность обмениваться информацией при касании чтоьы не возникало того что когда источник пищи был съеден вокруг него не кружили муравьи
надо добавить механику того что муравей может идти только по своему пути а остальные муравьи будут искать новые пути что-бы они не использовали постоянно неэффективный путь а каждый искал свой самый эффективный, в конце у кого ферамновый след будет плотнее это будет значить что его путь самый быстрый
Как этот конец нахождения пути определить, что бы остальные начали ходить по самому лучшему? Они все в итоге будут ходить только по своим путям... Либо только по самому первому, потому что он самый жирный, по сравнению с отсутствующими другими.
Нужно тогда придумать цель, для чего им строить муравейник? Можно например увеличивать лимит населения муравейника, если его строят. Хорошая идея! Спасибо за коммент!
Основная проблема, которая решается семейством "муравьиных алгоритмов" - логистика. Например доставщик пиццы должен отвезти несколько заказов как можно скорее и вернуться на базу. Муравьиный алгоритм поможет построить оптимальный маршрут. Но это именно про реализацию алгоритмов. В этом же видео я хотел получить работающую модель поиска "агентами" общей цели и оптимизацию их перемещения, без непосредственной реализации алгоритма. Именно поэтому ролик назван "Симуляция муравейника". В итоге, симуляция продемонстрировала эффект, которого можно достичь.
На текущий момент муравью не умирают, их всегда одно и то же количество. Да, думаю, что если добавить рождение новых муравьев, а так же необходимость их кормить, для выживания, это может привести к интересным результатам! Спасибо за коммент!
Может быть будет полезным - Из интересных открытий, обнаружил, что в Юнити можно указывать слои, между которыми физика обрабатывает коллизии, а остальные слои игнорирует, это так же дало буст производительности, настраивается на вкладке настроек физики.
Было бы интересно посмотреть на несколько муравейников одновременно работающих по немного разным алгоритмам. А потом ещё сделать их скрещивание и отбор.
Отличная мысль!
Можно например ввести понятие "энергия" в симуляцию. Каждый муравей бы тратил энергию на передвижение, еда пополняла бы энергию. От скорости перемещения нелинейно зависело бы потребление энергии.
Так же можно ввести гены, влияющие на дальность работы детекторов, так же с завязкой на энергию, чем дальше - тем энергозатратней. И ген, определяющий алгоритм работы детектора (например выбор - двигаться ли к самому интенсивному феромону или к центру скопления феромонов).
Кроме того, можно ввести новые типы муравьев: матка/солдат и их особые алгоритмы поведения.
Класс! Это должно получиться зрелищно )
@@masklab6748 Эдак можно развить симулятор до Empires of the Undergrowth :)
@@filatovdmytro воу, спс за референс! потыцкаю
Здорово. Нужно чтобы муравьи ML-Agents использовали и самообучались, а то нечестно, действуют по заранее прописанному детерминированному алгоритму.
А в плане оптимизации - двоичное разбиение пространства для проверки коллизий должно позволить и тысячу муравьев запускать одновременно.
Жалко, что мало такого рода контента в инете. Жирный лайк
спасибо за лайк!
возможно феромон должен быть не какой-то точкой, а областью с максимальной концентрацией в центре и минимальной на переферии (радиус которой со временем снижается до нуля), тогда несколько точек могли бы либо сливаться с усилением, либо перетекать в общий центр со средним значением. Еще было бы интересно посмотреть как удут строить путь мураши при движущихся преградах, или движущихся источниках пищи.
по басне крылова следует ввести еще сущность - стрекозу ))
Было бы интересно реализовать это с помощью нового DOTS. Как рассказывают о том, какой он прирост даёт при верном использовании, можно было бы добавить больше сущностей.
Да, DOTS, уверен, даст бус,
но в целом у меня подход - не оптимальный.
Коллайдер на каждом феромоне - это перебор) В профайлере физика с ума сходит.
Думаю переделать сам подход, феромоны создавать не как отдельные сущности, а заносить в виртуальный кеш, меньшего
разрешения, и визуализровать кеш, как текстуру.
Нужно добавить муравьям возмлжность обмениваться информацией при касании чтоьы не возникало того что когда источник пищи был съеден вокруг него не кружили муравьи
Интересное видео, генерал Зод!
Делай или с использованием ECS или на Compute Shaders, тогда и производительность будет и проблем никаких не будет.
надо добавить механику того что муравей может идти только по своему пути а остальные муравьи будут искать новые пути что-бы они не использовали постоянно неэффективный путь а каждый искал свой самый эффективный, в конце у кого ферамновый след будет плотнее это будет значить что его путь самый быстрый
спасиб, с муравьями я остановился из-за проблем с производительности ) нужно или более мощный комп или менять подход
Как этот конец нахождения пути определить, что бы остальные начали ходить по самому лучшему?
Они все в итоге будут ходить только по своим путям...
Либо только по самому первому, потому что он самый жирный, по сравнению с отсутствующими другими.
Было интересно ,а если добавить в симуляцию песчинки ,и муравьи будут строить муравейник.
Нужно тогда придумать цель, для чего им строить муравейник? Можно например увеличивать лимит населения муравейника, если его строят. Хорошая идея! Спасибо за коммент!
Я не понял как они корректируют маршрут на оптимальный.
ставлю 460 лайк )))
мне не хватало проблемы) какие проблемы можно решать этим алгоритмом? примеры.. может быть личная боль..))
Основная проблема, которая решается семейством "муравьиных алгоритмов" - логистика.
Например доставщик пиццы должен отвезти несколько заказов как можно скорее и вернуться на базу. Муравьиный алгоритм поможет построить оптимальный маршрут.
Но это именно про реализацию алгоритмов.
В этом же видео я хотел получить работающую модель поиска "агентами" общей цели и оптимизацию их перемещения, без непосредственной реализации алгоритма. Именно поэтому ролик назван "Симуляция муравейника".
В итоге, симуляция продемонстрировала эффект, которого можно достичь.
Ищи канал ТехноШаман, там муравьиный алгоритм разжёван с прикладными примерами.
@@xepota ну вот опять, зачем его искать если я не понимаю какие задачи он решает?))
@@MrHunterpav 🤷🏻 Извини, было желание помочь тебе.
@@MrHunterpav Вам же сказали - логистика, планирование маршрута.
Можна добавит
Шкалу голода в морувьв
И еволюцию
Мения крутая тактика поиска иди
Будет передаваца следуищим пакалениям
И рой будет болия ифективен
На текущий момент муравью не умирают, их всегда одно и то же количество. Да, думаю, что если добавить рождение новых муравьев, а так же необходимость их кормить, для выживания, это может привести к интересным результатам! Спасибо за коммент!
У меня с моим то кодом юнити уже умерает...)
Может быть будет полезным - Из интересных открытий, обнаружил, что в Юнити можно указывать слои, между которыми физика обрабатывает коллизии, а остальные слои игнорирует, это так же дало буст производительности, настраивается на вкладке настроек физики.
@@masklab6748 Спасибо за помощь, обязательно попробую.