Есть способы как реализовать и несколько параллельных и последовательных целей.
Насчёт удержания формации - это как раз противоречит децентрализованному управлению. Формация жёстко не задаётся, в этом и преимущество гибкости. Если всё же нужна жёсткая формация, то наверное надо считать такую группу единичным элементом роя, а не составным.
В данном упрощённом алгоритме опасные зоны заданы заранее и статичны. Визуально отмечены красными крестиками. Ваша идея с отслеживанием потери связи с соседями - один из возможных путей реализации в реальных задачах.
В кучу они всё же не сбиваются, а держатся на неком оптимальном расстоянии. Это расстояние можно установить любое. Если не устанавливать его вовсе (вернее, установить в бесконечность), то элементы роя будут просто бесконечно отдаляться друг от друга. Движение роя в таком случае будет напоминать что-то вроде "взрыва в 2D".
Тоже недавно обучал нейронные сети игре в крестики-нолики.
Но у меня сеть оценивала вероятный счёт по итогу игры в случае каждого из вариантов хода и выбирала ход с максимальной оценкой. Вознаграждались все ходы победной или ничейной партии (1 за победу, 0.5 за ничью).
Ходы в занятые клетки просто не рассматривались.
Сеть изначально играла сама с собой.
Архитектура с четырьмя скрытыми слоями: 400, 200, 40, 20 нейронов.
Сеть научилась идеально играть: не проигрывает, а при ошибках соперника выигрывает.
Информация
В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
>должно быть 179.
Почему не 359? С точки зрения углов это равнозначные усреднения.
Есть способы как реализовать и несколько параллельных и последовательных целей.
Насчёт удержания формации - это как раз противоречит децентрализованному управлению. Формация жёстко не задаётся, в этом и преимущество гибкости. Если всё же нужна жёсткая формация, то наверное надо считать такую группу единичным элементом роя, а не составным.
В данном упрощённом алгоритме опасные зоны заданы заранее и статичны. Визуально отмечены красными крестиками.
Ваша идея с отслеживанием потери связи с соседями - один из возможных путей реализации в реальных задачах.
В кучу они всё же не сбиваются, а держатся на неком оптимальном расстоянии. Это расстояние можно установить любое.
Если не устанавливать его вовсе (вернее, установить в бесконечность), то элементы роя будут просто бесконечно отдаляться друг от друга. Движение роя в таком случае будет напоминать что-то вроде "взрыва в 2D".
Но у меня сеть оценивала вероятный счёт по итогу игры в случае каждого из вариантов хода и выбирала ход с максимальной оценкой. Вознаграждались все ходы победной или ничейной партии (1 за победу, 0.5 за ничью).
Ходы в занятые клетки просто не рассматривались.
Сеть изначально играла сама с собой.
Архитектура с четырьмя скрытыми слоями: 400, 200, 40, 20 нейронов.
Сеть научилась идеально играть: не проигрывает, а при ошибках соперника выигрывает.