0% ont trouvé ce document utile (0 vote)
44 vues57 pages

IA Partie 1

Ce document traite de l'introduction à la représentation et à la résolution des problèmes en intelligence artificielle. Il présente l'historique de l'IA, ses sous-domaines et définitions clés, et décrit deux approches de représentation des problèmes: l'espace d'états et la réduction du problème.

Transféré par

Salma Hadded
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
44 vues57 pages

IA Partie 1

Ce document traite de l'introduction à la représentation et à la résolution des problèmes en intelligence artificielle. Il présente l'historique de l'IA, ses sous-domaines et définitions clés, et décrit deux approches de représentation des problèmes: l'espace d'états et la réduction du problème.

Transféré par

Salma Hadded
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 57

INTRODUCTION A LA REPRÉSENTATION RIAHI INES

[email protected]

ET A LA RÉSOLUTION DES PROBLÈMES A-U: 2023-2024

1
IA: HISTORIQUE
2
3
DÉFINITIONS
❖ Discipline étudiant la possibilité de faire exécuter par l’ordinateur des tâches pour
lesquelles l’homme est aujourd’hui meilleur que la machine” (Rich et Knight, 1990)
❖L’automatisation des activités associées au raisonnement humain, telles que la
décision, la résolution de problèmes, l’apprentissage, (Bellman, 1978)
❖L ’application de logiciels et de techniques de programmation mettant en lumière
les principes de l’intelligence en général, et de la pensée humaine en particulier
(Boden)
❖La science s’intéressant aux machines qui réalisent ce qui, fait par l’homme,
nécessiterait de l’intelligence» (Minsky).

4
HISTORIQUE DE L’IA
1943-1955 : Gestation de l’IA
❖premiers travaux de McCulloch et Pitts : un modèle de neurones artificiels.
❖Minsky, Edmonds : premier réseau de neurones.
❖Turing : le test de Turing.
1952-1969 : Espoirs
❖General Problem Solver ( Newell et Simon) : résoudre des puzzles simples avec un raisonnement
semblable au raisonnement humain.
❖Geometry Theorem Prover (Gelernter) : prouver certains théorèmes mathématiques
1966-1973 : Déceptions
❖la traduction automatique : pas de résultats en 5 ans. L’approche purement syntaxique n’étaient
pas suffisante il faut comprendre le texte. Annulation en 1966 de tout le financement du
gouvernement américain pour les projets de traduction automatique.
5
1969-1979 : Les Systèmes Experts
❖MYCIN : diagnostic des infections sanguines. Avec 450 règles, MYCIN réussissait à
diagnostiquer à un niveau proches des experts humains et meilleur que celui des jeunes médecins.
Depuis 1987 L’IA Moderne
L’intelligence artificielle est considérée comme discipline scientifique rigoureuse et formelle.

6
LES SOUS DOMAINES DE L’IA

7
❖Représentation des connaissances et Raisonnement Automatique : cette branche de l’IA traite
la représentation de connaissances floues, incomplètes, incertaines ainsi que la mise en œuvre
du raisonnement.
❖Résolution de problèmes généraux : algorithmes généraux pour résoudre des problèmes
concrets.
❖Traitement du langage naturel : compréhension et traduction du langage (écrit ou parlé).
❖Vision artificielle : capter et comprendre les images fixes et la vidéo
❖Robotique
❖Apprentissage automatique : programmes qui peuvent s’auto modifier en fonction de leur
expérience.
❖Jeux : en 1997, Deep Blue devient le premier programme à battre un champion du monde
d’échecs. Programmes IA de niveau expert aux dames, au backgammon, ou encore au bridge
❖Programme de reconnaissance d’écriture qui arrive à catégoriser les chiffres manuscrits avec
moins d’un pourcent d’erreur
8
INTELLIGENCE ARTIFICIELLE
Résolution de problèmes (algorithmique)
– Espaces de recherche & Planification
– Technique de « Back Track »
– CSP (prob satisfaction des contraintes)
– Algos de jeux
Représentation de connaissances (logique)
– Bases de connaissances
– Systèmes à règles
– Représentation de l’incertain
9
ET AUSSI….
Agents intelligents
– Modélisation/Programmation
– Perception/Communication
– Robotique

Apprentissage…

10
SEGMENTS DE
L’IA (2)

11
SEGMENTS DE L’IA

12
REPRÉSENTATION ET RÉSOLUTION
DES PROBLÈMES
13
INTRODUCTION
❖Un problème est une situation devant laquelle une personne ne voit pas directement la suite
d’actions à effectuer pour satisfaire un désir.
❖La résolution d’un problème est considérée comme une tâche de découverte ou de
construction d’un objet ayant des caractéristiques données.
❖La représentation et la résolution de problème par ordinateur exigent :

14
Définir un problème c’est choisir une abstraction de la réalité en termes:
❖Identification d’un état initial (donc choix d’un langage de description d’états du
problème)
❖Identification des actions possibles par définition d’opérateurs de changement
d’état (donc définition de l’ensemble des états possibles du problème)
La difficulté réside dans le
- Choix de la représentation
 Encodage: Le schéma d’encodage doit permettre d’exprimer et de manipuler non seulement des objets
solutions isolées mais aussi des sous-ensembles de solutions potentielles.
 Transformation

- Choix de la stratégie de contrôle: Il garantit la génération de tout encodage qui


représente la solution désirée si elle existe

15
REPRÉSENTATION PAR ESPACE D’ÉTATS
Une représentation d’un problème par une approche Espace d’Etats consiste à définir trois
ensembles :
❖ S : ensemble d’Etats de l’espace considérés comme des Etats initiaux,
❖G : ensemble d’Etats de l’espace considérés comme des Etats objectifs,
❖O : ensemble d’opérations de transformation permettant de passer d’un Etat à un autre.

Un Etat est un encodage d’un objet de l’espace permettant de définir le sous ensemble de
solutions (ensemble des Etats possibles) auquel il appartient ainsi qu’une description explicite
du sous problème restant.

16
Exemple de l’annuaire :
Encodage : NOM + NumTel
L’état objectif est Ines Riahi + 99 999 999
L’état initial : une ligne quelconque de l’annuaire
L’espace d’Etats est défini comme étant l’ensemble de tous les Etats que l’on peut obtenir en
exécutant une succession d’opérateurs de transformation.
Exemple du robot :
Déplacement d’un robot dans un espace limité
Encodage (x, y, z)
Si de plus on suppose que le robot ne se déplace que dans le plan (x, y) l’espace d’état (x, y, o)

17
Le graphe d’espace d’Etats est défini par les Etats de l’espace en tant que nœuds et les
opérations en tant que connexions ou arcs du graphe.
Si un problème n’admet pas de solutions cela peut être dû à l’un des trois clés suivant :
❖ Le problème n’admet pas dans la réalité de solution
❖ La représentation choisie est mauvaise
❖ La stratégie adoptée est non systématique

18
REPRÉSENTATION PAR RÉDUCTION DE PROBLÈME
Elle consiste à décomposer le problème initial en sous problèmes élémentaires ou composés.
Un sous problème est élémentaire si sa résolution est immédiate
Les transformations qui permettent d’effectuer une telle décomposition sont appelées des opérations
de décompositions.
La représentation nécessite la définition de trois entités :
❖Un encodage du problème initial
❖ un encodage des problèmes élémentaires ou primitifs
❖ une description des opérations de décomposition

19
L’espace des sous-ensembles de possibilités est représenté par un graphe
composé de deux types de liens (ou arcs) ;
1- des liens qui représentent les différentes approches dans la résolution du
problème courant
Liens OU
2- des liens qui associent un nœud problème parent à des sous problèmes
individuels dont il est composé :
Liens ET
On appelle ce type de graphe, un graphe Et / OU
Remarque : le graphe d’espace d’Etats est un cas particulier de graphes
ET/OU, (pas de liens ET)

20
Exemple: la Tour de Hanoi

21
Pb : déplacer les disques A,B,C de la quille i vers la quille k sachant qu’on ne peut
déplacer qu’un disque à la fois et qu’un disque plus grand ne peut pas être mis au
dessus sur un disque plus petit.
Nous allons essayer de résoudre le problème en adoptant l’approche de
représentation en réduction du problème
Il s’agit de déplacer n disques de tailles décroissantes de la quille i vers la quille k.

22
Nous allons commencer par définir les opérations de décomposition
PB à décomposer (pb1, pb2, …, pn N)
Pb élémentaire : déplacer un disque d’une quille à une autre sachant que la quille destination
contient un disque de taille plus importante ou aucun disque.
Condition : déplacer n disques de taille décroissante de la quille i vers la quille k :
Action : 3 sous problèmes
- déplacer une pile bien ordonnée de n – 1 disques de la quille i à la quille j
- déplacer un disque de la quille i à la quille k
- déplacer une pile (n – 1) disque de la quille j vers k
Encodage proposé (N, Quille départ, quille arrivée, quille initial)

23
24
25
QU’EST CE QU’UNE SOLUTION D’UN PROBLÈME
Une solution d’un problème défini par un graphe ET/OU (au sens large) est représentée par
un sous graphe ET/OU appelé graphe solutions qui a les propriétés suivantes :
1- il contient un nœud de départ
2- tous les nœuds terminaux du sous graphe (c’est à dire sans successeurs) sont des nœuds
résolus
3- s’il contient un lien ET, il contient le groupe entier des liens Et frères du lien en question

26
PERFORMANCE D’UNE STRATÉGIE DE RÉSOLUTION
La performance d’une stratégie de résolution se mesure selon quatre
points de vue
Complétude: la technique de résolution marche t’elle dans tous les cas?
Optimalité : la technique de résolution trouve t’elle une solution de coût
minimal?
Complexité: la technique est elle coûteuse en termes de temps et d’espace
mémoire

27
RÉSOLUTION DES PROBLÈMES
28
INTRODUCTION
Dans la plupart des problèmes d’intérêt pratique, le graphe entier de l’espace des
possibilités est trop grand pour être représenté et traité explicitement dans la
mémoire d’un ordinateur.
Ex : jeu de Dames 8 *8 a un graphe entier contenant de l’ordre de 10^40 nœuds
Un ordinateur qui générerait un tel graphe à la vitesse 310^9 nœuds / s mettrait
des siècles pour en venir about.

29
Idée solution :
Mettre en œuvre des stratégies de contrôle (ou de résolution ) capable de trouver un
(évent. Plusieurs si besoin) Graphe solution en explicitant seulement une petite partie
du graphe implicite.
- Graphe implicite : graphe total de toutes les possibilités qui peut être défini en
compréhension mais presque jamais en extension.
- Graphe explicite : graphe réellement générée par l’ordinateur à la recherche
d’une solution du Pb. = sous graphe du graphe implicite
- Graphe solution : sous graphe du graphe explicite

30
31
DÉFINITIONS
Chaque graphe que nous considérons aura un nœud unique appelé nœud de départ
Le nombre de successeurs provenant d’un nœud donné est appelé degré de branchement de
ce nœud noté b.
On supposera que les degrés de branchement de tous les nœuds dans nos graphes sont finis.
Cette classe de graphes est appelée classe des graphes localement finis.
Un arbre est un graphe dans lequel chaque nœud (sauf nœud racine) a seulement un parent.
Un nœud est dit généré si son encodage a été déterminé d’après son parent. Le parent est
qualifié de nœud exploré.
La génération de tous les descendants d’un nœud est appelé l’étape de développement le
nœud en question est dit développé.
Chaque nœud fils porte un pointeur vers son parent courant.

32
L’ensemble des nœuds d’un graphe implicite peut être à tout moment divisé en deux
sous ensembles :
❖les nœuds qui ont été développés : ss. ens. FERME
❖les nœuds qui ont été générés mais pas encore explorés ss.ens OUVERT

33
STRATÉGIES AVEUGLES: INTRODUCTION
Ces algorithmes sont ainsi nommés parce qu’ils ne disposent pas d’informations
supplémentaires pour pouvoir distinguer des états prometteurs

En l’absence de telles informations, ces algorithmes font une recherche exhaustive


de tous les chemins possibles depuis l’état initial.

34
STRATÉGIES AVEUGLES: PROFONDEUR D’ABORD
La stratégie retenue consiste à donner la priorité aux nœuds de niveaux les plus
profonds du graphe explicite.

Si un blocage à lieu, le processus reprend depuis le nœud le plus profond de tous les
nœuds laissés en arrière (c’est à dire depuis le point de décision le plus proche ayant
des branches non explorés).

35
STRATÉGIES AVEUGLES: PROFONDEUR D’ABORD
ALGORITHME
1. Mettre le nœud de départ dans OUVRET
2. Si OUVERT est vide, sortir avec Echec, sinon continuer
3. Enlever le nœud de la tête de OUVERT et le mettre dans FERME. appeler ce
nœud n
4. Développer n en générant tous ses successeurs. Mettre tous ces successeurs (en
ordre quelconque : recherche aveugle) au sommet de OUVERT (stratégie
profondeur d’abord ) et leur affecter à chacun un pointeur vers n.
5. Si l’un quelconque de ses successeurs est un nœud BUT, sortir avec la solution
obtenue en remontant à travers les pointeurs, sinon continuer.
6. Si l’un quelconque de ses successeurs est une impasse, l’enlever de OUVERT et
effacer FERME
7. Aller à 2
36
STRATÉGIES AVEUGLES: PROFONDEUR D’ABORD
C’est une stratégie qui cherche une solution au problème sans tenir compte d’aucune
contrainte.
Remarque :
❖L’opération « effacer Fermer » consiste à purger tous les ancêtres des nœuds en
cours de test et qui n’ont pas de fils dans OUVERT
❖ Il y a un problème de duplication possible des nœuds (dans le cas de cycle), pour
l’éviter, il faut vérifier si l’un quelconque des nouveaux successeurs générés
appartient déjà au chemin transversal et dans ce cas l’effacer OUVERT.

37
38
STRATÉGIES AVEUGLES: PROFONDEUR D’ABORD

39
STRATÉGIES AVEUGLES: LARGEUR D’ABORD
ALGORITHME
1.2.3 Identiques
4. développer n en générant tous ses successeurs, mettre tous ses successeurs (en
ordre quelconque : stratégie aveugle) à ;la fin de OUVERT (largeur) et leur affecter
chacun un pointeur vers n.
4 bis : si l’un quelconque de ses successeurs appartient au chemin transversal,
l’effacer alors OUVERT sinon continuer.
5.6.7. Identiques aux précédents

40
STRATÉGIES AVEUGLES: LARGEUR D’ABORD
Le parcours en largeur est un algorithme de recherche très simple : nous examinons d’abord l’état initial,
puis ses successeurs, puis les successeurs des successeurs, etc. Tous les nœuds d’une certaine profondeur
sont examinés avant les nœuds de profondeur supérieure. Pour implémenter cet algorithme, il suffit de
placer les nouveaux nœuds systématiquement à la fin de la liste de nœuds à traiter

Le parcours en largeur pour un arbre binaire simple. Nous commençons par l’état initial A, puis nous
examinons les nœuds B et C de profondeur 1, puis les nœuds D, E, F, et G de profondeur 2.

41
STRATÉGIES AVEUGLES: LARGEUR D’ABORD

42
STRATÉGIES AVEUGLES: LARGEUR D’ABORD
Remarque : on est sure avec cette méthode d’atteindre la solution s’il elle existe. C’est la
solution la plus courte du point initial.
1- Cette recherche est assuré de finir sur une solution, s’il en existe à condition d’être en
présence d’un graphe localement fini (chose qui n’est pas sûre avec la méthode en profondeur
d’abord car on peut tomber sur une branche infinie.
2- la solution trouvée est la moins profonde possible
3-la recherche gère non pas un seul chemin transversal mais toute la section qu’elle explore.
Ceci impose une capacité mémoire très importante.

43
STRATÉGIES INFORMÉES
❖Les algorithmes que nous avons vus font une recherche exhaustive de tous les
chemins possibles, ce qui les rend inefficaces voire inutilisables sur les problèmes de
grande taille.
❖Dans cette section, nous présentons les algorithmes de recherche heuristiques qui
utilisent des informations supplémentaires pour pouvoir mieux guider la recherche.
❖Tout algorithme de recherche heuristique dispose d’une fonction d’évaluation f qui
détermine l’ordre dans lequel les nœuds sont traités : la liste de nœuds à traiter est
organisée en fonction des f-valeurs des nœuds, avec les nœuds de plus petite valeur
en tête de liste.
❖A priori, il n’y a pas vraiment de restriction sur la nature de la fonction d’évaluation,
mais souvent elle a comme composante une fonction heuristique h ou
h(n) = coût estimé du chemin de moindre coût reliant n à un état but

44
STRATÉGIES INFORMÉES
RECHERCHE INFORMÉE EN PROFONDEUR D’ABORD (HILL CLIMBING)
Le principe est identique à la recherche aveugle en profondeur d’abord sauf que
l’exploration est dirigée par une évaluation de l’opportunité d’un nœud par rapport
à un autre en utilisant une heuristique.

45
STRATÉGIES INFORMÉES
RECHERCHE INFORMÉE EN PROFONDEUR D’ABORD (HILL CLIMBING)
ALGORITHME
1. Mettre le nœud de départ OUVERT
2. Si OUVERT est vide, sortir avec Echec, sinon continuer
3. Enlever le nœud de tête de OUVERT et le mettre dans FERME
4. Développer n en générant tous ses successeurs, mettre tous ses successeurs une fois
ordonnées (en utilisant la fonction heuristique) au sommet de OUVERT et leur
affecter chacun un pointeur vers n
4 bis : si l’un quelconque de ses successeurs appartient au chemin transversal, l’effacer
alors de OUVERT, sinon continuer.
5. 6. 7. de l’autre approche

46
STRATÉGIES INFORMÉES
RECHERCHE INFORMÉE EN LARGEUR D’ABORD (BEAM SEARCH OU
RECHERCHE EN FAISCEAU)
Le principe est identique à la recherche aveugle en largeur d’abord sauf que
l’exploration est dirigée par une évaluation de l’opportunité d’un nœud par rapport
à un autre en utilisant une heuristique, de plus parmi les successeurs d’un nœud seuls
les w meilleurs sont retenus, les autres sont élagués.

47
STRATÉGIES INFORMÉES
RECHERCHE INFORMÉE EN LARGEUR D’ABORD (BEAM SEARCH )
ALGORITHME
1.2.3. Identiques
4. développer n en générant tous ses successeurs mettre les w meilleurs successeurs
une fois ordonnés (en utilisant la fonction heuristiques) à la fin de OUVERT et leur
affecter chacun un pointeur vers n.
4 bis : 5.6.7. Identiques aux précédents

Cette approche est bonne quand l’heuristique est bonne pour éviter un nombre
considérable de nœuds générés. Elle est cependant dangereuse car l’élagation
peut laisser tomber des branches contenant des solutions.
48
STRATÉGIES INFORMÉES
RECHERCHE INFORMÉE DU MEILLEUR D’ABORD (BEST FIRST SEARCH)
Le principe est identique à la recherche informée en largeur d’abord sauf que
l’évaluation de l’opportunité d’un nœud par rapport à un autre en utilisant une
heuristique est effectuée sur l’ensemble des nœuds dans OUVERT.

49
STRATÉGIES INFORMÉES
RECHERCHE INFORMÉE DU MEILLEUR D’ABORD (BEST FIRST SEARCH)
ALGORITHME
1, 2, 3 identiques
4. développer n en générant tous ses successeurs, ajouter à chacun de ses successeurs un
pointeur vers n.
5. si l’un quelconque de ses successeurs est un nœud but, sortir avec la solution obtenue
en remontant à travers les pointeurs, sinon continuer.
6. pour tout successeurs n’ et n :
➢a- calculer l’évaluation heuristique en n’
➢b- si n’ n’est ni dans OUVERT ni dans FERME l’ajouter à OUVERT
➢c- si n’ figure dans OUVERT ou FERME, comparer la nouvelle évaluation heuristique à
l’ancienne. Si l’ancienne est inférieure ou égale, alors éliminer le nœud nouvellement généré,
sinon, substituer la nouvelle valeur à l’ancienne (s’assurer que le pointeur reste dirigé vers n) si
le nœud correspondant figure dans FERME, la remettre dans OUVERT.
➢d- Trier OUVERT
7. aller en 2
50
STRATÉGIES INFORMÉES
RECHERCHE INFORMÉE DU MEILLEUR D’ABORD (BEST FIRST SEARCH)
EXEMPLE

51
52
STRATÉGIES OPTIMALES
RECHERCHE COÛT UNIFORME (BRANCH AND BOUND)

Le principe consiste à progresser en couche de même coût il est donc important de se


donner une fonction coût f(n) qui ne fait qu’augment en valeur absolue.
Le coût d’un nœud n’ fils d’un nœud n est défini par :

53
STRATÉGIES OPTIMALES
RECHERCHE COÛT UNIFORME (BRANCH AND BOUND)
ALGORITHME
1.2.3.4.5 Identique au précédent
6. pour tout successeur n’ de n :
➢a- calculer f(n’)
➢b- si n’ n’est ni dans OUVERT ni dans FERME l’ajouter à OUVERT
➢c- si n’ figure déjà dans OUVERT ou FERME, comparer la nouvelle valeur à
l’ancienne. Si l’ancienne est inférieure ou égale, alors éliminer le nœud nouvellement
généré, sinon, substituer la nouvelle valeur à l’ancienne (s’assurer que le pointeur
reste dirigé vers n). si le nœud correspondant figure dans FERME, le remettre dans
OUVERT.
➢d- ordonner OUVERT
7. aller à 2
54
STRATÉGIES OPTIMALES
ALGORITHME A* (NILSON, 1971)

Le principe consiste à progresser en couche de même coût, sauf que la fonction f(n)
est maintenant composé de deux parties g(n) et h(n), g(n) est la valeur d’une fonction
coût réel de chemin allant du nœud de départ jusqu’à n. h(n) est l’estimation par une
fonction heuristique du chemin qui reste à parcourir de n au nœud objectif.
La fonction f(n’ ) fils d’un nœud n est défini par :

Avec h(n’) heuristique évaluant le chemin qui reste à parcourir et g(n’) : coût réel du
chemin parcouru

55
STRATÉGIES OPTIMALES
ALGORITHME A* (NILSON, 1971)
1 à 5 Identique au précédent
6. pour tout successeur n’ de n
➢a- calculer f(n’)
➢b- si n’ n’est ni dans OUVERT ni dans FERME l’ajouter à OUVERT
➢c- si n’ figure dans OUVERT ou FERME, comparer la nouvelle valeur de g(n’) à
l’ancienne. Si l’ancienne est inférieure ou égale, alors éliminer le nœud nouvellement
généré, sinon, substituer la nouvelle valeur à l’ancienne (s’assurer que le pointeur
reste dirigé vers n). Si le nœud correspond figure dans FERME, le remettre dans
OUVERT.
➢d- ordonner OUVERT suivant la fonction f(n)
7. aller à 2
56
57

Vous aimerez peut-être aussi