Skip to content

carlosandujar/Imitation-learning-using-ML-agent

 
 

Repository files navigation

Aprendizaje por imitación utilizando ML-agent en un entorno virtual de pádel.

Proyecto basado en Repo

Descripción general

Un proyecto desarrollado en Unity que permite entrenar agentes en un entorno de virtual de pádel basado en Unity, se puede entrena mediante aprendizaje por refuerzo o aprendizaje por imitación, utilizando el toolkit de Unity ML-Agents.

Los directorios Assets, Packages, Project Settings y User Settings son los necesarios para abrir el proyecto en Unity.

El directorio config contiene los archivos de configuración del entrenamiento de agentes en el entorno virtual de pádel.

Requerimientos

Este proyecto se ha probado únicamente en Windows 10 y 11. Para la ejecución del proyecto se requiere la versión 2021.3.22f1 de Unity y la versión 20 de ML-Agents. Para el entrenamiento de agentes se requiere la versión 3.7.9 de Python (otras versiones compatibles: 3.9).

Instalación del proyecto en Unity

Los pasos a seguir para la ejecución del entorno virtual de pádel desde Unity son los siguientes:

  1. Instalar la versión 2021.3.22f1 de Unity, preferiblemente a través de Unity Hub.
  2. Descargar la Versión 20 de ML-Agents desde el repositorio oficial. La carpeta descargada ml-agents-release-20 contiene el paquete de Unity necesario para la ejecución del entorno.
  3. Clonar este repositorio y abrirlo desde Unity, en Modo Seguro.
  4. Para añadir el paquete de Unity al proyecto:
    • Navegar hasta el menú Window -> Package Manager.
    • Hacer click al botón + (situado en esquina superior izquierda del menú)
    • Seleccionar Add package from disk...
    • Navegar hasta la carpeta de com.unity.ml-agents (dentro de la carpeta ml-agents-release-20)
    • Seleccionar el archivo package.json.
  5. En este punto, se deberían haber detectado todos los componentes procedentes de ML-Agents (Agent, Behavior Parameters, Decision Requester...) y se debería poder ejecutar la escena Scenes\Padel2vs2 .

Instalación del paquete de Python

Los pasos a seguir para entrenar agentes son los siguientes:

  1. Crear y activar un entorno virtual de Python, en este caso usamos Anaconda:

    # Comandos para crear y activar el entorno en Anaconda
    conda create -n myenv python=3.8
    conda activate myenv
  2. Desde el entorno virtual de Python, lo primero es instalar las dependencias de ml-agents:

    python -m pip install --upgrade pip
    pip install torch torchvision torchaudio
    pip install protobuf==3.20.3
    pip install six
  3. Instalar ml-agents y comprobar que se haya instalado correctamente:

    pip install mlagents
    mlagents-learn --help
  4. Para entrenar agentes, el comando básico es:

    mlagents-learn <trainer-config-file> --run-id=<run-identifier> --time-scale=x
    • <trainer-config-file>: Fichero .yaml donde se configuran los hiperparámetros de entrenamiento.
    • <run-identifier>: Define el nombre del entrenamiento.
    • <time-scale>: Velocidad de entrenamiento (1-20).
  5. Comando para visualizar las gráficas de entrenamiento:

    tensorboard --logdir results/<run-identifier> --port 6006

Una guía más detallada sobre cómo entrenar agentes se puede consultar aquí.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 72.7%
  • ShaderLab 18.7%
  • Python 5.3%
  • HLSL 3.3%