Mathématique et l’intelligence
artificielle
Programmation d’un adversaire artificiel pour le jeu Hex
Projet semestriel 2018-2019
Définition
L’Intelligence artificielle est ensemble des théories et des techniques développant des programmes
informatiques complexes capables d’imiter certains traits de l'intelligence humaine (raisonnement,
apprentissage…). Son but est de s’adapter aux tâches qui seront accomplies de façon plus
satisfaisante par des êtres humains car elles demandent des processus mentaux de haut niveau tels
que : l'apprentissage perceptuel , l'organisation de la mémoire et le raisonnement critiquée.
Historique
Dans les années 40 et 50, des scientifiques de divers domaines (mathématiques, psychologie,
ingénierie, économie et sciences politiques) ont commencé à discuter de la possibilité de créer un
cerveau artificiel. La cybernétique de Norbert Wiener décrit le contrôle et la stabilité dans les réseaux
électriques. La théorie de l’information de Claude Shannon décrit les signaux numériques (c’est-à-dire
des signaux tout ou rien). La théorie du calcul d'Alan Turing a montré que toute forme de calcul pouvait
être décrite numériquement. La relation étroite entre ces idées suggère qu’il serait possible de
construire un cerveau électronique. Ainsi, le terme IA était académiquement née.
Domaines d’application
L'intelligence artificielle a été utilisée (ou intervient) dans une variété de domaines
comme finance et banque (credit-scoring), militaire (drones, systèmes de
commandement), médecine (diagnostic), renseignement policier (prévention des
crimes et délits), droit, logistique et transports, et robotique.
Notre Projet
Le projet consiste à développer une exemple d’IA en utilisant les principes
d’apprentissage automatique et l’algorithme “Alpha-Beta Minimax”. Comme l’IA est
souvent remarqué dans les jeux de plateau (jeu d’échecs, de go, poker etc.), nous
allons créer un agent capable de rivaliser avec les humains dans le jeu classique Hex.
Hex
Le jeu se joue sur un tablier en forme de
losange dont les cases sont hexagonales.
Toutes les dimensions du côté du losange sont
possibles, la plus traditionnelle est celle
composée par 11 hexagones.
Les joueurs possèdent des pions à leur
couleur qu'ils disposent tour à tour sur
une case de leur choix et un par un. Le
tablier se remplit ainsi progressivement.
L'objectif d'un joueur, par exemple Bleu,
est de relier les deux côtés opposés du
losange symbolisés par la couleur
bleue. Si la configuration des pions
bleus permet la création d'une ligne
continue (en blanc sur la figure) reliant
un côté bleu à l'autre, Bleu a gagné et
le jeu s'arrête.
JUCE
Nous allons utiliser l’outil JUCE. C’est
un framework d'applications C ++ multi-
plateformes partiellement open-source,
utilisé pour le développement
d'applications bureautiques et mobiles.
C’est-à-dire, notre program écrit va être
compilé et il va fonctionner dans tous
les plateformes identiquement.