Sensor fusion and behaviours for the CAMBADA robotic soccer team - Silva, João Manuel Leite da (2008)
Fusão sensorial e comportamentos são dois módulos necessários à implementa ção de agentes capazes de jogar futebol. CAMBADA é a equipa de futebol róbotico da liga média do RoboCup criada pelo grupo ATRI, pertencente à unidade de investigação IEETA da Universidade de Aveiro. Esta tese fornece uma visão geral da arquitectura da equipa CAMBADA sobre a qual o trabalho descrito foi implementado. O movimento dos robôs é um problema de controlo de baixo nível, resolvido por um controlador PID; uma descrição geral sobre controlo ´e apresentada neste documento. Os robôs da equipa CAMBADA são completamente autónomos e portanto possuem os seus próprios meios sensoriais. A informação fornecida por esses sensores não é tratada e tem que ser processada para fornecer informação de melhor qualidade para o agente. Técnicas de fusão sensorial fornecem meios para obter esta melhoria da informação e algumas são discutidas neste documento. Uma implementação de filtro de Kalman foi criada e testada para estimar a posição da bola a partir das medidas ruidosas e para detectar mudanças no caminho da bola, baseada na comparação entre valores previstos e valores medidos. Também foi implementada uma regressão linear para estimar as velocidades da bola e robô. Devido a mudanças nas regras da liga média, que tornaram o campo visualmente simétrico, uma nova bússola electrónica foi integrada para providenciar um meio de verificar os resultados do algoritmo de estimação da posição, melhorando a localização. A informação proveniente da fusão sensorial ´e mantida numa descrição do estado do mundo usada pelo robô. Alguns desenvolvimentos foram feitos nesta representação. Foram criados e implementados algoritmos que permitem ao agente testar um conjunto de condições que são usadas pelo módulo de decisão de alto nível. Os desenvolvimentos na fusão sensorial e representação do estado do mundo permitiram a implementação de novos comportamentos. Os comportamentos definem “reacções” a um conjunto de condições, que podem ser verificadas a partir da informação do estado do mundo, e são responsáveis por definir os comandos a enviar para os controladores dos actuadores. A combina ção inteligente destes comportamentos permitem ao robô agir de uma determinada forma em campo. Trabalho ao nível dos comportamentos fornecem melhores capacidades de acção, importantes para o desenvolvimento de estratégias de jogo eficazes. Dois novos comportamentos de intercepção foram implementados que permitem ao robô interceptar a bola avaliando o seu caminho e as capacidades do robô. Também foi desenvolvido um novo algoritmo para desvio da bola, para situações de pontapé de saída, lançamento e outras situações de bola parada. Nestas situações, os robôs têm que se reposicionar no campo sem tocar na bola. O algoritmo criado melhora o desempenho reduzindo o desvio necessário. A estimativa da velocidade da bola foi muito melhorada e é agora muito mais fiável em situações de jogo. Os novos comportamentos trouxeram uma nova dinâmica ao jogo e as ferramentas de manipulação do estado do mundo simplificaram e melhoraram a modularidade do código do alto nível. De uma forma geral, os desenvolvimentos obtidos pelo trabalho descrito nesta tese melhoraram o desempenho geral da equipa em competição. ABSTRACT: Sensor fusion and behaviours are two of the modules required in the implementation of software agents able to play soccer. CAMBADA is the MSL RoboCup robotic soccer team created by the ATRI group, part of the IEETA research unit at Aveiro University. This thesis provides an overview of the CAMBADA team architecture over which the described work was implemented. The motion of the robot is a low level control problem, in this case solved by a PID controller; an overview on low level control is presented in this document. The CAMBADA team robots are completely autonomous and thus they possess their own perception sensors. The information provided by those sensors is raw and has to be processed to provide better quality information for the agent. Sensor fusion techniques provide the means to achieve this information enhancement and some are discussed in this document. An implementation of a Kalman filter was created and tested to estimate the ball position from the noisy measurements and to detect changes on the ball path, based on a comparison between predicted values and measured values. Also, a linear regression was implemented for estimation of the ball and robot velocities. Due to changes in the MSL rules, that turned the field symmetric from the vision point of view, a new electronic compass was integrated providing a means to verify the results of the position tracking algorithm and hence enhance localisation. The information resulting from the sensor fusion is kept in a description of the state of the world used by the robot. Some developments were made in this world state representation. Algorithms were created and implemented to allow the agent to check for a set of conditions that are used by the high level decision module. The developments on sensor fusion and world state representation supported the implementation of new behaviours. The behaviours define “reactions” to a set of conditions, that can be verified through the information of the state of the world, and are the responsibles for defining the commands to be sent down to the low level controllers of the actuators. The intelligent combination of these behaviours allows the robot to act in a defined way on the field. Work at the behaviour level provides better action capabilities, important for the development of effective game strategies. Two new interception behaviours were implemented that allow the robot to intercept the ball by reasoning over its path and the robot capabilities. Also a new algorithm for ball avoidance was developed, for situations like kickoff, throwin and other situations when the game is stopped. In these situations the robots have to reposition themselves on the field without touching the ball. The created algorithm improves the performance by reducing the necessary deviation. The velocity estimation of the ball was greatly improved and is now much more reliable in game situations. The new behaviours brought a new dynamic to the game and the tools to manipulate the state of the world provided a simplification and improved the modularity of the high level code. In a general way, the developments achieved in the work described by the thesis have improved the overall performance of the team in competition.