2 minute read

Week 30 – DAgger con inyección continua de ruido y entrenamiento de política de seguimiento de carril

Trabajo realizado

  • Se extendió el pipeline de recolección de datos basado en DAgger hacia un esquema de inyección continua de ruido en acciones (action noise injection), alineado con la formulación clásica de DAgger.
  • Se modificó el sistema de control en CARLA para que:
    • el vehículo ejecute acciones perturbadas en cada tick de simulación,
    • las perturbaciones se modelen como ruido gaussiano de baja magnitud sobre el comando de steering,
    • la simulación se mantenga en closed-loop.
  • Se estableció una separación explícita entre:
    • acción aplicada (experto + ruido, utilizada para avanzar la simulación),
    • acción etiquetada (acción del experto humano, considerada ground truth).
  • Se mantuvo la provisión de etiquetas humanas en todos los estados visitados, incluyendo estados fuera de distribución inducidos por el ruido, cumpliendo el objetivo central de DAgger.

Generación y estructuración del dataset

  • Se consolidó un nuevo formato de dataset basado en CSV tabular, facilitando:
    • análisis estadístico,
    • balanceo por bins de steering,
    • integración directa con pipelines de entrenamiento en PyTorch.
  • Cada muestra del dataset incluye:
    • imagen RGB sincronizada,
    • controles etiquetados por el experto humano (expert_steer, expert_throttle, expert_brake),
    • controles efectivamente aplicados al vehículo (applied_*),
    • metadatos de configuración del ruido.

Entrenamiento del modelo de seguimiento de carril

  • Se implementó un pipeline de entrenamiento supervisado basado en MobileNetV2 preentrenada en ImageNet, adaptada a un problema de regresión continua.
  • El modelo predice directamente:
    • steering,
    • throttle,
    • brake, a partir de imágenes RGB frontales.
  • Se utilizó una función de pérdida ponderada (Weighted MSE), asignando mayor peso al error de steering, dado su rol dominante en el seguimiento de carril.
  • Se aplicaron funciones de activación para respetar los rangos físicos de control:
    • tanh para steering,
    • sigmoid para throttle y brake.
  • El entrenamiento se realizó sobre el dataset generado con DAgger + noise injection, orientado explícitamente a mejorar la estabilidad en conducción en closed-loop.

Avances

  • Pipeline completo de DAgger con inyección continua de ruido y etiquetado experto consistente.
  • Dataset tabular robusto, alineado con prácticas estándar de imitation learning y fácil de escalar.
  • Integración directa entre:
    • recolección de datos,
    • balanceo de controles,
    • entrenamiento de políticas neuronales.
  • Primer modelo entrenado capaz de realizar lane following a partir de percepción visual, utilizando datos recolectados en closed-loop.
  • Base experimental sólida para comparar:
    • DAgger sin ruido,
    • DAgger con inyección continua de ruido,
    • DAgger enfocado en recuperación.

Seguimiento de carril con DAgger e inyección continua de ruido
Ejemplo de seguimiento de carril en closed-loop utilizando una política entrenada con DAgger e inyección continua de ruido en el comando de steering.