Your Name Your Title Your Organization (Line #1) Your Organization (Line #2) 2005-12-31 Diseño de...
-
Upload
pablo-moraga -
Category
Documents
-
view
3 -
download
2
Transcript of Your Name Your Title Your Organization (Line #1) Your Organization (Line #2) 2005-12-31 Diseño de...
2005-12-31
Your NameYour Title
Your Organization (Line #1)Your Organization (Line #2)
Diseño de un agente conductor en TORCS
Álvaro Sempere PlazaProyecto Fin de
Carrera
2
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
TORCS
Simulador de coches de carrerasChampionship 2009
4
Arquitectura TORCS
Servidor envía resultados de simulación, cliente envía parámetros.
5
Sensores
Angulo al ejeSensor que marca el ángulo que hay entre el eje
longitudinal del coche y el eje de la pista, en sentido antihorario.
6
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
Sensores
Distancias al borde.Vector de 19 posiciones que devuelven la distancia a los
bordes de la pista.
¡¡Solo 100 metros!!
8
Sensores
Posición en la calzadaPosición del coche normalizada a lo ancho en la calzada.
9
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) → RectaEstado1 → Comienzo de curva
Estado2 → Durante curvaEstado3 → Fin de curva
Estado5 → Fuera de la calzada
12
Máquina de estados
Transición: Estado4 → Estado1Si viene una curva → Estado1en caso contrario → Estado4
13
Máquina de estados
Viene una curva. Los 3 sensores del frente:
OR
I < F < D I > F > D
Diferencia de pendientes >= 0.01
14
Máquina de estados
Transición: Estado1 → Estado2Si borde empieza a curvarse → Estado2en caso contrario → Estado1
15
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 → Estado3Si curvatura cambia o distancia lejana→ Estado3en caso contrario → Estado2
17
Máquina de estados
La curvatura cambia
Nueva curva → Curva compuestaDetección:
Cálculo de la diferencia de las pendientesCálculo periódico del radio (cada 5 instantes)
Distancia lejana
Vector del frente >= 90 metros
18
Máquina de estados
Transición (alternativa): Estado2 → Estado5Si salimos de la calzada → Estado5en caso contrario → Estado2
19
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
Máquina de estados
¿Cómo sabemos si estamos bloqueados?
Si (anguloAlEje > 20º) contador++Si contador > 25
Activamos marcha atras y < aceleracion
21
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 → Estado1en caso contrario → Estado4
23
Máquina de estados
Comportamientos
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
Máquina de estados
Velocidad ctey giro especial
ESTADO5 → Comportamiento especial estado5
Calculo del radio
25
Máquina de estados
Cálculo del radio
Criterios previos:
OR
I < F < D I > F > D
- Ningun sensor = 100 (indeterminacion)
- Solo un calculo en ESTADO1
- ¡Que no sea comienzo de curva!
26
Máquina de estados
Cálculo del 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
Máquina de estados
Mejora ante velocidad constante
FIC → Fin Inmediato de CurvaObjetivo → Acelerar durante la curva, sin salirnos
IDEAEn 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 PREDICCIÓN
31
Predicción de pista
Aprendizaje
- 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)
IMPORTANTE: El aprendizaje no tiene por qué ser fiela lo que vemos nosotros
32
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 LAVUELTA
CORREGIMOS LA INFORMACIÓN
MEMORIZADACON 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 de pista
Predicción - Velocidad
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.
Una vez conozca el freno y las distancias:- En cada instante nos preguntamos:
matrizDistancias[velocidadActual][velocidaObjetivo] > distanciaHastaCurvaSi es así, frenamos, y si no, no frenamos
37
Experimentos
¿Freno óptimo o freno máximo con ABS?
50 100 120 140 1500
10
20
30
40
50
60
Freno óptimo
Freno máximo con ABS
Velocidades probadas
Dis
tan
cia
s
38
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 posicionesPercepción reducida → PredicciónCálculos precisos VS estimacionesCapacidad de almacenamiento y de búsquedaFísica del simulador → No es fiel a la realidadNo 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.)
HUMANO 1' 42'' 9
AGENTE 1' 55'' 10
AGENTE + FIC 1' 48'' 9
HUMANO 1' 37'' 9
AGENTE 1' 43'' 10
AGENTE + FIC 1' 39'' 9'5
41
VIDEO
42
RUEGOS YPREGUNTAS