Lista de discussão de MAC 212


[Prévia por Data][Próxima por Data]
[Prévia por Assunto][Próxima por Assunto]
[Índice por Data][Índice por Assunto]
[Envie uma nova mensagem para a lista] [Responda esta mensagem]

Re: Volta Jogada



Hi a mensagem ta ficando grande..
Cesar writes:
 > > > - minha pergunta é: eu tenho q contar quantas jogadas o computador
 > simulou e
 > > >   voltar o mesmo
 > > > numero de jogadas? Ou pelo fato de meu método de avaliação das jogadas
 > > > (EVAL) ser recursivo, eu posso faze-lo voltar uma só vez (em cada
 > chamada do
 > > > metodo)?
 > >
 > > A idéia é mesmo esta, a cada chamada no nível de recursão, você deve
 > voltar
 > > uma jogada. Assim o controle de quantas jogadas voltar fica automático.
 > 
 > Réplica: entao eu tenho que guardar todas as jogadas desde o primeir nivel
 > de recursoa
 > e todos os estados do tabuleiro né (trabalhoso) ?
Errado, quando se faz a recursão, as jogadas são guardadas automaticamente, 
a cada chamada, isto é o seu programa poderia ser como:
para cada joga valida i 
     faz jogada i
     chama a recursão
     faz os calculos para ver se é a melhor/pior
     volta a jogada i
     
 > > > - Nao seria mas fácil construir e copiar outro tabuleiro e simular as
 > > >   jogadas nele, nao tendo
 > > >que me preocupar com quantas jogadas o computador esta a frente no
 > tabuleiro
 > > >'oficial' ?
 > >
 > > Talvez um pouco mais fácil, mas vamos ver por outro lado, a cada nível de
 > > recursão existem da ordem de 20 jogadas. Caso sejam feitos quatro níveis
 > > teremos 160mil cópias do tabuleiro..., se cada uma ocupa míseros 1kb....
 > 
 > Réplica: Mas, se eu fizer uma copia de cada tabuleiro e destrui-lo no final
 > de cada avaliacao, terei, no maximo o numero de recursoes que estarei
 > fazendo certo
 > (ou nao)?
Ok, você está certo, mas de qualquer forma você imagina o custo de criar
e destruir 160mil cópias do tabuleiro ?


Alfredo