Это поможет вам настроить версию агента ml 14.
https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Installation.md
В настоящее время я использую эту версию. Я предлагаю вам создать новую среду python только для этой цели. Не используйте pip install mlagents
в вашем терминале python. Это не обновляется до 14, когда я его установил, поэтому воспользуйтесь ссылкой выше, чтобы увидеть полное руководство, но вот важные вещи.
Загрузить zip-файл Мастер агентов Ml Когда вы извлекаете этот Zip, Вы должны открыть эту извлеченную папку. Затем откройте cmd в этом месте. Активируйте среду python и выполните следующие действия:
Вам следует устанавливать пакеты из клонированного репозитория, а не из PyPi. Для этого вам необходимо установить ml-agents и ml-agents-envs отдельно. Откройте cmd внутри ml-agents = master folder и активируйте свою среду python, Из каталога репозитория root запустите:
cd ml-agents-envs
pip3 install -e ./
cd ..
cd ml-agents
pip3 install -e ./
Очень важно, чтобы оба пакета были установлены из одной папки ml agent, это не будет работать, если версия не совместима. если они установлены из одной и той же папки, оба пакета будут иметь одинаковую версию, в данном случае 14.
Эти два пакета помогут вам использовать предопределенные PPo и SA C al go.
Полагаю, вы установили Unity 2018 или 2019. Откройте его и перейдите в Файл -> Открыть проект
Теперь в открывшемся диалоговом окне выберите папку Проект внутри ml-agents-master Папка, которую вы загрузили.
Извините, что большинство из них названы проектом, но не путайте, раньше проект был папкой внутри ml-agents-master , но после открыв его, вы увидите панель инструментов Project . Следуйте Assets \ ML-Agents \ examples \ 3DBall \ Scenes , теперь дважды щелкните 3Dball. Это откроет сцену, как вы можете видеть здесь. Вы также можете увидеть TFModels и Scirpts они являются предопределенной нейронной сетью и кодом, соответственно.
Выбрать Агент в Панель инструментов иерархии в левой части ( это изменит только для этого экземпляра 3Dball, лучше будет go для префабов, затем дважды щелкнуть по 3Dball, откроется только один 3D-шар, настройки которого будут применены ко всем экземплярам, теперь в иерархии вы увидите только один 3D-шар, теперь выберите его Агент покоя остается тем же, но теперь изменения коснутся всех копий 3D-шара, префабы используются для управления всеми копиями, что помогает тренировать несколько агенты одновременно ), затем с правой стороны Откроется окно просмотра , внутри Параметры поведения вы можете увидеть Модель и вход в его поле. Оставьте агент выбранным, иначе это представление инспектора исчезнет. Теперь перейдите в папку TFModels , вы увидите файл 3DBall, который выглядит как нейронная сеть. Перетащите его в модель параметров поведения этого агента. После выполнения всех этих шагов, нажмите на кнопку воспроизведения сверху. Теперь предопределенная модель начнет играть, и вы увидите, что она может довольно хорошо сбалансировать мяч.
Теперь, когда вы можете увидеть, как работает обученная модель, и хотите снова тренироваться, используя предопределенные PPO и SA C, следуйте this
goto: ml-agents-master \ config , здесь вы найдете файл trainer_config.yaml , теперь откройте cmd, затем активируйте свою среду и введите код
mlagents-learn trainer_config.yaml --run-id=firstRun --train
Когда на экране появится сообщение «Начните тренировку нажатием кнопки Play в редакторе Unity», вы можете нажать кнопку ▶ ️ в Unity начать обучение в редакторе. Вы можете нажать Ctrl + C, чтобы прекратить обучение, и ваша обученная модель будет находиться в run-identifier моделей -> поведение_имя.nn, где поведение_имя - это имя поведения агентов, соответствующих модели. .
Переместите файл модели в Project / Assets / ML-Agents / examples / 3DBall / TFModels /. Откройте редактор Unity и выберите сцену 3DBall, как описано выше. Выберите сборный объект агента 3DBall. Перетащите файл .nn из окна «Проект» редактора в местозаполнитель модели в окне инспектора Ball3DAgent. Нажмите кнопку ▶ ️ вверху редактора.
Теперь, для вашего собственного алгоритма RL в python:
см. блокнот jupyter , он показывает, как мы активируем Единство тренажерный зал и получить наблюдения, награды и перезагрузить среду. Для этого использования можно также создать исполняемый файл Unity, он просто создает исполняемые файлы с некоторыми настройками, которые вы найдете здесь
Надеюсь, это работает без каких-либо проблем. И удачи вам в этом.