Projeto

Geral

Perfil

Ações

Atividade #1193

Fechada

Fazer nova skill de posicionamento para o 2ndStriker

Adicionado por Felipe Welington aproximadamente 5 anos atrás. Atualizado mais de 4 anos atrás.

Situação:
Fechada
Prioridade:
Normal
Atribuído para:
Início:
25/09/2019
Data prevista:

Descrição

Essa tarefa destina-se a criação/reformulação do antigo posicionamento do 2nd striker para o passe.


Arquivos

angulos.png (11,9 KB) angulos.png Gustavo Atala Testoni, 01/03/2020 14:40 h
incentro.png (18,3 KB) incentro.png Gustavo Atala Testoni, 01/03/2020 14:40 h
regiaodesenhada.png (11,9 KB) regiaodesenhada.png Gustavo Atala Testoni, 01/03/2020 14:40 h
robosextremidades.png (12,8 KB) robosextremidades.png Gustavo Atala Testoni, 01/03/2020 14:40 h
Ações #1

Atualizado por Gabriel Borges da Conceiçãoquase 5 anos

  • Atribuído para ajustado para Gustavo Atala Testoni

Tarefa já realizada. Faltam testes.

Ações #2

Atualizado por Nicolas Oliveiramais de 4 anos

mudou algo na lógica? reportar oq foi feito.

Atualizado por Gustavo Atala Testonimais de 4 anos

O 2nd Striker seria um robô que dá mais opções de passe, mas sem "roubar" a posição do Striker, e, além disso, em caso de contra-ataque adversário, o 2nd deveria voltar para ajudar na defesa. Por isso, ele deve ter um avanço limitado. E, para achar sua posição, ele procura a maior abertura na defesa adversária, respeitando o limite no avanço dele.

Primeiramente, para restringir o posicionamento dele, o campo de ataque é dividido em 3 regiões. O ângulo alpha pode ser alterado mudando o ponto P caso necessário, mas inicialmente, foi decidido que o ponto P é o ponto (L/6,-h/2). regiaodesenhada.png

Para achar a maior abertura, considera-se as retas que ligam os robôs inimigos (exceto o goleiro) ao centro do gol e calcula-se os ângulos entre as retas adjacentes. Se todos os robôs inimigos estiverem na região delimitada anteriormente, as extremidades da região são consideradas no cálculo dos ângulos. angulos.png

Depois, escolhe-se a "sub-região" com maior ângulo, e é calculado o incentro do triangulo formato pelas retas dessa sub-região, e a reta que liga o centro do campo ao ponto P. No entanto, caso o incentro esteja fora da região delimitada no início, procura-se o segundo maior ângulo e calcula-se o incentro, para ser a posição do 2nd Striker. incentro.png

Para analisar completamente todos os ângulos possíveis, deve-se considerar os ângulos entre os robôs inimigos que estão dentro da região, mais proximos da extremidades desta, e as extremidades. Caso esse ângulo seja maior que o calculado anteriormente, calculá-se o incentro dessa ultima sub-região, e essa será a posição do 2nd Striker. robosextremidades.png

Por fim, há 2 situações que devem ser evitadas.
1- O 2nd Striker ficar entre a bola e o gol, atrapalhando um chute direto (ficar a uma distancia menor que 250mm da reta que liga a bola ao gol):
Caso isso aconteça, o 2nd Striker se move sobre a reta perpendicular a reta anterior em direção ao centro do campo, até que a distância seja respeitada.

2- O 2nd Striker fica muito perto do Striker (fica a uma distância menor que (diagonal_do_campo/10):
Caso isso aconteça, o 2nd Striker se move em direção ao centro do campo, até que a distância seja respeitada.

Ações #4

Atualizado por Gabriel Borges da Conceiçãomais de 4 anos

Muito bom!

Em breve vamos testar o comportamento do robô no campo e realizar alguns ajustes se for necessário.

Ações #5

Atualizado por Gabriel Borges da Conceiçãomais de 4 anos

  • Situação alterado de Em andamento para Fechada
Ações

Exportar para Atom PDF