WO2000039672A2 - Modele et procede d'implementation d'un agent rationnel dialogant, serveur et systeme multi-agent pour la mise en oeuvre - Google Patents

Modele et procede d'implementation d'un agent rationnel dialogant, serveur et systeme multi-agent pour la mise en oeuvre Download PDF

Info

Publication number
WO2000039672A2
WO2000039672A2 PCT/FR1999/003242 FR9903242W WO0039672A2 WO 2000039672 A2 WO2000039672 A2 WO 2000039672A2 FR 9903242 W FR9903242 W FR 9903242W WO 0039672 A2 WO0039672 A2 WO 0039672A2
Authority
WO
WIPO (PCT)
Prior art keywords
agent
rational
formal
implementing
architecture
Prior art date
Application number
PCT/FR1999/003242
Other languages
English (en)
Other versions
WO2000039672A3 (fr
Inventor
David Sadek
Philippe Bretier
Franck Panaget
Original Assignee
France Telecom
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 France Telecom filed Critical France Telecom
Priority to IL14381299A priority Critical patent/IL143812A0/xx
Priority to EP99961137A priority patent/EP1141823A2/fr
Priority to BR9916421-3A priority patent/BR9916421A/pt
Priority to AU17851/00A priority patent/AU773217B2/en
Priority to US09/869,205 priority patent/US7376632B1/en
Priority to CA002356384A priority patent/CA2356384A1/fr
Priority to JP2000591502A priority patent/JP2002533827A/ja
Publication of WO2000039672A2 publication Critical patent/WO2000039672A2/fr
Publication of WO2000039672A3 publication Critical patent/WO2000039672A3/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/043Distributed expert systems; Blackboards

Definitions

  • the invention relates to a model and a method of one implementation of a rational dialog agent as the core of a dialog system or a multi-agent system.
  • the invention applies to human-agent interaction systems (human-machine dialogue) but also to agent-agent interaction systems (inter-agent communication and cooperation).
  • plan-oriented approaches consider an intervention in a communication situation not only as a collection of signs (for example a sequence of words) but as the observable realization of communicative actions (also called depending on the context, acts of language or dialogue) such as informing, asking, confirming, engaging.
  • the depositor has developed a new approach based on rational interaction or rational agent dialoguing.
  • the depositor first sought to maximize the user-friendliness of the interactions between users and automatic services.
  • Sadek 91a Sadek M.D. Mental attitudes and rational interaction: towards a formal theory of communication. PhD in Computer Science, University of Rennes I, France, 1991.
  • Sadek 91b D. Sadek Dialogue acts are rational plans. Proceedings ESCA tutorial and Research Workshop on the Structure of Multimodal Dialogue, Maratea, Italy, 1991.
  • Sadek 92 Sadek M.D. A study in the logic of intention. Proceedings of the 3rd Conference on Principles of Knowledge Representation and Reasoning (KR'92), pages 462-473, Cambridge, MA, 1992. Sadek 93: Sadek M.D. Foundations of dialogue: rational interaction. Proceedings of the 4th summer school on Natural Language Treatments, pages 229-255, Lannion, France, 1993.
  • Sadek 94a Sadek M.D. Mental attitudes and foundation of cooperative behavior. Pavard, B., editor, Cooperative systems: from modeling to design, Octares Eds. , pages 93-117, 1994.
  • Sadek 94c Sadek MD Towards a theory of belief reconstruction: application to communication. In (SPECOM94): 251-263.
  • Sadek et al 94 Sadek MD, Ferrieux A., & Cozannet A. Towards an artificial agent as the kernel of a spoken dialogue system: A progress report. Proceedings of the AAI'94 Workshop on Integration of Natural Language and Speech Processing, Seattle, WA, 1994.
  • Sadek et al 95 D. Sadek, P. Bretier, V. Cadoret, A. Cozannet, P. Dupont, A. Ferrieux, & F. Panaget: A cooperative spoken dialogue system based on a rational agent model: A first implementation on the AGS application. Proceedings of the ESCA tutorial and Research Workshop on Spoken Dialogue Systems, Hanstholm, Denmark, 1995.
  • Sadek et al 96a Sadek M.D., Ferrieux A., Cozannet
  • Sadek et al 91 M.D. Sadek, P. Bretier, & F.
  • Bretier 95 P. Bretier. Cooperative oral communication: contribution to logical modeling and to the implementation of a rational agent dialoguing.
  • the user-friendliness of the interaction manifests itself among other things by the system's ability to negotiate with the user, by his capacity to interpret requests by taking into account the context, by his capacity to determine the implied intentions of the user and to carry out with him a flexible interaction which does not follow a preconceived plan once for all.
  • the technology developed by the depositor is based on the basic principle which is that: for an automatic system to be able to carry out intelligent dialogues, this system cannot be simulated by an automaton.
  • the object of the present invention is the production of a software agent which by its construction is rational.
  • the addition of appropriate principles also makes it communicative and cooperative.
  • the technology developed by the applicant allows the implementation of a rational agent dialoguing as well as the core of a dialogue system as well as the agent of a multi-agent system.
  • communication between such agents is no longer done using natural language but a formal (logical) language adapted to the interaction capacities of said agents.
  • the invention relates more particularly to a model and a method for implementing a rational agent dialoguing as the core of a dialogue system or a multi-agent system.
  • the method of implementing a rational agent dialoguing as the core of a dialogue system and / or as an element (agent) of a multi-agent system comprises the following steps: - definition of an architecture concept of a rational agent dialoguing,
  • the definition of the implementation mechanisms is carried out so as to obtain a direct correspondence between these mechanisms and said model.
  • the formal specification of the different components of formal architecture and their combination includes a level of axioms of rationality, a level of axioms of communication, a level of axioms of cooperation.
  • the definition of the software architecture implementing the formal architecture comprises: a rational unit comprising an implementation layer of the level of rationality axioms, a layer of implementation of the level of communication axioms, a layer of implementation of the level of cooperation axioms, corresponding respectively to the axioms of the formal model.
  • the definition of the software architecture implementing the formal architecture also includes:
  • the rational unit, the generation module and the understanding module implement mechanisms for implementing the formal model.
  • the generation module is able to transcribe a logical statement produced by the rational unit in natural language for the use of the system.
  • the comprehension module is able to interpret a statement of the user into an understandable logical statement of the rational unit.
  • the subject of the invention is also a rational agent dialoguing as the core of a dialogue system and / or as an element (agent) of a multi-agent system, comprising: - a definition of a conceptual architecture, a formal specification of different components of this architecture and their combination to obtain a formal model, mainly characterized in that it comprises: - a definition of a software architecture implementing the formal architecture,
  • the data comprise data for the implementation of a formal model comprising: - a layer of implementation of rationality axioms, a layer of 1 implementation of communication axioms, a layer of implementation of axioms of cooperation, corresponding respectively to the axioms of the formal model.
  • the agent further comprises: a module for generating a statement in natural language from a logical statement resulting from the rational unit and a module for understanding to supply a statement in logical language to the rational unit from a statement in natural language, these modules thus implementing a communication level layer in natural language.
  • the invention also relates to an information server, comprising means for implementing a human-machine dialogue system, the core of which is based on the implementation of a rational dialoging agent as defined above.
  • the invention also relates to a multi-agent system comprising communicating agents, each agent comprising means for implementing an interaction, the system comprising at least one agent, the core of which is based on the implementation of a rational agent interacting as described above.
  • FIG. 1 represents the software architecture of a rational agent interacting
  • FIG. 3 represents in more detail the software architecture of a dialoging agent as the core of a dialogue system (in particular oral)
  • - Figure 4 shows an architecture showing a rational agent dialoguing as the core of a multi-agent system.
  • the depositor has implemented these principles by means of a rational unit 100 which constitutes the core of each agent and which determines his reactions to external events, whether these are solicitations (requests, responses, confirmations etc) of human users or requests from other software agents (this is the case when an agent is the core of a multi-agent system).
  • the rational unit 100 is animated by an inference engine which automates reasoning according to the principles of rational interaction which the agent's programmer can adapt or enrich, in a declarative manner, according to the task to be accomplished. To this end, as will be explained below, these reasonings are guided by predetermined axiom diagrams (listed in appendices) and entered into the unit by the agent's programmer declaratively according to the task. to be completed by said agent.
  • FIG. 1 illustrates the diagram of a software architecture of an agent in the case where such an architecture is applied to the constitution of a system of dialogue with users.
  • FIG. 1 therefore represents the architecture of an agent interacting with a user, through, as will be seen, an understanding module 150 and a generation module 160.
  • This architecture corresponds to a first possible family of applications which is (user-friendly) user-service interaction.
  • the rational unit 100 is connected to an outside interface 140.
  • This interface therefore includes the comprehension module 150 which receives statements in natural language and interprets these statements in a logical statement which serves as an input to the rational unit 100.
  • the interface also includes the generation module 160 which expresses the reaction of the rational unit 100 into a natural language statement for the user.
  • the rational unit 100 is the central service entity to provide either information (train times, stock market prices, weather forecasts, etc.), reservations or purchases, or even the search for information from the Internet.
  • the principles of cooperation established in the rational unit and the natural language processing modules ensure user-friendly interaction with the user. This interaction can be carried out directly by speech by integrating into the dialogue system thus formed speech recognition and synthesis modules (not shown in this figure).
  • the rational unit 100 can alone constitute the core of an autonomous software agent.
  • this unit interacts with other software agents by means of a communication language between agents such as "Agent Communication Language" (A. CL. Adopted as standard by the FIPA consortium).
  • Agent Communication Language A. CL. Adopted as standard by the FIPA consortium.
  • the services which the agent can render are then for example transactions on electronic markets, tasks of administration of networks, diffusion of information.
  • the rational unit 100 implements principles from the theory of rational interaction whose objective is to formalize and automate the rational behavior of an agent when interacting with other agents. or service users.
  • This theory is based on two main notions: the notion of modal logic on the one hand, the objective of which is to allow the mental attitudes of autonomous agents to be represented and, the notion of speech acts on the other, whose objective is to specify the effects of communication on the mental attitudes of agents.
  • the state of an agent at a given moment in a communicating exchange is thus characterized by a set of mental attitudes.
  • the mental attitudes that can be represented are for example the belief usually noted by the operator K and the intention noted by the operator I.
  • Ks designates the belief operator for the system and Ku this same operator for the user.
  • Modeling consists of a logical statement or logical language, for example:
  • the computation of these reactions is carried out by the inference engine 101.
  • the rational unit 100 therefore comprises a data set 102 which includes the axioms of the formal model of the dialoguing rational agent. These data implement the layers of rationality of communication and cooperation of the agent.
  • Environmental requests for example user requests, or those of other software agents are transmitted to the rational unit 100 in the form of a logical statement ACL of the theory of rational interaction.
  • the inference engine 101 is capable of calculating the consequences of this statement and in particular the possible responses or requests for clarifications to be provided to the interlocutor (whether it is an agent software or a human user) but also other non-communicative actions.
  • the inference engine 101 examines whether it does not have a behavioral principle which can be applied to this statement to deduce the logical consequence or consequences. This procedure is then applied to these new consequences until the possibilities are exhausted.
  • the inference engine 101 isolates the communication or other actions which it must perform and which then form the reaction of the rational agent.
  • the first step of the inference procedure is to put the processed statements into normal form in order to ensure that each statement is presented only in a single given syntactic form in order to be able to sort and compare the statements.
  • the inference procedure then consists, for each statement processed, in verifying whether this statement corresponds to one of the schemes of axioms 102 which code the principles of rational behavior adopted.
  • the mechanism of this verification is mainly based on the Prolog language unification operation.
  • axiom diagrams can be modified by the programmer of the rational unit 101 who can remove or add axiom diagrams or modify those already existing to refine the behavior of the rational unit. These changes can be made dynamically. In this case, the rational unit changes its behavior progressively.
  • the reasoning of the rational unit is based on a set of data which strongly depend on the application sought for the rational agent.
  • the semantic network 120 makes it possible to express notions of classes and subclasses, and of instance of each class. It also defines the notion of relationship between classes which applies to the different instances of the classes.
  • the semantic network 120 will include at least the classes "person” (whose instances will be the set of people known in the agenda) and "function" (whose instances will be known functions ).
  • the semantic network includes the fact Prolog: the -function- of (John, Advertising).
  • Access to the semantic network 120 is made at any time during the inference procedure when the consequences of the inference depend on the nature of the data.
  • the response of the rational agent will depend on his interrogation of the semantic network 120.
  • the semantic network 120 can also have notions of semantic proximity which are partially useful for producing cooperative reactions of the rational agent.
  • the advertising function will probably be determined as semantically closer to the marketing engineer function than to the garage owner.
  • relaxation or relaxation
  • constraint restriction This construction allows two symmetrical operations called relaxation (or relaxation) and constraint restriction.
  • relaxation or relaxation
  • constraint restriction aims to give close responses to requests close to the initial request when the response to the latter does not exist.
  • the inference procedure can trigger a relaxation step to be able to give the contact details of advertisers.
  • the restriction seeks to seek how to specify a request that is too broad. If there are 500 advertisers registered in the agenda, a restriction step will give the most discriminating dimension of this too large set (for example the company or the advertiser works) in order to be able to ask a relevant question to identify the user's request.
  • FIG. 2 also makes it possible to illustrate that the rational unit 100 of a rational agent comprises a generic part independent of the application and a part dependent on the application.
  • the diagram in FIG. 3 illustrates in more detail the software architecture of an agent according to the invention.
  • the natural language comprehension module 150 interprets a statement of the user into a logical statement understandable by the rational unit 100.
  • the vocabulary covered by this module depends in part on the service that the rational agent must provide. This application-dependent part is mainly present in the semantic network 120 of the rational unit, which explains why the understanding module 150 uses a lot of data coming from the semantic network 120.
  • the comprehension module 150 is able to take into account the utterance of the user as a series of small syntactic structures (most often words) which will each activate one (or more in the case of synonyms) notion (s) resulting (s) of the semantic network 120.
  • the link between the user's input vocabulary and the semantic network 120 is therefore made by means of a concept activation table 131 which indicates which semantic notion (s) corresponds to the words ( or series of words) of vocabulary.
  • the understanding module therefore has a list of activated concepts (or even several in the case of synonyms). It is able to transform them into a logical statement formed by a semantic completion process. This process starts from the assumption of semantic connexity of the statement of the user, that is to say that the concepts which he evoked are in relation to each other.
  • the module 150 is able to link together, through relationships present in the semantic network, including by creating new concepts if necessary. The process determines the concepts implied in the user's statement.
  • the semantic completion calls for a weighting function 132 which makes it possible to fix a numerical weight for each relation of the semantic network, representing the likelihood of the vocations of this relation.
  • the completion process takes into account a notion of likelihood when it has to determine which concepts are implied by the user.
  • These weights also allow a cost to be associated with each possible interpretation in the case of a synonym. Thus, only one statement will ultimately be retained by the comprehension module, the one with the lowest cost.
  • the understanding module 150 must take into account the context of the user's statement. For this, it has the concepts previously mentioned both by the user and by the agent himself in his responses to the user. Some of these can therefore be used during the completion process.
  • the comprehension module 150 does not use a syntactic or grammatical analyzer. This allows him to correctly interpret syntactically incorrect statements, which is particularly important in the context of oral dialogue (and the use of voice recognition), the syntax of spontaneous speech being looser,.
  • the semantic data of the network indeed represent universal notions. This point particularly facilitates the transfer of an application from one language to another language.
  • the generation module 160 accomplishes the reverse task of the understanding module. It is able to transcribe a sequence of communicative acts produced by the rational unit 100 into a statement of the natural language of the user.
  • the generation process operates in two phases.
  • the first phase consists in making all the decisions as to the linguistic choice which is offered to verbalize the sequence of communicative acts provided at the input of the module.
  • the generator 160 uses, among other things, elements from the context of the dialogue to construct the statement most suited to the current situation.
  • the module 160 will have to make a choice between equivalent formulations such as "John's telephone number is” or “John's number is” or “his number is”, “it is the ... "depending on the context of the dialogue.
  • the objective of this first phase is to construct an intermediate representation of the utterance using a notion of abstract linguistic resources 133.
  • An abstract linguistic resource represents either a lexical resource 135, for example common nouns, verbs, adjectives, or a grammatical resource, ie the syntactic structure.
  • the second phase uses this abstract representation to construct the final statement.
  • the comprehension modules 150 and generation 160 use written texts as input format and respectively output format.
  • the recognition module 170 records a voice signal from the user in a text corresponding to the spoken utterance. This module 170 is for example essential when a rational agent is used as a telephone server: the only possible interaction is then vocal.
  • this agent can communicate with other software agents, for example across the network.
  • ACL communication primitives defined by the theory of rational interaction constitute a language of communication between agents which allow them to perform unambiguous interactions.
  • the agents trained by a rational unit 100 and their semantic network 120 without the interaction components in natural language are particularly well suited to the use of the ACL communication language between software agents to form multi-system agent as shown in Figure 4.
  • the invention has been implemented with a SUN Ultral station (provided with a 166 megahertz processor) and on a SUN Ultra2 station (having two 64-bit processors and a frequency of 300 megahertz).
  • a random access memory is used, the size of which can be around 32 egabytes minimum.
  • the maximum system response time is 2 seconds on the Ultra2 platform and 5 seconds on Ultral.
  • Connection can be made to a digital network using an ISDN-Basic Rate Interface service integrated digital network card.
  • the three modules that have been described, comprehension 150, generation 160 and rational unit 100 have been implemented in Prolog (Quintus version 3.3 for Solaris 2.5). Communication between the various modules and the speech recognition and synthesis systems is carried out by a program written in C language, a prototype of the invention has been developed under Solaris, but a version not including the recognition and speech synthesis was brought under WINDOWS NT 4.0.
  • the mental attitudes considered as semantically primitive, namely belief, uncertainty and choice (or preference) are formalized respectively by the modal operators K, U, and C.
  • Formulas such as K ( ⁇ , p), U (i, p), and C (i, p) can be read respectively "i believe (or think) p (is true)", "i is uncertain of (the truth of) p” and "i want p is currently true.
  • the logical model adopted for the operator K accounts for properties of interest to a rational agent, such as the consistency of his beliefs or his capacity for introspection, formally characterized by the validity of logical schemes such as
  • the logic model also guarantees the validity of desirable properties such as, for example, the fact that an agent cannot be uncertain of his own mental attitudes (
  • -. T7 (i, M ( i, ⁇ ), M belonging to (K, sK, C, -sC, U, -> ⁇ etc ⁇ ).
  • the logical model for the choice entails properties such as the fact that an agent "assumes" the logical consequences of his choices or that an agent cannot not choose the courses of events in which he thinks he is already there
  • attitude of intention which is not semantically primitive, is formalized by the operator I which is defined (in a complex way) from the operators C and K.
  • a formula such as I (i, p) can be read "i intend to make p”.
  • the schematic variables ⁇ , - ⁇ ⁇ 2 • • •, are used to denote expressions of
  • the operators Feasible, Done and Agent (i,) are also introduced, such as the formulas Feasible ( ⁇ p), Done (p) and Agent (i,) respectively mean that (action or expression of action) ⁇ can take place after which p will be true, ⁇ has just taken place before which p was true, and i denotes the sole agent of the events appearing in ⁇ .
  • the second principle stipulates that an agent who intends to take a given action necessarily adopts the intention that this action is doable, if he does not think that it is already done: this is expressed formally by the validity of the following scheme:
  • avoiding redundancy is a component of cooperative behavior, which can be expressed as follows, in terms of elementary property (which, in reality, is not primitive but derives directly from the very definition of the concept of intention ): if an agent intends to let an agent know about a proposition p, then i must think that j does not already know it. This is formally reflected in the validity of the following scheme:
  • a corrective response is generated with the intention of correcting a belief of the interlocutor, judged to be erroneous.
  • This belief generally constitutes an inferred presupposition (by implicature (Grice 75;) from the recognized communicative act.
  • the intention in question is generated in an agent each time his belief about a proposition which in no one believes not its competent interlocutor, is in contradiction with that of its interlocutor. This translates formally by the validity of the following diagram:
  • the first part of this property stipulates that at the end of a phenomenon that an agent perceives and to which either he cannot associate an intelligible event, or any event that he can associate with him is unacceptable in light of his beliefs, the agent will adopt the intention of knowing what has been achieved, typically by generating a request for repetition.
  • the second part of this property concerns only the case where the agent cannot, in accordance with his mental state, accept any event achievable by what he has observed; in this case, the agent will adopt the intention of letting the author of the event know his disapproval of what he has "understood", which, in terms of language statements, may be manifested, for example, by the statement of what prohibits the officer from admitting the act in question.
  • the two parts of this property are expressed by the validity of the following two schemes, the predicates Observe (i, o) and Réalise (o, e) meaning respectively that the agent i has just observed the observable entity o (such as a statement, for example), and that the observable entity o is a way of realizing the event e:
  • T 1 can be:

Abstract

L'invention concerne un modèle et procédé d'implémentation d'un agent rationnel dialogant comme noyau d'un système de dialogue et/ou comme élément (agent) d'un système multi-agent comportant les étapes suivantes: définition d'une architecture conceptuelle d'un agent rationnel dialogant; spécification formelle des différents composants de cette architecture et de leur combinaison permettant d'obtenir un modèle formel; définition de l'architecture logicielle implémentant l'architecture formelle; définition des mécanismes de mise en oeuvre des spécifications formelles, l'agent rationnel étant apte ainsi à dialoguer avec un autre agent ou avec un utilisateur du système à travers un quelconque média de communication.

Description

MODELE ET PROCEDE D ' IMPLEMENTATION D'UN AGENT RATIONNEL DIALOGUANT, SERVEUR ET SYSTEME MULTI-AGENT POUR LA MISE
EN OEUVRE.
L'invention concerne un modèle et un procédé d1 implémentation d'un agent rationnel dialoguant comme noyau d'un système de dialogue ou d'un système multi- agent . L'invention s'applique aux systèmes d'interaction humain-agent (dialogue homme-machine) mais également aux systèmes d'interaction agent-agent (communication et coopération inter-agent) .
Elle s'applique à des serveurs d'information. Bien que la conception de systèmes de dialogue homme-machine soit étudiée sérieusement depuis plus d'une trentaine d'année, peu de systèmes préfigurant un usage réel sont aujourd'hui disponibles.
La plupart des démonstrateurs qui ont été développés montrent au mieux la capacité d'un système à enchaîner quelques échanges simples avec un utilisateur dans une structure stéréotypée (moulée à celle d'une tâche particulière) et un cadre d'application restreint. Ces systèmes se limitent généralement à illustrer telle ou telle caractéristique d'une interaction évoluée comme par exemple, la compréhension par la machine d'énoncés plus ou moins complexes (contextuels en langage naturel oral ou écrit éventuellement combinés à d'autres média de communication) ou dans certains cas assez limités à la production de réponses coopératives .
Ces systèmes sont encore assez loin de remplir toutes les conditions requises pour un usage naturel desdits systèmes comme des "partenaires" dialoguants conviviaux même dans des cadres applicatifs bien banalisés .
Les raisons de cette situation sont de deux ordres. D'une part la conception de systèmes de dialogue est une entreprise complexe car elle cumule les problèmes relatifs à la conception de systèmes artificiels intelligents et ceux relatifs à la modélisation et à la formalisation de la communication naturelle. Lorsque l'on s'intéresse au dialogue oral, les problèmes liés à la reconnaissance automatique de la parole accroissent cette difficulté.
D'autre part, beaucoup de travaux ont abordé le dialogue comme un phénomène isolé dont il s'agissait d'identifier les manifestations externes afin de les inculquer en tant que telles à un système automatique. Ces travaux ont (délibérément ou non) fait totalement (ou partiellement) l'économie du lien entre le problème du dialogue et celui de l'intelligence du système et donc d'une étude formelle approfondie des fondements cognitifs du dialogue.
On va maintenant rappeler brièvement les approches classiques du dialogue qui ont été développées jusqu'à présent.
Il y a d'abord les approches structurelles qu'elles soient à vocation informatique ou à vocation linguistique. Elles s'intéressent à la détermination a priori d'une structure de l'interaction qui rend compte des régularités des échanges dans un dialogue (dont les plus simples sont les paires adjacentes telles que les questions-réponses, les suggestions-acceptations) .
Ces approches font l'hypothèse que cette structure existe et qu'elle est représentable de façon finie et que tous les dialogues ou du moins une large part d'entre-eux peuvent y être circonscrits. Les approches structurelles considèrent que la cohérence d'un dialogue est intrinsèque à sa structure et se concentre ainsi sur le co-texte (le texte qui accompagne) en faisant plus ou moins directement l'impasse sur le caractère profondément contextuel de la communication. Ces limitations sont sans appel pour ce qui est de l'intérêt des approches structurelles comme base pour des modèles de l'interaction intelligente.
On a également les approches différentielles classiques.
Ces approches dites aussi orientées plan considèrent une intervention en situation de communication non pas seulement comme une collection de signes (par exemple une séquence de mots) mais comme la réalisation observable d'actions communicatives (appelées aussi selon le contexte, actes de langage ou de dialogue) telles que informer, demander, confirmer, s ' engager.
Ces approches ont laissé entrevoir un formidable potentiel pour l'étude de la communication et en particulier du dialogue coopératif. Toutefois, elles empruntent des raccourcis (qui les conduisent à faire appel à des compléments empiriques ou structurels qui les fragilisent) et à des représentations d'utilisation des connaissances qui hélas les conduisent souvent à des aberrations.
Le déposant a développé une nouvelle approche reposant sur l'interaction rationnelle ou agent rationnel dialoguant. Dans cette nouvelle approche, le déposant a cherché d'abord à rendre maximale la convivialité des interactions entre des utilisateurs et des services automatiques . On pourra se reporter aux publications suivantes faites sur le sujet:
Sadek 91a : Sadek M.D. Attitudes mentales et interaction rationnelle: vers une théorie formelle de la communication. Thèse de Doctorat Informatique, Université de Rennes I, France, 1991.
Sadek 91b : D. Sadek Dialogue acts are rational plans. Proceedings ESCA Tutorial and Research Workshop on the Structure of Multimodal Dialogue, Maratea, Italy, 1991.
Sadek 92 : Sadek M.D. A study in the logic of intention. Proceedings of the 3rd Conférence on Principles of Knowledge Représentation and Reasoning (KR'92), pages 462-473, Cambridge, MA, 1992. Sadek 93 : Sadek M.D. Fondements du dialogue: l'interaction rationnelle. Actes de la 4ème école d'été sur les Traitements des langues naturelles, pages 229- 255, Lannion, France, 1993.
Sadek 94a : Sadek M.D. Attitudes mentales et fondement du comportement coopératif. Pavard, B., editor, Systèmes coopératifs: de la modélisation à la conception, Octares Eds . , pages 93-117, 1994.
Sadek 94b: Sadek M.D. Communication theory = rationality principles + communicative act models. Proceedings of the AAI'94 Workshop on Planning for Interagent Communication, Seattle, WA, 1994.
Sadek 94c : Sadek M.D. Towards a theory of belief reconstruction: application to communication. In (SPECOM94) : 251-263. Sadek et al 94 : Sadek M.D., Ferrieux A., & Cozannet A. Towards an artificial agent as the kernel of a spoken dialogue system: A progress report. Proceedings of the AAI'94 Workshop on Intégration of Natural Language and Speech Processing, Seattle, WA, 1994. Sadek et al 95 : D. Sadek, P. Bretier, V. Cadoret, A. Cozannet, P. Dupont, A. Ferrieux, & F. Panaget : A coopérative spoken dialogue system based on a rational agent model : A first implementation on the AGS application. Proceedings of the ESCA Tutorial and Research Workshop on Spoken Dialogue Systems, Hanstholm, Danemark, 1995.
Sadek et al 96a : Sadek M.D., Ferrieux A., Cozannet
A., Bretier P., Panaget F., & Simonin J. Effective human-computer coopérative spoken dialogue: The AGS demonstrator . In (ISSD 96) (and also Proceedings of
ICSLP'96, Philadelphia, 1996).
Sadek et al 91 : M.D. Sadek, P. Bretier, & F.
Panaget. ARTIMIS : Natural Dialogue Meets Rational Agency. Proceedings 15th International Joint Conférence on Artificial Intelligence (IJCAI'97), Nagoya, Japon, pp 1030-1035, 1997.
Bretier 95 : P. Bretier. La communication orale coopérative : contribution à la modélisation logique et à la mise en oeuvre d'un agent rationnel dialoguant.
Thèse de Doctorat Informatique, Université de Paris
XIII, 1995.
Bretier et al 95 : P. Bretier, F. Panaget, & D.
Sadek. Integrating linguistic capabilities into the formai model of a rational agent : Application to coopérative spoken dialogue. Proceedings of the AAAI'95
Fall Symposium on Rational Agency, Cambrige, MA, 1995.
Bretier & Sadek 95 : P. Bretier & D. Sadek.
Designing and implementing a theory of rational interaction to be the kernel of a coopérative spoken dialogue system. Proceedings of the AAAI'95 Fall
Symposium on Rational Agency, Cambrige, MA, 1995.
La convivialité de l'interaction se manifeste entre autres par la capacité du système à négocier avec l'utilisateur, par sa capacité à interpréter des demandes en prenant en compte le contexte, par sa capacité à déterminer les intentions sous-entendues de l'utilisateur et à mener avec lui une interaction flexible qui ne suit pas un plan préconçu une fois pour toute .
Un tel système doit être capable également d' apporter à l'utilisateur des solutions qu'il n'avait pas explicitement demandées mais qui sont néanmoins pertinentes.
Il n'existe pas véritablement à l'heure actuelle de système de dialogue intelligent en service pour une application réelle du fait de la complexité de chacune de ces tâches et du fait de la difficulté à rassembler toutes ces caractéristiques afin que l'interaction puisse être qualifiée réellement de conviviale.
La technologie développée par le déposant repose sur le principe de base qui est que: pour qu'un système automatique puisse mener à bien des dialogues intelligents, ce système ne peut pas être simulé par un automate .
Plus précisément la convivialité du dialogue ne peut pas être conçue comme l'habillage extérieur d'un système préexistant : cette convivialité doit au contraire émerger naturellement de l'intelligence du système .
L'objet de la présente invention est la réalisation d'un agent logiciel qui de par sa construction est rationnel. L'adjonction de principes appropriés le rend également communicatif et coopératif.
En outre, la technologie développée par le déposant permet tout aussi bien 1 ' implementation d'un agent rationnel dialoguant comme noyau d'un système de dialogue que comme agent d'un système multi-agent. Dans cette deuxième application (système multi- agent) , la communication entre de tels agents ne se fait plus alors en utilisant la langue naturelle mais un langage formel (logique) adapté aux capacités d'interaction desdits agents.
L'invention a plus particulièrement pour objet un modèle et un procédé d' implementation d'un agent rationnel dialoguant comme noyau d'un système de dialogue ou d'un système multi-agent.
Selon l'invention, le procédé d' implementation d'un agent rationnel dialoguant comme noyau d'un système de dialogue et/ou comme élément (agent) d'un système multi-agent comprend les étapes suivantes : - définition d'une architecture conceptuelle d'un agent rationnel dialoguant,
- spécification formelle des différents composants de cette architecture et de leur combinaison permettant d'obtenir un modèle formel, et est principalement caractérisé en ce qu'il comprend également les étapes: définition d'une architecture logicielle implémentant l'architecture formelle,
- définition des mécanismes de mise en oeuvre des spécifications formelles, l'agent rationnel étant apte ainsi à dialoguer avec un autre agent ou avec un utilisateur du système à travers un quelconque média de communication (vocal ou, écrit : écran, clavier, souris etc. ) .
Les différents composants du modèle formel sont dans le même cadre formel unifié (théorie logique) et avec le même formalisme. Le caractère générique des mécanismes et des principes donne au modèle une indépendance par rapport à l'application, aux média de communication et à la langue.
La définition des mécanismes de mise en oeuvre est réalisée de manière à obtenir une correspondance directe entre ces mécanismes et ledit modèle.
La spécification formelle des différents composants de l'architecture formelle et de leur combinaison comporte un niveau d'axiomes de rationalité, un niveau d'axiomes de communication, un niveau d'axiomes de coopération.
La définition de l'architecture logicielle implémentant l'architecture formelle comporte : une unité rationnelle comprenant une couche d' implementation du niveau d'axiomes de rationalité, une couche d' implementation du niveau d'axiomes de communication, une couche d' implementation du niveau d'axiomes de coopération, correspondants respectivement aux axiomes du modèle formel.
La définition de l'architecture logicielle implémentant l'architecture formelle comporte en outre :
- un module de génération et un module de compréhension implémentant une couche de niveau langage naturel . L'unité rationnelle, le module de génération et le module de compréhension implémentent des mécanismes de mise en oeuvre du modèle formel.
Le module de génération est apte à transcrire un énoncé logique produit par l'unité rationnelle en langage naturel pour l'utilisation du système.
Le module de compréhension est apte à interpréter un énoncé de l'utilisateur en un énoncé logique compréhensible de l'unité rationnelle. L'invention à également pour objet agent rationnel dialoguant placé comme noyau d'un système de dialogue et/ou comme élément (agent) d'un système multi-agent, comportant : - une définition d'une architecture conceptuelle, une spécification formelle des différents composants de cette architecture et de leur combinaison permettant d'obtenir un modèle formel, principalement caractérisé en ce qu' il comporte : - une définition d'une architecture logicielle implémentant l'architecture formelle,
- une définition des mécanismes de mise en oeuvre des spécifications formelles réalisées par une unité rationnelle qui comporte: - des données comportant des schémas d' axiomes prédéfinis et des schémas d' axiomes dépendant de l' application, une base de connaissances dépendant de l'application comportant un réseau sémantique et des distances inter-concepts, un moteur d' inférence pour mettre en œuvre des mécanismes de spécifications formelles au moyen des données et de la base de connaissance afin de pouvoir recevoir un énoncé logique, le comprendre et de pouvoir fournir un énoncé logique en réponse, Selon une autre caractéristique les données comportent des données d' implementation d'un modèle formel comprenant : - une couche d' implementation d'axiomes de rationalité, une couche d1 implementation d'axiomes de communication, une couche d' implementation d'axiomes de coopération, correspondants respectivement aux axiomes du modèle formel. Selon une autre caractéristique, l'agent comporte en outre : un module de génération d'énoncé en langage naturel à partir d'un énoncé logique issu de l'unité rationnelle et un module de compréhension pour fournir un énoncé en langage logique à l'unité rationnelle à partir d'un énoncé en langage naturel, ces modules implémentant ainsi une couche de niveau communication en langage naturel. L'invention a également pour objet un serveur d'information, comportant des moyens pour mettre en oeuvre un système de dialogue homme-machine dont le noyau repose sur l' implementation d'un agent rationnel dialoguant tels que définis précédemment L'invention concerne également un système multi- agent comportant des agents communicants, chaque agent comportant des moyens pour mettre en oeuvre une interaction, le système comprenant au moins un agent dont le noyau repose sur 1 ' implementation d'un agent rationnel dialoguant tels que décrit précédemment.
D'autres particularités et avantages de l'invention apparaîtront clairement à la lecture de la description qui est faite ci-après à titre d'exemple non limitatif et en regard des figures sur lesquelles :
- la figure 1 représente l'architecture logicielle d'un agent rationnel dialoguant,
- la figure 2 représente l'architecture de l'unité rationnelle et de sa base de connaissance, . - la figure 3 représente de manière plus détaillée l'architecture logicielle d'un agent dialoguant en tant que noyau d'un système de dialogue (notamment oral), - la figure 4 représente une architecture montrant un agent rationnel dialoguant en tant que noyau d'un système multi-agent.
On rappelle que l'approche agent rationnel dialoguant qui a été faite par le déposant et qui a fait l'objet de publications est guidée par des principes de rationalité, de communication et de coopération formalisés dans une théorie de l'interaction rationnelle. On pourra se reporter à cette fin aux publications citée précédemment qui portent l'approche "agent rationnel dialoguant".
La définition de l'architecture conceptuelle d'un agent rationnel dialoguant est donnée en annexe de la description. Cette définition a fait l'objet d'une publication dans "Conseil Scientifique de France Télécom, Mémento Technique n°8: Interfaces Intelligentes et Images" Octobre 1996, pp 37-61.
On peut se reporter pour la suite au schéma de la figure 1.
Selon l'invention, le déposant a mis en oeuvre ces principes au moyen d'une unité rationnelle 100 qui constitue le noyau de chaque agent et qui détermine ses réactions aux événements externes, que ceux-ci soient des sollicitations (requêtes, réponses, confirmations etc) d'utilisateurs humains ou bien des sollicitations d'autres agents logiciels (c'est le cas lorsqu'un agent est le noyau d'un système multi-agent).
L'unité rationnelle 100 est animée par un moteur d' inférence qui automatise les raisonnements selon les principes de l'interaction rationnelle que le programmeur de l'agent peut adapter ou enrichir, de manière déclarative, en fonction de la tâche à accomplir. A cette fin, comme cela va être précisé dans la suite, ces raisonnements sont guidés par des schémas d'axiomes prédéterminés (énumérés en annexes) et entrés dans l'unité par le programmeur de l'agent de manière déclarative en fonction de la tâche que doit remplir ledit agent.
La figure 1 illustre le schéma d'une architecture logicielle d'un agent dans le cas où une telle architecture est appliquée à la constitution d'un système de dialogue avec des utilisateurs.
La figure 1 représente donc l'architecture d'un agent en interaction avec un utilisateur, à travers comme on va le voir, un module de compréhension 150 et un module de génération 160. Cette architecture correspond à une première famille d'application possible qui est l'interaction (conviviale) utilisateur-service.
Afin de permettre le dialogue avec des utilisateurs, l'unité rationnelle 100 est reliée à une interface vers l'extérieur 140.
Cette interface comprend donc le module de compréhension 150 qui reçoit des énoncés en langue naturelle et interprète ces énoncés en un énoncé logique qui sert d'entrée à l'unité rationnelle 100. L'interface comprend également le module de génération 160 qui exprime la réaction de l'unité rationnelle 100 en un énoncé de langue naturelle à destination de l'utilisateur.
Dans ce cadre, l'unité rationnelle 100 est l'entité centrale du service à rendre que ce soit la fourniture de renseignements (horaires de trains, cours de la bourse, prévisions météo...) les réservations ou achats ou encore la recherche d'informations à partir du réseau Internet. Les principes de coopération implantés dans l'unité rationnelle et les modules de traitement de la langue naturelle assurent une interaction conviviale avec l'utilisateur. Cette interaction peut s'effectuer directement par la parole en intégrant au système de dialogue ainsi formé des modules de reconnaissance et de synthèse de la parole (non représentés sur cette figure) .
Cependant, l'unité rationnelle 100 peut toute seule constituer le noyau d'un agent logiciel autonome. Dans ce cadre, cette unité interagit avec d'autres agents logiciels par le biais d'un langage de communication entre agents tel que 1 ' "Agent Communication Langage" (A. CL. adopté comme standard par le consortium FIPA) . Les services que l'agent peut rendre sont alors par exemple des transactions sur des marchés électroniques, des tâches d'administration de réseaux, des diffusions d' informations .
Ces deux formes d'interaction peuvent être combinées de manière qu'après l'interaction en langue naturelle avec un utilisateur, un agent remplisse une tâche quelconque par des interactions en langage ACL avec d'autres agents logiciels répartis sur les réseaux publics ou privés. On va maintenant détailler les fonctionnalités de l'architecture logicielle de l'unité rationnelle 100, cette architecture détaillée été illustrée par le schéma de la figure 2.
Tout d'abord, l'unité rationnelle 100 implémente des principes issus de la théorie de l'interaction rationnelle dont l'objectif est de formaliser et d'automatiser le comportement rationnel d'un agent en situation d'interaction avec d'autres agents ou des utilisateurs de services. Cette théorie s'appuie sur deux grandes notions : la notion de logique modale d'une part, dont l'objectif est de permettre de représenter des attitudes mentales d'agents autonomes et, la notion d'actes de langage d'autre part, dont l'objectif est de préciser les effets de communication sur les attitudes mentales des agents .
L'apport de la théorie de l'interaction rationnelle est de formaliser ces deux domaines et surtout l'interaction entre-eux.
L'état d'un agent à un moment donné dans un échange communiquant est ainsi caractérisé par un ensemble d'attitudes mentales.
Les attitudes mentales pouvant être représentées sont par exemple la croyance notée habituellement par l'opérateur K et l'intention notée par l'opérateur I.
Ces opérateurs sont indicés par l'agent dont il s'agit de représenter l'attitude mentale.
Dans un dialogue avec le système s et l'utilisateur u, Ks désigne l'opérateur de croyance pour le système et Ku ce même opérateur pour l'utilisateur.
Les actes de langage pouvant être modélisés sont entre autres des actes d'information et des demandes. La modélisation consiste en un énoncé logique ou langage logique, par exemple:
Ks lu Fait (<s, informe Si(u,p)>) cet énoncé logique se traduit comme suit : le système s sait (opérateur K) que l'utilisateur u a l'intention (opérateur I) que soit effectué un certain acte communicatif qui est que s informe u si une certaine proposition p est vraie ou fausse, soit en plus court: "s sait que u veut que s l'informe de la véracité de p" . Le langage logique défini permet d'exprimer des principes de comportement généraux qui vont déterminer les réactions de l'unité rationnelle.
Un agent s sera coopératif s'il adopte les intentions de l'utilisateur u. Ceci peut s'exprimer ainsi :
Ks lu -> Is φ
De tels schémas d'axiomes d'une portée très générale sont déjà prédéfinis par la théorie de l'interaction et font partie de l'unité rationnelle d'un agent.
Cependant, le programmateur de l'unité rationnelle peut définir de nouveaux schémas plus spécialisés pour une application donnée. L'ensemble des schémas guide le raisonnement de l'unité rationnelle 100 et donc ses réactions aux sollicitations de l'environnement.
Le calcul de ces réactions est effectué par le moteur d'inférence 101. L'unité rationnelle 100 comporte donc un ensemble de données 102 qui comprend les axiomes du modèle formel de l'agent rationnel dialoguant. Ces données implémentent les couches de rationalité de communication et de coopération de l'agent. Les sollicitations de l'environnement par exemple les demandes des utilisateurs, ou celles d'autres agents logiciels sont transmises à l'unité rationnelle 100 sous la forme d'un énoncé logique ACL de la théorie de l'interaction rationnelle. Le moteur d'inférence 101 est apte à calculer les conséquences de cet énoncé et en particulier les réponses ou demandes de précisions éventuelles à fournir à l'interlocuteur (qu'il s'agisse d'un agent logiciel ou d'un utilisateur humain) mais aussi d'autres actions non communicatives .
Concrètement pour un énoncé donné, le moteur d'inférence 101 examine s'il ne dispose pas d'un principe de comportement qui puisse s'appliquer à cet énoncé pour en déduire la ou les conséquences logiques. Cette procédure est alors appliquée à ces nouvelles conséquences jusqu'à épuisement des possibilités.
Parmi toutes ces conséquences, le moteur d'inférence 101 isole les actions de communication ou autres qu'il doit effectuer et qui forment alors la réaction de l'agent rationnel.
La première étape de la procédure d'inférence est une mise sous forme normale des énoncés traités afin d'assurer que chaque énoncé ne se présente que sous une seule forme syntaxique donnée pour pouvoir assurer le tri et la comparaison des énoncés .
Cette mise sous forme normale permet également d'assurer une première application des principes simples de raisonnement.
La procédure d'inférence consiste ensuite pour chaque énoncé traité à vérifier si cet énoncé correspond à l'un des schémas d'axiomes 102 qui codent les principes de comportement rationnels retenus. Le mécanisme de cette vérification repose principalement sur l'opération d'unification du langage Prolog.
L'ensemble de ces schémas d'axiome peut être modifié par le programmeur de l'unité rationnelle 101 qui peut retirer ou ajouter des schémas d'axiomes ou bien modifier ceux déjà existant pour affiner le comportement de l'unité rationnelle. Ces modifications peuvent s'effectuer dynamiquement. Dans ce cas, l'unité rationnelle modifie son comportement au fur et à mesure.
L'ensemble de la procédure d'inférence est contrôlé de manière à ce que l'unité rationnelle n'entre pas dans des raisonnements infinis. La terminaison de cette procédure est ainsi assurée.
Le raisonnement de l'unité rationnelle prend appui sur un ensemble de données qui dépendent fortement de l'application recherchée pour l'agent rationnel.
Lorsque l'on souhaite qu'un agent fournisse des horaires de train, il faut que soit à sa disposition des données sur les gares et les connexions entre elles ainsi que les notions temporelles. L'ensemble de ces données est structuré dans une base de connaissances 120 sous la forme d'un réseau sémantique .
Le réseau sémantique 120 permet d'exprimer des notions de classes et de sous-classes, et d'instance de chaque classe. Il définit également la notion de relation entre classes qui s'applique aux différentes instances des classes.
Par exemple, pour une application de type agenda, le réseau sémantique 120 comprendra au moins les classes "personne" (dont les instances seront l'ensemble des personnes connues dans l'agenda) et "fonction" (dont les instances seront les fonctions connues) .
Ces deux classes sont en relation la -foncti on-de . Pour indiquer que la personne Jean est Publicitaire, le réseau sémantique comprend le fait Prolog: la -fonction- de (Jean, Publicitaire) .
Un accès au réseau sémantique 120 est réalisé à tout moment durant la procédure d'inférence lorsque les conséquences de 1 ' inférence dépendent de la nature des données.
Dans l'application agenda, par exemple, si l'utilisateur demande quel est le métier de Jean, la réponse de l'agent rationnel va dépendre de son interrogation du réseau sémantique 120.
Le réseau sémantique 120 peut disposer également de notions de proximité sémantique qui sont partiellement utiles pour produire des réactions coopératives de l'agent rationnel.
Il s'agit de donner des distances relatives aux différentes instances du réseau sémantique, ces distances sont déterminées suivant l'application lors de la création du réseau sémantique. Les instances du réseau sémantique 120 se trouvent ainsi projetées dans un espace métrique dont les dimensions sont les différentes relations du réseau.
Par exemple, la fonction publicitaire sera probablement déterminée comme sémantiquement plus proche de la fonction ingénieur marketing que de garagiste.
Cette construction permet d'effectuer deux opérations symétriques appelées relâchement (ou relaxation) et restriction de contraintes. Le relâchement de contraintes vise à donner des réponses proches à des requêtes proches de la requête initiale quand la réponse à celle-ci n'existe pas .
Si par exemple on demande à l'agenda quels sont les ingénieurs marketing et qu'il n'en existe pas, la procédure d'inférence peut déclencher une étape de relaxation pour pouvoir donner les coordonnées des publicitaires .
La restriction, au contraire, vise à chercher comment préciser une demande trop large. S'il y a 500 publicitaires enregistrés dans l'agenda, une étape de restriction donnera la dimension la plus discriminante de ce trop gros ensemble (par exemple la société ou travaille le publicitaire) afin de pouvoir poser une question pertinente pour identifier la demande de l'utilisateur.
La figure 2 permet également d'illustrer que l'unité rationnelle 100 d'un agent rationnel comporte une partie générique indépendante de l'application et une partie dépendante de l'application.
On peut considérer que les entrées et sorties de l'unité rationnelle 100 sont des énoncés en ACL. La mise en forme sous forme normale de ces énoncés et la procédure d'inférence sont indépendantes de l'application ainsi qu'une majorité des schémas d'axiomes qui guide le comportement du système. Cependant certains d'entre eux sont adaptés ou créés spécialement pour l'application de même que le réseau sémantique qui contient les données de l'application. Le réseau 120 doit, la plupart du temps, pouvoir répondre à des demandes de restriction et/ou de relaxation de la part du moteur d'inférence 101 comme on va le voir plus en détail dans la suite.
Ce réseau doit dans ce cas, disposer de notions de distance sémantique entre les instances comme cela a été dit.
Le schéma de la figure 3 illustre avec plus de détails l'architecture logicielle d'un agent selon 1 ' invention. Le module de compréhension de la langue naturelle 150 interprète un énoncé de l'utilisateur en un énoncé logique compréhensible par l'unité rationnelle 100.
Le vocabulaire traité par ce module dépend en partie du service que doit rendre l'agent rationnel. Cette partie dépendante de l'application est principalement présente dans le réseau sémantique 120 de l'unité rationnelle, ce qui explique que le module de compréhension 150 utilise de nombreuses données provenant du réseau sémantique 120.
Le module de compréhension 150 est apte à prendre en compte l'énoncé de l'utilisateur comme une suite de petites structures syntaxiques (le plus souvent des mots) qui vont chacune activer une (ou plusieurs en cas de synonymes) notion (s) issue (s) du réseau sémantique 120.
Le lien entre le vocabulaire d'entrée de l'utilisateur et le réseau sémantique 120 se fait donc au moyen d'une table d'activation des concepts 131 qui indique quelle (s) notion (s) sémantique correspond (ent) aux mots (ou suite de mots) du vocabulaire.
Ces notions activées dépendent en partie de l'application voulue, mais représentent aussi des concepts beaucoup plus généraux comme la négation, les intentions et connaissances de l'utilisateur, l'existence, les cardinalités etc..
Le module de compréhension dispose donc alors d'une liste de concepts activés (voire de plusieurs en cas de synonymes) . II est apte à les transformer en un énoncé logique formé par un processus de complétion sémantique. Ce processus part de l'hypothèse de connexite sémantique de l'énoncé de l'utilisateur, c'est à dire que les concepts qu'il a évoqués sont en relation les uns avec les autres.
Le module 150 est apte à relier entre eux, par des relations présentes dans le réseau sémantique, y compris en créant si nécessaire de nouveaux concepts. Le processus détermine les notions sous entendues dans l'énoncé de l'utilisateur.
Il est possible d'indiquer que certaines relations sont incompatibles entre elles dans un énoncé de l'utilisateur. On contrôle ainsi les possibilités de recherche du processus de complétion.
La complétion sémantique fait appel à une fonction de pondération 132 qui permet de fixer un poids numérique pour chaque relation du réseau sémantique, représentant la vraisemblance des vocations de cette relation.
De cette manière, le processus de complétion prend en compte une notion de vraisemblance quand il doit déterminer quels sont les concepts sous-entendus par l'utilisateur. Ces poids permettent également d'associer un coût à chaque interprétation possible en cas de synonyme. Ainsi, un seul énoncé sera finalement retenu par le module de compréhension, celui au coût le plus faible. Pour faciliter la complétion sémantique, il est également possible de spécifier que certains couples concept-relation ou concept-concept sont implicites. Si seul l'un des concepts a été évoqué et même si l'énoncé étudié est connexe, la relation correspondante sera rajoutée car elle est sous-entendue de manière quasi certaine.
Par exemple, dans une application donnant les cours de la bourse, l'énoncé "je voudrais le CAC 40" sera complété de manière implicite en "je voudrais le cours du CAC 40".
D'autre part, le module de compréhension 150 doit prendre en compte le contexte de l'énoncé de 1 ' utilisateur. Pour cela, il dispose des concepts précédemment évoqués à la fois par l'utilisateur et par l'agent lui- même dans ses réponses à l'utilisateur. Une partie de ceux-ci peuvent donc être utilisés lors du processus de complétion.
Là encore, on indiquera pour toutes les relations du réseau sémantique, s'il est pertinent de les conserver dans le contexte.
Le module de compréhension 150 n'utilise pas d'analyseur syntaxique ou grammatical. Ceci lui permet d'interpréter correctement des énoncés syntaxiquement incorrects, ce qui est particulièrement important dans un contexte de dialogue oral (et d'utilisation de reconnaissance vocale) , la syntaxe du discours spontané étant plus lâche, .
De plus, l'analyse étant faite par petits composants syntaxiques, il n'est pas nécessaire de construire une grammaire qui va essayer de prévoir à l'avance l'ensemble des énoncés possibles des utilisateurs.
Enfin, la seule partie dépendant de la langue de l'utilisateur est la table reliant le vocabulaire utilisé aux concepts du réseau sémantique.
Les données sémantiques du réseau représentent en effet des notions universelles. Ce point facilite particulièrement le transfert d'une application d'un langue vers une autre langue.
Le module de génération 160 accomplit la tâche inverse du module de compréhension. Il est apte à transcrire une séquence d'actes communicatifs produite par l'unité rationnelle 100 en un énoncé de la langue naturelle de l'utilisateur.
Le processus de génération opère en deux phases. La première phase consiste à prendre toutes les décisions quant au choix linguistique qui s'offre pour verbaliser la séquence d'actes communicatifs fournie en entrée du module. Pour cela le générateur 160 utilise entre autre des éléments du contexte du dialogue pour construire l'énoncé le plus adapté à la situation courante.
Ainsi, dans une application agenda, le module 160 devra effectuer un choix entre des formulations équivalentes comme" le numéro de téléphone de Jean est le" ou "le numéro de Jean est le" ou "son numéro est le", "c'est le..." suivant le contexte du dialogue.
L'objectif de cette première phase est de construire une représentation intermédiaire de l'énoncé en utilisant une notion de ressources linguistiques abstraites 133. Une ressource linguistique abstraite représente soit une ressource lexicale 135, par exemple les noms communs, les verbes, les adjectifs, soit une ressource grammaticale, c'est à dire la structure syntaxique.
La seconde phase utilise cette représentation abstraite pour construire l'énoncé définitif.
Il s'agit d'une étape de traitement qui ne requiert que l'application stricte des règles de grammaire. Parmi ces phénomènes on retrouve par exemple la détermination de l'ordre des constituants de l'énoncé, l'accord entre ces constituants et la déclinaison des verbes.
Les modules de compréhension 150 et de génération 160 utilisent comme format d'entrée, respectivement de sortie, des textes écrits.
Si l'on souhaite réaliser une interaction vocale avec un agent rationnel, il faut lui adjoindre des modules de reconnaissance et de synthèse de la parole. Le module de reconnaissance 170 inscrit un signal vocal de l'utilisateur en un texte correspondant à l'énoncé prononcé. Ce module 170 est par exemple indispensable quand un agent rationnel est utilisé comme serveur téléphonique : la seule interaction possible est alors vocale.
L'unité rationnelle y compris le réseau sémantique qui modélise les données que cette dernière manipule, forment ensemble le noyau d'un agent logiciel. Tel quel, cet agent peut communiquer avec d'autres agents logiciels par exemple à travers le réseau.
Les primitives de communication ACL définies par la théorie de l'interaction rationnelle constituent un langage de communication entre agents qui leur permettent de réaliser des interaction non-ambigûes .
Les agents formés par une unité rationnelle 100 et leur réseau sémantique 120 sans les composants d'interaction en langue naturelle (modules 140 et 150) sont particulièrement bien adaptés à l'utilisation du langage de communication ACL entre agents logiciels pour former des systèmes multi-agent tels que représentés sur la figure 4.
L'invention a été mise en oeuvre avec une station SUN Ultral (muni d'un processeur 166 mégahertz) et sur une station SUN Ultra2 ( possédant deux processeurs à 64 bits et une fréquence de 300 mégahertz) .
On utilise une mémoire vive dont la taille peut être aux environ de 32 egaoctets minimum. Le temps de réponse maximal du système est de 2 secondes sur la plate-forme Ultra2 et de 5 secondes sur Ultral. On peut réaliser la connexion avec un réseau numérique au moyen d'une carte réseau numérique à intégration de service RNIS-Basic Rate Interface. Les trois modules qui ont été décrits, de compréhension 150, de génération 160 et l'unité rationnelle 100 ont été implémentés en Prolog (Quintus version 3.3 pour Solaris 2.5). La communication entre les différents modules et les systèmes de reconnaissance et de synthèse de la parole est réalisé par un programme écrit en langage C, un prototype de l'invention a été développé sous Solaris, mais une version ne comprenant pas les modules de reconnaissance et de synthèse de la parole a été portée sous WINDOWS NT 4.0.
ANNEXE
ELEMENTS DU CADRE DE FORMALISATION LOGIQUE: SPECIFICATIONS FORMELLES
Les concepts d'attitudes mentales (croyance, incertitude, intention) et d'action que l'on manipule ici sont formalisés dans le cadre d'une logique modale du premier ordre (cf. la publication: Sadek 91a, 92, pour les détails de cette logique) . On introduit brièvement les aspects du formalisme, dont on se sert dans l'exposé qui suit. Dans la suite, les symboles -, Λ, v et = représentent les connecteurs logiques classiques de négation, conjonction, disjonction et implication, et V et 5, les quantificateur universel et existentiel ; p représente une formule close (dénotant une proposition) , φ, ψ et δ, des schémas de formules, et i et j (parfois h) des variables schématiques dénotant des agents. On note | = φ le fait que la formule φ est valide.
Les attitudes mentales considérées comme sémantiquement primitives, à savoir la croyance, l'incertitude et le choix (ou la préférence) sont formalisées respectivement par les opérateur modaux K, U, et C. Des formules telles que K (±, p) , U (i, p) , et C (i,p) peuvent être lues respectivement "i croit (ou pense que) p (est vraie)", "i est incertain de (la vérité de) p" et "i désire que p soit actuellement vraie". Le modèle logique adopté pour l'opérateur K rend compte des propriétés intéressantes pour un agent rationnel, telles que la consistance de ses croyances ou sa capacité d'introspection, formellement caractérisées par la validité de schémas logiques tels que
Figure imgf000029_0001
Pour ce qui est de l'incertitude, le modèle logique garantit également la validité de propriétés souhaitables comme, par exemple, le fait qu'un agent ne peut être incertain de ses propres attitudes mentales ( |=-.t7(i, M (i ,φ ) , M appartenant à (K, sK, C, -sC, U, ->ϋ etc }) . Le modèle logique pour le choix entraîne des propriétés telles que le fait qu'un agent "assume" les conséquences logiques de ses choix
Figure imgf000029_0002
ou qu'un agent ne peut pas ne pas choisir les cours d'événements dans lesquels il pense s'y trouver déjà
Figure imgf000029_0003
L'attitude d'intention qui elle n'est pas sémantiquement primitive, est formalisée par l'opérateur I qui est défini (de façon complexe) à partir des opérateurs C et K. Une formule telle que I (i ,p) peut être lue "i à l'intention de réaliser p" .
La définition de l'intention impose à un agent de ne chercher à atteindre que ce qu'il pense non déjà atteint ( = I (i , §) => K (i , §) ) , et garantit le fait qu'un agent n'a pas l'intention de réaliser les effets de bord de ses intentions (ainsi "avoir l'intention de se connecter sur un réseau et savoir que cela peut contribuer à l'encombrer, n'implique pas
(nécessairement !) avoir l'intention de contribuer à encombrer le réseau") . Afin de permettre le raisonnement sur l'action, on inclut, en plus des objets individuels et des agents, des séquences d'événements. Le langage contient des termes (en particulier variables e, e-^, •••) qui parcourent l'ensemble de ces séquences. Une séquence peut être formée d'un seul événement (qui peut être l'événement vide) . Afin de pouvoir parler de plans complexes, les événements (ou séquences α^ : 2 , ou des choix non déterministes αa1|αa2. Les variables schématiques α, -^ α2 • • • , sont utilisées pour dénoter des expressions d'action. Sont introduits également les opérateurs Faisable , Fait et Agent (i, ) tels que les formules Faisable (αp) , Fait ( p) et Agent (i, ) signifient respectivement que (l'action ou l'expression d'action) α peut avoir lieu après quoi p sera vraie, α vient juste d'avoir lieu avant quoi p était vraie, et i dénote l'unique agent des événements apparaissant dans α.
Une propriété fondamentale de la logique proposée est que les agents modélisés sont en parfait accord avec eux-mêmes sur leurs propres attitudes mentales. Formellement, le schéma φ θ (i,φ), où φ est gouvernée par un opérateur modal formalisant une attitude mentale de l'agent i, est valide (Sadek 91a, 92). Les abréviation suivantes sont utilisées, Vrai étant la constante promotionnelle toujours vraie:
Fαisαble(α) Fαisαble(α, Vrai)
Fαit(α) Fait(a, Vrai)
Possible( ) (3e) Feasible(e,§)
K(i,$) v K(i,->$)
Kreβi,\x δ(x)) (3y) K(i,v δ(x) = y) : l'agent i commît le (ou l'objet qui est un) δ, où 1 est l'opérateur de description définie (producteur de termes) tel que :* φfυ δWJ ≡ Ξy φ 'J (y) Λ VZ ( (z) => z=yj
Uref(i,u b(x)) ≡ (3y) U(i,\x (x) = y) PRINCIPES DE RATIONALITE ET MODELE D'ACTION
Deux principes de rationalité établissent le lien entre les intentions d'un agent et ses plans et actions
(Sadek 91a, 94b) . Le premier principe stipule qu'un agent ne peut avoir l'intention de réaliser une proposition donnée sans avoir par là-même l'intention que soit faite l'une des actions qu'il pense qu'elle a pour effet la proposition en question, et pour laquelle il n'a pas d'objection particulière à ce qu'elle soit faite. Formellement, ceci s'exprime par la validité du schéma suivant :
Figure imgf000031_0001
où les ak sont toutes les actions telles que :
- p est- T effet rationnel de a (Le., la raison pour laquelle a est planifié) ;
- l'agent / connaît l'action a/- : Kref(i,ak) - sC(i, -i Pùssible(Fait(ak)))
Le second principe stipule qu'un agent qui a l'intention que soit faite une action donnée, adopte nécessairement l'intention que cette action soit faisable, s'il ne pense pas qu'elle l'est déjà : ce qui s'exprime formellement par la validité du schéma suivant:
I(i,Fait(ak)) => K(i,Faisable(ak) v I(i,K(i.Faisable(ak)))
La solution au problème de l'effet d'une action est directement liée à l'expression même des principes de rationalité. On considère que si l'on ne peut prédire les effets réels d'une action, on peut cependant dire (de façon valide) ce qu'on attend de l'action, autrement dit, la raison pour laquelle on la sélectionne. C'est en fait ce qui est exprimé par le premier principe de rationalité ci-dessus. Cette sémantique de l'effet d'une action, dans le cadre d'un modèle du comportement rationnel, permet de dépasser le problème de la non-prédictibilité des effets.
A titre d'exemple, voici un modèle simplifié (pour ce qui est de l'expression des pré-conditions) de l'acte communicatif d'informer de la vérité d'une proposition:
<i, lnform(j,§)>
Précondition : K(i,$) A -^K(i,K(j,§))
Effet : K(jΛ)
Ce modèle est directement axiomatisé au sein e la théorie logique à travers les principes de rationalité ci-dessus, et du schéma suivant (les actions ne sont donc pars manipulées par un processus de planification comme des structures de données, tel que cela est fait dans le cadre de l'approche orientée-plan classique, mais ont une sémantique logique au sein de la théorie elle-même) :
K( Faisable(<i, Inform(j,4))>) <=> K(i, ) Λ -.K(i,K(jM)
Notons que les deux principes ci-dessus spécifient à eux seuls (sans artifice extra-logique) un algorithme de planification, qui produit déductivement des plans d'action par inférence de chaînes causales d' intentions.
FORMALISATION DE QUELQUES PRINCIPES DU COMPORTEMENT
COOPERATIF On peut voir (Sadek 91a, 94a) pour une proposition détaillée d'un modèle du comportement coopératif au sein d'une théorie formelle de l'interaction rationnelle. L'ADOPTION D'INTENTION OU LE PRINCIPE MINIMAL DE
COOPERATION
A priori, rien sur le plan strictement rationnel ne contraint un agent à être (un tant soit peu) coopératif et, en particulier, à réagir aux sollicitations d' autrui (comme par exemple, répondre aux questions qui lui sont posées) . Cette condition limite, que nous appelons principe minimal de coopération , est un cas particulier de la propriété suivante d'adoption d'intention: si un agent i pense qu'un agent j a l'intention de réaliser une propriété p, et que lui- même n'a pas l'intention contraire, alors i va adopter l'intention que j sache (un jour) que p est réalisée. Cette propriété se traduit formellement par la validité du schéma de formule suivant:
(K(i,I(j,p)) -^ I(i,^p)) => I(i,K(j,p))
Conjointement, les deux propriétés précédentes garantissent qu'un agent va agir sincèrement, et donc coopérer. Par ailleurs, il est important de souligner qu'elles expriment beaucoup plus qu'un principe de coopération minimale. En fait, elles expriment un principe de coopération "tout-court". Elles traduisent le fait que dès lors qu'un agent est au courant des objectifs d'un autre agent, alors il va l'aider à les atteindre, tant que cela ne contredit pas ses propres objectifs.
LA PERTINENCE
La plupart des types remarquables de réponses coopératives se manifestent par la communication d'un supplément d'information par rapport à ce qui a été explicitement demandé. Cependant, la quantité d'information additionnelle dépend fortement de l'intérêt présumé du demandeur pour cette information, et en particulier, de ses intentions reconnues. La notion d'intérêt est très contextuelle et reste assez délicate à établir dans le cas général. A l'inverse, il est des informations qui, de toute évidence, ne sont pas pertinentes pour l'interlocuteur: celles par exemple, (supposées) déjà connues de lui. Autrement dit, éviter la redondance est une composante du comportement coopératif, ce qui peut s'exprimer comme suit, en termes de propriété élémentaire (qui, en réalité, n'est pas primitive mais dérive directement de la définition même du concept d'intention): si un agent i a l'intention de faire savoir à un agent j une proposition p, alors i doit penser que j ne la sait pas déjà. Ceci se traduit formellement par la validité du schéma suivant:
I(i,K(j,p)) => K(i,s K(j,p))
L'AJUSTEMENT DE CROYANCES
Une réponse corrective est engendrée avec l'intention de corriger une croyance de l'interlocuteur, jugée erronée. Cette croyance constitue généralement un présupposé inféré (par implicature (Grice 75; ) à partir de l'acte communicatif reconnu. L'intention en question est générée chez un agent à chaque fois que sa croyance au sujet d'une proposition dont in ne croit pas son interlocuteur compétent, se trouve en contradiction avec celle de son interlocuteur. Ceci se traduit formellement par la validité du schéma suivant:
K(i,(p Λ K(j,s p)) => Ki,K(j,P)) REAGIR AUX SOLLICITATIONS
Dans un système communicant, un agent ne peut se résoudre à la non-reconnaissance par un phénomène qu'il a observé. Pour rendre compte de ce caractère, on formule la double propriété suivante: le premier volet de cette propriété stipule qu'à l'issue d'un phénomène qu'un agent perçoit et auquel, soit il ne peut associer d'événement intelligible, soit tout événement qu'il peut lui associer est inacceptable au vu de ses croyances, l'agent va adopter l'intention de savoir ce qui a été réalisé, typiquement en générant une demande de répétition. Le second volet de cette propriété, qui est moins général que le premier, concerne seulement le cas où l'agent ne peut conformément à sont état mental, accepter aucun événement réalisable par ce qu'il a observé ; dans ce cas, l'agent va adopter l'intention de faire savoir à l'auteur de l'événement sa désapprobation vis-à-vis de ce qu'il a "compris", ce qui, en termes d'énoncés linguistiques, peut se manifester, par exemple par l' énonciation de ce qui interdit à l'agent d'admettre l'acte en question.
Formellement, les deux volets de cette propriété s'expriment par la validité des deux schémas suivants, les prédicats Observe (i , o) et Réalise (o, e) signifiant respectivement que l'agent i vient juste d'observer l'entité observable o (tel un énoncé, par exemple), et que l'entité observable o est une façon de réaliser l'événement e:
(i) (3e) Fαit(e) Λ -, Kreβi,Fαit(ej)) => I(i,Kreβi, Fαit(e2)))
(ii) ( /o) (Ve) [Observe(i,o) et Réαlise(o,e) Λ Agent(j,e) et
-, Kreβi,Fαit(e )) => I(i,K(j.-ι K(i,Fαit(e)))) L'HARMONIE AVEC AUTRUI le comportement d'un agent en univers multi-agent coopératif doit apparaître, dans ses composantes principales, comme une généralisation de son comportement vis-à-vis de lui-même. (Par exemple, il doit être valide qu'un agent est sincère, cohérent et "coopératif" avec lui-même) . Aussi un agent ne doit pas faire en sorte de faire perdre de l'information aux autres agents. En particulier, il ne doit pas rechercher l'incertitude pour autrui comme une finalité en soi, sauf, éventuellement, s'il pense que c'est la "bonne" attitude à adopter vis-à-vis d'une proposition donnée: cela suppose que lui-même adopte déjà cette attitude. Pour rendre compte de ce comportement, on propose la propriété suivante:
(i) C(i,Possible(U(j,$))) => T\ où rι peut, par exemple, rendre compte du fait que le choix pour un autre agent d'un futur où il est incertain d'un proposition, impose ce futur seulement comme une étape transitoire vers une situation de connaissance. Formellement T1 peut être:
C(i,(Ve) (Faisable(e, U(j.p)) => (Be') Faisable(e;e Kiβj.p))) v U(i,p)
Une propriété similaire peut être posée à propos de la recherche de l'ignorance pour autrui. Par exemple, un agent i qui désire qu'un agent j ne croie plus (resp. ne soit plus incertain d')une proposition p donnée, doit lui-même ne pas croire (resp. ne pas être incertain de) p et désirer que j adopte la même attitude qui lui vis-à-vis de p. On propose alors la propriété suivante: (i) C(i,Possible(-JC(j ))) => T2 (ii) C(i,Possible(-,U(jM) =>T3
où les conditions T2 et T3 auront une forme similaire aux conditions T^ (les schémas proposés (i), (ii) et (iii) restant valides si l'opérateur de choix C est remplacé par l'opérateur d'intention I) . Nous laissons ces conditions volontairement incomplètement spécifiées, car leur expression précise dépend de la façon dont on veut que l'agent modélisé se comporte. Elles peuvent, par exemple, tout simplement être réduites à la constante propositionnelle Faux. Quoi qu'il en soit, elles n'ont pas d'incidence sur le reste de la théorie.
Selon ce que l'on choisit de mettre dans les conditions Tk, on peut valider des schémas tels que
Figure imgf000037_0001
L'ACCES LOGIQUE AUX "BOITES NOIRES" DE GESTION DES
CONTRAINTES DU DOMAINE
Les fonctions "boîtes noires" de gestion des contraintes du domaine: relâchement, restriction, surinformation, sont directement "accessibles" à partir du cadre logique formalisant le comportement de l'agent rationnel (voir (Bretier 95; ) . A titre illustratif, 1 '"accès" à la procédure de sur-information se fait à travers le schéma suivant, où SURINF est une méta- prédicat :
K(i,(I(i,K(ip))) Λ SURINF(p,q)) => I(i,K(j,q))) Ce schéma exprime la propriété suivante: si un agent i a l'intention qu'un agent j croie une proposition p et que i pense (par sa fonction de surinformation) que la proposition g peut être une sur- information pertinente de p, alors i va adopter l'intention que j vienne à croire également la proposition q.

Claims

REVENDICATIONS
1. Procédé d' implementation d'un agent rationnel dialoguant comme noyau d'un système de dialogue et/ou comme élément (agent) d'un système multi-agent comprenant les étapes suivantes : - définition d'une architecture conceptuelle d'un agent rationnel dialoguant,
- spécification formelle des différents composants de cette architecture et de leur combinaison permettant d'obtenir un modèle formel, caractérisé en ce qu'il comprend également les étapes : définition d'une architecture logicielle implémentant l'architecture formelle,
- définition des mécanismes de mise en oeuvre des spécifications formelles, l'agent rationnel étant apte ainsi à dialoguer avec un autre agent ou avec un utilisateur du système à travers un quelconque média de communication .
2. Procédé d' implementation selon la revendication 1, caractérisé en ce que les différents composants du modèle formel sont spécifiés dans le même cadre formel unifié et avec le même formalisme.
3. Procédé d' implementation selon la revendication 1 ou 2, caractérisé en ce que la définition des mécanismes de mise en oeuvre des spécifications formelles est réalisée de manière à obtenir une correspondance directe entre ces mécanismes et ledit modèle .
4. Procédé d' implementation selon la revendication 1, caractérisé en ce que la spécification formelle des différents composants de l'architecture formelle et de leur combinaison comporte un niveau d'axiomes de rationalité, un niveau d'axiomes de communication, un niveau d'axiomes de coopération.
5. Procédé d' implementation selon les revendications 1 et 4, caractérisé en ce que la définition de l'architecture logicielle implémentant l'architecture formelle est réalisée par une unité rationnelle comprenant une couche d' implementation du niveau d'axiomes de rationalité, une couche d1 implementation du niveau d'axiomes de communication, une couche d' implementation du niveau d'axiomes de coopération, correspondants respectivement aux axiomes du modèle formel.
6. Procédé d' implementation selon les revendications 1 et 4, caractérisé en ce que la définition de l'architecture logicielle implémentant l'architecture formelle comporte en outre : un module de génération et un module de compréhension implémentant une couche de niveau communication en langage naturel.
7. Procédé d' implementation selon les revendications 5 et 6, caractérisé en ce que l'unité rationnelle, le module de génération et le module de compréhension implémentent des mécanismes de mise en oeuvre du modèle formel.
8. Procédé d' implementation selon les revendications 5 et 7, caractérisé en ce que le module de génération est apte à transcrire un énoncé logique produit par l'unité rationnelle en langage naturel pour l'utilisation du système en contexte de dialogue.
9. Procédé d' implementation selon les revendications 5 et 7, caractérisé en ce que le module de compréhension est apte à interpréter un énoncé de l'utilisateur en un énoncé logique compréhensible de l'unité rationnelle.
10. Agent rationnel dialoguant placé comme noyau d'un système de dialogue et/ou comme élément (agent) d'un système multi-agent, comportant :
- une définition d'une architecture conceptuelle, une spécification formelle des différents composants de cette architecture et de leur combinaison permettant d'obtenir un modèle formel, caractérisé en ce qu' il comporte : une définition d'une architecture logicielle implémentant l'architecture formelle, - une définition des mécanismes de mise en oeuvre des spécifications formelles réalisées par une unité rationnelle qui comporte: des données comportant des schémas d' axiomes prédéfinis et des schémas d' axiomes dépendant de l'application, une base de connaissances dépendant de l'application comportant un réseau sémantique et des distances inter-concepts, un moteur d' inférence pour mettre en œuvre des mécanismes de spécifications formelles au moyen des données et de la base de connaissance afin de pouvoir recevoir un énoncé logique, le comprendre et de pouvoir fournir un énoncé logique en réponse,
11. Agent rationnel dialoguant placé comme noyau d'un système de dialogue et/ou comme élément (agent) d'un système multi-agent selon la revendication 10, caractérisé en ce que, les données comportent des données d' implementation d'un modèle formel comprenant : une couche d' implementation d'axiomes de rationalité, une couche d' implementation d'axiomes de communication, une couche d' implementation d'axiomes de coopération, correspondants respectivement aux axiomes du modèle formel.
12. Agent rationnel dialoguant placé comme noyau d'un système de dialogue et/ou comme élément (agent) d'un système multi-agent selon la revendication 10 ou 11, caractérisé en ce qu'il comporte en outre un module de génération d' énoncé en langage naturel à partir d'un énoncé logique issu de l'unité rationnelle et un module de compréhension pour fournir un énoncé en langage logique à l'unité rationnelle à partir d'un énoncé en langage naturel, ces modules implémentant ainsi une couche de niveau communication en langage naturel.
13. Système de dialogue homme-machine, comportant un agent dialoguant selon l'une quelconque des revendications précédentes.
14. Serveur d'information caractérisé en ce qu'il comporte des moyens pour mettre en oeuvre un système de dialogue homme-machine selon la revendication 13.
15. Système multi-agent comportant des agents communicants, chaque agent comportant des moyens pour mettre en oeuvre une interaction, caractérisé en ce qu'il comporte au moins un agent dont le noyau repose sur l' implementation d'un agent rationnel dialoguant selon l'une quelconque des revendications précédentes.
PCT/FR1999/003242 1998-12-23 1999-12-21 Modele et procede d'implementation d'un agent rationnel dialogant, serveur et systeme multi-agent pour la mise en oeuvre WO2000039672A2 (fr)

Priority Applications (7)

Application Number Priority Date Filing Date Title
IL14381299A IL143812A0 (en) 1998-12-23 1999-12-21 Model and method for using an interactive rational agent, multiagent server and system implementing same
EP99961137A EP1141823A2 (fr) 1998-12-23 1999-12-21 Modele et procede d'implementation d'un agent rationnel dialogant, serveur et systeme multi-agent pour la mise en oeuvre
BR9916421-3A BR9916421A (pt) 1998-12-23 1999-12-21 Modelo e método para uso de um agente racionalinterativo, servidor de múltiplos agentes esistema implementando os mesmos
AU17851/00A AU773217B2 (en) 1998-12-23 1999-12-21 Model and method for using an interactive rational agent, multiagent server and system implementing same
US09/869,205 US7376632B1 (en) 1998-12-23 1999-12-21 Model and method for using an interactive rational agent, multiagent server and system implementing same
CA002356384A CA2356384A1 (fr) 1998-12-23 1999-12-21 Modele et procede d'implementation d'un agent rationnel dialogant, serveur et systeme multi-agent pour la mise en oeuvre
JP2000591502A JP2002533827A (ja) 1998-12-23 1999-12-21 会話型推論エージェントのモデルおよび実施方法、サーバおよび実施のためのマルチエージェントシステム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR98/16374 1998-12-23
FR9816374A FR2787902B1 (fr) 1998-12-23 1998-12-23 Modele et procede d'implementation d'un agent rationnel dialoguant, serveur et systeme multi-agent pour la mise en oeuvre

Publications (2)

Publication Number Publication Date
WO2000039672A2 true WO2000039672A2 (fr) 2000-07-06
WO2000039672A3 WO2000039672A3 (fr) 2000-11-16

Family

ID=9534443

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR1999/003242 WO2000039672A2 (fr) 1998-12-23 1999-12-21 Modele et procede d'implementation d'un agent rationnel dialogant, serveur et systeme multi-agent pour la mise en oeuvre

Country Status (11)

Country Link
US (1) US7376632B1 (fr)
EP (1) EP1141823A2 (fr)
JP (1) JP2002533827A (fr)
KR (1) KR100694734B1 (fr)
CN (1) CN1335959A (fr)
AU (1) AU773217B2 (fr)
BR (1) BR9916421A (fr)
CA (1) CA2356384A1 (fr)
FR (1) FR2787902B1 (fr)
IL (1) IL143812A0 (fr)
WO (1) WO2000039672A2 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007064496A1 (fr) * 2005-12-02 2007-06-07 Microsoft Corporation Modele conditionnel permettant la comprehension du langage naturel

Families Citing this family (209)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
EP1782366A2 (fr) * 2004-06-04 2007-05-09 Sap Ag Ensemble d'interfaces coherent derive d'un modele d'objets de commerce
JP4635486B2 (ja) * 2004-06-29 2011-02-23 ソニー株式会社 概念獲得装置及びその方法、並びにロボット装置及びその行動制御方法
FR2875919A1 (fr) * 2004-09-27 2006-03-31 France Telecom Agent rationnel dialoguant, systeme de dialogue intelligent l'utilisant, procede de pilotage d'un dialogue intelligent, et programme pour sa mise en oeuvre
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US8316344B2 (en) 2005-12-30 2012-11-20 Sap Ag Software model deployment units
US8448137B2 (en) * 2005-12-30 2013-05-21 Sap Ag Software model integration scenarios
US8522194B2 (en) * 2005-12-30 2013-08-27 Sap Ag Software modeling
US8402426B2 (en) 2005-12-30 2013-03-19 Sap Ag Architectural design for make to stock application software
US8326703B2 (en) * 2005-12-30 2012-12-04 Sap Ag Architectural design for product catalog management application software
US8370794B2 (en) 2005-12-30 2013-02-05 Sap Ag Software model process component
US8327319B2 (en) * 2005-12-30 2012-12-04 Sap Ag Software model process interaction
US8380553B2 (en) 2005-12-30 2013-02-19 Sap Ag Architectural design for plan-driven procurement application software
US8407664B2 (en) * 2005-12-30 2013-03-26 Sap Ag Software model business objects
US8396731B2 (en) 2005-12-30 2013-03-12 Sap Ag Architectural design for service procurement application software
US8321831B2 (en) * 2005-12-30 2012-11-27 Sap Ag Architectural design for internal projects application software
US8676617B2 (en) 2005-12-30 2014-03-18 Sap Ag Architectural design for self-service procurement application software
US8538864B2 (en) 2006-03-30 2013-09-17 Sap Ag Providing payment software application as enterprise services
US8396749B2 (en) 2006-03-30 2013-03-12 Sap Ag Providing customer relationship management application as enterprise services
US8438119B2 (en) 2006-03-30 2013-05-07 Sap Ag Foundation layer for services based enterprise software architecture
US8396761B2 (en) 2006-03-30 2013-03-12 Sap Ag Providing product catalog software application as enterprise services
US8326702B2 (en) 2006-03-30 2012-12-04 Sap Ag Providing supplier relationship management software application as enterprise services
US8442850B2 (en) 2006-03-30 2013-05-14 Sap Ag Providing accounting software application as enterprise services
US8321832B2 (en) 2006-03-31 2012-11-27 Sap Ag Composite application modeling
US8312416B2 (en) * 2006-04-13 2012-11-13 Sap Ag Software model business process variant types
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
GB0718214D0 (en) * 2007-09-19 2007-10-31 Ibm An apparatus for storing a logical statement
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US8401936B2 (en) 2007-12-31 2013-03-19 Sap Ag Architectural design for expense reimbursement application software
US8671032B2 (en) 2007-12-31 2014-03-11 Sap Ag Providing payment software application as enterprise services
US8671033B2 (en) * 2007-12-31 2014-03-11 Sap Ag Architectural design for personnel events application software
US8671034B2 (en) 2007-12-31 2014-03-11 Sap Ag Providing human capital management software application as enterprise services
US8315900B2 (en) 2007-12-31 2012-11-20 Sap Ag Architectural design for self-service procurement application software
US8510143B2 (en) 2007-12-31 2013-08-13 Sap Ag Architectural design for ad-hoc goods movement software
US8447657B2 (en) 2007-12-31 2013-05-21 Sap Ag Architectural design for service procurement application software
US20090171811A1 (en) * 2007-12-31 2009-07-02 Peter Markus A Architectural Design For Product Catalog Management Application Software
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
CN102016887A (zh) * 2008-05-01 2011-04-13 启创互联公司 用于用户驱动的语义网络和媒体合成的动态产生的方法、系统和计算机程序
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8285550B2 (en) * 2008-09-09 2012-10-09 Industrial Technology Research Institute Method and system for generating dialogue managers with diversified dialogue acts
US8352338B2 (en) 2008-09-18 2013-01-08 Sap Ag Architectural design for time recording application software
US8374896B2 (en) * 2008-09-18 2013-02-12 Sap Ag Architectural design for opportunity management application software
US8321250B2 (en) 2008-09-18 2012-11-27 Sap Ag Architectural design for sell from stock application software
US8315926B2 (en) 2008-09-18 2012-11-20 Sap Ag Architectural design for tax declaration application software
US8595077B2 (en) 2008-09-18 2013-11-26 Sap Ag Architectural design for service request and order management application software
US8380549B2 (en) 2008-09-18 2013-02-19 Sap Ag Architectural design for embedded support application software
US8359218B2 (en) * 2008-09-18 2013-01-22 Sap Ag Computer readable medium for implementing supply chain control using service-oriented methodology
US8386325B2 (en) 2008-09-18 2013-02-26 Sap Ag Architectural design for plan-driven procurement application software
US8401928B2 (en) 2008-09-18 2013-03-19 Sap Ag Providing supplier relationship management software application as enterprise services
US8326706B2 (en) 2008-09-18 2012-12-04 Sap Ag Providing logistics execution application as enterprise services
US8818884B2 (en) 2008-09-18 2014-08-26 Sap Ag Architectural design for customer returns handling application software
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US8321308B2 (en) 2008-12-03 2012-11-27 Sap Ag Architectural design for manual invoicing application software
US8321306B2 (en) * 2008-12-03 2012-11-27 Sap Ag Architectural design for selling project-based services application software
US8738476B2 (en) * 2008-12-03 2014-05-27 Sap Ag Architectural design for selling standardized services application software
US8401908B2 (en) 2008-12-03 2013-03-19 Sap Ag Architectural design for make-to-specification application software
US8311904B2 (en) 2008-12-03 2012-11-13 Sap Ag Architectural design for intra-company stock transfer application software
US20100153158A1 (en) * 2008-12-11 2010-06-17 Sap Ag Providing project management software application as enterprise services
WO2010067118A1 (fr) 2008-12-11 2010-06-17 Novauris Technologies Limited Reconnaissance de la parole associée à un dispositif mobile
US8671035B2 (en) 2008-12-11 2014-03-11 Sap Ag Providing payroll software application as enterprise services
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US8977584B2 (en) 2010-01-25 2015-03-10 Newvaluexchange Global Ai Llp Apparatuses, methods and systems for a digital conversation management platform
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9634855B2 (en) 2010-05-13 2017-04-25 Alexander Poltorak Electronic personal interactive device that determines topics of interest using a conversational agent
DE102010040641A1 (de) 2010-09-13 2012-03-15 Siemens Aktiengesellschaft Vorrichtung zur Verarbeitung von Daten in einem rechnergestützten Logiksystem sowie entsprechendes Verfahren
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US9275636B2 (en) 2012-05-03 2016-03-01 International Business Machines Corporation Automatic accuracy estimation for audio transcriptions
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
CN113470640B (zh) 2013-02-07 2022-04-26 苹果公司 数字助理的语音触发器
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
WO2014144579A1 (fr) 2013-03-15 2014-09-18 Apple Inc. Système et procédé pour mettre à jour un modèle de reconnaissance de parole adaptatif
CN105027197B (zh) 2013-03-15 2018-12-14 苹果公司 训练至少部分语音命令系统
WO2014197336A1 (fr) 2013-06-07 2014-12-11 Apple Inc. Système et procédé pour détecter des erreurs dans des interactions avec un assistant numérique utilisant la voix
WO2014197334A2 (fr) 2013-06-07 2014-12-11 Apple Inc. Système et procédé destinés à une prononciation de mots spécifiée par l'utilisateur dans la synthèse et la reconnaissance de la parole
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197335A1 (fr) 2013-06-08 2014-12-11 Apple Inc. Interprétation et action sur des commandes qui impliquent un partage d'informations avec des dispositifs distants
DE112014002747T5 (de) 2013-06-09 2016-03-03 Apple Inc. Vorrichtung, Verfahren und grafische Benutzerschnittstelle zum Ermöglichen einer Konversationspersistenz über zwei oder mehr Instanzen eines digitalen Assistenten
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
CN105265005B (zh) 2013-06-13 2019-09-17 苹果公司 用于由语音命令发起的紧急呼叫的系统和方法
AU2014306221B2 (en) 2013-08-06 2017-04-06 Apple Inc. Auto-activating smart responses based on activities from remote devices
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
AU2015266863B2 (en) 2014-05-30 2018-03-15 Apple Inc. Multi-command single utterance input method
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179588B1 (en) 2016-06-09 2019-02-22 Apple Inc. INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10599644B2 (en) 2016-09-14 2020-03-24 International Business Machines Corporation System and method for managing artificial conversational entities enhanced by social knowledge
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
JP7409628B2 (ja) * 2018-04-05 2024-01-09 株式会社サウスポイント 結婚式における音楽選曲のための自動選曲システム
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10504518B1 (en) 2018-06-03 2019-12-10 Apple Inc. Accelerated task performance
CN113112107A (zh) * 2020-01-13 2021-07-13 深圳顺丰泰森控股(集团)有限公司 中转场规划方法、装置、服务器及存储介质
JP2021182052A (ja) * 2020-05-18 2021-11-25 トヨタ自動車株式会社 エージェント連携装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0689147A2 (fr) * 1994-06-21 1995-12-27 Canon Kabushiki Kaisha Système et méthode pour le traitement de langage naturel

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7006881B1 (en) * 1991-12-23 2006-02-28 Steven Hoffberg Media recording device with remote graphic user interface
CN1169195A (zh) * 1995-01-23 1997-12-31 英国电讯有限公司 存取信息的方法和/或系统
US5913040A (en) * 1995-08-22 1999-06-15 Backweb Ltd. Method and apparatus for transmitting and displaying information between a remote network and a local computer
US6076082A (en) * 1995-09-04 2000-06-13 Matsushita Electric Industrial Co., Ltd. Information filtering method and apparatus for preferentially taking out information having a high necessity
US5931907A (en) * 1996-01-23 1999-08-03 British Telecommunications Public Limited Company Software agent for comparing locally accessible keywords with meta-information and having pointers associated with distributed information
US5995951A (en) * 1996-06-04 1999-11-30 Recipio Network collaboration method and apparatus
US6434567B1 (en) * 1996-07-30 2002-08-13 Carlos De La Huerga Method for specifying enterprise-wide database address formats
US6820093B2 (en) * 1996-07-30 2004-11-16 Hyperphrase Technologies, Llc Method for verifying record code prior to an action based on the code
US5819243A (en) * 1996-11-05 1998-10-06 Mitsubishi Electric Information Technology Center America, Inc. System with collaborative interface agent
WO1998030963A1 (fr) * 1997-01-14 1998-07-16 Benjamin Slotznick Systeme de calcul de dates d'evenements et de conversion entre differents systemes de calendriers, et agent intelligent permettant d'utiliser ce systeme
US7062500B1 (en) * 1997-02-25 2006-06-13 Intertrust Technologies Corp. Techniques for defining, using and manipulating rights management data structures
US5974412A (en) * 1997-09-24 1999-10-26 Sapient Health Network Intelligent query system for automatically indexing information in a database and automatically categorizing users
US6353824B1 (en) * 1997-11-18 2002-03-05 Apple Computer, Inc. Method for dynamic presentation of the contents topically rich capsule overviews corresponding to the plurality of documents, resolving co-referentiality in document segments
US6088731A (en) * 1998-04-24 2000-07-11 Associative Computing, Inc. Intelligent assistant for use with a local computer and with the internet
US5999182A (en) * 1998-05-11 1999-12-07 The Board Of Trustees Of The Leland Stanford Junior University Computational architecture for reasoning involving extensible graphical representations
US6144989A (en) * 1998-06-15 2000-11-07 Dejima, Inc. Adaptive agent-oriented software architecture
US7565397B2 (en) * 1998-06-15 2009-07-21 Sybase, Inc. Context reactive hints mechanism for natural language user interface
US6810392B1 (en) * 1998-07-31 2004-10-26 Northrop Grumman Corporation Method and apparatus for estimating computer software development effort
CN1151488C (zh) * 1998-10-02 2004-05-26 国际商业机器公司 通过一般分层对象进行有效语音导航的结构框架
US6278993B1 (en) * 1998-12-08 2001-08-21 Yodlee.Com, Inc. Method and apparatus for extending an on-line internet search beyond pre-referenced sources and returning data over a data-packet-network (DPN) using private search engines as proxy-engines
US6725425B1 (en) * 1998-12-08 2004-04-20 Yodlee.Com Method and apparatus for retrieving information from semi-structured, web-based data sources
US6802042B2 (en) * 1999-06-01 2004-10-05 Yodlee.Com, Inc. Method and apparatus for providing calculated and solution-oriented personalized summary-reports to a user through a single user-interface
US6859212B2 (en) * 1998-12-08 2005-02-22 Yodlee.Com, Inc. Interactive transaction center interface
US7200804B1 (en) * 1998-12-08 2007-04-03 Yodlee.Com, Inc. Method and apparatus for providing automation to an internet navigation application
WO2004068399A1 (fr) * 2003-01-31 2004-08-12 Matsushita Electric Industrial Co. Ltd. Dispositif de decision d'action predictif et procede de decision d'action

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0689147A2 (fr) * 1994-06-21 1995-12-27 Canon Kabushiki Kaisha Système et méthode pour le traitement de langage naturel

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
DEPAOLI F ET AL: "DEVELOPMENT OF A COLLABORATIVE APPLICATION IN CSDL" , PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS,US,LOS ALAMITOS, IEEE COMP. SOC. PRESS, VOL. CONF. 13, PAGE(S) 210-217 XP000399390 ISBN: 0-8186-3770-6 page 210, colonne de gauche, ligne 2 -page 211, colonne de gauche, ligne 34 *
LEAVITT J R R ET AL: "THE DIBBS BLACKBOARD CONTROL ARCHITECTURE AND ITS APPLICATION TO DISTRIBUTED NATURAL LANGUAGE PROCESSING" , PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON TOOLS FOR ARTIFICIAL INTELLIGENCE, HERNDON, NOV. 6 - 9, 1990, NR. CONF. 2, PAGE(S) 202 - 208 , INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS XP000236115 ISBN: 0-8186-2084-6 le document en entier *
MITCHELL R ET AL: "STRUCTURING FORMAL SPECIFICATIONS - A LESSON RELEARNED" MICROPROCESSORS AND MICROSYSTEMS,GB,IPC BUSINESS PRESS LTD. LONDON, vol. 18, no. 10, 1 décembre 1994 (1994-12-01), pages 593-598, XP000488047 ISSN: 0141-9331 *
SADEK M D ET AL: "Effective human-computer cooperative spoken dialogue: the AGS demonstrator" , PROCEEDINGS ICSLP 96. FOURTH INTERNATIONAL CONFERENCE ON SPOKEN LANGUAGE PROCESSING (CAT. NO.96TH8206), PROCEEDING OF FOURTH INTERNATIONAL CONFERENCE ON SPOKEN LANGUAGE PROCESSING. ICSLP '96, PHILADELPHIA, PA, USA, 3-6 OCT. 1996 , 1996, NEW YORK, NY, USA, IEEE, USA, PAGE(S) 546 - 549 VOL.1 XP002115169 ISBN: 0-7803-3555-4 cité dans la demande le document en entier *
WONG S T C: "PREFERENCE-BASED DECISION MAKING FOR COOPERATIVE KNOWLEDGE-BASED SYSTEMS" ACM TRANSACTIONS ON INFORMATION SYSTEMS, vol. 12, no. 4, 1 octobre 1994 (1994-10-01), pages 407-435, XP000498551 ISSN: 1046-8188 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007064496A1 (fr) * 2005-12-02 2007-06-07 Microsoft Corporation Modele conditionnel permettant la comprehension du langage naturel

Also Published As

Publication number Publication date
KR20010099904A (ko) 2001-11-09
IL143812A0 (en) 2002-04-21
CA2356384A1 (fr) 2000-07-06
JP2002533827A (ja) 2002-10-08
US7376632B1 (en) 2008-05-20
EP1141823A2 (fr) 2001-10-10
WO2000039672A3 (fr) 2000-11-16
CN1335959A (zh) 2002-02-13
BR9916421A (pt) 2001-12-11
KR100694734B1 (ko) 2007-03-14
AU773217B2 (en) 2004-05-20
AU1785100A (en) 2000-07-31
FR2787902A1 (fr) 2000-06-30
FR2787902B1 (fr) 2004-07-30

Similar Documents

Publication Publication Date Title
WO2000039672A2 (fr) Modele et procede d&#39;implementation d&#39;un agent rationnel dialogant, serveur et systeme multi-agent pour la mise en oeuvre
Chakrabarti et al. Artificial conversations for customer service chatter bots: Architecture, algorithms, and evaluation metrics
Frederiks et al. Information modeling: The process and the required competencies of its participants
O’Shea et al. Systems engineering and conversational agents
Stent et al. Natural language generation in interactive systems
Wilks et al. A prototype for a conversational companion for reminiscing about images
Stone Intention, interpretation and the computational structure of language
Maher et al. Chatbots & its techniques using AI: an review
Ferguson et al. Generic plan recognition for dialogue systems
Griol et al. Bringing context-aware access to the web through spoken interaction
Hwang et al. Robot dialog system in the context of hospital receptionist and its demonstration
CN114296547A (zh) 发起主动对话的方法、设备及存储介质
Arnold et al. An interactive concierge for independent living
Ferreira et al. Intelligent search agents using web-driven natural-language explanatory dialogs
Devi et al. ChatGPT: Comprehensive Study On Generative AI Tool
Prasad et al. Polarity Sentiment-Based Intelligent Chat Bot For Judicious Customer Service Escalation
Bhattacharjya et al. An Exploratory Study on Chatbots
Basnyat et al. Towards AI Conversing: FloodBot using Deep Learning Model Stacks
Guvindan Raju et al. Cognitive Virtual Admissions Counselor
Escobar-Grisales et al. Evaluation of effectiveness in conversations between humans and chatbots using parallel convolutional neural networks with multiple temporal resolutions
Cabrera Paraiso et al. A voice-enabled assistant in a multi-agent system for e-government services
Rao et al. Design & deployment of a smart chatbot using emerging technologies
Mejía et al. CHAT SPI: knowledge extraction proposal using DialogFlow for software process improvement in small and medium enterprises
Olusesi Human-Machine Interaction Using the City of San Antonio as a Case Study
Janapreethi et al. College Enquiry Chatbot

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 99816347.3

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2000 17851

Country of ref document: AU

Kind code of ref document: A

AK Designated states

Kind code of ref document: A2

Designated state(s): AU BR CA CN IL JP KR MX US

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

Designated state(s): AU BR CA CN IL JP KR MX US

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

WWE Wipo information: entry into national phase

Ref document number: 1999961137

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 143812

Country of ref document: IL

ENP Entry into the national phase

Ref document number: 2356384

Country of ref document: CA

Ref document number: 2356384

Country of ref document: CA

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: PA/a/2001/006431

Country of ref document: MX

Ref document number: 1020017007978

Country of ref document: KR

ENP Entry into the national phase

Ref document number: 2000 591502

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 17851/00

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 09869205

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1999961137

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020017007978

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 17851/00

Country of ref document: AU

WWG Wipo information: grant in national office

Ref document number: 1020017007978

Country of ref document: KR