intelligence artificielle

34
Intelligence Intelligence artificielle artificielle

Upload: rhonda-cook

Post on 16-Mar-2016

62 views

Category:

Documents


1 download

DESCRIPTION

Intelligence artificielle. Plan du cours. 1.Généralités sur l’IA 2. Langages pour l’IA: LE_LISP, PROLOG Application: les Systèmes Expert 3. Les réseaux neuronaux Application: la reconnaissance des formes (lettres, chiffres). Généralités. -Définition -Objectifs de l’IA - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Intelligence artificielle

Intelligence artificielleIntelligence artificielle

Page 2: Intelligence artificielle

Plan du coursPlan du cours

1.Généralités sur l’IA

2. Langages pour l’IA: LE_LISP, PROLOG

Application: les Systèmes Expert

3. Les réseaux neuronauxApplication: la reconnaissance des formes (lettres, chiffres)

Page 3: Intelligence artificielle

GénéralitésGénéralités

-Définition-Objectifs de l’IA-Origine et développement-Domaines de recherche et d’application-Techniques et problèmes spécifiques-Langages pour l’IA-Comparaison IA/IN

Page 4: Intelligence artificielle

DéfinitionDéfinitionUne définition possible (parmi d’autres):

Ensemble de disciplines qui cherchent à reproduire techniquement certaines performances de l’intellect humain qualifiées d’intelligentes.

Exemples d’activités intelligentes:

- déduire des relations entre objets (ex: la causalité) - généraliser des relations –> déduire des lois (ex: F = m*a) - faire des abstractions à partir de données concrètes - apprendre par expérience (clé de voûte de l’intelligence)) - reconnaître des formes noyées dans le bruit (lettres, chiffres, photos etc) - faire des analogies (fonctionnelles ou structurelles) - avoir de l’intuition (compréhension rapide non détaillée) - créer des entités nouvelles douées de valeurs (art, inventions techniques)

Page 5: Intelligence artificielle

Spécificités de l’IASpécificités de l’IA

-l’IA est pluridisciplinaire (elle utilise les acquis de plusieurs disciplines)

psychologie,

neurologie,

logique, linguistique, automatique,

informatique,

mathématiques etc

donc une grande variété de concepts et de techniques

Page 6: Intelligence artificielle

Objectifs de l’IAObjectifs de l’IA

1. Réaliser des programmes et des dispositifs utiles -robots de plus en plus autonomes (explorations périlleuses) -traduction automatique -systèmes expert de diagnostic (médecine, technique) -reconnaissance des formes (lettres, chiffres, photos)

2. Etudier les mécanismes cérébraux -au niveau neuronal (réseaux neuronaux) -au niveau psychologique (l’IA symbolique)

Ces deux domaines sont liés et se complètent mutuellement

Page 7: Intelligence artificielle

Origines de l’AOrigines de l’A1. Penchant ancien de l’homme à créer des mécanismes autonomes - mécanismes naïfs (antiquité) -automates de Vaucanson (moyen âge) -régulateur de Watt (XX ème siècle)

2. Mécanismes électroniques doués d’autonomie -tortues de Grey Walter -perceptron de Rosenblatt

3. Essor de l’IA grâce à l’informatique (2ème moitié du XXème siècle) John McCarthy lance le terme AI (1956) – congrès USA

Page 8: Intelligence artificielle

DéveloppementDéveloppement1950 – 1960 - programmes pour la démonstration des théorèmes de géométrie et d’algèbre « THE LOGIC THEORIST »- programmes pour le traitement symbolique (non numérique) de l’information (IPL1 – père du LISP)

1960 – 1970- le traitement du langage; les grammaires formelles de CHOMSKY - la résolution des problèmes: programme GPS (General Problem Solver)

1970 – 1980- la représentation des connaissances- langages pour l’IA (LISP, PROLOG, PLANNER, CONNIVER etc)- systèmes expert (DENDRALL, MYCIN)- analyse des images, reconnaissance des formes- robots intelligents (à coordination œil-main)

-1980 -> développement de ces domaines

Page 9: Intelligence artificielle

Tendances actuellesTendances actuelles

On remarque deux tendances:

• L’IA symbolique qui développe des programmes qui « raisonnent » à l’instar des humains (logiques formelles, règles déductives du type SI…ALORS etc) - simulation de l’intelligence au niveau global, psychologique

. L’IA connexioniste qui imite le fonctionnement des réseaux neuronaux - simulation de l’intelligence au niveau neuronal

Page 10: Intelligence artificielle

Domaines de recherche actuels Domaines de recherche actuels Le traitement du langage naturel à différents niveaux: - morphologique (identifier les mots) - syntaxique (grammaire de la phrase) - sémantique (le sens de la phrase) - pragmatique (trouver l’action adéquate)

La reconnaissance des formes - reconnaissance de l’écriture - reconnaissance de la parole - communication fluide homme/machine

La gestion des incertitudes – modèles pour - la prise de décisions - la prévision

Les réseaux neuronaux (connexionisme) – modèles d’apprentissage

Les jeux intelligents –stratégies heuristiques (l’explosion combinatoire exclut une stratégie algorithmique pure)

Page 11: Intelligence artificielle

Techniques et problèmes spécifiquesTechniques et problèmes spécifiques

La représentation des connaissances -correspondance entre le monde externe et un système de symboles internes -difficultés: connaissances vagues, changeantes, incertaines, nonstructurées etc

Techniques de recherche des solutions -recherche dans l’espace d’états -recherche dans les systèmes déductifs à base de règles (SI…ALORS)

Techniques d’apprentissage

-utiliser l’expérience pour améliorer les performances (clé de voûte du comportement intelligent)

Page 12: Intelligence artificielle

Langages pour l’IALangages pour l’IA

Les langages classiques (Fortran, Cobol, C, Pascal etc) : traitement de l’information numérique -> calcul

Les langages pour l’IA (LISP, PROLOG, SMALLTALK, PLANNER, CONNIVER) : traitement de l’information symbolique -> raisonnement

Page 13: Intelligence artificielle

Comparaison IA / INComparaison IA / IN

Capacité et organisation de la mémoire mémoire individuelle < mémoire machine (Go) mémoire collective grande (bibliothèques, archives etc)

mémoire humaine: associative (plus performante) mémoire machine par adresses

Vitesse de calcul machine: 10^8 op/sec > homme: 1op/sec 20-30 LIPS (Logical Inference Per Second)

Langage langage humain: redondant, nuancé, flexible langage de programmation: concentré, rigoureux, figé

Spécificités de l’IN non acquises par l’IA versatilité, créativité, intuition, douée de valeurs

Page 14: Intelligence artificielle

Le test de TURINGLe test de TURINGpour comparer l’IA et l’INpour comparer l’IA et l’IN

Un humain ‘A’ communique par ordinateur et sans les voir avec B et C. S’il n’arrive pas à les identifier c’est que leur intelligence est pareille.

B C

A

humain machine

humain

Page 15: Intelligence artificielle

L’IA symboliqueL’IA symboliqueImite le raisonnement humain au niveau global

Basée sur les « logiques formelles » (règles du raisonnement logique)

Première étude de la logique humaine: ARISTOTE (philosophe grec - 300 av. J.C.)Logique « binaire » (deux valeurs de vérité: VRAI et FAUX)

Formalisation de la logique: G.BOOLE (mathématicien et logicien britannique – 1860)« l’algèbre de Boole » pose les bases de la logique mathématique .

Développement puissant des études de logique au 20ème siècle : - logique probabiliste (connaissances incertaines)- logique temporelle (tient compte du temps dans le raisonnement)- logique floue (plusieurs valeurs de vérité)

Page 16: Intelligence artificielle

La logique du premier ordreLa logique du premier ordre

John McCarthy propose en 1958 d’utiliser la logique formelle dans les programmes d’IA

La logique formelle étudie les règles du raisonnement. Elle comprend:

1. Le calcul des propositions (raisonnements élémentaires)

2. Le calcul des prédicats (raisonnements plus complexes)

Page 17: Intelligence artificielle

Le calcul des propositionsLe calcul des propositionsLe calcul des propositions est défini par:

-une syntaxe qui permet de construire des propositions correctes

-des règles d’inférence (de raisonnement) qui permettent de déduire de nouvelles vérités (SI fièvre ALORS maladie)

-une sémantique qui assigne des valeurs de vérité (VRAI,FAUX) aux propositions

-cinq connectifs logiques pour combiner les propositions:

ET noté Λ, & OU noté V NON noté ~, - IMPLIQUE noté EQUIVALENT noté =

Page 18: Intelligence artificielle

Exemple d’inférenceExemple d’inférenceen calcul des propositionsen calcul des propositions

Soient deux propositions:

A = je suis à Paris B = je suis en France

Formalisation:

SI A => B & SI A = T ALORS B = T

T = TRUE (VRAI)

Page 19: Intelligence artificielle

Le calcul des prédicatsLe calcul des prédicats

-Le prédicat représente une relation entre des termes. Exemple: va (jean, mer) (jean va à la mer) va (jean, mer) V va (jean, montagne) (jean va à la mer ou à la montagne)

-Le calcul des prédicats introduit la notion de variable et les quantificateurs:

variable : symbole qui peut prendre diverses valeurs : quantificateur existentiel ; x (il existe un x) : quantificateur universel ; x (quel que soit x)

Exemples: (x) éléphant ( x ) couleur ( x, gris ) (tous les éléphants sont gris)

(x) (y) SI père (x, y) & père (y, z) ALORS grand-père (x, z) (SI x est le père de y ET y le père de z ALORS x est le grand-père de z)

Page 20: Intelligence artificielle

Application du calcul des prédicats Application du calcul des prédicats au déplacement des cubesau déplacement des cubes

a

c

b

État initial

b

c

a

État final

Page 21: Intelligence artificielle

Définition des étatsDéfinition des états

Pour définir les états on utilise les prédicats « sur » et « libre »

L’état initial:sur (c, a) Λ sur (a, table) Λ sur (b, table) Λ libre (c) Λ libre (b)

L’état final:sur (a, b) Λ sur (b, c) Λ sur (c, table)

Page 22: Intelligence artificielle

Les règles de déplacementLes règles de déplacement

Pour définir les règles on ajoute les prédicats « ôter » et « empiler ».

Règle1: (pour vérifier qu’un cube est libre)

(x) [ libre x ( y ) sur ( y, x ) ] (si un cube est libre il n’existe aucun cube sur lui)

Règle2: (pour ôter un cube)

sur ( y, x ) Λ ôter ( y, x ) libre ( x ) et sur ( y, x ) Règle3: (pour empiler un cube)

libre ( x ) Λ libre ( y ) Λ empiler ( y, x ) sur ( y, x )

Page 23: Intelligence artificielle

Stratégie pour atteindre « l’état final »Stratégie pour atteindre « l’état final »L’état final: sur (a, b) Λ sur (b, c) Λ sur (c, table)

-Essai de satisfaire la première clause: sur (a, b) (premier but)

-Application de R3 avec: x=a, y=b -conditions de R3: libre (a ), libre (b), empiler (a, b) (sous buts) -sous but1: libre ( a ) R1 montre que ‘a’ n’est pas libre - pour libérer ‘a’ -> R2 (avec x = a) : sur ( y, a ), ôter ( y, a ) - sur ( y, a ) est établi avec y = c (état initial) -exécuter - ôter ( c, a ) (première commande) -on obtient: libre ( a ) et (libre c) -on a déjà: libre ( b ) (état initial) -exécuter : empiler ( a, b ) (deuxième commande) on obtient :

b

ba

c

a

c

a

bcÉtat initial

État intermédiaire

Page 24: Intelligence artificielle

SuiteSuite-Essai de satisfaire la deuxième clause: sur( b, c )

-On applique R3 avec x = b, y = c -sous buts de R3: libre ( b ), libre ( c ), empiler (b, c ) -R1 montre que ‘b’ n’est pas libre, donc: -R2: ôter (a, b ) défaire l’action précédente on obtient : libre ( b )-on vérifie libre ( c ) avec R1 et on exécute : empiler(b,c) -on exécute: empiler (a,b).

b

a

ccc

a

b

État intermédiaireEtat final

Page 25: Intelligence artificielle

ConclusionConclusion

L’ordre d’exécution des sous buts n’est pas indifférent

D’abord sur (c, table ) ensuite sur( b, c ), ensuite sur (a, b).

Il faut des informations supplémentaires (des métaconnaissances)

Exemple de métaconnaissances : attaquer d’abord les buts de bas niveau

Sinon attaquer les buts par une démarche aveugle qui parvient au but si toutes les possibilités sont explorées (démarche plus longue)

Page 26: Intelligence artificielle

Représentation Représentation dans l’espace d’étatsdans l’espace d’états

L’état d’un système est donné par l’ensemble de ses (n) paramètres.

C’est un point dans un espace à n dimensions – l’espace d’états.

Exemples: pour n=2 -> un point dans le plan défini par deux coordonnées (x,y) pour n=3 -> un point dans l’espace (naturel) à trois dimensions (x,y,z)

.

x

y

x

y

z

Page 27: Intelligence artificielle

Recherche dansRecherche dans l’espace d’etats l’espace d’etats

Un opérateur change l’état du système (déplace le point dans l’espace d’états).

Résoudre un problème c’est

explorer l’espace d’états

pour trouver le chemin qui mène de l’état initial à l’état final (état cible).

Si plusieurs chemins, la solution optimale c’est trouver le chemin de moindre coût

(le coût dépend du problème: distance, vitesse, argent etc).

Page 28: Intelligence artificielle

Exemple: Exemple: le labyrinthele labyrinthe

entrée

sortie

1 2 3 4

4

3

2

1

but

départ

Etat du problème: position de la personne X (les coordonnées)état initial: (1,1)état final: (4,4)points d’intersection: (2,2) (2,3) (2,4) (3,1) (3,2) (3,3) (3,4)impasse: (1,4)opérateur: déplacement de XIl y a plusieurs chemins possibles (lesquels ?)

x

Page 29: Intelligence artificielle

Représentation des cheminsReprésentation des cheminspar un graphepar un graphe

Nœud de départ

Nœud cible

1

2,2

2,3

1,4

4,4

3,3

12

3,1

1

2,4

3,2

11

3,4

1,1

2

1

1

1

1

Page 30: Intelligence artificielle

Le jeu de taquinLe jeu de taquin

6 opérateurs

2 3

1 4

7 5

1 2 3

4

567

8

État initial Etat final

-Quels sont les opérateurs ?-Quelles sont les pré-conditions ?

8

Page 31: Intelligence artificielle

Opérateurs et pré-conditionsOpérateurs et pré-conditions

OPERATEURS PRE-CONDITIONS

• Déplacer la case vide vers le haut Il y a un pion au-dessus

• Déplacer la case vide vers le bas Il y a un pion au-dessous

• Déplacer la case vide vers la gauche Il y a un pion sur la gauche

• Déplacer la case vide vers la droite Il y a un pion sur la droite

Page 32: Intelligence artificielle

Stratégies de contrôle (techniques de recherche)

-choisir la succession des opérateurs à appliquer-vérifier si les pré-conditions sont satisfaites-mémoriser les règles qui ont été appliquées-reconnaître l’état final (le but)

La sélection des opérateurs peut être:-arbitraire: recherche aveugle, aléatoire, par essais et tâtonnements (recherche dépourvue d’information)guidée par un algorithme (information supplémentaire - métaconnaissances)-recherche systématique (en profondeur ou en largeur)-recherche guidée par une fonction d’évaluation d’un paramètre (exemple: le coût)

Page 33: Intelligence artificielle

Recherche systématique Recherche systématique (verticale ou horizontale)(verticale ou horizontale)

S

A B

C D E F

H G

L’ordre de recherche verticale: S, A, C, D, B, E, H, G (8 noeuds explorés)Recherche horizontale: S, A, B, C, D, E, F, H, G (9 nœuds explorés – un de plus)

Nœud but

Nœud source

Page 34: Intelligence artificielle

Recherche de la solution optimaleRecherche de la solution optimale

Le paramètre à optimiser est ici le coût du transport (marqué sur les arêtes);

S

A B

C D E F

H G

Le chemin de coût minimum: S, B, F, G

Nœud but

Nœud source5

1

2

3 1 3

2 4 1