Fonctionnement des trains ordinateur Viergewinnt

L'ordinateur a essayé tous les trains d'un numéro de train de déterminer de, Il est déterminé par le niveau. Au niveau 1, Il a essayé deux briques, un pour lui-même et l'autre pour l'adversaire.. Au niveau 2 Essayez-le 4 Jeter, au niveau 3, 6 et de niveau 3 toujours un ou plusieurs.
Pour chaque poste., le résultant., Il procède à un examen et puis sélectionne le train, Il est la meilleure cote à la fin de. Il effectue la même méthode pour les trains de l'adversaire. De cette façon, il s'attend avec laquelle (déterminé par cette méthode.) meilleur coup de son adversaire, pour déterminer le propre train best.

Comment l'ordinateur a évalué une position?

Il est l'un pour chaque pierre de sa couleur, Combien de possibilités y sont encore, 4 pour entrer dans une série. Sur un terrain vide avec un rocher en bas à gauche, un examen découle de 3, parce qu'il 3 Les possibilités, Cette pierre de 4 pour entrer dans une série: le haut de la page, vers le haut à la droite et vers la droite.

Ce comte est fait pour l'ordinateur et la Gegnger. Un examen de la position est calculé à partir de ces deux chefs d'accusation, où pouvez différemment pondéré le résultat de comptage de l'adversaire que le propre. La pondération est déterminée par le chaos de l'ordinateur. À mayhem extrême, seulement lexicographiquement joue un rôle du comte de Gegngers, c.-à-d.. Si deux trains après le dépouillement des pierres propres le même nombre, Il est préférable du train, qui a un pire compter les résultats à un ennemi.

Le chaos (= Stratégie) l'ordinateur est choisi au hasard pour un jeu. Elle peut 5 Prendre des valeurs entre le “presque uniquement des possibilités propres à élargir”-Stratégie jusqu'à “réduire au minimum les chances des opposants en premier lieu”. Alors que l'ordinateur dans un niveau choisit une stratégie, avec qui il a perdu une fois, pas encore (Si possible).

Le cas du profit est mesuré avec un certain nombre, qui est plus grand que tous les examens, celle obtenue après le schéma ci-dessus. Perdre est évalué comme un nombre négatif.

Est utilisé pour améliorer la vitesse de l'algorithme alpha-bêta-annulation. L'idée est la suivante: Sélectionnez l'adversaire est toujours le train, qui est le pire pour l'ordinateur. Donc pas besoin d'être calculé tous les trains propres, Si l'adversaire par un autre train précédent (c.-à-d.. dans une autre branche) a l'occasion de, mieux prendre que par grade analysé. Tous les autres trains de la branche actuelle pas besoin d'être analysées, parce qu'il y a une possibilité pour l'ennemi, l'ordinateur au pire que dans une autre branche.
L'autre branche est donc préféré par l'ordinateur, sans avoir à les essayer et d'évaluer tous les trains de l'arborescence actuelle.
Cet algorithme est purement logique, c.-à-d.. Elle ne restreint pas le jeu de résultats, mais réduit le nombre d'opérations nécessaires pour atteindre qu'exactement le même résultat qu'avec la recherche complète. Un grand merci à Marc Becker, le m'a déclaré cet algorithme.

Possibilités d'amélioration

Vitesse

Afin d'améliorer la vitesse, attend toujours soigneusement de l'ordinateur tandis que l'adversaire. Cette fin 7 Terrains de jeu générés, Bien que chaque domaine contient un passage possible de l'adversaire. Le calcul est alors en même temps pour tous 7 Terrains de jeu ont commencé. A son départ de l'adversaire, Si les calculs sont arrêtés, qui ont été lancées pour un autre de son adversaire se déplacer et a attendu le calcul pour le train, qui fait réellement l'adversaire, est terminé. Malheureusement cela n'a pas beaucoup, parce que les calculs préalables doivent partager les performances du processeur, ils viennent seulement avec ca. un septième de la vitesse d'un simple calcul en cours. À la vitesse des trains de personnes entre 5 et 15 Une période d'épargne secondes par déplacement provient de 5/7 jusqu'au 15/7 ainsi par 0,7 jusqu'au 2 Secondes. Dans ca. 60 Deuxième niveau calcul 5 ist das nicht mehr als ein Tropfen auf den heißen Stein 🙁 Leider habe ich die Beobachtung der menschlichen Zuggeschwindigkeit erst gemacht, Après je le “compter sur le temps des opposants” schon programmiert hatte 🙁

Peut-être il pourrait être utile, les routines, qui sont nécessaires au cours du calcul, afin d'optimiser la vitesse. J'ai essayé avec un succès modéré et aucun effort spécial. Les deux sont dans le code source (le “plus lent” et que “plus vite”) Contiennent encore des routines, les nouvelles ont les balises “rapide”. Pour ceux qui veulent, ici ce qu'il faut améliorer, comme à!

Une autre façon, pour rendre le jeu à des niveaux plus élevés plus supportable,
Sera, une bibliothèque d'ouverture à intégrer. Si la bibliothèque d'ouverture est traitée, Ce n'est cependant pas plus vite qu'auparavant.

Il serait également envisageable, l'ordinateur “Intelligent” à faire, c.-à-d.. Projections pour annuler, avant que la profondeur de calcul prédéterminée est atteinte., Si d'une certaine façon “prévisible” est, que ce ne soit pas en question les activités conversion vient. Cependant, sera de cette manière l'ordinateur “potentiel créatif” prises, Il ne peut faire valoir aucun davantage de trains, mal qui, à première vue paraître (= prévisible ne viennent ne pas en question), mais après que quelques trains s'avérer bénéfique. Tous les programmes d'échecs doivent être ceux “Heuristique” Ces méthodes de travail, parce que le nombre de possibilités après seulement quelques trains de si grandes est là, que pas tous les trains peuvent être évalués dans un délai acceptable. De développer de bonnes heuristiques, grande expérience de jeu est nécessaire. Peut-être quelqu'un se sent, da allais? – Je vais (au moins dans un avenir proche) Ne vous inquiétez pas, parce que le jeu présent pour ainsi dire pour moi devrait être le critère, Comment bien un ordinateur sans heuristiques, c.-à-d.. sans l'expérience de jeu intégré, peut jouer. Le résultat est: Il va assez bien, mais contre une personne, est l'ordinateur (sans heuristiques) lent et tuable.

Niveau de compétence

La première version de ce programme évalué seulement la qualité de la position propre, indépendamment de la position de l'adversaire. La version actuelle utilisée avec l'évaluation de la position de l'adversaire selon mayhem (= Stratégie) poids variables. Cela pourrait améliorer le niveau de compétence de l'ordinateur significativement.

N'est pas mis en œuvre: Location. le poids, Ce doit être adaptée à l'évaluation de la position adverse, Selon le stade et le niveau de compétence de l'adversaire.

Une autre façon, afin d'améliorer le niveau de compétence, pourrait il être, non seulement les opposants à la meilleures forment à prendre en compte, mais pour y inclure la distribution des taux de l'adversaire. Un mécanisme serait également envisageable, Il utilise un algorithme différent pour le train opposé comme pour les trains de l'ordinateur.

Une autre façon est, certaines constellations (par exemple. “Automne”, ne peut pas être reconnu dans la profondeur de l'antériorité) avec les examens spécifiques pour fournir. Probablement, c'est la méthode la plus prometteuse, parce que ces faiblesses systématiques peuvent être réduites. Allderdings sont donc plus seulement uniques “Automne” enseigne l'informatique. En outre, qui exige, comme lorsque l'expérience heuristique de jeu, C'est pourquoi je ne prévois pas de sitôt, pour mettre en œuvre ces.

Un moyen plus facile, afin d'améliorer le niveau de compétence, pourrait il être, non seulement le nombre de Viererreihen possible de compter, mais aussi prendre en compte, le Viererreihe se compose déjà de combien de pierres. Jusqu'à présent, l'ordinateur analyse les deux Viererreihen possible, ils ont déjà fait un, Il y a deux ou trois pierres, De même. Le jeu de l'ordinateur est probablement aggresiver, mais engager. également moins stratégique, concentre donc à court terme, en raison de la préfabriqués par 3 Pierres dans une rangée sont importants –
Location. wichtiger als der Bau neuer Möglichkeiten. – Je comprends difficilement,
Si le jeu c'est mieux, C'est probablement aussi la pondération à plus de possibilités. J'envisage cette possibilité d'amélioration, en principe, n'importe quand bientôt.

Code source

Il y a le code source Java Fichier ZIP ici.
Il peut librement distribué, utilisé et être changé, aussi longtemps que mon nom avec
est passé. J'utilise personnellement de la zone de massage de classe modifiée
par Jack Harich, messages (par exemple. Joueur avec la couleur de x a gagné”)
passer.

Le fichier principal est appelé “Kreise.java”, Elle implémente l'interface utilisateur graphique. Le fichier “tspielfeld.java” fournit des fonctionnalités de base de Viergewinntspielfeldes, pendant le fichier “SchlauesSpielfeld.java” Fonctions d'évaluation de poste y compris la méthode “a le joueur gagne?” étendu, Ajoute la méthode pour déterminer le meilleur train et
implémente l'interface pour les threads, les projections simultanées à
enable.

J'ai ici un guide court écrit, Comment lier ce petit jeu de Viergewinnt sur sa propre page.

Idées? Suggestions? Chants de louange?

Tout simplement laisser un commentaire.

Cette entrée a été affichée en Tous les articles allemands et marqués , , , . Signet la Permalien.

Laisser une réponse

Votre adresse de courriel ne sera pas publié.. Les champs obligatoires sont marqués. *