Le système expert que nous fournissons dans le cadre de notre projet est disponible au téléchargement ci-dessous via la plateforme de partage de code GitHub.
Est également à disposition un document présentant intégralement et en détail (mais avec des résumés) la structure du code et son fonctionnement, en langage naturel.
Cette solution a pour but d’imiter les mécanismes de jeu d’un expert lors d’une partie des aventuriers du rail.
Il est important de noter que le programme est particulièrement efficace dans les phases de jeu préliminaires mais que les phases ultérieures n’ont pas pu être traitées dans leur entièreté.
En début de partie, on doit choisir des objectifs parmi 3 proposés : on utilise plusieurs critères pour discriminer la meilleure combinaison possible d'objectifs en début de partie : critères expert, heuristiques ou arbitraires.
Le Choix d'Objectifs en quelques points clés
Pour savoir quelles villes raccorder et dans quel ordre , nous avons pour cela implémenté un algorithme de Dijkstra qui en fonction du poids de chaque tronçon permet de trouver le plus court chemin reliant deux villes entre elles.
Lorsque les itinéraires calculés ne répondent pas à certaines conditions, on procède à des modifications sur les poids des tronçons.
L'homme (en jaune) et la machine (en rouge) lors du test de l'entretien 4
Le Calcul du Chemin Optimal en quelques points clés
Graphe illustrant l'évolution du poids des différents tronçons en fonction de leur taille
Pendant la partie, les itinéraires calculés initialement sont susceptibles de devenir obsolètes : aussi, à chaque tour de jeu, l'IA adapte son jeu, change ses priorités et complète ses objectifs.
Récapitulatif de l'Adaptation du Chemin
Pioche
Choix d’Objectifs
Couleurs
Gestion des Priorités
Calcul d'Itinéraire
Blocage & Prédiction