Integración de gym-carla con el Simulador CARLA: Guía y Solución de Problemas

Introducción a gym-carla

gym-carla es una interfaz diseñada para integrar el simulador de vehículos autónomos CARLA con el frmaework OpenAI Gym. Esta entegración facilita el desarrollo y entrenamiento de algoritmos de aprendizaje por refuerzo (RL) en un entorno de simulación de conducción realista. Construido principalmente en Python y bajo la licencia MIT, el proyecto está optimizado para funcionar en sistemas operativos Ubuntu.

Características Principales

  • Proporciona diversas modalidades de observación, incluyendo datos de cámaras frontales, nubes de puntos con vista de pájaro y representaciones semánticas.
  • Ofrece un vector de estado detallado con métricas cruciales como la distancia del vehículo al centro del carril objetivo y su velocidad actual.
  • Permite la personalización de las funciones de recompensa y las condiciones de terminación del episodio, adaptándose a estrategias de entrenamiento específicas.

Guía de Inicio Rápido y Abordaje de Desafíos Comunes

Desafío 1: Configuración del Entorno y Dependencias

Descripción del problema: Inconvenientes durante la instalación relacionados con dependencias o versiones de software.

Solución:

  1. Cree un entorno virtual de Conda para aislar el proyecto y asegurar la compatibilidad con Python 3.6: ``` conda create --name carla_rl_env python=3.6 conda activate carla_rl_env
  2. Instale las dependencias del proyecto utilizando pip, a partir del archivo requirements.txt: ``` pip install -r requirements.txt
  3. Descargue la versión de CARLA compatible (por ejemplo, la 0.9.6) y configure la variable de entorno PYTHONPATH para incluir el acceso a la API de Python de CARLA: ``` git clone https://github.com/carla-simulator/carla.git export PYTHONPATH="$PYTHONPATH:/ruta/a/tu/CarpetaCARLA/PythonAPI/carla/dist/carla-0.9.6-py3.6-linux-x86_64.egg"
    
    

Desafío 2: Inicio del Servidor CARLA

Descripción del problema: Fallo al iniciar el servidor de CARLA o problemas de conexión desde gym-carla.

Solución:

  1. Navegue al directorio raíz de CARLA y ejecute el servidor, especificando un puerto de comunicación adecuado. Esto asegura que gym-carla pueda establecer la conexión: ``` ./CarlaUE4.sh -carla-port=2000 -windowed
  2. Para antornos sin interfaz gráfica (headless), utilice la siguiente configuración: ``` DISPLAY= ./CarlaUE4.sh -opengl -carla-port=2000
    
    

Desafío 3: Personalización de Recompensas y Criterios de Terminación

Descripción del problema: Necesidad de ajustar la función de recompensa o las condiciones de finalización del episodio.

Solución:

  1. Edite el archivo carla_env.py dentro de la estructura del proyecto gym-carla.
    • Para modificar las recompensas: Localice la función _get_reward y adapte su lógica para reflejar los objetivos de entrenamiento deseados.
    • Para alterar las condiciones de terminación: Modifique la implementación de la función _terminal. Por ejemplo, puede incorporar factores como la proximidad a un destino final o la duración del episodio.

Es recomendable utilizar el script test.py del proyecto para validar que los cambios realizados en las funciones de recompensa o terminación operan según lo previsto.

Etiquetas: CARLA OpenAI Gym Reinforcement Learning Python Simulación de Conducción Autónoma

Publicado el 7-4 20:47