\documentclass[french,a4paper]{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[frenchb]{babel} \usepackage{hyperref} \hypersetup{% colorlinks,% citecolor=black,% filecolor=black,% linkcolor=black,% urlcolor=black% } \title{FMIN327 Cognition individuelle et collective\\Protocoles artificiels entre agents naturels} \author{BONAVERO Yoann \and DUPÉRON Georges} \begin{document} \maketitle \begin{abstract} Dans cet article, nous effecteuons une étude comparative de différents protocoles de communication utilisés par les humains susceptibles d'être utilisés dans la communication homme-machine, sans grand apprentissage de la part des humains. Nous montrons qu'en général, le niveau d'expressivité d'une langue est inversément proportionnel à son niveau de formalisme. Nous montrons aussi que les langages centrés sur un domaine d'application peuvent être à la fois expressifs dans ce domaine et avoir un haut niveau de formalisme. \end{abstract} \tableofcontents \newpage \section{Introduction} \subsection{Approche générale} Tout individu quel qu'il soit, privé de toutes formes de communication, d'émotions et de sensations, ne peuvent en aucune manière évoluer et former de groupes cohérents. L'intégrité et la cohérence d'un groupe passe majoritairement par un échange d'informations entre les individus. Celles-ci ne peuvent pas être transmises n'importe comment, les individus constituant le groupe doivent être en mesure de les comprendre. Le formatage de l'information devient essentiel tout comme le support qui va être utilisé pour la transmettre. Au fil du temps les individus ont apris à échanger des idées et des concepts de diverses manières. Que ce soit par le biais de gestes, de dessin, de rictus ou bien d'autre, les hommes ont petit à petit mis en place un moyen de communication efficace. Toutes ces façons de transmettre l'information ont sans cesse évolué pour répondre en permanance aux besoins. Dans la communication il est possible de regrouper en deux grandes catégorie les protocoles de communication. Il y a ceux qui sont "naturels", qui ont évolués de manière organique au fil des années, et ceux qui sont inventés par un «individu» dit artificiels. \subsection{But de l'étude} Le but de cette étude est de trouver un ou des protocoles de communication entre agents qui seraient facilement appris par des agents naturels (les humains), qui pourraient de préférence être utilisés dans la communication de tous les jours (cela assurerait que les humains maîtriserait bien le protocole), et qui seraient facilement «compris» par une machine. Comme un tel protocole n'existe probablement pas, nous étudierons la facilité d'apprentissage par les humains, l'expressivité et la facilité de compréhension par une machine de plusieurs protocoles, afin de trouver les caractéristiques du protocole qui semblent lui permettre de satisfaire ces trois critères. % TODO : nettoyer un peu ça vis-à-vis du paragraphe ci-dessus. Nous nous intéresserons donc principalement aux protocoles artificiels. En effet, les protocoles naturels, de part leur évolution non contrôlée au fil du temps ont tendance à être très ambigus, et avoir une grammaire comportant beaucoup d'exceptions (donc difficile à interpréter), et une syntaxe approximative, qui accepte différents ordres pour les mots d'une phrase, mais souvent avec une différence dans la sémantique. Nous chercherons aussi à ce que les protocoles étudiés soient formels. En d'autre termes ceux qui ont normes, des règles bien définies, qui permettent de définir le protocole de manière unique et sans ambiguïtées, ce qui facilite leur interprétation par la machine. La plupart des protocoles artificiels ont une syntaxe et une grammaire plutôt rigoureuse. Nous considèrerons les protocoles parlés couremment par un gand nombre d'agents naturels (des humains). Nous n'explorerons pas la possibilité d'utiliser ces mêmes protocoles entre des agents artificiels comme des robots ou des ordinateurs, ni des protocoles prévus dans ce but (car ils sont en général inadaptés à l'apprentissage par les humains). \subsection{Criètres} Pour chaque protocole de communication, nous étudierons plusieurs critères~: \begin{itemize} \item La facilité d'apprentissage par un individu. \item L'ambigüité de son vocabulaire, sa grammaire et sa syntaxe, autrement dit la difficulté qu'une machine aura à comprendre le protocole. \item L'expressivité du protocole, autrement dit la facilité avec laquelle un humain pourra exprimer des concepts et relations complexes. \end{itemize} \section{Les langues naturelles} Les langues naturelles sont les protocoles de communication les mieux maîtrisés par les humains. Cependant, le vocabulaire est source d'ambigüité, d'une part à cause des multiples définitions d'un mot, et des connotations qu'il peut acquérir selon son contexte, et d'autre part à cause des néologismes qui ne seraient pas encore répertoriés dans un dictionnaire, dont le sens est difficile à déterminer de manière certaine en utilisant seulement leur étymologie. De même, comme expliqué précédemment, leur grammaire est irrégulière et bien qu'elle permette souvent de faciliter la compréhension de la phrase (on pourra rattacher un adjectif au féminin seulement aux substantifs féminins de la phrase, ce qui élimine des combinaisons possibles), les mots invariables et autres exceptions apparaissent trop souvent pour que l'on puisse compter dessus. La syntaxe de ces langues est elle aussi une grande source d'ambigüité puisque changer l'ordre des mots d'une phrase peut résulter en une autre phrase correcte, mais avec un sens plus ou moins différent de la première, sans qu'il y ait vraiment de règles formelles décrivant cela. L'expressivité des langues naturelles est très grande, bien que pas illimitée, car il est parfois difficile de décrire des formes et images, ou encore des sons, des odeurs ou d'autres sensations. Les langues naturelles sont donc faciles à apprendre, disposent d'une grande expressivité, mais sont très ambigues. Il est possible de réduire un peu l'ambiguité en s'imposant des contraines (uniquement des phrases «sujet verbe objet» par exemple), auquel cas on perd en expressivité. % TODO : pilud-ml "english (even controlled) for programming". \section{Une langue construite : L'Espéranto} L'espéranto est une langue construite, créée par Ludwik Lejzer Zamenhof en 1887, dans le but de créer une langue universelle facilitant la communication entre peuples. L'espéranto compte à ce jour environ deux millions de locuteurs. Ce n'est pas la seule langue construite, parmi les autres on compte le lojban, créé pour permettre une expression puissante de la logique, ainsi que les diverses langues créées par J.R.R Tolkien. Nous prendrons l'espéranto comme exemple parmi les langues construites car c'est l'une des plus connues. Bien que peu de gens parlent l'espéranto, c'est une langue qui est facile à apprendre. On estime qu'il faut compter 150 heures d'étude pour pouvoir suivre une conversation courante enespéranto. L'espéranto est donc relativement facile à apprendre, même pour les gens ne le parnant pas encore. Le vocabulaire de l'espéranto, comme celui de la plupart des langues naturelles, contient des ambigüités, certains mots sont polysémiques, et peuvent acquérir un nouveau sens en fonction du contexte. Cependant, comme l'espéranto est une langue agglutinante, on peut construire un large vocabulaire avec peu de racines. Cependant, l'espéranto dispose d'un grammaire régulière, c'est à dire sans exceptions. Cela permet donc de facilement faire une relation ente l'orthographe d'un mot et sa fonction dans la phrase, en analysant ses préfixes et suffixes. Cette association entre une langue agglutinante et une grammaire régulière nous permet de penser qu'il «suffit» pour un programme de comprendre la sémantique des racines et des différents préfixes et suffixes pour maîtriser une grande partie du vocabulaire, et «comprendre» des concepts complexes. Par exemple, à partir de la racine \emph{vid}, qui concerne la vue, on peut facilement comprendre le verbe voir (\emph{vid}i), le substantif vue (\emph{vid}o), et même des concepts plus complexes comme le visible et l'invisible (\emph{vid}ebla kaj ne\emph{vid}ebla). La syntaxe de l'espéranto n'est pas beaucoup fixée, comme en latin, l'ordre des mots importe peu, même s'il permet de mettre l'accent sur certains mots. Pour qu'une machine produise des phrases, c'est un avantage, car cela permet de ne pas trop se soucier de l'ordre des mots sans parler «petit nègre». Pour qu'une machine comprenne les humains, cela signifie que l'on peut imposer à l'utilisateur d'écrire ses phrases sous une certaine forme, pour faciliter l'analyse, sans que cela réduisse grandement l'expressivité. En ce qui concerne l'expressivité justement, bien que l'espéranto ait fait l'objet de plusieurs critiques considérant que puisque l'espéranto était une langue construite il ne pouvait pas avoir la richesse d'une langue naturele, il est communément admis par les espérantistes que l'expressivité de l'espéranto est aussi grande que celle des langues naturelles. On trouve en espéranto de la poésie, des discours politiques, des contes pour enfants et même des articles encyclopédiques (il existe une version de wikipedia en espéranto). L'espéranto est donc un protocole de communication relativement facile à apprendre, disposant d'une grande expressivié, assez ambigu mais moins que la plupart des langues naturelles. On peut imposer des contraintes sur la syntaxe (et le vocabulaire, en fixant une sémantique précises pour les racines) pour le rendre moins ambigu sans perdre beaucoup en expressivité. \section{Alphabets et logogrammes} \subsection{L'alphabet} % \subsubsection{Ses origines} % \subsubsection{Dans quel but} % \subsubsection{Des exemples} % \subsection{Les supports} \subsubsection{Le braille} Le braille est une manière de représenter l'alphabet. il consiste en une représentation en relief de l'ensemble des lettres, chiffres, ponctuation, sumboles etc en relief. Il a été étudie pour permettre un lecture simplement avec les doigts. Le braille a été mis au point par Louis Braille en 1824 et reste aujourd'hui après une série de réformes et normalisation toujourstrès utilisé. Ce code est un peu plus expressif que le code Morse vu précédement puisqu'il permet de représenter la majorité est symboles par une seule cellule. Cependant l'utilité dans l'échange homme-machine reste, comme pour le Morse, très peu utile. \subsubsection{Le morse} Le code Morse est généralement attribué à Samuel Morse. Ce code à été inventé pour la télégraphie en 1835. Il consiste en une série d'impulsions. Les lettres, chiffres et signes de ponctuation sont représenté par des séries d'impulsions. Seulement deux types d'impulsions son nécessaires pour tout coder, une impulsion courrte que l'on appelle généralement "Point" et une impulsion longue appellée "Trait". Ce protocole est facile à apprendre pour les humains (une liste de quelques séries d'impulsions à associer à chaque lettre), mais il est difficile à utiliser pour l'écriture, et encore plus désagréable pour la lecture (si on rate une impulsion, les impulsions suivantes risquent de former des symboles valides, mais différents de ceux du message d'origine). Bien qu'il ait été utilisé pour la communication entre humains, il s'agit réellement d'une forme de communication primitive avec une machine qui transmettait l'information à une autre via une ligne télégraphique ou par ondes radio. Ce protocole de communication possède un vocabulaire très restreint (le point et le trait, soit un bit, qui assemblés forment les lettres de l'alphabet, chiffres et ponctuation). Il n'y a pas à proprement parler de grammaire ni de syntaxe, mis à part que l'assemblage des points et des traits fait émerger des symboles plus «gros» (lettres, chiffres et ponctuation). Il est donc très facile à comprendre pour une machine, car il suffit de transcrire les points et traits en bits 0 et 1, et un simple automate à états finis permettra de décoder ces séquences de bits en une suite de lettres. Cependant, cette compréhensions s'arrêtrera à une suite de symboles sans sémantique, car le morse possède une très faible expressivité~: Il s'agit simplement comme pour le braille d'un encodage de l'alphabet, qui lui-même, comme vu précédemment, nécessite un protocole de plus haut niveau (une langue, un langage de programmation…) pour transmettre un message sémantique. Son expressivité est donc comparable à celle du braille, voire inférieure car le braille délimite naturellement les symboles, alors que le morse n'apporte pas cette information (il faut donc avoir la série d'impulsions depuis le début, ou bien détecter des séquences invalides ou improbables pour trouver le début d'un des symboles). Les militaires ont utilisé ce code pour effectuer des transmission codées, et même si un spectre de fréquence radio et toujours réservé pour les sueles émission en morse, il s'agit réellement de la couche physique de la communication selon le modèle OSI, soit la couche la plus basse. Ce code n'apporte pas de grand intérêt en terme de communication homme-machine~: difficile à manipuler pour les humains, un vocabulaire très restreint et par conséquent une expressivité faible. \subsubsection{La langue des signes} \subsubsection{Documents techniques} % TODO Les vues regroupes un grand nombre de représentation très formelle d'objets ou éléments sur un support. Qu'elle soit en perspective, d'ensemble, de coupe, éclatée etc, les vues sont normalisées et laissent place à très peu, voire aucune ambigüité dans les représentations. De ce fait il est assez simple de stocker sur un machine ce genre d'informations et même de les restituer, par exemple sous forme visuelle (sur un écran). \subsubsection{Les formules mathématiques} Les formules mathématiques représente une des représentation les plus normalisées, même si les personnes ont tendance à adapter les représentation, symboles mathématiques à leurs besoins. Les formules mathématiques ont une "expressivité" relativement importante. Leur inconvénient majoritaire se trouve au niveau du lien entre une formule et son contexte. En effet il est très difficile de retrouver le contexte d'une formule lorsque celle-ci est déjà écrite et isolée. \section{Conclusion} Graphique de comparaison des différents supports en terme d'expressivité et de formalismem. \end{document}