Semanas 48 a 52: Pilotnet para coche holonómico y controlador sigue carril
Despés de obtener nuevos datasets y entrenar varias redes he conseguido una posible solución para el comportamiento del coche holonómico. Como datasets de entrenamiento he utilizado los circuitos: simple, nurburgring (sentido contrahorario), y montreal. También he introducido como datos de entrenamiento algunos datasets con situaciones difíciles. Pata el conjunto de datos de validación he usado el dataset del circuito de montmelo. El ratio de aprendizaje es igual a 1e-3, y el número de épocas totales ha sido de 250.
A continuación muestro los resultados de los test fuera de simulación (offline), y en simulación.
Los resultados con el script de test “offline”, obteniendo las imágenes de entrada diréctamente de los datasets, y comparando los resultados de la inferencia con los guardados para ese dataset (azul=datos del dataset; naranja=valores obtenidos de inferencia). Los resultados obtenidos en simulación están en formato de video:
-Simple:
Error medio v:0.07066922894545956
Error medio w:0.05095453680055675
-Nurburgring
Error medio v:0.2967042529950625
Error medio w:0.06582802208341959
-Montreal:
Error medio v:0.03411050636756996
Error medio w:0.0387649131562274
-Montmelo:
Error medio v:0.211406615363808
Error medio w:0.056686827509804166
-Many Curves:
Error medio v:0.04677067941007688
Error medio w:0.04328606389410173
En el circuito de Montmelo la red no consigue resolver bien una de las últimas curvas, esto se podría solucionar reentrenando la red con datos de esa zona o similares para que consiga completar todo el circuito.
Todavía sigo entrenando una red para el control de la velocidad lineal y angular del conche con dinámica de Ackermann.
Como último avance, modificando el controlador explícito del coche holonómico he llegado a una solución para que el coche se mueva siguiendo el carril derecho: