L’iniziativa RoboCup: una sfida
alla ricerca in Intelligenza
Artificiale
M. Simi
A. Cisternino
Pisa, 26 Marzo 1999
Che cos’è l’I.A.?
Il settore dell’Intelligenza Artificiale (I.A.)
consiste in un’impresa scientifica e
tecnologica di lungo respiro che mira a:
– costruire macchine intelligenti
– formalizzare la conoscenza e meccanizzare
il ragionamento
– comprendere i meccanismi dell’intelligenza
– innalzare il livello di interazione con le
macchine
Obiettivi dell’I.A.

Ingegneristico: costruire artifatti
intelligenti

Scientifico: comprendere i meccanismi
che stanno alla base del
comportamento “intelligente”
Che tipo di capacità?
Capacità di ragionamento?
 Capacità di simulare il comportamento
umano?
 Capacità di interagire in maniera
razionale con un ambiente e di
comunicare?
 Capacità di provare emozioni?

Capacità di ragionamento
Giocare a scacchi?
Nel 1997 un computer, Deep Blue, ha
battuto il campione mondiale di scacchi,
Kasparov.
– Fortuna?
– Vantaggio psicologico?
– Forza bruta piuttosto che intelligenza?
Capacità di simulazione
Il test di Turing (1950)
Agenti Intelligenti

Gli agenti sono situati
– ricevono percezioni da un ambiente
– agiscono sull’ambiente mediante azioni

Gli agenti comunicano tra di loro
– sono capaci di collaborare
– sono capaci di difendersi da altri agenti

Gli agenti hanno credenze, obiettivi,
intezioni ...
Cos’è RoboCup?
La Robot World Cup Initiative (RoboCup) è
la proposta di un problema di riferimento
per ricerca in I.A.
Si tratta di realizzare agenti (sw o hw) in
grado di giocare a calcio.
Un problema difficile, da usare come banco
di prova per nuove idee e tecnologie.
Tecnologie da sviluppare e
integrare
agenti autonomi
 collaborazione tra agenti
 acquisizione di strategie
 ragionamento e pianificazione in tempo
reale
 robotica
 tecnologie hw e sw per infrastruttura

La sfida procede su diversi
livelli

robot reali (real robot league)

versione software simulata (software
agent league)

versione limitata ad abilità specifiche,
es. tirare un calcio di rigore (special skill
competion)
Eventi

IJCAI 97 (Giappone)

MAAMAW (Parigi, giugno 98)

Convegno AI*IA (Padova, settembre
98)


IJCAI 99 (Stoccolma, agosto 99).
Congresso AI*IA (Bologna, ottobre 98)
La sfida robotica

Robot di diverse dimensioni
– Small Size League
– Middle Size League
– Legged League
Small size league
Medium size league
Legged league
Problemi specifici da risolvere
Riconoscimento di immagini in tempo
reale
 Fusione e integrazione di sensori (vista,
tatto, sonar ...)
 Motori e batterie ad alte prestazioni
 Dispositivi di controllo sofisticati
 Comunicazione a livello hw

Il problema del calcio simulato
Come il gioco del calcio ma …

Mondo in due dimensioni.

Giocatori e palla sono cerchi.

I movimenti sono simulati per passi

Collisione di oggetti
Il problema (cont.)

I giocatori non conoscono le posizioni
assolute.

Punti di riferimento sul campo:
bandierine, linee e porte.

I giocatori si stancano
Visibilità limitata
 Comunicazione limitata

La sfida software

Problema reale, ma vincolato da regole;

ambiente dinamico e vincoli di tempo
reale;

ambiente non accessibile:
– percezioni limitate dalla direzione, dalla
distanza e dalla capacità di elaborazione

ambiente non deterministico:
– l’effetto delle azioni non è certo
La sfida software
(cont.)

comunicazione tra giocatori limitata dalla
capacità di comprendere e di utilizzare
un linguaggio convenzionale;

ambiente multi-agente con giocatori in
diversi ruoli, alleati o avversari;

utilizzabili tecniche di apprendimento, online oppure off-line, individuali o di
squadra.
RoboCup a Informatica
Progetto del corso di Intelligenza
Artificiale Laboratorio (IAL)
 Risultato: 10 squadre di RoboCup con
giocatori programmati in Lisp
 Piccolo torneo (IAL-Cup 99) che ha visto
la partecipazione di 6 squadre

http://medialab.di.unipi.it/Project/Robocup/
Per contatti con il mondo
RoboCup

Pagine Web:
http://www.robocup.org/
http://medialab.di.unipi.it/Project/Robocup
Architettura del simulatore
In una partita il server simula il mondo
e 22 giocatori interagiscono col server
muovendosi nell’ambiente simulato.
 E’ possibile avere un allenatore che
segue il gioco da bordo campo.
 Il server calcola le percezioni per ogni
giocatore e le invia. Esegue i comandi
ricevuti dai giocatori.

Architettura
...
Coach
Blu
...
Server
...
...
Coach
Rosso
Arbitro
umano
La rete di comunicazione
Il mezzo di comunicazione è la rete
 Non è possibile giocare a distanza:
troppa comunicazione!
 Si può giocare con un giocatore per
computer con una rete di 23 computer.
 Viene utilizzato un protocollo non
affidabile: percezioni e azioni possono
perdersi

Le percezioni
Ci sono tre tipi di percezioni: see, hear
e sense_body.
 Ogni percezione è riferita al giocatore
nel suo sistema di coordinate.
 Le percezioni sono rappresentate da
liste definite da parentesi tonde:

(see 1 (ball …) …)
Le percezioni visive
La percezione see descrive cosa sta
vedendo un giocatore.
 La percezione contiene una lista di
oggetti caratterizzati da: tipo, direzione,
distanza e velocità relative; se giocatore
il numero e la squadra.
 Gli oggetti sono: linee, porte, giocatori,
bandierine, palla ...

Le percezioni uditive
Segnala il fatto che qualcuno ha detto
qualcosa.
 È il meccanismo che viene utilizzato dal
simulatore per segnalare le decisioni
arbitrali.
 Permette di ottenere meccanismi di
comunicazione tra giocatori.

La percezione sense_body
Contiene lo stato fisico del giocatore.
 Permette al giocatore di conoscere di
valutare le proprie forze.
 Implica la gestione di una risorsa
limitata: la stamina.
 La stamina è assimilabile ad una
valutazione dello stato fisico e delle
energie disponibili.

Le azioni
Il server offre quattro azioni principali:
dash, kick, turn e say.
 Ogni azione potrebbe essere scartata
dalla rete e comunque non viene
eseguita esattamente ma vengono
introdotti dei correttivi non deterministici.
 Il giocatore non può assumere che
un’azione sia andata a buon fine.

I numeri
Il server esegue 10 cicli per secondo di
simulazione. Un match dura 6000 cicli.
 In un secondo il server calcola 330
percezioni e le invia ad ogni giocatore.
Riceve circa 220 comandi dai giocatori.
 Il server in media genera in 5 minuti di
partita 198000 messaggi e ne riceve in
media 132000.

RoboCup: l’infrastruttura
Una delle sfide di RoboCup è una sfida
allo sviluppo di supporti sw/hw per i
tornei.
 Esempi: monitor 3D, commentatori
automatici, arbitri automatici…
 Sviluppati a Pisa …

– RoboMon
– Championship manager
RoboMon
Il RoboMon è un monitor per il torneo
simulato di RoboCup. È stato sviluppato
presso il nostro dipartimento.
 È scritto in Java e VRML, non serve
quindi alcun supporto oltre che un
browser per poterlo usare.
 È un monitor sia 2D che 3D.

RoboMon3D
La versione 3D del monitor è piuttosto
complessa.
 Si sono dovuti ricostruire
comportamenti non disponibili come ad
esempio il movimento dei giocatori.
 Gli strumenti standard disponibili in rete
sono flessiblili ma poco efficienti.

Scarica

presentation source