Foi considerado que a melhor maneira de dirigir as ovelhas até ao curral seria analisar jogada a jogada reagindo perante o ambiente. De acordo com a posição do robô (já ao pé da ovelha) é pensado para onde se deslocará a ovelha sendo que o robô a segue da forma mais pertinente.
Backlog do processo de desenvolvimento de um projeto com incorporação do EV3 da LEGO e conceitos de Inteligência Artificial.
quinta-feira, 21 de janeiro de 2016
Função goTo - Metodologia
Parte/Função integrante do projeto. Tem apenas uma premissa: a função é chamada com as coordenadas desejadas e o robô dirige-se para tal coordenada, respeitando as regras do jogo. Segue um esquema com uma possível configuração e respetivas respostas.
Pesquisa Cega - Metodologia
Após falhar as duas iniciais soluções para a pesquisa cega, na seguinte imagem exemplifica-se a nova metodologia que se pretende abordar.
segunda-feira, 18 de janeiro de 2016
Última fase de entrega
DATA DE TRABALHO: 13 de Janeiro de 2016 até 18 de Janeiro de 2016
Inicialmente consideramos que o estudo completo ao pavimento, memorizando onde estão as barreiras e as ovelhas, seria uma abordagem ineficiente, no entanto, numa nova abordagem ao problema notamos que não seria possível o robô pensar racionalmente se não conhecia os futuros obstáculos que ao encaminhar a ovelha esta podia encontrar.
Como primeira abordagem decidimos que trataríamos os quadrados do pavimento como nós de uma árvore e de acordo com esta árvore decidimos de entre os algoritmos de pesquisa abordados na aula que faria a pesquisa da melhor forma.
1ª SOLUÇÃO: Busca em profundidade
Esta solução demonstrou várias limitações então descartamos.
2ª SOLUÇÃO: Busca em largura
Esta solução garantia que todos os nós fossem visitados, no entanto, passá-la para linhas de código em que dependendo da posição e direção os movimentos e a pesquisa aos nós filhos eram diferentes. Quando se implementou esta solução a abordagem não foi realmente a prevista e no fundo a pesquisa cega não tinha em conta a busca em largura mas sim a busca em profundidade com iterações.
Devido ao extenso código os erros tornaram-se quase impossíveis de se corrigir, mas conseguiu-se fazer com que percorresse funcionalmente até a iteração 4.
CONCLUSÃO: Nenhuma das soluções revelou-se eficiente pois deixava nós filhos por pesquisar.
ESTRATEGIA DE TRANSPORTE DAS OVELHAS ATÉ AO CURRAL:
A estratégia optada foi localizar a ovelha compreender se na posição da ovelha tem-se barreiras e de acordo com isso definir a melhor posição para "berrar" para a ovelha. Encaminhar o robô até esta posição e a partir daqui leva-la até as extremidades da matriz que contêm o curral e a partir daí leva-la até ao curral.
RESULTADOS OBTIDOS:
A solução da pesquisa cega não foi implementada de modo a se conseguir todos os níveis sem limitações ou pelo menos com o mínimo de limitações. A estrategia de transporte das ovelhas até ao curral possui algumas limitações como atropelo de ovelhas; caso berre para uma ovelha e nos arredores tenha-se uma ovelha o jogo dá-se como perdido; entre outras que poderiam surgir em outras fases de testes.
Bem agora resta definir uma solução para o estudo do terreno ótima e mais simples de converter em código. Melhorar todas as limitações inerentes a estratégia de jogo no que toca a levar as ovelhas para o curral.
Subscrever:
Mensagens (Atom)



