RoboCup

Anuncio
Introducción a RoboCup
José Ignacio Núñez Varela
jnunez@uaslp.mx
josenunezvarela.com
Universidad Autónoma de San Luis Potosí
© The RoboCup Federation
¿Qué es RoboCup?
• RoboCup es una iniciativa de educación e
investigación internacional
• Objetivo:
• Proveer un problema estándar (fútbol)
• Evaluación y prueba sencilla
• Incrementar la investigación en I.A. y robótica
• Acontecimiento histórico
© The RoboCup Federation
Meta de RoboCup
“Para mediados del siglo 21, un equipo de
jugadores robot humanoides completamente
autónomos deberán ganar un juego de fútbol, de
acuerdo con las reglas oficiales de la FIFA, contra
el ganador de la copa mundial de fútbol más
reciente.”
The RoboCup Federation
© The RoboCup Federation
¿Es Posible Alcanzar la Meta?
Primer avión - 1903
ENIAC - 1946
Viaje a la Luna - 1969
IBM Deep Blue - 1997
© The RoboCup Federation
¿Es Posible Alcanzar la Meta?
• Más de 4,000 investigadores de más de 40 países
se encuentran trabajando en diversos proyectos:
• Juegos internacionales
• Conferencias
• Talleres
• Programas educacionales
© The RoboCup Federation
Ajedrez vs. RoboCup
Ajedrez
RoboCup
Ambiente
Estático
Dinámico
Cambio
Estados
Por turnos
Tiempo real
Información
Completa
Incompleta
Sensores
Simbólicos
No simbólicos
Control
Central
Distribuido
© The RoboCup Federation
Historia de RoboCup
• 1993: Estudio de factibilidad
• 1995: Anuncio oficial de RoboCup
• 1997: RoboCup-97; Nagoya, Japan
• 1998: RoboCup-98; Paris
• 1999: RoboCup-99; Stockholm
• 2000: RoboCup-2000; Melbourne
• 2001: RoboCup-2001; Seattle
• 2002: RoboCup-2002; Fukuoka/Busan
© The RoboCup Federation
Historia de RoboCup
• 2003: RoboCup-2003; Padua
• 2004: RoboCup-2004; Lisbon
• 2005: RoboCup-2005; Osaka
• 2006: RoboCup-2006; Bremen
© The RoboCup Federation
RoboCup-2007
http://www.robocup-us.org
RoboCup-2008: Suzhou, China
© The RoboCup Federation
Dominios en RoboCup
• RoboCupSoccer
• RoboCupRescue
• RoboCupJunior
• RoboCup@Home
© The RoboCup Federation
RoboCup Soccer
• El enfoque principal de las actividades de
RoboCup es el fútbol competitivo
• Los juegos de fútbol son una manera excelente de
intercambiar información técnica y científica
• El fútbol también sirve para entretener y educar al
público
© The RoboCup Federation
RoboCup Soccer
• RoboCupSoccer está dividido en las siguientes
ligas:
• Liga de Simulación
• Liga de Robots de Tamaño Pequeño (f-180)
• Liga de Robots de Tamaño Mediano (f-2000)
• Liga de Robots Cuadrúpedos
• Liga de Humanoides
© The RoboCup Federation
Liga de Simulación
• Jugadores de software (agentes) con movimientos
independendientes juegan fútbol en un campo
virtual dentro de una computadora
• Los juegos son de 5 minutos por tiempo
© The RoboCup Federation
Liga de Simulación
• Dentro de esta liga se encuentran 5 categorías:
• Simulación 2D
• Simulación 3D
• Desarrollo en 3D
• Implementación del Coach
• Exhibición de Comentaristas
© The RoboCup Federation
Liga de Robots de Tamaño Pequeño
• Robots de no más de 18
cm de diámetro juegan con
una pelota de golf naranja
en equipos de máximo 5
robots en un campo del
tamaño de una mesa de
ping-pong
• La duración es de 10
minutos por tiempo
© The RoboCup Federation
Liga de Robots de Tamaño Mediano
• Robots de no más de 50 cm de diámetro juegan en
equipos de máximo 4 robots con una pelota de
fútbol naranja en un campo de 12 x 8 metros
• La duración es de 10 minutos por tiempo
© The RoboCup Federation
Liga de Robots Cuadrúpedos
• Equipos de 4 robots AIBO (de Sony) juegan fútbol
en un campo de 3 x 5 metros
• La duración es de 10 minutos por tiempo
© The RoboCup Federation
Liga Humanoide
• Esta liga se introdujo en el
2002
• Robots humanoides
bípedos autónomos juegan
penalties y juegos de
"1 vs. 1", " 2 vs. 2"
• También se hacen
competencias de categoría
libre
© The RoboCup Federation
Liga Humanoide
• Video Humboldt
• Video BreDoBrothers
• Video Osaka Team
RoboCup Rescue
• Su objetivo es promover la investigación y
desarrollo en el dominio del rescate de desastres
• RoboCupRescue se divide en dos ligas:
• Liga de Robots de Rescate
• Liga de Simulación de Rescate
© The RoboCup Federation
RoboCup Rescue
• Involucra un gran número de robots heterogéneos
en un ambiente hostil
• Coordinación y trabajo de equipos multi-agente
• Agentes robots para búsqueda y rescate
• Infraestructura de la información
• Asistentes personales digitales (PDA’s)
• Sistemas de soporte a decisiones
• Bases de evaluación para estrategias de rescate
© The RoboCup Federation
Liga de Simulación de Rescate
• Se evalúa al equipo con la mejor estrategia de
rescate
• Simulación de un ambiente de desastre urbano
genérico
© The RoboCup Federation
Liga de Robots de Rescate
• Utilizando sitios duplicados de desastres reales, un
equipo de múltiples robots (autónomos o teleoperados) compiten en velocidad y fidelidad en
misiones de búsqueda y rescate
© The RoboCup Federation
RoboCup@Home
• Se enfoca en aplicaciones del mundo real e
interacción humano-computadora con robots
autónomos
• El objetivo es promover el desarrollo de robots que
ayuden en nuestra vida diaria
• El ambiente de trabajo involucra la cocina, la sala
y otras habitaciones de una casa
© The RoboCup Federation
RoboCup@Home
• La primera demostración fue en Bremen
© The RoboCup Federation
RoboCup Junior
• RoboCupJunior es una iniciativa educacional
orientada a proyectos que patrocina eventos
locales, regionales e internacionales para
estudiantes jóvenes
• Está diseñada para introducir RoboCup a
estudiantes de primaria y secundaria, así como de
licenciatura que no tienen los recursos para
involucrarse en las otras ligas
© The RoboCup Federation
RoboCup Junior
• RoboCupJunior se divide en:
• Desafío de Fútbol
• Desafío de Baile
• Desafío de Rescate
© The RoboCup Federation
Desafío de Fútbol
• Equipos de 1 o 2 robots
preprogramados
• Juegos de 10 minutos por
tiempo
• Se utiliza una pelota infrarroja
• El campo es de un tono gris
© The RoboCup Federation
Desafío de Baile
• Los robots con la mejor secuencia de baile, de dos
minutos de duración, ganan
• Se compite en creatividad y coreografía
© The RoboCup Federation
Desafío de Rescate
• Se compite para ver que robot
es el primero en rescatar
víctimas de escenarios de
desastre artificiales
© The RoboCup Federation
Tecnologías de RoboCup
• Sistemas Multi-Agentes
• Comunicación y Atención Conjunta
• Robótica en Red / Robótica Ubicua
• Reconocimiento de Ambientes en Tiempo Real /
Planeación / Predicción / Sistemas de Generación de
Acciones
• Desarrollo de Hardware/Software para Visión en Tiempo
Real
• Control y Generación de Comportamiento de
Humanoides
© The RoboCup Federation
Tecnologías de RoboCup
• Aprendizaje / Desarrollo / Computación Evolutiva para
Robots
• Asociación de Información de Múltiples Sensores
• Sistemas de Acción para Apoyo a Rescates de Larga
Escala
• Kits de Robots para Educación y Entretenimiento
• Simulador de Super Precisión de Cambio Ambiental en
3D y Tiempo Real
© The RoboCup Federation
Video RoboCup 2005 – Osaka, Japón
RoboCup Soccer Server
RoboCup Soccer Server
• La liga de simulación fue la primera
competencia formal
• Es muy atractiva y popular porque no requiere
usar robots reales
• Nos podemos enfocar en problemas que no
requieren el conocimiento de mecánica,
electrónica, etc.
© The RoboCup Federation
RoboCup Soccer Server
RoboCup Soccer Server
• Comunicación Cliente/Servidor vía UDP/IP
• Múltiples lenguajes pueden usarse (C++, Java, etc.)
• Puede ejecutarse en la misma máquina o en red
• Los clientes no se pueden comunicar entre ellos
• Los monitores se usan para visualizar la simulación
• Los entrenadores son opcionales y son una guía
para los jugadores
RoboCup Soccer Server
Estrategia de Toma
de Decisiones
Entrada sensorial
Servidor
Cliente
Comandos de salida
RoboCup Soccer Server
• Entrada sensorial:
• Hear (instantáneamente)
• See (150 ms)
• Sense_body (100 ms)
RoboCup Soccer Server
• Mensaje para escuchar:
(hear Time Sender “Message”)
• Sólo se escucha en un cierto rango
• Un mensaje enviado cada ciclo
RoboCup Soccer Server
• Mensaje para ver:
(see Time ObjName Distance Direction
DistChange DirChange BodyDir NeckDir)
RoboCup Soccer Server
RoboCup Soccer Server
• Mensaje para sentir:
(sense body Time
(view_mode ViewQuality ViewWidth)(stamina Stamina Effort)
(speed AmountOfSpeed DirectionOfSpeed)
(neck_angle NeckAngle)(kick KickCount)(dash DashCount)
(turn TurnCount)(say SayCount)(turn_neck TurnNeckCount)
(catch CatchCount)(move MoveCount)
(change_view ChangeViewCount))
RoboCup Soccer Server
• Comandos de acciones:
RoboCup Soccer Server
• Árbitro:
• Árbitro automático (no para algunas jugadas)
• Controla las formas de juego durante el partido
• Entrenador:
• Entrenador Offline (entrenar)
• Entrenador Online (Analiza el partido al
momento de jugar)
RoboCup Soccer Server
RoboCup Soccer Server
• Enfoques:
• Redes neuronales
• Comportamiento codificado
• Comportamiento en scripts
• Aprendizaje por capas
• Programación genética
Referencias
http://www.robocup.org
http://sserver.sourceforge.net
Información Personal
jnunez@uaslp.mx
josenunezvarela.com
Descargar