View
120
Download
7
Category
Preview:
Citation preview
Méthodes numériquesd’Intelligence Artificielle
Cours de 5ème polytech
Hugues Bersini + IRIDIA
Introduction et plan du cours
• Qu’est ce que l’IA ??
• C’est le domaine de l’informatique qui étudie comment faire faire à l’ordinateur des tâches pour lesquelles l’homme est encore aujourd’hui le meilleur
• C’est donc une investigation à visage humain qui inclut dans son champ d’étude tous les processus mentaux et moteurs humains:– Perception, motricité, langage, créativité,apprentissage,raisonnement,
émotion
• Cette définition ne résoud pas la tension existante entre l’IA comme sciences cognitives et l’IA comme science de l’ingénieur.
• Ces deux visions s’influencent et s’alimentent mutuellement.
• C’est une définition opérationnelle. Les performances doivent s’observer Le test de Turing
• Est-ce suffisant ?? Eliza, Searle, la chambre chinoise
• C’est une définition évolutive. L’IA d’aujourd’hui n’est ni l’IA d’hier ni celle de demain.
• L’IA symbolique: systèmes experts, base de connaissance, représentation, frame, scripts, les logiques, résolution de problèmes, plannification,…
• Aujourd’hui, le retour à une IA de type biologique: réseaux de neurones, robotique, apprentissage par renforcement, algorithmes génétiques,…
• IA distribuée, multi-agents, intelligence collective, émergente
Bref historique
• 1956 – naissance de l’expression « Intelligence Artificielle » à la conférence de Dortmouth
• Avant Dortmouth: les courants dominants pour comprendre l’intelligence:– La neurophysiologie: Mc Culloch, Rosenblat, Von Neuman
intelligence = hardware neuronal sophistiqué, parallèle, adaptatif
– La cybernétique: Wiener, Von Foester, Van Bertanlanfy. La systémique, la science du comportement moteur feedback et théorie du contrôle
– Le behaviorisme en psychologie: Watson, Skinner, apprentissage par renforcement, conditionnement, « reward, punishment »
– Mais un petit ilot de resistance symbolique: Boole (les lois de la pensée), Turing (la machine de Turing, la définition opérationnelle de l’IA), Gödel et l’incomplétude et la théorie de l’information de Shannon
• A Dortmouth:– Newell et Simon présente le GPS qui démontre des théorèmes
logiques– Samuel présente un logiciel capable d’apprendre à jouer aux
échecs– Grand enthousiasme pour l’automatisation des jeux– Mc Carthy présente le langage LISP pour la manipulation
symbolique et propose l’expression: Intelligence Artificielle– Minsky critique très virulamment l’approche neuronale dans un
livre intitulé le « perceptron »– La psychologie redécouvre le « cognitivisme » en alternative au
« behaviorisme » avec des auteurs comme William James, Bartlett et Jean Piaget: Poussée très forte du « symbolisme »
Naissance de l’IA symbolique
• Le support matériel de l’intelligence n’est pas important
• Il suffit d’un système capable de manipulations symboliques: qu’il soit neuronal ou en sillicium, c’est la logique de fonctionnement qui compte et non la matérialisation de cette logique
• L’intelligence est logique et déductive
• L’IA devient essentiellement axèe sur la représentation et le traitement des connaissances et développe ses systèmes à partir d’un principe fondamental:– Un système intelligent = Un moteur de raisonnement universel appliqué
sur des connaissances diverses ( propres à l’application) Systèmes experts, Prolog, représentation des connaissances, logique classique et non classique ..
the water jugs
• The problem: There are two jugs of water but with no indication on quantity. One has a maximal capacity of four litres, the other of three litres. How to exactly get two litres in the four litres jug.
• How to resolve it:– First describing the states: (x,y)
– The initial state is (0,0) and the final one (2,n)
– Then a set of operators allowing to evolve the world:
The set of operators
• (x<4,y) (4,y) fill up the first
• (x,y<3) (x,3) fill up the second
• (x>0,y)(0,y) empy the first
• (x,y>0)(x,0) empty the second
• (x+y>4,x<4)(4,y-(4-x)) fill x with part of y
• (x+y>3,y<3)(x-(3-y),3) fill y with part of x
• (x+y<4,y>0)(x+y,0) empty y in x
• (x+y<3,x>0)(0,x+y) empty x in y
The inferential engine
• Find the operators that can be applied: their pre-conditions need to match the current state of the world
• Select one the control strategy: – In depth or in width, with heuristics or not
• Avoid looping
• Be able to backtrack
• Do that iteratively until to find the final state
• The solution in a planning problem is the sequence of operators. Often the shortest if you find several solutions.
(0,0)
(0,3)
(3,0)
(3,3)
(4,2)
(0,2)
(2,0)
Operators
2
7
2
5
3
7
Les jeux et la stratégie min-max
Figure 3 : Deux parties de tic-tac-toe. En haut, la partie est remportée par le joueur
qui marque les ronds. En bas, l’issue classique de ce jeu : l’égalité.
Figure 4 : La stratégie « Min-Max » mise en œuvre pour un ordinateur jouant les croix. A chaque niveau de l’arbre, c’est alternativement la valeur minimum puis maximum des valeurs heuristiques qui suivent dans le niveau successif qui se trouve retenue. Dans le cas présent, l’ordinateur décidera finalement de mettre une croix au milieu (car c’est la valeur maximale des configurations de jeu).
Années 80 et les pierres d’achoppement
• L’homme n’est pas qu’un cerveau pensant désincarné et « sorti » du monde
• Sa pensée et un processus actif, participatif, dans ses interactions au monde. La pensée prend souvent naissance dans un blocage comportemental, une rupture motrice innatendue.
• L’homme est d’abord agissant, interagissant puis pensant, dans son quotidien, dans sa vie et aussi dans « l ’histoire de l’évolution ».
• La naissance des représentations est fortement ancrée dans les mécanismes sensori-moteurs ayant lieu dès la naissance et sont fortement conditionnés par ceux-ci. Il est difficile de capturer tout le sens d’un concept sans une mise en pratique de ce concept ou de l’objet que ce concept désigne
• Se limiter aux seules facultés cognitives est soit une voie tronquée mais possible ou, pour les plus radicaux, une voie impossible
Réveil du neuronal, de la cybernétique, du biologique et du behaviorisme
• Retour de l’IA d’avant Dortmouth• Comprendre les interactions sensori-motrices au monde n’est possible
qu’au prix d’une meilleur compréhension de nos « interfaces biologiques »
• A commencer par le support matériel des ces interfaces• Ce support biologique a des aspects intrinsèques qui rendent ces
interactions possibles:– Parallèlisme– Emergence: la coopération de multiples processus simples peut engendrer
à un nouveau niveau d’observation des fonctionnalités « émergentes » intéressantes
– Apprentissage: la complexité de ces systèmes est tel qu’ils doivent pouvoir se cabler ou se coder d’eux même en résultat à leur fonctionnement.
Les nouveaux courants
• Réseaux de neurones• Informatique évolutionniste: algorithme et
programmation génétique• Robotique autonome• Robotique animale• Apprentissage par renforcement• Vie artificielle• Intelligence collective• Simulations biologiques
De nouvelles pratiques ingéniéristes
• Réseaux de neurones: data mining, traitement du signal, régulation non-linéaire
• Informatique évolutionniste: optimisation réelle et combinatoire, programmation automatique, créativité artistique
• Robotique autonome: robotique plus réaliste, dans un environnement moins contraint
• Intelligence collective: meilleures solutions, plus simples à mettre en œuvre pour des problèmes complexes (beaucoup d’acteurs, non-stationnaire)
Examples of reinforcement learning
Environment
ActionsPerceptions
For planning a reinforcement learning can discover thesequence of actions by trial-and-error
Learning Autonomous Agent
Environment
ActionsPerceptions
Learning Autonomous Agent
Environment
ActionsPerceptions
DelayedReward
Learning Autonomous Agent
Environment
ActionsPerceptions
Newbehavior
DelayedReward
Le neuronal
Contenu du cours
• Introduction à la vie artificielle• Apprentissage par renforcement• Réseaux de neurones et réseaux biologiques• Régulation floue• Neuronal, flou ou lazy en identification et régulation
adaptative• Informatique évolutionniste• Robotique autonome• Intelligence collective• Biologie et chimie artificielle
Introduction à la vie artificielle
La vie artificielle: Définition
• Reproduire dans des substrats artificiels (logiciels et robotiques) des mécanismes inhérents au vivant, à des fins:
– De biologie théorique -> reproduire le vivant – Ingéniériste -> s’inspirer du vivant
• Une vision essentiellement dématérialisée, fonctionnelle, du vivant.
A qui s’adresse-t-elle ?
Ingénieur
Philosophe
BiologisteChimistePhysicien
Interpeler
Prédiction qualitative
Prédiction quantitative
Le joueurEt l’enseignant
Ce n’est pas de la bioinformatique !!
• La biologie et l’informatique ont toujours fait bon ménage:
– BioInformatique: séquençage, comparaison de séquence, prédiction de la structure 3D des protéines, data mining sur les microarrays…
• La Vie Artificielle, ce n’est pas l’informatique qui va à la bio mais l’inverse: la bio à l’informatique
La biologie et l’informatique se ressemble
• Ils fonctionnent à différents niveaux d’abstractions
• Au niveaux ultimes, les mécanismes doivent être simples
• Ils ont une possibilité infinie d’essais et d’erreurs• Ils utilisent la « force brute » pour faire émerger
ou trouver des solutions complexes.
Les différents niveaux d’abstraction
Simplicité et force brute
D’où vient-t-elle ??
• Une incapacité de l’IA classique à traiter l’interface de la cognition au monde sans s’intéresser à la biologie.
• L’intérêt pour le monde du non-linéaire, des processus émergents, de l’auto-organisation
• Des mécanismes inspirés de la biologie. Un « come back » de la cybernétique et systémique des années 50.
• De Santa Fe, 1ère conférence Alife 1988
• A Paris premier ECAL – 1991 et Bruxelles 1993.
ECAL 2003 (European Conf. On Arti. Life)
• A universal framework for self-replication• How to program artificial chemistry• Conservation of genetic information with string-based artificial chemistry• Group selection in artificial ants• Neural nets for developmental agents• Immune networks• Growth of virtual plants• Damage recovery of robot muscles• Evolution of fault-tolerant self-replication structures• Simulation of the Baldwin effect• Conditions for stable vowels in a population• Simulation of langage games• Mesuring the dynamics of artificial evolution• Generic model of ecosystems.
Des simulations de:
• auto-réplication et évolution darwinienne• dynamique et apprentissage neuronaux• écosystèmes• sociétés animales: fourmis, abeilles, • réacteurs chimiques et protocells• réseaux biologiques: neuronaux, immunitaires,
génétiques, …• origine du langage
La vie artificielle en tant qu’ingéniérie
Toujours un tiraillement entre deux perspectives
La vie artificielle en tant que biologie théorique
Une nouvelle forme d’ingéniérie
• Une ingéniérie qui affronte le complexe, à la manière du vivant, avec du simple itéré infiniment dans le temps et l’espace. Une ingéniérie qui s’adapte de manière autonome et qui accepte quelque peu de « perdre le contrôle ».
Quand elle interpelle, les 3 leçons du vivant
- émergence
- adaptation
- environnement
Leçon I: Emergence
• 1: L’émergence: ou comment des processus nouveaux (souvent complexes) apparaissent à partir de règles simples mais sous-jacentes, itérées infiniment.
• Les sociétés d’insecte en sont un exemple frappant (voir programme)
Des fourmis aux paquets internets
• A IRIDIA, Marco Dorigo et ses collègues ont proposé un algorithme de choix probabiliste, qui évolue avec la qualité des solutions générées et des heuristiques locales. Cet algo est capable d’optimiser des routes de transfert de paquet Internet de très bonne manière.
• Egalement, les vols d’oiseaux ou les essaims .. Hollywood.
• Un nouveau dialogue entre le simple et le complexe
Les automates cellulaires, l’origine de la vie artificielle
Le jeu de la vieLe zèbreL’auto-réplication
Si deux voisins surquatre sont bleus alorsje deviens rouge
Le jeu de la vie
for (int i = 0; i < neighbours.length; i++) { sensi += neighbours[i].oldConcentration; } if ( (oldConcentration == 1) && ( (sensi == 2) || (sensi == 3))) { newConcentration = 1; } else { if ( (oldConcentration == 0) && (sensi == 3)) { newConcentration = 1; } else { newConcentration = 0; } }
Le zèbre – Alan TuringJ1 = 1; J2 = -0.1; for (int i = 0; i < neighbours.length; i++) { sensi1 += neighbours[i].oldConcentration; } for (int i=0; i< theCells.length; i++) { for (int j=0; j< theCells[i].length; j++) { if ((computeDistance(theCells[i][j]) > 1) && (computeDistance(theCells[i][j]) <6)) { sensi2 += theCells[i][j].oldConcentration; } } } if ((1 + J1*sensi1 + J2*sensi2) > 0) { newConcentration = 1; } else { newConcentration = 0;}}
+ + + +
Lecture/écriture
Unité decommande
États internes:Etat0, Etat1, Etat2,
...
Ruban= entrée,sortie etmémoire
Etat de lamachine
Contenu dela cellule
Ecrit sur leruban
Déplacementruban
Etat suivant
Etat0 vide D Etat0Etat0 + D Etat1
Le Programme
La machine universelle
L’auto-réplicateur: Von Neuman
En 1950, un génotype,
un phénotype qui construit
et recopie.
applications
• Aide à la simulation, la compréhension et la maîtrise des situations complexes:– Transport– Régulation biologique– Régulation de systèmes distribués– Propagation d ’épidémie– Etude des modes de communication– Simulation des vols d’oiseau (démo)– Robotique distribuée (film)- …
Emergence: épistémologie
Le système
Ses parties
L’exploitantLe
microscope
informatiqueBottom-up
La nature
Top-down
L’ingénieur
Leçon II: Interaction avec l’environnement
• Le monde est son meilleur modèle:
• Il faut incarner la cognition dans les processus sensori-moteurs. Les concepts naissent à partir des interactions sensori-motrices et agissent en support de celles-ci.
Applications en robotique
• Robotique autonome:
• Softbots: agent autonome sur Internet, pour profiler les utilisateurs et les aider.
• Pathfinder sur mars
Leçon III: apprentissage et adaptation
• Les systèmes doivent s’adapter de manière autonome:– Réseaux de neurones
– Apprentissage par renforcement:• Améliore des choix par feedback positif et négatif
– Algorithme génétique:• Optimise des structures complexes par une simple note
attribuée à des individus générés par mutation et recombinaison.
Algorithme génétique et Dawkins
Les biomorphes de Dawkins
L’horloger aveugle
Evoluer des créatures nouvelles, voir la démo cellfish
Problème génotype/phénotype
• Trouver le bon codage
• Trouver le bon mapping
• Trouver le bon programme dévelopemental
Algorithmes génétiques: applications
• Obtention rapide et simple d’une solution très satisfaisante
• Optimisation de l’espace aérien• Ordonnancement, horaire• Problème de groupement et de répartition• Optimisation réelle et combinatoire, voir la démo
TSP• Aide à la conception d’objet, aide à l’art.
La belle boucle
• La bio a inspiré un ensemble d’outils très utile à la bio
• Les réseaux de neurones pour les microarrays
• Les algorithmes génétiques pour la prédiction de la forme 3D des protéines
• …..
Applications a IRIDIA:réseaux de neurones et data mining
• Data Mining• Prédiction des séries financières• Régulation adaptative:
– Moteur à injection directe, optimisation de régulateurs hybrides agissant simplement, localement contrôle du chaos
• Diagnostic médical automatique• Modélisation de processus complexes
Emergence
Interaction environnementale
Apprentissage
Conclusions
• Naissance d’un nouveau dialogue entre le simple et le complexe
• Recherche d’une simplicité, souvent dissimulée, mais dont le défrichage, uniquement possible par l’informatique, permet une meilleur compréhension et maîtrise des situations complexes
• Une science et une ingéniérie plus informatique, plus expérimentale, plus « hors contrôle ».
• L’informatique crée et cherche pour nous. Nous nous bornons à guider et à sélectionner.
Pour le philosophe:Tous ces artefacts sont-ils réellement « vivants »
Recommended