This is a ressource have being used for The iTronics AI Workshop.
It contains an introduction to Artificial Intelligence, and main methods to build intelligent Agent (Expert Systems, etc.).
2. DEFINITION
• L'intelligence artificielle peut nous aider, en créant un programme
informatique appelé système expert qui jouera le rôle de ce
professionnel
Contenu d'un système expert
Une base de règles qui représente les connaissances de l'expert.
Une base de faits qui représente les connaissances actuelles du système sur
un cas précis.
Un moteur d'inférences pour appliquer les règles.
Une interface avec l'utilisateur.
4. Base de règles
Ces règles sont toujours de la forme :
• SI (ensemble de conditions) ALORS nouvelle connaissance
• SI (ordre vaut 3 ) ALORS c'est un triangle
• SI (triangle ET 1 angle droit) ALORS c'est un triangle rectangle
• SI (triangle ET 2 côtés de même taille) ALORS c'est un triangle isocèle
• SI (triangle rectangle ET triangle isocèle) ALORS c'est un triangle
rectangle isocèle
• SI (triangle ET côtés tous égaux) ALORS c'est un triangle équilatéral
5. Base des faits
Les prémisses d'une règle peuvent être de deux types :
- Des connaissances sur le problème fournies par l'utilisateur du
système : ce sont les entrées.
- Des connaissances issues de l'application de règles : ce sont les
faits inférés.
6. Moteur d'inférences
• Par exemple, si on créé un système expert permettant de
reconnaître la faune et la flore d'une forêt et que l'on cherche à
savoir de quelle famille est un insecte trouvé, il ne sert à rien
d'essayer d'appliquer les règles concernant les arbres et les
buissons.
• C'est aussi le moteur d'inférences qui va ajouter les nouveaux faits
à la base de faits, ou y accéder pour vérifier qu'un fait est déjà
connu.
9. Étapes de construction d'un système
Extraction des
connaissances
Création du
moteur
d’inférence
Ecriture des
règles
Création de
l’interface
utilisateur
10. Pratique (le problème des « 8 reines » )
• Le but est de placer sur un échiquier (donc un damier de 8 * 8
cases), huit reines, qui ne doivent pas entrer en conflit, sans
s'intéresser aux couleurs des cases.
Deux reines sont en conflit si elles sont sur la même ligne ou la
même colonne, ou enfin sur la même diagonale.
11. Compréhension du problème
• Au total, il y a 92 positions possibles répondant au problème des 8
reines.
• Position possible des 8 reine on voit qu’il y a 64 possibilité par
reine car il y a 8x8 case.
• Cela nous amène donc à devoir tester 648 possibilités (soit plus
de 280 billions)
12. Solution
• On peut prendre en compte le fait que chaque reine doit être sur
une case différente des précédentes
• Ainsi, pour la première reine, on a 64 possibilités. Lorsque l'on
cherche à placer la deuxième reine, une case est déjà prise, il ne
reste donc que 63 cases possibles. Au lieu de 648 positions à
tester, on n'en a "plus que" 64 * 63 * 62 * 61 * 60 * 59 * 58 * 57.
• Ce calcul vaut encore plus de 170 billions, mais cela représente
déjà un gain appréciable (d'environ 37 %).
13. Solution
• Une réflexion un peu plus poussée peut nous mener à comprendre que
les reines doivent être dans des colonnes différentes. On cherche donc
pour chaque reine sur quelle ligne (parmi les 8 possibles) elle se situe.
• Il reste à tester "seulement" 88 possibilités, soit un peu moins de 17
millions de possibilités.
• Enfin, en prenant en compte le fait que les lignes sont, elles aussi,
différentes, on voit que si la première reine est placée sur la ligne 1,
la deuxième reine n'a plus que 7 lignes possibles pour se placer.
• On obtient alors 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 possibilités, que l'on notera
8! (factorielle 8) et qui vaut 40 320