Descargar la presentación
La descarga está en progreso. Por favor, espere
1
Diseño de un agente conductor en TORCS
Álvaro Sempere Plaza Proyecto Fin de Carrera
2
INTENTE OBTENER EL MEJOR
OBJETIVOS Diseño de un agente inteligente Contexto Torcs y arquitectura Sensores y actuadores Tipos de curvas. Máquina de estados Funciones Predicción de pista Aprendizaje y reconocimiento Corrección Predicción Experimentos Frenos Marchas Análisis (interfaz gráfica) Conclusiones Estudio y comparativas OBJETIVO PRINCIPAL: QUE EL COCHE NO SE SALGA NUNCA A LA VEZ QUE INTENTE OBTENER EL MEJOR TIEMPO DE CARRERA
3
Simulador de coches de carreras Championship 2009
TORCS Simulador de coches de carreras Championship 2009
4
Servidor envía resultados de simulación, cliente envía parámetros.
Arquitectura TORCS Servidor envía resultados de simulación, cliente envía parámetros.
5
Sensores Angulo al eje Sensor que marca el ángulo que hay entre el eje longitudinal del coche y el eje de la pista, en sentido antihorario.
6
Distancia desde la línea de meta.
Sensores Distancia desde la línea de meta. Distancia en metros que hay desde la línea de meta hasta la posición actual del coche, a través del eje de la calzada.
7
Distancias al borde. Sensores
Vector de 19 posiciones que devuelven la distancia a los bordes de la pista. ¡¡Solo 100 metros!!
8
Posición en la calzada Sensores
Posición del coche normalizada a lo ancho en la calzada.
9
Acelerador [0,1]. Freno [0,1]. Giro [-pi/2, pi/2].
Actuadores Acelerador [0,1]. Freno [0,1]. Giro [-pi/2, pi/2]. Marcha (-1,0,1,2,3,4,5,6)
10
Tipos de curvas Curvas simples Curvas compuestas. Formadas por varias simples.
11
Máquina de estados Estado4 (inicial) → Recta
Estado1 → Comienzo de curva Estado2 → Durante curva Estado3 → Fin de curva Estado5 → Fuera de la calzada
12
Máquina de estados Transición: Estado4 → Estado1
Si viene una curva → Estado1 en caso contrario → Estado4
13
Diferencia de pendientes >= 0.01
Máquina de estados Viene una curva. Los 3 sensores del frente: OR Diferencia de pendientes >= 0.01 I < F < D I > F > D
14
Máquina de estados Transición: Estado1 → Estado2
Si borde empieza a curvarse → Estado2 en caso contrario → Estado1
15
El borde empieza a curvarse.
Máquina de estados El borde empieza a curvarse. Si la diferencia de pendientes es mayor o igual que 0.01 Sensor 14 (derecha) y 5 (izquierda) → CAMBIO
16
Máquina de estados Transición: Estado2 → Estado3
Si curvatura cambia o distancia lejana→ Estado3 en caso contrario → Estado2
17
La curvatura cambia Máquina de estados Distancia lejana
Nueva curva → Curva compuesta Detección: Cálculo de la diferencia de las pendientes Cálculo periódico del radio (cada 5 instantes) Distancia lejana Vector del frente >= 90 metros
18
Máquina de estados Transición (alternativa): Estado2 → Estado5
Si salimos de la calzada → Estado5 en caso contrario → Estado2
19
Comportamiento especial estado5
Máquina de estados Comportamiento especial estado5 Cuando estemos fuera de la calzada normalmente el coche seguirá con normalidad, como si fuera por recta Excepción → BLOQUEO
20
¿Cómo sabemos si estamos bloqueados?
Máquina de estados ¿Cómo sabemos si estamos bloqueados? Si (anguloAlEje > 20º) contador++ Si contador > 25 Activamos marcha atras y < aceleracion
21
Una vez volvamos a la calzada:
Máquina de estados Una vez volvamos a la calzada: Estado5 → Estado3
22
Máquina de estados Transición: Estado3 → (Estado1 || Estado4)
Si viene curva → Estado1 en caso contrario → Estado4
23
Comportamientos Máquina de estados
Comportamiento de base o genérico. Siempre está activo, a menos que un estado establezca otro. Modos: - Modo entrenamiento. Precavido y lento. - Modo carrera. Conducción máxima y predictiva.
24
ESTADO5 → Comportamiento especial estado5
Máquina de estados Calculo del radio Velocidad cte y giro especial ESTADO5 → Comportamiento especial estado5
25
- ¡Que no sea comienzo de curva!
Máquina de estados Cálculo del radio Criterios previos: - ¡Que no sea comienzo de curva! - Ningun sensor = 100 (indeterminacion) OR - Solo un calculo en ESTADO1 I < F < D I > F > D
26
Máquina de estados Cálculo del radio ¡¡RADIO!!
Idea → distancia desde el centro calculado a partir de 3 ptos en la circ. ¡¡RADIO!!
27
Máquina de estados Cálculo del radio Radio → Velocidad
28
Mejora ante velocidad constante
Máquina de estados Mejora ante velocidad constante FIC → Fin Inmediato de Curva Objetivo → Acelerar durante la curva, sin salirnos IDEA En función del sensor de distancia al frente: - Acelerar más cuanto más lejos estemos del borde - Acelerar menos cuanto más cerca
29
Máquina de estados Giro especial Idea - Evitamos salirnos
30
Predicción de pista FASES APRENDIZAJE RECONOCIMIENTO CORRECCIÓN
31
IMPORTANTE: El aprendizaje no tiene por qué ser fiel
Predicción de pista Aprendizaje IMPORTANTE: El aprendizaje no tiene por qué ser fiel a lo que vemos nosotros - Datos: - Anchura - Longitud - Para cada curva: - Radio → Estado 1 (cálculo del radio) - Distancia de comienzo → Transición de estado1 a estado2 - Distancia de fin → Estado 3 - Orientación (derecha → true o izquierda → false)
32
¿La pista en la que estamos ahora la tengo memorizada?
Predicción de pista Reconocimiento ¿La pista en la que estamos ahora la tengo memorizada? ¿Me suena? 1 – Comparamos los datos que estamos capturando con los de las pistas memorizadas y filtramos (descartamos las que no tengan datos parecidos). 2 – Cuando sólo quede una pista sin descartar, esa pista es la actual.
33
Predicción de pista Corrección CAPTURAMOS DATOS DE LA PISTA (CURVAS)
AL ACABAR LA VUELTA CORREGIMOS LA INFORMACIÓN MEMORIZADA CON LA CAPTURADA
34
Predicción de pista Predicción Tipos:
- Orientación. Posicionamiento en la calzada para tomar la curva mejor (Giros menos bruscos) - Velocidad. Adaptar nuestra velocidad a la de la curva con la suficiente antelación.
35
Predicción de pista Predicción - Orientación
36
Predicción - Velocidad
Predicción de pista Predicción - Velocidad Una vez conozca el freno y las distancias: - En cada instante nos preguntamos: matrizDistancias[velocidadActual][velocidaObjetivo] > distanciaHastaCurva Si es así, frenamos, y si no, no frenamos Una vez conozca la próxima curva deberá: - Qué freno usar - Cómo se comporta el freno (distancias) Tareas: - Cálculo del mejor freno (estabilidad y distancia menor). - Cálculo de las distancias de frenado.
37
Experimentos ¿Freno óptimo o freno máximo con ABS?
38
¿Cambio óptimo de marchas?
Experimentos ¿Cambio óptimo de marchas? 12812 milisegundos 11313 milisegundos
39
Conclusiones y mejoras
Optimización → El poder mejorar la velocidad en cada curva dará lugar a mejores resultados. Modo entrenamiento → Lento → Pérdida de posiciones Percepción reducida → Predicción Cálculos precisos VS estimaciones Capacidad de almacenamiento y de búsqueda Física del simulador → No es fiel a la realidad No al comportamiento estático → Sí a la variación de parámetros (problemas de rozamientos, curvas malas para FIC) ¡FIC mejora tiempo de carrera pero se sale! Interfaz gráfica → Mejores tecnologías
40
Estudios y comparativas
PISTA ROL TIEMPO RENDIMIENTO AALBORG (10 METROS DE ANCH.) HUMANO 1' 32'' 8 AGENTE 1' 34'' 10 AGENTE + FIC 1' 33'' 9 E-TRACK3 (18 METROS DE ANCH.) 1' 42'' 1' 55'' 1' 48'' STREET1 (14 METROS DE ANCH.) 1' 37'' 1' 43'' 1' 39'' 9'5
41
VIDEO
42
RUEGOS Y PREGUNTAS
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.