Web Sémantique et Intelligence Artificielle

Transcription

Web Sémantique et Intelligence Artificielle
Web Sémantique et Intelligence Artificielle
Exercice 6 du TP1
ROUSSET Yohan
FOURNIER Stéphane
Brève description de l’AIML
AIML, ou Artificial Intelligence Markup Language est un langage dérivé du XML. XML étant un
langage structuré à partir de mots clés, l’AIML récupère ce principe de fonctionnement. Ce langage
est très utilisé pour concevoir des « bots intelligents » capable de répondre, par l’intermediaire d’un
champ de saisie et d’une zone d’affichage, à un utilisateur humain.
Principe de fonctionnement
Pour expliquer le fonctionnement de l’AIML, prenons un exemple.
On se donne un pattern (un motif) que le langage reconnait. En voici la syntaxe :
<pattern>RACONTE MOI UNE BLAGUE</pattern>
Ce motif reconnait donc toutes les chaines de caractères contenant la sous-chaine « raconte
moi une blague ». Un comportement est alors associé à ce pattern (et ainsi, à toutes les chaines de
caractères correspondant à ce motif. Ce comportement est donné par la syntaxe suivante :
<template>
<srai>appjoie</srai>
<think><set name="oldtopic"><get name="topic"/></set>
<set name="topic">HUMOUR</set></think>
<random>
<li>Une poule rencontre une autre poule. - Tu viens, lui dit-elle, on va prendre un ver ?
</li>
<li>Un accident de bus Belge a fait 40 morts : 20 dans l'accident et 20 dans la
reconstitution. </li>
<li>C'est une blonde qui marche dans la rue. Soudain elle aperçoit une énorme crotte de
chien sur le trottoir, à quelques mètres : "Oh la la, faut pas que je me trompe de pied
!"</li>
<li>Deux blondes décident de jouer aux échecs. L'une demande à l'autre: - T'as les règles
en tête ? - Pourquoi ? Je saigne du nez ? </li>
<li>C'est une blonde qui se présente à un entretien d'embauche. On lui demande Diplôme ? Plôme </li>
<li>Comment appelle t'on 5000 commerciaux, morts au fond de la mer ?- Un bon début. </li>
<li>Quelle est la différence entre un commercial et un gigolo ?- Le gigolo ne peut enculer
qu'une personne à la fois ! </li>
<li>Pourquoi lorsque le bateau coule, on crie '' les femmes et les enfants d'abord ''
?Parce qu'après les requins n'ont plus faim. </li>
<li>Stéphanie de Monaco qui enregistre en ce moment dans un studio parisien est de plus en
plus accaparée par son nouveau métier de chanteuse. Elle déclare : J'ai un pied à Paris et
un autre à Monaco. On plaint les Lyonnais. </li>
<li>Il confondait 'tourte aux cailles' et 'tarte aux couilles', un cuisinier s'est
grièvement blessé. </li>
<li>"Computers are like air conditioners - They stop working properly when you open
Windows"</li>
<li>Une petite fille passe devant la chambre de ses parents, dont la porte est restée
entrouverte.- Dire qu'ils veulent me faire voir un psy parce que je suce mon pouce ! </li>
</random>
</template>
Lorsque l'on entre une chaine de caractères contenant le pattern dans le champ de saisi, le
système exécute le comportement associé et renvoi la réponse adéquate. Ici, lorsque l'on entre
"Raconte moi une blague", le système comprend qu'il faut qu'il raconte une blague, il va donc
chercher dans sa base de blague une blague au hasard (balise <random>) et l'affiche à l'écran.
En outre, d'autres motifs peuvent être définis et provoquer un comportement analogue à un
pattern déjà définis. Ainsi la balise <srai> est utilisée.
<pattern>CONNAIS TU DES * BLAGUES</pattern><template><srai>raconte moi une
blague</srai></template>
Ici, le système cherchera dans sa base quel est le motif qui reconnait la phrase donnée. Ainsi,
avec le pattern ci dessus, le système reconnaitra des phrases de la forme "Connais tu des * blagues",
avec n’importe quelle sous chaine de caractères à la place de l’étoile.
Le comportement associé ici est donc défini avec <srai>. Ainsi, ce pattern est associé à
l'action définie pour le pattern "raconte moi une blague". On aura donc le même comportement
défini pour les deux motifs définis.
Bibliographie
Les extraits de code AIML contenu dans ce fichier sont issus d’un projet « open source » :
A.L.I.C.E. . Le fichier dont est extrait ce code est « humour.aiml » et a été crée par Jean Louis
Campion.