4AI04 - RIA Initiation à l Intelligence Artificielle. Raja Chatila Raja.Chatila@isir.upmc.fr 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 Raja.Chatila@isir.upmc.fr 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

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 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Université de Bangui. Modélisons en UML

Université de Bangui. Modélisons en UML Université de Bangui CRM Modélisons en UML Ce cours a été possible grâce à l initiative d Apollinaire MOLAYE qui m a contacté pour vous faire bénéficier de mes connaissances en nouvelles technologies et

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

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

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

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 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

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

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

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

Cours de Génie Logiciel

Cours de Génie Logiciel Cours de Génie Logiciel Sciences-U Lyon Diagrammes UML (2) http://www.rzo.free.fr Pierre PARREND 1 Avril 2005 Sommaire Les Diagrammes UML Diagrammes de Collaboration Diagrammes d'etats-transitions Diagrammes

Plus en détail

Théorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France

Théorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France Théorie et Codage de l Information (IF01) exercices 2013-2014 Paul Honeine Université de technologie de Troyes France TD-1 Rappels de calculs de probabilités Exercice 1. On dispose d un jeu de 52 cartes

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

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

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

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

Bases de données déductives

Bases de données déductives Bases de données déductives par Mohand-Saïd HACID Maître de conférences en informatique à l université Lyon-I et Jacques KOULOUMDJIAN Docteur ès sciences Professeur d informatique à l INSA de Lyon 1. Bases

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

Modèles de tâche. Introduction : tâche, activité.

Modèles de tâche. Introduction : tâche, activité. Modèles de tâche Introduction : tâche, activité. Analyse de tâches, modèle de tâche, activité sont des termes issus de l ergonomie qui se sont propagés dans de nombreux domaines, du génie logiciel, de

Plus en détail

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Modèles à Événements Discrets. Réseaux de Petri Stochastiques Modèles à Événements Discrets Réseaux de Petri Stochastiques Table des matières 1 Chaînes de Markov Définition formelle Idée générale Discrete Time Markov Chains Continuous Time Markov Chains Propriétés

Plus en détail

I Stabilité, Commandabilité et Observabilité 11. 1 Introduction 13 1.1 Un exemple emprunté à la robotique... 13 1.2 Le plan... 18 1.3 Problème...

I Stabilité, Commandabilité et Observabilité 11. 1 Introduction 13 1.1 Un exemple emprunté à la robotique... 13 1.2 Le plan... 18 1.3 Problème... TABLE DES MATIÈRES 5 Table des matières I Stabilité, Commandabilité et Observabilité 11 1 Introduction 13 1.1 Un exemple emprunté à la robotique................... 13 1.2 Le plan...................................

Plus en détail

Modélisation multi-agents - Agents réactifs

Modélisation multi-agents - Agents réactifs Modélisation multi-agents - Agents réactifs Syma cursus CSI / SCIA Julien Saunier - julien.saunier@ifsttar.fr Sources www-lih.univlehavre.fr/~olivier/enseignement/masterrecherche/cours/ support/algofourmis.pdf

Plus en détail

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery.

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery. Cours de Recherche Opérationnelle IUT d Orsay Nicolas M. THIÉRY E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery.name/ CHAPTER 1 Introduction à l optimisation 1.1. TD: Ordonnancement

Plus en détail

Qualité du logiciel: Méthodes de test

Qualité du logiciel: Méthodes de test Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution

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

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION DES NOMBRES par Jean-Luc BREGEON professeur formateur à l IUFM d Auvergne LE PROBLÈME DE LA REPRÉSENTATION DES NOMBRES On ne conçoit pas un premier enseignement

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

Formula Negator, Outil de négation de formule.

Formula Negator, Outil de négation de formule. Formula Negator, Outil de négation de formule. Aymerick Savary 1,2, Mathieu Lassale 1,2, Jean-Louis Lanet 1 et Marc Frappier 2 1 Université de Limoges 2 Université de Sherbrooke Résumé. Cet article présente

Plus en détail

TD 1 - Structures de Traits et Unification

TD 1 - Structures de Traits et Unification TD 1 - Structures de Traits et Unification 1 Définitions Un trait (en: feature) est un couple attribut-valeur. Une structure de traits (en: feature structure) est un ensemble de traits. On peut les représenter

Plus en détail

ARBRES BINAIRES DE RECHERCHE

ARBRES BINAIRES DE RECHERCHE ARBRES BINAIRES DE RECHERCHE Table de symboles Recherche : opération fondamentale données : éléments avec clés Type abstrait d une table de symboles (symbol table) ou dictionnaire Objets : ensembles d

Plus en détail

Gestion de projets logiciels. Xavier Dubuc

Gestion de projets logiciels. Xavier Dubuc Gestion de projets logiciels Résumé blocus Xavier Dubuc 16 janvier 2011 1 Table des matières 1 Planification (PERT-GANTT) 3 1.1 Définitions............................................. 3 1.2 Analyse un

Plus en détail

Contrôle stochastique d allocation de ressources dans le «cloud computing»

Contrôle stochastique d allocation de ressources dans le «cloud computing» Contrôle stochastique d allocation de ressources dans le «cloud computing» Jacques Malenfant 1 Olga Melekhova 1, Xavier Dutreilh 1,3, Sergey Kirghizov 1, Isis Truck 2, Nicolas Rivierre 3 Travaux partiellement

Plus en détail

Apprentissage Automatique

Apprentissage Automatique Apprentissage Automatique Introduction-I jean-francois.bonastre@univ-avignon.fr www.lia.univ-avignon.fr Définition? (Wikipedia) L'apprentissage automatique (machine-learning en anglais) est un des champs

Plus en détail

Ordonnancement temps réel

Ordonnancement temps réel Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2 éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........

Plus en détail

Programme scientifique Majeure INTELLIGENCE NUMERIQUE. Mentions Image et Réalité Virtuelle Intelligence Artificielle et Robotique

Programme scientifique Majeure INTELLIGENCE NUMERIQUE. Mentions Image et Réalité Virtuelle Intelligence Artificielle et Robotique É C O L E D I N G É N I E U R D E S T E C H N O L O G I E S D E L I N F O R M A T I O N E T D E L A C O M M U N I C A T I O N Programme scientifique Majeure INTELLIGENCE NUMERIQUE Langage Java Mentions

Plus en détail

Programmation par contraintes. Laurent Beaudou

Programmation par contraintes. Laurent Beaudou Programmation par contraintes Laurent Beaudou On se trouve où? Un problème, une solution : la solution est-elle une solution du problème? simulation, vérification 2 On se trouve où? Un problème, une solution

Plus en détail

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

1ère partie Nadine Cullot. Bases de données déductives. Bases de données déductives Introduction et Motivation

1ère partie Nadine Cullot. Bases de données déductives. Bases de données déductives Introduction et Motivation Master STIC «Image Informatique et Ingénierie» Module Informatique Modèles de représentation - 10h CM Nadine Cullot Kokou Yétongnon nadine.cullot@u-bourgogne.fr kokou.yetongnon@u-bourgogne.fr 1ère partie

Plus en détail

Architecture des Systèmes d Information Architecture des Systèmes d Information

Architecture des Systèmes d Information Architecture des Systèmes d Information Plan... Tableaux et tris I3 - Algorithmique et programmation 1 Rappels Nicol Delestre 2 Tableaux à n dimensions 3 Initiation aux tris Tableaux - v2.0.1 1 / 27 Tableaux - v2.0.1 2 / 27 Rappels : tableau

Plus en détail

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation

Plus en détail

Introduction au Data-Mining

Introduction au Data-Mining Introduction au Data-Mining Gilles Gasso, Stéphane Canu INSA Rouen -Département ASI Laboratoire LITIS 8 septembre 205. Ce cours est librement inspiré du cours DM de Alain Rakotomamonjy Gilles Gasso, Stéphane

Plus en détail

Synthèse «Le Plus Grand Produit»

Synthèse «Le Plus Grand Produit» Introduction et Objectifs Synthèse «Le Plus Grand Produit» Le document suivant est extrait d un ensemble de ressources plus vastes construites par un groupe de recherche INRP-IREM-IUFM-LEPS. La problématique

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Organigramme / Algorigramme Dossier élève 1 SI

Organigramme / Algorigramme Dossier élève 1 SI Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué

Plus en détail

Algorithmique des Systèmes Répartis Protocoles de Communications

Algorithmique des Systèmes Répartis Protocoles de Communications Algorithmique des Systèmes Répartis Protocoles de Communications Master Informatique Dominique Méry Université de Lorraine 1 er avril 2014 1 / 70 Plan Communications entre processus Observation et modélisation

Plus en détail

Notes de lecture : Dan SPERBER & Deirdre WILSON, La pertinence

Notes de lecture : Dan SPERBER & Deirdre WILSON, La pertinence Notes de lecture : Dan SPERBER & Deirdre WILSON, La pertinence Gwenole Fortin To cite this version: Gwenole Fortin. Notes de lecture : Dan SPERBER & Deirdre WILSON, La pertinence. 2006.

Plus en détail

EXAMEN CRITIQUE D UN DOSSIER TECHNIQUE

EXAMEN CRITIQUE D UN DOSSIER TECHNIQUE EXAMEN CRITIQUE D UN DOSSIER TECHNIQUE (Préparation : 5 heures -- Exposé et Questions : 1 heure) Rapport établi par : P.J. BARRE, E. JEAY, D. MARQUIS, P. RAY, A. THIMJO 1. PRESENTATION DE L EPREUVE 1.1.

Plus en détail

Programmation C++ (débutant)/instructions for, while et do...while

Programmation C++ (débutant)/instructions for, while et do...while Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de

Plus en détail

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -

Plus en détail

Intelligence artificielle et les défis en robotique mobile et autonome

Intelligence artificielle et les défis en robotique mobile et autonome Intelligence artificielle et les défis en robotique mobile et autonome Éric Beaudry http://planiart.usherbrooke.ca/~eric/ Étudiant au doctorat en informatique Laboratoires Planiart et Laborius 13 février

Plus en détail