Vers une approche générique pour l interprétation de commandes en langage naturel

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

Download "Vers une approche générique pour l interprétation de commandes en langage naturel"

Transcription

1 Vers une approche générique pour l interprétation de commandes en langage naturel Laurent Mazuel, Nicolas Sabouret Laboratoire d Informatique de Paris 6 (LIP6) 104 av du Président Kennedy Paris FRANCE http ://www-poleia.lip6.fr/ mazuel Résumé : Dans cet article, nous nous intéressons à l interprétation des commandes en langue naturelle d un utilisateur à un agent artificiel. Nous proposons une architecture générique pour le traitement de ces commandes, c est-àdire adaptable à différents types d applications. Les algorithmes de traitement dépendent uniquement du code de l agent et de l ontologie de domaine associée à cet agent. Nous présentons ensuite une évaluation comparative de trois approches : l approche descendante, reposant sur les contraintes syntaxique du langage de description de l application, l approche ascendante, reposant sur l utilisation de connaissances sur l ensemble des actions possibles de l agent et finalement une approche combinée alliant une base ascendante avec le principe de gestion des contraintes de l approche descendante. Mots-clés : Communication humain-agent, introspection, ontologie de domaine, approche ascendante et descendante, evaluation comparative 1 Introduction 1.1 Présentation du problème La communauté des Systèmes Multi-Agent (SMA) s intéressent particulièrement et depuis longtemps à la résolution de problèmes par des agents cognitifs autonomes (Ferber, 1995). A ce titre, elle étudie les protocoles et modèles d interaction formels entre agents. Ainsi, il n existait initialement que peu de travaux sur la communication humain-agent qui reste une problématique très ouverte. On assiste de plus récemment à un regain d intérêt dans ce sens, avec les récentes applications des SMAs pour l intelligence ambiante (Gárate et al., 2005) et les services web (Paurobally et al., 2005). D autre part, la communauté Agents Conversationnels Animés s intéresse particulièrement à l interaction en langue naturel entre un utilisateur humain et un agent artificiel. Elle obtient de très bon résultats dans le domaine de l interaction multi-modale

2 RJCIA 2007 (Bickmore, 2004) et des expressions d émotions (Pelachaud, 2003). Cependant, au niveau compréhension des langues, ces approches s appuient essentiellement sur des algorithmes de pattern-matching ad-hoc sans réelle analyse sémantique Abrilian et al. (2002). D autre part, la communauté des systèmes de dialogues utilise les ontologies pour s approcher d une architecture plus générique (Dzikovska et al., 2003; Milward & Beveridge, 2003). L idée importante sous-jacente à l utilisation d ontologies est de pouvoir généraliser les algorithmes de traitement sémantique afin de les faire dépendre uniquement de son formalisme. Ainsi, ces applications ne sont plus dépendantes que de l ontologie et du résolveur de problème spécifique de la tache à accomplir. Par exemple, certains systèmes utilisent ainsi l ontologie pour paramétrer un parseur générique (Dzikovska et al., 2003; Paraiso et al., 2004). Cependant, pour obtenir de bons résultats, ils imposent un formalisme de description d ontologie très contraint, efficace pour un sous-ensemble d application, mais loin des modèles ouvert classiques (concepts relations). De plus, ce type d ontologie décrit le modèle de l application et non le domaine de travail de l application. D autre part, les systèmes de dialogues reposant sur un formalisme ouvert d ontologie (e.g. (Milward & Beveridge, 2003)) utilisent alors la structure de l ontologie pour comprendre (par exemple) des commandes trop spécifiques (recherche de concepts plus généraux que ceux employés par l utilisateur) ou à l inverse trop générales. La phrase switch the light on est un exemple de commande trop générale où le système doit proposer les différentes lampes possibles à allumer. Malheureusement, les modules de traitements des langues sont alors spécifiques de l application. Nous pensons qu il est possible d extraire la sémantique des actions du code de l application directement. L ontologie ne serait plus alors une deuxième description de l application, mais une description des liens sémantiques entre les différents concepts présents dans le domaine de l application (ce qui constitue le rôle initial d une ontologie). 1.2 Plan de l article Cet article s intéresse particulièrement à l interprétation de commandes en langue naturel (LN) pour les agents cognitifs. Nous allons essayer de montrer qu il est possible de définir un système de compréhension de LN basé uniquement sur une ontologie de domaine et des agents capables d introspection. En d autres mots, les algorithmes de TAL reste les mêmes quelque soit le domaine ou l agent utilisé. Nous proposons pour cela trois strategies, les approches descendante, ascendante et combiné. De plus, nous définissons un gestionnaire de dialogue (proche de celui proposé par P. Maes (Maes, 1994)) qui permet de lancer des dialogues de désambiguïsations pour les commandes mal comprises ou incomplètes. Dans la seconde section, nous donnerons une description générale de notre modèle d agent. La section 3 présente la chaîne de base de TAL et le gestionnaire de dialogue qui sont les parties de l architecture commune aux trois algorithmes. Dans la section 4, nous introduisons les trois algorithmes génériques différents pour l interprétation de commandes. La section 5 présente une évaluation préliminaire de ces algorithmes. La section 6 conclue l article.

3 Approche générique pour LN 2 Aperçu de notre modèle d agent Notre objectif est d être capable d écrire des agents cognitifs contrôlables par des commandes en langues naturel et capable de raisonner sur leurs actions, afin de répondre aux questions sur leur comportement et leur activité. Pour ce faire, nous utilisons un langage agent spécifique qui autorise l accès à l exécution à la description de l état interne de l agent et de ses actions. 2.1 Le modèle VDL Nos agents sont programmés en utilisant le langage VDL (View Design Language) 1. Le modèle VDL est basé sur la réécriture d arbre XML : la description de l agent est un arbre dont les noeuds représentent ses données ou ses actions. L agent réécrit l arbre à chaque étape de l exécution suivant un certain nombre de mots-clés du langage présent dans les noeuds. Ce modèle permet aux agents d accéder à l exécution à la description de leurs actions afin de raisonner dessus pour de la planification, pour répondre à des questions d états formelles (Sabouret & Sansonnet, 2001), pour modéliser son comportement, etc. Le modèle VDL peut être aussi utilisé pour la composition de service web, l écriture d Agents Conversationnels Animés (Sabouret et al., 2005), des simulations de comportements sociaux... Dans le modèle VDL, chaque agent est nanti d une ontologie OWL. Cette ontologie doit contenir au minimum tout les concepts utilisés par l agent (i.e. les concepts VDL). Ces concepts sont présents dans le code XML de l agent soit comme étiquette (i.e. tag), comme attributs ou contenu texte. Nous noterons C V DL l ensemble de tous les concepts VDL et C OW L l ensemble des concepts OWL. Il existe donc une fonction injective, que nous noterons map V DL, de l ensemble des concepts VDL C V DL de l agent vers l ensemble des concepts C OW L définis dans l ontologie. 2.2 Modèle d actions Cet article traitant de la compréhension de l utilisateur, nous nous limiterons aux réactions (par opposition au comportement proactif d un agent). En VDL, les réactions sont activées par des évènements, i.e. noeuds XML envoyés à l agent en guise de commande. Ils sont la représentation formelle (i.e. en VDL) des commandes. Les réactions décrivent comment ces messages (envoyés par un utilisateur ou même un autre agent) doivent être traités. L objectif du système décrit ici est de construire des évènements VDL à partir d une commande utilisateur en LN. En VDL, comme dans la plupart des modèles de représentation des actions, nous représentons une action par un tuple r = nom, P, E où nom est le nom de l action, P l ensemble des préconditions de l action et E son ensemble d effets. Nous pouvons définir quatre types de préconditions pour une réaction r de R, l ensemble des réactions possible : P e (r) est l ensemble des préconditions d évènement. Elles sont utilisées pour aiguiller une certaine forme d évènement vers une certaine classe de réactions, ou 1

4 RJCIA 2007 <action> <name>prendre un objet</name> <event><take><object/></take></event> <guard><not> <equals><get><battery/></get><value>0</value></equals> </not></guard> <guard><exists><evt-get><object/></evt-get></exists></guard> <guard><near><evt-get><object/></evt-get></near></guard> <put> <path><robot-hand/></path> <evt-get><object/></evt-get> </put> </action> FIG. 1 Exemple de code d action en VDL. Les différents ensembles de préconditions sont calculés en fonction de la présence de certains mots clefs dans la précondition. pour rejeter les évènements globalement mal formés. Leur interprétation dans le cadre des arbres XML utilise la subsumption pour savoir si l évènement peut être correct pour au moins une réaction. P s (r) est l ensemble des préconditions de structure. Elles sont utilisées pour vérifier la syntaxe précise d un message et assurer que la réaction a toutes les informations nécessaires pour s exécuter sans erreurs. Les préconditions de P s (r) ne dépendent donc pas de l état courant de l agent, mais uniquement de la structure détaillée de l évènement. P c (r) est l ensemble des préconditions de contexte. Ces préconditions ne dépendent que du contexte courant de l agent (e.g. un robot ne prendra pas l objet demandé si sa batterie est vide, même si l objet existe et est à portée, figure 1). P cs (r) est l ensemble des préconditions contextuelles-structurelles, i.e. préconditions dépendante de l évènement et du contexte courant de l agent. Pour exemple, un robot ne peut pas attraper un objet, spécifié dans l environnement de l agent et en paramètre dans le message, si celui-ci n est pas à portée. Nous noterons P e = r R P e (r). Pour tout e P e, nous noterons R e (e) = {r R e P e (r)} l ensemble des réactions qui peuvent être traité (i.e. dont l exécution donnera lieu à des effets) par l évènement e. 3 Architecture globale Cette section présente les modules de LN communs aux trois algorithmes d interprétation. 3.1 Outils de base de TAL Dans notre projet (figure 2), le module lexical de base est celui du projet Open Source OpenNLP 2. Ce module contient un étiqueteur, un lemmatiseur (simple lien vers 2

5 Approche générique pour LN FIG. 2 Architecture générale le lemmatiseur WordNet contenu dans JWNL 3 ). L utilisation d un lemmatiseur basé sur WordNet permet la détection des mots composés (e.g. dark red, extra large ). Comme déjà constaté par Milward (Milward, 2000) et dans une de nos précédentes évaluations (Sabouret & Mazuel, 2005), l utilisation d un analyseur syntaxique (par opposition avec un simple chunker 4 ) n est pas efficace pour les commandes en langue naturelle. En effet, les utilisateurs emploient plus souvent des mots clefs que des phrases bien structurées (e.g. drop object low ou "take blue ). Les récents travaux du domaine proposent d utiliser une modélisation logique de la commande basée sur un ensemble de contraintes logiques et non des règles strictes de grammaire (Milward, 2000; Shapiro, 2000). Ce type d approche a l avantage d être plus robuste aux formulations grammaticalement incorrectes de l utilisateur. Ainsi, nous utilisons aussi une représentation logique de la commande, basée sur un appariement des relations de l ontologie dans la commande (Mazuel, 2007). Notre algorithme cherche à modéliser les relations de la commande et ses paramètres, en fonction de la définition de cette relation dans l ontologie et des chunks de la phrase. Néanmoins, cette modélisation n intervient réellement que lors d interprétations de relations complexes (e.g. the biggest triangle ) ou dans le cas de commandes non symétriques (e.g. from London to Boston a le même sac de mots que from Boston to London ). De plus, la résolution des relations a un impact comparable sur les trois algorithmes d interprétation. Pour ces deux raisons, et par clarté dans la présentation des algorithmes, nous supposerons dans cet article que le modèle de phrase de l utilisateur est un simple sac de mots (que nous noterons S). Le lecteur intéressé trouvera dans (Mazuel, 2007) plus de précision sur notre modélisation et ses implications sur l interprétation. Le premier point important avant l interprétation sémantique est de convertir le sac de mots S en un ensemble de concepts C tiré de l ontologie et en relation avec le code VDL de l agent (i.e. de faire un appariement entre les concepts énoncés par l utilisateur et les concepts manipulés par l agent contenu dans C V DL ). Les systèmes de dialogue actuels reposent, implicitement ou explicitement, sur l hypothèse de Sadek (Sadek et al., 1997) : 3 Java WordNet Library : 4 Le chunker permet de découper la phrase en groupes nominaux et groupes verbaux.

6 RJCIA 2007 Le contenu sémantique d une phrase correspond à un chemin dans le réseau sémantique décrivant les connaissances du domaine de l application 5 Autrement dit, cela signifie que tous les mots d une commande quelconque doivent avoir une correspondance dans l ontologie. Afin de respecter cette hypothèse, nous avons défini une distance sémantique simple sur notre ontologie. Soit un couple (c 1, c 2 ) COW 2 L, la distance entre les concepts c 1 et c 2 par rapport à la synonymie est : { 0 si c1 = c dist ONT (c 1, c 2 ) = 2 ou c 1 owl :sameas c 2 1 sinon avec owl :sameas la relation transitive et réflexive de la synonymie en OWL. Cette formule simple utilise au maximum la synonymie pour relier les concepts de l utilisateur à ceux de l agent. Ainsi, nous pouvons réécrire l hypothèse de Sadek pour notre système comme : Chaque concept qui apparaît dans une commande significative est soit directement lié à un concept VDL, soit lié à un concept étant au plus à une relation sameas d un concept VDL Nous avons récemment défini dans (Mazuel & Sabouret, 2007) une nouvelle mesure de distance sémantique sur les ontologies basée sur une généralisation de la distance classique de Jiang & Conrath (Jiang & Conrath, 1997). Notre mesure considère toutes les relations présentes dans l ontologie (et pas uniquement sameas). Nous sommes actuellement en cours d évaluation parallèle de l amélioration que cette mesure provoque sur le niveau global de compréhension. Cette mesure n as pas non plus d impacts sur les résultats des trois algorithmes comparés dans cet article, puisque la construction de C est la même (l impact est global, mais non distribué sur l un des trois algorithmes). Néanmoins, lors de l évaluation comparative, les mauvais résultats induit par une mauvaise compréhension de terme complexe ont été retiré, afin de ne garder que ce qui permet d évaluer correctement la différence entre les trois algorithmes d interprétation. Finalement, nous pouvons construire l ensemble C des concepts reconnus dans la commande : C = {v C V DL s S.dist ONT (map V DL (v), s) = 0} avec map V DL la fonction injective d association des concepts de l ontologie avec les concepts de l agent (section 2.1). C contient ainsi tous les concepts VDL qui apparaissent dans la commande utilisateur. Remarquons que la construction de C n est que l étape initiale des algorithmes présentés dans la section 4. Ces algorithmes utilisent tous C comme de départ pour leur interprétation sémantique. La dernière partie de notre chaîne est un générateur d anglais qui transforme un noeud VDL en une phrase anglaise, en concaténant la traduction des concepts obtenus par une analyse en profondeur du noeud XML. Cet algorithme récursif écrit l étiquette du noeud, puis ces attributs sous la forme attribut is value, son contenu texte (si il existe) puis finalement récursivement sur ses fils. Par exemple : 5 the semantic content of the utterance corresponds to a path in a semantic network describing the application domain knowledge.

7 Approche générique pour LN <take position="out"> <shape>square</shape> </take> deviendra take position is out shape is square. De plus un certain nombre de règles spécifique sont définie pour les mots-clés du langage. Le résultat est horrible syntaxiquement, mais suffisant pour que les utilisateurs comprennent les propositions du système dans notre évaluation. Il est possible d améliorer le résultat avec les travaux de générateurs basés sur XML Bateman (1997). 3.2 Le gestionnaire de dialogue Le gestionnaire de dialogue (GD) est responsable des dialogues avec l utilisateur pour l acceptation d une commande, mais aussi pour la gestion des commandes incomplètes ou imprécises. Notre système n est pas un système de dialogue, néanmoins ce module mérite ce titre car il peut déclencher de courtes phases de dialogue quand il estime que la compréhension des commandes est limitée. Le paramètre d entrée de notre GD est l ensemble d évènements créé par l un des trois algorithmes que nous détaillerons dans la section 4 (approche descendante, ascendante, combinaison des deux). Les trois algorithmes ont la même interface en entrée et en sortie, afin de simplifier l intégration au milieu des modules communs Évènements possibles et impossibles Notre GD récupère ainsi un ensemble d évènements, que nous noterons G, proposé par les algorithmes d interprétation sémantique. Sa première étape est de découper cet ensemble en deux sous-ensembles disjoints : L ensemble E des évènements possibles dans le contexte courant de l agent. L ensemble F des évènements impossibles. Ils ne correspondent pas forcement à une mauvaise modélisation par l un des trois algorithmes, l utilisateur pouvant parfaitement poser une commande impossible à réaliser par l agent (impossible de manière générale ou de manière contextuelle). Pour construire ces ensembles, posons P(r) = P c (r) P s (r) P cs (r) l ensemble des préconditions utiles pour décider si un évènement peut être utilisé par la réaction r 6. Notons Υ l ensemble (infini) de tout les noeuds VDL possibles. Soit eval : Υ 2 {, } la fonction d évaluation booléenne d une précondition : p P(r), eval(p, e) = ssi la précondition p est valide par rapport à l évènement e et à l état courant de l agent. L ensemble E est calculé de la façon suivante, E = {e G r R e (e), p P(r), eval(p, e) = } L ensemble F est l ensemble des évènements restant, soit F = G\E. Remarquons que E et F ne contiennent pas forcement tous les évènements possibles ou impossibles, ils représentent seulement un partitionnement des propositions faites par l algorithme d interprétation en cours. De plus, pour tout e F, nous notons np(e) r R e(e) P(r) l ensemble des préconditions fausses empêchant l évènement d être possible. Comme F est l ensemble 6 L ensemble P e(r) n est pas utilisé car il décide si l évènement est correctement construit, ce qui est l hypothèse de travail minimal des trois algorithmes.

8 RJCIA 2007 des évènements impossibles, e F, np(e). L ensemble est calculé de la façon suivante : np(e) = {p P(r) eval(p, e) = } r R e(e) Le GD calcule ensuite le score d appariement entre chacun des évènements de E et F et la commande utilisateur. Pour tout noeud n Υ et pour tout concept reconnus c C (C est l ensemble des concepts reconnus dans la commande, section 3.1), nous notons contains(n, c) la fonction permettant de déterminer si l évènement e contient le concept c : contains(n, c) = x sub(n) c {tag(x), attributes(x), content(x)} avec sub(n) l ensemble de tout les sous-ensembles de n Υ. En d autre mot, la fonction contains(n, c) est vraie ssi c apparaît quelque part dans l arbre associé au noeud n. Le degré d appariement pour e E ou e F est alors définie par : p(e) = card({c C contains(e, c)}) card(c) Avec l aide de ce score, nous construisons maintenant E max et F max les sous-ensembles d évènements à score maximaux. Soit les scores p E = max({p(e), e E}) et p F = max({p(e), e F}), alors : { si pe = 0 E max = {e E p(e) = p E } sinon et F max est construit de manière analogue. p E et p F sont les scores d appariement des éléments de E max and F max. En d autres mots, le GD ne prend en considération que les meilleurs évènements comparativement à la commande utilisateur parmi ceux générés par l interprétation Réponse à l utilisateur Pour l exploitation de ces deux sous-ensembles, nous définissons deux seuils de compréhension : p min est la limite séparant les commandes incomprises des commandes comprises sans certitude et p max est le score séparant les commandes comprises sans certitude des commandes parfaitement comprises. Ces seuils correspondent, dans le principe, aux seuils tell me et do it de Patty Maes dans (Maes, 1994). Elles proposent empiriquement les valeurs : p min = 0.3 et p max = 0.8, valeurs que nous avons gardé pour notre évaluation. Le retour à l utilisateur donné par le GD est dépendant de la position relative des deux scores p E et p F entre eux et par rapport aux deux seuils p min et p max : 1. Si p E p max, la commande est considérée comme correctement comprise par le système. Le GD envoie l évènement à l agent (si E max = 1) ou informe l utilisateur d une ambiguïté (si E max > 1). Par exemple 7 : U : Take something red 7 Tous les exemples viennent des traces collectées pendant l évaluation section 5

9 Approche générique pour LN S : I can either take object square red, take object triangle red. 2. Si p min < p E < p max et p E < p F, l interprétation la mieux notée n est pas possible dans l état courant (p F > p E ), mais un évènement proche est possible et a reçu un bon score (p E > p min ). Le GD demande à l utilisateur de reformuler. Il affiche la liste des préconditions fausses empêchant l action ( e Fmax np(e)) et la liste des évènements possibles proches E max. U : Put it on the upper left cell (alors que la case en haut à gauche est déjà occupée) S : I can t because : the content of upper left cell is not empty. Therefore, i can either : - drop object in the upper middle, in the upper right, in the center left or in the lower left 3. Si p min < p E < p max et p F < p E, les évènements impossible peuvent être ignorés, mais le système n est pas sûr d avoir compris la commande de l utilisateur (p E < p max ). Il demande une confirmation et affiche les évènements e E max. U : Take the blue or red triangle form (alors qu il n existe pas de triangle bleu) S : Do you mean take object triangle red? 4. Si p E p min et p max p F, le système a correctement compris une commande impossible. Il prévient l utilisateur que cette commande n est pas possible et lui donne la liste des préconditions fausses np(e), e F max. U : Take the blue red figure (main déjà pleine) S : I can t because : the content of hand is not empty. 5. Si p E p min et p min < p F < p max, le système a peut-être reconnu une commande, mais elle est impossible. Le GD demande confirmation à l utilisateur. 6. Si p E p min et p F p min, le système n a pas compris la commande. 4 Algorithmes d interprétation Cette section présente les algorithmes construisant l ensemble d évènements G à partir de la commande et du code de l agent. Comme souligné par Allen (Allen et al., 1996), deux méthodes sont applicables pour l interprétation : la descendante et l ascendante. Nous proposons d abord une implémentation générique de ces deux approches. Par générique, nous entendons indépendant de l application et uniquement dépendant du formalisme de l ontologie et de la sémantique opérationnelle du langage VDL. Nous proposons finalement une tentative de combinaison des deux, basé sur une évaluation préliminaire faite sur les deux premiers algorithmes.

10 RJCIA L approche descendante L approche descendante (i.e. top-down) consiste à construire une commande formelle (i.e. évènement en VDL) à partir de la commande en LN en considérant uniquement les contraintes structurelles imposées par le modèle formel du langage (e.g. (Sadek et al., 1997; Shapiro, 2000)). Elle est couramment utilisée en dialogue, en situation où il est difficile de prévoir à l avance l étendue des commandes ou de déterminer ce qu il est possible d effectuer à l instant courant. Le principal défaut de cette approche est lié à la difficulté de définir des règles génériques de transformation dans le système. Ainsi, les systèmes actuels définissent un grand nombre de règles spécifiques de l application, afin de réduire au maximum la création d évènements impossibles (évènements ne donnant lieu à aucune action car une des préconditions de P e, P c ou P s est fausse). Par exemple, Shapiro (Shapiro, 2000) utilise ces évènements impossibles pour construire des nouvelles préconditions et les ajouter à la base de connaissance. Dans la plupart des autres systèmes, les évènements impossibles ne sont pas traités et les réponses engendrées par le système se résument à je ne comprend pas votre commande. Au contraire, la capacité d introspection de VDL peut être utilisée pour générer des explications sur les fautes empêchant l exécution 8. La production de ces explications est faite à partir des préconditions fausses attachées à un évènement (l ensemble np(e) calculé lors de la section précédente). Ceci nous permet de définir pour notre architecture une implémentation de l approche ascendante générique, sans se soucier du traitement des évènements impossibles. Ainsi, dans notre implémentation, nous nous affranchissons des règles d interprétation liées à l application. C est pourquoi nous n utilisons que les préconditions de subsomption (P e ) et l état courant de l agent pour construire l évènement VDL à partir des concepts compris de l utilisateur (C). Les préconditions de P e permettent de définir le squelette des évènements possibles pour un concept donné. Une analyse plus profonde de l état interne de l agent permet d enrichir le squelette avec les concepts possibles. Plutôt que d utiliser des règles strictes de grammaire, nous proposons de définir une méthode de construction d évènements basée sur la syntaxe VDL et d appliquer des heuristiques pour contraindre la construction selon la sémantique opérationnelle VDL. Soit E = {e P e tag(e) C} et e E, soit C e = C\{tag(e)}. Pour chaque e E, notre algorithme considère l ensemble des feuilles L e de e et cherche à l intérieur du code les noeuds t L e qui contiennent au moins un concept c C e dans leurs souséléments. e E, nous notons Γ e l ensemble de ces noeuds et Γ = e E Γ e. Puis, nous appliquons un algorithme de fusion qui permet de lier les différentes parties instanciées d un même squelette de Γ (correspondant à différents concepts de la commande) en un seul évènement. Cet algorithme construit le noeud maximisant les subsomptions : pour chaque ensemble de noeud N, soit fusion(n) = max {x Υ n N, x n}. L idée de cet implementation pour calculer G est de construire les fusions les plus larges possibles de sous-ensemble de Γ, i.e. les évènements qui s apparient le mieux à la commande utilisateur. Soit Γ l ensemble des parties de l ensemble Γ. G = fusion(n) N max card Γ 8 Exemple 4, section 3.2.2

11 Approche générique pour LN Remarquons bien que l approche descendante ne garantit pas que les évènements soient possibles ou non : elle construit simplement l ensemble d évènements qui s apparie le mieux à la commande. Ainsi, E = E max et F = F max. Cependant, du fait que Γ peut être très grand et que le calcul de fusion est NP- Difficile, nous réduisons Γ par l utilisation d une heuristique de profondeur minimale : pour un couple donné (e, c ) E C e, nous ne gardons dans Γ e que les noeuds dont la profondeur depth(c j ) est minimale. L heuristique est basée sur l interprétation future des évènements (selon la sémantique opérationnelle VDL). Elle n a aucun impact sur les évènements résultats : l algorithme construira l ensemble complet des meilleurs évènements. 4.2 L approche ascendante L approche ascendante (i.e. bottom-up) classique utilise une liste préétablie de compétences et essaye de relier la commande en LN à une de ces compétences (e.g. (Paraiso et al., 2004; Dzikovska et al., 2003)). Cette approche permet au développeur d écrire des algorithmes génériques, au sens dépendant uniquement du formalisme de la liste de compétences. Cependant, ces listes sont définies de manière statique, le système n a aucune conscience de ce qu il est possible ou non de faire dans l état courant. En pratique, ces listes doivent décrire toutes les situations de dialogues possibles (en tenant compte des erreurs possibles de l utilisateur) ainsi que la traduction en requête formelle. De plus, cette quantité d information est clairement redondante avec la définition du code de l agent et du solveur de problème. Pour éviter ce problème, de récents travaux proposent d utiliser une méthode ascendante dynamique (e.g. Eliasson (2007)). Dans ces travaux, seul un ensemble minimal de compétences est fourni à l avance. Si une commande de l utilisateur ne s apparie pas directement ou complètement à une des compétences existantes, le système tente de décrire une nouvelle compétence en se basant sur les éléments présents dans les compétences proches. Nous proposons d aller encore plus loin, et d adopter une approche ascendante constructive basée sur l analyse des préconditions. Toutes les compétences sont alors calculées dynamiquement suivant un ensemble d actions primaires réalisables par le système (les actions de l agent VDL). Notre approche utilise les informations contextuelles (obtenues de l agent à l exécution) pour déterminer quels évènements peuvent être acceptés par l agent dans l état courant. Ce problème a été longuement étudié pour la validation de logiciel (e.g. (Botella et al., 2002)) et montre des résultats intéressants pour la génération de cas de test. Ces travaux peuvent être adaptés à la génération d évènements si nous considérons qu une précondition a pour rôle de tester les messages. Ainsi, notre système construit la liste des évènements possibles, d un point de vue agent, sans chercher à utiliser la commande de l utilisateur. L approche ascendante utilise les préconditions d évènement (P e ) pour fournir les squelettes initiaux (comme dans l approche descendante). Puisque notre objectif est de construire les évènements possibles (correspondant à la liste de compétences dans les approches classiques), nous retirons de la liste des squelettes P e tout ceux qui sont liés à une action impossible dans l état courant (c est-à-dire pour lesquels une précondition de contexte rend l exécution de l action impossible). Nous obtenons alors l ensemble

12 RJCIA 2007 P e+c = e P e p r R e(e) P c (r), eval(p, e) = P e+c est l ensemble des squelettes qui seront forcement acceptés par l agent dans l état courant. C est à partir de cet ensemble que nous allons construire l ensemble d événements G. L idée de l approche ascendante constructive est d utiliser les préconditions structurelles (P s et P cs ) comme un ensemble de contraintes sur les évènements pour compléter les squelettes. Pour tout e P e+c, nous noterons refine(e, r) Υ l évènement obtenu à partir du squelette e et de la réaction r R e (e) (en n analysant donc que P s et P cs ) par l utilisation de notre algorithme de génération des cas de test. L algorithme complet pour la méthode refine est trop long pour être présenté ici. Il repose fortement sur la sémantique opérationnelle du modèle VDL. Il est basé sur une interprétation récursive des termes VDL associé à un certain nombre de règle pour chaque mot-clé du langage. L ensemble G est ainsi calculé : G = {refine(e, r), e P e+c, r R e (e) p P s (r) P cs (r), eval(p) = } Remarquons que G est l ensemble des évènements possibles 9 : tous les évènements de G sont possibles pour l agent et tous les évènements possibles de l agent sont dans G. Comme conséquence, nous aurons pour le GD que E =G et F =. 4.3 L algorithme combiné L approche ascendante constructive possède néanmoins une limitation : le système n est pas capable de comprendre les commandes impossibles (au contraire de l approche descendante). Pour résoudre ce problème, les approches à base de liste de compétences proposent d utiliser des sous-compétences associées afin de traiter les différentes situations (action possible, impossible, paramètre incomplet, etc.). Ceci est un des autres désavantages des approches à base de listes de compétences puisque cela augmente fortement le nombre de règles à définir, sans garantie de couverture de l ensemble des cas qui peuvent se présenter. Nous voudrions à l inverse que notre algorithme final possède cette capacité de gérer des évènements impossibles sans perdre l aspect constructif. Pour cela, nous avons combiné l algorithme ascendant avec l idée de l algorithme descendant de gestion des commandes impossibles. Soit G bu l ensemble des évènements possible calculé par l approche ascendante, notre objectif est de créer un ensemble G tel que G bu G, la partie supplémentaire représentant les évènements actuellement impossible (i.e. évènements qui ne peuvent pas être accepté par l agent à l état courant, mais qui le serait dans un état diffèrent). Afin d atteindre cet objectif, nous utilisons le principe de relaxation de contraintes sur les préconditions de contexte (incluant les préconditions contextuelles structurelles). 9 Le même algorithme est d ailleurs utilisé dans le planificateur en chaînage avant de la plate-forme VDL.

13 Approche générique pour LN Pour relâcher les contraintes de contexte P c, nous n utilisons pas comme base de squelettes l ensemble P e+c de la section précédente mais directement P e.ceci nous permet de construire des évènements corrects syntaxiquement, mais dont le contexte courant de l agent ne permet pas l exécution. D autre part, les préconditions P cs doivent être utilisées pour construire l évènement, car elle contiennent des contraintes de structures fortes. Néanmoins, une fois l évènement construit en utilisant toutes les préconditions P cs, nous ne validons pas ces évènements avec ces mêmes préconditions. L objectif étant alors de ne pas valider un contexte qui potentiellement est faux à l état courant. Cette technique nous permet d exploiter l information structurelle contenue dans une préconditions P cs tout en relâchant les contraintes sur sa partie contextuelle. Au final, la formule pour calculer G est très proche de celle de l approche descendante, mais avec moins de contraintes : G = {refine(e, r), e P e, r R e (e) p P s (r), eval(p) = } Remarquons bien que l hypothèse de relaxation de contraintes n est pas garantie correct. Il est possible qu elle soit trop forte et à l inverse entraîne une production d évènements impossibles difficile à maîtriser. L objectif de cette évaluation est justement d évaluer l importance de cette relaxation sur les résultats. 5 Évaluation préliminaire Dans cette section, nous évaluons nos trois algorithmes pour la construction d évènement à partir de commandes en langue naturel. 5.1 Protocole Notre expérience a été faite avec un agent simple appelé Jojo 10 inspiré du monde de cube de Winograd (Winograd, 1972). Cet agent possède deux actions : prendre un objet et poser un l objet sur une grille. Un objet est caractérisé par sa forme (shape {square, triangle, circle}), sa couleur (color {red, green, blue, white}) et sa taille (size {tiny, small, medium, big}). Une position est un couple parmi le produit des ensembles {upper, center, lower} {right, middle, lef t}. Douze personnes ont fait l expérience, quatre pour chaque algorithme. Aucune de ces personnes n avaient utilisées le système auparavant. Ils n avaient aucune information sur les capacités en Traitement des Langues du système. L objectif d une personne était d atteindre un état particulier de l environnement de l agent (figure 3), sans limitation de temps. Après l expérience, un questionnaire permettait aux sujets de l expérience de noter leurs impressions, commentaires libres et donner une note sur certains critères. Les résultats attendus étaient les suivants : 1. L approche descendante doit mieux comprendre la commande utilisateur car son modèle cherche à la coller le plus possible. 10 Vous pouvez essayer Jojo sur la page demo : demos.

14 RJCIA 2007 FIG. 3 État initial et final du protocole 2. Elle peut fournir des explications sur les commandes impossibles. 3. L approche ascendante doit permettre une interaction plus souple, car elle est capable de faire des propositions à l utilisateur si sa commande est imprécise. 4. L approche combiné doit présenter les avantages des deux. 5.2 Résultats principaux La figure 4 montre la moyenne des temps mis pour atteindre l objectif et la moyenne des notes donnée par les utilisateurs pour chaque algorithme. Il apparaît clairement que les utilisateurs préfèrent les approches du type ascendante (classique ou combinée). En effet, le retour à l utilisateur et les propositions faites par l agent sont les points les plus importants d après l évaluation des questionnaires. Ils réduisent d environ 65% le temps requis pour l accomplissement de la tache. Une analyse plus approfondie des traces des interactions lors de l expérience confirme la nécessité pour l utilisateur de savoir : 1) ce qu attend l agent, ce qu il ne peut pas faire. C est ce qui explique les meilleurs résultats de l approche ascendante sur l approche descendante. Par exemple, lorsque l utilisateur dit drop on the lower line, l approche ascendante propose la liste des cases vide en bas de la grille (sauf lorsqu il n en reste qu une). D un point de vue initiative mixte, l utilisateur sait, au besoin uniquement, ce que le système attend de lui comme information complémentaire pour pouvoir traiter sa commande. 2) pourquoi il ne peut pas le faire. C est ce qui permet, dans l approche combinée, de corriger l état de l agent par rapport au souhait de l utilisateur. Par exemple : la commande Take the red figure, si la main est déjà pleine, est gérée par une réponse du type i can t because the hand is not empty. En réponse du retour contextualisé sur l état de l agent, les utilisateurs choisissent quasi systématiquement la proposition du système. Nous pensons que la faible différence entre l approche combinée et l approche classique est due à l utilisation du monde de cube, assez intuitive, limitant les problèmes de compréhension de l utilisateur et donc les commandes impossibles. Cependant, nous n avons pas encore vérifié cette hypothèse.

15 Approche générique pour LN FIG. 4 Moyennes des temps et des notes 6 Conclusion & perspectives Dans ce papier, nous avons proposé un système générique d interprétation de commande en LN. Nos algorithmes ne sont paramétrés que par le code de l agent et l ontologie du domaine. Ce système est actuellement intégré dans la plate-forme SMA VDL et peut être utilisé pour la communication humain-agent dans le cadre d interaction avec des services web. De plus, bien que nous utilisions un langage agent spécifique, notre approche en est indépendante et peut être aisément adaptée à d autres langages de description d actions capable d introspection. La force de l approche descendante est de pouvoir expliquer pourquoi une commande donnée ne peut être comprise, tandis que celle de l approche ascendante est d aider l utilisateur en lui proposant les différentes actions possibles proche lorsque la commande est mal comprise ou partielle. Notre approche combinée propose les avantages des deux, alliée à notre gestionnaire de dialogue sans règle spécifique d interaction dépendante de l application. Ainsi, notre système actuel utilise l approche combiné pour l interpretation sémantique. Par rapport à la version présentée ici, nous utilisons maintenant un analyseur logique pour modéliser la commande de l utilisateur (Mazuel, 2007) (à la place du sac de mots ) ainsi qu une mesure de distance sémantique sur ontologies (Mazuel & Sabouret, 2007) basée sur une généralisation de la distance de Jiang & Conrath (Jiang & Conrath, 1997) (à la place de notre analyse sur la relation owl :sameas). Les apports de ses deux changements dans notre architecture sont actuellement en cours d évaluation. Néanmoins, nous pensons qu ils vont être intéressants. En effet, l hypothèse de connectivité sémantique de Sadek est insuffisante puisqu il semble peu réaliste de construire une ontologie contenant tous les termes pouvant être donnés par un utilisateur, alors que celle-ci définie pourtant tous les concepts de l application (il suffit d étudier le nombre de synonymes qu il faudrait définir dans l ontologie pour avoir un aperçu). Pour combler ce problème, nous utilisons les travaux basés sur WordNet sur la desambiguisation de texte (Budanitsky & Hirst, 2006), afin d effectuer un ancrage des termes de la commande dans l ensemble des concepts définis dans l ontologie. La probabilité qu un terme de l utilisateur soit définie dans WordNet et puisse être ramenée après calcul à un des concepts de l ontologie est en effet très forte. De plus, afin d apparier cette liste d ancrages à la liste des concepts maniés par l application, nous utilisons notre nouvelle mesure de distance sémantique. Elle repose sur l idée que l ensemble des relations de l ontologie peuvent être exploité pour calculer une distance sémantique (les distances actuelles n utilisant que les relations du type is-a et non d autres relations tel que part-of

16 RJCIA 2007 ou inverse-of ). Nous pouvons ainsi construire le meilleur ensemble de concepts compris par l application et représentatif de la commande utilisateur. Références ABRILIAN S., BUISINE S., RENDU C. & MARTIN J.-C. (2002). Specifying Cooperation between Modalities in Lifelike Animated Agents. In Working notes of the International Workshop on Lifelike Animated Agents : Tools, Functions, and Applications, p ALLEN J., MILLER B. W., RINGGER E. K. & SIKORSKI T. (1996). A robust system for natural spoken dialogue. In ACL, p BATEMAN J. A. (1997). Enabling technology for multilingual natural language generation : the kpml development environment. Nat. Lang. Eng., 3(1), BICKMORE T. W. (2004). Unspoken rules of spoken interaction. Commun. ACM, 47(4), BOTELLA B., TAILLIBERT P. & GOTLIEB A. (2002). Test de logiciel, volume 21, chapter Utilisation des contraintes pour la génération automatique de cas de test structurels, p RSTI-TSI. BUDANITSKY A. & HIRST G. (2006). Evaluating wordnet-based measures of semantic distance. Computational Linguistics, 32(1), DZIKOVSKA M. O., ALLEN J. F. & SWIFT M. D. (2003). Integrating linguistic and domain knowledge for spoken dialogue systems in multiple domains. In Proc. of IJCAI-03 Workshop on Knowledge and Reasoning in Practical Dialogue Systems. ELIASSON K. (2007). Case-Based Techniques Used for Dialogue Understanding and Planning in a Human-Robot Dialogue System. In Proc. of IJCAI07, p FERBER J. (1995). Les systèmes multi-agents : Vers une intelligence collective. Inter- Editions. GÁRATE A., HERRASTI N. & LÓPEZ A. (2005). GENIO : an ambient intelligence application in home automation and entertainment environment. In Proc. of the 2005 joint conference on Smart objects and ambient intelligence (soc-eusai 05), p : ACM Press. JIANG J. & CONRATH D. (1997). Semantic similarity based on corpus statistics and lexical taxonomy. In Proc. on International Conference on Research in Computational Linguistics, p , Taiwan. MAES P. (1994). Agents that reduce workload and information overload. Communications of the ACM, 37(7), MAZUEL L. (2007). Utilisation des ontologies pour la modélisation logique d une commande en langue naturel. In Rencontre des Étudiants Chercheurs en Informatique pour le Traitement Automatique des Langues (RECITAL 2007). MAZUEL L. & SABOURET N. (2007). Degré de relation sémantique dans une ontologie pour la commande en langue naturelle. In Plate-Forme AFIA, Ingénierie des Connaissances 2007 (IC 2007). MILWARD D. (2000). Distributing representation for robust interpretation of dialogue utterances. In ACL, p

17 Approche générique pour LN MILWARD D. & BEVERIDGE M. (2003). Ontology-based dialogue systems. In Proc. 3rd Workshop on Knowledge and reasoning in practical dialogue systems (IJCAI03), p PARAISO E., BARTHÈS J. A. & TACLA C. A. (2004). A speech architecture for personal assistants in a knowledge management context. In Proc. European Conference on AI (ECAI), p PAUROBALLY S., TAMMA V. & WOOLDRIDGE M. (2005). Cooperation and Agreement between Semantic Web Services. In W3C Workshop on Frameworks for Semantics in Web Services. PELACHAUD C. (2003). Modelling gaze behaviour for conversational agents. In Proc. Intelligent Virtual Agent (IVA 2003), p SABOURET N., GOLSENNE M. & MARTIN J. (2005). VDL+LEA : complémentarité entre interaction multi-modale et interaction multi-agents. In Proc. 1st Workshop sur les Agents Conversationnels Animés (WACA), p SABOURET N. & MAZUEL L. (2005). Commande en langage naturel d agents VDL. In Proc. 1st Workshop sur les Agents Conversationnels Animés (WACA), p SABOURET N. & SANSONNET J. (2001). Automated Answers to Questions about a Running Process. In Proc. CommonSense 2001, p SADEK D., BRETIER P. & PANAGET E. (1997). Artimis : Natural dialogue meets rational agency. In IJCAI (2), p SHAPIRO S. (2000). Sneps : a logic for natural language understanding and commonsense reasoning. Natural language processing and knowledge representation : language for knowledge and knowledge for language, p WINOGRAD T. (1972). Understanding Natural Language. New York Academic Press.

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

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

Les principaux domaines de l informatique

Les principaux domaines de l informatique Les principaux domaines de l informatique... abordés dans le cadre de ce cours: La Programmation Les Systèmes d Exploitation Les Systèmes d Information La Conception d Interfaces Le Calcul Scientifique

Plus en détail

Cours 1 : La compilation

Cours 1 : La compilation /38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà

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

ADELFE : Atelier de développement de logiciels à fonctionnalité émergente

ADELFE : Atelier de développement de logiciels à fonctionnalité émergente ADELFE : Atelier de développement de logiciels à fonctionnalité émergente Gauthier Picard*, Carole Bernon*, Valérie Camps**, Marie- Pierre Gleizes* * Institut de Recherche en Informatique de Toulouse Université

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

Adaptation sémantique de documents SMIL

Adaptation sémantique de documents SMIL Adaptation sémantique de documents SMIL Sébastien Laborie Jérôme Euzenat Nabil Layaïda INRIA Rhône-Alpes - 655 Avenue de l Europe - 38334 St Ismier Cedex {Sebastien.Laborie;Jerome.Euzenat;Nabil.Layaida}@inrialpes.fr

Plus en détail

Concevoir des applications Web avec UML

Concevoir des applications Web avec UML Concevoir des applications Web avec UML Jim Conallen Éditions Eyrolles ISBN : 2-212-09172-9 2000 1 Introduction Objectifs du livre Le sujet de ce livre est le développement des applications web. Ce n est

Plus en détail

Chapitre VI- La validation de la composition.

Chapitre VI- La validation de la composition. Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions

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

Théorie des Langages

Théorie des Langages Théorie des Langages AntLR - Générateur d analyseurs Claude Moulin Université de Technologie de Compiègne Printemps 2015 Sommaire 1 Introduction 2 AntLR ANTLR : ANother Tool for Language Recognition URL

Plus en détail

BAZIN Danil et PRIEZ Jean-Baptiste. LEX & YACC : Calculatrice Évoluée

BAZIN Danil et PRIEZ Jean-Baptiste. LEX & YACC : Calculatrice Évoluée BAZIN Danil et PRIEZ Jean-Baptiste LEX & YACC : Calculatrice Évoluée Table des matières 1 Introduction 3 2 Description 4 3 La grammaire utilisée 6 4 Lexèmes et FLEX 8 5 Analyse syntaxique et YACC 8 5.1

Plus en détail

Problématiques de recherche. Figure Research Agenda for service-oriented computing

Problématiques de recherche. Figure Research Agenda for service-oriented computing Problématiques de recherche 90 Figure Research Agenda for service-oriented computing Conférences dans le domaine ICWS (International Conference on Web Services) Web services specifications and enhancements

Plus en détail

Structuration des décisions de jurisprudence basée sur une ontologie juridique en langue arabe

Structuration des décisions de jurisprudence basée sur une ontologie juridique en langue arabe Structuration des décisions de jurisprudence basée sur une ontologie juridique en langue arabe Karima Dhouib, Sylvie Després Faiez Gargouri ISET - Sfax Tunisie, BP : 88A Elbustan ; Sfax karima.dhouib@isets.rnu.tn,

Plus en détail

COMMENT DÉFINIR L ORIENTÉ OBJET

COMMENT DÉFINIR L ORIENTÉ OBJET COMMENT DÉFINIR L ORIENTÉ OBJET De manière superficielle, le terme «orienté objet», signifie que l on organise le logiciel comme une collection d objets dissociés comprenant à la fois une structure de

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

Conversion des requêtes en langage naturel vers nrql

Conversion des requêtes en langage naturel vers nrql Conversion des requêtes en langage naturel vers nrql Hasna Boumechaal 1, Sofiane Allioua 2, Zizette Boufaida 3 1 Université Mentouri, Constantine, Algérie boumechaal.h@gmail.com 2 Laboratoire LIRE, Université

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

COURS MGL 804 SUJET : ÉVALUATION DE LA MAINTENABILITÉ DES PRODUITS LOGICIELS DU CCI RAPPORT FINAL. Franklin Kamsong

COURS MGL 804 SUJET : ÉVALUATION DE LA MAINTENABILITÉ DES PRODUITS LOGICIELS DU CCI RAPPORT FINAL. Franklin Kamsong COURS MGL 804 SUJET : ÉVALUATION DE LA MAINTENABILITÉ DES PRODUITS LOGICIELS DU CCI RAPPORT FINAL Franklin Kamsong ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ DU QUÉBEC MONTRÉAL HIVER 2012 TABLE DES MATIÈRES

Plus en détail

10 Intégration de données sur le web

10 Intégration de données sur le web 10 Intégration de données sur le web 240 Requête utilisateur : Où est-ce que je peux voir les films qui ont participé au dernier Festival de Cannes? Je voudrais les résumés et critiques des films de Pedro

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

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1 Chap 4: Analyse syntaxique 1 III- L'analyse syntaxique: 1- Le rôle d'un analyseur syntaxique 2- Grammaires non contextuelles 3- Ecriture d'une grammaire 4- Les méthodes d'analyse 5- L'analyse LL(1) 6-

Plus en détail

Simulations de Monte Carlo en finance : Pricer d option

Simulations de Monte Carlo en finance : Pricer d option Emma Alfonsi, Xavier Milhaud - M2R SAF Simulations de Monte Carlo en finance : Pricer d option Sous la direction de M. Pierre Alain Patard ISFA - Mars 2008 . 1 Table des matières 1 Introduction 4 2 Un

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

4. SERVICES WEB REST 46

4. SERVICES WEB REST 46 4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,

Plus en détail

L informatique des entrepôts de données

L informatique des entrepôts de données L informatique des entrepôts de données Daniel Lemire SEMAINE 13 L exploration des données 13.1. Présentation de la semaine L exploration de données (ou data mining) est souvent associée à l intelligence

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

Arbres binaires de recherche

Arbres binaires de recherche Chapitre 1 Arbres binaires de recherche 1 Les arbre sont très utilisés en informatique, d une part parce que les informations sont souvent hiérarchisées, et peuvent être représentées naturellement sous

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

Recherche d information textuelle

Recherche d information textuelle Recherche d information textuelle Pré-traitements & indexation B. Piwowarski CNRS / LIP6 Université Paris 6 benjamin@bpiwowar.net http://www.bpiwowar.net Master IP - 2014-15 Cours et travaux pratiques

Plus en détail

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL Prise en main de NVU et Notepad++ (conception d application web avec PHP et MySql) Propriétés Intitulé long Formation concernée Matière Présentation Description Conception de pages web dynamiques à l aide

Plus en détail

Principes d AdWords. Quelques mots de présentation. Une audience large : les réseaux de ciblage. Réseau de recherche

Principes d AdWords. Quelques mots de présentation. Une audience large : les réseaux de ciblage. Réseau de recherche 3 Principes d AdWords Les deux premiers chapitres de ce livre, plutôt généraux, ont présenté l univers d Internet et de la publicité en ligne. Vous devriez maintenant être convaincu de l intérêt d une

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

BI = Business Intelligence Master Data-ScienceCours 7 - Data

BI = Business Intelligence Master Data-ScienceCours 7 - Data BI = Business Intelligence Master Data-Science Cours 7 - Data Mining Ludovic DENOYER - UPMC 30 mars 2015 Ludovic DENOYER - Typologie des méthodes de Data Mining Différents types de méthodes : Méthodes

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

Le langage SQL Rappels

Le langage SQL Rappels Le langage SQL Rappels Description du thème : Présentation des principales notions nécessaires pour réaliser des requêtes SQL Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs,

Plus en détail

INTRODUCTION AUX TECHNOLOGIES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES

INTRODUCTION AUX TECHNOLOGIES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES INTRODUCTION AUX TECHNOLOGIES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES Les contenus de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information

Plus en détail

Mathématiques financières

Mathématiques financières Mathématiques financières Arnaud Triay Table des matières 1 Introduction Position du problème.1 Pricing des options........................................... Formalisme..............................................

Plus en détail

Les indices à surplus constant

Les indices à surplus constant Les indices à surplus constant Une tentative de généralisation des indices à utilité constante On cherche ici en s inspirant des indices à utilité constante à définir un indice de prix de référence adapté

Plus en détail

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................

Plus en détail

CAPE: Context-Aware Agile Business Process Engine

CAPE: Context-Aware Agile Business Process Engine CAPE: Context-Aware Agile Business Process Engine Irina Rychkova, Manuele Kirsch Pinheiro, Bénédicte Le Grand To cite this version: Irina Rychkova, Manuele Kirsch Pinheiro, Bénédicte Le Grand. CAPE: Context-Aware

Plus en détail

COR-E : un modèle pour la simulation d agents affectifs fondé sur la théorie COR

COR-E : un modèle pour la simulation d agents affectifs fondé sur la théorie COR COR-E : un modèle pour la simulation d agents affectifs fondé sur la théorie COR SABRINA CAMPANO DIRECTION: NICOLAS SABOURET ENCADREMENT : NICOLAS SABOURET, VINCENT CORRUBLE, ETIENNE DE SEVIN SOUTENANCE

Plus en détail

Formules d inclusion-exclusion

Formules d inclusion-exclusion Université de Rouen L1 M.I.EEA 2011 2012 Mathématiques discrètes Formules d inclusion-exclusion Je présente ici une correction détaillée de l Exercice 5 de la Feuille d exercices 1, en reprenant le problème

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

Modélisation Principe Autre principe

Modélisation Principe Autre principe Modélisation Principe : un modèle est une abstraction permettant de mieux comprendre un objet complexe (bâtiment, économie, atmosphère, cellule, logiciel, ). Autre principe : un petit dessin vaut mieux

Plus en détail

LIVRE BLANC Décembre 2014

LIVRE BLANC Décembre 2014 PARSING MATCHING EQUALITY SEARCH LIVRE BLANC Décembre 2014 Introduction L analyse des tendances du marché de l emploi correspond à l évidence à une nécessité, surtout en période de tension comme depuis

Plus en détail

1 Programmation Client/Serveur basée sur TCP/IP

1 Programmation Client/Serveur basée sur TCP/IP Outils Informatique pour l ingénieur TD 1 Réseau et Web IP, Client/serveur 1 Programmation Client/Serveur basée sur TCP/IP 1.1 Buts de cette réalisation Ce TP sur la programmation client/serveur a pour

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

Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101. Travail pratique #2

Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101. Travail pratique #2 Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101 Danny Dubé Hiver 2014 Version : 11 avril Questions Travail pratique #2 Traduction orientée-syntaxe

Plus en détail

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

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

Rappel sur les bases de données

Rappel sur les bases de données Rappel sur les bases de données 1) Généralités 1.1 Base de données et système de gestion de base de donnés: définitions Une base de données est un ensemble de données stockées de manière structurée permettant

Plus en détail

Haka : un langage orienté réseaux et sécurité

Haka : un langage orienté réseaux et sécurité Haka : un langage orienté réseaux et sécurité Kevin Denis, Paul Fariello, Pierre Sylvain Desse et Mehdi Talbi kdenis@arkoon.net pfariello@arkoon.net psdesse@arkoon.net mtalbi@arkoon.net Arkoon Network

Plus en détail

Sujet de thèse Prise en compte des recommandations de l utilisateur dans les services numériques intelligents

Sujet de thèse Prise en compte des recommandations de l utilisateur dans les services numériques intelligents Sujet de thèse Prise en compte des recommandations de l utilisateur dans les services numériques intelligents Directeur de thèse : Bruno Zanuttini GREYC, UMR 6072 UNICAEN/CNRS/ENSICAEN, équipe MAD Démarrage

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

chapitre 4 Nombres de Catalan

chapitre 4 Nombres de Catalan chapitre 4 Nombres de Catalan I Dénitions Dénition 1 La suite de Catalan (C n ) n est la suite dénie par C 0 = 1 et, pour tout n N, C n+1 = C k C n k. Exemple 2 On trouve rapidement C 0 = 1, C 1 = 1, C

Plus en détail

Arbres binaires et codage de Huffman

Arbres binaires et codage de Huffman MP Option Informatique Premier TP Caml Jeudi 8 octobre 2009 Arbres baires et codage de Huffman 1 Arbres baires Soit E un ensemble non vide. On défit la notion d arbre baire étiqueté (aux feuilles) par

Plus en détail

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...

Plus en détail

IFT2255 : Génie logiciel

IFT2255 : Génie logiciel IFT2255 : Génie logiciel Chapitre 6 - Analyse orientée objets Section 1. Introduction à UML Julie Vachon et Houari Sahraoui 6.1. Introduction à UML 1. Vers une approche orientée objet 2. Introduction ti

Plus en détail

Discrétisation et génération de hiérarchies de concepts

Discrétisation et génération de hiérarchies de concepts Prétraitement des données 1 Pourquoi prétraiter les données? Nettoyage des données Intégration et transformation Réduction des données Discrétisation et génération de hiérarchies de g concepts Pourquoi

Plus en détail

Rapport Technique No. GIDE-01-2013. Soyons un peu logiques! par. Jean-Marc BERNARD GIDE GIDE

Rapport Technique No. GIDE-01-2013. Soyons un peu logiques! par. Jean-Marc BERNARD GIDE <jeanmarc@gide.net> GIDE Rapport Technique No. -01-2013 Soyons un peu logiques! par Jean-Marc BERNARD 17 rue La Noue Bras de Fer 44200 Nantes, France 28 février 2014 Soyons un peu logiques! Jean-Marc BERNARD

Plus en détail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

Principe de symétrisation pour la construction d un test adaptatif

Principe de symétrisation pour la construction d un test adaptatif Principe de symétrisation pour la construction d un test adaptatif Cécile Durot 1 & Yves Rozenholc 2 1 UFR SEGMI, Université Paris Ouest Nanterre La Défense, France, cecile.durot@gmail.com 2 Université

Plus en détail

Master UPMC Sciences et technologies, mention informatique Spécialité Systèmes et Applications

Master UPMC Sciences et technologies, mention informatique Spécialité Systèmes et Applications Master UPMC Sciences et technologies, mention informatique Spécialité Systèmes et Applications Réparties Réalisation Assistée d Applications Réparties Projet - écriture d un générateur de code Encadreur

Plus en détail

Projet individuel d algorithmique-programmation AP1 : groupe 1.1 - complément bibliothèque graphique

Projet individuel d algorithmique-programmation AP1 : groupe 1.1 - complément bibliothèque graphique Projet individuel d algorithmique-programmation AP1 : groupe 1.1 - complément bibliothèque graphique octobre 2010 1 Affichage graphique statique Il en existe trois bibliothèques graphiques en Ocaml : la

Plus en détail

OCL - Object Constraint Language

OCL - Object Constraint Language OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object

Plus en détail

BIG Data et R: opportunités et perspectives

BIG Data et R: opportunités et perspectives BIG Data et R: opportunités et perspectives Guati Rizlane 1 & Hicham Hajji 2 1 Ecole Nationale de Commerce et de Gestion de Casablanca, Maroc, rguati@gmail.com 2 Ecole des Sciences Géomatiques, IAV Rabat,

Plus en détail

Modélisation des processus métiers et standardisation

Modélisation des processus métiers et standardisation Modélisation des processus métiers et standardisation Octobre 2004 Table des matières Introduction... 3 Processus métier : un même mot, plusieurs domaines d application... 4 Les critères pour un standard

Plus en détail

Capture et modélisation de l activité utilisateur pour l évaluation d applications d analyse visuelle de données

Capture et modélisation de l activité utilisateur pour l évaluation d applications d analyse visuelle de données Capture et modélisation de l activité utilisateur pour l évaluation d applications d analyse visuelle de données Romain Vuillemot Université de Lyon, CNRS INSA-Lyon, LIRIS, UMR5205 F-69621, France romain.vuillemot@insa-lyon.fr

Plus en détail

Algorithmique et Programmation Projets 2012/2013

Algorithmique et Programmation Projets 2012/2013 3 Dames 3. Objectif Il s agit d écrire un programme jouant aux Dames selon les règles. Le programme doit être le meilleur possible. Vous utiliserez pour cela l algorithme α β de recherche du meilleur coup

Plus en détail

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

Plus en détail

147788-LLP IT-ECVET N.E.T.WORK

147788-LLP IT-ECVET N.E.T.WORK ECVET system for No borders in tourism hospitality European Training and Work N.E.T.WORK 147788--1-IT-ECVET Units of learning outcomes What methods have you used? Le projet a pris en compte, à l avance

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

Arbres binaires de recherche

Arbres binaires de recherche Chapitre 6 Arbres binaires de recherche 6.1 Introduction On a étudié le problème de la recherche dans une collection d éléments ordonnés entre eux : on a montré que Pour une liste contiguë, la recherche

Plus en détail

1 Introduction et installation

1 Introduction et installation TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on

Plus en détail

Université Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications

Université Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications Université Paris-Dauphine DUMI2E 1ère année, 2009-2010 Applications 1 Introduction Une fonction f (plus précisément, une fonction réelle d une variable réelle) est une règle qui associe à tout réel x au

Plus en détail

Projet de Programmation Fonctionnelle

Projet de Programmation Fonctionnelle Projet de Programmation Fonctionnelle L objectif de ce projet est de concevoir, en Objective Caml, un évaluateur pour le langage mini-ml (un sous ensemble du langage Objective Caml). Votre programme devra

Plus en détail

Dafoe Présentation de la plate-forme UIMA

Dafoe Présentation de la plate-forme UIMA Laboratoire d Informatique de l université Paris-Nord (UMR CNRS 7030) Institut Galilée - Université Paris-Nord 99, avenue Jean-Baptiste Clément 93430 Villetaneuse, France 11 juillet 2007 Plates-formes

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

Théorie des langages. compilation. Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes.fr 1 / 59

Théorie des langages. compilation. Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes.fr 1 / 59 et compilation Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes.fr 1 / 59 et compilation et compilation Structure d un compilateur Analyse lexicale Analyse syntaxique Analyse

Plus en détail

Leçon 6. Savoir compter

Leçon 6. Savoir compter Leçon 6. Savoir compter Cette leçon est une introduction aux questions de dénombrements. Il s agit, d une part, de compter certains objets mathématiques (éléments, parties, applications,...) et, d autre

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique Objectifs Clustering On ne sait pas ce qu on veut trouver : on laisse l algorithme nous proposer un modèle. On pense qu il existe des similarités entre les exemples. Qui se ressemble s assemble p. /55

Plus en détail

Représentation des fonctions booléennes

Représentation des fonctions booléennes Représentation des fonctions booléennes Épreuve pratique d algorithmique et de programmation Juillet 2003 Ce problème est consacré à l étude de deux représentations des fonctions booléennes de N variables

Plus en détail

Linked Open Data. Le Web de données Réseau, usages, perspectives. Eric Charton. Eric Charton

Linked Open Data. Le Web de données Réseau, usages, perspectives. Eric Charton. Eric Charton Linked Open Data Le Web de données Réseau, usages, perspectives Sommaire Histoire du Linked Open Data Structure et évolution du réseau Utilisations du Linked Open Data Présence sur le réseau LOD Futurs

Plus en détail

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Mickaël Bergem 25 juin 2014 Maillages et applications 1 Table des matières Introduction 3 1 La modélisation numérique de milieux urbains

Plus en détail

À propos des matrices échelonnées

À propos des matrices échelonnées À propos des matrices échelonnées Antoine Ducros appendice au cours de Géométrie affine et euclidienne dispensé à l Université Paris 6 Année universitaire 2011-2012 Introduction Soit k un corps, soit E

Plus en détail

Introduction au WEB Sémantique Cours 2 : Ontologies

Introduction au WEB Sémantique Cours 2 : Ontologies Cours 2 : Ontologies ESIL Université de la méditerranée Odile.Papini@esil.univmed.fr http://odile.papini.perso.esil.univmed.fr/index.html Plan du cours 1 Introduction 2 3 4 5 Bibliographie I Supports de

Plus en détail

Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P

Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P EUROCOPTER SAS Groupe EADS Marignane Ecole des Mines d Alès Laboratoire de Génie Informatique et d Ingénierie de Production LGI2P Nîmes Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P Titre Domaine

Plus en détail

Une méthode d apprentissage pour la composition de services web

Une méthode d apprentissage pour la composition de services web Une méthode d apprentissage pour la composition de services web Soufiene Lajmi * Chirine Ghedira ** Khaled Ghedira * * Laboratoire SOIE (ENSI) University of Manouba, Manouba 2010, Tunisia Soufiene.lajmi@ensi.rnu.tn,

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

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal La demande Du consommateur Contrainte budgétaire Préférences Choix optimal Plan du cours Préambule : Rationalité du consommateur I II III IV V La contrainte budgétaire Les préférences Le choix optimal

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

INTRODUCTION AUX METHODES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES

INTRODUCTION AUX METHODES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES INTRODUCTION AUX METHODES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES Les contenus de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et

Plus en détail

alg - Arbres binaires de recherche [br] Algorithmique

alg - Arbres binaires de recherche [br] Algorithmique alg - Arbres binaires de recherche [br] Algorithmique Karine Zampieri, Stéphane Rivière, Béatrice Amerein-Soltner Unisciel algoprog Version 25 avril 2015 Table des matières 1 Définition, Parcours, Représentation

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

M1 : Ingénierie du Logiciel

M1 : Ingénierie du Logiciel M1 : Ingénierie du Logiciel UNIVERSITE PIERRE & MARIE CURIE (PARIS VI) Examen Réparti 2eme partie 16 Mai 2013 (2 heures avec documents : tous SAUF ANNALES CORRIGEES). Barème indicatif sur 20,5 points (max

Plus en détail

CCNA Discovery Travailler dans une PME ou chez un fournisseur de services Internet

CCNA Discovery Travailler dans une PME ou chez un fournisseur de services Internet Curriculum Name Guide du participant CCENT 3 Section 9.3 Dépannage de l adressage IP de la couche 3 Cette section consacrée au dépannage vous permettra d étudier les conditions nécessaires à l obtention

Plus en détail