Aula 12
Programar um agente inteligente em Prolog
 |
YapCobras (v0.1)
Downloads:
Topicos:
|
Objectivo
A tua tarefa nesta aula é muito simples: tens de programar uma "cobra" para jogar o conhecido jogo das Cobras ou Serpentes, o famoso "Nibbles" !!
Quick Start
- Faz o download dos 3 ficheiros indicados acima
- Muda as permissoes do ficheiro "YapCobras" para que fique executável ("chmod +x YapCobras")
- Experimenta correr "YapCobras"
- Experimenta correr "YapCobras 2 cobra-ovo.yap cobra-rand.yap"
- Usa qualquer uma das cobras exemplo para começar o teu agente e faz a tua cobra ! :-))
A competição na aula
No final da aula serão feitas duas competições:
- Modo sozinho (ver qual a cobra que consegue mais pontos estando sozinha no tabuleiro e em caso de empate a que conseguiu o mesmo em menos tempo)
- Modo misto (várias cobras ao mesmo tempo - ganha a que não colidir e em caso de empate ganha a que tiver mais ovos)
Manual de Sobrevivência
- Como funciona o servidor
- Em cada ciclo, cada jogador recebe estado actual do mundo e diz que direcção quer que a sua cobra tome
Isto é conseguido através do uso de ficheiros
- state - Indica o estado do mundo actual
- action - Indica acção a tomar pelo jogador
- A melhor maneira de perceber é ver os programas exemplo
- Depois de corrido uma vez o YapCobras pode ver-se o ficheiro "state" para ver o aspecto do estado do mundo
- Predicados disponiveis nas cobras exemplo:
- nJogadores(N) - Devolve o numero de jogadores
- dim(X,Y) - Dimensoes da matriz de jogo
- jogador(N) - O "nosso" número de jogador
- pos(X,Y) - A posicao da cabeça da nossa cobra
- dir(D) - A direccao da nossa cabeça ('N', 'S', 'E' ou 'O')
- matriz(M) - A matriz de jogo
- ovo(X,Y) - Posição actual do ovo
- cobra(N,X,Y) - Uma parte da cobra do jogador N esta na posição (X,Y)
Última actualização: