Je code un jeu 4X plutôt "simple" (si un jeu 4X peut être simple). Son ampleur est indé, et je me demande s'il est possible de trouver une IA passable sans que je passe des mois à coder dessus.
Le jeu comporte trois grandes parties de prise de décision; dépense de points de production, dépense de points de mouvement et dépense de points technologiques (fondamentalement, il y a 3 «devises» différentes, la monnaie non dépensée à la fin du tour n'est pas enregistrée)
- Dépenser des points de production
- Améliorez une planète (augmentez sa technologie et sa production)
- Construire des navires (3 types)
- Déplacer des vaisseaux de planètes en planètes (coût des Points de Mouvement)
- Déplacer pour attaquer
- Déplacer pour fortifier
- Tech de recherche (peut rechercher partiellement une technologie, comme dans Master of Orion)
Le plan pour moi en ce moment est une approche par force brute. Il y a fondamentalement 4 grandes options pour le joueur -
Améliorez la ou les planètes à sa production et à sa production technologique
Conquérir autant de planètes que possible
Sécurisez autant de planètes que possible
Accédez à une certaine technologie dès que possible
Pour chaque décision, je vais parcourir les options possibles et arriver à un score; puis l'IA choisira la décision avec le score le plus élevé. Pour l'instant, je n'ai aucune idée de comment «mélanger les décisions». Autrement dit, l'IA souhaite mettre à niveau et conquérir les planètes en même temps. Je suppose que je peux avoir une autre logique qui fait une optimisation en force brute sur une combinaison de ces 4 décisions ....
Du moins, c'est mon plan si je ne vois rien de mieux. Existe-t-il un moyen plus rapide de créer une IA passable? Je n'ai pas besoin d'un très bon, pour rivaliser avec Deep Blue ou autre, juste quelque chose qui a l'illusion de l'intelligence.
C'est la première fois que je fais une IA à cette échelle, donc je n'ose pas essayer quelque chose de trop grand aussi. Jusqu'à présent, j'ai des expériences avec FSM, DFS, BFS et A *
Réponses:
On dirait que vous pouvez essayer Minimax pour "mélanger" vos décisions. Il y a eu une conférence lors du Game AI Conf de l'an dernier par les programmeurs de Green Corp, et c'est ce qu'ils ont utilisé pour construire leur IA. Il leur a fallu beaucoup de temps pour bien faire les choses, mais ils ont un résultat décent.
la source
S'il est assez bon pour susciter l'intérêt (et vous devrez supposer qu'il le sera, ou vous pouvez le quitter dès maintenant), et qu'il prend en charge le réseautage, la meilleure ligne de conduite pour ce genre de chose est:
Ce faisant, la partie difficile sera de permettre à l'IA d'être scriptée et utilisée de cette manière, et vous "externaliserez" simplement l'optimisation de l'IA réelle aux joueurs.
Cela vous donnera non seulement une meilleure intelligence artificielle, mais ajoutera également beaucoup de valeur au jeu lui-même!
la source