EP3787849A1 - Method for controlling a plurality of robot effectors - Google Patents

Method for controlling a plurality of robot effectors

Info

Publication number
EP3787849A1
EP3787849A1 EP19734847.7A EP19734847A EP3787849A1 EP 3787849 A1 EP3787849 A1 EP 3787849A1 EP 19734847 A EP19734847 A EP 19734847A EP 3787849 A1 EP3787849 A1 EP 3787849A1
Authority
EP
European Patent Office
Prior art keywords
robot
action
effectors
primitives
rules
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
EP19734847.7A
Other languages
German (de)
French (fr)
Inventor
Jérôme MONCEAUX
Thibault Hervier
Aymeric MASURELLE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to EP24171738.8A priority Critical patent/EP4378638A2/en
Publication of EP3787849A1 publication Critical patent/EP3787849A1/en
Ceased legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0084Programme-controlled manipulators comprising a plurality of manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/0005Manipulators having means for high-level communication with users, e.g. speech generator, face recognition means
    • B25J11/001Manipulators having means for high-level communication with users, e.g. speech generator, face recognition means with emotions simulating means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/0052Gripping heads and other end effectors multiple gripper units or multiple end effectors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture

Definitions

  • the present invention relates to the field of communicating robots. More specifically, it relates to the management of the resources of said robot to control an operation of the communicating robot simulating an empathic intelligence allowing them to interact with one or more humans by actions that are not only slaves (the term "robot” having been imagined in 1920 by Czech Karel Capek inspired by the word “robota” meaning "slave” in Slavic languages).
  • Such a robot can take the form of a humanoid robot, an autonomous car or more simply an equipment having a communicating interface allowing bidirectional interaction with one or more humans, by multimodal messages (tactile, visual or sound) issued and received by the robot.
  • the European Patent EP1486300 B1 describes a behavior control system for a robot that operates autonomously, comprising: a plurality of behavioral description sections for describing the movements of the robot. a machine body of said robot; an external environment recognition section for recognizing an external environment of said machine body;
  • an internal state management section for managing an internal state of said robot in response to the recognized external environment and / or a result of executing a behavior
  • a behavior evaluation section for evaluating the performance of behaviors described in said behavior description sections in response to the external environment and / or the internal environment.
  • the internal state management section manages emotions, each of which is an index of the internal state in a hierarchical structure presenting a plurality of layers, and uses the emotions in a layer of primary emotions necessary for an individual preservation and another layer of secondary emotions that vary according to the excess / lack of primary emotions, and in further divides the primary emotions into layers comprising an innate or physiological reflective layer and an associated layer depending on the dimensions.
  • European Patent EP1494210 describing a voice communication system with a function for having a conversation with a conversation partner, comprising: voice recognition means for recognizing the voice of the conversation partner; conversation control means for controlling the conversation with the conversation partner on the basis of a recognition result of the voice recognition means; image recognition means for recognizing a face of the conversation partner; and
  • a search control means for searching for the existence of the conversation partner on the basis of one of the results or two results which are a recognition result of the image recognition means and a recognition result of the means of recognition;
  • the conversation control means continues the conversation when the speech content of the conversation partner obtained as recognition result of the voice recognition means is identical to the expected response content even if the search of the search control means fails.
  • solutions of the prior art dissociate the technical resources intended for the processing of the language on the one hand, and on the other hand the technical resources intended for the recognition process of the robot's environment by cameras and possibly other sensors and the control of the movements of the robot.
  • the patent EP1486300 does not provide for taking into account the verbal dimension of the interaction between the human and the robot, and thus does not allow to proceed, for example, to a natural learning of the robot during the interaction with the human.
  • Patent EP1494210 meanwhile only provides verbal interaction between the human and the robot to control artificial conversations.
  • the object of the present invention is to respond to these drawbacks by proposing, according to the most general acceptance of the invention, a method of controlling a plurality of effectors of a robot by a plurality of primitives constituted by parametric coded functions o said primitives being conditionally activated by actions selected by an action selection system o said action selection system:
  • the method is based on the association, at each step, of the coded objects with a sequence of characters corresponding to their semantic description, with in particular: i. a semantic description of said coded objects stored in the memory, composed of a character string representing a perception function of the robot and another character string representing a perceived object ii. a semantic description of said primitives, consisting of a character string representing a possible action of the robot and another optional character string representing the optional parameters of this action iii. a semantic description of said rules (102 to 106), composed of the combination of a character string representing the associated context and another character string representing the associated action.
  • said action selection system classifies the rules according to the proximity of the context of each of these rules with the context calculated from the content of the objects contained in the memory and selects the actions associated with the relevant rules with the context.
  • the method furthermore comprises steps of recording new rules associated with a new action, via a learning module, relying for example on voice recognition, gesture recognition or mimicry;
  • the method comprises a step of calculating, for each rule, an IS parameter which is recalculated after each execution of the associated action, the priority order of the actions selected by the action selection system being determined according to the value of the IS parameter associated with each of the actions; the method further comprises communication steps with other robots via a communication module and a shared server, the declarative memory of the robot's action selection system being periodically synchronized with the content of said robot. shared server.
  • the activation of the primitives by the actions is filtered by a resource manager guaranteeing the compatibility of the commands sent to the effectors;
  • the method further comprises: i. constant updating steps, in the background of internal state variables VEIx, according to the evolution of the objects stored in said memory (80). ii. steps of setting said action primitives (131 to 134), said perception functions (72 to 75) and said action selection module (100) according to the values of said internal state variables VEIx.
  • the invention also relates to a robot comprising a plurality of effectors controlled by a controller executing a method according to the invention.
  • a controller executing a method according to the invention.
  • FIG. 1 represents a hardware architecture of the invention
  • the robot comprises communication interface circuits (1) with sensors (2 to 5) for example:
  • Each sensor (2 to 5) is associated with a physical pilot circuit (12 to 15) "driver” integrated in the sensor or provided on the communication interface circuit (1).
  • the communication interface circuit (1) combines the preprocessing circuits (22 to 25) of the signals supplied by the sensors (2 to 5) to transmit the information to the main computer (30) or to dedicated computers (31 to 33). ).
  • Some pretreatment circuits (22 to 25) may be specialized circuits, for example image analysis circuits or speech recognition circuits.
  • the dedicated computers (31 to 33) receive the signals of certain sensors (2 to 5) as well as commands from the main computer (30) for calculating instructions which are transmitted to preprocessing circuits (51 to 53) for calculation. action parameters of an effector (41 to 43). These parameters are exploited by interface circuits (61 to 63) to supply the effectors (41 to 43) with the control signals, for example in the form of electrical signals modulated in PWM pulse width.
  • the main computer (30) is also associated with a communication module (36) for exchanging data with external resources, for example the Internet.
  • the effectors (41 to 43) are for example constituted by:
  • FIG. 2 represents the functional architecture of an exemplary embodiment of the robot.
  • the information from the sensors (2 to 5) provides information for calculating via digital perception functions (72 to 75) digital metadata, an image of the semantic representation that the robot makes of the world.
  • Each of these perception functions (72 to 75) receives pretreated data from one or more sensors (2 to 5) to calculate the metadata corresponding to a perception type.
  • a first perception function (72) calculates a distance between the robot and a detected object
  • a second perception function (73) performs an image recognition to characterize the detected objects
  • a third perception function (74) performs a voice recognition to restore a sequence of characters corresponding to the sentence said by a user
  • This digital metadata consists of objects coded in object language, for example in C # or C ++.
  • This metadata includes some or all of the following: a semantic description in the form of a sequence of characters, eg "I SEE ONE MAN 1 METER DISTANCE AND 20 DEGREES ON THE RIGHT
  • object-specific attributes for example, for a human "AGE, SEX, SIZE, etc.”
  • the set of coded objects corresponding to the selection functions is stored in a memory (80) whose content expresses the representation of the world as perceived by the robot.
  • processes (91 to 98) are applied in the background by condensation functions which extract data characteristic of each of said objects and group together coded objects sharing the same characteristic data. .
  • a first condensation function performs face recognition processing on the detected objects of human type, from the following objects:
  • object 1 also including a corresponding image file
  • a second condensation function performs the association treatment of a person with a recognized sound, from the following objects:
  • a third condensation function performs the association processing of the two objects, from the following recalculated objects:
  • the condensation treatments (91 to 98) are applied recursively to the contents of the memory (80) containing the representation of the world by the robot.
  • the system also includes a selection system action (“rule manager”) (100) which includes a declarative memory (101) in which a rule library (102 to 106) is stored associating a context (112 to 116) with an action (122 to 126).
  • rule manager includes a declarative memory (101) in which a rule library (102 to 106) is stored associating a context (112 to 116) with an action (122 to 126).
  • a first rule RI is constituted by a numerical sequence of type:
  • An action is materialized by a numerical sequence designating a tree of primitives (131 to 134) executed by the effectors of the robot, such as:
  • Action 1 "SEND A MESSAGE TO YOUR OWNER" corresponds to a unitary sequence consisting of a single primitive (131 to 134):
  • the action selection system (100) classifies the rules (102 to 105) according to the proximity of the context (112 to 115) of each of these rules to the context calculated from the content of the objects (81 to 88) contained in the memory (80), by a distance calculation in the N-dimensional space of the context.
  • This calculation periodically provides a subset (110) of rules (102 to 104) associated with actions (122 to
  • the list is optionally filtered according to a threshold value to form a subset of rules whose distance from the current context is less than this threshold value.
  • This subset (HO) is then ordered according to a Satisfaction Indicator (SI).
  • SI Satisfaction Indicator
  • each rule is assigned when executed at a variable numeric parameter IS.
  • the methods for determining this digital parameter IS will be explained below.
  • the subset (110) thus determined defines a set of ordered actions (122 to 124) associated with said rules (102 to 104) and used to control the operation of the effectors of the robot.
  • the execution of the actions (122 to 124) is performed via the activation of primitives (131 to 134) whose parameterization is determined by the content of said actions (amplitude of the displacement, address of the sound sequence, intensity of the sound sequence, ).
  • the primitives (131 to 134) designate meta-functions, resulting in a computer code whose execution is carried out by a set of commands (201 to 205) transmitted to software applications (211 to 215) or directly to effectors (41 to 43), optionally with parameters, for example:
  • Each primitive (131 to 134) is parameterized, if necessary with:
  • the activation of the primitives (131 to 134) is filtered by a resource manager (200) whose purpose is to prevent the sending of contradictory or impossible commands to the same effector (41). This filtering favors the activation of the primitives associated with the actions (122 to 124) having the highest IS parameter.
  • the resource manager (200) inhibits the action having the lowest IS parameter, and the parameterized primitive actually executed is that resulting from the action having the highest IS parameter.
  • the resource manager (200) calculates a new primitive from two primitives deemed incompatible, whose parameterization is calculated by weighting the settings of the two incompatible primitives according to the parameter IS associated with each of them and corresponds to thus to a compromise.
  • the recording of the rules (102 to 106) is performed by a voice learning.
  • a learning module (400) comprising a speech recognition and semantic analysis module analyzes the sentences pronounced by an operator, to extract actions and contexts defining a new rule (106).
  • the module builds and records a rule associating action "ACTIVATING A SOUND SIGNAL” in the context "YOU HEAR A NOISE EXCEEDING A LEVEL X”.
  • the learning module (400) also comprises kinetic recognition means for recognizing a gesture, for example the designation of an object.
  • the learning module (400) further comprises an image analysis module, to enable learning by gestures combined with spoken words.
  • the human designates an object in the field of vision of the robot's camera and pronounces the sentence "IF YOU SEE THIS #OBJECT, SEIZED", leads to the recording of the rule constituted by the action "SEIZE"
  • the learning module (400) comprises learning means by mimicry or recurrence: when the robot repeatedly records the same action associated with the same context, it triggers the recording of a new rule associating this action with this context.
  • the combinations of actions and contexts are constructed according to the value of the complicity parameter VEI 4 calculated for each pair of an action and a context, during interactions between the human and the robot.
  • Each rule (102 to 106) present in the declarative memory (101) is associated with a parameter IS (Satisfaction Indicator) which is recalculated after each implementation of the associated action (112 to 116), as a function of the current value of the VEI parameter 3 .
  • IS Servicefaction Indicator
  • VEI 3 If the value of VEI 3 is low, that is to say less than a reference value, then the IS parameter of the rule whose action has been executed is reduced.
  • the value of the parameter IS is used to order the actions (112 to 116) and to promote resource access by the resource manager (200) to the actions associated with the parameter IS having the highest value.
  • the rules (102 to 106) are stored in the local memory of a robot.
  • the declarative memory (101) of the robot's action selection system (100) is periodically synchronized with the contents of a server shared between a plurality of robots, via the communication module (36).
  • VEI X Internal State Variables
  • VEl ! is representative of the state of awakening or activation of the robot.
  • the value 0 corresponds to an inactivity of the robot where the robot is almost immobile and silent, with an appearance of falling asleep
  • the value 1 corresponds to an overexcitation state where the movements of the robot have a maximum amplitude, with a dilated pupil appearance for robots with an animated face, frequent and jerky movements ...
  • the value of the VE ⁇ parameter is for example calculated according to the evolution of the robot's environment: in case of stability of the information perceived by the sensors (2 to 5), and absence of human detected by the robot, the value will be low.
  • VEI 2 is representative of the state of surprise of the robot.
  • the value 0 corresponds to a nominal activity of the robot
  • the value 1 corresponds to punctual and abrupt variations of the effectors (sudden movements of the articulations, sound level varying abruptly, ...)
  • the parameter VEI 2 is for example calculated according to the temporal variations of the parameter VEl ! for example by calculating a derivative of VEl !
  • VEI 3 is representative of the state of apparent satisfaction of the robot.
  • the value 0 corresponds to a disappointed physical appearance of the robot (look directed mainly downwards, arm pointing downwards, ...)
  • the value 1 corresponds to a proud physical appearance of the robot (look directed mainly upwards, position of the joints giving a proud appearance, ...)
  • the parameter VEI 3 is for example calculated according to certain interactions between the human and the robot, such as:
  • VEI 4 is representative of the state of complicity between the robot and the humans with whom it interacts.
  • the value 0 corresponds to a low level of interaction and activation of the effectors
  • the value 1 corresponds to a strong activation of the effectors and a tendency to mimicry of the robot with the human with which it interacts, and a tendency to move the robot towards this human and orientation of the gaze of the robot towards this human .
  • This parameter can be calculated by means of coded control steps of user stimulation and acquisition of the effect induced on the user, to deduce the level of empathy according to the conformity between the stimulus and the acquired image.
  • the parameter VEI 4 is for example calculated as a function of the level of mimicry between the human and the robot, that is to say the rate of movement of the human reproducing the movements of the robot with a small time offset, or responsive to the movement of the robot, with a small time offset, or certain interactions between the human and the robot, such as:
  • VEI 5 is representative of the state of joy of the robot.
  • the value 0 corresponds to an appearance of sadness (downward gaze, drooping mouth area, neutral prosody, sagging joints, ...
  • the value 1 corresponds to a strong activation of the effectors and a tendency to smile and the emission of appropriate sounds.
  • the parameter VE 5 is for example calculated according to the detection of the smile on the face of the human and the result of a combination of the other parameters VE X.
  • the parameters VEI X are calculated by modules (181 to 185) from the data supplied by the module (80) determining the representation of the world by the robot according to the data acquired by the set of sensors (2). to 5) and the information representative of the state of the robot, for the determination of the synchronisms between the robot and the human.
  • the parameters VEI to VEI 5 are also calculated according to internal criteria, independent of the external environment of the robot. These criteria take into account, for example:
  • the frequency of the variations of the VEI value weights the amplitude of the variations
  • the result of the treatments provides periodically updated values for the VEI X parameters, which modulate the perception functions (71 to 75) and the primitives (131 to 134), as well as the behavior selection module (100).
  • the sound file S is selected according to the values of the parameters VEI to VEI 5 .
  • the calculation functions of the parameters IEV X may be determined by an initial characterization step of recording experimental data obtained by a process of subjecting people to a plurality of stimuli and associating with each of said stimuli corresponding to said perception functions, a level of perception [pleasure, satisfaction, awakening, surprise, ...]

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

The present invention relates to a method for controlling a plurality of effectors (41 to 43) of a robot by means of a plurality of primitives made up of parameterizable coded functions, o said primitives being activated conditionally by actions selected by an action selection system, the method being based on associating, in every step, coded objects with a sequence of characters corresponding to their semantic description, and comprising: i. a semantic description of the coded objects stored in the memory, made up of a string of characters representing a perception function of the robot and of another string of characters representing a perceived object, ii. a semantic description of the primitives, made up of a string of characters representing a possible action of the robot and of another, optional string of characters representing the optional parameters of this action, iii. a semantic description of rules made up of the combination of a string of characters representing the associated context and another string of characters representing the associated action. The invention also relates to a robot controlled according to this method.

Description

PROCEDE DE COMMANDE D'UNE PLURALITE D'EFFECTEURS D'UN ROBOT  METHOD FOR CONTROLLING A PLURALITY OF EFFECTORS OF A ROBOT
Domaine de 1 ' invention Field of the invention
La présente invention concerne le domaine des robots communicants. Plus précisément, elle concerne la gestion des ressources dudit robot pour commander un fonctionnement du robot communicant simulant une intelligence empathique leur permettant d'interagir avec un ou plusieurs humains par des actions qui ne sont pas uniquement esclaves (le terme « robot » ayant été imaginé en 1920 par le tchèque Karel Capek s'inspirant du mot « robota » signifiant « esclave » dans les langues slaves). The present invention relates to the field of communicating robots. More specifically, it relates to the management of the resources of said robot to control an operation of the communicating robot simulating an empathic intelligence allowing them to interact with one or more humans by actions that are not only slaves (the term "robot" having been imagined in 1920 by Czech Karel Capek inspired by the word "robota" meaning "slave" in Slavic languages).
Un tel robot peut prendre la forme d'un robot humanoïde, d'une voiture autonome ou plus simplement d'un équipement présentant une interface communicante permettant une interaction bidirectionnelle avec un ou plusieurs humains, par des messages multimodaux (tactiles, visuels ou sonores) émis et reçus par le robot. Such a robot can take the form of a humanoid robot, an autonomous car or more simply an equipment having a communicating interface allowing bidirectional interaction with one or more humans, by multimodal messages (tactile, visual or sound) issued and received by the robot.
Dans l'article « Measuring empathy for human and robot hand pain using electroencephalography » de Yutaka Suzuki, Lisa Galli, Ayaka Ikeda, Shoji Itakura & Michiteru Kitazaki paru dans « Scientific Reports 5, Article number: 15924 (2015) », les auteurs exposent le fonctionnement du cerveau humain, plus précisément sa réponse empathique, lorsqu'il perçoit un robot dans une situation évoquant une forme émotionnelle, par exemple de la douleur. Les auteurs de cette étude présentent à des volontaires soit la photographie d'une main humaine soit celle d'une main robotique, chacune dans une situation évoquant une douleur ou non (sur l'image présentée aux personnes participant à l'étude, une paire de ciseaux ouverte est affichée, pouvant ainsi potentiellement couper le doigt de la main affichée sur l'image). Traditionnellement univoque, la relation entre le robot et l'humain devient réciproque. Certains roboticiens sont tentés de présenter les robots comme des « émorobots » (ayant des émotions, un "cœur"), ce qui est déjà le cas au Japon avec le robot Pepper (nom commercial) ou en France avec le robot Nao (nom commercial). Alors que l'empathie artificielle est toujours une simulation, les fabricants de robots sont tentés de nous présenter des machines qui seraient capables d'avoir de vraies émotions. In Yutaka Suzuki's "Measuring empathy for human and robot hand pain using electroencephalography", Lisa Galli, Ayaka Ikeda, Shoji Itakura, and Michiteru Kitazaki published in "Scientific Reports 5, Article number: 15924 (2015)," the authors discuss the functioning of the human brain, more precisely its empathic response, when it perceives a robot in a situation evoking an emotional form, for example pain. The authors of this study present to volunteers either the photograph of a human hand or that of a robotic hand, each in a situation evoking a pain or not (on the image presented to the persons participating in the study, a pair scissors open is displayed, potentially potentially cutting the finger of the hand displayed on the image). Traditionally univocal, the relationship between the robot and the human becomes reciprocal. Some roboticists are tempted to present robots as "emorobots" (having emotions, a "heart"), which is already the case in Japan with the robot Pepper (trade name) or in France with the robot Nao (trade name ). While artificial empathy is always a simulation, robot manufacturers are tempted to introduce machines that would be able to have real emotions.
Etat de la technique State of the art
Afin de répondre à ce besoin, on a proposé le brevet européen délivré sous le numéro EP1486300 B1 décrivant un système de commande de comportement pour un robot qui fonctionne de façon autonome, comportant : une pluralité de sections de description de comportement pour décrire les mouvements d ' un corps de machine dudit robot ; une section de reconnaissance d'environnement extérieur pour reconnaître un environnement extérieur dudit corps de machine ; In order to meet this need, the European Patent EP1486300 B1 has been proposed which describes a behavior control system for a robot that operates autonomously, comprising: a plurality of behavioral description sections for describing the movements of the robot. a machine body of said robot; an external environment recognition section for recognizing an external environment of said machine body;
- une section de gestion d'état interne pour gérer un état interne dudit robot en réponse à 1 ' environnement extérieur reconnu et/ou un résultat de l'exécution d'un comportement ; et an internal state management section for managing an internal state of said robot in response to the recognized external environment and / or a result of executing a behavior; and
- une section d ' évaluation de comportement pour évaluer l'exécution de comportements décrits dans lesdites sections de description de comportement en réponse à l'environnement extérieur et/ou à l'environnement interne. a behavior evaluation section for evaluating the performance of behaviors described in said behavior description sections in response to the external environment and / or the internal environment.
La section de gestion d'état interne gère les émotions, chacune d'elles étant un indice de l'état interne dans une structure hiérarchique présentant une pluralité de couches, et utilise les émotions en une couche d'émotions primaires nécessaires pour une préservation individuelle et une autre couche d'émotions secondaires qui varient selon l'excès/le manque d'émotions primaires, et en outre divise les émotions primaires en couches comprenant une couche réfléchissante innée ou physiologique et une couche associée en fonction des dimensions. The internal state management section manages emotions, each of which is an index of the internal state in a hierarchical structure presenting a plurality of layers, and uses the emotions in a layer of primary emotions necessary for an individual preservation and another layer of secondary emotions that vary according to the excess / lack of primary emotions, and in further divides the primary emotions into layers comprising an innate or physiological reflective layer and an associated layer depending on the dimensions.
On connaît aussi le brevet européen délivré sous le numéro EP1494210 décrivant un système de communication vocale avec une fonction pour avoir une conversation avec un partenaire de conversation, comprenant : un moyen de reconnaissance vocale pour reconnaître la voix du partenaire de conversation ; un moyen de commande de conversation pour commander la conversation avec le partenaire de conversation sur la base d'un résultat de reconnaissance du moyen de reconnaissance vocale ; un moyen de reconnaissance d'image pour reconnaître un visage du partenaire de conversation ; et Also known is European Patent EP1494210 describing a voice communication system with a function for having a conversation with a conversation partner, comprising: voice recognition means for recognizing the voice of the conversation partner; conversation control means for controlling the conversation with the conversation partner on the basis of a recognition result of the voice recognition means; image recognition means for recognizing a face of the conversation partner; and
- un moyen de commande de recherche pour rechercher l'existence du partenaire de conversation sur la base de l'un des résultats ou des deux résultats que sont un résultat de reconnaissance du moyen de reconnaissance d'image et un résultat de reconnaissance du moyen de reconnaissance vocale, a search control means for searching for the existence of the conversation partner on the basis of one of the results or two results which are a recognition result of the image recognition means and a recognition result of the means of recognition; speech Recognition,
Le moyen de commande de conversation poursuit la conversation lorsque le contenu vocal du partenaire de conversation obtenu en tant que résultat de reconnaissance du moyen de reconnaissance vocale est identique au contenu de réponse attendu même si la recherche du moyen de commande de recherche échoue. Inconvénients de l'art antérieur The conversation control means continues the conversation when the speech content of the conversation partner obtained as recognition result of the voice recognition means is identical to the expected response content even if the search of the search control means fails. Disadvantages of prior art
Les solutions de l'art antérieur dissocient les ressources techniques destinées aux traitements du langage d'une part, et d'autre part les ressources techniques destinées aux traitements de reconnaissance de l'environnement du robot par des caméras et éventuellement d'autres capteurs et la commande des mouvements du robot. The solutions of the prior art dissociate the technical resources intended for the processing of the language on the one hand, and on the other hand the technical resources intended for the recognition process of the robot's environment by cameras and possibly other sensors and the control of the movements of the robot.
De ce fait, les solutions de l'art antérieur ne permettent pas de réaliser des tâches d'apprentissage enrichies, mélangeant des entrées et sorties sémantiques et des données perçues et actuations. As a result, the solutions of the prior art do not make it possible to carry out enriched learning tasks, mixing semantic inputs and outputs and perceived data and actuations.
En particulier, le brevet EP1486300 ne prévoit pas la prise en compte de la dimension verbale de l'interaction entre l'humain et le robot, et ainsi ne permet pas de procéder, par exemple, à un apprentissage naturel du robot lors de l'interaction avec l'humain. In particular, the patent EP1486300 does not provide for taking into account the verbal dimension of the interaction between the human and the robot, and thus does not allow to proceed, for example, to a natural learning of the robot during the interaction with the human.
Le brevet EP1494210 quant à lui ne prévoit qu'une interaction verbale entre l'humain et le robot pour commander des conversations artificielles. Patent EP1494210 meanwhile only provides verbal interaction between the human and the robot to control artificial conversations.
La juxtaposition de l'enseignement de ces deux documents ne permettrait pas d'obtenir une solution satisfaisante car les deux solutions n'utilisent pas les mêmes grammaires techniques et ne permettent pas de mélanger les informations verbales et les informations perçues par les capteurs du robot dans un même ensemble sémantique. The juxtaposition of the teaching of these two documents would not allow to obtain a satisfactory solution because the two solutions do not use the same technical grammars and do not allow to mix the verbal information and the information perceived by the sensors of the robot in the same semantic set.
Par ailleurs, l'état interne du robot correspondant à une « émotion » se traduit exclusivement par la sélection d'une action choisie parmi une collection d'actions associées à des émotions, ce qui limite considérablement les possibilités d'intelligence empathique en temps réel avec 1 ' humain . Moreover, the internal state of the robot corresponding to an "emotion" results exclusively in the selection of an action chosen from a collection of actions associated with emotions, which considerably limits the empathic intelligence possibilities in real time with the human.
Les solutions de l'art antérieur conduisent à des apparences émotionnelles figées, de manière faiblement réactive par rapport à l'attitude de l'humain en interaction avec le robot. La crédibilité de l'apparence émotionnelle est médiocre du fait de l'absence de modifications en temps réel, ce qui empêche de réduire la charge cognitive de l'humain en interaction avec le robot. The solutions of the prior art lead to fixed emotional appearances, in a weakly reactive manner with respect to the attitude of the human in interaction with the robot. The credibility of the emotional appearance is mediocre due to the lack of real-time modifications, which prevents the cognitive load of the human being from interacting with the robot.
Solution apportée par l'invention Solution provided by the invention
Le but de la présente invention est de répondre à ces inconvénients en proposant, selon l'acceptation la plus générale de l'invention, un procédé de commande d'une pluralité d'effecteurs d'un robot par une pluralité de primitives constituées par des fonctions codées paramétrables o lesdites primitives étant activées conditionnellement par des actions sélectionnées par un système de sélection d'actions o ledit système de sélection d'actions : The object of the present invention is to respond to these drawbacks by proposing, according to the most general acceptance of the invention, a method of controlling a plurality of effectors of a robot by a plurality of primitives constituted by parametric coded functions o said primitives being conditionally activated by actions selected by an action selection system o said action selection system:
* comportant une mémoire déclarative dans laquelle est enregistrée une bibliothèque dynamique de règles, chacune associant un contexte à une action * having a declarative memory in which is stored a dynamic library of rules, each associating a context with an action
* reposant sur une liste d'objets codés stockés dans une mémoire déterminant la représentation du monde par ledit robot o lesdits objets codés stockés dans la mémoire étant calculés par des fonctions de perception o lesdites fonctions de perception étant calculées à partir des signaux fournis par des capteurs dudit robot * based on a list of coded objects stored in a memory determining the representation of the world by said robot o said coded objects stored in the memory being calculated by perception functions o said perception functions being calculated from the signals supplied by sensors of said robot
caractérisé en ce que le procédé repose sur l'association, à chaque étape, des objets codés avec une séquence de caractères correspondant à leur description sémantique, avec en particulier : i. une description sémantique desdits objets codés stockés dans la mémoire, composée d'une chaîne de caractères représentant une fonction de perception du robot et d'une autre chaîne de caractères représentant un objet perçu ii. une description sémantique desdites primitives, composée d'une chaîne de caractères représentant une action possible du robot et d'une autre chaîne de caractères optionnelle représentant les paramètres optionnels de cette action iii. une description sémantique desdites règles (102 à 106), composée de la combinaison d'une chaîne de caractères représentant le contexte associé et d'une autre chaîne de caractères représentant l'action associée. characterized in that the method is based on the association, at each step, of the coded objects with a sequence of characters corresponding to their semantic description, with in particular: i. a semantic description of said coded objects stored in the memory, composed of a character string representing a perception function of the robot and another character string representing a perceived object ii. a semantic description of said primitives, consisting of a character string representing a possible action of the robot and another optional character string representing the optional parameters of this action iii. a semantic description of said rules (102 to 106), composed of the combination of a character string representing the associated context and another character string representing the associated action.
Avantageusement, ledit système de sélection d'action classifie les règles en fonction de la proximité du contexte de chacune de ces règles avec le contexte calculé à partir du contenu des objets contenus dans la mémoire et sélectionne les actions associées aux règles pertinentes avec le contexte. Advantageously, said action selection system classifies the rules according to the proximity of the context of each of these rules with the context calculated from the content of the objects contained in the memory and selects the actions associated with the relevant rules with the context.
Selon des variantes de mise en œuvre : le procédé comporte en outre des étapes d'enregistrement de nouvelles règles associées à une nouvelle action, par l'intermédiaire d'un module d'apprentissage, reposant par exemple sur de la reconnaissance vocale, de la reconnaissance de gestes ou du mimétisme ; According to implementation variants: the method furthermore comprises steps of recording new rules associated with a new action, via a learning module, relying for example on voice recognition, gesture recognition or mimicry;
- le procédé comporte une étape de calcul, pour chaque règle, d'un paramètre IS qui est recalculé après chaque réalisation de l'action associée, l'ordre de priorité des actions sélectionnées par le système de sélection d'action étant déterminé en fonction de la valeur du paramètre IS associé à chacune des actions ; le procédé comporte en outre des étapes de communication avec d'autres robots par l'intermédiaire d'un module de communication et d'un serveur partagé, la mémoire déclarative du système de sélection d'actions du robot étant périodiquement synchronisée avec le contenu dudit serveur partagé . the method comprises a step of calculating, for each rule, an IS parameter which is recalculated after each execution of the associated action, the priority order of the actions selected by the action selection system being determined according to the value of the IS parameter associated with each of the actions; the method further comprises communication steps with other robots via a communication module and a shared server, the declarative memory of the robot's action selection system being periodically synchronized with the content of said robot. shared server.
- 1 ' activation des primitives par les actions est filtrée par un gestionnaire de ressources garantissant la compatibilité des commandes envoyées aux effecteurs ; The activation of the primitives by the actions is filtered by a resource manager guaranteeing the compatibility of the commands sent to the effectors;
- le procédé comporte en outre : i. des étapes de mise à jour constante, en tâche de fond de variables d'état interne VEIx, en fonction de l'évolution des objets enregistrés dans ladite mémoire (80). ii. des étapes de paramétrage desdites primitives d'action (131 à 134), desdites fonctions de perception (72 à 75) et dudit module de sélection d'actions (100) en fonction des valeurs desdites variables d'état interne VEIx. the method further comprises: i. constant updating steps, in the background of internal state variables VEIx, according to the evolution of the objects stored in said memory (80). ii. steps of setting said action primitives (131 to 134), said perception functions (72 to 75) and said action selection module (100) according to the values of said internal state variables VEIx.
L'invention concerne aussi un robot comportant une pluralité d'effecteurs commandés par un contrôleur exécutant un procédé conforme à l'invention. Description détaillée d'un exemple non limitatif de The invention also relates to a robot comprising a plurality of effectors controlled by a controller executing a method according to the invention. Detailed description of a non-limiting example of
1 ' invention  The invention
La présente invention sera mieux comprise à la lecture de la description détaillée d'un exemple non limitatif de l'invention qui suit, se référant aux dessins annexés où : la figure 1 représente une architecture matérielle de l'invention la figure 2 représente une architecture fonctionnelle de l'invention The present invention will be better understood on reading the detailed description of a nonlimiting example of the invention which follows, with reference to the appended drawings in which: FIG. 1 represents a hardware architecture of the invention; FIG. functional of the invention
Architecture matérielle Hardware architecture
Le robot, selon l'exemple de réalisation décrit en figure 1, comporte des circuits d'interface de communication ( 1 ) avec des capteurs (2 à 5 ) par exemple : The robot, according to the exemplary embodiment described in FIG. 1, comprises communication interface circuits (1) with sensors (2 to 5) for example:
- un microphone - a microphone
- un réseau de microphone pour la localisation dans l'espace de la source sonore  - a microphone network for localization in the sound source space
- une caméra RGB  - a RGB camera
- une caméra thermique  - a thermal camera
- une caméra de profondeur  - a depth camera
- un capteur tactile  - a touch sensor
- une dalle tactile d'un écran  - a touch screen of a screen
- des capteurs de retour d'effort  - force feedback sensors
- des capteurs thermiques  - thermal sensors
- des capteurs de contact  - contact sensors
- un lecteur radio-fréquence  - a radio-frequency reader
- etc  - etc
Chaque capteur (2 à 5) est associé à un circuit pilote physique (12 à 15) « driver », intégré dans le capteur ou prévu sur le circuit d'interface de communication (1). Le circuit d'interface de communication (1) réunit les circuits de prétraitement (22 à 25) des signaux fournis par les capteurs (2 à 5) pour transmettre les informations au calculateur principal (30) ou à des calculateurs dédiés (31 à 33). Certains circuits de prétraitement (22 à 25) peuvent être constitués de circuits spécialisés, par exemple des circuits d'analyse d'image ou des circuits de reconnaissance vocale. Each sensor (2 to 5) is associated with a physical pilot circuit (12 to 15) "driver" integrated in the sensor or provided on the communication interface circuit (1). The communication interface circuit (1) combines the preprocessing circuits (22 to 25) of the signals supplied by the sensors (2 to 5) to transmit the information to the main computer (30) or to dedicated computers (31 to 33). ). Some pretreatment circuits (22 to 25) may be specialized circuits, for example image analysis circuits or speech recognition circuits.
Les calculateurs dédiés (31 à 33) reçoivent les signaux de certains capteurs (2 à 5) ainsi que des commandes provenant du calculateur principal (30) pour calculer des instructions qui sont transmises à des circuits de prétraitement (51 à 53) pour le calcul des paramètres d'action d'un effecteur (41 à 43). Ces paramètres sont exploités par des circuits d'interface (61 à 63) pour fournir aux effecteurs (41 à 43) les signaux de commande, par exemple sous forme de signaux électriques modulés en largeur d'impulsion PWM. The dedicated computers (31 to 33) receive the signals of certain sensors (2 to 5) as well as commands from the main computer (30) for calculating instructions which are transmitted to preprocessing circuits (51 to 53) for calculation. action parameters of an effector (41 to 43). These parameters are exploited by interface circuits (61 to 63) to supply the effectors (41 to 43) with the control signals, for example in the form of electrical signals modulated in PWM pulse width.
Le calculateur principal (30) est associé par ailleurs à un module de communication (36) pour l'échange de données avec des ressources externes, par exemple l'Internet. The main computer (30) is also associated with a communication module (36) for exchanging data with external resources, for example the Internet.
Les effecteurs (41 à 43) sont par exemple constitués par : The effectors (41 to 43) are for example constituted by:
- des moteurs - engines
- une articulation motorisée  - a motorized articulation
- des haut-parleurs  - speakers
- des écrans d'affichage  - display screens
- des leds  - leds
- des avertisseurs sonores  - audible alarms
- des diffuseurs d'odeur  - odor diffusers
- des actionneurs pneumatiques  - pneumatic actuators
- des circuits de télécommunications avec des équipements extérieurs, par exemple un serveur de paiement électronique ou un système domotique . Architecture fonctionnelle - Telecommunication circuits with external equipment, for example an electronic payment server or a home automation system. Functional architecture
La figure 2 représente l'architecture fonctionnelle d'un exemple de réalisation du robot. FIG. 2 represents the functional architecture of an exemplary embodiment of the robot.
Description des fonctions de perception Description of perception functions
Les informations provenant des capteurs (2 à 5) fournissent des informations permettant de calculer par l'intermédiaire de fonctions de perception (72 à 75) des métadonnées numériques, image de la représentation sémantique que le robot se fait du monde. The information from the sensors (2 to 5) provides information for calculating via digital perception functions (72 to 75) digital metadata, an image of the semantic representation that the robot makes of the world.
Chacune de ces fonctions de perception (72 à 75) reçoit des données prétraitées d'un ou plusieurs capteurs (2 à 5 ) pour calculer les métadonnées correspondant à un type de perception . Each of these perception functions (72 to 75) receives pretreated data from one or more sensors (2 to 5) to calculate the metadata corresponding to a perception type.
Par exemple , For example ,
- une première fonction de perception (72) calcule une distance entre le robot et un objet détecté,a first perception function (72) calculates a distance between the robot and a detected object,
- une deuxième fonction de perception (73) réalise une reconnaissance d'image pour caractériser les objets détectés a second perception function (73) performs an image recognition to characterize the detected objects
- une troisième fonction de perception (74) réalise une reconnaissance vocale pour restituer une séquence de caractères correspondant à la phrase dite par un utilisateur  a third perception function (74) performs a voice recognition to restore a sequence of characters corresponding to the sentence said by a user
Ces métadonnées numériques sont constituées par des objets codés en langage objet, par exemple en C# ou C++. Ces métadonnées comprennent tout ou partie des éléments suivants : une description sémantique sous forme de séquence de caractères, par exemple « JE VOIS UN HOMME À 1 MÈTRE DE DISTANCE ET À 20 DEGRÉS SUR LA DROITE » This digital metadata consists of objects coded in object language, for example in C # or C ++. This metadata includes some or all of the following: a semantic description in the form of a sequence of characters, eg "I SEE ONE MAN 1 METER DISTANCE AND 20 DEGREES ON THE RIGHT
- un type, par exemple « HUMAIN »  - a type, for example "HUMAN"
- une position dans l'espace tridimensionnel, par exemple « X=354, Y = 153, Z = 983 » a position in the three-dimensional space, for example "X = 354, Y = 153, Z = 983"
- une rotation dans l'espace caractérisé par un quaternion, par exemple « Q=[X=0, Y = 0, Z = 0, W = 1 ] » a rotation in space characterized by a quaternion, for example "Q = [X = 0, Y = 0, Z = 0, W = 1]"
- des attributs spécifiques à l'objet, par exemple, pour un humain « ÂGE, SEXE, TAILLE, etc »  - object-specific attributes, for example, for a human "AGE, SEX, SIZE, etc."
L'ensemble des objets codés correspondant aux fonctions de sélection est stocké dans une mémoire (80) dont le contenu exprime la représentation du monde telle que perçue par le robot. The set of coded objects corresponding to the selection functions is stored in a memory (80) whose content expresses the representation of the world as perceived by the robot.
Description des fonctions de condensation Description of the condensation functions
On applique à cet ensemble d'objets codés des traitements (91 à 98) en tâche de fond par des fonctions de condensation qui procèdent à l'extraction de données caractéristiques de chacun desdits objets et de regroupement d'objets codés partageant les mêmes données caractéristiques. For this set of coded objects, processes (91 to 98) are applied in the background by condensation functions which extract data characteristic of each of said objects and group together coded objects sharing the same characteristic data. .
Par exemple, une première fonction de condensation réalise le traitement de reconnaissance de visage sur les objets détectés de type humain, à partir des objets suivants : For example, a first condensation function performs face recognition processing on the detected objects of human type, from the following objects:
- Objet 1 : « JE VOIS UN HOMME À 1 MÈTRE DE DISTANCE ET À 20 DEGRÉS SUR LA DROITE », l'objet 1 comprenant également un fichier image correspondant - Object 1: "I SEE A MAN AT 1 METER DISTANCE AND 20 DEGREES ON THE RIGHT", object 1 also including a corresponding image file
- Objet 2 : « J'AI RECONNU PAUL » - Ce traitement modifie l'objet 1, qui devient- Object 2: "I RECOGNIZED PAUL" - This treatment modifies object 1, which becomes
« JE VOIS PAUL À 1 MÈTRE DE DISTANCE ET À 20 DEGRÉS SUR LA DROITE » . "I SEE PAUL 1 METER DISTANCE AND 20 DEGREES ON THE RIGHT".
Une deuxième fonction de condensation réalise le traitement d'association d'une personne avec un son reconnu, à partir des objets suivants : A second condensation function performs the association treatment of a person with a recognized sound, from the following objects:
- Objet 1 : « JE VOIS UN HOMME À 1 MÈTRE DE- Object 1: "I SEE A MAN AT 1 METER FROM
DISTANCE ET À 20 DEGRÉS SUR LA DROITE » DISTANCE AND 20 DEGREES ON RIGHT »
- Objet 3 : « J'AI RECONNU LA PHRASE 'BONJOUR' À - Object 3: "I RECOGNIZED THE 'HELLO' PHRASE AT
20 DEGRÉS SUR LA DROITE » 20 DEGREES ON THE RIGHT »
- Ce traitement modifie l'objet 1, qui devient - This treatment modifies object 1, which becomes
« JE VOIS UN HOMME À 1 MÈTRE DE DISTANCE ET À 20 DEGRÉS SUR LA DROITE QUI ME DIT 'BONJOUR' ». "I SEE A MAN 1 METER DISTANCE AND 20 DEGREES ON THE RIGHT WHICH SAYS 'HELLO'".
Une troisième fonction de condensation réalise le traitement d'association des deux objets, à partir des objets recalculés suivants : A third condensation function performs the association processing of the two objects, from the following recalculated objects:
« JE VOIS PAUL À 1 MÈTRE DE DISTANCE ET À 20 DEGRÉS SUR LA DROITE » "I SEE PAUL 1 METER DISTANCE AND 20 DEGREES ON THE RIGHT"
« JE VOIS UN HOMME À 1 MÈTRE DE DISTANCE ET À 20 DEGRÉS SUR LA DROITE QUI ME DIT 'BONJOUR' » pour modifier l'objet 1 ainsi « JE VOIS PAUL À 1 MÈTRE DE DISTANCE ET À 20 DEGRÉS SUR LA DROITE QUI ME DIT ' BONJOUR ' » "I SEE MAN A 1 METER DISTANCE AND 20 DEGREES ON THE RIGHT WHICH TOLD ME 'HELLO'" to change the object 1 so "I SEE PAUL 1 METER DISTANCE AND 20 DEGREES ON THE RIGHT THAT TELL ME ' HELLO ' "
Les traitements de condensation (91 à 98) sont appliqués de manière récursive sur le contenu de la mémoire (80) contenant la représentation du monde par le robot. The condensation treatments (91 to 98) are applied recursively to the contents of the memory (80) containing the representation of the world by the robot.
Description de la sélection des règles et des actions Description of the selection of rules and actions
Le système comporte par ailleurs un système de sélection action (« rule manager ») (100) qui comporte une mémoire déclarative (101) dans laquelle est enregistrée une bibliothèque de règles (102 à 106) associant un contexte (112 à 116) à une action (122 à 126). The system also includes a selection system action ("rule manager") (100) which includes a declarative memory (101) in which a rule library (102 to 106) is stored associating a context (112 to 116) with an action (122 to 126).
Par exemple, une première règle RI est constituée par une séquence numérique de type : For example, a first rule RI is constituted by a numerical sequence of type:
« SI TU ENTENDS UN HOMME TE DIRE BONJOUR, RÉPOND 'BONJOUR MONSIEUR' » et une deuxième règle R2 est constituée par une séquence numérique de type : "IF YOU HEAR A MAN SAY HELLO, RESPOND 'HELLO MONSIEUR'" and a second rule R2 consists of a numerical sequence of type:
« SI TU ENTENDS UN HUMAIN TE DIRE BONJOUR, ET QUE CET HUMAIN SE PRÉNOMME #PRÉNOM, RÉPOND 'BONJOUR #PRÉNOM' » et une troisième règle R3 est constituée par une séquence numérique de type : "IF YOU HEAR A HUMAN TEE SAY HELLO, AND THIS HUMAN BEGINS FIRST NAME #, RESPONDS 'HELLO # FIRST NAME'" and a third rule R3 consists of a numerical sequence of type:
« SI TU ENTENDS UN BRUIT ET QU'IL EST ENTRE 2HOO DU MATIN ET 4H00 DU MATIN, ENVOIE À TON PROPRIÉTAIRE UNE PHOTO DE CE QUE TU VOIS». "IF YOU HEAR A NOISE AND IT IS BETWEEN 2:00 OF THE MORNING AND 4:00 OF THE MORNING, SEND TO YOUR OWNER A PICTURE OF WHAT YOU SEE".
Une action (122 à 126) se matérialise par une séquence numérique désignant un arbre de primitives (131 à 134) exécutés par les effecteurs du robot, tel que : An action (122 to 126) is materialized by a numerical sequence designating a tree of primitives (131 to 134) executed by the effectors of the robot, such as:
Action 1 « ENVOI UN MESSAGE À TON PROPRIÉTAIRE » correspond à une séquence unitaire constituée par une seule primitive (131 à 134): Action 1 "SEND A MESSAGE TO YOUR OWNER" corresponds to a unitary sequence consisting of a single primitive (131 to 134):
- émission d'un message. - sending a message.
Action 2 « SOURIS » correspond à une séquence composite comprenant plusieurs primitives (131 à 134): Action 2 "MOUSE" corresponds to a composite sequence comprising several primitives (131 to 134):
- Gestion de la forme de la bouche, avec les paramètres « fichier de déformation FD2 » et « amplitude 0,2 » - Gestion de l'ouverture des yeux, avec le paramètre « ouverture 0,1 » - Management of the shape of the mouth, with the parameters "FD 2 deformation file " and "amplitude 0.2" - Management of the eye opening, with the parameter "opening 0.1"
- Emet un son caractéristique, avec les paramètres - Emits a characteristic sound, with the parameters
« fichier sonore S7 », « durée 2s » et"Sound file S 7" , "duration 2s" and
« intensité 0,2 » "Intensity 0.2"
Action 3 « EXPRIME LA TERREUR » correspond à une séquence composite comprenant plusieurs primitives (131 à 134) : Action 3 "EXPRESS TERROR" corresponds to a composite sequence comprising several primitives (131 to 134):
- agrandit la taille des yeux, avec les paramètres « fichier de déformation FD213 » et « amplitude 0,5 » - enlarges the size of the eyes, with the parameters "deformation file FD 213" and "amplitude 0.5"
- déplace ton bras de manière oscillante, avec les paramètres « fichier de déplacement FD123 » et- moves your arm in an oscillating way, with the parameters "displacement file FD 123" and
« amplitude 0,5 » "Amplitude 0.5"
- émet un son caractéristique, avec les paramètres - emits a characteristic sound, with the parameters
« fichier sonore S12 », « durée ls » et"Sound file S 12" , "duration ls" and
« intensité 10 ». "Intensity 10".
Action 4 « LÈVE LE BRAS » correspond à une séquence composite comprenant une seule primitive (131 à 134): Action 4 "LIFT THE ARM" corresponds to a composite sequence comprising a single primitive (131 to 134):
- déplace ton bras jusqu'à la verticale avec les paramètres « fichier de déplacement FD33 » et- move your arm to the vertical with the parameters "FD 33 displacement file " and
« amplitude 120». "Amplitude 120".
Le système de sélection d'actions (100) classe les règles (102 à 105) en fonction de la proximité du contexte (112 à 115) de chacune de ces règles avec le contexte calculé à partir du contenu des objets (81 à 88) contenus dans la mémoire (80), par un calcul de distance dans l'espace à N dimensions du contexte. The action selection system (100) classifies the rules (102 to 105) according to the proximity of the context (112 to 115) of each of these rules to the context calculated from the content of the objects (81 to 88) contained in the memory (80), by a distance calculation in the N-dimensional space of the context.
Ce calcul fournit périodiquement un sous-ensemble (110) de règles (102 à 104) associées à des actions (122 àThis calculation periodically provides a subset (110) of rules (102 to 104) associated with actions (122 to
124), sous forme d'une liste ordonnée par pertinence en fonction du calcul de distance précité. On filtre optionnellement la liste en fonction d'une valeur-seuil pour constituer un sous-ensemble de règles dont la distance avec le contexte courant est inférieure à cette valeur-seuil. 124), in the form of a list ordered by relevance in function of the aforementioned distance calculation. The list is optionally filtered according to a threshold value to form a subset of rules whose distance from the current context is less than this threshold value.
Ce sous-ensemble (HO) est ensuite ordonné en fonction d'un Indicateur de Satisfaction (IS). A cet effet, chaque règle est affectée lors de son exécution à un paramètre numérique variable IS. Les modalités de détermination de ce paramètre numérique IS seront exposées ci-après. This subset (HO) is then ordered according to a Satisfaction Indicator (SI). For this purpose, each rule is assigned when executed at a variable numeric parameter IS. The methods for determining this digital parameter IS will be explained below.
Le sous-ensemble (110) ainsi déterminé définit un ensemble d'actions (122 à 124) ordonnées, associées auxdites règles (102 à 104) et utilisées pour commander le fonctionnement des effecteurs du robot. The subset (110) thus determined defines a set of ordered actions (122 to 124) associated with said rules (102 to 104) and used to control the operation of the effectors of the robot.
Description de l'exécution des actions Description of the execution of the actions
L'exécution des actions (122 à 124) est effectuée via l'activation de primitives (131 à 134) dont le paramétrage est déterminé par le contenu desdites actions (amplitude du déplacement, adresse de la séquence sonore, intensité de la séquence sonore,...). The execution of the actions (122 to 124) is performed via the activation of primitives (131 to 134) whose parameterization is determined by the content of said actions (amplitude of the displacement, address of the sound sequence, intensity of the sound sequence, ...).
Les primitives (131 à 134) désignent des méta- fonctions, se traduisant par un code informatique dont l'exécution est réalisée par un ensemble de commandes (201 à 205) transmises à des applications logicielles (211 à 215) ou directement à des effecteurs (41 à 43), optionnellement avec des paramètres, par exemple : The primitives (131 to 134) designate meta-functions, resulting in a computer code whose execution is carried out by a set of commands (201 to 205) transmitted to software applications (211 to 215) or directly to effectors (41 to 43), optionally with parameters, for example:
- Primitive PI « émet un son caractéristique », avec les paramètres « fichier sonore S12 », « durée 1 seconde » et « intensité 10 » » est associé aux commandes suivantes : o Charger dans le pilote (61) le fichier sonore S12 - Primitive PI "emits a characteristic sound", with the parameters "sound file S 12" , "duration 1 second" and "intensity 10""is associated with the following commands: o Load the sound file S 12 into the driver (61)
o Ajuster le niveau de l'amplificateur à un niveau 10  o Adjust the level of the amplifier to a level 10
o Lire le fichier sonore S12 pendant une durée d'une seconde o Play the sound file S 12 for a duration of one second
o Effacer la mémoire du pilote (61).  o Clear the driver memory (61).
Chaque primitive (131 à 134) est paramétrée, le cas échéant avec : Each primitive (131 to 134) is parameterized, if necessary with:
- des paramètres propres, transmis par l'action sous forme d'arguments - own parameters, transmitted by the action in the form of arguments
- de paramètres additionnels et contextuels déterminés en fonction du paramètre numérique IS provenant de l'action  - additional and contextual parameters determined according to the numerical parameter IS coming from the action
- de paramètres additionnels VEIX qui seront explicités ci-après. - additional parameters VEI X which will be explained below.
L'activation des primitives (131 à 134) est filtrée par un gestionnaire de ressources (200) dont le but est d'empêcher l'envoi de commandes contradictoires ou impossibles à effectuer, à un même effecteur (41). Ce filtrage favorise l'activation des primitives associées aux actions (122 à 124) ayant le paramètre IS le plus élevé. The activation of the primitives (131 to 134) is filtered by a resource manager (200) whose purpose is to prevent the sending of contradictory or impossible commands to the same effector (41). This filtering favors the activation of the primitives associated with the actions (122 to 124) having the highest IS parameter.
Par exemple, si parmi la liste des actions sélectionnées (122 à 124), nous avons : For example, if from the list of selected actions (122 to 124), we have:
- une première action sélectionnée (122) conduisant à l'activation d'une primitive gérant le déplacement du bras du robot, avec un paramétrage impliquant un déplacement vers le haut - une deuxième action sélectionnée (123) conduisant à l'activation de la même primitive gérant le déplacement du bras du robot, mais avec un paramétrage impliquant un déplacement vers le bas alors les paramètres appliqués à cette même primitive gérant le déplacement du bras sont incompatibles, et le gestionnaire de ressources (200) inhibe l'action ayant le paramètre IS le plus faible, et la primitive paramétrée effectivement exécutée est celle résultant de l'action ayant le paramètre IS le plus élevé . a first selected action (122) leading to the activation of a primitive managing the movement of the robot arm, with parameterization involving an upward movement a second selected action (123) leading to the activation of the same primitive managing the movement of the robot arm, but with a parameterization involving a displacement downwards then the parameters applied to this same primitive managing the movement of the arm are incompatible. , and the resource manager (200) inhibits the action having the lowest IS parameter, and the parameterized primitive actually executed is that resulting from the action having the highest IS parameter.
Selon un autre exemple, le gestionnaire de ressources (200) calcule une nouvelle primitive à partir de deux primitives jugées incompatibles, dont le paramétrage est calculé par pondération des paramétrages des deux primitives incompatibles en fonction du paramètre IS associé à chacune d'elles et correspond ainsi à un compromis. According to another example, the resource manager (200) calculates a new primitive from two primitives deemed incompatible, whose parameterization is calculated by weighting the settings of the two incompatible primitives according to the parameter IS associated with each of them and corresponds to thus to a compromise.
Apprentissage des règles Learning rules
Selon un exemple de mise en œuvre de l'invention, l'enregistrement des règles (102 à 106) est réalisé par un apprentissage vocal. According to an exemplary implementation of the invention, the recording of the rules (102 to 106) is performed by a voice learning.
A cet effet, un module d'apprentissage (400) comprenant un module de reconnaissance vocale et d'analyse sémantique analyse les phrases prononcées par un opérateur, pour extraire des actions et des contextes définissant une nouvelle règle (106). For this purpose, a learning module (400) comprising a speech recognition and semantic analysis module analyzes the sentences pronounced by an operator, to extract actions and contexts defining a new rule (106).
Par exemple, si l'humain prononce une phrase telle que « si tu entends un bruit fort, active un signal sonore », le module construit et enregistre une règle associant l'action « ACTIVER UN SIGNAL SONORE » au contexte « TU ENTENDS UN BRUIT DÉPASSANT UN NIVEAU X». For example, if the human pronounces a sentence such as "if you hear a loud noise, activate a sound signal", the module builds and records a rule associating action "ACTIVATING A SOUND SIGNAL" in the context "YOU HEAR A NOISE EXCEEDING A LEVEL X".
Selon un autre exemple, le module d'apprentissage (400) comprend aussi des moyens de reconnaissance cinétique, pour reconnaître un geste, par exemple la désignation d'un objet. Dans ce cas, le module d'apprentissage (400) comporte en outre un module d'analyse d'image, pour permettre un apprentissage par des gestes combiné à des paroles énoncées. According to another example, the learning module (400) also comprises kinetic recognition means for recognizing a gesture, for example the designation of an object. In this case, the learning module (400) further comprises an image analysis module, to enable learning by gestures combined with spoken words.
Par exemple, l'humain désigne un objet dans le champs de vision de la caméra du robot et prononce la phrase « SI TU VOIS CET #OBJET, SAISI LE », conduit à l'enregistrement de la règle constituée par l'action «SAISIR L'OBJET » associée au contexte « VOIR OBJET '#OBJET' ». For example, the human designates an object in the field of vision of the robot's camera and pronounces the sentence "IF YOU SEE THIS #OBJECT, SEIZED", leads to the recording of the rule constituted by the action "SEIZE" The OBJECT 'associated with the context' SEE OBJECT '#OBJET' ".
Selon un troisième exemple, le module d'apprentissage (400) comprend des moyens d'apprentissage par mimétisme ou par récurrence : lorsque le robot enregistre de manière répétée une même action associée à un même contexte, il déclenche l'enregistrement d'une nouvelle règle associant cette action à ce contexte. According to a third example, the learning module (400) comprises learning means by mimicry or recurrence: when the robot repeatedly records the same action associated with the same context, it triggers the recording of a new rule associating this action with this context.
Par exemple, lorsque l'humain répond systématiquement « de rien » à « Merci » énoncé par le robot, le robot crée la règle associant l'action « DIRE DE RIEN» au contexte « UN HUMAIN DIT 'MERCI' ». For example, when the human systematically responds "of nothing" to "Thank you" stated by the robot, the robot creates the rule associating the action "DIRE DE NOTHING" with the context "A HUMAN DIT 'THANKS'".
Les combinaisons d'actions et de contextes sont construites en fonction de la valeur du paramètre de complicité VEI4 calculé pour chaque couple d'une action et d'un contexte, lors des interactions entre l'humain et le robot. The combinations of actions and contexts are constructed according to the value of the complicity parameter VEI 4 calculated for each pair of an action and a context, during interactions between the human and the robot.
Bien entendu, les règles (102 à 106) peuvent aussi être enregistrées par programmation. Calcul du paramètre IS Of course, the rules (102 to 106) can also be recorded programmatically. Calculation of the IS parameter
Chaque règle (102 à 106) présente dans la mémoire déclarative (101) est associée à un paramètre IS (Indicateur de Satisfaction) qui est recalculé après chaque réalisation de l'action (112 à 116) associée, en fonction de la valeur courante du paramètre VEI3. Each rule (102 to 106) present in the declarative memory (101) is associated with a parameter IS (Satisfaction Indicator) which is recalculated after each implementation of the associated action (112 to 116), as a function of the current value of the VEI parameter 3 .
- Si la valeur de VEI3 est élevée, c'est-à-dire supérieure à une valeur de référence, alors le paramètre IS de la règle dont l'action a été exécutée est augmentée - If the value of VEI 3 is high, that is to say greater than a reference value, then the parameter IS of the rule whose action has been executed is increased
- Si la valeur de VEI3 est faible, c'est-à-dire inférieure à une valeur de référence, alors le paramètre IS de la règle dont l'action a été exécutée est réduite. - If the value of VEI 3 is low, that is to say less than a reference value, then the IS parameter of the rule whose action has been executed is reduced.
La valeur du paramètre IS est utilisée pour ordonner les actions (112 à 116) et favoriser l'accès aux ressources par le gestionnaire de ressources (200) aux actions associées au paramètre IS présentant la valeur la plus élevée. The value of the parameter IS is used to order the actions (112 to 116) and to promote resource access by the resource manager (200) to the actions associated with the parameter IS having the highest value.
Mutualisation des connaissances Mutualization of knowledge
Dans les exemples susvisés, les règles (102 à 106) sont enregistrées dans la mémoire locale d'un robot. In the aforementioned examples, the rules (102 to 106) are stored in the local memory of a robot.
Selon une variante, plusieurs robots partagent une mémoire commune pour l'enregistrement des règles des robots, chaque robot conservant son propre paramètre IS. According to one variant, several robots share a common memory for recording the robot rules, each robot retaining its own IS parameter.
A titre d'exemple, la mémoire déclarative (101) du système de sélection d'actions (100) d'un robot est périodiquement synchronisée avec le contenu d'un serveur partagé entre une pluralité de robots, par l'intermédiaire du module de communication (36). By way of example, the declarative memory (101) of the robot's action selection system (100) is periodically synchronized with the contents of a server shared between a plurality of robots, via the communication module (36).
L'apprentissage d'une nouvelle règle (106) dans le système de sélection d'actions (100) d'un robot particulier vient enrichir le comportement des systèmes de sélection d'actions (100) de la pluralité de robots accédant au serveur, tout en conservant ses propres valeurs d'état interne VEI et son propre ordre de priorité des règles (102 à 106), en fonction de son propre indicateur IS. Learning a new rule (106) in the stock selection system (100) of a particular robot enriches the behavior of the stock selection systems (100) of the plurality of robots accessing the server, while retaining its own VEI internal state values and its own order of precedence of the rules (102 to 106), according to its own IS flag.
Description du calcul des paramètres VEI Description of the calculation of the VEI parameters
Les paramètres VEIX (Variables d'État Interne) sont des variables comprises entre 0 et 1 représentatives de l'état interne du robot : The parameters VEI X (Internal State Variables) are variables between 0 and 1 representative of the internal state of the robot:
VEl! est représentative de l'état d'éveil ou d'activation du robot. VEl ! is representative of the state of awakening or activation of the robot.
- La valeur 0 correspond à une inactivité du robot où le robot est quasiment immobile et silencieux, avec une apparence d'endormissement- The value 0 corresponds to an inactivity of the robot where the robot is almost immobile and silent, with an appearance of falling asleep
- La valeur 1 correspond à un état de surexcitation où les mouvements du robot présentent une amplitude maximale, avec une apparence de pupille dilatée pour les robots présentant un visage animé, mouvements fréquents et saccadés... - The value 1 corresponds to an overexcitation state where the movements of the robot have a maximum amplitude, with a dilated pupil appearance for robots with an animated face, frequent and jerky movements ...
o La valeur du paramètre VE^ est par exemple calculé en fonction de l'évolution de l'environnement du robot : en cas de stabilité des informations perçues par les capteurs (2 à 5), et d'absence d'humain détecté par le robot, la valeur sera faible . o The value of the VE ^ parameter is for example calculated according to the evolution of the robot's environment: in case of stability of the information perceived by the sensors (2 to 5), and absence of human detected by the robot, the value will be low.
o en cas de modifications rapides de l'environnement détecté par les capteurs (2 à 5 ) ou en cas de détection de la présence d'un humain, la valeur du paramètre VE! sera augmentée . o in case of rapid changes in the environment detected by the sensors (2 to 5) or in case of detection of the presence of a human, the value of parameter VE ! will be increased.
VEI2 est représentative de l'état de surprise du robot . VEI 2 is representative of the state of surprise of the robot.
- La valeur 0 correspond à une activité nominale du robot - The value 0 corresponds to a nominal activity of the robot
- La valeur 1 correspond à des variations ponctuelles et brusques des effecteurs (mouvements brusques des articulations, niveau sonore variant brusquement,...)  - The value 1 corresponds to punctual and abrupt variations of the effectors (sudden movements of the articulations, sound level varying abruptly, ...)
o Le paramètre VEI2 est par exemple calculé en fonction des variations temporelles du paramètre VEl!, par exemple par un calcul d'une dérivée de VEl! o The parameter VEI 2 is for example calculated according to the temporal variations of the parameter VEl ! for example by calculating a derivative of VEl !
VEI3 est représentative de l'état de satisfaction apparente du robot . VEI 3 is representative of the state of apparent satisfaction of the robot.
- La valeur 0 correspond à une apparence physique déçue du robot (regard dirigé principalement vers le bas, bras dirigée vers le bas,...) - The value 0 corresponds to a disappointed physical appearance of the robot (look directed mainly downwards, arm pointing downwards, ...)
- La valeur 1 correspond à une apparence physique fière du robot (regard dirigé principalement vers le haut, position des articulations donnant une apparence fière,...)  - The value 1 corresponds to a proud physical appearance of the robot (look directed mainly upwards, position of the joints giving a proud appearance, ...)
o Le paramètre VEI3 est par exemple calculé en fonction de certaines interactions entre l'humain et le robot, telles que : o The parameter VEI 3 is for example calculated according to certain interactions between the human and the robot, such as:
La détection d'une expression faciale telle que le sourire ou la colère La durée de certaines interactions Detection of a facial expression such as a smile or anger The duration of certain interactions
L'accomplissement d'un processus interne du robot.  The accomplishment of an internal process of the robot.
VEI4 est représentative de l'état de complicité entre le robot et les humains avec lesquels il interagit. VEI 4 is representative of the state of complicity between the robot and the humans with whom it interacts.
- La valeur 0 correspond à un faible niveau d'interaction et d'activation des effecteurs- The value 0 corresponds to a low level of interaction and activation of the effectors
- La valeur 1 correspond à une forte activation des effecteurs et une tendance au mimétisme du robot avec l'humain avec lequel il interagit, et une tendance au déplacement du robot en direction de cet humain et d'orientation du regard du robot vers cet humain. - The value 1 corresponds to a strong activation of the effectors and a tendency to mimicry of the robot with the human with which it interacts, and a tendency to move the robot towards this human and orientation of the gaze of the robot towards this human .
Ce paramètre peut être calculé grâce à des étapes de commande de fonctions codées de stimulations de l'utilisateur et d'acquisition de l'effet induit sur l'utilisateur, pour déduire le niveau d'empathie en fonction de la conformité entre le stimuli et l'image acquise. This parameter can be calculated by means of coded control steps of user stimulation and acquisition of the effect induced on the user, to deduce the level of empathy according to the conformity between the stimulus and the acquired image.
- Le paramètre VEI4 est par exemple calculé en fonction du niveau de mimétisme entre l'humain et le robot, c'est-à-dire le taux de mouvement de l'humain reproduisant les mouvements du robot avec un faible décalage temporel, ou réagissant de manière prévue au mouvement du robot, avec un faible décalage temporel, ou de certaines interactions entre l'humain et le robot, telles que : The parameter VEI 4 is for example calculated as a function of the level of mimicry between the human and the robot, that is to say the rate of movement of the human reproducing the movements of the robot with a small time offset, or responsive to the movement of the robot, with a small time offset, or certain interactions between the human and the robot, such as:
o La détection d'un contact physique de l'humain avec le robot.  o Detection of a physical contact of the human with the robot.
VEI5 est représentative de l'état de joie du robot. - La valeur 0 correspond à une apparence de tristesse (regard dirigé vers le bas, zone buccale tombante, prosodie neutre, articulations affaissées ,... VEI 5 is representative of the state of joy of the robot. - The value 0 corresponds to an appearance of sadness (downward gaze, drooping mouth area, neutral prosody, sagging joints, ...
- La valeur 1 correspond à une forte activation des effecteurs et une tendance au sourire et à l'émission de sons appropriés.  - The value 1 corresponds to a strong activation of the effectors and a tendency to smile and the emission of appropriate sounds.
o Le paramètre VE5 est par exemple calculé en fonction de la détection du sourire sur le visage de l'humain et le résultat d'une combinaison des autres paramètres VEX. o The parameter VE 5 is for example calculated according to the detection of the smile on the face of the human and the result of a combination of the other parameters VE X.
De façon générale, les paramètres VEIX sont calculés par des modules (181 à 185) à partir des données fournies par le module (80) déterminant la représentation du monde par le robot en fonction des données acquises par l'ensemble des capteurs (2 à 5) et les informations représentatives de l'état du robot, pour la détermination des synchronismes entre le robot et l'humain. In general, the parameters VEI X are calculated by modules (181 to 185) from the data supplied by the module (80) determining the representation of the world by the robot according to the data acquired by the set of sensors (2). to 5) and the information representative of the state of the robot, for the determination of the synchronisms between the robot and the human.
Les paramètres VEI à VEI5 sont également calculés en fonction de critères internes, indépendant de l'environnement extérieur du robot. Ces critères prennent par exemple en compte : The parameters VEI to VEI 5 are also calculated according to internal criteria, independent of the external environment of the robot. These criteria take into account, for example:
- la durée de maintien d'un paramètre VEI à un niveau constant, provoque une évolution vers une valeur de référence the duration of keeping a parameter VEI at a constant level causes a change towards a reference value
- la fréquence des variations de la valeur VEI pondère l'amplitude des variations  - the frequency of the variations of the VEI value weights the amplitude of the variations
- la saturation de l'impact d'un facteur déclenchant influant un paramètre VEI  - the saturation of the impact of a triggering factor influencing an IEV parameter
Le résultat des traitements fournit des valeurs périodiquement mises à jour pour les paramètres VEIX, qui modulent les fonctions de perception (71 à 75) et les primitives (131 à 134), ainsi que le module de sélection de comportements ( 100 ) . The result of the treatments provides periodically updated values for the VEI X parameters, which modulate the perception functions (71 to 75) and the primitives (131 to 134), as well as the behavior selection module (100).
Par exemple : For example :
- La vitesse d'un moteur est proportionnelle à la valeur du paramètre VEI - The speed of a motor is proportional to the value of the VEI parameter
- Le fichier sonore S est sélectionné en fonction des valeurs des paramètres VEI à VEI5. - The sound file S is selected according to the values of the parameters VEI to VEI 5 .
Les fonctions de calcul des paramètres VEIX peuvent être déterminées par une étape initiale de caractérisation consistant à enregistrer des données expérimentales obtenues par un processus consistant à soumettre des personnes à une pluralité de stimuli et à associer à chacun desdits stimuli correspondants auxdites fonctions de perception, un niveau de perception [plaisir, satisfaction, éveil, surprise, ...] · The calculation functions of the parameters IEV X may be determined by an initial characterization step of recording experimental data obtained by a process of subjecting people to a plurality of stimuli and associating with each of said stimuli corresponding to said perception functions, a level of perception [pleasure, satisfaction, awakening, surprise, ...]

Claims

Revendications claims
1 - Procédé de commande d'une pluralité d'effecteurs (41 à 43) d'un robot par une pluralité de primitives (131 à 134) constituées par des fonctions codées paramétrables o lesdites primitives (131 à 134) étant activées conditionnellement par des actions (122 à 124) sélectionnées par un système de sélection d'actions (100) o ledit système de sélection d'actions (100) : 1 - Method for controlling a plurality of effectors (41 to 43) of a robot by a plurality of primitives (131 to 134) constituted by parameterizable coded functions where said primitives (131 to 134) are conditionally activated by actions (122 to 124) selected by an action selection system (100) or said stock selection system (100):
* comportant une mémoire déclarative (101) dans laquelle est enregistrée une bibliothèque dynamique de règles (102 à 106), chacune associant un contexte (112 à 116) à une action (122 à 126) * having a declarative memory (101) in which is stored a dynamic library of rules (102 to 106), each associating a context (112 to 116) to an action (122 to 126)
* reposant sur une liste d'objets codés (81 à 88) stockés dans une mémoire (80) déterminant la représentation du monde par ledit robot o lesdits objets codés (81 à 88) stockés dans la mémoire (80) étant calculés par des fonctions de perception (72 à 75) o lesdites fonctions de perception (72 à 75) étant calculées à partir des signaux fournis par des capteurs (2 à 5 ) dudit robot * based on a list of coded objects (81 to 88) stored in a memory (80) determining the representation of the world by said robot o said coded objects (81 to 88) stored in the memory (80) being calculated by functions of perception (72 to 75) where said perception functions (72 to 75) being calculated from the signals supplied by sensors (2 to 5) of said robot
caractérisé en ce que le procédé repose sur l'association, à chaque étape, des objets codés avec une séquence de caractères correspondant à leur description sémantique, comprenant : i. une description sémantique desdits objets codés (81 à 88) stockés dans la mémoire (80), composée d'une chaîne de caractères représentant une fonction de perception du robot et d'une autre chaîne de caractères représentant un objet perçu ii. une description sémantique desdites primitivescharacterized in that the method relies on the association, at each step, of the coded objects with a sequence of characters corresponding to their semantic description, comprising: i. a semantic description of said coded objects (81 to 88) stored in the memory (80), composed of a character string representing a perception function of the robot and another string of characters representing a perceived object ii. a semantic description of said primitives
(131 à 134), composée d'une chaîne de caractères représentant une action possible du robot et d'une autre chaîne de caractères optionnelle représentant les paramètres optionnels de cette action iii. une description sémantique desdites règles(131 to 134), composed of a character string representing a possible action of the robot and another optional character string representing the optional parameters of this action iii. a semantic description of the rules
(102 à 106), composée de la combinaison d'une chaîne de caractères représentant le contexte associé (112 à 116) et d'une autre chaîne de caractères représentant l'action associée (122 à 126). (102-106), composed of the combination of a character string representing the associated context (112-116) and another character string representing the associated action (122-126).
2 - Procédé de commande d'une pluralité d'effecteurs (41 à 43) d'un robot selon la revendication 1 caractérisé en ce que ledit système de sélection d'action (100) classifie les règles (102 à 106) en fonction de la proximité du contexte (112 à 116) de chacune de ces règles avec le contexte calculé à partir du contenu des objets (81 à 88) contenus dans la mémoire (80) et sélectionne les actions (122 à 124) associées aux règles pertinentes avec le contexte (102 à 104) . 2 - A method of controlling a plurality of effectors (41 to 43) of a robot according to claim 1 characterized in that said action selection system (100) classifies the rules (102 to 106) according to the proximity of the context (112 to 116) of each of these rules with the context calculated from the contents of the objects (81 to 88) contained in the memory (80) and selects the actions (122 to 124) associated with the relevant rules with the context (102 to 104).
3 - Procédé de commande d'une pluralité d'effecteurs (41 à 43) d'un robot selon la revendication 1 caractérisé en ce qu'il comporte en outre des étapes d'enregistrement de nouvelles règles (106) associées à une nouvelle action (116), par l'intermédiaire d'un module d'apprentissage (400), par une application de reconnaissance vocale, de reconnaissance de gestes ou du mimétisme. 3 - A method of controlling a plurality of effectors (41 to 43) of a robot according to claim 1 characterized in that it further comprises steps of recording new rules (106) associated with a new action (116), through a learning module (400), by a voice recognition application, gesture recognition or mimicry.
4 - Procédé de commande d'une pluralité d'effecteurs (41 à 43) d'un robot selon la revendication 1 caractérisé en ce qu'il comporte une étape de calcul, pour chaque règle (102 à 106), d'un paramètre IS qui est recalculé après chaque réalisation de l'action (122 à 126) associée, l'ordre de priorité des actions (122 à 124) sélectionnées par le système de sélection d'action (100) étant déterminé en fonction de la valeur du paramètre IS associé à chacune des actions . 4 - A method of controlling a plurality of effectors (41 to 43) of a robot according to claim 1 characterized in that it comprises a step of calculating, for each rule (102 to 106), a parameter IS that is recalculated after each accomplishment of the associated action (122 to 126), the priority order of the actions (122 to 124) selected by the action selection system (100) being determined according to the value of the parameter IS associated with each of the actions.
5 - Procédé de commande d'une pluralité d'effecteurs (41 à 43) d'un robot selon la revendication 1 caractérisé en ce qu'il comporte en outre des étapes de communication avec d'autres robot par l'intermédiaire d'un module de communication (36) et d'un serveur partagé, la mémoire déclarative (101) du système de sélection d'actions (100) du robot étant périodiquement synchronisée avec le contenu dudit serveur partagé. 5 - A method of controlling a plurality of effectors (41 to 43) of a robot according to claim 1 characterized in that it further comprises communication steps with other robots via a communication module (36) and a shared server, the declarative memory (101) of the robot's action selection system (100) being periodically synchronized with the content of said shared server.
6 - Procédé de commande d'une pluralité d'effecteurs (41 à 43) d'un robot selon la revendication 1 caractérisé en ce que l'activation des primitives (131 à 134) par les actions (122 à 124) est filtrée par un gestionnaire de ressources (200) assurant la compatibilité des commandes envoyées aux effecteurs (41 à 43). 6 - A method of controlling a plurality of effectors (41 to 43) of a robot according to claim 1 characterized in that the activation of the primitives (131 to 134) by the actions (122 to 124) is filtered by a resource manager (200) ensuring the compatibility of the commands sent to the effectors (41 to 43).
7 - Procédé de commande d'une pluralité d'effecteurs (41 à 43) d'un robot selon la revendication 1 caractérisé en ce qu'il comporte en outre : i. des étapes de mise à jour constante, en tâche de fond de variables d'état interne VEIx, en fonction de l'évolution des objets enregistrés dans ladite mémoire (80). ii. des étapes de paramétrage desdites primitives d'action (131 à 134), desdites fonctions de perception (72 à 75) et dudit module de sélection d'actions (100) en fonction des valeurs desdites variables d'état interne VEIx. 8 - Robot comportant une pluralité d'effecteurs commandé par un contrôleur exécutant un procédé conforme à l'une au moins des revendications précédentes. 7 - A method of controlling a plurality of effectors (41 to 43) of a robot according to claim 1 characterized in that it further comprises: i. constant updating steps, in the background of internal state variables VEIx, according to the evolution of the objects stored in said memory (80). ii. steps of setting said action primitives (131 to 134), said perception functions (72 to 75) and said action selection module (100) according to the values of said internal state variables VEIx. 8 - Robot comprising a plurality of effectors controlled by a controller executing a method according to at least one of the preceding claims.
EP19734847.7A 2018-05-04 2019-04-26 Method for controlling a plurality of robot effectors Ceased EP3787849A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP24171738.8A EP4378638A2 (en) 2018-05-04 2019-04-26 Method for controlling a plurality of effectors of a robot

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1853868A FR3080926B1 (en) 2018-05-04 2018-05-04 METHOD FOR CONTROLLING A PLURALITY OF EFFECTORS OF A ROBOT
PCT/FR2019/050983 WO2019211552A1 (en) 2018-05-04 2019-04-26 Method for controlling a plurality of robot effectors

Related Child Applications (1)

Application Number Title Priority Date Filing Date
EP24171738.8A Division EP4378638A2 (en) 2018-05-04 2019-04-26 Method for controlling a plurality of effectors of a robot

Publications (1)

Publication Number Publication Date
EP3787849A1 true EP3787849A1 (en) 2021-03-10

Family

ID=62816784

Family Applications (2)

Application Number Title Priority Date Filing Date
EP19734847.7A Ceased EP3787849A1 (en) 2018-05-04 2019-04-26 Method for controlling a plurality of robot effectors
EP24171738.8A Pending EP4378638A2 (en) 2018-05-04 2019-04-26 Method for controlling a plurality of effectors of a robot

Family Applications After (1)

Application Number Title Priority Date Filing Date
EP24171738.8A Pending EP4378638A2 (en) 2018-05-04 2019-04-26 Method for controlling a plurality of effectors of a robot

Country Status (6)

Country Link
US (1) US12011828B2 (en)
EP (2) EP3787849A1 (en)
JP (1) JP7414735B2 (en)
CA (1) CA3102196A1 (en)
FR (1) FR3080926B1 (en)
WO (1) WO2019211552A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11513795B2 (en) * 2020-06-24 2022-11-29 Dell Products L.P. Systems and methods for firmware-based user awareness arbitration

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002283259A (en) * 2001-03-27 2002-10-03 Sony Corp Operation teaching device and operation teaching method for robot device and storage medium
JP2002361582A (en) 2001-06-05 2002-12-18 Sony Corp Robot power supplying system and robot
CN100509308C (en) * 2002-03-15 2009-07-08 索尼公司 Robot behavior control system, behavior control method, and robot device
JP2004220458A (en) 2003-01-17 2004-08-05 Taku Obata Automatic programming for machinery according to daily language and deductive inference engine
JP4048492B2 (en) * 2003-07-03 2008-02-20 ソニー株式会社 Spoken dialogue apparatus and method, and robot apparatus
JP4560078B2 (en) 2007-12-06 2010-10-13 本田技研工業株式会社 Communication robot
US20110178619A1 (en) * 2007-12-21 2011-07-21 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Security-activated robotic tasks
FR2963132A1 (en) 2010-07-23 2012-01-27 Aldebaran Robotics HUMANOID ROBOT HAVING A NATURAL DIALOGUE INTERFACE, METHOD OF USING AND PROGRAMMING THE SAME
US8971572B1 (en) * 2011-08-12 2015-03-03 The Research Foundation For The State University Of New York Hand pointing estimation for human computer interaction
FR2989209B1 (en) * 2012-04-04 2015-01-23 Aldebaran Robotics ROBOT FOR INTEGRATING NATURAL DIALOGUES WITH A USER IN HIS BEHAVIOR, METHODS OF PROGRAMMING AND USING THE SAME
WO2014138925A1 (en) * 2013-03-15 2014-09-18 Interaxon Inc. Wearable computing apparatus and method
EP2933067B1 (en) * 2014-04-17 2019-09-18 Softbank Robotics Europe Method of performing multi-modal dialogue between a humanoid robot and user, computer program product and humanoid robot for implementing said method
US10936050B2 (en) * 2014-06-16 2021-03-02 Honda Motor Co., Ltd. Systems and methods for user indication recognition
US9626001B2 (en) * 2014-11-13 2017-04-18 International Business Machines Corporation Speech recognition candidate selection based on non-acoustic input
JP2017220191A (en) 2016-06-03 2017-12-14 洋彰 宮崎 Artificial intelligence carrying out autonomous processing of problem by combination of procedures
CN107030691B (en) * 2017-03-24 2020-04-14 华为技术有限公司 Data processing method and device for nursing robot
US10456912B2 (en) * 2017-05-11 2019-10-29 King Fahd University Of Petroleum And Minerals Dynamic multi-objective task allocation
US10235128B2 (en) * 2017-05-19 2019-03-19 Intel Corporation Contextual sound filter
US11345040B2 (en) * 2017-07-25 2022-05-31 Mbl Limited Systems and methods for operating a robotic system and executing robotic interactions
US10511808B2 (en) * 2018-04-10 2019-12-17 Facebook, Inc. Automated cinematic decisions based on descriptive models

Also Published As

Publication number Publication date
US20220009082A1 (en) 2022-01-13
WO2019211552A1 (en) 2019-11-07
FR3080926B1 (en) 2020-04-24
FR3080926A1 (en) 2019-11-08
JP2021523472A (en) 2021-09-02
CA3102196A1 (en) 2019-11-07
JP7414735B2 (en) 2024-01-16
EP4378638A2 (en) 2024-06-05
US12011828B2 (en) 2024-06-18

Similar Documents

Publication Publication Date Title
CN110291478B (en) Driver Monitoring and Response System
JP6815486B2 (en) Mobile and wearable video capture and feedback platform for the treatment of mental illness
CN106457563B (en) Humanoid robot and method for executing dialogue between humanoid robot and user
Vinola et al. A survey on human emotion recognition approaches, databases and applications
Zhang et al. Intelligent facial emotion recognition and semantic-based topic detection for a humanoid robot
US9875445B2 (en) Dynamic hybrid models for multimodal analysis
WO2017215297A1 (en) Cloud interactive system, multicognitive intelligent robot of same, and cognitive interaction method therefor
US11113890B2 (en) Artificial intelligence enabled mixed reality system and method
EP2834811A1 (en) Robot capable of incorporating natural dialogues with a user into the behaviour of same, and methods of programming and using said robot
Raudonis et al. Evaluation of human emotion from eye motions
CN110737335B (en) Interaction method and device of robot, electronic equipment and storage medium
KR101984283B1 (en) Automated Target Analysis System Using Machine Learning Model, Method, and Computer-Readable Medium Thereof
CN116188642A (en) Interaction method, device, robot and storage medium
Maroto-Gómez et al. Active learning based on computer vision and human–robot interaction for the user profiling and behavior personalization of an autonomous social robot
KR102396794B1 (en) Electronic device and Method for controlling the electronic device thereof
EP3787849A1 (en) Method for controlling a plurality of robot effectors
Yu Robot behavior generation and human behavior understanding in natural human-robot interaction
CN115358365A (en) Method, device, electronic equipment and storage medium for realizing general artificial intelligence
CN111971670B (en) Generating a response in a dialog
US20240335952A1 (en) Communication robot, communication robot control method, and program
Thompson et al. Emotibot: An Interactive Tool for Multi-Sensory Affect Communication
WO2023017753A1 (en) Learning device, learning method, and program
Lee et al. Human robot social interaction framework based on emotional episodic memory
Chiba et al. Cluster-based approach to discriminate the user’s state whether a user is embarrassed or thinking to an answer to a prompt
JP4355823B2 (en) Information processing device for facial expressions

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20201104

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

RIN1 Information on inventor provided before grant (corrected)

Inventor name: MONCEAUX, JEROME

Inventor name: HERVIER, THIBAULT

Inventor name: MASURELLE, AYMERIC

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
APBK Appeal reference recorded

Free format text: ORIGINAL CODE: EPIDOSNREFNE

APBN Date of receipt of notice of appeal recorded

Free format text: ORIGINAL CODE: EPIDOSNNOA2E

APBR Date of receipt of statement of grounds of appeal recorded

Free format text: ORIGINAL CODE: EPIDOSNNOA3E

APAF Appeal reference modified

Free format text: ORIGINAL CODE: EPIDOSCREFNE

APBT Appeal procedure closed

Free format text: ORIGINAL CODE: EPIDOSNNOA9E

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20240423