Intelligence Artificielle - nicowerner.free.frnicowerner.free.fr/cours/M1 IFA/Intelligence...

6
1 J.Korczak, ULP 1 Jerzy KORCZAK email : [email protected] http://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, observations acquisition et extraction de connaissances aide pour résoudre des problèmes difficiles aide aux experts à la découverte aide à 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” - 10 120 jeux possibles - 200 M positions analysées par seconde -“opening book & extended bookLa 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 Syst Syst Syst Systèmes mes mes mes multi multi multi multi-média dia dia dia 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 Trouver X Trouver Y Filtre de base Inondation + Convolution Extraction Normalisation + Codage Moment Vert Bleu Hue Saturation Intensité Réseau des neurones Apprentissage et Reconnaissance Visage Voix Base des données Décision Authentification Biométrique

Transcript of Intelligence Artificielle - nicowerner.free.frnicowerner.free.fr/cours/M1 IFA/Intelligence...

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