# RoboCup

A RoboCup é uma competição de robótica anual internacional fundada em 1997 . Tem como objetivo, até a metade do século XXI, desenvolver uma equipa de robôs humanóides totalmente autônomos capazes de derrotar a equipa campeã mundial de futebol humana.

## O que é?

O Robocup é uma competição a nível mundial que se desenrola todos os anos. Visa o estudo e desenvolvimento da Inteligência Artificial (IA) e da Robótica, fornecendo desafios e problemas onde várias tecnologias e metodologias se podem combinar para obter os melhores resultados.
Cada edição é constituída por duas partes essenciais: as competições e o simpósio. As competições dividem-se em três grupos (RobocupSoccer, RobocupRescue e RobocupJunior), sendo cada uma composta por várias ligas.
No simpósio, que decorre após as competições, são apresentados e discutidos trabalhos científicos da área. As equipas participantes nas competições têm por obrigação apresentar as soluções desenvolvidas e disponibilizar o seu trabalho, sendo esta uma forma de incentivar a contínua evolução de uma equipa, assim como o aparecimento de raiz de novas equipas já com boa qualidade.
A primeira edição decorreu em 1997 em Nagoya no Japão, depois de se ter organizado um pré-Robocup em Osaka no Japão para identificar possíveis problemas e dificuldades na organização deste tipo de eventos a uma escala global.
A iniciativa foi lançada pelo Dr. Hiroaki Kitano (Tóquio), um pesquisador na área da Inteligência Artificial que se tornou no presidente e fundador da RoboCup Federation, com o objectivo de dinamizar a evolução da IA, em particular dos Sistemas Autónomos Multi-agente.

## Competições Existentes
### RobocupSoccer

Inicialmente, o futebol foi a grande motivação para o Robocup. O futebol é um desporto bastante popular em quase todo o mundo, mas apresenta também desafios científicos bastante importantes, isto porque é um jogo colectivo com problemas individuais (identificação e localização de objectos relevantes e de si próprio, dribles, remates, etc.), e ao mesmo tempo, problemas colectivos (estratégia, passes, etc.). A existência de um ambiente dinâmico e de ser jogado contra um adversário cujo objectivo é exactamente o oposto são também aspectos que obrigam a uma grande sofisticação dos intervenientes (robôs). No RobocupSoccer estão englobadas as competições de futebol robótico, nas suas variadas formas.

#### Middle size league

Jogada por duas equipas de 5 robôs móveis autónomos com rodas (na quase totalidade das equipas), com uma altura que varia entre os 50cm e os 90cm. Toda a informação relativa ao ambiente é obtida pelos seus sensores e são capazes de comunicar entre eles via wireless. Tirando a introdução e remoção de robôs do terreno de jogo e recolocação da bola em campo, não é permitida qualquer intervenção humana durante o jogo.

#### Small size league

Nesta liga os robôs são bem menores e o ambiente é muito mais controlado para lhes facilitar a vida. Embora sejam independentes uns dos outros, todo o processamento é efectuado num computador central, baseado em informação (posição dos jogadores, da bola, etc.) vinda de uma câmara de vídeo colocada por cima do campo de jogo, os comandos são enviados para os robôs via wireless. A intervenção humana resume-se à introdução e remoção dos robôs no campo.

#### Four-legged league

Como o nome da liga indica, esta é jogada por robôs de 4 patas. São equipes de 5 robôs, que assentam na plataforma desenvolvida pela Sony, o cão robótico AIBO, programado pelas equipas de forma a obter os resultados pretendidos. Estes robôs têm os sensores necessários incorporados e comunicam com os restantes elementos via wireless.

#### Simulation league

Nesta liga não existem robôs/agentes físicos, todo o ambiente e agentes são simulados. Um simulador fornece aos agentes todos os dados que seriam obtidos na realidade através dos seus sensores e calcula o resultado das acções de cada agente. Cada agente é um processo separado e são no total 11 de cada equipa. Existe simulação a 2D e a 3D.

#### Humanoid league

Nessa categoria os robôs possuem aspctos humanos (braços, pernas, cabeça). É a liga mais atrativa mas igualmente aquela que apresenta os maiores desafios e de maior complexidade. A intervenção humana nesta liga é permitida somente para retirar robôs do campo, caso o robô não saia sozinho, sendo que os robôs recebem informações do juiz através do programa Game Controller. Nessa categoria os robôs são autônomos.

#### E-league

Esta é a mais recente liga do Robocup, tendo decorrido pela primeira vez no Robocup de 2004 em Lisboa. Foi introduzida para permitir que equipas com menos recursos ou experiência também possam participar. Centra-se nos problemas de alto-nível, usando plataformas simples, usando tecnologias generalizadas quanto à visão e comunicação.

### RobocupRescue

A busca e salvamento em cenários de catástrofe é uma das áreas onde se prevê grande intervenção de sistemas artificiais no futuro. Motivado pelos sismos de grande dimensão em Kobe (Japão) a 17 de Janeiro de 1995, e em Foligno (Itália) a 26 de Setembro de 1997, apareceu na edição de 2001 uma nova competição integrada no Robocup, o RobocupRescue. O objectivo principal de projecto é promover a pesquisa e desenvolvimento de soluções para esta área, o que leva a uma crescente melhoria de soluções de coordenação de equipas multi-agente, sendo estes agentes diferentes uns dos outros, constituindo por isso equipas de agentes heterogéneos, soluções robóticas de busca e salvamento, etc. No futuro, muita da tecnologia desenvolvida para o Robocup irá certamente integrar as equipas reais de busca e salvamento, de forma a melhorar a eficiência destas acções mas também de diminuir o risco para os agentes humanos sempre necessários nestes cenários.

#### Robot league

Um ou vários robôs movem-se dentro de uma zona de testes que recria um edifício parcialmente destruído onde existem vítimas que esperam ajuda exterior, com zonas de diferentes níveis de dificuldade. O objectivo é procurar as vítimas e construir uma mapa do ambiente e transmiti-lo ou trazê-lo até à equipa humana no exterior. Os robôs podem ser autónomos ou tele-operados.

#### Simulation league

Neste ambiente, a catástrofe é mais generalizada. Um conjunto de simuladores simula as consequências de um sismo numa cidade. Edifícios desabam, estradas são obstruídas, incêndios são originados e começam a propagar-se, etc. Tenta-se recriar o melhor possível o ambiente de catástrofe numa cidade após um sismo de grandes dimensões. Os agentes desenvolvidos pelas equipas irão actuar neste ambiente. Três conjuntos de agentes (bombeiros, polícias e ambulâncias, com as respectivas centrais) irão fazer tudo para salvar o maior número possível de vítimas e evitar que os incêndios existentes se propaguem e consumam toda a cidade, minimizando os estragos na cidade. Este ambiente obriga as equipas a pesquisar e apresentar soluções em diversas áreas (planeamento multi-agente, coordenação de agentes heterogéneos, planeamento robusto, etc.).

### RoboCup Junior

De forma a que os mais jovens estudantes dos ensinos primário e secundário também possam participar e estimular o interesse deste grupo nas áreas da robótica e da IA, foi criado este grupo de competições. Procura-se também promover as capacidades dos participantes em trabalhar e resolver problemas para atingir um objetivo comum, fornecendo aos jovens diversos desafios. Estão presentes na RoboCup Junior as categorias do Soccer Challenge, Rescue Challenge e Dance Challenge.

### Robocup@Home

Estreante na RoboCup 2006, se preocupa em desenvolver robôs autônomos móveis para futuras aplicações na vida diária. O cenário é uma habitação com sala e cozinha, nos quais os robôs devem realizar tarefas. O centro das atenções é a interação homem-máquina.

## Campeonatos Realizados

| Edição | Nº equipas participantes | Nº países representados |
| RoboCup 2017 Nagoya - Japão | | |
| RoboCup 2016 Leipzig - Alemanha | | |
| RoboCup 2015 Hefei - China | | |
| RoboCup 2014 João Pessoa - Brasil | 358 | 45 |
| RoboCup 2013 Eindhoven - Holanda | 410 | 45 |
| RoboCup 2012 Cidade do México - México | 381 | 42 |
| RoboCup 2011 Istambul - Turquia | 451 | 40 |
| RoboCup 2010 Singapura | 500 | 40 |
| RoboCup 2009 Graz - Áustria | 407 | 43 |
| RoboCup 2008 Suzhou - China | 373 | 35 |
| RoboCup 2007 Atlanta - USA | 321 | 39 |
| RoboCup 2006 Bremen - Alemanha | 440 | 35 |
| RoboCup 2005 Osaka - Japão | 419 | 35 |
| RoboCup 2004 Lisboa - Portugal | 345 | 37 |
| RoboCup 2003 Pádova - Itália | 238 | 35 |
| RoboCup 2002 Fukuoka/Busan - Japão/Coréia do Sul | 188 | 29 |
| RoboCup 2001 Seatle - EUA | 141 | 22 |
| RoboCup 2000 Melbourne - Australia | 110 | 19 |
| RoboCup 1999 Estocolmo - Suécia | 85 | 23 |
| RoboCup 1998 Paris - França | 63 | 19 |
| RoboCup 1997 Nagoya - Japão | 38 | 11 |