¿Cómo se usa la teoría de juegos en el control de múltiples sistemas de robots?

En general, la teoría de juegos no se usa a menudo en robótica, al menos no que yo sepa. Pero un puñado de personas lo han investigado. También es cómo me adentré en la robótica, donde pasé los últimos 15 años.

Proyecto DARPA MICA (circa 2001–2004)

Hasta donde sé, uno de los primeros usos de Game Theory aplicado a la robótica surgió de un esfuerzo conjunto entre la Universidad Estatal de Ohio y el equipo de la Universidad de Pittsburgh que trabaja en el proyecto DARPA MICA (Control de Iniciativa Mixta de Equipos de Automa). circa 2001-2003. El esfuerzo fue dirigido por el Dr. José Cruz y mi asesor, el Dr. Marwan Simaan.

El control óptimo ocupa un lugar único en Ingeniería Eléctrica. Requiere una sólida formación matemática teórica, especialmente con respecto a las técnicas de optimización numérica y analítica. Pero gracias al trabajo de Riccati, Kalman, et al … puede ser difícil encontrar (y financiar) nuevas aplicaciones interesantes en el control tradicional. Los investigadores a menudo miran fuera de la caja para encontrar oportunidades.

El Dr. Simaan había sido alumno del Dr. Cruz a principios de los años setenta. Juntos fueron pioneros en aplicar la estrategia de Stackelberg en juegos de suma no nula.

Avance rápido un cuarto de siglo. Los drones Predator comenzaron a volar en 1995 y Global Hawks en 1998, pero se necesitaron 5 operadores para volar cada dron. DARPA anunció el proyecto MICA para ver cómo podría mejorarse eso. En lugar de necesitar cinco operadores para controlar un avión no tripulado, querían construir un sistema de gestión de campo de batalla que permitiera una relación 1: 5 de operador a UAV. DARPA también quería que el operador pudiera interactuar con el sistema en múltiples niveles estratégicos. Visualizaron un operador capaz de controlar un solo UAV, encargar a un escuadrón o administrar operaciones a nivel de teatro. Mientras tanto, el sistema proporcionaría comentarios sobre las decisiones y haría predicciones sobre posibles acciones enemigas.

Fue un poco ambicioso.

Porque el sistema tenía que poder pensar estratégicamente en todos los niveles, con acciones desconocidas tanto de amistosos como de enemigos. El Dr. Simaan y el Dr. Cruz pensaron que esta era una excelente aplicación para retomar algunos de sus trabajos anteriores sobre Game Theory.

En ese momento yo era un estudiante graduado en la Universidad de Pittsburgh que estudiaba el control óptimo bajo el Dr. Simaan en ese momento junto con su compañero de estudios Yong Lu. Uno de los estudiantes del Dr. Cruz examinó las técnicas teóricas de los juegos para la planificación del camino en los juegos de persecución / evasión. Mi trabajo consistía en manejar la estrategia de nivel de salida; es decir, dada una fuerza compuesta por UAV de ataque sigiloso ágil y UAV de bombarderos pesados, ¿cuál es la mejor manera de atacar un objetivo de interés (bunker) defendido por los sitios de misiles de superficie a aire vinculados por RADAR y Comando y Control.

Brevemente: hice algunas suposiciones simplificadoras y reduje el problema a un problema síncrono de asignación de objetivos de armas. Luego formulé un concepto Near Nash en el que se define una nueva función de costo que mide la suma al cuadrado de la cantidad que cada jugador podría mejorar cambiando unilateralmente su estrategia (es decir, qué tan “Nash” es la estrategia). Utilicé técnicas de optimización combinatoria para resolver estas estrategias de “Near-Nash” y comparé su efectividad con varios métodos para generar acciones adversas.

Y resulta que las estrategias de “Cerca de Nash” funcionaron mejor que cualquier otra estrategia, independientemente de la estrategia con la que se emparejó.

JUEGO ESTRATEGIAS DE ASIGNACIÓN DE OBJETIVOS TEÓRICOS EN SISTEMAS COMPETITIVOS DE MÚLTIPLES EQUIPOS _Galati-04

Problemas con los enfoques teóricos del juego a la robótica

Si no recuerdo mal, las estrategias de “Near-Nash” fueron 3–7% mejores que las técnicas de optimización teóricas que no son de juego. Entonces, ¿por qué no se usa más ampliamente?

Razón 1: Complejidad
Las técnicas teóricas del juego duplicarán o aumentarán el número de grados de libertad con los que está lidiando en su espacio de búsqueda. Esa complejidad dificulta el problema. O se ve obligado a hacer suposiciones de simplificación adicionales que reducen en gran medida la precisión de cualquier modelo de costo con el que esté trabajando o está limitando la optimización de cualquier solución que se le ocurra.

Razón 2: Modelado
Además, los enfoques de teoría de juegos requieren razonamiento sobre posibles acciones adversas. Sin embargo, esas acciones generalmente no se pueden expresar en un bonito formato de matriz ordenada. Por lo general, hay muchas acciones adversas, todas en diferentes niveles de estrategia y completamente asíncronas. Entonces, para que cualquier técnica teórica del juego sea razonablemente válida, su modelo debe tener una representación bastante buena de la realidad. E incluso entonces es probable que ingrese fallas en su modelo en lugar de estrategias válidas reales.

P.ej. Imagínese si quisiera que un robot aprendiera a jugar fútbol con un motor basado en TechmoBowl. Ese robot terminaría aprendiendo que la mejor estrategia de fútbol era darle el balón a Bo Jackson y esperaría que su oponente intentara contrarrestarlo.

También existe el peligro de que su robot pueda ser manipulado. Los humanos son terriblemente buenos en este tipo de razonamiento. Al menos por ahora, cualquier robot será una gran simplificación de esta habilidad. Un adversario humano probablemente podrá aprender y adaptarse, induciendo a los robots “inteligentes” a realizar acciones tontas.

Conclusión
Game Theory es una herramienta poderosa. La investigación en técnicas de teoría de juegos probablemente aumentará a medida que los robots se vuelvan más capaces. Pero va a tomar algo de trabajo para dar a los robots la experiencia contextual que necesitan para razonar sobre acciones adversas de una manera inteligente.

La teoría de juegos implica entidades independientes que actúan en su propio interés mientras siguen (o no) las reglas de un “juego”. Puede incluir tanto juegos cooperativos como juegos competitivos. Muchos juegos (como las subastas) se juegan en rondas, donde en algún momento se toma una decisión y el juego concluye, pero otros juegos se ejecutan continuamente con jugadores que entran y salen, como los mercados.

Un buen ejemplo de un juego es ir a un restaurante con tus amigos. Si todos deciden de antemano que todos pagarán por lo que comieron, entonces ese es un proceso. Si todos deciden de antemano dividir la cuenta en partes iguales, entonces ese es un juego en el que todos intentan asegurarse de que no pagan mucho más de lo que comieron al interesarse mucho en lo que todos los demás eligen.

Los humanos son muy buenos jugadores naturales, por lo que los robots tendrán que jugar en algún momento para interactuar con nosotros con éxito. Los juegos también podrían ayudar a varios robots a trabajar juntos para lograr un objetivo común, o compartir recursos de manera eficiente.

Aquí hay una aplicación posible: imagine una serie de robots autónomos, cada uno con una tarea que realizar y un grupo de partes de varios tipos. A cada robot se le asigna un ‘precio’ por la tarea, y pueden usar ese valor para ofertar por las partes que necesitan para realizar la tarea. Después de algunas rondas, algunos de los robots pagan más, obtienen sus partes y se van a hacer su tarea, otros con tareas de menor valor esperan hasta que las partes sean devueltas. Las tareas se priorizan por el valor que se les asigna. Por supuesto, esto podría hacerse mediante un sistema central que asigne los recursos, pero es más eficiente y escalable crear un mercado para hacerlo.

No he visto la teoría de juegos utilizada para el control de enjambres de robots homogéneos o heterogéneos, por la razón de que la teoría de juegos generalmente asume dos (o más) entidades que están en competencia, mientras que los enjambres generalmente cooperan.

Podrías imaginar que la teoría de juegos tiene un papel importante en, por ejemplo, enjambre versus escenarios de combate de enjambre. En particular, los juegos diferenciales podrían formar la base de esquemas de control óptimo teóricamente muy potentes para los combatientes robot. Sin embargo, no he visto mucho trabajo en esta área hasta la fecha.

Nunca estudié teoría de juegos, pero supongo que se puede usar para determinar qué robot se debe enviar en una misión en particular (verifique ese ruido extraño en una esquina) sin amenazar la misión general a largo plazo (patrullar la ciudad por la noche).

También puede ayudar al organizar redes tolerantes al retraso (DTN), es decir; cuando no hay wifi para todos y te comunicas pasando mensajes a los robots cercanos a ti: si quieres hablar con el robot 23 (visto por última vez en la cocina) pero solo puedes contactar a los robots 2, 35 y 67, a quién le das ¿tu mensaje?

Nuevamente, estos son en su mayoría suposiciones.