2011-01-19 2 views
0

Je suis dans une classe sur l'IA en ce moment et je suis obligé de faire un projet au cours de la totalité du semestre qui applique l'IA d'une manière ou d'une autre. Le professeur a dit que cela pouvait être à peu près n'importe quoi dans presque toutes les langues. Pour référence, le projet «par défaut» écrit quelque chose pour résoudre le monde Wumpus, mais le professeur a dit que ce serait un peu trop facile et nous devrions essayer de trouver notre propre problème. Je ne sais vraiment pas quoi faire. Je suis un grand joueur d'échecs donc je pensais peut-être à simplifier un peu les règles du jeu ou à écrire quelque chose qui jouerait l'ouverture car il y a des buts précis en ouverture (obtenir de l'espace, développer des pièces, contrôler le centre). D'autres suggestions? Je vous remercie.Suggestions pour un projet AI?

Répondre

0

Normalement, la façon dont ces questions vont, je suggère toujours que vous explorez une passion que vous avez. Si l'une de vos passions est les échecs, alors c'est un domaine idéal pour un projet d'IA.

Il ne devrait pas être très difficile de trouver un programme d'échecs. En fait, vous pouvez facilement amorcer des choses en utilisant une base de code d'échecs existante, et simplement évider leur algorithme de recherche et le remplacer par le vôtre. Bien qu'il y ait des difficultés à essayer de comprendre ce que sont les entrées et sorties de cette fonction de haut niveau (selon la façon dont les développeurs d'origine l'ont écrit), c'est un petit prix à payer pour obtenir tout le travail ennuyeux de le chemin (lire en mouvement, montrer un tableau, etc.) pour "libre". Les échecs sont un grand domaine parce que c'est un jeu déterministe sans information cachée. Ce que vous apprendrez, c'est comment écrire un algorithme de recherche pour une IA d'échecs. Puisque vous aimez déjà les échecs, vous comprenez les règles, et vous pouvez probablement trouver des idées intéressantes pour une fonction d'évaluation (c'est-à-dire au-delà de la simple différence matérielle). Vous pouvez ensuite étendre votre recherche alpha-bêta de base pour inclure des éléments tels qu'un cache de recherche, le hachage Zobrist, la détermination de lignes de jeu "intéressantes", etc.

2

J'ai essayé de faire du tic-tac-toe une fois. C'était assez dur pour moi. N'essayez rien qui se rapporte à l'interprétation en langage naturel, à la reconnaissance optique de caractères ou à l'imagerie.

+0

J'ai eu des problèmes avec le tic-tac-toe une fois, aussi, parce que j'essayais d'évoluer un ANN pour apprendre à le jouer de "scratch", et je n'avais jamais fait de Projet AI avant. (Insérer la crème glacée Minksy Ice Koan ici.) La recherche alpha-bêta, cependant, est un algorithme beaucoup plus simple (ce que je recommande dans ma réponse) –

0

Si vous voulez échecs, rechercher et apprendre:

  • min problème max

  • alpha et l'élagage bêta

Il y a d'autres options bien sûr. Comme piggy backing sur un projet AI open-source bien connu. Par exemple, apprendre tabu recherche (voir wikipedia), fourche Drools Planner's Traveling Tournament Problem example, exécutez-le pendant 10 minutes (de sorte que vous obtenez un score), puis travailler pour améliorer ce score de 10 minutes, par exemple - essayez introducing better moves. Hey, peut-être que vous pouvez même battre a TTP record :)

Questions connexes