Upload
vutram
View
240
Download
0
Embed Size (px)
Citation preview
1
J.Korczak, ULP 1
Jerzy KORCZAK
email : [email protected]://lsiit.u-strasbg.fr/afd
INTELLIGENCE ARTIFICIELLE
J.Korczak, ULP 2
Intelligence Artificielle
Haton J.P. et al.(1991) : Le raisonnement en intelligence artificielle, InterEdition.
Russell S.J., Norvig P., (1995) : Artificial Intelligence : A Modern Approach, Prentice Hall.
Winston H.P., Horn, B.K.P. (1992): Artificial Intelligence, Addison-Wesley, 3rd Ed.
Artificial Intelligence is … the study of the computations that make it possible to perceive, reason, and act [P.Winston]
- the engineering goal of AI is to solve real-world problems
- the scientific goal : models of KR, theory of reasoning,...
Systèmes intelligents : machines adaptatives apprentissage à partir d’exemples, observationsacquisition et extraction de connaissances aide pour résoudre des problèmes difficilesaide aux experts à la découverteaide à la décision : conseil, expertise et explications...
J.Korczak, ULP 3
Tests d’intelligence : est-ce possible ?
A real-lifeTuring test: An interviewer (sitting in a separate room) asks a
series of questions that are randomly directed to either a computer or a person. Based on the answers, the interviewer must distinguish
which of the two has answered the question. If the interviewer is not
able to distinguish between them, then the computer is intelligent.
Prix de Loebner ($100,000) … et M. Minsky
Les échecs : “Deep Blue vs G.Kasparow 3.5 : 2.5”
- 10120 jeux possibles
- 200 M positions analysées par seconde
- “opening book & extended book”
La communauté IA n’évalue pas les programmes par leur résultats,
mais par la complexité interne de leurs algorithmes.
J.Korczak, ULP 4
Des PERCEPTRON aux systèmes intelligents hybrides
• Systèmes auto-adaptatifs Perceptron [Rosenblatt,1958], Adaline [Widrow, 1962]
• Le premier joueur artificiel : Checkers [Samuel, 1963]
• Systèmes orientés aux tâches: DENDRAL, MYCIN, AQVAL [1970 -]
• Représentation de connaissances : frames [Minsky, 1975]
• Multilayer-Perceptron, cartes de Kohonen, ... [Rumelhart, 1985]
• Evolution artificielle [Holland, Goldberg, 1989]
• Apprentissage multi-stratégique [Michalski, 1990]
• KDD, fouilles de données, agents intelligents [1995 -]
• Web-sémantique, authentification biométrique [1998 -]
• Robots intelligents, «maisons intelligentes», …
• Robo sapiens, a-life, …
J.Korczak, ULP 5
SystSystSystSystèèèèmes mes mes mes multimultimultimulti----mmmméééédiadiadiadia
J.Korczak, ULP 6
IdentitéAccepter,Rejeter
w1
w2
Effacer les silences
Transformation de l’ondelette
C0 C1 C2 C3 C4 C5 C6 C7
C9 C10 C11 C12
C13 C14
C15
Fré
quence
Temps
Normalisation+ Codage
Réseau des neurones
Apprentissage et Reconnaissance
Détection des yeux
Ave rag e In ten si ty o f ea ch ro ws
-50
0
50
1 00
1 50
2 00
2 50
0 1 0 2 0 3 0 4 0
Gre y Sca le
Inte ns ity
-5 0
0
5 0
1 0 0
1 5 0
2 0 0
2 5 0
0 1 0 2 0 3 0 40 50
In ten s ity
TrouverX
TrouverY
Filtrede base
Inondation +Convolution
Extraction
Normalisation+ Codage
Moment
Vert
Bleu
Hue
Saturation
Intensité Réseau des neurones
Apprentissage et ReconnaissanceVisage
Voix
Base des données
Décision
Authentification Biométrique
2
J.Korczak, ULP 7
Tomographie de terrain
Radar tomography: Underground images of the area WTC [Witten, JPL]
J.Korczak, ULP 8
ClassifieurClassifieurClassifieurClassifieur éééévolutif dvolutif dvolutif dvolutif d’’’’images de timages de timages de timages de tééééllllééééddddéééétectiontectiontectiontection
SI
ALORS
J.Korczak, ULP 9
Robots
Autonomous Robots in
Dynamic, Unstructured
Environments,USC Robotics Lab
J.Korczak, ULP 10
FIDO
FIDO Rover [NASA/JPL]
Field Integrated Design and
Operations
J.Korczak, ULP 11
BourseBourseBourseBourse----Experts : Aide Experts : Aide Experts : Aide Experts : Aide àààà la dla dla dla déééécision en temps rcision en temps rcision en temps rcision en temps rééééelelelel
J.Korczak, ULP 12
Art Évolutif : Système EVA http://lsiit.u-strasbg.fr/afd
3
J.Korczak, ULP 13
ParcoursParcoursParcoursParcours dddd’’’’un un un un graphegraphegraphegraphe : : : : jeujeujeujeu Puissance4Puissance4Puissance4Puissance4
Le but du jeu est de former un alignement
de quatre jetons avant son adversaire.
Alpha-Beta est un algorithme dérivé de Min-Max.
J.Korczak, ULP 14
Intelligence Artificielle
Cours : J. Korczak (16h), P. Gançarski (2h)
mercredi, Bat. J, 8h30-11h30 (18h)
TD/TP : P. Gançarski (18h/6h)
Contenu :
1. Introduction et méthodes de recherche de solution
2. Logique et représentation de connaissances
3. Systèmes experts
4. Réseaux de neurones et évolution artificielle
5. Agents intelligents
6. Applications
J.Korczak, ULP 15
Algorithmes de parcours dAlgorithmes de parcours dAlgorithmes de parcours dAlgorithmes de parcours d’’’’un espace de rechercheun espace de rechercheun espace de rechercheun espace de recherche
• Recherche en profondeur d’abord (DFS) et en largeur (BFS)
• Hill Climbing (descente de gradient)
• Recherche heuristique :
- en profondeur ordonnée, en faisceau, du meilleur premier
• Algorithme A* , IDA*, SMA*
• Recherche concurrentielle : jeux
– MIN-MAX, élagage α−β, approfondissement progressif
Propriétés • Complétude
• Complexité en temps
• Complexité en espace
• Optimum
J.Korczak, ULP 16
Exemple: Trouver un chemin de S à G
S
D
A B C
E F
G
3
4
4 4
5 5
2 43
J.Korczak, ULP 17
Parcours en profondeur (ang. Depth-First Search, DFS)
F
A
C
E
EB
B
F
B
D
A
E
D
C
A
C
G
S
G
GF
D
B C
FE
G
13
15
15
25
17
17
19
19
1114
4
2
43
J.Korczak, ULP 18
Parcours en largeur
PL(G)
couleur[s] � GRIS
Pour chaque sommet u de G, u≠s faire couleur[u] � BLANC
F � {s}
Tant que F≠ ∅ faireu � SUPRESSION(F)
Pour chaque voisin de v de u faire
si couleur[v]=BLANC
alors couleur[v] � GRIS
INSERTION (F,v)
couleur[s] � NOIR
4
J.Korczak, ULP 19
Parcours en largeur (ang. Breadth-First Search, BFS)
F
A
C
E
EB
B
F
B
D
A
E
D
C
A
C
G
S
G
GF
D
B C
FE
G
13
15
15
25
17
17
19
19
1114
4
2
43
5
J.Korczak, ULP 20
Algorithmes de parcours dAlgorithmes de parcours dAlgorithmes de parcours dAlgorithmes de parcours d’’’’un espace de rechercheun espace de rechercheun espace de rechercheun espace de recherche
0
500
1000
1500
2000
2500
Profondeurd'abord
Heuristique
Nœuds explorés
Taille du chemin
J.Korczak, ULP 21
Recherche heuristiqueRecherche heuristiqueRecherche heuristiqueRecherche heuristique
Les algorithmes de recherche heuristique utilisent l’information disponible pour rendre le processus de recherche plus efficace.
heuristique : une règle ou une méthode qui permet d’évaluer la chance qu’un chemin allant du nœud courant au nœud solution soit meilleur que les autres.
J.Korczak, ULP 22
Fonction heuristique
Fonction heuristique : h : E→→→→R- fait correspondre à un état s ∈∈∈∈ E (espace d’états) un
nombre h(s) ∈∈∈∈ R qui est une estimation du rapport
coût/bénéfice de suivre un chemin vers la solution
qui passe par l’état dans EPropriété :
h(solution) = 0Exemple :- le nœud A a 3 successeurs
pour lesquels :
h(s1)=0,8 h(s2)=2,0 h(s3)= 1,5- la poursuite s1 est la meilleure
A
s1 s2 s3
J.Korczak, ULP 23
W=2 A
Recherche heuristique par faisceau (ang. beam search)
F
A
C
E
EB
B
F
B
D
A
E
D
C
A
C
G
S
G
GF
D
B C
FE
G
13
6,710,4
6,910,4
8,9
6,9
8,9
6,7
3,0
0,0
J.Korczak, ULP 24
Algorithme par sAlgorithme par sAlgorithme par sAlgorithme par sééééparation et paration et paration et paration et éééévaluationvaluationvaluationvaluation
Algorithme par séparation et évaluation (branch and bound) est une méthode d'énumération implicite: toutes les solutions possibles du problème peuvent être énumérées mais, l'analyse des propriétés du problème permet d'éviter l'énumération de larges classes de mauvaises solutions.
Dans un bon algorithme par séparation et évaluation, seules les solutions potentiellement bonnes sont énumérées.
5
J.Korczak, ULP 25
Recherche Recherche Recherche Recherche branchbranchbranchbranch----andandandand----boundboundboundbound
B
D7
8
3A
B
F
A
E
D
G
S
13
4
6
9
10
nœud actif
J.Korczak, ULP 26
Recherche gourmande (ang. greedy search)
Stratégie la plus simple du BFS
h(n) = estimation du coût du nœud n au but
consiste à minimiser le coût estimé pour atteindre le but
- le nœud qui semble être le plus proche sera étendu en
priorité
Fonctions heuristiques classique
- distance à vol d’oiseau
- distance Manhattan
J.Korczak, ULP 27
Algorithme par sAlgorithme par sAlgorithme par sAlgorithme par sééééparation et paration et paration et paration et éééévaluationvaluationvaluationvaluation
SéparationLa phase de séparation consiste à diviser le problème en un certain nombre de sous-problèmes qui ont chacun leur ensemble de solutions réalisables de telle sorte que tous ces ensembles forment un recouvrement de l'ensemble S. Ainsi, en résolvant tous les sous-problèmes et en prenant la meilleure solution trouvée, on est assuréd'avoir résolu le problème initial.
ÉvaluationL'évaluation d'un nœud de l'arbre de recherche a pour but de déterminer l'optimum de l'ensemble des solutions réalisables associéau nœud en question ou, au contraire, de prouver mathématiquement que cet ensemble ne contient pas de solution intéressante pour la résolution du problème.
A un nœud donné, l'optimum du sous-problème peut être déterminélorsque le sous-problème devient suffisamment simple. Dans d'autres cas, il arrive que par le jeu des séparations, on arrive à un sous-problème dans lequel les décisions difficiles ont été prises et qui peut ainsi être résolu en temps polynomial.
J.Korczak, ULP 28
Recherche heuristique et estimations Recherche heuristique et estimations Recherche heuristique et estimations Recherche heuristique et estimations minorantesminorantesminorantesminorantes
Longueur totale du chemin = dist.déjà parcouru) + E(distance restante)
Une sous-estimation ���� d(n)≤d*(n) (distance à vol d’oiseau(
A
B
F
A
E
D
G
S
13,0
12,9
12,9
19,4
13,0
13,4
17,7
J.Korczak, ULP 29
Algorithme A*Algorithme A*Algorithme A*Algorithme A*
Idée : minimiser le coût total f(n) du chemin passant par le nœud n
f(n) = d(déjà parcouru) + d(à parcourir) = g(n) + h(n)
Sous-estimation h(n)∀∀∀∀n h(n) <= h*(n) avec h*(n) = coût réel depuis n jusqu’au but
Variantes de A*- IDA* =>A* avec approfondissement itératif
(étend tous les nœuds à l’intérieur d’un contour délimité par la valeur courante de la limite)
- SMA* => A* avec gestion de mémoire(si la mémoire est pleine, alors faire de la place en éliminant
le nœud le moins intéressant)
J.Korczak, ULP 30
Algorithme A* : 8Algorithme A* : 8Algorithme A* : 8Algorithme A* : 8----puzzlepuzzlepuzzlepuzzle
Idée : minimiser le coût total f(n)
f(n) = d(déjà parcouru) + d(à parcourir) = g(n) + h(n)
Sous-estimation h(n)
∀∀∀∀n h(n) <= h*(n) avec h*(n) = coût réel depuis n jusqu’au but
1 4
2 5
7
3 6
8
2
4 8
3 5 6
1 7
2
4 8
3 5 6
1
7
8
2
4
3 5 6
1 7 2
4 8
3
5
6
1 7 2
4 8
3 5 6
1 7
1+5=6 1+6=7 1+4=5 1+5=6
2
4 8
3
5
6
1 7 2
4 8
3
5
6
1 7
2+3=5 2+5=7
SolutionStart
6
J.Korczak, ULP 31
Les heuristiquesLes heuristiquesLes heuristiquesLes heuristiques
La fonction heuristique h:E→→→→ R fait correspondre à un état s∈ E un nombre h(s) ∈ R qui est une estimation du rapport coût/bénéfice de suivre un chemin vers la solution qui passe par l’état s dans E.
Exemples :
• nombre de points mal placés
• somme des distances de Manhattan
• 3 fois seq(n) où seq(n) vaut 1 pour un point central et vaut 2 pour un pion sur un périmètre de l’échiquier qui n’est pas suivi (dans le sens des aiguilles) par son propre successeur
J.Korczak, ULP 32
Algorithme de recherche A*
J.Korczak, ULP 33
Algorithme A*Algorithme A*Algorithme A*Algorithme A*
La procédure de choix afin de pouvoir décider du meilleur choix à faire dans la stratégie de recherche.Soit k(ni,nj) le coût minimal pour passer du noeud ni au noeud nj.
Soit n0 la racine de l'arbre et G la solution, on définit g*(n) et h*(n) par :
g*(n) = k(ni,n) ; le coût min actuel
h*(n) = k(n,G) ; l’estimation heur.
du coût pour aller du sommet n à la solution G.
Le coût de la solution passant par le nœud n est
f*(n) = g*(n) + h*(n)
J.Korczak, ULP 34
J.Korczak, ULP 35
A* : complétude et optimalité
Complétude : oui sauf s’il y a un nombre infini de nœuds avec une valeur de f≤f(G), G:but
Complexité en temps : exponentielle
Complexité en en espace : garde tous les nœuds en mémoire
Optimalité : oui