Upload
yesenia-machado
View
216
Download
0
Embed Size (px)
Citation preview
Laboratorio de Robótica
Sistema de Inteligencia Artifical
Ernesto Torres VidalJesús Rodríguez Ordoñez
Profr: Dr. Alfredo Weitzenfeld Ridel
INSTITUTO TECNOLÓGICO AUTÓNOMO DE MÉXICO
Propiedades del sistema de IA Controlar a dos equipos de 5 robots
de forma autónoma
Se compone de distintos módulos que funcionan independientemente
Es el sistema central ya que interactúa con todos los demás sistemas
Interacción con otros sistemas
Referee
Sistema de visión
Joystick inalámbrico
TransceiverSistema de IA
Adaptador USBSerial/Ethernet
Ethernet
Puerto paralelo/USB
Módulos del sistema de IA
Planeación GET
Joystick
Control de movimiento
Árbol de IARecepción Visión
Control
Simulador
Envío de información
UbicaciónTrayectoria
Evasión Control
Thread principal
Dentro del ciclo principal se realizan las siguientes funciones:
• Lectura de la información proveniente del sistema de visión.
• Actualización de información en los diálogos.• Evaluación del árbol de inteligencia artificial.• Actualización de los eventos del joystick.• Cálculo de la trayectoria por el dialogo de
control.• Control del robot.• Envío de información.
Inteligencia artificial
Define las estrategias de alto nivel Coordinación de robots Ejecución de comportamientos Evaluación del escenario Se basa en los estados de juego
Comportamientos
Definen la siguiente información por cada robot:
Posición final Orientación final Velocidad lineal Velocidad de giro
Comportamientos del portero
BloqueaTiroPortero: Tiene dos casos: si la pelota se dirige hacia la portería (utilizando predicción de la pelota) o en caso de que no se cumpla esta condición. Si no se cumple se realiza una cobertura a partir del punto central de la portería a cierta distancia.
Comportamientos del portero
DespejarPortero: Despeja la pelota hacia los extremos de la media cancha.
BloqueaTiroPorteroLat: Igual a BloqueaTiroPortero. La diferencia es que el punto a cubrir en lugar de ser el punto medio de la portería cubre el poste más cercano a la pelota:
Condiciones Start: Evalúa si el estado actual es “Start” Portero/PorteroNo: Evalúa si el rol del robot que se está
evaluando es “Portero” DentroAreaPortero/FueraAreaPortero: Evalúa si la
pelota está dentro de de un área medida a partir del centro de la portería.
DefensaActivo/DefensaActivoNo: Evaluá si el rol defensa está activo.
D3Activo/D3ActivoNo: Evalúa si el rol D3 está activo. DefensaRolBarreraPorteriaDer/
DefensaRolBarreraPorteriaDerNo: El rol defensa está cubriendo la portería desde la parte derecha.
D3RolBarreraPorteriaIzq/ D3RolBarreraPorteriaIzqNo: El rol D3 está cubriendo la portería desde la parte izquierda.
Estados de juego (1er nivel del árbol)
Árbol de decisión del portero en el estado Start
Definición de los nodos
Cada nodo del árbol tiene asociada un archivo en el que se define el uso de una o más condiciones.
1 0800DistanciaPelotaPortEK11 Menor 112 Mayor 0-1
Planeación de rutas
Permite que los robots se muevan dentro del campo de juego evitando colisiones.
El planeador debe ser eficiente para trabajar en tiempo real (30 cuadros por segundo).
El espacio cambia constantemente. La configuración del espacio es impredecible.
Árboles de exploración geometrica
Se desarrollaron tomando como base a los RRT.
Se parte de un punto inicial y un punto final definido por el módulo de IA.
Algoritmo GET (1)
El robot 1 se dirige hacia la pelota Existe un robot como obstáculo
Algoritmo GET (2)
Se extiende el nodo de exploración (se parte de la raíz del árbol).
Se obtienen las intersecciones.
Algoritmo GET (3)
Se define la raíz del árbol como un nodo de exploración (punto inicial).
Se extiende un vector A hacia el punto final Se obtienen los puntos de intersección (P1,P2)
definiendo un radio de aproximación R.
Algoritmo GET (4)
Se extiende el árbol hasta llegar al punto de colisión.
Se generan dos nodos de exploración para rodear el obstáculo.
GET con varios obstáculos