2009-10-11 17 views
0

Je prévois de faire un Bubblet game en Java, parce que j'aime simplement le jeu.Qu'est-ce qui peut être utilisé comme heuristique pour le jeu Bubblet?

Ce qui peut être utilisé comme heuristique pour le jeu? Je vais le faire 30x30 ou plus, et je ne peux pas comprendre comment rendre l'ordinateur à jouer le jeu efficacement ...

Pouvez-vous suggérer une idée? Merci

+0

Avez-vous, pour un débutant, envisagé de regarder la source du jeu auquel vous liez? Source-Link est à la fin de cette page. Ou est-ce que je me méprends sur ce que tu veux? Parlez-vous de laisser un "bot" jouer à un tel jeu – jitter

+0

[désolé, je ne pouvais pas répondre à cela plus tôt] oui, je veux qu'un bot joue le jeu et le joue de la manière la plus efficace possible. – Moeb

+0

Je veux que ce soit comme ça: je présente un puzzle de 30x30 à l'ordinateur et mon algorithme me dira la position du prochain mouvement afin que je puisse obtenir le score maximum possible à la fin du jeu ** [le maximum possible score pour cette configuration] ** – Moeb

Répondre

0

Je vais essayer une combinaison de programmation dynamique et programmation parallèle:

Pour chaque point, tenir un score, lui-même compte et les scores des voisins 4 connectés avant qu'il (haut et à gauche) (qui sont déjà disponibles en raison de la programmation dynamique).

Cela peut se faire en parallèle dans une ligne diagonale de progression, améliorant ainsi les performances.

+0

* [Désolé, ne pouvait pas répondre à cela plus tôt] * ** Pouvez-vous s'il vous plaît élaborer comment vous implémenter la partie de programmation dynamique? ** La meilleure façon que je pense est en réalité force brute [a tree] et j'ai besoin d'une méthode pour couper l'arbre [évidemment, nous ne pouvons pas utiliser la force brute]. Je ne comprends pas comment vous dites que cela peut être fait. * [Je veux que ce soit comme ça: je présente un puzzle de 30x30 à l'ordinateur et mon algorithme me dira la position du prochain mouvement afin que je puisse obtenir le score maximum possible à la fin du jeu [le score maximum possible pour cette configuration]] * – Moeb

+0

Pour une raison quelconque, le jeu ne se chargera pas pour moi maintenant, cependant de ce que je me souviens: Utiliser une matrice comme structure de données et calculer un score pour chaque cellule, basé sur le score de la cellule au-dessus et à gauche de celui-ci. Itérer en diagonale du coin supérieur gauche au coin inférieur droit, en calculant toutes les cellules en diagonale avant de passer au diagnol suivant. –