FR3077656A1 - Procede de transformation d’une sequence pour la rendre executable par une machine - Google Patents

Procede de transformation d’une sequence pour la rendre executable par une machine Download PDF

Info

Publication number
FR3077656A1
FR3077656A1 FR1850996A FR1850996A FR3077656A1 FR 3077656 A1 FR3077656 A1 FR 3077656A1 FR 1850996 A FR1850996 A FR 1850996A FR 1850996 A FR1850996 A FR 1850996A FR 3077656 A1 FR3077656 A1 FR 3077656A1
Authority
FR
France
Prior art keywords
class
function
upstream
sequence
classes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
FR1850996A
Other languages
English (en)
Inventor
Christophe Leveque
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to FR1850996A priority Critical patent/FR3077656A1/fr
Priority to US16/268,247 priority patent/US11009845B2/en
Priority to EP19710040.7A priority patent/EP3750051A1/fr
Priority to PCT/FR2019/050272 priority patent/WO2019155168A1/fr
Publication of FR3077656A1 publication Critical patent/FR3077656A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • G06F16/24522Translation of natural language queries to structured queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/282Hierarchical databases, e.g. IMS, LDAP data stores or Lotus Notes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23272Natural language, use simple words like move, rotate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Stored Programmes (AREA)

Abstract

L'invention concerne un procédé mise en œuvre par ordinateur de transformation d'une séquence comportant plusieurs mots issus d'une langue naturelle pour rendre ladite séquence exécutable par une machine. Le procédé comprend les étapes suivantes : - prétraitement, dans lequel une séquence constituée de plusieurs caractères formant des mots issus d'une langue naturelle, ladite séquence est comparée avec des données d'une base de données comportant des classes, - dichotomie, dans laquelle il est recherché dans la séquence les expressions simples et expressions IG connues dans le procédé comme étant une classe fonction amont ou une classe fonction avale, la séquence est dichotomisée jusqu'à ce que toutes les classes fonction contenues dans la séquence susceptibles de donner lieu à des dichotomies l'ait été, - identification-création, - exécution, où il est itéré de la première à la dernière des classes de la séquence, chaque classe exécutable est exécutée par une machine.

Description

DOMAINE TECHNIQUE DE L’INVENTION
La présente invention concerne un procédé de transformation d’une séquence comportant plusieurs mots issus d’une langue naturelle pour rendre ladite séquence exécutable par une machine.
ETAT DE LA TECHNIQUE
Certains procédés connus utilisent des classes mais sont très limitées pour interpréter un langage naturel étant donné la complexité du langage et les différences d’une langue à une autre.
Certains documents de l'art antérieur proposent également des procédés pour interpréter un langage naturel par exemple le document US6243670. Ce document décrit un procédé qui reconnaît une liste de type d’objet caractéristique de langues, verbes, adverbes, noms, pronoms... Ce procédé est également limité car le nombre de langues et les différences de structure d’une langue à une autre, rendent ainsi le procédé décrit non universel. Le procédé décrit requière également une pré-connaissance d’un dictionnaire des mots de la langue en question et de leur statut sémantique.
OBJET DE L’INVENTION
La présente invention vise à remédier à ces inconvénients.
A cet effet, selon un premier aspect, la présente invention vise un procédé mise en oeuvre par ordinateur de transformation d’une séquence comportant plusieurs mots issus d’une langue naturelle pour rendre ladite séquence exécutable par une machine, remarquable en ce que ledit procédé comprend les étapes suivantes :
a) prétraitement, dans lequel une séquence constituée de plusieurs caractères formant des mots issus d’une langue naturelle, ladite séquence est comparée avec des données d’une base de données comportant des classes, chaque classe comprenant au minimum les deux premiers des éléments suivants :
un numéro, une expression simple constituée par la suite de caractères représentant la classe, une expression classe composée de deux numéros correspondant à deux autres classes, soit positionné en une première position, soit positionné en une deuxième position, et un sens, ledit sens étant soit amont, soit aval, si ladite classe comprend également une expression classe et un sens, alors ladite classe est appelée classe Généralisée, si le sens est amont ladite classe est appelée classe Généralisée amont, si le sens est aval, ladite classe est appelée classe Généralisée avale, s’il s’agit d’une classe Généralisée amont alors la classe en première position de son expression classe est une classe fonction amont et la classe en deuxième position de son expression classe est une classe.paramètre, s’il s’agit d’une classe Généralisée avale alors la classe en première position de son expression classe est une classe.paramètre et la classe en deuxième position de son expression classe est une classe fonction avale, une classe fonction est au moins l’un des éléments suivants : une classe fonction amont, et une classe fonction avale, il est défini une table de classes fonctions amonts ou avales particulières appelées classe fonction Dep, une classe fonction Dep est soit une classe fonction Dep amont, soit une classe fonction Dep avale, lesdites classes fonction Dep présentes dans la table ont pour caractéristique que toute classe généralisée de l'une desdites classes fonction Dep est connue du procédé comme une classe fonction de sens inversé à ladite classe fonction Dep, appelée classe fonction ParDep, ainsi une classe fonction ParDep amont est une classe fonction amont et est une classe Généralisée d'une classe fonction Dep avale, et une classe fonction ParDep avale est une classe fonction avale et est une classe Généralisée d'une classe fonction Dep amont, il est également défini une table de rapports hiérarchiques pour des couples constitués d'une classe fonction amont ou d’une classe fonction Dep et d'une classe fonction avale ou d’une classe fonction Dep, ledit rapport hiérarchique indique pour chacun des couples présents dans la table laquelle des deux classes fonctions du couple est Hiérarchiquement dominante sur l'autre, si dans une séquence une classe fonction amont précède une classe fonction avale ou une classe fonction Dep hiérarchiquement dominante, et que lesdites classes fonctions soient séparées par un paramètre non vide, alors ladite classe fonction amont non hiérarchiquement dominante à la préséance dans la prise dudit paramètre sur la classe fonction avale ou la classe fonction Dep hiérarchiquement dominante, si dans une séquence une classe fonction avale est postérieure à une classe fonction amont ou une classe fonction Dep hiérarchiquement dominante, et que lesdites classes fonctions soient séparées par un paramètre non vide, alors ladite classe fonction avale non hiérarchiquement dominante à la préséance dans la prise dudit paramètre sur la classe fonction amont ou la classe fonction Dep hiérarchiquement dominante, ladite base de données comporte également des classes réservées, chaque classe réservée comporte un numéro et une expression simple, dont chaque expression simple est précédé d’un marquage, ladite base de données comporte les éléments suivants prédéfinis : première classe réservée, deuxième classe réservée, troisième classe réservée, quatrième classe réservée, cinquième classe réservée, la première classe réservée, la deuxième classe réservée, la troisième classe réservée et la quatrième classe réservée sont ci-après désignées classes IG.
Les trois premières classe IG correspondent à la première classe IG, la deuxième classe IG et la troisième classe IG. Les trois dernières classe IG correspond à la deuxième classe IG, troisième classe IG et quatrième classe IG.
La première classe réservée et la quatrième classe réservée ont pour fonction d’indiquer dans une séquence le début et la fin d'une classe Généralisée.
La seconde classe réservée, toujours positionnée à l'intérieur d'une partie de la séquence délimitée par la première classe réservée et la quatrième classe réservée, sépare ladite partie de séquence en deux sous parties dont la première représente une classe fonction amont et la seconde représente une classe paramètre, et indique que ladite partie de séquence représente une classe Généralisée amont.
La troisième classe réservée, toujours positionnée à l'intérieur d'une partie de la séquence délimitée par la première classe réservée et la quatrième classe réservée, sépare ladite partie de séquence en deux sous parties dont la première représente une classe paramètre et la seconde représente une classe fonction avale, et indique que ladite partie de séquence représente une classe Généralisée avale, une séquence ou partie de séquence comportant des classes IG est dénommé expression IG.
La cinquième classe réservée est une classe fonction et désigne toute classe comme exécutable par une machine.
L’étape de prétraitement comporte une comparaison de la séquence avec les données de la base de données :
si une classe réservée est reconnue dans une partie de la séquence, alors ladite partie de la séquence est substituée par le numéro de la classe réservée correspondant,
b) dichotomie, dans laquelle il est recherché dans la séquence les expressions simples et expressions IG connues dans le procédé comme étant une classe fonction amont ou une classe fonction avale, la séquence est dichotomisée jusqu’à ce que toutes les classes fonction contenues dans la séquence susceptibles de donner lieu à des dichotomies l'ait été, pour chacune des classes fonctions amonts ou classes fonctions avales trouvées dans la séquence, l’étape de dichotomie consiste à :
- s’il s’agit d'une classe fonction amont, et ladite classe fonction amont si Non Dep se trouve au début de la séquence ou immédiatement précédée de l'une des trois premières classe IG et ladite fonction amont se trouve non en fin de séquence et non immédiatement suivie de l’une des trois dernières classes IG, alors il est identifié une partie de la séquence jouant le rôle d’une classe paramètre pour ladite classe fonction amont, ladite classe paramètre, contigu à ladite classe fonction amont, débute à la position suivant ladite classe fonction amont et dont la position de fin est identifiée en poursuivant sur les positions de la séquence à partir de la position de début de la classe paramètre et est :
soit à la position précédant l'expression simple ou l'expression IG d'une classe fonction avale ou d’une classe fonction Dep, et de hiérarchie dominante sur ladite classe fonction amont, soit à la position précédent de Tune des trois dernières classes IG sachant que s’il est rencontré la première classe réservée à une position, l'analyse reprend à la position suivant la quatrième classe réservée correspondante à la première classe réservée rencontrée, soit en fin de séquence, lorsque la position de fin de la classe paramètre est ainsi déterminée, et si les positions de début et de fin de la classe paramètre sont différentes, il est inséré dans la séquence :
la première classe réservée à la position précédent la classe fonction amont, la deuxième classe réservée entre la fin de la classe fonction amont et le début de la classe paramètre, la quatrième classe réservée à la fin de la classe paramètre, l'insertion de ces trois classes IG définissent dans la séquence une classe Généralisée amont,
- si il s’agit d'une classe fonction avale, et ladite classe fonction avale si Non Dep se trouve en fin de la séquence ou immédiatement suivie de l’une des trois dernières classes IG et ladite fonction avale se trouve non au début de la séquence et non immédiatement précédée de l’une des trois premières classes IG, alors il est identifié une partie de la séquence jouant le rôle d’une classe paramètre pour ladite classe fonction avale, ladite classe paramètre, contigu a ladite classe fonction avale, se termine à la position précédant ladite classe fonction avale et dont la position de début est identifiée en régressant sur les positions de la séquence à partir de la position de fin de la classe paramètre et est :
soit à la position suivant l'expression simple ou expression IG d'une classe fonction amont ou d’une classe fonction Dep, et de hiérarchie dominante sur ladite classe fonction avale, soit à la position suivant l'une des trois premières classes IG sachant que s’il est rencontré la quatrième classe réservée à une position, l'analyse reprend à la position précédent la première classe réservée correspondante à la quatrième classe réservée rencontrée, soit en début de séquence, lorsque la position du début de la classe paramètre est ainsi déterminée, et si les positions de début et de fin de la classe paramètre sont différentes, il est inséré dans la séquence :
la première classe réservée immédiatement avant la classe paramètre, la troisième classe réservée entre la fin de la classe paramètre et le début de la classe fonction avale, la quatrième classe réservée à la fin de la classe fonction avale, l'insertion de ces trois classes IG définissent dans la séquence une classe Généralisée avale, l’étape b) de dichotomie autorise des classes Généralisées imbriquées.
Le fait que l’étape de dichotomie autorise des classes Généralisées imbriquées ne permet pas à des classes Généralisées d’être intriquées.
c) identification-création, dans laquelle toutes les classes fonctions et tous les classes paramètre non classes généralisées sont substituées dans la séquence par leur numéro de classe, et il est inséré immédiatement avant la première classe réservée de chacune des classes généralisées le numéro de classe de ladite classe généralisé, pour chaque classe généralisée contenue dans la séquence :
si la classe fonction définie par son expression simple est inconnue alors ladite classe fonction est stockée dans la base de données avec au moins les deux informations suivantes : un nouveau numéro et son expression simple, si la classe paramètre définie par son expression simple est inconnue alors ladite classe paramètre est stockée dans la base de données avec au moins les deux informations suivantes : un nouveau numéro et son expression simple, si la classe Généralisée définie par son expression simple est inconnue alors ladite classe Généralisée est stockée dans la base de données avec les informations suivantes : un nouveau numéro, son expression simple, son expression classe et son sens, pour une partie de la séquence qui n’est pas une classe généralisée et est inconnue alors ladite partie séquence est stockée dans la base de données avec au moins les deux informations suivantes : un nouveau numéro et son expression simple, la séquence obtenue est appelée expression LIG de la séquence.
d) exécution, où il est itéré de la première à la dernière des classes de la séquence et dans laquelle les classes IG sont ignorées, chaque classe exécutable est exécutée par une machine, la poursuite de l'itération reprenant en fin de ladite classe exécutable, une classe exécutable étant définie comme :
une classe paramètre liée à la cinquième classe réservée dans une classe généralisée, une classe Généralisée dont la classe fonction est une classe exécutable, une classe Généralisée dont la classe fonction est une classe fonction ParDep d'une classe fonction Dep qui est une classe exécutable.
Le procédé proposé permet à un système d'apprendre au fur et à mesure, et de construire son savoir à partir du savoir précédent.
Le procédé permet :
d'assimiler à partir d'un nombre limité d'exemples les langues naturelles humaines en intégrant la compréhension de celles-ci de prédire la façon dont doivent être comprises des phrases nouvelles. Et en conséquence d'appeler correctement des sous programmes de commande de machine.
de s'adapter à des modifications linguistiques ou de compréhension.
d'apprendre simultanément plusieurs langues
L'ensemble créant une interface universelle et performante entre l'homme et la machine.
Ledit procédé est léger en ressource, peut être en local (sans connexion à internet) et portée par un ordinateur.
On entend par ordinateur est un système ou un dispositif de traitement de l'information programmable et qui fonctionne par la lecture séquentielle d'un ensemble d'instructions, organisées en programmes.
Les exemples suivants sont considérés comme des ordinateurs : une tablette numérique, un téléphone mobile, notamment de type « smartphone >>, une montre connectée, des lunettes connectées, une télécommande, un casque, un casque de réalité virtuelle, une télévision connectée, une console de jeux, ou une box internet.
Le procédé en introduisant dans la séquences des classes particulières (réservées), au nombre de quatre, appelées classes IG, permet de matérialiser la façon dont est comprise une séquence par le système, et permet à l'utilisateur de « voir >> cette compréhension, ces classes IG permettent également à l'utilisateur d'éventuellement corriger aisément ladite compréhension.
L’invention est avantageusement mise en oeuvre selon les modes de réalisation et les variantes exposées ci-après, lesquelles sont à considérer individuellement ou selon toute combinaison techniquement opérante.
Dans un mode de réalisation, la mise à jour de la table des fonctions Dep à l’étape b) est déterminée selon les conditions suivantes :
si une classe fonction amont s’applique à un premier nombre amont correspondant au nombre de récurrence de ladite classe fonction amont des classes Généralisées amont de la base de données, et que ladite classe fonction amont s’applique à un deuxième nombre amont correspondant au nombre de récurrence desdites classes Généralisées qui sont des classes fonctions avales, et dont ledit deuxième nombre amont est au moins supérieur à la moitié du premier nombre, alors la classe fonction amont est une classe fonction Dep amont, si une classe fonction avale s’applique à un premier nombre aval correspondant au nombre de récurrence de ladite classe fonction avale des classes Généralisées avale de la base de données, et que ladite classe fonction avale s’applique à un deuxième nombre aval correspondant au nombre de récurrence desdites classes Généralisées qui sont des classes fonctions amont, et dont ledit deuxième nombre aval est au moins supérieur à la moitié du premier nombre, alors la classe fonction avale est une classe fonction Dep avale.
Cette disposition permet au procédé la mise à jour de la table des fonctions Dep, et ainsi de fonctionner sans avoir de préconnaissance de celleci.
Dans un mode de réalisation, à l’étape b) de dichotomie, le procédé comporte les éléments suivants : si une classe fonction amont est antérieure dans une séquence à une classe fonction avale, il est évalué le rapport hiérarchique entre la classe fonction amont et la classe fonction avale comme étant :
si ladite classe fonction amont s'applique à un nombre amont correspond au nombre de récurrence de ladite classe fonction amont des classes Généralisées amont de la base de données dans lesquelles les classes paramètre sont des classes Généralisées avale dont la fonction est ladite classe fonction avale, et que ladite classe fonction avale s'applique à un nombre aval correspond au nombre de récurrence de ladite classe fonction avale des classes Généralisées avale de la base de données dans lesquelles les classes paramètre sont des classe Généralisées amont dont la fonction est ladite classe fonction amont, et que :
si le nombre amont est supérieur au nombre aval alors ladite classe fonction amont est une hiérarchiquement dominante sur ladite classe fonction avale, si le nombre aval est supérieur au nombre amont alors ladite classe fonction avale est une hiérarchiquement dominante sur ladite classe fonction amont, sinon il n’y a pas de rapport hiérarchique entre ladite classe fonction amont et ladite classe fonction avale,
Ladite évaluation permet au procédé : soit la mise à jour de la table des rapports hiérarchiques entre les fonctions, soit à l'étape b) de dichotomie et si réalisée en temps réel, de se substituer à la table des rapports hiérarchiques, et ainsi de fonctionner sans avoir de préconnaissance de ladite table de rapports hiérarchiques.
Dans un mode de réalisation, à l’étape b) de dichotomie, le procédé comporte les éléments suivants :
il est défini également un rapport hiérarchique pour une liste de classe fonction amont et une liste de classe fonction avale, un nombre amont de liste étant alors obtenu en cumulant les nombres amonts pour chacun des couples constitués d’une classe fonction amont appartenant à la liste de classe fonction amont et d’une classe fonction avale appartenant à la liste de la classe fonction avale, et le nombre aval de liste étant alors obtenu en cumulant les nombres avals pour chacun des couples constitués d’une classe fonction amont appartenant à la liste de classe fonction amont et d’une classe fonction avale appartenant à la liste de la classe fonction avale, si ledit nombre amont de liste est supérieur au nombre aval de liste, alors :
ladite liste de classe fonction amont est une hiérarchiquement dominante sur ladite liste de classe fonction avale, si le nombre aval de liste est supérieur au nombre amont de liste alors ladite liste de classe fonction avale est une hiérarchiquement dominante sur ladite liste de classe fonction amont, sinon il n’y a pas de rapport hiérarchique entre ladite liste de classe fonction amont et ladite liste de classe fonction avale, si une classe fonction amont est antérieure dans une séquence à une classe fonction avale et qu'il n’y a pas de rapport hiérarchique directement entre ladite classe fonction amont et ladite classe fonction avale et que l'une ou les deux sont des classe fonctions ParDep, alors il est évalué le rapport hiérarchique de la liste des classes fonctions ParDep amont de la même classe fonction Dep avale de ladite classe fonction amont si celle ci est une classe fonction ParDep et de la liste des classes fonctions ParDep avales de la même classe fonction Dep amont de ladite classe fonction avale si celle ci est une classe fonction ParDep,
L'application de cette disposition, qui sous entend la stationarité/constance des hiérarchies pour toutes les fonctions Pardep de la même fonction Dep vis-à-vis d'autres fonctions, permet au procédé d'augmenter les dichotomies conformes à la compréhension adéquate d'une séquence.
Dans un mode de réalisation, à l'étape b) si une classe fonction amont est antérieure dans une séquence à une classe fonction Dep également amont, il est évalué le rapport hiérarchique de la classe fonction amont et de la liste de toutes les classes fonctions ParDep avales de la classe fonction Dep amont, et dans lequel à l'étape b) il est rajouté s’il s’agit d'une fonction amont l'option suivante dans la détermination de la position de fin du paramètre de ladite fonction amont :
soit à la position précédent l'expression simple d'une classe fonction Dep amont et de hiérarchie dominante sur ladite classe fonction amont, si une classe fonction avale est postérieure dans une séquence à une classe fonction Dep également avale, il est évalué le rapport hiérarchique de la classe fonction avale et de la liste de toutes les classes fonctions Pardep avales de la classe fonction Dep avale, et dans lequel à l'étape b) il est rajouté si il s’agit d'une fonction avale l'option suivante dans la détermination de la position de début du paramètre de ladite fonction avale :
soit à la position suivant l'expression simple d'une classe fonction Dep avale et de hiérarchie dominante sur ladite classe fonction avale.
L'application de cette disposition anticipe l'apparition d'une fonction ParDep avale postérieure dans la séquence à une fonction amont et autorise l'application de la hiérarchie de ladite fonction amont avec les fonctions Pardep avales de la fonction Dep amont, et en conséquence augmente la capacité du procédé à prédire la façon dont doit être dichotomisée donc comprise une nouvelle séquence.
Dans un mode de réalisation, à l’étape c), si la classe généralisée est connue, il est mis à jour son expression classe et son sens.
Ainsi, pour chaque classe Généralisée la mise à jour va permettre d'une part de corriger la compréhension d'une séquence en utilisant les classes IG directement dans la séquence, mais aussi d'appliquer les hiérarchies les plus récentes et ainsi de corriger des erreurs de compréhension de séquences précédemment apprises. Le système pourra donc évoluer constamment.
Dans un mode de réalisation, le deuxième nombre amont est au moins supérieur au deux tiers du premier nombre et le deuxième nombre aval est au moins supérieur au deux tiers du premier nombre.
Cette disposition en augmentant le seuil de décision de la loi majoritaire dans la définition des classes fonction Dep, réduit les fausses interprétation de fonction Dep et en conséquence les erreurs de dichothomies et donc de compréhension, et ce au prix d'un nombre de séquences d’apprentissage supplémentaires.
Dans un mode de réalisation, à l'étape b) de dichotomie lors de la recherche de classes fonctions dans la séquence, ladite étape b) comporte en outre que si une classe fonction est trouvée dans la séquence et que l'expression IG de ladite classe fonction contient d'autres classes fonction alors ladite classe fonction est traitée en priorité sur lesdites autres classes fonction.
Cette disposition en privilégiant les fonctions dont les expressions simples sont les plus grandes permet au procédé de bien considérer dans une séquence des classes fonctions étant elles-mêmes des classes généralisées et en conséquence améliore la capacité de compréhension du procédé. De tels cas sont fréquents dans certaines langues.
Dans un mode de réalisation :
à l’étape a) de prétraitement, la base de données comporte également une sixième classe réservée, ladite sixième classe réservée est une classe fonction avale et désigne toute classe fonction Dep comme fonction d'équivalence dès lors que ladite classe fonction Dep se trouve être paramètre dans une classe généralisée dont la fonction est la sixième classe réservée, ainsi toute classe paramètre d'une classe généralisée dont la fonction est la classe fonction ParDep d'une classe fonction Dep et d'équivalence a pour classe équivalente la classe paramètre de la classe fonction Dep dans la classe généralisée fonction ParDep, dans l’étape d) d’exécution, s’il est rencontré dans la séquence une classe et que une classe généralisée est connue dont le paramètre est ladite classe et la fonction est une classe fonction ParDep d'une classe fonction Dep et d'équivalence, alors l'expression LIG de ladite classe est substituée dans la séquence par l'expression LIG de sa classe équivalente, l'itération reprenant au début de ladite classe, l'expression LIG de ladite classe équivalente débute par le numéro de ladite classe et est obtenue par itération en faisant suivre tous les numéros des classe généralisées de l'expression LIG de ladite classe par le numéro de la première classe IG, puis du numéro de la première classe de l'expression classe de la classe généralisée, puis du numéro de la deuxième classe IG si la classe est une classe généralisée amont ou du numéro de la troisième classe IG si la classe est une classe généralisée avale, puis du numéro de la deuxième classe de l'expression classe de la classe généralisée, puis du numéro de la quatrième classe IG.
L'ensemble de ces dispositions permet de transformer toute classe en une autre classe et en particulier une séquence représentant un ordre rédigé en langue naturelle en une classe exécutable par une machine.
Dans un mode de réalisation, à l’étape b) de dichotomie s’il n’y a pas de rapport hiérarchique entre deux classes fonctions, il est recherché pour chacune des deux classe fonctions la liste des classes fonctions apparentées dans la base de données puis il est comparé la récurrence de chaque classe fonction pour évaluer la hiérarchie entre ces deux listes, la liste des classes apparentées a une classe étant définie comme la liste des classes qui sont une classe paramètre dans des classes généralisées et dont les classes fonctions s’appliquent également à ladite classe dans une classe généralisée.
Cette disposition permet de nommer et de catégoriser des classes partageant divers caractéristiques et ainsi en nommant une nouvelle classe de la même catégorie, de lui faire bénéficier des hiérarchies déjà apprises pour les autres classes dans la catégorie.
Dans un mode de réalisation, à l'étape a) de prétraitement si il est rencontré le marqueur des classes réservées suivi d'un numéro, alors cette expression est substituée dans la séquence par le numéro de la classe de même numéro.
Cette disposition permet de faire référence à toute classe connue de la base de données dans une séquence.
BREVE DESCRIPTION DES FIGURES
D’autres avantages, buts et caractéristiques de la présente invention ressortent de la description qui suit faite, dans un but explicatif et nullement limitatif, en regard des dessins annexés, dans lesquels :
- la figure 1, sous forme de logigramme, les étapes mises en oeuvre dans un mode de réalisation particulier du procédé objet de la présente invention,
- les figures 2 à 5, sous forme de logigramme, représente les détails des étapes mises en oeuvre dans un mode de réalisation particulier du procédé objet de la présente invention.
- la figure 6 représente un schéma de reconstitution d’une séquence LIG d’une classe.
DESCRIPTION D’EXEMPLES DE REALISATION DE L’INVENTION
Dans un exemple ci-dessous les termes suivants sont utilisés :
Plusieurs termes vont être employés pour la suite, nous donnons ici leurs définitions :
« go straight » en terminologie anglophone pour « vas tout droit » en français.
« is a verb of équivalence » en terminologie anglophone pour « est un verbe d’équivalence » en français.
« make a Uturn and stop » en terminologie anglophone pour « fait demi tour et arrête toi » en français.
« means » en terminologie anglophone pour « signifie » en français.
« move back » en terminologie anglophone pour « marche arrière » en français.
« north » en terminologie anglophone pour « nord » en français.
« quickly » en terminologie anglophone pour « rapidement » en français.
« turn left » en terminologie anglophone pour « tourne à gauche » en français.
« turn right » en terminologie anglophone pour « tourne à droite » en français.
« setengine » en terminologie anglophone pour « sens moteur » en français.
« setwheel » en terminologie anglophone pour « position roue(s) » en français.
« south » en terminologie anglophone pour « sud » en français.
Pour la suite, ce qu’il y a entre accolade : {...} est ce qui est saisi sur un ordinateur et aussi les expressions des classes.
Notion de Séquence
Il est défini une séquence comme étant une série d'éléments mis et traités les uns à la suite des autres. Une séquence sera ici comprise comme une suite de nombres. Un ordre tel que {turn right} qui est une suite de caractères est en fait une suite de nombre - codé via la table Ascii (acronyme de American Standard Code for Information Interchange en terminologie anglophone pour Code américain normalisé pour l'échange d'information) ou Uni code (standard informatique qui permet des échanges de textes dans différentes langues) et donc {turn right} est bien une séquence.
Le procédé a pour fonction essentielle de reconnaître et de traiter des séquences.
Notion de Classe
Une base de données conservera les séquences traitées par la méthode. Le procédé affectera un numéro (No) à chacune de ce ces séquences, ce No est appelé No de classe ou plus, simplement « classe »
Une classe peut également s'écrire sous forme d'autres classes. En d'autres termes une séquence peut s'écrire à partir de séquences déjà connues.
Ex : Si on a dans la base deux classes C1={turn } et C2={right} alors la classe C3={turn right} peut également s'écrire C3=={C1C2} {C1C2} étant la séquence constituée de la classe C1 et de la classe C2.
Notion de Fonction et Paramètre
Dans les séquences, les classes pourront jouer un rôle de Fonction ou de Paramètre.
Ex Si nous rajoutons dans la base la classe C4={left} alors la classe CS={turn left} pourra également s'écrire CS=={C1C4}
Nous pourrons apprendre alors au procédé que C1= {turn } est une fonction qui a deux paramètres :
C2={right} dans la classe C3 et C4={left} dans la classe CS
Notion de Mots Réservés
Certaines séquences ont une signification particulière connue de la méthode.
Nous désignerons ces séquences comme« Mots Réservés» (Rmots)
Pour les reconnaître, et par convention, ils commencent toujours par le caractère « Λ ».
Comme pour les autres séquences il est affecté à ces Mots Réservés un No de classe.
Ces Classes Réservées pourront être utilisées dans les séquences et sont immédiatement reconnues par le procédé lors de la phase de prétraitement.
Ex : préalablement, nous avons appris au procédé qu’il existe quatre classes réservées :
CR0={A[} CR1 ={Λ»} CR2={A«} et CR3={A]}
Ces quatre classes connues du procédé nous permettre d'établir les rôles (Fonction ou Paramètre) joués par les classes dans une séquence.
Il est également utilisé pour CRO : la première classe réservée {A[}, CR1 : la deuxième classe réservée {A»}, CR2 : la troisième classe réservée {A«}, CR3 : la quatrième classe réservée {Aj}.
Les figures sous forme de logigramme servent de support à la description suivante.
Notion de Classe Généralisée
Pour apprendre au procédé l'ordre {turn right} dans lequel {turn } joue le rôle de fonction et {right} joue le rôle de paramètre, nous saisissons directement la séquence : {A[turn A»rightA]}
Le procédé reconnaît dans la séquence les séquences des Mots Réservés utilisés et leur substitue par les numéros (Nos) de classes correspondant. La séquence sera alors {CROturn CR1 leftCR3} (étape 0)
Puis le procédé identifie sur la base (ou créera si inconnues) les classes {turn } et {right} soit C1 et C2, {turn } étant la séquence comprise entre CRO et CR1 et {right} étant la séquence comprise entre CR1 et CR3. Puis le procédé identifie sur la base (ou créera si inconnues) la classe {turn right} soit C3, {turn right} étant la séquence de C1 + la séquence de C2. Puis le procédé conservera de plus sur la base pour la classe C3, son expression en terme de classe soit {C1C2}, et son sens qui indique où se trouve la fonction dans l'expression {C1C2}, ici« Am» (pour amont) puisque nous avons utilisé {Λ»}, en effet dans {C1C2} la classe amont C1 est la fonction et en conséquence la classe avale C2 est le paramètre.
L'exemple décrit dans ce texte suppose pour la langue utilisée une lecture de la séquence de la gauche vers la droite
Cette étape est assurée par l'étape identification-création, (étape 2) dont la mission est d'identifier sur la base de données, ou de créer si inconnues, toutes les classes composantes délimitées par les classes CRO à CR3 dans la séquence.
La classe C1 ={turn } est alors maintenant connue par le procédé comme classe fonction Amont dans C3.
Si maintenant nous saisissons directement la séquence : {turn left} (sans faire mention des classes réservées CRO à CR3)
Le procédé va rechercher dans cette séquence s'il peut trouver des fonctions connues (étape 1/1). Il trouve dans cette séquence la classe C1={turn } précédemment apprise et déjà connue comme classe fonction Amont dans la classe C3. Par construction, le procédé va généraliser le rôle de C1 dans C3 en considérant que C1 peut également être une classe fonction Amont dans {turn left}. En conséquence, le procédé ajoute de lui même les classes réservées CRO à CR3 dans la séquence comme pour C3. Notre séquence devient alors : (étapes 1/2 et 1/3) {A[turn Λ»leftA]}
Cette étape est assurée par l’étape de Dichotomie (étape 1) dont la mission est d'insérer dans la séquence qu'il a à traiter les classes CRO à CR3 en s'appuyant sur les fonctions connues de la méthode. Puis le procédé va enchaîner sur l'apprentissage de cette séquence exactement comme ci-dessus (voir étape 2).
La base de données est complétée par la séquence C1={turn } C4={left} C5={turn left} et C5=={C1C4} avec le Sens=Am
On a donc dans le procédé l'enchaînement des étapes suivantes :
Etape 0, prétraitement, étape 1 : dichotomie, étape 2 : identificationcréation.
Les classes C3 et C5 sont désignées comme des « Classes Généralisées » ou classes G. La notion de généralisation consistant à répliquer dans la généralité un comportement constaté dans un cas pris comme exemple, en l'occurrence le rôle de fonction que peut avoir une classe.
Les classes G disposent dans la base de données en plus de leur expression simple, d'une expression en terme de classe, toujours constituée de deux classes, et d'un sens. Les classes G étant toujours constituées d'une fonction et d'un paramètre, le sens indiquera où se trouve la fonction dans l’expression en terme de classe. Si le sens est Am la fonction sera au début et le paramètre en fin et réciproquement.
Une classe G peut donc s'écrire comme {A[Classe fonctionA»Classe paramètre^} pour une classe G Amont Ou comme {A[Classe paramètreA«Classe fonctionA]} pour une classe G Avale.
Les classes CR0={A[} CRI={A»} CR2={A«} CR3={A]} seront appelées Classes IG (classes d'indication G), elle définissent les classes G dans une séquence. Les classes fonction et paramètres pouvant elles mêmes être des classes G, il en résulte que les classes IG permettent d'établir la dichotomie fonctionnelle d'une séquence. Cette dichotomie fonctionnelle traduit la façon dont le procédé a compris la séquence.
Parmi les deux éléments d'une classe G, la fonction sera celui qui s'applique à l'autre.
Ex: le sens commun veux que dans {turn right} c'est bien {turn } qui s'applique à {right} et non l'inverse.
Notion de Fonctions Dépendantes
Le procédé sait reconnaître certaines fonctions qui permettent de relier deux classes.
Soit la séquence : {A[CxA«A[F0A»CyA]A]} (1)
Dans cette séquence Cx et Cy sont deux classes quelconques jouant le rôle de paramètre. Ces deux classes sont reliées dans la séquence par la fonction FO.
On constate que dans cette séquence :
FO est une fonction Amont dans la classe G {A[F0A»CyA]} que la classe G {A[F0A»CyA]} est elle même une fonction, Avale cette fois dans notre séquence (1)
Une Classe étant fonction dans un sens et dont les classes G utilisant cette classe comme fonction étant également fonctions mais dans le sens inverse est la caractéristique des fonctions dites Dépendantes ou « Fonctions Dep ».
Si le procédé détecte une majorité de séquences comme (1) ci dessus pour une fonction FO alors elle va généraliser ce comportement (le rôle de fonction de FO et le rôle de fonction de sens inverse à FO des classes G utilisant FO) et considérera que FO est une Fonction Dep.
C'est-à-dire que :
si FO est une classe fonction Amont Dep alors toute classe G utilisant FO est automatiquement une classe fonction Avale, et réciproquement :
si FO est une classe fonction Avale Dep alors toute classe G utilisant FO est automatiquement une classe fonction Amont : la séquence réciproque de (1) ci dessus étant alors :
{A[A[CxA«F0A]A»CyAj} (2)
Autre exemple :
Nous supposerons ici :
Avoir initialisé le Rmot {ASETWHEEL}
Qu'aucune fonction n'est connue de la méthode
Si nous saisissons la séquence :
{A[turn rightA«A[ means A»ASETWHEEL1 A]A]}
L’étape de dichotomie ne modifie pas la séquence ( aucune fonction n'est connue).
Une fois cette séquence apprise par l'identificateur-Créateur (étape 2), le procédé va savoir que { means } est une fonction Amont Dep et en conséquence si nous saisissons ensuite :
{turn left means ASETWHEEL-1}
L’étape de dichotomie reconnaît dans la séquence la fonction { means } (étape 1/1) apprise précédemment et va insérer dans cette séquence les Classes Réservées CRO à CR3 correspondant à une situation de Fonction Amont Dep. Ce qui donnera : (étapes 1/2 et 1/3 ) {A[turn leftA«A[ means A»ASETWHEEL-1 A]A]}
Séquence qui est ensuite apprise normalement par l'identificateurCréateur (étape 2)
Pour la suite, on appellera « classe GDep «pour désigner dans la suite ce type de séquences, c'est-à-dire qui correspondent à la forme (1) ou (2)
Pour la suite et par convention les espaces séparant les mots d'une langue naturelle dans une séquence sont dans une classe généralisée toujours portés exclusivement par la fonction (compris/inclus dans l'expression de la fonction) et non par le paramètre.
Les Classes Exécutables et le Mot Réservé ΛΕΧΕ
Pour piloter une machine le procédé doit reconnaître les classes/séquences qui doivent appeler les programmes de contrôle de la machine.
Nous avons défini dans le procédé le Mot Réservé {ΛΕΧΕ} qui est une classe fonction Avale pour permettre cette reconnaissance
Par construction, le procédé considère comme classe Exécutable : toute classe C « marquée >> par le Rmot ΛΕΧΕ c'est-à-dire {Λ[ΟΛ«ΛΕΧΕΛ]} a été appris
Ou
Toute classe G dont la fonction est marquée par le Rmot ΛΕΧΕ c'est a dire toute classe G =A[FxA»CxA] ou A[CxA«FxA] telle que {A[FxA«AEXEAj} a été appris. Ces classes G exécutables possèdent un paramètre (ou classe paramètre).
Ou
Toute classe GDep dont la Fonction Dep est marquée par le Rmot AEXE c'est-à-dire toute classe GDep={A[CxA«A[FxA»CyA]A]} ou réciproque telle que {A[FxA«AEXEAj} a été appris. Ces classes GDep exécutables possèdent deux paramètres.
Le procédé dispose d'une étape «d'Exécution >> (étape 3/3) qui reconnaîtra ces classes et assurera leur exécution.
Autre exemple :
Supposons que nous ayons connecté au procédé un petit véhicule pour lequel nous pouvons orienter les roues avec un programme de commande de roue et avec le paramètre :
{1} pour mettre les roues vers la droite {-1} pour mettre les roues vers la gauche {0} pour mettre les roues droites ASETWHEEL est supposé avoir été initialisé dans les Mots Réservés et lié dans l'algorithme d'Exécution au programme de commande des roues du véhicule.
Nous établirons comme Fonction Amont le Rmot ASETWHEEL en saisissant : {A[ASETWHEELA»1A]}
Nous marquerons ASETWHEEL par AEXE pour rendre exécutable les classes G utilisant la fonction ASETWHEEL. Nous saisirons donc :
{A[ASETWHEELA«AEXEA]}
En conséquence la saisie de {ASETWHEEL1}
- est compris par le procédé comme {A[ASETWHEELA»1A]} (étape 1)
-est identifiée car déjà créée ci dessus soit Cx (étape 2)
-est exécutée car étant reconnue comme classe exécutable (étape 3/3)
En effet Cx est une classe G dont la fonction ASETWHEEL est « marquée >> par AEXE l’étape d'exécution appelle la commande des roues avec le paramètre {1} ce qui met les roues vers la droite.
De la même manière, {ASETWHEEL0} met les roues droites et {ASETWHEEL-1} met les roues vers la gauche.
L’étape d'exécution étant appelé par le procédé lui même appelé après la Dichotome et l'Identification-Création. L'enchaînement des étapes est donc : étape 0 : prétraitement, étape 1 : dichotomie, étape 2 : identification-création, étape 3 : application 3, exécution 3/3
Les Fonctions d'Équivalence et le Mot Réservé AEQV
Le procédé ayant pour mission de convertir un ordre en une séquence exécutable, il doit identifier les séquences à convertir et leur séquence équivalente.
Pour réaliser ceci, il a été défini dans le procédé le Mot Réservé {AEQV} Fonction Avale qui permet, comme précédemment de« marquer >> des fonctions. Une fois marquée par AEQV une fonction reconnue par le procédé comme fonction d'équivalence.
Dans ce cas les fonctions marquées sont Dep et permettent ainsi de relier une séquence à sa séquence équivalente. Les classes G Dep et d'Equivalence seront de la forme :
{A[CA«A[FeqvA»CeqvA]A]} avec {A[FeqvA«AEQVA]} connu/appris et dans lesquelles
Feqv est la Fonction ici Am et Dep et d'équivalence
C est la classe pouvant être convertie
Ceqv est la classe équivalente a C
Le procédé dispose d'une étape d'équivalence qui recherchera sur la base pour les classes C qui lui sont soumises, leur classe équivalente Ceqv. (étape 3/2)
Cet algorithme est appelé dans l'algorithme d'Application avant l'Exécution
L'enchaînement des Algorithmes étant donc le suivant :
étape 0 : prétraitement, étape 1 : dichotomie, étape 2 : identificationcréation, étape 3 : application 3, équivalent 3/2, exécution 3/3
Exemple : Nous devons en première instance apprendre au procédé une équivalence pour une classe Nous reprenons l'exemple précédent en saisissant :
{A[turn rightA«A[ means A»ASETWHEEL1 A]A]} (1)
Ceci établit { means } comme Fonction Amont Dep
Nous établissons { means } comme Fonction d'équivalence en la « marquant » avec AEQV
Nous saisirons alors :
{A[ means A«AEQVA]}
La séquence (1) ci-dessus est maintenant bien considérée par l’étape d’équivalence et donc par le procédé comme une classe G Dep et d'Équivalence.
Si maintenant nous saisissons :
{turn right}
L’étape de dichotomie n'a pas d'effet ici (il n'y a pas de fonction dans la séquence), (étape 1)
L’étape d’identification-création trouve la classe car créée lors de (1) ci dessus soit Cy (étape 2)
La séquence est donc maintenant {Cy} (étape 3/1)
L'étape d’Application/d’exécution débute l'itération pour Cy (étape 3/1)
Appelle de l’étape d'Équivalence pour Cy (étape 3/2) ce dernier trouve comme classe équivalente Cx={A[ASETWHEELA»1A]} la séquence {Cy} est donc remplacée par la séquence {CxA[ASETWHEELA»1A]} (voir séquences LIG ci après).
L'étape d'application/exécution reprend alors pour cette nouvelle séquence
L'étape d'Application débute l'itération pour Cx (étape 3/1)
Appelle l'étape d'Équivalence pour Cx l'étape d'Équivalence ne connaît pas d'équivalence pour Cx (étape 3/2)
Appelle l'étape d'Éxécution pour Cx (3/3)
Ce qui mettra les roues vers la droite !
Il suffi alors de saisir les équivalences :
{turn left means ASETWHEEL-1} et {go straight means ASETWHEEL0} pour que les ordres {turn left} et {go straight} soient maintenant correctement exécutés.
Précisions sur les Séquences -les formats IG et LIG
Au cours des différentes étapes 0/1/2 les séquences vont évoluer. Voyons comment:
en étape 0 Prétraitement Séquence
La séquence reçue est de type « String >> (chaîne de caractères) chaque caractère est codé soit :
sur 8 bits si le procédé travaille en Ascii étendu ou Utf8 sur 12 ou 16 bits si le procédé travaille en Utf 12 ou Utf 16 et plus généralement sur autant de bits qu'il sera nécessaire pour couvrir tous les besoins en caractères des langues envisagées.
Par construction dans cet exemple d'application les premières classes sont réservées aux caractères. Les classes non caractères venant ensuite. Et ce afin de faire cohabiter dans une même séquence des caractères et des classes (Rmots par exemple) dont le No se trouvera au-delàs de 255 (cas ascii), la séquence est binarisée classiquement sur 32 bits pour les ordinateurs actuels (étape 0/1). Le nombre maximum de classes étant alors (2A31 -1 ) (les Nos de classes sont toujours positifs).
Les séquences traitées par le procédé sont en fin de la Réception Séquence (étape 0) et pour la suite des chaînes de « Larges Integers» en terminologie anglophone pour « grands entiers » en français,
Lors du prétraitement, les séquences correspondant à des mots réservés sont remplacées par leur numéro de classe No.
en étape 1 Dichtotomie
La mission du Dichotomiseur est d'insérer dans la séquence à traiter, les classes IG (CRO à CR3) en s'appuyant sur les fonctions déjà connues du procédé connu dans la base de données trouvées dans la séquence et ne participant pas déjà à une classe G dans la séquence.
Exemple 1 : Si la séquence à traiter est {A[turn Λ»rightA]}, en supposant {turn } déjà connue en tant que classe fonction Amont. La seule ou classe fonction trouvée sera {turn } mais elle participe déjà a une classe G, en effet elle est précédée par CR0={A[} et suivie par CR1={A»}
Le Dichotomiseur n'a donc pas à traiter cette fonction et donc ne modifie pas la séquence.
Exemple 2 : Si la séquence à traiter est :
{A[turn rightA«A[ means A»ASETWHEEL1 A]A]} en supposant {turn } et {ASETWHEEL} déjà connues comme classe fonctions Amont.
La première fonction trouvée sera {turn }, elle ne participe pas comme fonction a une classe G et peut donc être traitée (étape 1/1). La portée de son paramètre s'arrête a CR2={A«}, en effet l'entité à traiter est le paramètre :
{turn right}, l'intrication des classes G étant interdite (étape 1/2)
Le dichotomiseur transforme {turn right} en {A[turn A»rightA]} dans la séquence (étape 1/3).
Ceci nous donne la séquence :
{A[A[turn A»rightA]A«A[ means A»ASETWHEEL1 A]A]}
Le Dichotomiseur reprendra ensuite la recherche de fonction (étape 1/1).
Il trouvera {turn } qui est déjà exprimée et participe comme fonction a une classe G et donc enchaîne : il ne considérera pas { means ASETWHEEL1} ni { means } car non connues a ce point comme fonction (la séquence n'a pas encore été créée, ceci étant fait à l'étape suivante (étape 2).
Il trouve {ASETWHEEL} qui n'est pas exprimée et peut donc être traitée exactement comme précédemment pour {turn } .
L'entité à traiter étant cette fois le paramètre {ASETWHEEL1} (étape 1/2).
{ASETWHEEL1} est donc transformée dans la séquence en {A[ASETWHEELA»1A]} (étape 1/3).
Le Dichotomiseur reprend la recherche de fonction et n'en trouvera plus de non exprimée.
Nous aurons donc en sortie du Dichotomiseur la séquence:
{A[A[turn A»rightA]A«A[ means A»A[ASETWHEELA»1 A]A]A]} cette séquence fait état de la structure de la classe correspondante.
Dans cet exemple le Dichotomiseur a reçu une séquence comportant déjà des classes IG.
Il a néanmoins complété la dichotomie de la séquence qui lui est soumise en prenant en compte toutes les fonctions connues du procédé présentes dans cette séquence.
Une séquence comportant les classes IG pour toutes les fonctions connues du procédé et présentes dans la séquence sera désignée comme« séquence IG ». Ce format de séquence est le format de sortie des séquences pour le Dichotomiseur. Ce sera également le format d'entrée des séquences pour l'algorithme d'Identification-Création.
en étape 2 Identification-Création
La mission de l’étape d’identification-Création est soit d'identifier (si connues) les classes composantes de la séquence (délimitées par les classes IG), soit de les créer sur la base de données.
Reprenons comme séquence à traiter la séquence IG précédente issue du Dichotomiseur:
{A[A[turn A»rightA]A«A[ means A»A[ASETWHEELA»1 A]A]A]} (1) dans laquelle seule {turn } , {ASETWHEEL} et {1} sont connues de la base. En effet, {1} étant un caractère, il est par construction déjà connu ( {1} sera la classe 49 dans les cas Ascii étendu, Utf8 ).
Cette séquence IG va être convertie graduellement, au fur et à mesure des identifications ou créations de classes, en séquence LIG dans laquelle :
Les classes G se verront rajouter leur No et ce AVANT leur classe CRO dans la séquence IG
Exemple : soit Cz={A[CxA»CyA]} donnera la séquence LIG {CzA[CxA»CyA}}
Les séquences des classes Non G se verront simplement substituées par leur No
Exemple : si Cx={turn } et Cy={right} sur la base pour {A[turn A»rightA]} donnera {A[CxA»CyAj}
Le « L » de LIG vient de Lead class en terminologie anglophone pour « numéro de classe en tête » en français. En d'autres terme « séquence avec Lead and Indication G classes ». Sous ce format une séquence porte en elle même toutes les informations nécessaires à son Application/exécution (étape 3).
Une classe G ne pourra être créée que si l'on connaît déjà sur la base sa Fonction ET son Paramètre. En d'autres termes si un numéro No de classe leur a déjà été affecté. Les enchaînements de l’étape Dichotomiseur tiennent compte de ceci.
Appliqué a notre séquence (1) cela donnera
Début d'itération pour la classe CR0=fA[} en 1ère position dans (1) (étape 2/1). Il s’agit d'une classe G inconnue sur la séquence - en effet si elle était connue nous aurions une Lead Classe: {CA[ ... Et dont la Fonction et le Paramètre sont inconnus sur la séquence (même chose pas de lead classe pour ces derniers ). Nous sommes donc dans le cas de l'étape 2/7 -> Retour itération.
Suite d'itération pour la classe CR0=fA[} en 2ème position dans (1) (étape 2/1 )
Nous sommes de même dans le cas de l'étape 2/7 : classe G inconnue sur la séquence dont la Fonction et le Paramètre sont également inconnus sur la séquence -> Retour itération.
Suite d'itération pour la classe ft} en 3 ème position dans (1) (étape 2/1)
Il s’agit d'une classe Non G (car non CRO et non suivie de CRO}
Non connue sur la séquence (car non suivie de CR1 ou CR2 ou CR3)
Nous sommes dans le cas de l'étape 2/5. En conséquence
Extraction de la séquence de classe : de la position courante (3) jusqu'au premier CR1 ou CR2 ou CR3 rencontré soit la séquence extraite {turn}
Recherche sur base de cette séquence- déjà connue soit Cx Substitue {turn } par Cx dans la séquence soit :
{A[A[CxA»rightA]A«A[ means A»A[ASETWHEELA»1 A]A]A]} (2) et Retour itération
Suite d'itération pour la classe CR1 ={A»} en 4 ème position dans (2) (étape 2/1 )
Nous sommes dans le cas de l'étape 2/2 ->Retour itération
Suite d'itération pour la classe {r} en 5ème position dans (2) (étape 2/1 )
Il s’agit d'une classe Non G (car non CRO et non suivie de CRO}
Non connue sur la séquence (car non suivie de CR1 ou CR2 ou CR3)
Nous sommes dans le cas de l'étape 2/5. En conséquence
Extraction de la séquence de classe : de la position courante (5) jusqu'au premier CR1 ou CR2 ou CR3 rencontré soit la séquence extraite {right}
Recherche sur base de cette séquence - Inconnue donc créée sur la base soit Cy
Substitue {right} par Cy dans la séquence soit :
{ A[A[CxA»CyA]A«A[ means A»A(ASETWHEELA»1 A]A]A]} (3) et Retour itération
Suite d'itération pour la classe CR3={A1I en 6 ème position dans (3) (étape 2/1 )
Nous sommes dans le cas de l'étape 2/3. En conséquence nous reprenons l'itération en deuxième position - qui est la position du début de la classe G correspondant à la CR3 en sixième position et dans le cas d'absence de lead.
Suite d'itération pour la classe CR0={A[} en 2 ème position dans (3) (étape 211)
Nous sommes dans le cas d'une classe G inconnue sur la séquence (pas de lead) dont la Fonction et le Paramètre sont connus (Cx et Cy) - c'est le cas de l'étape 2/6. En conséquence
Extrait la séquence de classe = séquence de la Fonction+ séquence du paramètre soit la séquence de classe={turn }+{right}={turn right} identifie ou (dans notre cas ) Crée la séquence sur base soit Cz insère ce No (Cz) en amont de son CRO dans la séquence soit la séquence {A[CzA[CxA»CyA]A«A[ means A»A[ASETWHEELA»1 A]A]A]} (4) et Retour itération pour la classe suivant la fin de la classe Cz soit la huitième position
Suite d’itération pour la classe CR2={A«} en 8ème position dans (4) (étape 2/1 )
De la même manière le procédé continue et créé tous les classes nécessaires et consituté la séquence LIG de la forme.
{CsA[CzA[CxA»CyA]A«CtA[CwA»CuA[CR6A»CvA]A]A}}
Avec : Cx={turn } Cy={right}, Cz={turn right}=={CxCy}Am, CR6={ASETWHEEL}, Cv={1}, Cu={ASETWHEEL1}=={CR6Cv}Am, Cw={ means } Cu={ASETWHEEL1}, Ct={ means ASETWHEEL1}=={CwCu}Am, Cz={turn right}, Ct={ means ASETWHEEL1},
Cs={turn right means ASETWHEEL1}=={CzCt}Av
Les séquences LIG ont l'extrême avantage de linéariser la structure des classes (voir figure 6). En conséquence une itération sur les classes d'une séquence LIG permet de « balayer » toutes les classes impliquées dans la structure en partant des plus grandes et en respectant l'ordre chronologique.
Il est à noter que la 1ère classe d'une séquence LIG sera toujours le No de classe de la séquence! (Cs dans l'exemple ci dessus).
Les Séquences LIG rendent compte de la façon dont le procédé a appris et compris une séquence.
Ces séquences sont très aisées à reconstituer à partir de la base de données.
Reconstitution de séquence LIG de classe
Soit une classe Cs dont nous voulons la séquence LIG (Nous reprendrons les données de l'exemple)
Nous démarrerons avec la séquence {Cs}
Itération sur les classes de la séquence (On ignore les classes IG: CRO à CR3)
- Traite la classe en X ème position ( Cs en 1ère position)
Accède la base pour la classe (Cs)
Si la classe est Non G ->Suite itération
Si la classe est G (Cs est G car possède une expression classe et un sens)
Nous prenons son expression classe et son sens (soit {CzCt} et Av)
Nous insérons dans cette expression les classes IG correspondant au sens pour former la séquence de classe (soit { Λ[ CzA«CtA]})
Nous insérons dans la séquence après le No de classe cette séquence de classe (soit {CsA[CzA«CtA]}) et Retour itération
- Traite la classe en Xème position ( Cz en 3eme position)
Accède la base pour la classe (Cz)
Si la classe est Non G ->Suite itération
Si la classe est G (Cz est G )
Nous prenons son expression classe et son sens (soit {CxCy} et Am )
Nous insérons dans cette expression les classes IG correspondant au sens pour former la séquence de classe (soit {A[CxA»CyA]})
Nous insérons dans la séquence après le No de classe cette séquence de classe (soit {CsA[CzA[CxA»CyA]A«CtA]}) et Retour itération
Ainsi de suite jusqu’à la séquence LIG :
{CsA[CzA[CxA»CyA]A«CtA [CwA»CuA[CR6A»CvA]A]A]}
Règles de bordure
L’étape de dichotomie pour pouvoir considérer une fonction identifiée dans une séquence doit respecter les régies de bordures suivantes :
Une fonction Amont Non Dep devra être au début de la séquence Ou immédiatement précédée de CR0={A[} ou de CR1={A»} ou de CR2={A«} (Une des trois premières classes IG).
Une fonction Avale Non Dep devra être en fin de la séquence Ou immédiatement suivie de CR1={A»} Ou de CR2={A«} Ou de CR3={A]} (Une des trois dernières classes IG).
Ces règles assurent la bonne chronologie dans la dichotomie et évitent des erreurs d'interprétation.
Exemple : nous supposons ici connaître {turn } comme fonction Amont. Dans la séquence {make a Uturn and stop} la fonction {turn } ne sera pas considérée dans cette séquence pour non respect de la règle de bordure énoncée ci dessus.
Une fonction Amont (Dep ou non Dep) doit ne pas être en fin de séquence ou immédiatement suivie de CR1={A»} ou de CR2={A«} ou de CR3={A]} (Une des trois dernières classes IG).
Une fonction Avale (Dep ou non Dep) devra ne pas être en début de séquence ou immédiatement précédée de CR0={A[} ou de CR1={A»} ou de CR2={A«} (Une des trois premières classes IG).
Ces règles garantissent que le paramètre de la fonction est existant (non nul).
Une fonction Amont précédée de CR0={A[} et suivie de CR1={A»} participe déjà a une classe G et donc ne sera pas considérée. De la même manière pour une fonction Avale précédée de CR2={A«} et suivie de CR3={A]}.
Notion de Hiérarchie
Nous désignerons par Hiérarchie la relation qu'il peut exister entre deux fonctions de sens opposé.
Soit F1 une fonction Amont, F2 une fonction Avale et Pi un paramètre
S’il existe sur la base de données une (ou plusieurs) classe(s) Ci de la forme
Ci={A[F1 A»A[PiA«F2A]A]} alors le procédé en déduit qu'il existe une hiérarchie dominante de F1 sur F2 . Hiérarchie que nous écrirons F1»> F2
Si à contrario, il existe sur la base une (ou plusieures) classe(s) Cj de la forme Cj={A[A[F1 A»PjA]A«F2A]} alors le procédé en déduit qu'il existe une hiérarchie dominante de F2 sur F1. Hiérarchie que nous écrirons F1 «<F2
Si il existe simultanément Ni classes de la forme Ci et Nj classes de la forme Cj, le procédé prend la hiérarchie la plus souvent connue. C'est-à-dire si Ni>Nj. Le procédé prend F1 > > > F2 et réciproquement.
S’il existe une hiérarchie avec une fonction qui est classe G d'une fonction Dep alors le procédé applique la même hiérarchie pour toutes les autres fonctions également classes G de la même fonction Dep (mais avec un paramètre pouvant être différent).
Ces hiérarchies ont une utilité directe et essentielle dans la dichotomie d'une séquence et permettent au module de dichotomie de déterminer la portée du paramètre applicable à une fonction. En effet, le paramètre d'une fonction non dominante ne peut contenir une fonction qui lui est dominante
Exemple :
Si nous avons soumis au procédé la séquence suivante:
{A[A[turn A»rightA]A«A[ means A»A[ASETWHEEL1 A]A]A]} (5)
Le procédé a alors appris :
Que {turn } est une fonction Amont
Que { means } est une fonction Amont et Dep
Qu'il existe une hiérarchie {turn }«<{ means ASETWHEEL1} et qu'il existe donc une hiérarchie {turn }«<{ means xxx} dans lequel xxx est un paramètre quelconque de { means}
Que {ASETWHEEL} est une fonction amont
Si nous saisissions ensuite la séquence :
{turn left means ASETWHEEL-1}
L’étape de dichotomie trouve la fonction {turn } avec comme paramètre tout ou partie de {left means ASETWHEEL-1} la dichotomie recherche les fonctions dans ce paramètre et trouve { means } qui est une fonction Amont Dep et dont les classes G sont automatiquement des fonctions Avales et dont nous connaissons un exemple de hiérarchie dominante sur {turn } dans la séquence (5).
Le procédé limite en conséquence la portée du paramètre à {left}. Après insertion des classes IG.
la séquence sera :
{A[turn A»leftA] means ASETWHEEL-1}
La fonction acceptable suivante sera { means } fonction Amont avec comme paramètre tout ou partie de {ASETWHEEL-1}
L’étape de dichotomie ne trouve pas dans ce paramètre de Fonction avale, en conséquence il ne va pas réduire la portée du paramètre et va insérer les classes IG telles que :
{A[turn A»leftA]A[ means A»ASETWHEEL-1A]} puis reprendra la recherche de fonctions pour cette séquence. Il trouvera {A[ means A»ASETWHEEL-1A]} fonction Avale car { means } est une fonction Amont Dep. Le paramètre {A[turn A»leftA]} étant une classe G, il n'y a pas à rechercher de fonction dans ce cas. En conséquence, l’étape de dichotomie va insérer les classes IG suivantes.
{A[A[turn A»leftA]A«A[ means A»ASETWHEEL-1 A]A]} puis reprendra la recherche de fonction et trouvera {ASETWHEEL} fonction amont. Après insertion des classes IG nous aurons :
{A[A[turn A»leftA]A«A[ means A»A[ASETWHEELA»-1 A]A]A]} qui est la dichotomie de notre séquence.
Règles de mise à jour des classes dans l'Identificateur-Créateur
Toute séquence simple (ne comportant que des caractères, ne comportant pas de séquences IG) ne devra être présente qu'une unique fois dans la base de données. En conséquence toute séquence simple n’est représentée que par un unique No de classe dans la base de données. Le maintient de cette notion d'unicité impose que le module d'identification-création respecte les règles suivantes :
la classe à créer est G et connue Non G ->On met à jour la jour la classe en lui rajoutant son expression en terme de classe et son sens, la classe à créer est Non G et connue G -> pas de mise a jour à faire, la classe reste G sur la base de données, la classe à créer est G et connue G sous une forme différente (le sens et/ou la fonction et le paramètre sont différents) -> on met à jour l'expression en terme de classe et le sens (la nouvelle version prime sur l'ancienne), la classe a créer (G ou Non G) est connue sous la même forme -> Pas de mise à jour à faire, la classe à créer (G ou Non G) est inconnue sur la base-> Crée la nouvelle classe.
Corrections d'incompréhension
Dans certains cas, (absence de définition de fonction, non définition de hiérarchie, etc ... ) , l’étape de dichotomie peut établir une dichotomie erronée pour une séquence . Il suffit alors de re-saisir la dite séquence en mentionnant les classes IG conformément à ce qui doit être compris. La séquence sera alors corrigée.
Exemple d’application
Nous reprendrons pour cet exemple le contrôle d'un petit véhicule déjà abordé puis nous l'étofferons. Nous partirons d'une base vierge et nous ferons apparaître l'état de la base à chaque étape.
a) initialisation de la base
Il s’agit des Mots Réservés :
No expression simple expression Classe sens
CRO Λ[
CR1 Λ»
CR2 Λ«
CR3 Λ]
CR4 ΑΕΧΕ
CR5 AEQV
CR6 ASETWHEEL
CR7 ASETENGINE
b) contrôle des roues
Établit ASETWHEEL comme fonction Amont {A[ASETWHEELA»1Aj}
No expression simple expression Classe sens
C1 1
C2 ASETWHEEL1 CR6C1 Am
Établit ASETWHEEL comme Fonction Exécutable {ASETWHEELA«AEXEAj}
No expression simple expression Classe sens
C3 ASETWHEELAEXE CR6CR4 Av
Établit { means } comme Équivalence {A[ means A«AEQVA]}
No expression simple expression Classe sens
C4 means
C5 means AEQV C4CR5 Av
Apprend les équivalences :
(i) Pour mettre les roues à droite {A[turn rightA«A[ means A»ASETWHEEL1 A]A]}
No expression simple expression Classe sens
C6 means ASETWHEEL1 C4C2 Am
C7 turn right
C8 turn right means ASETWHEEL1 C7C6 Av
(ii) Pour mettre les roues à gauche {turn left means ASETWHEEL-1}
No expression simple expression Classe sens
C9 -1
C10 ASETWHEEL-1 CR6C9 Am
C11 meansASETWHEEL-1 C4C10 Am
C12 turn left
C13 turn left means ASETWHEEL-1 C12C11 Av
(iii) Pour mettre les roues droites {go straight means ASETWHEELO}
No expression simple expression Classe sens
C14 0
C15 ASETWHEEL0 CR6C14 Am
C16 means ASETWHEEL0 C4C15 Am
C17 go straight
C18 go straight means ASETWHEEL0 C17C16 Av
Cl contrôle du moteur
Nous utiliserons cette fois le Rmot ASETENGINE Fonction Amont dont 10 les paramètres sont de même {1} pour avancer, {0} pour arrêter, {-1} pour reculer.
ASETENGINE est lié dans l’étape d'éxécution à la commande du moteur.
Les ordres correspondants sont :
{go ahead} pour avancer, {stop} pour arrêter et {move back} pour reculer.
Établit ASETENGINE comme Fonction Amont {A[ASETENGINEA»1A}}
No expression simple expression Classe sens
C19 ASETENGINE1 CR7C1 Am
Établit ASETENGINE comme Fonction Exécutable {Λ[ ASETENGINEA«AEXEA]}
No expression simple expression Classe sens
C20 ASETENGINEAEXE CR7CR4 Av
Apprend les équivalences :
(i) Pour mettre le moteur en avant {go ahead means ASETENGINE1}
No expression simple expression Classe sens
C21 means ASETENGINE1 C4C19 Am
C22 go ahead
C23 go ahead means ASETWHEEL1 C22C21 Av
(ii) Pour mettre le moteur en arrière {move back means ASETENGINE-1}
No expression simple expression Classe sens
C24 ASETENGINE-1 CR7C9 Am
C25 means ASETENGINE-1 C4C19 Am
C26 move back
C27 move back means ASETENGINE-1 C26C25 Av
(iii) Pour arrêter le moteur {stop means ASETENGINEO}
No expression simple expression Classe sens
C28 ASETENGINE0 CR7C14 Am
C29 means ASETENGINE0 C4C28 Am
C30 stop
C31 Stop means ASETENGINE0 C30C29 Av
A ce point nous avons donc appris au procédé à exécuter les ordres nécessaires au contrôle de notre véhicule, a savoir :
turn right, turn left, go straight, go ahead, move back, et stop Ordres Équivalents
Nous souhaitons ici disposer de synonymes pour certains ordres, par exemple nous souhaitons que le procédé comprenne correctement l'ordre {make a right}. Pour ce faire nous pouvons évidemment saisir {make a right means ASETWHEEL 1 } ce qui fonctionnera.
Nous saisirons plutôt l'équivalence :
{make a right means turn right}
Une fois cette équivalence apprise normalement, nous pourrons saisir {make a right} le procédé appelle la fonction d’équivalence pour cette séquence, cette dernière trouve comme classe équivalente {turn right}, et continue la fonction d’équivalence trouve alors {ASETWHEEL1} et reprend ensuite la méthode la fonction d’équivalence ne trouvant plus d'équivalence, le procédé passe à l’étape d’exécution et met les roues à droite.
Cet ordre sera donc bien exécuté par la machine.
Dans une variante, selon un exemple, l’étape d’identification-création est réalisée au fur à mesure de l’étape dichotomie.
Revenant à la figure 6, cette figure représente un exemple d’une classe C9 et des classes impliquées dans la structure de la classe C9. La figure montre les relations entre les classes une fois les traitements accomplis. Dans les bulles sont mentionnées les expressions simples. Le P signifie un paramètre. Le F représente la fonction.
No expression simple expression Classe sens
C1 turn
C2 right
C3 turn right C1C2 Am
C4 means
C5 ASETWHEEL
C8 1
C7 ASETWHEEL1 C5C6 Am
C8 means ASETWHEEL1 C4C7 Am
C9 turn right means ASETWHEEL1 C3C8 Av
Précisions et Exemples sur les Hiérarchies
Une classe fonction est appelée aussi juste fonction. Un classe paramètre est appelée aussi juste paramètre.
Le principe de la dichotomie est que ce sont les rapports hiérarchiques entre deux fonctions qui permettent de dichotomiser une séquence.
Cas 1 - Supposons une fonction amont antérieure sur la séquence à une fonction avale ° Si le Système connaît une hiérarchie simple entre ces deux fonctions —> Le Système applique cette hiérarchie (insère les classes IG correspondantes dans la séquence).
Exemple 1 : Cas d'une hiérarchie connue dans la table des rapports hiérarchiques
Soit une base de données dans laquelle il est connu les éléments suivants :
{turn } comme fonction amont { quickly} comme fonction avale le rapport hiérarchique : {turn } «< { quickly} ( la fonction { quickly} est dominante sur la fonction {turn } )
Il est saisi la séquence : {turn right quickly}
A l'étape b) de dichotomie il est reconnu la fonction amont {turn } qui est correctement bordée et peut donc être considérée.
Il est alors recherché la portée de son paramètre qui commence à « r >>.
Il est ensuite reconnu la fonction avale { quickly} de hiérarchie dominante sur {turn }.
En conséquence le paramètre s'arrête au « t >> précédent { quickly} et la fonction {turn } a préséance sur la fonction { quickly} dans la prise du paramètre {right} et les IG correspondantes sont insérés dans la séquence : {A[turn A»rightA] quickly} puis l'algorithme continue. La seule fonction bien bordée encore non traitée dans la séquence est { quickly}, il n'y a pas d'interaction hiérarchique avec une autre fonction, aussi son paramètre débute en début de séquence et finit à la position précédent { quickly}. En conséquence les IG suivantes sont insérées :
{A[A[turn A»rightA]A« quicklyA]}
Exemple 2 : Cas d'une hiérarchie inconnue dans la table
Utilisation de l'évaluation d'une hiérarchie
Soit une base de données dans laquelle il est connu trois séquences :
S1={A[A[turn A»northA]A« quicklyA]}
S2={A[A[turn A»southA]A« quicklyA]}
S3={A[turn A»A[leftA« quicklyA]A]}
De ces trois séquences le Système sait que :
{turn } est une Fonction amont { quickly} est une Fonction avale
Il est saisi la séquence : {turn right quickly}
Lors de l'étape b) de dichotomie et identiquement à l'Exemple 1 cidessus, les deux fonctions {turn } et { quickly} sont reconnues, mais l'absence de rapport hiérarchique de ces deux fonctions dans la table impose au Système (ou procédé) de l'évaluer. Il est alors compté le nombre de récurrences pour les deux fonctions, soit N12=1 (correspondant à S3) et N21=2 (correspondant à S1 et S2), nous indiquant ainsi, puisque N21>N12 que {turn } «< { quickly} et identiquement à l'Exemple 1 ci-dessus, il est inséré dans la séquence les IG telles que {A[A[turn A»rightA]A« quicklyA]} ° Si le Système ne connaît pas de hiérarchie simpleentre ces deux fonctions et que l'une au moins (ou les deux) fonction(s) sont des fonctions ParDep, alors le Système recherchera la hiérarchie :
Soit de la fonction amont si celle ci n'est pas une fonction ParDep
Soit des listes des fonction ParDep amont de la fonction amont si celleci est une fonction ParDep et/versus
Soit de la fonction avale si celle ci n'est pas une fonction Pardep
Soit de la liste des fonctions ParDep avales de la fonction avale si celle ci est une fonction ParDep
Si le Système trouve alors une hiérarchie -> Le Système applique cette hiérarchie
Exemple 3 : Cas de Hiérarchie inconnue Fonction amont Versus Fonction ParDep avale
Utilisation des listes de fonction ParDep d'une fonction Dep utilisée dans une fonction ParDep
Soit une base de données dans laquelle il est connu les éléments suivants :
{ means } comme Fonction Dep amont
S4={A[ means A»ASETWHEEL1A]}
S5={A[A[turn A»leftA]A«A[ means A»ASETWHEEL-1 A]A]}
Le Système sait en conséquence que :
{turn } est une fonction amont
S4 est une fonction ParDep avale
Appelions S6={A[ means A»ASETWHEEL-1A]} est une fonction ParDep avale
Le Système ne connaît pas de rapport hiérarchique directe/simple de {turn } Versus { means ASETWHEEL1}
Il est saisit : {turn right means ASETWHEEL1}
Lors de l'étape b) de dichotomie la fonction amont {turn } sera traitée car bien bordée (les classes IG), lors de la recherche de la portée de son paramètre il est rencontré la fonction avale S4={ means ASETWHEEL1} mais aussi la fonction Dep amont { means } toutes deux bien bordées, la fonction S4 étant une classe généralisée utilisant { means } sera prioritaire dans le traitement sur cette dernière, en l'absence de connaissance de rapport hiérarchique entre ces deux fonctions et puisque S4 est une fonction ParDep, il est évalué le rapport hiérarchique de {turn } versus la liste des fonctions ParDep de la fonction Dep { means } soit S4 et S6, la classe généralisée S5 nous donne une occurrence telle que {turn } «< S6, cette hiérarchie s'appliquera donc et en conséquence {turn } aura la préséance dans la prise du paramètre {right} et infiné nous obtiendrons :
{A[A[turn A»rightA]A«A[ means A»ASETWHEEL1 A]A]} ° Si le Système ne trouve toujours pas de hiérarchè, le Système recherchera alors la hiérarchie :
de la liste des fonctions amont apparentées à la fonction amont et/versus de la liste des fonctions avales apparentées à la fonction avale
Si le Système trouve alors une hiérarchie -> Le Système applique cette hiérarchie
Cas 2 - Fonction amont antérieure sur la séquence à une fonction Dep amont
Seules des fonctions de sens inversés peuvent interagir hiérarchiquement entre elles, aussi dans l'évaluation hiérarchique, il sera substitué à la fonction Dep amont, la liste des fonctions ParDep avales de cette fonction Dep amont. Ceci correspond à une anticipation dans la séquence d'une future fonction ParDep avale de la fonction Dep amont qui apparaîtra au cours de la dichotomie.
Exemple 4 : Cas de Hiérarchie inconnue Fonction amont Versus Fonction Dep amont
Utilisation des listes de fonctions ParDep
Soit une base de données dans laquelle il est connu les éléments suivants :
{ means } comme Fonction Dep amont
S5={A[A[turn A»leftA]A«A[ means A»ASETWHEEL-1 A]A]}
Le Système sait en conséquence que :
{turn } est une fonction amont
Appelions S6={A[ means A»ASETWHEEL-1A]} est une fonction ParDep amont
Il est saisit : {turn right means ASETWHEEL1}
Lors de l'étape b) de dichotomie la fonction amont {turn } sera traitée car bien bordée, lors de la recherche de la portée de son paramètre il est rencontré la fonction Dep amont { means }, il est alors évalué le rapport hiérarchique de la fonction {turn } versus la liste des fonctions ParDep de { means } soit S6, la classe généralisée S5 nous donne une occurrence telle que {turn } «< S6. En conséquence {turn } aura la préséance dans la prise du paramètre {right} et les IG suivantes seront insérées {A[turn A»rightA] means ASETWHEEL1} la fonction suivante à traiter est la fonction { means }, c'est une fonction amont et il n'y a pas d'autres fonctions postérieures avec laquelle elle puisse interagir hiérarchiquement, en conséquence son paramètre commencera à ASETWHEEL et finira en fin de séquence, il est alors inséré les IG suivantes :
{A[turn A»rightA]A[ means A»ASETWHEEL1A]}. La derniere fonction à traiter est la fonction avale Pardep {A[ means A»ASETWHEEL1A]}, après insertion des classes IG et infiné nous obtiendrons :
{A[A[turn A»rightA]A«A[ means A»ASETWHEEL1 A]A]}
Exemple 5 : Cas de Hiérarchie inconnue Fonction amont Versus Fonction Dep amont
Utilisation des parentés pour l'évaluation hiérarchique { means } comme fonction Dep amont { signifies } comme fonction Dep amont le rapport hiérarchique {turn } «< { means }
Deux séquences :
S7={A[meansA« is a verb of equivalenceA]}
S8={A[signifiesA« is a verb of equivalenceA]} il est saisit : {turn right signifies ASETWHEEL1}
Lors de l'étape b) de dichotomie la fonction amont {turn } sera traitée car bien bordée, lors de la recherche de la portée de son paramètre il est rencontré la fonction Dep amont { signifies }, il est alors évalué le rapport hiérarchique de la fonction {turn } versus la liste des fonctions ParDep de { signifies } , liste qui est vide, il n'y a donc pas de hiérarchie via ce mode, il est alors recherché les fonctions apparentés de { signifies },le système trouvera alors via S7 et S8 la fonction { means }, il recherchera alors la hiérarchie de {turn } versus { means }, que le système connaît comme étant {turn } «< { means } .En conséquence {turn } aura la préséance dans la prise du paramètre {right} et infiné nous obtiendrons :
{A[A[turn A»rightA]A«A[ means A»ASETWHEEL1 A]A]
Cette Organisation n'est pas limitative, elle peut encore être étendue, il est possible, et par exemple, s’il n'est pas trouvé de hiérarchies à l'issue des enchaînements précédents, d'étendre la liste des fonctions apparentées obtenues précédemment de toutes les fonctions apparentées de cette liste puis de reprendre l'évaluation hiérarchiques et ainsi de suite.
Il y a un compromis entre le temps de traitement attachés aux évaluations hiérarchiques et l'acceptabilité d'une erreur de compréhension du 5 Système.

Claims (12)

  1. REVENDICATIONS
    1. Procédé mise en oeuvre par ordinateur de transformation d’une séquence comportant plusieurs mots issus d’une langue naturelle pour rendre ladite séquence exécutable par une machine, caractérisée en ce que ledit procédé comprend les étapes suivantes :
    a) prétraitement, dans lequel une séquence constituée de plusieurs caractères formant des mots issus d’une langue naturelle, ladite séquence est comparée avec des données d’une base de données comportant des classes, chaque classe comprenant au minimum les deux premiers des éléments suivants :
    un numéro, une expression simple constituée par la suite de caractères représentant la classe, une expression classe composée de deux numéros correspondant à deux autres classes, soit positionné en une première position, soit positionné en une deuxième position, et un sens, ledit sens étant soit amont, soit aval, si ladite classe comprend également une expression classe et un sens, alors ladite classe est appelée classe Généralisée, si le sens est amont ladite classe est appelée classe Généralisée amont, si le sens est aval, ladite classe est appelée classe Généralisée avale, s’il s’agit d’une classe Généralisée amont alors la classe en première position de son expression classe est une classe fonction amont et la classe en deuxième position de son expression classe est une classe.paramètre, s’il s’agit d’une classe Généralisée avale alors la classe en première position de son expression classe est une classe.paramètre et la classe en deuxième position de son expression classe est une classe fonction avale, une classe fonction est au moins l’un des éléments suivants : une classe fonction amont, et une classe fonction avale, il est défini une table de classes fonctions amonts ou avales particulières appelées classe fonction Dep, une classe fonction Dep est soit une classe fonction Dep amont, soit une classe fonction Dep avale, lesdites classes fonction Dep présentes dans la table ont pour caractéristique que toute classe généralisée de l'une desdites classes fonction Dep est connue du procédé comme une classe fonction de sens inversé à ladite classe fonction Dep, appelée classe fonction ParDeo, ainsi une classe fonction ParDeo amont est une classe fonction amont et est une classe Généralisée d'une classe fonction Dep avale, et une classe fonction ParDeo avale est une classe fonction avale et est une classe Généralisée d'une classe fonction Dep amont, il est également défini une table de rapports hiérarchiques pour des couples constitués d'une classe fonction amont ou d’une classe fonction Dep et d'une classe fonction avale ou d’une classe fonction Dep, ledit rapport hiérarchique indique pour chacun des couples présents dans la table laquelle des deux classes fonctions du couple est Hiérarchiquement dominante sur l'autre, si dans une séquence une classe fonction amont précède une classe fonction avale ou une classe fonction Dep hiérarchiquement dominante, et que lesdites classes fonctions soient séparées par un paramètre non vide, alors ladite classe fonction amont non hiérarchiquement dominante à la préséance dans la prise dudit paramètre sur la classe fonction avale ou la classe fonction Dep hiérarchiquement dominante, si dans une séquence une classe fonction avale est postérieure à une classe fonction amont ou une classe fonction Dep hiérarchiquement dominante, et que lesdites classes fonctions soient séparées par un paramètre non vide, alors ladite classe fonction avale non hiérarchiquement dominante à la préséance dans la prise dudit paramètre sur la classe fonction amont ou la classe fonction Dep hiérarchiquement dominante, ladite base de données comporte également des classes réservées, chaque classe réservée comporte un numéro et une expression simple, dont chaque expression simple est précédé d’un marquage (Λ), ladite base de données comporte les éléments suivants prédéfinis : première classe réservée (Λ[), deuxième classe réservée (Λ»), troisième classe réservée (Λ«), quatrième classe réservée (Λ]), cinquième classe réservée (ΛΕΧΕ), la première classe réservée (Λ[), la deuxième classe réservée (Λ»), la troisième classe réservée (Λ«) et la quatrième classe réservée (Λ]) sont ci-après désignées classes IG, la première classe réservée (Λ[) et la quatrième classe réservée (Λ]) ont pour fonction d’indiquer dans une séquence le début et la fin d'une classe Généralisée, la seconde classe réservée (Λ>>), toujours positionnée à l'intérieur d'une partie de la séquence délimitée par la première classe réservée (Λ[) et la quatrième classe réservée (Λ]), sépare ladite partie de séquence en deux sous parties dont la première représente une classe fonction amont et la seconde représente une classe paramètre, et indique que ladite partie de séquence représente une classe Généralisée amont, la troisième classe réservée (Λ«), toujours positionnée à l'intérieur d'une partie de la séquence délimitée par la première classe réservée (Λ[) et la quatrième classe réservée (Λ]), sépare ladite partie de séquence en deux sous parties dont la première représente une classe paramètre et la seconde représente une classe fonction avale, et indique que ladite partie de séquence représente une classe Généralisée avale, une séquence ou partie de séquence comportant des classes IG est dénommé expression IG, la cinquième classe réservée (ΛΕΧΕ) est une classe fonction et désigne toute classe comme exécutable par une machine, l’étape de prétraitement comporte une comparaison de la séquence avec les données de la base de données :
    si une classe réservée est reconnue dans une partie de la séquence, alors ladite partie de la séquence est substituée par le numéro de la classe réservée correspondant,
    b) dichotomie, dans laquelle il est recherché dans la séquence les expressions simples et expressions IG connues dans le procédé comme étant une classe fonction amont ou une classe fonction avale, la séquence est dichotomisée jusqu’à ce que toutes les classes fonction contenues dans la séquence susceptibles de donner lieu à des dichotomies l'ait été, pour chacune des classes fonctions amonts ou classes fonctions avales trouvées dans la séquence, l’étape de dichotomie consiste à :
    - s’il s’agit d'une classe fonction amont, et ladite classe fonction amont si Non Dep se trouve au début de la séquence ou immédiatement précédée de l'une des trois premières classe IG (Λ[, Λ», Λ«) et ladite fonction amont se trouve non en fin de séquence et non immédiatement suivie de l’une des trois dernières classes IG (A>>, A«, Λ]), alors il est identifié une partie de la séquence jouant le rôle d’une classe paramètre pour ladite classe fonction amont, ladite classe paramètre, contigu à ladite classe fonction amont, débute à la position suivant ladite classe fonction amont et dont la position de fin est identifiée en poursuivant sur les positions de la séquence à partir de la position de début de la classe paramètre et est :
    soit à la position précédant l'expression simple ou l'expression IG d'une classe fonction avale ou d’une classe fonction Dep, et de hiérarchie dominante sur ladite classe fonction amont, soit à la position précédent de T'une des trois dernières classes IG (A>>, Λ«, Λ]) sachant que s’il est rencontré la première classe réservée (Λ[) à une position, l'analyse reprend à la position suivant la quatrième classe réservée (Aj) correspondante à la première classe réservée (A[) rencontrée, soit en fin de séquence, lorsque la position de fin de la classe paramètre est ainsi déterminée, et si les positions de début et de fin de la classe paramètre sont différentes, il est inséré dans la séquence :
    la première classe réservée (A[) à la position précédent la classe fonction amont, la deuxième classe réservée (A>>) entre la fin de la classe fonction amont et le début de la classe paramètre, la quatrième classe réservée (Aj) à la fin de la classe paramètre, l'insertion de ces trois classes IG définissent dans la séquence une classe Généralisée amont,
    - si il s’agit d'une classe fonction avale, et ladite classe fonction avale si Non Dep se trouve en fin de la séquence ou immédiatement suivie de l’une des trois dernières classes IG (A>>, A«, Aj) et ladite fonction avale se trouve non au début de la séquence et non immédiatement précédée de l’une des trois premières classes IG (A[, A», A«) , alors il est identifié une partie de la séquence jouant le rôle d’une classe paramètre pour ladite classe fonction avale, ladite classe paramètre, contigu a ladite classe fonction avale, se termine à la position précédant ladite classe fonction avale et dont la position de début est identifiée en régressant sur les positions de la séquence à partir de la position de fin de la classe paramètre et est :
    soit à la position suivant l'expression simple ou expression IG d'une classe fonction amont ou d’une classe fonction Dep, et de hiérarchie dominante sur ladite classe fonction avale, soit à la position suivant l'une des trois premières classes IG (Λ[, Λ», Λ«) sachant que s’il est rencontré la quatrième classe réservée (Λ]) à une position, l'analyse reprend à la position précédent la première classe réservée (Λ[) correspondante à la quatrième classe réservée (Λ]) rencontrée, soit en début de séquence, lorsque la position du début de la classe paramètre est ainsi déterminée, et si les positions de début et de fin de la classe paramètre sont différentes, il est inséré dans la séquence :
    la première classe réservée (Λ[) immédiatement avant la classe paramètre, la troisième classe réservée (Λ«) entre la fin de la classe paramètre et le début de la classe fonction avale, la quatrième classe réservée (Λ]) à la fin de la classe fonction avale, l'insertion de ces trois classes IG définissent dans la séquence une classe Généralisée avale, l’étape b) de dichotomie autorise des classes Généralisées imbriquées,
    c) identification-création, dans laquelle toutes les classes fonctions et tous les classes paramètre non classes généralisées sont substituées dans la séquence par leur numéro de classe, et il est inséré immédiatement avant la première classe réservée (Λ[) de chacune des classes généralisées le numéro de classe de ladite classe généralisé, pour chaque classe généralisée contenue dans la séquence :
    si la classe fonction définie par son expression simple est inconnue alors ladite classe fonction est stockée dans la base de données avec au moins les deux informations suivantes : un nouveau numéro et son expression simple, si la classe paramètre définie par son expression simple est inconnue alors ladite classe paramètre est stockée dans la base de données avec au moins les deux informations suivantes : un nouveau numéro et son expression simple, si la classe Généralisée définie par son expression simple est inconnue alors ladite classe Généralisée est stockée dans la base de données avec les informations suivantes : un nouveau numéro, son expression simple, son expression classe et son sens, pour une partie de la séquence qui n’est pas une classe généralisée et est inconnue alors ladite partie séquence est stockée dans la base de données avec au moins les deux informations suivantes : un nouveau numéro et son expression simple, la séquence obtenue est appelée expression LIG de la séquence,
    d) exécution, où il est itéré de la première à la dernière des classes de la séquence et dans laquelle les classes IG sont ignorées, chaque classe exécutable est exécutée par une machine, la poursuite de l'itération reprenant en fin de ladite classe exécutable, une classe exécutable étant définie comme :
    une classe paramètre liée à la cinquième classe réservée (ΛΕΧΕ) dans une classe généralisée, une classe Généralisée dont la classe fonction est une classe exécutable, une classe Généralisée dont la classe fonction est une classe fonction ParDep d'une classe fonction Dep qui est une classe exécutable.
  2. 2. Procédé selon la revendication 1, dans lequel la mise à jour de la table des fonctions Dep à l’étape b) est déterminée selon les conditions suivantes :
    si une classe fonction amont s’applique à un premier nombre amont (N1am) correspondant au nombre de récurrence de ladite classe fonction amont des classes Généralisées amont de la base de données, et que ladite classe fonction amont s’applique à un deuxième nombre amont (N2am) correspondant au nombre de récurrence desdites classes Généralisées qui sont des classes fonctions avales, et dont ledit deuxième nombre amont (N2am) est au moins supérieur à la moitié du premier nombre (N1am), alors la classe fonction amont est une classe fonction Dep amont, si une classe fonction avale s’applique à un premier nombre aval (N1av) correspondant au nombre de récurrence de ladite classe fonction avale des classes Généralisées avale de la base de données, et que ladite classe fonction avale s’applique à un deuxième nombre aval (N2av) correspondant au nombre de récurrence desdites classes Généralisées qui sont des classes fonctions amont, et dont ledit deuxième nombre aval (N2av) est au moins supérieur à la moitié du premier nombre (N1av), alors la classe fonction avale est une classe fonction Dep avale.
  3. 3. Procédé selon la revendication 1, dans lequel à l’étape b) de dichotomie, le procédé comporte les éléments suivants : si une classe fonction amont est antérieure dans une séquence à une classe fonction avale, il est évalué le rapport hiérarchique entre la classe fonction amont et la classe fonction avale comme étant :
    si ladite classe fonction amont s'applique à un nombre amont (N12) correspond au nombre de récurrence de ladite classe fonction amont des classes Généralisées amont de la base de données dans lesquelles les classes paramètre sont des classes Généralisées avale dont la fonction est ladite classe fonction avale, et que ladite classe fonction avale s'applique à un nombre aval (N21) correspond au nombre de récurrence de ladite classe fonction avale des classes Généralisées avale de la base de données dans lesquelles les classes paramètre sont des classe Généralisées amont dont la fonction est ladite classe fonction amont, et que :
    si le nombre amont (N12) est supérieur au nombre aval (N21) alors ladite classe fonction amont est une hiérarchiquement dominante sur ladite classe fonction avale, si le nombre aval (N21) est supérieur au nombre amont (N12) alors ladite classe fonction avale est une hiérarchiquement dominante sur ladite classe fonction amont, sinon il n’y a pas de rapport hiérarchique entre ladite classe fonction amont et ladite classe fonction avale,
  4. 4. Procédé selon la revendication 3, dans lequel à l’étape b) de dichotomie, le procédé comporte les éléments suivants :
    il est défini également un rapport hiérarchique pour une liste de classe fonction amont et une liste de classe fonction avale, un nombre amont de liste (NL12) étant alors obtenu en cumulant les nombres amonts (N12) pour chacun des couples constitués d’une classe fonction amont appartenant à la liste de classe fonction amont et d’une classe fonction avale appartenant à la liste de la classe fonction avale, et le nombre aval de liste (NL21) étant alors obtenu en cumulant les nombres avals (N21) pour chacun des couples constitués d’une classe fonction amont appartenant à la liste de classe fonction amont et d’une classe fonction avale appartenant à la liste de la classe fonction avale, si ledit nombre amont de liste (NL12) est supérieur au nombre aval de liste (NL21), alors :
    ladite liste de classe fonction amont est une hiérarchiquement dominante sur ladite liste de classe fonction avale, si le nombre aval de liste (NL21) est supérieur au nombre amont de liste (NL12) alors ladite liste de classe fonction avale est une hiérarchiquement dominante sur ladite liste de classe fonction amont, sinon il n’y a pas de rapport hiérarchique entre ladite liste de classe fonction amont et ladite liste de classe fonction avale, si une classe fonction amont est antérieure dans une séquence à une classe fonction avale et qu'il n’y a pas de rapport hiérarchique directement entre ladite classe fonction amont et ladite classe fonction avale et que l'une ou les deux sont des classe fonctions ParDep, alors il est évalué le rapport hiérarchique de la liste des classes fonctions ParDep amont de la même classe fonction Dep avale de ladite classe fonction amont si celle ci est une classe fonction ParDep et de la liste des classes fonctions ParDep avales de la même classe fonction Dep amont de ladite classe fonction avale si celle ci est une classe fonction ParDep,
  5. 5. Procédé selon la revendication 4, dans lequel à l'étape b) si une classe fonction amont est antérieure dans une séquence à une classe fonction Dep également amont, il est évalué le rapport hiérarchique de la classe fonction amont et de la liste de toutes les classes fonctions ParDep avales de la classe fonction Dep amont, et dans lequel à l'étape b) il est rajouté s’il s’agit d'une fonction amont l'option suivante dans la détermination de la position de fin du paramètre de ladite fonction amont :
    soit à la position précédent l'expression simple d'une classe fonction Dep amont et de hiérarchie dominante sur ladite classe fonction amont, si une classe fonction avale est postérieure dans une séquence à une classe fonction Dep également avale, il est évalué le rapport hiérarchique de la classe fonction avale et de la liste de toutes les classes fonctions Pardep avales de la classe fonction Dep avale, et dans lequel à l'étape b) il est rajouté si il s’agit d'une fonction avale l'option suivante dans la détermination de la position de début du paramètre de ladite fonction avale :
    soit à la position suivant l'expression simple d'une classe fonction Dep avale et de hiérarchie dominante sur ladite classe fonction avale.
  6. 6. Procédé selon la revendication 1, dans lequel à l’étape c), si la classe généralisée est connue, il est mis à jour son expression classe et son sens.
  7. 7. Procédé selon la revendication 2, dans lequel le deuxième nombre amont (N2am) est au moins supérieur au deux tiers du premier nombre (N1am) et le deuxième nombre aval (N2av) est au moins supérieur au deux tiers du premier nombre (N1av).
  8. 8. Procédé selon la revendication 1, dans lequel à l'étape b) de dichotomie lors de la recherche de classes fonctions dans la séquence, ladite étape b) comporte en outre que si une classe fonction est trouvée dans la séquence et que l'expression IG de ladite classe fonction contient d'autres classes fonction alors ladite classe fonction est traitée en priorité sur lesdites autres classes fonction.
  9. 9. Procédé selon la revendication 1, dans lequel :
    dans l’étape a) de prétraitement, la base de données comporte également une sixième classe réservée (AEQV), ladite sixième classe réservée (AEQV) est une classe fonction avale et désigne toute classe fonction Dep comme fonction d'équivalence dès lors que ladite classe fonction Dep se trouve être paramètre dans une classe généralisée dont la fonction est la sixième classe réservée (AEQV), ainsi toute classe paramètre d'une classe généralisée dont la fonction est la classe fonction ParDep d'une classe fonction Dep et d'équivalence a pour classe équivalente la classe paramètre de la classe fonction Dep dans la classe généralisée fonction ParDep, dans l’étape d) d’exécution, s’il est rencontré dans la séquence une classe et que une classe généralisée est connue dont le paramètre est ladite classe et la fonction est une classe fonction ParDep d'une classe fonction Dep et d'équivalence, alors l'expression LIG de ladite classe est substituée dans la séquence par l'expression LIG de sa classe équivalente, l'itération reprenant au début de ladite classe, l'expression LIG de ladite classe équivalente débute par le numéro de ladite classe et est obtenue par itération en faisant suivre tous les numéros des classe généralisées de l'expression LIG de ladite classe par le numéro de la première classe IG, puis du numéro de la première classe de l'expression classe de la classe généralisée, puis du numéro de la deuxième classe IG si la classe est une classe généralisée amont ou du numéro de la troisième classe IG si la classe est une classe généralisée avale, puis du numéro de la deuxième classe de l'expression classe de la classe généralisée, puis du numéro de la quatrième classe IG.
  10. 10. Procédé selon la revendication 5 dans lequel à l’étape b) de dichotomie s’il n’y a pas de rapport hiérarchique entre deux classes fonctions, il est recherché pour chacune des deux classe fonctions la liste des classes
    5 fonctions apparentées dans la base de données puis il est comparé la récurrence de chaque classe fonction pour évaluer la hiérarchie entre ces deux listes, la liste des classes apparentées a une classe étant définie comme la liste des classes qui sont une classe paramètre dans des classes généralisées et dont les classes fonctions s’appliquent également à ladite classe dans une îo classe généralisée.
  11. 11. Procédé selon la revendication 1, dans lequel à l'étape a) de prétraitement si il est rencontré le marqueur des classes réservées (Λ) suivi d'un numéro, alors cette expression (A+numéro) est substituée dans la
  12. 15 séquence par le numéro de la classe de même numéro.
FR1850996A 2018-02-07 2018-02-07 Procede de transformation d’une sequence pour la rendre executable par une machine Withdrawn FR3077656A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR1850996A FR3077656A1 (fr) 2018-02-07 2018-02-07 Procede de transformation d’une sequence pour la rendre executable par une machine
US16/268,247 US11009845B2 (en) 2018-02-07 2019-02-05 Method for transforming a sequence to make it executable to control a machine
EP19710040.7A EP3750051A1 (fr) 2018-02-07 2019-02-07 Procédé de transformation d'une séquence pour la rendre exécutable par une machine
PCT/FR2019/050272 WO2019155168A1 (fr) 2018-02-07 2019-02-07 Procédé de transformation d'une séquence pour la rendre exécutable par une machine

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1850996A FR3077656A1 (fr) 2018-02-07 2018-02-07 Procede de transformation d’une sequence pour la rendre executable par une machine
FR1850996 2018-02-07

Publications (1)

Publication Number Publication Date
FR3077656A1 true FR3077656A1 (fr) 2019-08-09

Family

ID=62749079

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1850996A Withdrawn FR3077656A1 (fr) 2018-02-07 2018-02-07 Procede de transformation d’une sequence pour la rendre executable par une machine

Country Status (4)

Country Link
US (1) US11009845B2 (fr)
EP (1) EP3750051A1 (fr)
FR (1) FR3077656A1 (fr)
WO (1) WO2019155168A1 (fr)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000023889A1 (fr) * 1998-10-16 2000-04-27 Klein Peter A Procede et systeme de compilation de code de source contenant des ressources en langage naturel
US20050283467A1 (en) * 2004-06-17 2005-12-22 Ixi Mobile (R&D) Ltd. Natural language for programming a specialized computing system
US20170239576A1 (en) * 2016-02-24 2017-08-24 Virginia Tech Intellectual Properties, Inc. Automated program synthesis from natural language for domain specific computing applications

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4499553A (en) * 1981-09-30 1985-02-12 Dickinson Robert V Locating digital coded words which are both acceptable misspellings and acceptable inflections of digital coded query words
US6108666A (en) * 1997-06-12 2000-08-22 International Business Machines Corporation Method and apparatus for pattern discovery in 1-dimensional event streams
US6125342A (en) * 1997-11-18 2000-09-26 L & H Applications Usa, Inc. Pronoun semantic analysis system and method
JP3004254B2 (ja) * 1998-06-12 2000-01-31 株式会社エイ・ティ・アール音声翻訳通信研究所 統計的シーケンスモデル生成装置、統計的言語モデル生成装置及び音声認識装置
US6243670B1 (en) 1998-09-02 2001-06-05 Nippon Telegraph And Telephone Corporation Method, apparatus, and computer readable medium for performing semantic analysis and generating a semantic structure having linked frames
US7085708B2 (en) * 2000-09-23 2006-08-01 Ravenflow, Inc. Computer system with natural language to machine language translator
WO2006093003A1 (fr) * 2005-02-28 2006-09-08 Pioneer Corporation Dispositif de generation de donnees de dictionnaire et dispositif electronique
US9846739B2 (en) * 2006-10-23 2017-12-19 Fotonation Limited Fast database matching
US7809765B2 (en) * 2007-08-24 2010-10-05 General Electric Company Sequence identification and analysis
US8077984B2 (en) * 2008-01-04 2011-12-13 Xerox Corporation Method for computing similarity between text spans using factored word sequence kernels
JP5391583B2 (ja) * 2008-05-29 2014-01-15 富士通株式会社 検索装置、生成装置、プログラム、検索方法および生成方法
JP4701292B2 (ja) * 2009-01-05 2011-06-15 インターナショナル・ビジネス・マシーンズ・コーポレーション テキスト・データに含まれる固有表現又は専門用語から用語辞書を作成するためのコンピュータ・システム、並びにその方法及びコンピュータ・プログラム
ITRM20130022A1 (it) * 2013-01-11 2014-07-12 Natural Intelligent Technologies S R L Procedimento e apparato di riconoscimento di scrittura a mano

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000023889A1 (fr) * 1998-10-16 2000-04-27 Klein Peter A Procede et systeme de compilation de code de source contenant des ressources en langage naturel
US20050283467A1 (en) * 2004-06-17 2005-12-22 Ixi Mobile (R&D) Ltd. Natural language for programming a specialized computing system
EP1769332A2 (fr) * 2004-06-17 2007-04-04 Ixi Mobile (R&D) Ltd. Langage naturel pour programmer un systeme informatique specialise
US20170239576A1 (en) * 2016-02-24 2017-08-24 Virginia Tech Intellectual Properties, Inc. Automated program synthesis from natural language for domain specific computing applications

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Translating Natural Language to Code", 1 April 2013 (2013-04-01), XP002786153, Retrieved from the Internet <URL:https://www.transifex.com/blog/2013/translate-natural-language-to-code/> [retrieved on 20181030] *

Also Published As

Publication number Publication date
US20190243324A1 (en) 2019-08-08
EP3750051A1 (fr) 2020-12-16
US11009845B2 (en) 2021-05-18
WO2019155168A1 (fr) 2019-08-15

Similar Documents

Publication Publication Date Title
EP1364316A2 (fr) Dispositif d&#39;extraction d&#39;informations d&#39;un texte a base de connaissances
EP1836651B1 (fr) Procédé de recherche, reconnaissance et localisation d&#39;un terme dans l&#39;encre, dispositif, programme d&#39;ordinateur correspondants
FR2982388A1 (fr) Systeme et procede pour la generation productive de mots composes dans une traduction automatique statistique
EP1977343A1 (fr) Procede et dispositif pour extraire des informations et les transformer en donnees qualitatives d&#39;un document textuel
BE1008621A3 (fr) Procedure et procede de communication entre machines et procede generalise de preparation de programmes afferents.
FR3043816B1 (fr) Procede de suggestion de contenus extraits d’un ensemble de sources d’information
FR2876815A1 (fr) Analyse critique de l&#39;ordre des pronoms clitiques en francais
CN115688753A (zh) 中文预训练语言模型的知识注入方法和交互系统
WO2006040473A2 (fr) Dispositif de traitement de donnees a definition formelle
EP2126735B1 (fr) Procédé de traduction automatique
FR3017474A1 (fr) Saisie assistee de regles dans une base de connaissance
FR3031823A1 (fr) Lemmatisateur semantique base sur des dictionnaires ontologiques.
FR3077656A1 (fr) Procede de transformation d’une sequence pour la rendre executable par une machine
WO2014173882A1 (fr) Procédé et dispositif d&#39;extraction automatique de thèmes à partir d&#39;au moins un document contenant du texte
FR2913274A1 (fr) Procede et dispositif de codage de document et procede et dispositif de decodage de document.
FR2880708A1 (fr) Procede de recherche dans l&#39;encre par conversion dynamique de requete.
EP3114597A1 (fr) Procédé d&#39;analyse d&#39;une pluralité de messages, produit programme d&#39;ordinateur et dispositif associés
FR2939538A1 (fr) Procede de recherche de correspondances entres differentes sources de donnees.
WO2020079109A1 (fr) Dispositif de traitement automatique de texte par ordinateur
FR3110740A1 (fr) Procédé de conversion automatique de fichiers numériques
FR2889330A1 (fr) Procede et systeme de codage et de representation synthetique d&#39;une ontologie partiellement saturee, structure de donnees, et serveur de structure de donnees correspondants
EP3079076A1 (fr) Procédé de détermination d&#39;un gap sémantique, dispositif et programme correspondant
FR2821972A1 (fr) Procede pour permettre un dialogue homme-machine
EP2738693A1 (fr) Procédé d&#39;enregistrement de données hiérarchisées
FR2865296A1 (fr) Procede d&#39;exploitation d&#39;un systeme de traitement d&#39;informat ion comprenant une base de donnees et systeme correspondant

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

ST Notification of lapse

Effective date: 20191006

RN Application for restoration

Effective date: 20191024

FC Decision of inpi director general to approve request for restoration

Effective date: 20191114

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7