Военная философия

Готический форум
Текущее время: 16 фев 2019, 08:33

Часовой пояс: UTC - 2 часа




Начать новую тему Ответить на тему  [ Сообщений: 58 ]  На страницу 1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: AI для тактических симуляторов
СообщениеДобавлено: 24 окт 2018, 16:13 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: 11 ноя 2011, 15:58
Сообщения: 1316
ToxaBes писал(а):
Напишите если тема интересна и Вас можно использовать в корыстных целях в качестве источника информации/советов.


Очень интересно. Тоже интересуюсь нейронными сетями и принципом роя.
Но как вы уже заметили, два других товарища, присутствующие в беседе, вообще не верят, что наш "рой" может существовать.
По их мнению к эффективным горизонтальным связям способны только разумные существа (в этом случае принцип "роя" превращается в принцип "стаи").


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: Управление по принципу роя
СообщениеДобавлено: 24 окт 2018, 17:04 
Не в сети
Аватара пользователя

Зарегистрирован: 24 окт 2018, 10:56
Сообщения: 40
К черту пчел и муравьев, неудачный пример. Пусть что-то запустило выполнение определенного условия в конечном автомате (мозг ли, условия среды напрямую - не суть). В частном случае мы можем рассматривать командира роты как нейронную сеть. Совокупность поступающей информации этому командиру, наличие своих сил и средств, наличие известных/ожидаемых сил и средств противника, характер местности и т.д. можем рассматривать как оперативную базу данных. В этом случае система примет вид:
Изображение

Теперь обобщим и вместо одного командира роты засунем в нейронную сеть всю структуру управления (то от чего нельзя отказаться). Получим вот такой вариант:
Изображение

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


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: Управление по принципу роя
СообщениеДобавлено: 24 окт 2018, 17:19 
Не в сети
Аватара пользователя

Зарегистрирован: 24 окт 2018, 10:56
Сообщения: 40
Ekzarx писал(а):
Очень интересно. Тоже интересуюсь нейронными сетями и принципом роя.
Но как вы уже заметили, два других товарища, присутствующие в беседе, вообще не верят, что наш "рой" может существовать.

Я думаю тут просто расхождение в терминологии и угле зрения. Рой в чистом виде - не жизнеспособен, и тут я полностью согласен с Вашими оппонентами. Рой эффективен только на короткой дистанции, поэтому роя в чистом виде в природе нет.
Другое дело симбиоз роя и пирамиды. В том или ином виде он есть в большинстве современных армиях мира и в природе. Но только в симбиозе. Тут больше вопрос какие элементы относить к "роевой" части системы, а какие к "пирамидальной".

Кстати, вариант симбиоза пирамиды и роя как на картинке из предыдущего поста я уже реализовал в Арме. Поэтому мне странно читать о том что эти способы совмещать невозможно. Видимо я как-то не так понял что мне пытались объяснить.

Ekzarx писал(а):
По их мнению к эффективным горизонтальным связям способны только разумные существа (в этом случае принцип "роя" превращается в принцип "стаи").

Я смотрю на это немного иначе. Представьте отрезок, левый край - условно пирамида, правый край - условно рой. Ползунок на отрезке - уровень принятия решений. Сдвиньте до упора вправо - получите рой без мозгов, который при этом свободно обменивается данными между участниками если это заложено в конечном автомате (феромоны из усиков муравьев и танцы у пчел и проч). Сдвиньте ползунок немного левее и вы получите "стаю", сдвигайте еще левее и вы будете получать пирамиды управления различного уровня централизованности.


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: Управление по принципу роя
СообщениеДобавлено: 24 окт 2018, 17:41 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: 11 ноя 2011, 15:58
Сообщения: 1316
Не совсем. "Стая" это "чистый рой", только с очень умными (обладающими сознанием) пчёлами.
Тут скорее уместна аналогия не одного, а двух ползунков.
Первый ползунок - уровень разумности отдельной единицы.
Второй ползунок - уровень централизации.
В четырёх крайних вариантах получаем:
1. "Рой" с супермозгом
2. "Рой" с полной децентрализацией
3. Классическая пирамида с умными исполнителями
4. "Стая" из умных горизонтально-взаимодействующих агентов.


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: Управление по принципу роя
СообщениеДобавлено: 24 окт 2018, 17:44 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: 11 ноя 2011, 15:58
Сообщения: 1316
Насчёт нейронной сети примерно понятно.
Не понятно какие алгоритмы зашиты в "конечные автоматы"?
Не сложноваты ли для них приказы в виде вероятностей?


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: Управление по принципу роя
СообщениеДобавлено: 24 окт 2018, 18:50 
Не в сети
Аватара пользователя

Зарегистрирован: 24 окт 2018, 10:56
Сообщения: 40
Ekzarx писал(а):
Не совсем. "Стая" это "чистый рой", только с очень умными (обладающими сознанием) пчёлами.

Да, но с другой стороны это куча супер-мозгов, каждый из которых содержит в себе элемент-роя исполнителя (голова+тело/конечности). Тут как посмотреть.
С остальным согласен.
Ekzarx писал(а):
Насчёт нейронной сети примерно понятно.
Не понятно какие алгоритмы зашиты в "конечные автоматы"?

Алгоритм взаимодействия каждого бота внутри группы (вплоть до разбивки на 2 отделения с последующим обходом противника с двух сторон) и различные тактические приемы:
использование укрытий, свободных стационарных орудий, вызов дружественного миномета если есть в радиусе, штурм/зачистка зданий, огневое прикрытие, огневое подавление, минирование и подрыв укреплений с противником, клещи, огневой мешок и тд и тд.
В Арме 3 есть FSM (Final Machine State) - конечный автомат который работает очень быстро и довольно просто создается через FSM Editor. Я взял за основу VCOM AI и допилил его под свои задачи. Это часть относится к рою.

Сразу опишу нейронную сеть. Ее создал на базе FANN - обычная трехслойная остаточная сеть. Входной слой содержит 10 нейронов, выходной - 5. Первичная обучающая выборка - 100 битв при 150 эпохах обучения и допустимой ошибке 10^-4. Функции активации: выходной слой - линейная, скрытые слои - сигмоидальная. Она способна распознать и среагировать на 2^10 вариантов развития событий на поле боя сведя их к одному из 2^5 базовых вариантов решений. Действует в рамках оборонной стратегии (мы нападаем, она удерживает зону и важные объекты на ней).

После этого около года мы с командой играли против нее. Все результаты боев записывались в отдельную таблицу в БД которая содержит оперативную информацию. Когда мы более менее адаптировались и бои стали проходить не с полным нашим разгромом - я дообучил сеть на этих данных.

В результате:
- по пехоте: нейронная сеть "поняла" что наиболее эффективно применять против малой группы клещи/удар во фланг. Остальные тактики не так эффективны т.к. мы сами не гении в тактике
- по наземной "технике" она поняла что не стоит свою гусеничную технику гнать на скалы и прочие поверхности с сильным градиентом высот, а вражескую стоит уничтожать сначала ПТ-пехотой и авиацией, и только потом своей техникой.
- по авиации она "поняла" что вражескую авиацию нужно уничтожать прежде всего.

Меня интересует доработка оборонительной стратегии в нейронной сети (противодействие тактике малых групп и тактике непрямых действий) и допил конечных автоматов (например, группа ботов умеет стрелять по зданиям с противникам из RPG-42 Alamut ПП-боеприпасами, но не всегда грамотно оценивают наличие столба/заборчика/перепада высот) и добавление новых тактик для роя/группы ботов.

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

Ekzarx писал(а):
Не сложноваты ли для них приказы в виде вероятностей?

Нет, я просто по итогу отсекаю все варианты вероятность успеха у которых меньше 0.7.

Пришла в голову мысль о том что неплохо бы проверить нейронную сеть на тех кто понимает что такое управление с последующим разбором полетов/советами/доработками и т.д. Но у меня нет 3-х грамотных командиров отделений и 18-бойцов (есть максимум до 10 толковый бойцов).


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: Управление по принципу роя
СообщениеДобавлено: 24 окт 2018, 19:30 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: 11 ноя 2011, 15:58
Сообщения: 1316
Обычно для таких задач создаётся противодействующая нейронная сеть (в данном случае нужна нейронная сеть стороны атаки).
И они играют друг с другом огромное количество битв.

Можно узнать полный перечень входов и выходов сети (с пояснениями что они означают)?


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: Управление по принципу роя
СообщениеДобавлено: 24 окт 2018, 21:01 
Не в сети
Аватара пользователя

Зарегистрирован: 24 окт 2018, 10:56
Сообщения: 40
Ekzarx писал(а):
Обычно для таких задач создаётся противодействующая нейронная сеть (в данном случае нужна нейронная сеть стороны атаки).
И они играют друг с другом огромное количество битв.

Атакующая сеть гораздо сложнее по структуре чем обороняющейся и чтобы ее дообучить на человеках нужно найти достаточное количество людей которые любят сидеть 2 часа на одном месте в обороне. У меня нет такой возможности. А вот дообучать атакующими игроками обороняющуюся сеть возможность есть. Классические режимы в третьей Арме (Invade&Annex, Evolution, Domination и т.д.) отлично для этого подходят.

Ekzarx писал(а):
Можно узнать полный перечень входов и выходов сети (с пояснениями что они означают)?

Не вижу смысла в детальном описании, но могу описать в общих чертах:

Входные данные:
- информация о собственных силах в контролируемой зоне разделенная по группам ботов (гусеничная техника с экипажем - одна группа, колесная техника - другая, колесный MRAP - третья, отделение пехоты до 6 ботов, более 6 ботов - и тд)
- информация об обнаруженных силах противника (каждая группа ботов в Арме имеет список обнаруженных целей которые можно получить с помощью команд targets, nearTargets, targetsQuery и тд). Группируем найденного противника по принципу "все в радиусе ~100-150м является одной группой"
- общая информация о поле боя: характер местности, градиент перепада высот, расстояние от групп противника до обороняемых объектов в зоне (обычно это Командный пункт и Радиовышка) и тд.

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

Часто в наличии есть несколько таких групп (у сети в распоряжении до 200 ботов с техникой и авиацией). В этом случае выполняет приказ ближайшая свободная группа. Далее, имея координаты на местности и тип задачи в дело вступают конечные автоматы. Т.е. задачу атаковать противника на холме силами отделения + приданным вертолетом с пулеметами/ПП-ракетами ставить нейронная сеть, а разделяться на 2 отряда с организацией "клещей" противнику пока вертушка кроет сверху решают конечные автоматы.

Цикл сбора информации и выработки решений происходит каждые 3-5 минут что с головой хватает для тех боев что происходят в Армы. Сам процесс от и до сейчас занимает не больше 30-60 сек без падения фпс на сервере и клиентах (боты с конечными автоматами живут на безголовых клиентах, сервер отвечает за физику/коллизии/хит рег/взаимодействие с нейронной сетью).


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: Управление по принципу роя
СообщениеДобавлено: 24 окт 2018, 22:56 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 03 ноя 2011, 03:46
Сообщения: 1608
ToxaBes писал(а):
Выходные данные:
- группам какого типа куда отправиться (позиция) и что делать (атаковать, защищать, патрулировать и т.д. и т.п.) с рассчитанной вероятностью что данное действие будет эффективным.
Добавьте сюда данные:
- группам какого вида выделить из своего состава каких бойцов для формирования нужного в контексте боя (контратакующего) подразделения, если такого нет в некоей "зоне боя" (как я понял, у вас это круг диаметром 300 метров).

Т.е. у вас:
ToxaBes писал(а):
выполняет приказ ближайшая свободная группа
А по моему ИМХО нужно: "выполняет приказ сформированная из ближайших подходящих бойцов группа".

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

С Уважением.

_________________
Гейм-дизайнер и сценарист игры Милитаризм-II:Полководец.
Администратор этого форума.


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
 Заголовок сообщения: Re: AI для тактических симуляторов
СообщениеДобавлено: 25 окт 2018, 04:15 
Не в сети
Модератор
Аватара пользователя

Зарегистрирован: 11 ноя 2011, 15:58
Сообщения: 1316
ToxaBes писал(а):
Атакующая сеть гораздо сложнее по структуре чем обороняющейся
В чём принципиальная сложность атакующей сети? Почему для атаки не подходит та же сеть?

ToxaBes писал(а):
и чтобы ее дообучить на человеках нужно найти достаточное количество людей которые любят сидеть 2 часа на одном месте в обороне.
Зачем люди, когда есть обученная сеть обороны?
Сначала атакующую доучите до её уровня, а затем они станут играть на равных, обучая друг-друга.

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

Часто в наличии есть несколько таких групп (у сети в распоряжении до 200 ботов с техникой и авиацией). В этом случае выполняет приказ ближайшая свободная группа. Далее, имея координаты на местности и тип задачи в дело вступают конечные автоматы. Т.е. задачу атаковать противника на холме силами отделения + приданным вертолетом с пулеметами/ПП-ракетами ставить нейронная сеть, а разделяться на 2 отряда с организацией "клещей" противнику пока вертушка кроет сверху решают конечные автоматы.
То есть получается принцип массового обслуживания, только с распределением задач не во времени, а в пространстве:
нейросеть генерирует набор задач (каждая задача для одной группы), а ближайшие свободные группы принимают их "в работу".
Не понятен следующий момент: может ли сеть решить, что в какой-то район необходимо отправить более двух однотипных групп?
По вашему описанию кажется, что такой вариант не предусмотрен.

Hoth писал(а):
Если добавить еще блок анализа оперативной обстановки (у вас - тактическая), то и разделения на обороняющийся-атакующий ИИ не нужно - меньше работы с настройкой сети.
Мне кажется, что необходимо пояснение этой фразы.
Что такое "блок анализа оперативной обстановки"?
Какие решения он должен принимать (в отличии от тактического)?
Hoth писал(а):
ИМХО нужно: "выполняет приказ сформированная из ближайших подходящих бойцов группа".
По моему тут жестко установленные составы групп (отделение пехоты или 1 единица техники) и об изменении их структуры речи не идёт.


Вернуться к началу
 Профиль Отправить личное сообщение Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 58 ]  На страницу 1, 2, 3, 4, 5, 6  След.

Часовой пояс: UTC - 2 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group

Рекомендую создать свой форум бесплатно на http://4admins.ru

Русская поддержка phpBB