4AI04 - RIA Initiation à l Intelligence Artificielle. Raja Chatila Instructeurs TP: Mata Khalili, Alexandre Bazin

Dimension: px
Commencer à balayer dès la page:

Download "4AI04 - RIA Initiation à l Intelligence Artificielle. Raja Chatila Raja.Chatila@isir.upmc.fr Instructeurs TP: Mata Khalili, Alexandre Bazin"

Transcription

1 4AI04 - RIA Initiation à l Intelligence Artificielle Raja Chatila Instructeurs TP: Mata Khalili, Alexandre Bazin

2 Organisation Dates cours, TD et contrôle continu: Mardi 28/01 16h-18h Mardi 04/02 PM 13h45-15h45 ; 16h-18h Mardi 11/02 PM 13h45-15h45 ; 16h-18h Mardi 18/02 PM 13h45-15h45 ; 16h-18h Mardi 25/02 PM 13h45-15h45 ; 16h-18h Mardi 04/03 PM 13h45-15h45 ; 16h-18h TP 12h en groupe Contrôle continu et final. Documents autorisés. Référence: S. Russell and P. Norvig Artificial Intelligence: A Modern Approach Prentice Hall, 2003 (Second edition) ou 2010 (Third edition). 2

3 Contenu du cours Qu est-ce que l IA? Agents intelligents; Architectures. Algorithmes de recherche dans les espaces d états Représentations des connaissances et Logique des propositions et des prédicats du 1er ordre Planification d actions Raisonnement dans l incertain, Réseaux probabilistes bayésiens. Processus décisionnels markoviens (MDP). 3

4 Qu est-ce que l IA? 4

5 Historique Alan Turing (1950) "Computing machinery and intelligence": Les machines peuvent-elles penser? Ou : Les machines peuvent-elles se comporter intelligemment? Test: le jeu de l imitation (test de Turing). A prévu qu en 2000, une machine pourrait avoir une chance sur trois de faire illusion pendant 5 minutes. 5

6 Naissance de l IA Conférence à Dartmouth College (NH, USA) Définition: Programmes informatiques qui résolvent des problèmes habituellement résolus par des processus mentaux de haut niveau chez les humains (John McCarthy) 6

7 Deux approches Imiter l intelligence humaine. Les machines (ordinateurs, robots) doivent raisonner/agir comme les humains. Agir rationnellement. Les machines (ordinateurs, robots) doivent raisonner/ agir rationnellement. 7

8 Penser comme les humains Sciences cognitives et neurosciences cognitives. Modèles de fonctionnement du cerveau. Validation à partir de prédictions basées sur les modèles et d études/tests du comportement humain et à partir de données neurologiques (IRM,...). 8

9 Penser et agir rationnellement Aristote et les règles du raisonnement correct. Syllogismes: Tous les hommes sont mortels; Socrate est un homme; donc Socrate est mortel La logique mathématique (XIXe, XXe Siècles): règles et notations. A permis la mécanisation du raisonnement. Mais: tout comportement intelligent n est pas forcément issu d un raisonnement logique (ex: mécanismes sensori-moteurs). Agir rationnellement: Faire la chose correcte. Optimiser un critère donné compte tenu de l information disponible. 9

10 Domaines de l IA Fondements et méthodes: Résolution de problèmes - recherche de solutions (complexité). Représentation des connaissances Raisonnement logique; agents logiques Planification d actions, anticipation 10 Architectures intelligentes ou cognitives Raisonnement sur le temps Raisonnement sur l incertain Apprentissage Domaines d application Langues naturelles Perception/vision Robotique

11 Situation de l IA Les techniques de l IA sont diffusives (et deviennent invisibles) en informatique: moteurs de recherche, traducteurs automatiques, langages de programmation,... Exemples marquants: Deep Blue vs. Garry Kasparov (1997); Jeopardy! (2011). Preuve de théorèmes Systèmes experts Finances. Planification de missions spatiales ou militaires Robotique 11

12 La robotique Paradigme de l IA Machines matérielles dans le monde réel. Importance de la matérialisation ( embodiment ) et de la mise en situation. Importance du lien intelligent entre perception et action. Intégration de toutes les fonctions. Robots: agents rationnels/agents réactifs 12

13 Turtle Les débuts de la Robotique Shakey Hilare Unimate General Electric Stanford Cart Scemi

14 Quelques robots actuels 14

15 Le robot: principales fonctions Percevoir/représenter l espace, les objets, les scènes, les situations Apprendre de nouvelles capacités, des concepts Communiquer Interagir Se déplacer et agir Le mouvement Anticiper décider réagir 15

16 Agents; Architectures 16

17 Agents Système possédant des capteurs et des actionneurs, percevant et agissant dans un environnement. Fonction(s) f: Percepts ---> Actions Les actions modifient les percepts futurs. Mise en oeuvre d une architecture organisant des fonctions. Agent rationnel: agent effectuant les actions de manière à maximiser une mesure de performance, compte tenu des possibilités d action, de ses percepts et de ses connaissances. 17

18 Un robot interactif 18

19 Agents Rationalité relative à l environnement, aux capacités de perception et d action Rationalité et connaissances Mesure de performance Catégories d agents 19

20 Autonomie La conception d un agent (architecture, capteurs, effecteurs, capacités de traitement) dépend: de l environnement dans lequel il va agir, des tâches qu il doit y effectuer. des performances qu il doit atteindre Le degré d autonomie est en lien avec la complexité de la tâche et de la complexité de l environnement. 20

21 Différents agents, différents environnements, différentes tâches, différentes actions 21

22 Environnement Totalement vs. partiellement observable: l agent possède une connaissance complète/partielle de l état du monde à chaque instant à travers ses capteurs. Deterministe vs. stochastique: L évolution de l état du monde est entièrement déterminée par l état courant et l action effectuée par l agent ou incertaine. (Stratégique : si d autres agents agissent). Episodique vs. séquentiel: épisodes atomiques {perception- action choisie en fonction de la perception}. Statique vs. dynamique: L environnement évolue ou non pendant que l agent délibère. Discret vs. continu: Nombre de percepts et d actions fini (et souvent faible), ou continuté. Mono-agent (vs. multiagent): L agent est le seul acteur dans l environnement. 22

23 Exemples d'environments " " " " Jeu d échecs avec pendule" Jeu d échecs sans pendule " Taxi autonome Observable" OUI" OUI " " Partiel Déterministe" " Stratégique" Stratégique" NON Episodique "" NON NON" NON Statique " " " Semi" " OUI " " NON Discret" " OUI " " OUI " " NON Mono-agent"" NON NON"" NON 23

24 Types d agents Quatre catégories (généralité et complexité croissantes): Agents réflexifs simples Agents réflexifs avec modèle Agents orientés objectif Agents orientés utilité. 24

25 Agent réflexif 25

26 Agent réflexif 26

27 Agent réflexif avec modèle Avec Modèle: état, évolution 27

28 Agent orienté but 28

29 Agent orienté utilité 29

30 Agent apprenant 30

31 Agent cognitif 31

32 Résolution de problèmes Algorithmes de Recherche 32

33 Plan Formulation en espaces d états Algorithmes de recherche 33

34 Etats Etat: abstraction du monde réel (être dans une ville, dans une pièce, tenir un objet, position d un objet, interrupteur ouvert/ fermé...) Actions, transformation d état: abstraction des actions réelles; actions plus ou moins complexes (prendre, poser, avancer, aller-à, grimper,...) 34

35 Problèmes Un problème est défini par: 1. Un état initial 2. Un ensemble d Actions ou une fonction successeur S(x) = ensemble de paires {action-état} définissant les états succédant à un état donné. 3. Test d atteinte de but ou un état but explicite. ex: être à un endroit donné, tenir un objet particulier. implicite. ex: mat du roi adverse. 4. Coût (additif) des actions exécutées. Une solution est une séquence d actions joignant l état initial à un état but. 35

36 Exemples d états 36

37 Exemple: jeu de taquin Etats? Actions? Test état but? Coût? 37

38 Exemple: jeu de taquin Etats? emplacements des carreaux Actions? g, d, h, b du carreau vide Test état but?positions finales des carreaux Coût? 1 (unité d action) par mouvement. 38

39 Exemple: robot manipulateur Etats? Actions? Test état but? Coût? 39

40 Exemple: robot manipulateur Etats? configuration du bras, objets à assembler Actions? mouvements du bras Test état but? objet assemblé (positions relatives des pièces) Coût? temps; nombre d actions 40

41 Espace d états L ensemble des états et l ensemble des actions définissent un graphe d états fini ou infini. Etats: noeuds Actions: arcs Coûts des actions Un algorithme de recherche va explorer le graphe pour trouver un chemin entre état initial et état(s) objectif(s). 41

42 Espace d états L ensemble des états et l ensemble des actions définissent un graphe d états fini ou 3 E infini. 0 E 4 E 10 E 14 Etats: noeuds Actions: arcs E 1 7 E 3 E 11 E 15 3 E 17 Coûts des actions 3 E 5 2 E E 13 3 E E 8 4 E 6 5 E 7 6 E 12 5 E 18 Un algorithme de recherche va explorer le graphe pour trouver un chemin entre état initial et état(s) objectif(s). 7 E

43 Algorithmes de recherche Recherche arborescente: exploration de l espace d états par génération des successeurs des états explorés. Transformation du graphe en arbre de recherche. 42

44 Exemple Graphe d états Arbre de recherche 43

45 Exemple Graphe d états Arbre de recherche 43

46 Exemple Graphe d états Arbre de recherche 44

47 Exemple Graphe d états Arbre de recherche 44

48 Exemple Graphe d états Arbre de recherche 45

49 Exemple Graphe d états Arbre de recherche 45

50 Exemple Graphe d états Arbre de recherche 45

51 Etats et Noeuds Un état x est une représentation de la situation réelle Un noeud x est une structure de données constitutive de l arbre de recherche, incluant l état, le noeud parent, l action, le coût g(x) du chemin depuis l état initial, la profondeur (itération). Le développement d un noeud crée de nouveaux noeuds, avec les différents champs remplis. 46

52 Stratégies de recherche Une stratégie de recherche définit l ordre de développement des noeuds. Effectuée par un Algorithme de recherche. Une stratégie est caractérisée par les propriétés de: complétude : si une solution existe, est-elle toujours trouvée? complexité en temps: nombre de noeuds générés complexité en espace: nombre maximal de noeuds en mémoire optimalité: la solution trouvée est-elle de moindre coût? 47

53 Complexité La complexité en temps et en espace sont mesurées par : b: facteur de branchement maximal de l arbre de recherche (nombre d états successeurs d un état donné) d: profondeur de la solution de moindre coût m: profondeur maximale de l espace de recherche Donnée en ordre de grandeur de la taille du problème : O(.) 48

54 Algorithme de recherche général Search( S, G_test, Criteria)/* Espace d états fourni implicitement par l état initial S et la fonction successeur */ Init: Open = { S }; Closed = { }; " repeat " " if (empty(open)) return fail; /*(terminaison sur échec)*/ " select Node from Open using Criteria; " " if (Goal_test(Node)) return Node; /*(Fin; chemin trouvé)*/ " " for each Child of Node do " " " if (Child not in Closed) " " " " Open Open + { Child }; " " Closed Closed + { Node }; 49

55 Algorithmes de recherche Algorithmes non informés Largeur d abord Profondeur d abord Algorithmes informés Meilleur d abord A*

56 Algorithmes non informés Aucune connaissance sur le problème à part l espace d état et le coût de développement. 51

57 Largeur (Breadth) Recherche systématique - critère : distance au prédécesseur Search( Start, Goal_test, Criteria ) " Open: fifo_queue; " Closed: hash_table; " enqueue(start, Open); insert(start, Closed) " repeat " " if (empty(open)) return fail; " " Node = dequeue(open); " " if (Goal_test(Node)) return Node; " " for each Child of Node do " " " if (not find(child, Closed)) " " " " enqueue(child, Open) " " insert(child, Closed) 52

58

59 Propriétés Complet? si b est fini Complexité en Temps: 1+b+b 2 +b 3 + +b d = b(b d -1); O(b d+1 ) Complexité en Espace: O(b d+1 ) (garde tous les noeuds en mémoire) Optimalité si le coût est uniforme pour chaque pas (coût = 1) 54

60 Profondeur (Depth) Critère: profondeur la plus longue du départ Search( Start, Goal_test, Criteria ) " Open: stack; " Closed: hash_table; " push(start, Open); insert(start, Closed) " repeat " " if (empty(open)) return fail; " " Node = pop(open); " " if (Goal_test(Node)) return Node; " " for each Child of node do " " " if (not find(child, Closed)) " " " " push(child, Open) insert(child, Closed) 55

61

62 Propriétés Complétude Non: échoue dans les espaces de profondeur infinie et les espaces avec cycles (il y a des versions améliorées). Complétude dans espaces finis. Complexité en temps: O(b m ): très mauvais si m >> d Peut être plus rapide que largeur selon la densité de la structure de l espace. Complexité en espace? O(bm), (linéaire). Optimalité: Non. 57

63 Stratégies informées Fonction d évaluation f(n) pour choisir le noeud à développer Utilisation d une heuristique. Objectif: réduction de la complexité. 58

64 Heuristique Valeur numérique associée à un état donné et égale à l estimation du coût restant pour atteindre un état but. Plusieurs fonctions possibles pour un problème donné. Souvent spécifique au problème Doit être à la fois discriminante (pour être utile) et simple à calculer (pour ne pas augmenter la complexité). 59

65 Exemples d heuristique Jeu de taquin 60

66 Exemples d heuristique Jeu de taquin h 1 (E) : nombre de carreaux ne se trouvant pas à leur emplacement final. h 1 (E 0 )=8 60

67 Exemples d heuristique Jeu de taquin h 1 (E) : nombre de carreaux ne se trouvant pas à leur emplacement final. h 1 (E 0 )=8 h 2 (E): Distance Manhattan (nombre de cases entre l emplacement courant et l emplacement but pour chaque carreau). h 2 (E 0 )= =18 60

68 Exemple d heuristique: recherche de route 3 E 10 E 0 E 4 E E 15 E 1 7 E 3 E 11 3 E E 5 2 E E 13 3 E E 8 4 E 7 E 18 E E E 9 61

69 Exemple d heuristique: recherche de route 3 E 10 E 0 E 4 E E 15 E 1 7 E 3 E 11 3 E E 5 2 E E 13 3 E E 8 4 E 7 E 18 E E E 9 4 h(e i )=distance à vol d oiseau au but 62

70 Heuristique: propriétés Une heuristique est admissible si pour tout noeud n, h(n) h*(n) où h*(n) est le vrai coût pour atteindre le but à partir du noeud n. Ne surestime jamais le véritable coût. Une heuristique est consistente si pour tout noeud n et son successeur n, h(n) c(n,n') + h(n'), où c(n,n') est le coût de production de n à partir de n. 63

71 Algorithme Meilleur d abord (Best first) Critère: coût heuristique Search( Start, Goal_test, Criteria ) " Open: priority_queue; " Closed: hash_table; " enqueue(start, Open, heuristic(start)); " repeat " " if (empty(open)) return fail; " " Node = dequeue(open); " " if (Goal_test(Node)) return Node; " " for each Child of Node do " " " if (not find(child, Closed)) " " " " enqueue(child, Open, heuristic(child)) " " insert(child, Closed) 64

72 Exemple de Best-First heuristique: Distance Manhattan (Δx+Δy) 53 rd St 52 nd St 51 st St G 50 th St S 2 nd Ave 3 rd Ave 4 th Ave 5 th Ave 6 th Ave 7 th Ave 8 th Ave 9 th Ave 10 th Ave

73 Non-Optimalité de Best-First 53 nd St 52 nd St 51 st St S G 50 th St 2 nd Ave 3 rd Ave 4 th Ave 5 th Ave 6 th Ave 7 th Ave 8 th Ave 9 th Ave 10 th Ave

74 Algorithme A* Critère de choix d un noeud: minimiser f(n) = g(n) + h(n) g(n)= distance depuis l état initial à n h(n)= heuristique : estimation de la distance de n au but 67

75 Algorithme A* (S, G )! S: noeud origine; G: but; Variables : "k(p,n),g(n), h(n), f(n)=g(n)+h(n), nbest Début Open = {S}; Closed = { }; Répéter " Si (vide(open)) alors échec; " Sinon " Choisir nbest /*tête de Open*/; " Open Open - {nbest}; " Closed Closed + {nbest}; " Si nbest = G, Fournir le chemin : la séquence du noeud initial à G. Exit " Sinon " " Développer nbest; Production de Successeurs(nbest) ensemble des noeuds successeurs de nbest. " " " Pour tout x dans Successeurs(nbest) qui n est pas dans Closed " Si x n est pas dans Open alors: " " " " Open Open + {x}; " " " Sinon " " " " Si g(nbest) + k(nbest,x) < g(x) alors " " " " " Modifier parent de x à nbest ; " " " " " Remplacer g(x) par g(nbest) + k(nbest,x) ; " " " " Finsi Ordonner Open par ordre croissant de f; si égalité, par ordre décroissant de g Fin

76 exemple A*

77 Propagation de la recherche dans A* 70

78 Propriétés de A* Si h(n)=cste pour tout n, A* est l algorithme de Dijkstra A* est optimal si l heuristique est admissible: h(n) h*(n), pour tout noeud n, où h*(n) est le vrai coût pour atteindre le but à partir de n. Algorithme Complet. Si une solution existe, elle sera trouvée. Exponentiel en temps. Polynômial si heuristique minorante. 71

79 Représentations des connaissances et Logique 72

80 Représentation des connaissances Connaissances factuelles Connaissances opératoires Représentations simples Représentations structurées 73

81 Réseaux sémantiques ppp 74

82 Frames (objets) (AutoDeSarah (est_une (=voiture)) (couleur (=rouge)) (puissance (fiscale 9) (unité CV) (réelle 95)) Tout est mis dans le frame Les facettes définissent la sémantique de l attribut Mise en correspondance: la valeur de l attribut peut être une valeur, un frame ou un ensemble de frames 75

83 Ontologies Description d un domaine : Concepts Propriétés, attributs des concepts Contraintes sur les propriétés et attributs éléments individuels Réseau sémantique. Concepts liés les uns aux autres par une taxonomie. Déduction et recherche d information Permet une compréhension partagée commune du domaine. 76

84 Exemple S. Lamaignan - LAAS 77

85 Logique 78

86 Logique propositionnelle Syntaxe Propositions : a, b, c, Ex: la balle est rouge Connecteurs : Disjonction; OU: Conjonction; ET: Négation; NON: Implication: Equivalence: Ex: il pleut il y a des nuages 79

87 Formules Une proposition est une formule Si a et b sont des formules, alors a, a b, a b, a b, a b sont aussi des formules 80

88 Sémantique Les formules sont interprétées dans {F,V} ou {0,1} Tables de vérité: p q p p q p q p q p q

89 Formules Formule valide: toujours vraie (quelle que soit l interprétation) Formule consistante: il existe une interprétation dans laquelle elle est vraie. Formule inconsistante: il n existe aucune interprétation dans laquelle elle est vraie. 82

90 Règles Lois de Morgan : (a b) a b (a b) a b et commutatives et associatives et distributives et associatives l une par rapport à l autre 83

91 Règles et Equivalences a a a a a (idempotence) a a (loi du tiers exclu) a a (double négation) a b a b (a b) ( b a) (contraposition) a b (a b) (b a) ((a b) a) b (modus ponens) ((a b) b) a (modus tollens) Règle d inférence Règle d inférence 84

92 Logique des Prédicats du 1er ordre Syntaxe variables : x, y, z, Fonctions: f(), g(),... Prédicats: p, q,... Propositions: a, b,... prédicats d arité 0; p(x), p(y): arité 1. Quantificateurs:, Connecteurs : Disjonction; OU: Conjonction; ET: Négation; NON: Implication: Equivalence: 85

93 Atomes, formules Termes: Constantes, variables, fonctions de termes Atomes: prédicats de termes: p(t 1, t 2,...) Formules: Un atome est une formule Si F et G sont des formules, alors F, F G, F G, F G sont des formules Si F est une formule, x, F et x, F sont des formules 86

94 Clauses Un atome (ou sa négation) est un littéral (positif ou négatif) Une clause est une formule qui est une disjonction de littéraux. Une clause concrète ne comporte pas de variables Une clause de Horn est une clause comportant au plus un littéral positif 87

95 Principe de Résolution Robinson, 1965 Règle d inférence. Clause1: G = G 1 G 2 G n Clause2: H = G 1 H 2 H m G 1 et G 1 : littéraux complémentaires Résolvante: K = G 2 G n H 2 H m 88

96 Exemples P et P Q se résolvent en Q (modus ponens) Q et P Q se résolvent en P (modus tollens) G H et H K se résolvent en G K (enchaînement) 89

97 Unification Pour les clauses non concrètes, l unification est nécessaire Deux termes t 1 et t 2 sont unifiables s il existe une substitution s des variables de t 1 et t 2 telle que s(t 1 ) = s(t 2 ) Exemple : SUR(X,Y) s unifie avec SUR(A,B) si X = A et Y=B 90

98 Sémantique Interprétation I d une formule G dans un domaine D les constantes de G sont des éléments de D les propositions de G prennent la valeur V ou F les prédicats sont associés à des applications D {V,F} les fonction de G sont associées à des applications D D. 91

99 Indécidabilité Formule valide: vraie quel que soit le domaine d interprétation (tautologie) Indécidabilité: Impossibilité de déterminer la validité d une formule quelconque en un nombre fini d opérations (Gödel 1931, Church 1936, Turing 1936/37) Semi-décidabilité: si la formule est valide, le nombre d opérations est fini mais non borné. 92

100 Systèmes à base de règles Connaissances Moteur d inférence opératoires (règles) Connaissances factuelles Base de faits base de règles moteur d inférence 93

101 Principes Règles: Si (prémisses) Alors (conclusions) Faits: propositions logiques Méthodes: chaînage avant (à partir des prémisses). On cherche à établir des faits à partir de l état initial. chaînage arrière (à partir des conclusions). On cherche à résoudre un problème en remontant à l état initial. 94

102 Intérêt Programmation déclarative connaissances éparses, parcellaires, granulaire savoir faire peu structuré (pas d algorithme) évolution facile (nouvelles règles, nouveaux faits) Application principale: Systèmes experts 95

103 Planification 96

104 Planification Décider des actions nécessaires pour atteindre un objectif: une problématique classique de l IA Objectifs abstraits Actions de déplacement, de manipulation, de perception, Raisonnement déductif et anticipation des conséquences des actions 97

105 Hypothèses de la planification classique Temps discret Actions déterministes Connaissance complète du monde Seul le robot agit sur le monde 98

106 Planification Entrées Description de l état initial du monde Description de l état but Description des actions Eventuellement: coût des actions Sortie: Séquence d actions qui mène de l état initial à l état final à coût minimal (nombre d actions, coût des actions) 99

107 100 Questions Comment représenter les connaissances sur l environnement? Comment représenter l état du robot? Comment représenter les actions? Comment guider le raisonnement?

108 101 Cadre formel: Logique des prédicats L état du monde et du robot est représenté par un ensemble de propositions (vraies/ fausses). Notion d état. Les actions modifient l état du monde et sa description La recherche des actions applicables repose sur l unification logique L enchaînement des actions est basé sur une recherche dans un espace d états.

109 102 Représentation des actions Actions caractérisées par: Qualification: ce qui est nécessaire à l exécution l action Ramification: les conséquences de l action Cadre ou référentiel (Frame): ce qui est inchangé par l action.

110 103 Exemple simple le Monde des cubes Le robot fait des assemblages de cubes. Le bras peut tenir un seul cube Les cubes s empilent parfaitement La table est infinie Etat du monde = configuration des cubes {on-table (G), on (B, G), clear (B), holding (R)} Actions: Opérateurs. prendre (pick-up); poser (put-down); empiler (stack), dépiler (unstack). Sémantique différente des actions, même si l action physique est identique: prendre v.s. dépiler

111 Représentation du monde L état du monde est une liste de faits ou propositions logiques B C A holding(a) clear(b) on(b,c) ontable(c) Etat 1 handempty clear(a) on(a,b) on(b,c) ontable(c) A B C Etat 2

112 Représentation du monde L état du monde est une liste de faits ou propositions logiques B C A holding(a) clear(b) on(b,c) ontable(c) Etat 1 handempty clear(a) on(a,b) on(b,c) ontable(c) A B C Etat 2 Hypothèse du Monde clos: Les faits non mentionnés sont supposés faux

113 Représentation des buts Les buts sont aussi des faits Exemple: { on(a,b) } est un but Un Etat But est tout état qui inclut les faits à réaliser A B C handempty clear(a) on(a,b) on(b,c) ontable(c) B C A holding(a) clear(b) on(b,c) ontable(c) Etat 1 Etat 2 Etat 1 est un état but pour { on(a,b) }. Etat 2 n est pas un état but.

114 Actions: Opérateurs Représentations pour le planificateur STRIPS (c. 1972) B C A holding(a) clear(b) on(b,c) ontable(c) Etat 1 Stack(A,B) handempty clear(a) on(a,b) on(b,c) ontable(c) Etat 2 A B C 1) PRE : liste de Préconditions (qualification) 2) ADD : liste d Ajouts (ramification) 3) DEL : liste de Suppressions (ramification) Exemple Stack(A,B): PRE: { holding(a), clear(b) } ADD: { on(a,b), handempty, Clear(A)} DEL: { holding(a), clear(b) } Ce qui est inchangé par l action n est pas mentionné (cadre - frame)

115 Planification dans STRIPS Problème: Solution: (Stack(A,B)) holding(a) clear(b) ontable(b) Etat Initial Stack(A,B): PRE: { holding(a), clear(b) } ADD: { on(a,b), handempty } DEL: { holding(a), clear(b) } on(a,b) Etat But Stack(B,A): PRE: { holding(b), clear(a) } ADD: { on(b,a), handempty } DEL: { holding(b), clear(a) } Problème: Il faudrait définir autant d actions que d objets ou associations d objets

116 Planification dans STRIPS Problème: Solution: (Stack(A,B)) B A holding(a) clear(b) ontable(b) on(a,b) Etat Initial Stack(A,B): PRE: { holding(a), clear(b) } ADD: { on(a,b), handempty } DEL: { holding(a), clear(b) } Etat But Stack(B,A): PRE: { holding(b), clear(a) } ADD: { on(b,a), handempty } DEL: { holding(b), clear(a) } Problème: Il faudrait définir autant d actions que d objets ou associations d objets

117 Schémas d Action Schéma générique plutôt que spécification de chaque action. Stack(x,y): Introduction de variables PRE: { holding(x), clear(y) } ADD: { on(x,y), handempty } DEL: { holding(x), clear(y) } Stack(B,A): PRE: { holding(b), clear(a) } ADD: { on(b,a), handempty } DEL: { holding(b), clear(a) }.... Stack(A,B): PRE: { holding(a), clear(b) } ADD: { on(a,b), handempty } DEL: { holding(a), clear(b) } Mais: Les schémas doivent être instanciés pour être appliqués: variables x, y,... transformées en constantes. Problème d unification logique.

118 Espace d Etats Planifier : = trouver les chemins les plus courts dans l espace d états représenté par un graphe. Noeuds= états; Arcs= actions put-down(r) stack(r,b) pick-up(r) pick-up(g) stack(g,r)

119 Algorithme STRIPS Algorithme Strips; BUT, Etat initial E 0! Liste L = [ ], PLAN = [ ], ETAT Initialisation: L = [BUT], ETAT = E 0 Tant que L non vide g = tête de liste L; Si g est vrai dans ETAT: FIN Sinon Si g est une conjonction de buts cg (maintenant en tête de L Choisir un ordre des sous-buts il y a forcément un but Ajouter les sous-buts en tête de L simple, g) g:= tête de liste L Choisir un opérateur O dont les Ajouts s unifient avec g Ajouter les préconditions po de O en tête de L Strips(po); appel récursif de Strips sur une précondition de O ETAT = ETAT(O); Appliquer O à l état courant. PLAN = [PLAN, O]; ajouter l opérateur O au plan. FIN

120 Exemple 111

121 Exemple A C C A B B CLEAR(B) CLEAR(C) ON(C,A) HANDEMPTY BUT: ON(A,C) ON(C,B) ONTABLE(A) ONTABLE(B) 112

122 113 Exemple: Opérateurs Pickup(x): Putdown(x): Stack(x,y): Unstack(x,y): PRE: {Ontable(x), Clear(x), HandEmpty} ADD: {Holding(x)} DEL: {Ontable(x), Clear(x), HandEmpty} PRE: {Holding(x)} ADD: {Ontable(x), Clear(x), HandEmpty} DEL: {Holding(x)} PRE: { Holding(x), Clear(y)} ADD: { On(x,y), HandEmpty} DEL: { Holding(x), Clear(y)} PRE: {HandEmpty, Clear(x), On(x,y)} ADD: {Holding(x), Clear(y) } DEL: {HandEmpty, Clear(x), On(x,y)}

123 114 Exemple ETAT DU MONDE BUT: CLEAR(B) ON(C,B) ON(A,C) CLEAR(C) ON(C,A) ONTABLE(A) ONTABLE(B) HANDEMPTY C A C A B B CLEAR(B) ON(C,A) CLEAR(C) HANDEMPTY ONTABLE(A) ONTABLE(B) BUT: ON(A,C)!ON(C,B)

124 115 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) ON(C,A) ONTABLE(A) ONTABLE(B) HANDEMPTY BUT: ON(C,B) ON(A,C) ON(C,B) ON(A,C) Décomposition du but

125 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) ON(C,A) BUT: ON(C,B) ON(A,C) ON(C,B) ON(A,C) ONTABLE(A) ONTABLE(B) HANDEMPTY Choix d un opérateur (liste d ajouts) x=c, y=b 116

126 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) ON(C,A) BUT: ON(C,B) ON(A,C) ON(C,B) ON(A,C) ONTABLE(A) ONTABLE(B) HANDEMPTY Choix d un opérateur (liste d ajouts) Stack(x,y) PRE: { Holding(x), Clear(y)} ADD: { On(x,y), HandEmpty} DEL: { Holding(x), Clear(y)} x=c, y=b 116

127 117 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) ON(C,A) ONTABLE(A) ONTABLE(B) HANDEMPTY BUT: HOLDING(C) CLEAR(B) ON(C,B) ON(A,C) ON(C,B) ON(A,C)

128 117 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) ON(C,A) ONTABLE(A) ONTABLE(B) HANDEMPTY BUT: HOLDING(C) CLEAR(B) ON(C,B) ON(A,C) ON(C,B) ON(A,C) Stack(x=C,y=B) PRE: { Holding(x), Clear(y)} ADD: { On(x,y), HandEmpty} DEL: { Holding(x), Clear(y)}

129 118 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) Décomposition { BUT: HOLDING(C) CLEAR(B) ON(C,A) ONTABLE(A) ONTABLE(B) HANDEMPTY HOLDING(C) CLEAR(B) ON(C,B) ON(A,C) ON(C,B) ON(A,C)

130 118 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) Décomposition { BUT: HOLDING(C) CLEAR(B) ON(C,A) ONTABLE(A) ONTABLE(B) HANDEMPTY HOLDING(C) CLEAR(B) ON(C,B) ON(A,C) ON(C,B) ON(A,C) Stack(x=C,y=B) PRE: { Holding(x), Clear(y)} ADD: { On(x,y), HandEmpty} DEL: { Holding(x), Clear(y)}

131 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) ON(C,A) ONTABLE(A) ONTABLE(B) HANDEMPTY BUT: HOLDING(C) CLEAR(B) HOLDING(C) CLEAR(B) ON(C,B) ON(A,C) ON(C,B) ON(A,C) Unstack(x=C,y=A) PRE: {HandEmpty, Clear(x), On(x,y)} ADD: {Holding(x), Clear(y) } DEL: {HandEmpty, Clear(x), On(x,y)} 119

132 Exemple ETAT DU MONDE CLEAR(B) CLEAR(C) ON(C,A) ONTABLE(A) ONTABLE(B) HANDEMPTY BUT: HOLDING(C) CLEAR(B) HOLDING(C) CLEAR(B) ON(C,B) ON(A,C) ON(C,B) ON(A,C) Unstack(x=C,y=A) PRE: {HandEmpty, Clear(x), On(x,y)} ADD: {Holding(x), Clear(y) } DEL: {HandEmpty, Clear(x), On(x,y)} Stack(x=C,y=B) PRE: { Holding(x), Clear(y)} ADD: { On(x,y), HandEmpty} DEL: { Holding(x), Clear(y)} 119

133 Exemple: Plan Unstack(C,A) Putdown(C) Pickup(B) A C Stack(B,C) Pickup(A) Stack(A,B) B A B C CLEAR(B) CLEAR(C) ON(C,A) HANDEMPTY BUT: ON(A,B) ON(B,C) ONTABLE(A) ONTABLE(B) 120

134 Espace de recherche souvent fini

135 Espace de recherche souvent fini

136 122 Limitations Limites de la logique: incertitudes, cas particuliers Représentation complexe des actions (liste exhaustive des conditions, des conséquences) Complexité du raisonnement logique: limitation à des cas relativement simples

137 123 Raisonnement Procédural Cadre pour des systèmes symboliques réactifs dans des environnements dynamiques Robots Mobiles Diagnostic de systèmes (p.ex Navette) Les systèmes de raisonnement procédural intégrés dans des architectures appropriées permettent de réaliser des systèmes opérationnels sur des problèmes réels Association avec des planificateurs comme ressources.

138 124 PRS: Procedural Reasoning System Connaissance: procédures pré-compilées Basé sur le modèle BDI (Belief, Desires, Intentions) Délibératif et réactif Sélection de plans, exécution, perception Planification incrémentale et dynamique Orienté par le but et par les événements Architecture permettant d interrompre l exécution Méta-raisonnement

Intelligence Artificielle et Robotique

Intelligence Artificielle et Robotique Intelligence Artificielle et Robotique Introduction à l intelligence artificielle David Janiszek david.janiszek@parisdescartes.fr http://www.math-info.univ-paris5.fr/~janiszek/ PRES Sorbonne Paris Cité

Plus en détail

Intelligence Artificielle Planification

Intelligence Artificielle Planification Intelligence Artificielle Planification Bruno Bouzy http://web.mi.parisdescartes.fr/~bouzy bruno.bouzy@parisdescartes.fr Licence 3 Informatique UFR Mathématiques et Informatique Université Paris Descartes

Plus en détail

Cours de Master Recherche

Cours de Master Recherche Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction

Plus en détail

Intelligence artificielle appliquée à l automatique

Intelligence artificielle appliquée à l automatique Intelligence artificielle appliquée à l automatique par Sylviane GENTIL Professeur à l École nationale supérieure d ingénieurs électriciens Institut national polytechnique de Grenoble 1. Définitions et

Plus en détail

Antoine Cornuéjols AgroParisTech

Antoine Cornuéjols AgroParisTech Antoine Cornuéjols AgroParisTech antoine.cornuejols@agroparistech.fr http://www.lri.fr/~antoine Cours IA 1. Introduction 2. Cas des jeux entièrement explorables 3. L algorithme du MinMax 4. Amélioration

Plus en détail

Systèmes décisionnels et programmation avancée

Systèmes décisionnels et programmation avancée Systèmes décisionnels et programmation avancée M1 SIR Philippe Muller et Mustapha Mojahid, Matthieu Serrurier, Marie-Christine Scheix 2014-2015 Introduction structure du cours intervenants introduction

Plus en détail

Utilisation des tableaux sémantiques dans les logiques de description

Utilisation des tableaux sémantiques dans les logiques de description Utilisation des tableaux sémantiques dans les logiques de description IFT6281 Web Sémantique Jacques Bergeron Département d informatique et de recherche opérationnelle Université de Montréal bergerja@iro.umontreal.ca

Plus en détail

Intelligence Artificielle Agents Intelligents

Intelligence Artificielle Agents Intelligents Intelligence Artificielle Agents Intelligents Bruno Bouzy http://web.mi.parisdescartes.fr/~bouzy bruno.bouzy@parisdescartes.fr Licence 3 Informatique UFR Mathématiques et Informatique Université Paris

Plus en détail

Intelligence Artificielle Jeux

Intelligence Artificielle Jeux Intelligence Artificielle Jeux Bruno Bouzy http://web.mi.parisdescartes.fr/~bouzy bruno.bouzy@parisdescartes.fr Licence 3 Informatique UFR Mathématiques et Informatique Université Paris Descartes Programmation

Plus en détail

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar bbm@badr-benmammar.com Intelligence Artificielle et Systèmes Multi-Agents Badr Benmammar bbm@badr-benmammar.com Plan La première partie : L intelligence artificielle (IA) Définition de l intelligence artificielle (IA) Domaines

Plus en détail

Algorithmes de recherche

Algorithmes de recherche Algorithmes de recherche 1 Résolution de problèmes par recherche On représente un problème par un espace d'états (arbre/graphe). Chaque état est une conguration possible du problème. Résoudre le problème

Plus en détail

Introduction: les fondements de l IA 2- Résolution automatique de problèmes

Introduction: les fondements de l IA 2- Résolution automatique de problèmes INF7470 Systèmes Tutoriels Intelligents Introduction: les fondements de l IA 2- Résolution automatique de problèmes Roger Nkambou Contenu Solutionnement par recherche Recherche avec heuristique Représentation

Plus en détail

Pourquoi l apprentissage?

Pourquoi l apprentissage? Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage

Plus en détail

GIND5439 Systèmes Intelligents. Chapitre 1: Intelligence artificielle

GIND5439 Systèmes Intelligents. Chapitre 1: Intelligence artificielle GIND5439 Systèmes Intelligents Chapitre 1: Intelligence artificielle Contenu du chapitre Approches vs Intelligence artificielle Définition de l intelligence Historique Le test de Turing 2 Approches Science

Plus en détail

Bases de données Cours 5 : Base de données déductives

Bases de données Cours 5 : Base de données déductives Cours 5 : ESIL Université de la méditerranée Odile.Papini@esil.univmed.fr http://odile.papini.perso.esil.univmed.fr/sources/bd.html Plan du cours 1 Introduction 2 approche sémantique approche axiomatique

Plus en détail

Principes de fonctionnement des moteurs d inférences. Le Moteur d Inférences (MI)

Principes de fonctionnement des moteurs d inférences. Le Moteur d Inférences (MI) Principes de fonctionnement des moteurs d inférences 1 Le Moteur d Inférences (MI) BCD Si A et B -> D Si A et non D -> non C BCP Moteur d Inférences A vrai C faux B? D? Le MI décide, en fonction de la

Plus en détail

Programmation d'agents intelligents Vers une refonte des fils de raisonnement. Stage de fin d'études Master IAD 2006

Programmation d'agents intelligents Vers une refonte des fils de raisonnement. Stage de fin d'études Master IAD 2006 vendredi 8 septembre 2006 Programmation d'agents intelligents Vers une refonte des fils de raisonnement Stage de fin d'études Master IAD 2006 Benjamin DEVEZE Responsable : M. Patrick TAILLIBERT Plan Plan

Plus en détail

L apprentissage automatique

L apprentissage automatique L apprentissage automatique L apprentissage automatique L'apprentissage automatique fait référence au développement, à l analyse et à l implémentation de méthodes qui permettent à une machine d évoluer

Plus en détail

Arbres de décision. Intelligence Artificielle et Systèmes Formels Master 1 I2L

Arbres de décision. Intelligence Artificielle et Systèmes Formels Master 1 I2L Arbres de décision Intelligence Artificielle et Systèmes Formels Master 1 I2L Sébastien Verel verel@lisic.univ-littoral.fr http://www-lisic.univ-littoral.fr/ verel Université du Littoral Côte d Opale Laboratoire

Plus en détail

La logique. et son automatisation

La logique. et son automatisation Université de Fribourg Cours 2001 Méthodes mathématiques de l informatique C. Auderset La logique et son automatisation Première partie: Logique propositionnelle 1. Syntaxe et sémantique de la logique

Plus en détail

Rapport du Jury du Concours 2010 Épreuve Pratique d Algorithmique et de Programmation (EPAP)

Rapport du Jury du Concours 2010 Épreuve Pratique d Algorithmique et de Programmation (EPAP) Rapport du Jury du Concours 2010 Épreuve Pratique d Algorithmique et de Programmation (EPAP) Loris Marchal, Guillaume Melquion, Frédéric Tronel 21 juin 2011 Remarques générales à propos de l épreuve Organisation

Plus en détail

Initiation à la Programmation en Logique avec SISCtus Prolog

Initiation à la Programmation en Logique avec SISCtus Prolog Initiation à la Programmation en Logique avec SISCtus Prolog Identificateurs Ils sont représentés par une suite de caractères alphanumériques commençant par une lettre minuscule (les lettres accentuées

Plus en détail

Chapitre 2. Eléments pour comprendre un énoncé

Chapitre 2. Eléments pour comprendre un énoncé Chapitre 2 Eléments pour comprendre un énoncé Ce chapitre est consacré à la compréhension d un énoncé. Pour démontrer un énoncé donné, il faut se reporter au chapitre suivant. Les tables de vérité données

Plus en détail

Introduction au datamining

Introduction au datamining Introduction au datamining Patrick Naïm janvier 2005 Définition Définition Historique Mot utilisé au départ par les statisticiens Le mot indiquait une utilisation intensive des données conduisant à des

Plus en détail

Évaluation et implémentation des langages

Évaluation et implémentation des langages Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation

Plus en détail

Algorithmique et Programmation Fonctionnelle

Algorithmique et Programmation Fonctionnelle Algorithmique et Programmation Fonctionnelle RICM3 Cours 9 : Lambda-calcul Benjamin Wack Polytech 2014-2015 1 / 35 La dernière fois Typage Polymorphisme Inférence de type 2 / 35 Plan Contexte λ-termes

Plus en détail

Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle

Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) PLANIFICATION DE TÂCHES DANS MS PROJECT IFT702 Planification en intelligence artificielle Présenté à M. Froduald KABANZA

Plus en détail

Modélisation agent d une Architecture Logicielle de commande d un Véhicule Autonome

Modélisation agent d une Architecture Logicielle de commande d un Véhicule Autonome Modélisation agent d une Architecture Logicielle de commande d un Véhicule Autonome ENNAJI Mourad LASC université de Metz Ile du Saulcy B.P 80794 57 012 METZ Ennaji@lasc.sciences.univ-metz.fr Résumé Cet

Plus en détail

Contributions à l'apprentissage automatique de réseau de contraintes et à la constitution automatique de comportements sensorimoteurs en robotique.

Contributions à l'apprentissage automatique de réseau de contraintes et à la constitution automatique de comportements sensorimoteurs en robotique. Contributions à l'apprentissage automatique de réseau de contraintes et à la constitution automatique de comportements sensorimoteurs en robotique. Mathias PAULIN LIRMM (CNRS, Univ. Montpellier II) 161

Plus en détail

Fondements de l informatique Logique, modèles, et calculs

Fondements de l informatique Logique, modèles, et calculs Fondements de l informatique Logique, modèles, et calculs Cours INF423 de l Ecole Polytechnique Olivier Bournez Version du 20 septembre 2013 2 Table des matières 1 Introduction 9 1.1 Concepts mathématiques........................

Plus en détail

Systèmes d information et bases de données (niveau 1)

Systèmes d information et bases de données (niveau 1) Systèmes d information et bases de données (niveau 1) Cours N 1 Violaine Prince Plan du cours 1. Bibliographie 2. Introduction aux bases de données 3. Les modèles 1. Hiérarchique 2. Réseau 3. Relationnel

Plus en détail

Réseaux causaux possibilistes pour le traitement des interventions

Réseaux causaux possibilistes pour le traitement des interventions Les modèles graphiques probabilistes Réseaux causaux possibilistes pour le traitement des interventions Salem ENFERHT CRIL, Lens benferhat@cril.univ-artois.fr Outils importants pour la représentation et

Plus en détail

Structures de données non linéaires

Structures de données non linéaires Structures de données non linéaires I. Graphes Définition Un graphe (simple) orienté G est un couple (S, A), où : S est un ensemble dont les éléments sont appelés les sommets. A est un ensemble de couples

Plus en détail

4.2 Unités d enseignement du M1

4.2 Unités d enseignement du M1 88 CHAPITRE 4. DESCRIPTION DES UNITÉS D ENSEIGNEMENT 4.2 Unités d enseignement du M1 Tous les cours sont de 6 ECTS. Modélisation, optimisation et complexité des algorithmes (code RCP106) Objectif : Présenter

Plus en détail

Automatisation de la certification formelle de systèmes critiques par instrumentation d interpréteurs abstraits

Automatisation de la certification formelle de systèmes critiques par instrumentation d interpréteurs abstraits 1 d Automatisation de la certification formelle de systèmes critiques par instrumentation d sous la direction de Michaël Périn Soutenance de Thèse de Doctorat Université de Grenoble - Laboratoire Verimag

Plus en détail

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason

Plus en détail

Algorithmes probabilistes. Références: Fundamentals of Algortihms de Gilles Brassard et Paul Bratley Note de cours de Pierre McKenzie

Algorithmes probabilistes. Références: Fundamentals of Algortihms de Gilles Brassard et Paul Bratley Note de cours de Pierre McKenzie Algorithmes probabilistes Références: Fundamentals of Algortihms de Gilles Brassard et Paul Bratley Note de cours de Pierre McKenzie Mise en contexte: Indices: Vous êtes à la recherche d un trésor légendaire

Plus en détail

Intelligence Articielle (1) Introduction

Intelligence Articielle (1) Introduction 1/32 Introduction Un peu d'histoire Les nouveaux dés Intelligence Articielle (1) Introduction Pierre Gançarski Université de Strasbourg IUT Robert Schuman DUT Informatique /32 Plan 1 Introduction 2 Un

Plus en détail

Arbres binaires de recherche (ABR) Binary Search Trees (BST)

Arbres binaires de recherche (ABR) Binary Search Trees (BST) LSVIII-BIM Algorithmie, 2015 Arbres binaires de recherche (ABR) Binary Search Trees (BST) I. Arbres binaires 1. Structure 2. Parcours II. Arbres binaires de recherche 1. Définition 2. Opérations sur les

Plus en détail

Raisonnement probabiliste

Raisonnement probabiliste Plan Raisonnement probabiliste IFT-17587 Concepts avancés pour systèmes intelligents Luc Lamontagne Réseaux bayésiens Inférence dans les réseaux bayésiens Inférence exacte Inférence approximative 1 2 Contexte

Plus en détail

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG)

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG) Surveillance et maintenance prédictive : évaluation de la latence de fautes Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG) SURVEILLANCE Analyser une situation et fournir des indicateurs! Détection de symptômes!

Plus en détail

Artificial Intelligence AI

Artificial Intelligence AI Pedagogical Introduction Artificial Intelligence AI Lecture 0 Karim Bouzoubaa This Lecture General Information Examples Importance At the end Intelligent Systems Course Content, Other AI courses, Learning

Plus en détail

Systèmes de dialogue homme-machine

Systèmes de dialogue homme-machine Systèmes de dialogue homme-machine Une introduction rapide Sophie Rosset Groupe Traitement du Langage Parlé Département Communication Homme-Machine LIMSI - CNRS Sophie Rosset (LIMSI) Systèmes de dialogue

Plus en détail

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

Jade. Projet Intelligence Artificielle «Devine à quoi je pense» Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges

Plus en détail

Notions de langage machine

Notions de langage machine Notions de langage machine 18 décembre 2009 Rappels et introduction Architecture de Van Neumann : Processeur = UC + UAL Mémoire interne au processeur = les registres (soit seulement l accumulateur, soit

Plus en détail

IFT6561. Simulation: aspects stochastiques

IFT6561. Simulation: aspects stochastiques IFT 6561 Simulation: aspects stochastiques DIRO Université de Montréal Automne 2013 Détails pratiques Professeur:, bureau 3367, Pav. A.-Aisenstadt. Courriel: bastin@iro.umontreal.ca Page web: http://www.iro.umontreal.ca/~bastin

Plus en détail

Tableaux (introduction) et types de base

Tableaux (introduction) et types de base Tableaux (introduction) et types de base A. Motivation..................................................... 4 B. Les tableaux.................................................... 5 C. Construction des tableaux.......................................

Plus en détail

Model checking temporisé

Model checking temporisé Model checking temporisé Béatrice Bérard LAMSADE Université Paris-Dauphine & CNRS berard@lamsade.dauphine.fr ETR 07, 5 septembre 2007 1/44 Nécessité de vérifier des systèmes... 2/44 Nécessité de vérifier

Plus en détail

M Younsi Tel :0645755250 www.formation-informatiques.fr mousse.younsi@ formation-informatiques.fr

M Younsi Tel :0645755250 www.formation-informatiques.fr mousse.younsi@ formation-informatiques.fr U2 MATHÉMATIQUES POUR L INFORMATIQUE Dans ce document, on trouve toutes les notions que le référentiel du BTS SIO impose pour l epreuve U22. Les éléments en rouge sont des rappels concernant la notion

Plus en détail

Les automates. Fabrice EUDES, Pascal EVRARD, Philippe MARQUET, François RECHER & Yann SECQ

Les automates. Fabrice EUDES, Pascal EVRARD, Philippe MARQUET, François RECHER & Yann SECQ Les automates Fabrice EUDES, Pascal EVRARD, Philippe MARQUET, François RECHER & Yann SECQ Avril 2015 Retour sur l île et le barman Deux problèmes similaires: Des îles, des bateaux et un trésor à trouver

Plus en détail

Logique. Plan du chapitre

Logique. Plan du chapitre Logique Ce chapitre est assez abstrait en première lecture, mais est (avec le chapitre suivant «Ensembles») probablement le plus important de l année car il est à la base de tous les raisonnements usuels

Plus en détail

Conception des systèmes répartis

Conception des systèmes répartis Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan

Plus en détail

Les apports de l informatique. Aux autres disciplines

Les apports de l informatique. Aux autres disciplines Les apports de l informatique Aux autres disciplines Le statut de technologie ou de sous-discipline est celui de l importation l et de la vulgarisation Le statut de science à part entière est lorsqu il

Plus en détail

Les nombres entiers. Durée suggérée: 3 semaines

Les nombres entiers. Durée suggérée: 3 semaines Les nombres entiers Durée suggérée: 3 semaines Aperçu du module Orientation et contexte Pourquoi est-ce important? Dans le présent module, les élèves multiplieront et diviseront des nombres entiers concrètement,

Plus en détail

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2) Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter

Plus en détail

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite

Plus en détail

Cours 1 : Qu est-ce que la programmation?

Cours 1 : Qu est-ce que la programmation? 1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre

Plus en détail

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas

Plus en détail

AXES DE RECHERCHE - DOMAINE D'INTERET MAJEUR LOGICIELS ET SYSTEMES COMPLEXES

AXES DE RECHERCHE - DOMAINE D'INTERET MAJEUR LOGICIELS ET SYSTEMES COMPLEXES 1 AXES DE RECHERCHE - DOMAINE D'INTERET MAJEUR LOGICIELS ET SYSTEMES COMPLEXES 2 Axes de recherche L activité du DIM LSC concerne la méthodologie de la conception et le développement de systèmes à forte

Plus en détail

Environnement Architecture de controle. Décisions

Environnement Architecture de controle. Décisions Chapitre 1 Introduction 1.1 Robot Mobile Il existe diverses définitions du terme robot, mais elles tournent en général autour de celle-ci : Un robot est une machine équipée de capacités de perception,

Plus en détail

Techniques et outils de test pour les logiciels réactifs synchrones

Techniques et outils de test pour les logiciels réactifs synchrones Journées Systèmes et Logiciels Critiques Institut IMAG ; 14-16 nombre 2000 Techniques et outils de test pour les logiciels réactifs synchrones Farid Ouabdesselam 1 Méthodes de test : classification générale

Plus en détail

Réalisabilité et extraction de programmes

Réalisabilité et extraction de programmes Mercredi 9 mars 2005 Extraction de programme: qu'est-ce que c'est? Extraire à partir d'une preuve un entier x N tel que A(x). π x N A(x) (un témoin) (En fait, on n'extrait pas un entier, mais un programme

Plus en détail

Apprentissage. Intelligence Artificielle NFP106 Année 2012-2013. Plan. Apprentissage. Apprentissage

Apprentissage. Intelligence Artificielle NFP106 Année 2012-2013. Plan. Apprentissage. Apprentissage Intelligence Artificielle NFP106 Année 2012-2013 Apprentissage! F.-Y. Villemin! Plan! Apprentissage! Induction! Règles d'inférence inductive! Apprentissage de concepts!! Arbres de décision! ID3! Analogie

Plus en détail

Calculabilité Cours 3 : Problèmes non-calculables. http://www.irisa.fr/lande/pichardie/l3/log/

Calculabilité Cours 3 : Problèmes non-calculables. http://www.irisa.fr/lande/pichardie/l3/log/ Calculabilité Cours 3 : Problèmes non-calculables http://www.irisa.fr/lande/pichardie/l3/log/ Problèmes et classes de décidabilité Problèmes et classes de décidabilité Nous nous intéressons aux problèmes

Plus en détail

λ-calcul et typage Qu est-ce qu une fonction?

λ-calcul et typage Qu est-ce qu une fonction? λ-calcul et typage Nicolas Barnier, Pascal Brisset ENAC Avril 2009 Nicolas Barnier, Pascal Brisset (ENAC) λ-calcul et typage Avril 2009 1 / 1 Qu est-ce qu une fonction? Classiquement Pas de notation uniforme/standard

Plus en détail

Introduction au Data-Mining

Introduction au Data-Mining Introduction au Data-Mining Alain Rakotomamonjy - Gilles Gasso. INSA Rouen -Département ASI Laboratoire PSI Introduction au Data-Mining p. 1/25 Data-Mining : Kèkecé? Traduction : Fouille de données. Terme

Plus en détail

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives introduction Chapitre 5 Images récursives http ://univ-tln.fr/~papini/sources/flocon.htm Récursivité http://www.poulain.org/fractales/index.html Image qui se contient elle-même 1 Exemples mathématiques

Plus en détail

Les structures de données. Rajae El Ouazzani

Les structures de données. Rajae El Ouazzani Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l

Plus en détail

Coup de Projecteur sur les Réseaux de Neurones

Coup de Projecteur sur les Réseaux de Neurones Coup de Projecteur sur les Réseaux de Neurones Les réseaux de neurones peuvent être utilisés pour des problèmes de prévision ou de classification. La représentation la plus populaire est le réseau multicouche

Plus en détail

présentée en vue de de L ÉCOLE NATIONALE SUPÉRIEURE DE L AÉRONAUTIQUE ET DE L ESPACE par Yacine Zemali

présentée en vue de de L ÉCOLE NATIONALE SUPÉRIEURE DE L AÉRONAUTIQUE ET DE L ESPACE par Yacine Zemali N o d ordre: 394 THÈSE présentée en vue de l obtention du titre de DOCTEUR de L ÉCOLE NATIONALE SUPÉRIEURE DE L AÉRONAUTIQUE ET DE L ESPACE Spécialité Systèmes Décisionnels par Yacine Zemali Équipe d accueil

Plus en détail

La construction du nombre en petite section

La construction du nombre en petite section La construction du nombre en petite section Éléments d analyse d Pistes pédagogiquesp 1 La résolution de problèmes, premier domaine de difficultés des élèves. Le calcul mental, deuxième domaine des difficultés

Plus en détail

Chapitre 5 : Flot maximal dans un graphe

Chapitre 5 : Flot maximal dans un graphe Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d

Plus en détail

Architectures Logicielles et Matérielles Travaux Dirigés Circuits

Architectures Logicielles et Matérielles Travaux Dirigés Circuits UNIVERSITE Joseph FOURIER, Grenoble U.F.R. d Informatique et Maths. Appliquées Architectures Logicielles et Matérielles Travaux Dirigés Circuits Rappel : dessins des portes logiques. Déroulement envisagé

Plus en détail

Introduction à l Algorithmique

Introduction à l Algorithmique Introduction à l Algorithmique N. Jacon 1 Définition et exemples Un algorithme est une procédure de calcul qui prend en entier une valeur ou un ensemble de valeurs et qui donne en sortie une valeur ou

Plus en détail

Mémo de logique formelle élémentaire

Mémo de logique formelle élémentaire Université Paris-IV, DEUG de Philosophie Mémo de logique formelle élémentaire PH203A - 2004-2005 - TD Julien Dutant 6 décembre 2004 Le présent document un mémo de logique formelle élémentaire. 1 Il ne

Plus en détail

Plus courts chemins, programmation dynamique

Plus courts chemins, programmation dynamique 1 Plus courts chemins, programmation dynamique 1. Plus courts chemins à partir d un sommet 2. Plus courts chemins entre tous les sommets 3. Semi-anneau 4. Programmation dynamique 5. Applications à la bio-informatique

Plus en détail

Cours d Algorithmique et Complexité

Cours d Algorithmique et Complexité Cours d Algorithmique et Complexité Structures de données (2e suite) Catalin Dima Arbres binaires de recherche Propriété de base des arbres binaires de recherche Soit x un noeud de l arbre. Alors : 1.

Plus en détail

Introduction au développement du logiciel

Introduction au développement du logiciel Introduction au développement du logiciel Vers le génie logiciel Université de Nantes Master Miage M1 Plan 1 Introduction 2 Génie logiciel 3 Projet informatique 4 Méthode de développement 5 Qualité Bibliographie

Plus en détail

Cours 7 : fonctions recursives, arithmétique binaire, flottants 1

Cours 7 : fonctions recursives, arithmétique binaire, flottants 1 Cours 7 : fonctions recursives, arithmétique binaire, flottants 1 Les types énumérés On peut aussi définir des types qui ont un nombre fini de valeurs (ex: jours de la semaine, couleurs primaires, etc.)

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université

Plus en détail

Proposition de programme de formation pour les enseignants chargés de la spécialité Informatique et sciences du numérique en terminale S

Proposition de programme de formation pour les enseignants chargés de la spécialité Informatique et sciences du numérique en terminale S Proposition de programme de formation pour les enseignants chargés de la spécialité Informatique et sciences du numérique en terminale S La formation des enseignants chargés de la spécialité Informatique

Plus en détail

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire 2008-2009. Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera.

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire 2008-2009. Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera. Cours Optimisation Partie Optimisation Combinatoire 3ième année ISAE Année scolaire 2008-2009 Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera.fr Septembre 2008 Résumé Ce document couvre

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en

Plus en détail

Logique : ENSIIE 1A - contrôle final

Logique : ENSIIE 1A - contrôle final 1 Logique : ENSIIE 1A - contrôle final - CORRIGÉ Mardi 11 mai 2010 - Sans documents - Sans calculatrice ni ordinateur Durée : 1h30 Les exercices sont indépendants. Exercice 1 (Logique du premier ordre

Plus en détail

Grammaires d unification

Grammaires d unification Cours sur le traitement automatique des langues (IV) Violaine Prince Université de Montpellier 2 LIRMM-CNRS Grammaires d unification Grammaire catégorielle Grammaire syntagmatique généralisée (GPSG) Les

Plus en détail

Modélisation aléatoire en fiabilité des logiciels

Modélisation aléatoire en fiabilité des logiciels collection Méthodes stochastiques appliquées dirigée par Nikolaos Limnios et Jacques Janssen La sûreté de fonctionnement des systèmes informatiques est aujourd hui un enjeu économique et sociétal majeur.

Plus en détail

Une calculatrice qui manipule les régions cubiques

Une calculatrice qui manipule les régions cubiques Une calculatrice qui manipule les régions cubiques Emmanuel Haucourt 1 Introduction Alors qu une calculatrice usuelle effectue des opérations numériques (addition, multiplication, soustraction, division,

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de

Plus en détail

Les diagrammes de modélisation

Les diagrammes de modélisation L approche Orientée Objet et UML 1 Plan du cours Introduction au Génie Logiciel L approche Orientée Objet et Notation UML Les diagrammes de modélisation Relations entre les différents diagrammes De l analyse

Plus en détail

Master Sciences et Technologies. Mention Informatique. Spécialité MOCAD. En Alternance

Master Sciences et Technologies. Mention Informatique. Spécialité MOCAD. En Alternance Master Sciences et Technologies Mention Informatique Spécialité MOCAD En Alternance 2 Le Master Informatique MOCAD de l'université Lille 1 s'adresse à tout étudiant(e) titulaire d'une première année de

Plus en détail

Génie Logiciel avec Ada. 4 février 2013

Génie Logiciel avec Ada. 4 février 2013 Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre

Plus en détail

Licence mention Informatique

Licence mention Informatique UNIVERSITE PARIS 13 Institut Galilée Licence mention Informatique Semestres 5 et 6 Responsable de la formation : Daniel KAYSER UNIVERSITE PARIS 13, INSTITUT GALILEE SECRETARIAT des licences, BUREAU D 201

Plus en détail

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

Exercices «Programmation récursive» Deuxième saison UPMC Cycle L Revision: 1.21

Exercices «Programmation récursive» Deuxième saison UPMC Cycle L Revision: 1.21 Exercices «Programmation récursive» Deuxième saison UPMC Cycle L Revision: 1.21 Anne Brygoo, Maryse Pelletier, Christian Queinnec, Michèle Soria Université Paris 6 Pierre et Marie Curie septembre 2005

Plus en détail

Christophe CANDILLIER Cours de DataMining mars 2004 Page 1

Christophe CANDILLIER Cours de DataMining mars 2004 Page 1 Christophe CANDILLIER Cours de DataMining mars 2004 age 1 1. Introduction 2. rocessus du DataMining 3. Analyse des données en DataMining 4. Analyse en Ligne OLA 5. Logiciels 6. Bibliographie Christophe

Plus en détail

APPORT DES RESEAUX BAYESIENS DANS LA PREVENTION DE LA DELINQUANCE

APPORT DES RESEAUX BAYESIENS DANS LA PREVENTION DE LA DELINQUANCE SûretéGlobale.Org La Guitonnière 49770 La Meignanne Téléphone : +33 241 777 886 Télécopie : +33 241 200 987 Portable : +33 6 83 01 01 80 Adresse de messagerie : c.courtois@sureteglobale.org APPORT DES

Plus en détail

Commentaires sur le texte de Giuseppe Longo

Commentaires sur le texte de Giuseppe Longo Intellectica, 2002/2, 35, pp. 179-183 Commentaires sur le texte de Giuseppe Longo Jacques Pitrat Commentaries on the text of Giuseppe Longo A. ENTERRONS LE TEST DE TURING Le test de Turing était une excellente

Plus en détail

Métriques de performance pour les algorithmes et programmes parallèles

Métriques de performance pour les algorithmes et programmes parallèles Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and

Plus en détail