Правильная установка фонда - ключ к большому развитию
Как я уже говорил в своем предыдущем посте, я очень заинтересован в настройке среды обучения freeciv на python. Но многие думали, что детали либо слишком обширны, либо слишком много идей было сгруппировано в нем. В следующих нескольких постах я хотел прояснить все вопросы и заложить основу для проекта.
В наши дни настроить проект с открытым исходным кодом более чем просто, все, что вам нужно сделать, это зарегистрировать учетную запись Github и бум, вы готовы! Но самая сложная часть - это запуск и поддержание кодовой базы, и еще сложнее заставить людей достаточно заботиться о том, чтобы внести свой вклад в ваш проект, и я хочу сосредоточиться здесь на последнем. В этих сообщениях я хочу прояснить свои идеи и обсудить поднятые вопросы. На этот раз я хочу остановиться на этих трех моментах:
- Пространства действий. Почему важно дискретное пространство действий freeciv
- Структура игры: насколько масштаб игры похож на реальный мир.
- Идея многопользовательской совместной работы: Как freeciv поддерживает различные виды взаимодействия и что в этом особенного
И в каждый из этих пунктов я также добавлю подпункты, чтобы облегчить понимание. Этот
Я не задаю здесь очень сложных вопросов, например, зачем что-то волновать. Но зачем заботиться об этом проекте?
1. Области действия
Каждое действие в нашей вселенной можно разделить на два типа: непрерывное пространство действий и дискретное пространство действий. С точки зрения непрофессионала, дискретные пространства - это то место, где необходимо принять трудное решение, а непрерывные пространства - это распределение.
- Большинство приложений в реальной жизни, которые включают использование оборудования (робототехника, самоуправляемые автомобили и т. Д.), Требуют генерации распределения значений. Векторы движения, используемые для их работы, представляют собой набор значений и направлений силы. Этот домен все еще находится на начальной стадии, но, тем не менее, его приложения будут очень далеко. Со временем он будет улучшаться, хотя и более медленными темпами, и причина этого в том, что симуляторы недостаточно хороши (по иронии судьбы агент, обученный на симуляторе робота, редко дает такие же результаты в реальном роботе). А наши алгоритмы просто не очень эффективны в отношении эффективности выборки, и обучение на реальных роботах будет означать чрезвычайно долгую продолжительность обучения, что сделает его невозможным.

- У дискретных пространств действий другая задача: у всех тех приложений, где нужно принимать трудные решения, есть дискретное пространство. Видеоигры - отличный тому пример, они нуждаются в очень конкретном единственном действии, которое нужно предпринять в любой момент. До сих пор большинство исследований, которые мы видели, проводились в этой области, DQN, которая произвела революцию в идее глубокого RL, предпринимает действия в дискретной области. Медицина, в которой мы требуем развертывания действий с течением времени, является примером реального применения в дискретных пространствах. К другим приложениям относятся: оптимизация качества видео в потоковых сервисах, на которые влияет плохое состояние сети, системы уведомлений на сайтах социальных сетей, чтобы уведомлять вас только о важных вещах и т. Д.

Нам не нужен один агент, который хорош во всем, на самом деле будущее будет наполнено ансамблевой архитектурой, где несколько агентов, каждый из которых хорош в определенной вещи, сотрудничают для достижения целей, намного превосходящих то, что может сделать человек, это то, что мы подразумеваем под супер -интеллект. Freeciv, будучи видеоигрой, работает в дискретных пространствах. Это одна из причин, по которой ее выбрали, это будет одна из самых сложных обучающих сред. Хотя все еще есть возможность использовать в этом непрерывные действия. Подробнее об этом позже!
Freeciv станет одной из самых сложных обучающих сред, и проведенные здесь исследования станут прорывом.
2. Структура игры
Сказать, что freeciv обширен, - ничего не сказать. Вы можете сделать так много вещей, что их все сложно запомнить, а действия, предпринятые в любой момент, могут повлиять на результаты на более поздних этапах игры.
- У каждого юнита есть динамическое количество ходов, то есть у каждого юнита есть разные действия, которые он может выполнять, каждый город может строить в нем новые юниты и предметы. На изображении ниже мы видим, что существует 12 действий для одного юнита. Это заставляет ИИ оптимизировать работу в зависимости от устройства, которым он управляет в данный момент. Теперь у вас может быть сложная одиночная сеть для запуска этого, но я думаю, что лучшие результаты можно получить, используя ансамбль.

- Помимо действий, взгляд на дерево технологий может дать вам масштаб разнообразных решений, которые необходимо принять, и их последствий. Для прохождения игры агенту необходимо приобретать новые и разные технологии. Каждая технология - это узел в большом дереве, чтобы получить его, вам нужно выполнить предыдущие. Это ставит перед ИИ задачу структурного планирования на длительные этапы. Это сильно отличается от современных сред, где одно действие выбирается, глядя на текущий кадр.

- Еще я хочу поговорить о городах. Существует четкая корреляция между качеством ваших городов и вашей мощью. Города лежат в основе этой игры, их улучшение повышает шансы на успех. Взгляните на простой город ниже, это один большой город. Каждая плитка в «радиусе города» имеет связанные с ней ценности, такие как еда и золото. Чем лучше качество плитки, тем лучше будут ваши города и, в свою очередь, ваша цивилизация.

- Из-за тумана войны (и нечетких рабочих списков, ресурсов) положение / статус врага и общая карта не полностью известны - следовательно, для получения информации требуются рискованные инвестиции (команды исследователей).
Как показано выше, разнообразие существующих стратегий, действий, решений, движений и т. Д. Выдвигает эту среду в отдельную лигу. Интересно посмотреть, как ИИ будет работать сам по себе из-за всех этих проблем. Это очень похоже на реальный мир, где решения должны приниматься с использованием большого количества неполной информации, а наши действия сегодня имеют последствия позже.
Знания, полученные при разработке моделей и архитектур с использованием этой платформы, могут быть использованы для решения множества реальных проблем.
3. Многопользовательская совместная структура.
Freeciv может быть воспроизведен большим количеством игроков, до 126 в freeciv-desktop и до 500 в freeciv-web, чтобы быть конкретным. Существуют правила, по которым следует играть в игру, они называются наборами правил. В классическом наборе правил / правил по умолчанию есть три способа выиграть:
- Как и в других играх на завоевание и расширение, вы по умолчанию объявляете победителем после того, как последний город и юнит любой другой цивилизации будет уничтожен.
- Как только технический прогресс приведет вас в космическую эру, вы сможете запустить космический корабль, предназначенный для Альфы Центавра; первая цивилизация, чье ремесло достигнет системы, побеждает.
- При отсутствии других средств определения победы игра завершится через 5000 ходов, если космический корабль еще не был запущен. Затем выжившие цивилизации оцениваются, и побеждает та, которая набрала наивысший балл.
Благодаря природе проекта с открытым исходным кодом, наборы правил могут быть изменены в соответствии с потребностями исследователей. Мы намерены упростить эту задачу, чтобы исследователи могли проводить большую часть своего времени за разработкой своих моделей и не беспокоиться о скучных вещах. Это также допускает экстремальную настройку, которая может сделать эту среду еще лучше.

- Дипломатия - огромная часть этой игры, и взаимодействие, которое происходит, может быть очень важным. Игроки должны быть открытыми и торговать, чтобы стимулировать экономику наций, но позже в игре становятся врагами и сражаются друг с другом. Все это, конечно, можно изменить, изменив структуру игры в файлах конфигурации
*.fcfg.Такой вид сотрудничества может дать отличные результаты в ансамблевых системах ИИ, где множество небольших систем ИИ объединяются, чтобы заставить всю систему работать.
Благодаря большому количеству игроков, которые могут играть в эту игру, есть возможность изучить, как будут работать системы совместной работы. В связи с недавними разработками в области соревновательной игры с самим собой и совместной игры будет интересно посмотреть, как будет развиваться мир, когда большое количество ИИ останется в одиночестве в мире, похожем на Землю. Может быть, мы поймем, как из этой неразберихи выйдет умный интеллект.
Будет интересно посмотреть, как будут развиваться события, когда большое количество ИИ останется в одиночестве в земном мире.
Выводы
Эти сообщения не только продвигают идею, но и дают мне возможность сформулировать свои мысли о том, как сделать этот проект успешным. Для любого проекта с открытым исходным кодом очень важен начальный этап, чтобы начать работу. Предстоит проделать большой объем работы и предстоит долгий путь. В первом выпуске, который в настоящее время находится на стадии разработки, мы уделяем больше внимания мини-играм, поэтому можно начинать небольшие разработки и адаптировать их.
Приглашаем участников, и если у вас есть какие-либо вопросы / идеи, напишите мне в LinkedIn или оставьте личные заметки, и мне все равно, если сейчас 4 часа утра, я отвечу вам.
Ваше здоровье!