Ir para conteúdo
Fórum Script Brasil
  • 0

Jogo De Xafrez Em Java


Guest - Marcus -

Pergunta

2 respostass a esta questão

Posts Recomendados

  • 0

Opa, de java eu não entendo nada, mas estou implementando um em Delphi, já fiz a interface gráfica toda, mas quanto ao mecanismo(Engine), apenas comecei a estruturar os dados.

Este é o segundo que estou fazendo, porque o primeiro eu comecei a fazer pensando que era fácil, sem estudar nada antes. Por esse motivo ele ficou muito ruim. Portanto tive que dar uma estudada e começar tudo denovo do zero.

A interface gráfica é fácil. Só é trabalhoso quanto mais recursos você quer colocar nela. Cheguei num estado que me satisfez.

Agora, quanto ao algoritmo que calcula qual a melhor jogada, é muito difícil e requer muito estudo para implementar. As pessoas podem e passam vários anos refinando seus algoritmos para obter um resultado satisfatório, um algoritmo que jogue um xadrez razoável. Para isso é preciso estudar várias técnicas inventadas pelos pesquisadores ao longo da história dos computadores, como ->

* Busca AlphaBeta (AlphaBeta Search / Cuttoff's)

* Variação Principal (Principal Variation, PV)

* Aprofundamento Iterativo (Iterative Deepening)

* Tabela de Transposição (Transposition Table, Hash Table)

* Jogadas de Corte (Killer Moves)

* Tabela de História (History Table)

* Busca Quieta (Quiescence Search)

* Busca MTD(f) (MTD(f) Search)

* Extensões singulares (Singular Extensions)

* Jogadas Nulas (Null Moves)

* Repertório de Abertura (Openning Book)

* Tabuleiro de Bits (BitBoards)

* Avaliações Estáticas (Static Evaluations)

#Dentro de Avaliações estáticas existem mais umas 30 técnicas que devem ser consideradas

Repito que é muito difícil implementar um algorítmo desses. Mas se você realmente quiser procure dar uma estudada boa nessas técnicas e quem sabe você mesmo pode inventar suas próprias técnicas e heuristicas de avaliação.

Eu postei essa menssagem porque no que diz respeito ao mecanismo de busca não faz diferença se o código for em java ou Delphi que vão ser a mesma coisa.

E ainda você deve lembrar que Java é uma linguagem mais lenta doque as outras e portanto um jogo feito em Java não poderá jogar um grande xadrez. Ainda mais se for pra celulares ou equipamentos parecidos aonde 90% dos recursos são consumidos pelo sistema operacional.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,9k
×
×
  • Criar Novo...