Soy ingeniero en robótica, apasionado por los vehículos autónomos y el desarrollo de tecnologías inteligentes que impacten positivamente el mundo real.
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.
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.