Arquitetura de Software » Histórico » Revisão 8
Revisão 7 (Luciano Barreira, 04/05/2017 19:26 h) → Revisão 8/56 (Luciano Barreira, 04/05/2017 19:35 h)
h1. ARQUITERURA O Software é basicamente subdividido em cinco estágios, conforme fluxo de informação: Leitura, Pré-Processamento, Tomada de Decisão (Inteligência Artificial), Controle e Transmissão. Os módulos que compõem estes estágios estão descritos a seguir: * Leitura : SSL-Vision e Ref Box * Pré-Processamento: Game State e Judge State * Tomada de Decisão: Role Set e Tactics * Controle : Obstacle Avoidance e Path Planning * Transmissão : Transmission h2. Leitura Os módulos SSL-Vision e Ref Box são responsáveis por receber os pacotes, respectivamente, do SSLVision e do RefBox, softwares padronizados da liga. As informações coletadas são então enviadas para os módulos Game State e Judge State, responsáveis por processar estas informações. h2. Pré-Processamento * Game State : Neste módulo é estimado um estado de jogo confiável, ou seja, é neste módulo em que ocorrem filtragens, com objetivo de mitigar erros de observação das câmeras. O principal algoritmo utilizado para filtragem é um "Filtro de Kalman":http://robotsforroboticists.com/kalman-filtering/ . É possível escolher entre métodos de filtragem na interface gráfica (GUI) principal e observar as diferenças em tempo real entre os métodos. * Ref Box : Com base em comandos atuais e anteriores, é possível obter uma relação entre os comandos enviados pelo Juiz e estados da partida, como Meio de Campo, Tiro Direto e Pênalti. Neste módulo, são tratados os modos do Juiz a fim de gerar informações mais "amigáveis" para o desenvolvimento de algoritmos de tomada de decisão. h2. Inteligência Artificial h3. [[Decisão Decisão de Personalidades]] Personalidades Neste módulo é definido o papel de cada robô consoante estado de jogo. h3. [[Personalidades]] Neste módulo é definido o Segue descrição genérica do comportamento de cada personalidade personalidade. * Defesa A estratégia da defesa é criar uma parede de acordo robôs. Para fazer isso, o primeiro robô designado a defesa irá ocupar a intersecção da linha, que conecta o centro do gol com a bola, com a circunferência com centro no meio do gol e raio de @r + l + d@, onde @r@ é o estado raio do jogo. robô, @l@, a distância do gol ao começo da semicircunferência do gol, e @d@, o raio dessa semicircunferência. Os outros robôs designados a defesa irão, alternadamente, cada lado da barragem, ao longo da circunferência previamente citada, com uma distância de @2r@ do robô mais próximo. Isso irá evitar que a bola chegue no gol já que a parede de robôs sempre estará em sincronia com a bola.