EP2197632A1 - Robot capable of exchanging behaviour-coding computer programs - Google Patents

Robot capable of exchanging behaviour-coding computer programs

Info

Publication number
EP2197632A1
EP2197632A1 EP08786975A EP08786975A EP2197632A1 EP 2197632 A1 EP2197632 A1 EP 2197632A1 EP 08786975 A EP08786975 A EP 08786975A EP 08786975 A EP08786975 A EP 08786975A EP 2197632 A1 EP2197632 A1 EP 2197632A1
Authority
EP
European Patent Office
Prior art keywords
robot
computer program
behavior
computer
equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP08786975A
Other languages
German (de)
French (fr)
Inventor
Bruno Maisonnier
Fabien Bardinet
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.)
Aldebaran SAS
Original Assignee
Aldebaran Robotics SA
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 Aldebaran Robotics SA filed Critical Aldebaran Robotics SA
Publication of EP2197632A1 publication Critical patent/EP2197632A1/en
Withdrawn 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/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39254Behaviour controller, robot have feelings, learns behaviour
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39371Host and robot controller

Definitions

  • the invention relates to a robot comprising storage means arranged to store at least one computer program which, when executed, causes the robot to act according to a behavior.
  • the behaviors of the robot may correspond to the activation of one or more motors for controlling members of the robot, triggering one or more computer applications to trigger for example the playing a musical track, or taking a photograph when the robot has an integrated camera, and taking into account external stimuli detected by sensors.
  • the computer programs stored in the storage means then allow the robot to act according to such behaviors when they are executed, possibly in response to stimuli received by the robot.
  • the invention relates more particularly to a robot as described above whose behavior is likely to change over time.
  • the problem solved by the invention is to improve the evolution capabilities of the robot.
  • the problem solved is to allow an evolution of the robot in time permanently, so as to better simulate the evolution of a living being, and to make the robot much more interesting in time.
  • the robot comprises loading means capable of loading from a remote computer equipment, a computer program which, when executed, causes the robot to act according to a behavior, and suitable recording means registering the computer program thus loaded in said storage means.
  • the robot can therefore perform new behaviors and thus continuously extend its range of behaviors. Therefore, its evolution is ensured by the invention and, if the loaded program is able to make the robot act according to a new behavior, it will perform new actions.
  • the loading means are arranged to transmit to the remote equipment a loading request to trigger the loading of the computer program from the remote equipment.
  • the request includes data relating to the actions that can be performed by the robot.
  • the computer program to be loaded may depend on the robot's action capabilities. It will then be possible to make the new behaviors loaded by the robot all compatible with the capabilities of the robot.
  • the robot preferably comprises at least one memory for storing evolution parameters, and the loading means are further arranged to transmit the request according to the evolution parameters.
  • the evolution parameters preferably include subscription data determining the number of requests that can be transmitted to the remote device.
  • the loading means are advantageously arranged to automatically trigger the loading of the computer program.
  • the robot may comprise behavior generating means arranged for the robot to perform, when they are activated, behaviors, the computer program being able, at runtime, to act the robot according to at least one behavior of the robot. activating said behavior generating means. This allows in particular to generate new movements of the robot, or reactions to new stimuli.
  • said behavior generating means preferably comprise moving parts controlled by motors, and the computer program may be able to make the robot act according to at least one behavior by activating at least one of said motors so as to move at least one one of the moving parts.
  • the robot can also include applications in which the computer program is able to operate the robot according to at least one behavior by activating at least one of said applications.
  • the robot may also include transmission means arranged to trigger the transmission of the computer program stored in the storage means to the remote equipment.
  • transmission means arranged to trigger the transmission of the computer program stored in the storage means to the remote equipment.
  • the invention also relates to a robot comprising storage means arranged to store at least one computer program which, at runtime, causes the robot to act according to at least one behavior, the robot being characterized in that it comprises transmission means arranged to trigger the transmission of the computer program stored in the storage means to a remote device, so as to allow the loading of the computer program from the remote device by the loading means of a robot as described above .
  • the invention also relates to a system comprising a robot as described above, and a computer equipment comprising storage means arranged to store computer programs able, at runtime, to make the robot act according to at least one behavior. , computer programs thus stored in the storage means, and transmission means arranged to transmit the computer program to the robot when the loading from the remote equipment is triggered by the loading means of the robot.
  • the remote computing equipment comprises selection means arranged to determine whether the robot is capable of performing the behavior coded by the computer program to be loaded to the robot.
  • the new behaviors loaded by the robot are all compatible with the capabilities of the robot.
  • the selection means are able to determine whether the robot is capable of performing the behavior coded by the computer program to be loaded to the robot according to the data of the request.
  • the invention also relates to a method for developing a robot comprising steps in which:
  • the robot loads from a remote computer equipment, a computer program capable of causing the robot to act according to a behavior
  • the robot records in storage means, the computer program thus loaded, so that the robot can act according to the behavior when the computer program is executed.
  • the step in which the robot loads the computer program comprises steps in which:
  • the robot transmits a request to the remote computer equipment
  • the computer equipment transmits the computer program to the robot in response to the request.
  • the step in which the computer equipment transmits the computer program to the robot in response to the request comprises steps in which: the computer equipment analyzes the request so as to determine whether the robot is able to execute the program computer science;
  • the computer equipment transmits the computer program if the robot is able to execute it.
  • the previously described method preferably comprises steps in which: a first robot stores in storage means the computer program which, when executed, causes the first robot to act according to a behavior;
  • the first robot transmits the computer program to a remote device
  • the remote equipment stores the computer program in storage means
  • a second robot loads the computer program thus transmitted from the remote equipment.
  • the robot can execute the computer program thus loaded so as to perform the behavior.
  • FIG. 1 represents a robot according to one embodiment of the invention
  • FIG. 2 shows a detailed embodiment of the central unit of the robot described with reference to FIG.1;
  • FIG. 3 represents the loading of a computer program coding for a behavior by the robot illustrated in FIG. 1 from a remote device;
  • FIG. 4 represents a robot community according to the invention that can exchange computer programs coding for a behavior
  • FIG. 5 represents another embodiment of the central unit of the robot described with reference to FIG. 1.
  • a robot 1 comprises one or more moving parts 2a to 2e, and a set of sensors 23a to 23f.
  • the parts mobiles 2a to 2e correspond to the members of a human.
  • the movable parts 2a and 2d correspond to arms of the robot 1, the moving parts 2b and 2c to legs, and the second part to a head. All moving parts are able to be moved by means of joints 3a to 3e comprising respective motors.
  • the engines of the joints 3a to 3e are activated, they set moving parts 2a to 2e, so that the robot 1 can perform different behaviors.
  • a behavior of the robot 1 can also be achieved by one or more applications 4.
  • the application 4 may correspond to the fact, for the robot, to take a digital photograph with an integrated digital device, to perform a recognition of face by a face recognition application, or any other application involving an action without necessarily moving the moving parts 2a to 2e.
  • the achievement of a behavior of the robot 1 may also correspond to a reaction to stimuli picked up by the sensors 23a to 23f.
  • the central unit 5 is described in more detail on the IF G. 2.
  • CPU 5 includes processors and memories not shown for executing sets of computer program instructions. It also includes a not shown operating system. The components described later interact with known manner in itself with the processors and memories to perform the functions described.
  • the central unit also comprises a database of behaviors 6.
  • This database of computer programs 7 able to make robot 1 act according to behaviors.
  • These computer programs 7 include instructions which, when executed by the robot's processors, trigger a particular activation of the joints 3a to 3e, which causes movements of the moving parts 2a to 2e, or processes the information from the sensors. 23a to 23f. They can also trigger the activation of the applications 4. Therefore, when a computer program 7 of the database 6 is executed, the robot 1 performs a particular behavior associated with the computer program 7.
  • the central unit 5 also comprises an artificial intelligence unit 8 which cooperates with the database 6 to determine the behavior that the robot 1 must have at a given moment, that is to say the computer program 7 which must to be executed at a given moment.
  • the artificial intelligence unit includes an artificial intelligence computer program known per se and allows a selection of appropriate behaviors according to the external stimuli captured by sensors of robot 1, or according to a preprogrammed behavior objective.
  • the central unit 5 also comprises data exchange means 9 arranged to transmit data from the robot 1 to a remote computer equipment, and to receive data from this remote computer equipment.
  • These data exchange means comprise for example a WiFi wireless network communication card, or a wired network communication card. In this way, data can be exchanged by a transmission channel 10 to the outside of the robot and from outside the robot.
  • the central unit 5 also comprises a recording module 22 which makes it possible to recover the data received by the data exchange means 9 for storing them in the database 6.
  • the robot 1 transmits a request 1 1 to a remote computer equipment 1 2.
  • the remote computing equipment comprises processors and devices. memories not shown for executing sets of computer program instructions. The components described hereinafter interact in a manner known per se with the processors and the memories to perform the described functions.
  • the request 1 1 aims to receive remote equipment 1 2 a new computer program to equip the robot with a new behavior.
  • the request 1 1 notably comprises an identifier of the robot 1.
  • the request 1 1 is received at the remote equipment 1 2 which also comprises wired or wireless data transmission means adapted to the data transmission means 9 of the robot.
  • the request 1 1 is then analyzed by behavior selection means 1 3.
  • These behavior selection means 14 read the identifier of the request 1 1 so as to identify the robot 1. Thanks to this identifier, the selection means 1 3 determine, thanks to a first database 14, the technical characteristics of the robot 1 having transmitted the request 1 1 so that the new behavior is adapted to the actions achievable by the robot 1.
  • the request 11 may also include data relating to the actions achievable by the robot.
  • This data is for example in the form of a list of components of the robot 1 that can be activated during the execution of a computer program.
  • This list may for example comprise an identifier of the sensors 23a to 23f, and / or moving parts 2a-2e, and / or applications 4.
  • the selection means 1 3 will identify that the robot 1 does not include a knee joint and will only select leg behaviors that do not include movement at the knee joint. The selection means 1 3 thus make it possible to adapt the new behaviors to the physical characteristics of robot 1 which sends requests 1 1.
  • the selection means 1 3 recover from a behavior database 1 5, a computer program for the robot 1 to act according to a behavior.
  • the behavior database 1 5 comprises computer programs 1 6 which include instructions which, when executed by the robot's processors, trigger robot behaviors.
  • the computer programs 1 6 likely to be loaded by the robot 1 may also include computer modules which the robot 1 needs for perform functions called by certain instructions of the computer program 1 6.
  • the computer program 1 6 selected it is transmitted 1 7 by the remote device 1 2 to the robot 1 having issued the request 1 1.
  • the computer program is then received by the robot through the data exchange means 9.
  • the recording means 22 then causes the computer program 166 to be saved in the database 6. Therefore, the computer program 1 6 is accessible by the artificial intelligence unit 8 so that the robot 1 performs a new behavior corresponding to the instructions included in the computer program 1 6.
  • this new behavior can be a particular activation of the joints 3a to 3e, which causes movements of the moving parts 2a to 2e. They can also trigger the activation of the applications 4. Therefore, when the new computer program 1 6 of the database 6 is executed, the robot 1 performs this new particular behavior associated with the computer program 1 6.
  • the computer programs 1 6 of the database 1 5 of the remote equipment 1 2 are received from robots 1a and 1b forming, with the robot 1, a community of compatible robots.
  • the robots 1a and 1b comprise a database 6a and 6b comprising computer programs which, at runtime, respectively allow the robots 1a and 1b to perform behaviors by activation of the motors of their joints or their applications.
  • the robots 1 a and 1 b also comprise each transmission means arranged to transmit these
  • the robot 1 transmits one or more computer program from its database 6a to the equipment 1 2
  • the robot 1b transmits one or more computer program from its database 6b to the equipment 1 2.
  • These computer programs are stored in the database 1 5 of the remote equipment 1 2, and are then accessible by the robot 1 through a request as described above.
  • the robots 1 a and 1 b can be arranged as the robot 1 previously described to receive new computer programs coding for new behaviors from the remote equipment 1 2.
  • the robot 1 can be arranged as robots 1a and 1b and allow the transmission of computer programs 7 stored in the database 6.
  • the requests 11 may be triggered periodically automatically by the robot 1.
  • instructions are issued, for example in the artificial intelligence unit 5, for triggering requests 11 a certain number of times per day, for example 3 times.
  • the robot evolves too strongly and uncontrolled by its owner.
  • the number of requests 1 1 transmitted by the robot 1 is determined by a subscription to the remote equipment 1 2. To do this, it is programmed, for example in a memory area 1 9 of the central unit 5, instructions for triggering requests 1 1 a number of times equal to a dynamic parameter that can be modified according to the subscription. The subscription is then made by the holder of robot 1 who subscribes to the remote equipment 1 2, for example by means of a Web interface, for a given number of requests. Once the remote equipment 1 2 has received these subscription instructions, it transmits the subscription parameter to the robot 1 so that the number of requests to the remote equipment 1 2 is limited to this parameter. The subscription parameter 20 is stored in the memory area 1 9.
  • the remote device 1 2 When a request 1 1 is sent by the robot 1, the remote device 1 2 then compares the number of requests already issued and accepts the transmission of a program 1 6 only if the maximum number of requests determined by the subscription is not reached. If a program 1 6 is transmitted to the robot 1, the remote device 1 2 decrements a request counter to take into account the program 1 6 transmitted. Furthermore, beyond the number of requests 11 that can be transmitted by the robot 1, the type of requests 11 transmitted can also be preprogrammed in the form of a life objective of the robot or be subject to a request. subscription. For example, it is possible to pre-program in robot 1, the fact that the life objective of robot 1 is to be a robot dancer. Therefore, the requests 11 of the robot 1 may be limited to requests concerning dance behaviors, or music. The objective of life is for example stored as a parameter 21 in the memory zone 19 of the robot 1.
  • the subscription parameters 20 and the life objective parameters 21 then form evolution parameters determining the evolution of the robot 1.
  • the selection means 13 may, when they identify the robot 1, identify that the robot 1 is a robot dancer, and select firstly the computer programs 16 coding for behaviors of dance.
  • the artificial intelligence unit 8 then makes it possible to automatically trigger the transmission of a request 11 and therefore the loading of a computer program 16 of the database 15 of the equipment 12 according to the subscriptions and the objectives of life preprogrammed robot 1.
  • the computer program transmitted for example by the robot 1a is transmitted directly to the robot 1. Therefore, in this case, the request 11 is issued by the robot 1 directly to the robot 1a, and the remote equipment 12 merges with the robots 1, 1a and 1b themselves.
  • this embodiment has the disadvantage of preventing any control over the type of computer programs that will be exchanged by the robots, so that it will not be possible to control the behavior of robots. Indeed, in the absence of external control, if a programmer generated a computer program coding for a dangerous behavior of a robot, this robot could then transmit this dangerous behavior to other robots.
  • the remote equipment 1 2 is always distinct from the robots 1, 1 a, and 1 b and the computer programs coding for a behavior pass through the remote equipment. 1 2 before it can be loaded by a robot.
  • the first robot 1 has stored in its database 6a a computer program 7 which, when executed, acts as the first robot. 1a according to a behavior, the first robot 1 has transmitted the computer program 7 to the remote equipment 1 2, and a second robot, for example the robot 1, loads the computer program ai nsi transmitted, from the remote device 1 2 .

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Robotics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Mechanical Engineering (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Manipulator (AREA)

Abstract

The invention relates to a robot (1, 1a, 1b) comprising storage means (6, 6a, 6b) designed to store at least one computer program which, when it is executed, causes the robot to act according to a particular behaviour, characterized in that it comprises loading means (8, 9) capable of loading, from remote computer equipment (12), a computer program (16) which, when it is executed, causes the robot to act according to a particular behaviour, and recording means (22) capable of recording the computer program (16) thus loaded into said storage means (6, 6a, 6b). Said loading means are designed to transmit to the remote equipment a loading request (11) to initiate the loading of the computer program from the remote equipment (12). The robot comprises at least one memory for storing evolution parameters, and the loading means are additionally designed to transmit the request as a function of the evolution parameters (20, 21).

Description

ROBOT APTE A ECHANGER DES PROGRAMMES INFORMATIQUES CODANT POUR DES COMPORTEMENTS ROBOT FOR EXCHANGING COMPUTER PROGRAMS FOR BEHAVIOR
L'invention se rapporte à un robot comprenant des moyens de stockage agencés pour stocker au moins un programme informatique qui, lorsqu'il est exécuté, fait agir le robot selon un comportement.The invention relates to a robot comprising storage means arranged to store at least one computer program which, when executed, causes the robot to act according to a behavior.
De façon connue en soi dans le domaine de la robotique humanoïde, les comportements du robot peuvent correspondre à l'activation d'un ou plusieurs moteurs pour commander des membres du robot, au déclenchement d'une ou plusieurs applications informatiques pour déclencher par exemple la lecture d'une piste musicale, ou la prise d'une photographie lorsque le robot dispose d'un appareil photo intégré, et à la prise en compte de stimuli externes détectés par des capteurs. Les programmes informatiques stockés dans les moyens de stockage permettent alors de faire agir le robot selon de tels comportements lorsqu'ils sont exécutés, éventuellement en réponse à des stimuli reçus par le robot.In a manner known per se in the field of humanoid robotics, the behaviors of the robot may correspond to the activation of one or more motors for controlling members of the robot, triggering one or more computer applications to trigger for example the playing a musical track, or taking a photograph when the robot has an integrated camera, and taking into account external stimuli detected by sensors. The computer programs stored in the storage means then allow the robot to act according to such behaviors when they are executed, possibly in response to stimuli received by the robot.
L'invention se rapporte plus particulièrement à un robot tel que décrit ci-dessus dont les comportements sont susceptibles d'évoluer dans le temps.The invention relates more particularly to a robot as described above whose behavior is likely to change over time.
On connaît dans l'état de la technique des robots dont les comportements sont susceptibles d'évoluer dans le temps.There are known in the state of the art robots whose behavior is likely to change over time.
Pour réaliser l'évolution dans le temps, il est connu de charger dans une mémoire du robot, un programme d'ordinateur comprenant des instructions permettant au robot de réaliser un apprentissage. Ce type de programme d'ordinateur est communément appelé logiciel d'intelligence artificiel et est largement utilisé pour réaliser des robots, humanoïdes ou non. Grâce à ce logiciel d'intelligence artificielle, le robot réagit à différents stimuli extérieurs et, en fonction des stimuli reçus, peut évoluer dans le temps.To achieve the evolution in time, it is known to load into a memory of the robot, a computer program comprising instructions for the robot to perform a learning. This type of computer program is commonly called artificial intelligence software and is widely used to make robots, humanoids or not. With this intelligence software artificial, the robot reacts to different external stimuli and, depending on the stimuli received, can evolve over time.
Toutefois, même dans le cas d'un logiciel d'intelligence artificielle complexe, le nombre de comportements réalisables par le robot est limité par les programmes informatiques stockés dans les moyens de stockage définis ci-dessus. Dès lors, un utilisateur utilisant le robot comme une sorte de jouet intelligent peut être vite lassé du robot s'il reproduit constamment les mêmes comportements. Ceci est bien sûr un inconvénient de ces robots connus.However, even in the case of complex artificial intelligence software, the number of behaviors achievable by the robot is limited by the computer programs stored in the storage means defined above. Therefore, a user using the robot as a kind of intelligent toy can be quickly tired of the robot if it reproduces constantly the same behavior. This is of course a disadvantage of these known robots.
Le problème résolu par l'invention est d'améliorer les capacités d'évolution du robot.The problem solved by the invention is to improve the evolution capabilities of the robot.
Plus particulièrement, le problème résolu est de permettre une évolution du robot dans le temps de façon permanente, de sorte à mieux simuler l'évolution d'un être vivant, et à rendre le robot beaucoup plus intéressant dans le temps.More specifically, the problem solved is to allow an evolution of the robot in time permanently, so as to better simulate the evolution of a living being, and to make the robot much more interesting in time.
Ce problème est résolu par le fait que le robot comprend des moyens de chargement aptes à charger depuis un équipement informatique distant, un programme informatique qui, lorsqu'il est exécuté, fait agir le robot selon un comportement, et des moyens d'enregistrement aptes à enregistrer le programme informatique ainsi chargé dans lesdits moyens de stockage.This problem is solved by the fact that the robot comprises loading means capable of loading from a remote computer equipment, a computer program which, when executed, causes the robot to act according to a behavior, and suitable recording means registering the computer program thus loaded in said storage means.
Grâce à l'invention, le robot peut donc réaliser de nouveaux comportements et donc étendre continuellement sa gamme de comportements. Dès lors, son évolution est assurée par l'invention et, si le programme chargé est apte à faire agir le robot selon un nouveau comportement, il réalisera de nouvelles actions.Thanks to the invention, the robot can therefore perform new behaviors and thus continuously extend its range of behaviors. Therefore, its evolution is ensured by the invention and, if the loaded program is able to make the robot act according to a new behavior, it will perform new actions.
L'idée de l'échange de programmes informatiques entre entités distantes est connue dans le domaine informatique. En particulier, il est connu qu'un premier ordinateu r requiert, au niveau d'un serveur distant, un programme informatique pour réaliser une mise à jour logicielle. Toutefois, un tel échange de programmes informatiques n 'a jamais été appliqué au domaine technique de la robotique pour qu'un robot puisse agi r selon de nouveaux comportements.The idea of exchanging computer programs between distant entities is known in the computer field. In particular, he It is known that a first computer requires, at a remote server, a computer program to perform a software update. However, such an exchange of computer programs has never been applied to the technical field of robotics for a robot to act according to new behaviors.
Selon un mode de réalisation de l'invention, les moyens de chargement sont agencés pour transmettre à l'équipement distant une requête de chargement pour déclencher le chargement du programme informatique depuis l'équipement distant.According to one embodiment of the invention, the loading means are arranged to transmit to the remote equipment a loading request to trigger the loading of the computer program from the remote equipment.
De la sorte, en transmettant la requête, c'est le robot qui prend l'initiative du chargement du programme informatique, et ce sans intervention du détenteur humain du robot au moment du chargement.In this way, by transmitting the request, it is the robot that takes the initiative to load the computer program, without the intervention of the human holder of the robot at the time of loading.
De préférence, la requête comprend des données relatives aux actions réalisables par le robot. De la sorte, le programme informatique à charger pourra dépendre des capacités d'action du robot. Il sera alors possible de faire que les nouveaux comportements chargés par le robot soient tous compatibles avec les capacités du robot.Preferably, the request includes data relating to the actions that can be performed by the robot. In this way, the computer program to be loaded may depend on the robot's action capabilities. It will then be possible to make the new behaviors loaded by the robot all compatible with the capabilities of the robot.
Afin de permettre un contrôle de l'évolution du robot, le robot comprend de préférence au moins une mémoire pour stocker des paramètres d'évolution, et les moyens de chargement sont agencés en outre pour transmettre la requête en fonction des paramètres d'évolution.In order to allow control of the evolution of the robot, the robot preferably comprises at least one memory for storing evolution parameters, and the loading means are further arranged to transmit the request according to the evolution parameters.
Les paramètres d'évolution compren nent de préférence des données d'abonnement déterminant le nombre de requêtes susceptibles d'être transmises à l'équipement distant. Afin de simuler une évolution naturelle du robot, les moyens de chargement sont avantageusement agencés pour déclencher automatiquement le chargement du programme informatique.The evolution parameters preferably include subscription data determining the number of requests that can be transmitted to the remote device. In order to simulate a natural evolution of the robot, the loading means are advantageously arranged to automatically trigger the loading of the computer program.
Le robot peut comprendre des moyens de génération de comportement agencés pour que le robot réalise, lorsqu'ils sont activés, des comportements, le programme informatique étant apte, à l'exécution, à fai re agir le robot selon au moins u n comportement du robot en activant lesdits moyens de génération de comportement. Ceci permet notamment de générer de nouveaux mouvements du robot, ou des réactions à de nouveaux stimuli.The robot may comprise behavior generating means arranged for the robot to perform, when they are activated, behaviors, the computer program being able, at runtime, to act the robot according to at least one behavior of the robot. activating said behavior generating means. This allows in particular to generate new movements of the robot, or reactions to new stimuli.
En particulier, lesdits moyens de génération de comportement comprennent de préférence des parties mobiles commandées par des moteurs, et le programme informatique peut être apte à faire agir le robot selon au moins un comportement en activant au moins un desdits moteurs de sorte à déplacer au moins une des parties mobiles.In particular, said behavior generating means preferably comprise moving parts controlled by motors, and the computer program may be able to make the robot act according to at least one behavior by activating at least one of said motors so as to move at least one one of the moving parts.
Le robot peut également comprendre des applications le programme informatique est dans ce cas apte à faire agir le robot selon au moins un comportement en activant au moins une desdites applications.The robot can also include applications in which the computer program is able to operate the robot according to at least one behavior by activating at least one of said applications.
Le robot peut également comprendre des moyens de transmission agencés pou r déclencher la transmission du programme informatique stocké dans les moyens de stockage vers l 'équipement distant. De la sorte, le robot peut à la fois recevoir et transmettre des programmes informatiques codant pour des comportements, ce qui a l 'avantage de permettre également l'évolution d'autres robots.The robot may also include transmission means arranged to trigger the transmission of the computer program stored in the storage means to the remote equipment. In this way, the robot can both receive and transmit computer programs coding for behaviors, which has the advantage of also allowing the evolution of other robots.
L'invention se rapporte également à un robot comprenant des moyens de stockage agencés pour stocker au moins un programme informatique qui, à l 'exécution, fait agir le robot selon au moins un comportement, le robot étant caractérisé en ce qu'il comprend des moyens de transmission agencés pou r déclencher la transmission du programme informatique stocké dans les moyens de stockage vers un équipement distant, de sorte à permettre le chargement du programme informatique depuis l'équipement distant par les moyens de chargement d'un robot tel que décrit précédemment.The invention also relates to a robot comprising storage means arranged to store at least one computer program which, at runtime, causes the robot to act according to at least one behavior, the robot being characterized in that it comprises transmission means arranged to trigger the transmission of the computer program stored in the storage means to a remote device, so as to allow the loading of the computer program from the remote device by the loading means of a robot as described above .
De la sorte, il est possible de former une communauté de robots échangeant des programmes permettant d'exécuter des nouveaux comportements. Dès lors, si un nouveau programme permettant d'exécuter un nouveau comportement a été défini pour un robot de la communauté, ce programme pourra être échangé entre les robots de la communauté de sorte que l 'évolution de l'ensemble des robots de la communauté peut être assurée.In this way, it is possible to form a community of robots exchanging programs to perform new behaviors. Therefore, if a new program allowing to execute a new behavior has been defined for a robot of the community, this program could be exchanged between the robots of the community so that the evolution of all the robots of the community can be assured.
L'invention se rapporte également à un système comprenant un robot tel que décrit précédemment, et un équipement informatique comprenant des moyens de stockage agencés pou r stocker des programmes informatiques aptes, à l 'exécution, à faire agir le robot selon au moins un comportement, des programmes informatiques ainsi stockés dans les moyens de stockages, et des moyens de transmission agencés pour transmettre le programme informatique au robot lorsque le chargement depuis l 'équipement distant est déclenché par les moyens de chargement du robot.The invention also relates to a system comprising a robot as described above, and a computer equipment comprising storage means arranged to store computer programs able, at runtime, to make the robot act according to at least one behavior. , computer programs thus stored in the storage means, and transmission means arranged to transmit the computer program to the robot when the loading from the remote equipment is triggered by the loading means of the robot.
Selon un mode de réalisation du système précédemment décrit, l'équipement informatique distant comprend des moyens de sélection agencés pour déterminer si le robot est capable de réaliser le comportement codé par le programme informatique à charger vers le robot.According to an embodiment of the system previously described, the remote computing equipment comprises selection means arranged to determine whether the robot is capable of performing the behavior coded by the computer program to be loaded to the robot.
De la sorte, les nouveaux comportements chargés par le robot sont tous compatibles avec les capacités du robot. De préférence, les moyens de sélection sont aptes à déterminer si le robot est capable de réaliser le comportement codé par le programme informatique à charger vers le robot en fonction de données de la requête.In this way, the new behaviors loaded by the robot are all compatible with the capabilities of the robot. Preferably, the selection means are able to determine whether the robot is capable of performing the behavior coded by the computer program to be loaded to the robot according to the data of the request.
L'invention se rapporte également à u n procédé pou r faire évoluer un robot comprenant des étapes dans lesquelles :The invention also relates to a method for developing a robot comprising steps in which:
- le robot charge depuis un équipement informatique distant, un programme informatique apte à faire agir le robot selon un comportement,the robot loads from a remote computer equipment, a computer program capable of causing the robot to act according to a behavior,
- le robot enregistre dans des moyens de stockage, le programme informatique ainsi chargé, de sorte à pouvoir faire agir le robot selon le comportement lorsque le programme informatique est exécuté.- The robot records in storage means, the computer program thus loaded, so that the robot can act according to the behavior when the computer program is executed.
De préférence, l'étape dans laquelle le robot charge le programme informatique comprend des étapes dans lesquelles :Preferably, the step in which the robot loads the computer program comprises steps in which:
- le robot transmet une requête vers l'équipement informatique distant;the robot transmits a request to the remote computer equipment;
- l'équipement informatique transmet le programme informatique au robot en réponse à la requête.the computer equipment transmits the computer program to the robot in response to the request.
De préférence, l'étape dans laquelle l'équipement informatique transmet le programme informatique au robot en réponse à la requête comprend des étapes dans lesquelles : - l'équipement informatique analyse la requête de sorte à déterminer si le robot est apte à exécuter le programme informatique ;Preferably, the step in which the computer equipment transmits the computer program to the robot in response to the request comprises steps in which: the computer equipment analyzes the request so as to determine whether the robot is able to execute the program computer science;
- l'équipement informatique transmet le programme informatique si le robot est apte à l 'exécuter.the computer equipment transmits the computer program if the robot is able to execute it.
Afin de former une communauté de robots permettant une évolution simple des robots, le procédé précédemment décrit comprend de préférence des étapes dans lesquelles : - un premier robot stocke dans des moyens de stockage le programme informatique qui, lorsqu'il est exécuté, fait agir le premier robot selon un comportement;In order to form a robot community allowing a simple evolution of the robots, the previously described method preferably comprises steps in which: a first robot stores in storage means the computer program which, when executed, causes the first robot to act according to a behavior;
- le premier robot transmet le programme informatique à un équipement distant;the first robot transmits the computer program to a remote device;
- l'équipement distant stocke le programme informatique dans des moyens de stockage;the remote equipment stores the computer program in storage means;
- un deuxième robot charge le programme informatique ainsi transmis, depuis l'équipement distant.a second robot loads the computer program thus transmitted from the remote equipment.
Dans ce procédé, le robot peut exécuter le programme informatique ainsi chargé de sorte à réaliser le comportement.In this method, the robot can execute the computer program thus loaded so as to perform the behavior.
On décrit maintenant un mode de réalisation de l'invention en référence aux figures annexées dans lesquelles :An embodiment of the invention will now be described with reference to the appended figures in which:
- FIG. 1 représente un robot selon un mode de réalisation de l'invention ;FIG. 1 represents a robot according to one embodiment of the invention;
- FIG. 2 représente un mode de réalisation détaillé de l'unité centrale du robot décrit en référence à la FIG.1 ; - FIG. 3 représente le chargement d'un programme informatique codant pour un comportement par le robot illustré à la FIG. 1 depuis un équipement distant ;FIG. 2 shows a detailed embodiment of the central unit of the robot described with reference to FIG.1; FIG. 3 represents the loading of a computer program coding for a behavior by the robot illustrated in FIG. 1 from a remote device;
- FIG. 4 représente une communauté de robots selon l'invention pouvant échanger des programmes informatiques codant pour un comportement ;FIG. 4 represents a robot community according to the invention that can exchange computer programs coding for a behavior;
- FIG. 5 représente un autre mode de réalisation de l'unité centrale du robot décrit en référence à la FIG. 1.FIG. 5 represents another embodiment of the central unit of the robot described with reference to FIG. 1.
Sur les figures, des références identiques représentent des caractéristiques techniques similaires.In the figures, identical references represent similar technical characteristics.
Comme illustré FIG. 1, un robot 1 selon l'invention comprend une ou plusieurs parties mobiles 2a à 2e, ainsi qu'un ensemble de capteurs 23a à 23f. Lorsque le robot 1 est un robot humanoïde, les parties mobiles 2a à 2e correspondent aux membres d'un humain. Sur la FIG. 1 par exemple, les parties mobiles 2a et 2d correspondent à des bras du robot 1 , les parties mobiles 2b et 2c à des jambes, et la partie 2e, à une tête. Toutes les parties mobiles sont aptes à être déplacées grâce à des articulations 3a à 3e comprenant des moteurs respectifs. Lorsque les moteurs des articulations 3a à 3e sont activés, ils mettent en mouvement les parties mobiles 2a à 2e, de sorte que le robot 1 peut réaliser différents comportements.As illustrated FIG. 1, a robot 1 according to the invention comprises one or more moving parts 2a to 2e, and a set of sensors 23a to 23f. When robot 1 is a humanoid robot, the parts mobiles 2a to 2e correspond to the members of a human. In FIG. 1 for example, the movable parts 2a and 2d correspond to arms of the robot 1, the moving parts 2b and 2c to legs, and the second part to a head. All moving parts are able to be moved by means of joints 3a to 3e comprising respective motors. When the engines of the joints 3a to 3e are activated, they set moving parts 2a to 2e, so that the robot 1 can perform different behaviors.
Un comportement du robot 1 peut également être réalisé grâce à une ou plusieurs applications 4. Par exemple, l'application 4 peut correspondre au fait, pour le robot, de prendre une photographie numérique grâce à un appareil numérique intégré, à réaliser une reconnaissance de visage grâce à une application de reconnaissance de visage, ou toute autre application impliquant une action sans nécessai rement déplacer les parties mobiles 2a à 2e.A behavior of the robot 1 can also be achieved by one or more applications 4. For example, the application 4 may correspond to the fact, for the robot, to take a digital photograph with an integrated digital device, to perform a recognition of face by a face recognition application, or any other application involving an action without necessarily moving the moving parts 2a to 2e.
La réalisation d'un comportement du robot 1 peut également correspondre à une réaction à des stimuli captés par les capteurs 23a à 23f.The achievement of a behavior of the robot 1 may also correspond to a reaction to stimuli picked up by the sensors 23a to 23f.
La réalisation de comportements du robot, c'est-à-dire le déplacement des parties mobiles 2a à 2e par l 'intermédiaire de l'activation des articulations 3a à 3e, le lancement d'une application 4, le tout éventuellement en réaction à des stimuli captés par les capteurs 23a à 23f, est commandé par une unité centrale 5.The realization of robot behaviors, that is to say the displacement of the moving parts 2a to 2e through the activation of the joints 3a to 3e, the launch of an application 4, all possibly in response to stimuli picked up by the sensors 23a to 23f, is controlled by a central unit 5.
L'unité centrale 5 est décrite plus en détail sur la FI G. 2.The central unit 5 is described in more detail on the IF G. 2.
L'unité centrale 5 comprend des processeurs et des mémoires non représentés pour exécuter des séries d'instructions de programmes informatiques. Elle comprend également un système d'exploitation non représenté. Les composants décrits par la suite interagissent de façon connue en soi avec les processeurs et les mémoires pou r réaliser les fonctions décrites.CPU 5 includes processors and memories not shown for executing sets of computer program instructions. It also includes a not shown operating system. The components described later interact with known manner in itself with the processors and memories to perform the functions described.
L'unité centrale comprend en outre une base de données de comportements 6. Cette base de données de programmes informatiques 7 aptes à faire agir le robot 1 selon des comportements. Ces programmes informatiques 7 comprennent des instructions qui, lorsqu'elles sont exécutées par les processeu rs du robot, déclenchent une activation particulière des articulations 3a à 3e, ce qui provoque des mouvements des parties mobiles 2a à 2e, ou traitent les informations issues des capteurs 23a à 23f. Ils peuvent également déclencher l'activation des applications 4. Dès lors, lorsqu'un program me informatique 7 de la base de données 6 est exécuté, le robot 1 réalise un comportement particulier associé au programme informatique 7.The central unit also comprises a database of behaviors 6. This database of computer programs 7 able to make robot 1 act according to behaviors. These computer programs 7 include instructions which, when executed by the robot's processors, trigger a particular activation of the joints 3a to 3e, which causes movements of the moving parts 2a to 2e, or processes the information from the sensors. 23a to 23f. They can also trigger the activation of the applications 4. Therefore, when a computer program 7 of the database 6 is executed, the robot 1 performs a particular behavior associated with the computer program 7.
L'unité centrale 5 comprend également une unité d'intelligence artificielle 8 qui coopère avec la base de données 6 pour déterminer le comportement que doit avoir le robot 1 à un instant donné, c'est-à- dire le programme informatique 7 qui doit être exécuté à un instant donné. L'unité d'intelligence artificielle comprend un programme informatique d'intelligence artificielle connu en soi et permet une sélection des comportements appropriés en fonction des stimuli externes captés par des capteurs du robot 1 , ou en fonction d'un objectif de comportement préprogram mé.The central unit 5 also comprises an artificial intelligence unit 8 which cooperates with the database 6 to determine the behavior that the robot 1 must have at a given moment, that is to say the computer program 7 which must to be executed at a given moment. The artificial intelligence unit includes an artificial intelligence computer program known per se and allows a selection of appropriate behaviors according to the external stimuli captured by sensors of robot 1, or according to a preprogrammed behavior objective.
L'unité centrale 5 comprend également des moyens d'échange de données 9 agencés pour transmettre des données du robot 1 vers un équipement informatique distant, et pour recevoir des données depuis cet équipement informatique distant. Ces moyens d'échange de données comprennent par exemple une carte de communication par réseau sans fil Wifi, ou une carte de communication par un réseau filaire. De la sorte, des données peuvent être échangées par un canal de transmission 1 0 vers l'extérieu r du robot et depuis l'extérieur du robot.The central unit 5 also comprises data exchange means 9 arranged to transmit data from the robot 1 to a remote computer equipment, and to receive data from this remote computer equipment. These data exchange means comprise for example a WiFi wireless network communication card, or a wired network communication card. In this way, data can be exchanged by a transmission channel 10 to the outside of the robot and from outside the robot.
L'unité centrale 5 comprend également un module d'enregistrement 22 qui permet de récupérer les données reçues par les moyens d'échange de données 9 pour les stocker dans la base de données 6.The central unit 5 also comprises a recording module 22 which makes it possible to recover the data received by the data exchange means 9 for storing them in the database 6.
On décrit maintenant en détail le fonctionnement de l'évolution du robot 1 en référence à la FIG . 3.The operation of the evolution of robot 1 is now described in detail with reference to FIG. 3.
Grâce aux moyens de transmission de données 9 décrits ci-dessus, le robot 1 transmet une requête 1 1 vers un équipement informatique distant 1 2. En plus des moyens décrits en détail ci-dessous, l'équipement informatique distant comprend des processeurs et des mémoires non représentés pour exécuter des séries d'instructions de programmes informatiques. Les composants décrits par la suite interagissent de façon connue en soi avec les processeurs et les mémoires pour réaliser les fonctions décrites.Thanks to the data transmission means 9 described above, the robot 1 transmits a request 1 1 to a remote computer equipment 1 2. In addition to the means described in detail below, the remote computing equipment comprises processors and devices. memories not shown for executing sets of computer program instructions. The components described hereinafter interact in a manner known per se with the processors and the memories to perform the described functions.
La requête 1 1 vise à recevoir de l'équipement distant 1 2 un nouveau programme informatique permettant de doter le robot d'un nouveau comportement. La requête 1 1 comprend notamment un identifiant du robot 1 .The request 1 1 aims to receive remote equipment 1 2 a new computer program to equip the robot with a new behavior. The request 1 1 notably comprises an identifier of the robot 1.
La requête 1 1 est reçue au niveau de l'équipement distant 1 2 qui comprend également des moyens de transmission de données avec ou sans fil adaptés aux moyens de transmission de données 9 du robot. La requête 1 1 est ensuite analysée par des moyens de sélection de comportement 1 3. Ces moyens de sélection 14 de comportement lisent l'identifiant de la requête 1 1 de sorte à identifier le robot 1 . Grâce à cet identifiant, les moyens de sélection 1 3 déterminent, grâce à une première base de données 14, les caractéristiques techniques du robot 1 ayant transmis la requête 1 1 afin que le nouveau comportement soit adapté aux actions réalisables par le robot 1 .The request 1 1 is received at the remote equipment 1 2 which also comprises wired or wireless data transmission means adapted to the data transmission means 9 of the robot. The request 1 1 is then analyzed by behavior selection means 1 3. These behavior selection means 14 read the identifier of the request 1 1 so as to identify the robot 1. Thanks to this identifier, the selection means 1 3 determine, thanks to a first database 14, the technical characteristics of the robot 1 having transmitted the request 1 1 so that the new behavior is adapted to the actions achievable by the robot 1.
En outre, à la place ou en plus de l'identifiant du robot 1 , la requête 1 1 peut également comprendre des données relatives aux actions réalisables par le robot. Ces données sont par exemple sous la forme d'une liste des composants du robot 1 susceptibles d'être activés à l'exécution d'un programme informatique. Cette liste peut par exemple comprendre un identifiant des capteurs 23a à 23f, et/ou des parties mobiles 2a-2e, et/ou des applications 4.In addition, instead of or in addition to the identifier of the robot 1, the request 11 may also include data relating to the actions achievable by the robot. This data is for example in the form of a list of components of the robot 1 that can be activated during the execution of a computer program. This list may for example comprise an identifier of the sensors 23a to 23f, and / or moving parts 2a-2e, and / or applications 4.
Par exemple, si la jambe 2b du robot 1 ne comprend pas d'articulation au niveau du genou, et que la requête 1 1 est une requête pour obtenir un nouveau comportement pour la jambe, les moyens de sélection 1 3 identifieront que le robot 1 ne comprend pas d'articulation de genou et sélectionneront uniquement les comportements de jambe qui ne comprennent pas de mouvement au niveau de l 'articulation du genou. Les moyens de sélection 1 3 permettent donc d'adapter les nouveaux comportements aux caractéristiques physiques de robot 1 qui émet des requêtes 1 1 .For example, if the leg 2b of the robot 1 does not include an articulation at the knee, and the request 1 1 is a request to obtain a new behavior for the leg, the selection means 1 3 will identify that the robot 1 does not include a knee joint and will only select leg behaviors that do not include movement at the knee joint. The selection means 1 3 thus make it possible to adapt the new behaviors to the physical characteristics of robot 1 which sends requests 1 1.
Une fois le robot 1 identifié et des comportements incompatibles avec les caractéristiques physiques éventuellement exclues par les moyens de sélection 1 3, les moyens de sélection 1 3 récupèrent auprès d'une base de données de comportement 1 5, un programme informatique permettant au robot 1 d'agir selon un comportement.Once the robot 1 identified and behaviors incompatible with the physical characteristics possibly excluded by the selection means 1 3, the selection means 1 3 recover from a behavior database 1 5, a computer program for the robot 1 to act according to a behavior.
Comme la base de données 7 comprise dans le robot 1 , la base de données de comportement 1 5 comprend des programmes informatiques 1 6 qui comprennent des instructions qui, lorsqu 'elles sont exécutées par les processeurs du robot, déclenchent des comportements du robot. Les programmes informatiques 1 6 susceptibles d'être chargés par le robot 1 peuvent également comprendre des modules informatiques dont le robot 1 a besoin pour exécuter des fonctions appelées par certaines instructions du programme informatique 1 6.Like the database 7 included in the robot 1, the behavior database 1 5 comprises computer programs 1 6 which include instructions which, when executed by the robot's processors, trigger robot behaviors. The computer programs 1 6 likely to be loaded by the robot 1 may also include computer modules which the robot 1 needs for perform functions called by certain instructions of the computer program 1 6.
Une fois le programme informatique 1 6 sélectionné, il est transmis 1 7 par l'équipement distant 1 2 vers le robot 1 ayant émis la requête 1 1 . Le programme informatique est alors reçu par le robot grâce aux moyens d'échange de données 9. Les moyens d'enregistrement 22 provoquent alors l'enregistrement du programme informatique 1 6 dans la base de données 6. Dès lors, le programme informatique 1 6 est accessible par l'unité d'intelligence artificielle 8 pour que le robot 1 réalise un nouveau comportement correspondant aux instructions comprises dans le programme informatique 1 6. Comme précédemment, ce nouveau comportement peut être une activation particulière des articulations 3a à 3e, ce qui provoque des mouvements des parties mobiles 2a à 2e. Ils peuvent également déclencher l'activation des applications 4. Dès lors, lorsque le nouveau programme informatique 1 6 de la base de données 6 est exécuté, le robot 1 réalise ce nouveau comportement particulier associé au programme informatique 1 6.Once the computer program 1 6 selected, it is transmitted 1 7 by the remote device 1 2 to the robot 1 having issued the request 1 1. The computer program is then received by the robot through the data exchange means 9. The recording means 22 then causes the computer program 166 to be saved in the database 6. Therefore, the computer program 1 6 is accessible by the artificial intelligence unit 8 so that the robot 1 performs a new behavior corresponding to the instructions included in the computer program 1 6. As previously, this new behavior can be a particular activation of the joints 3a to 3e, which causes movements of the moving parts 2a to 2e. They can also trigger the activation of the applications 4. Therefore, when the new computer program 1 6 of the database 6 is executed, the robot 1 performs this new particular behavior associated with the computer program 1 6.
On décrit maintenant comment sont chargés les programmes informatiques 1 6 de la base de données 1 5 de l'équipement distant 12.We now describe how are loaded the computer programs 1 6 of the database 1 5 of the remote equipment 12.
Selon un mode de réalisation de l 'invention illustré FIG. 4, les programmes informatiques 1 6 de la base de données 1 5 de l'équipement distant 1 2 sont reçus de robots 1 a et 1 b formant, avec le robot 1 , une communauté de robots compatibles. Ainsi, comme le robot 1 , les robots 1 a et 1 b comprennent une base de données 6a et 6b comprenant des programmes informatiques qui, à l'exécution, permettent respectivement aux robots 1 a et 1 b de réaliser des comportements par activation des moteurs de leu rs articulations ou de leurs applications. Les robots 1 a et 1 b comprennent également chacun des moyens de transmission agencés pour transmettre ces programmes informatiques codant pour des comportements vers l'équipement distant 1 2. Ainsi, dans une étape 1 8a, le robot 1 a transmet un ou plusieurs programme informatique de sa base de données 6a vers l'équipement 1 2, et dans une étape 1 8b, le robot 1 b transmet un ou plusieurs programme informatique de sa base de données 6b vers l'équipement 1 2. Ces programmes informatiques sont stockés dans la base de données 1 5 de l'équipement distant 1 2, et sont alors accessibles par le robot 1 grâce à une requête comme décrit précédemment.According to an embodiment of the invention illustrated FIG. 4, the computer programs 1 6 of the database 1 5 of the remote equipment 1 2 are received from robots 1a and 1b forming, with the robot 1, a community of compatible robots. Thus, like the robot 1, the robots 1a and 1b comprise a database 6a and 6b comprising computer programs which, at runtime, respectively allow the robots 1a and 1b to perform behaviors by activation of the motors of their joints or their applications. The robots 1 a and 1 b also comprise each transmission means arranged to transmit these Thus, in a step 1 8a, the robot 1 transmits one or more computer program from its database 6a to the equipment 1 2, and in a step 1 8b, the robot 1b transmits one or more computer program from its database 6b to the equipment 1 2. These computer programs are stored in the database 1 5 of the remote equipment 1 2, and are then accessible by the robot 1 through a request as described above.
De la même façon, les robots 1 a et 1 b peuvent être agencés comme le robot 1 précédemment décrit pour recevoir des nouveaux programmes informatiques codant pour de nouveaux comportements depuis l'équipement distant 1 2. En outre, le robot 1 peut être agencé comme les robots 1 a et 1 b et permettre la transmission des programmes informatiques 7 stockés dans la base de données 6.In the same way, the robots 1 a and 1 b can be arranged as the robot 1 previously described to receive new computer programs coding for new behaviors from the remote equipment 1 2. In addition, the robot 1 can be arranged as robots 1a and 1b and allow the transmission of computer programs 7 stored in the database 6.
Dès lors, on comprend que les possibilités d'évolution des robots selon l'invention grâce à la communauté formée par les robots 1 , 1 a et 1 b, sont très grandes. En effet, si le possesseur du robot 1 a développe, pour son robot 1 a, un nouveau programme informatique codant pour un nouveau comportement, toute la commu nauté des robots, et notamment les robots 1 b et 1 , pourront bénéficier de ce nouveau comportement en recevant le nouveau programme informatique de l'équipement distant 1 2 puisque la base de données 15 de l'équipement distant 1 2 comprend tous les programmes informatiques 1 6 codant pour tous les comportements susceptibles d'être réalisés par les robots 1 a, 1 b, 1 de la communauté de robots. Ainsi, une communauté de program meurs peuvent incrémenter et améliorer sans cesse la base de données 1 5 pour faire évoluer les robots de la communauté. On décrit maintenant comment sont déclenchées les requêtes 1 1 du robot 1 pour recevoir un programme informatique 1 6 de la base de données 1 5 de l'équipement informatique 1 2.Therefore, it is understood that the possibilities of evolution of the robots according to the invention through the community formed by the robots 1, 1 a and 1 b, are very large. Indeed, if the owner of the robot 1 has developed, for his robot 1 a, a new computer program coding for a new behavior, the whole community of robots, including robots 1 b and 1, can benefit from this new behavior by receiving the new computer program of the remote equipment 1 2 since the database 15 of the remote equipment 1 2 includes all the computer programs 1 6 coding for all the behaviors likely to be performed by the robots 1 a, 1 b, 1 of the robot community. Thus, a community of programmers can increment and continually improve the database 1 5 to evolve the robots of the community. It will now be described how the requests 1 1 of the robot 1 are triggered to receive a computer program 1 6 from the database 1 5 of the computer equipment 1 2.
Selon un mode de réalisation de l'invention, les requêtes 1 1 peuvent être déclenchées périodiquement de façon automatique par le robot 1 . Pour ce faire, on programme, par exemple dans l'unité d'intelligence artificielle 5, des instructions pour déclencher des requêtes 1 1 un certain nombre de fois par jour, par exemple 3 fois. Toutefois, si l'on ne limite pas le nombre de requêtes 1 1 émises par le robot, il existe un risque que le robot évolue trop fortement et de façon non contrôlée par son détenteu r.According to one embodiment of the invention, the requests 11 may be triggered periodically automatically by the robot 1. For this purpose, instructions are issued, for example in the artificial intelligence unit 5, for triggering requests 11 a certain number of times per day, for example 3 times. However, if we do not limit the number of requests 1 1 issued by the robot, there is a risk that the robot evolves too strongly and uncontrolled by its owner.
Selon un autre mode de réalisation de l'invention illustré FIG. 5, le nombre de requête 1 1 transmises par le robot 1 est déterminé par un abonnement à l'équipement distant 1 2. Pour ce faire, on programme, par exemple dans une zone mémoi re 1 9 de l'unité centrale 5, des instructions pour déclencher des requêtes 1 1 un nombre de fois égal à un paramètre dynamique pouvant être modifié en fonction de l'abonnement. L'abonnement est alors réalisé par le détenteur du robot 1 qui s'abonne à l'équipement distant 1 2, par exemple au moyen d'une interface Web, pour un nombre déterminé de requêtes. Une fois que l'équipement distant 1 2 a reçu ces instructions d'abonnement, il transmet le paramètre d'abonnement au robot 1 pour que le nombre de requêtes à l 'équipement distant 1 2 soit limité à ce paramètre. Le paramètre d'abonnement 20 est stocké dans la zone mémoire 1 9. Lorsqu'une requête 1 1 est émise par le robot 1 , l'équipement distant 1 2 compare alors le nombre de requêtes déjà émises et n'accepte la transmission d'un programme 1 6 que si le nombre maximal de requêtes déterminé par l'abonnement n'est pas atteint. Si un programme 1 6 est transmis au robot 1 , l'équipement distant 1 2 décrémente un compteur de requêtes pour tenir compte du programme 1 6 transmis. En outre, au-delà du nombre de requêtes 11 susceptibles d'être transmises par le robot 1, le type de requêtes 11 transmises peut également être préprogrammé sous la forme d'un objectif de vie du robot ou faire l'objet d'un abonnement. Par exemple, il est possible de pré-programmer dans le robot 1, le fait que l'objectif de vie du robot 1 est d'être un robot danseur. Dès lors, les requêtes 11 du robot 1 pourront être limitées à des requêtes concernant des comportements de danse, ou à des musiques. L'objectif de vie est par exemple stocké sous la forme d'un paramètre 21 dans la zone mémoire 19 du robot 1.According to another embodiment of the invention illustrated FIG. 5, the number of requests 1 1 transmitted by the robot 1 is determined by a subscription to the remote equipment 1 2. To do this, it is programmed, for example in a memory area 1 9 of the central unit 5, instructions for triggering requests 1 1 a number of times equal to a dynamic parameter that can be modified according to the subscription. The subscription is then made by the holder of robot 1 who subscribes to the remote equipment 1 2, for example by means of a Web interface, for a given number of requests. Once the remote equipment 1 2 has received these subscription instructions, it transmits the subscription parameter to the robot 1 so that the number of requests to the remote equipment 1 2 is limited to this parameter. The subscription parameter 20 is stored in the memory area 1 9. When a request 1 1 is sent by the robot 1, the remote device 1 2 then compares the number of requests already issued and accepts the transmission of a program 1 6 only if the maximum number of requests determined by the subscription is not reached. If a program 1 6 is transmitted to the robot 1, the remote device 1 2 decrements a request counter to take into account the program 1 6 transmitted. Furthermore, beyond the number of requests 11 that can be transmitted by the robot 1, the type of requests 11 transmitted can also be preprogrammed in the form of a life objective of the robot or be subject to a request. subscription. For example, it is possible to pre-program in robot 1, the fact that the life objective of robot 1 is to be a robot dancer. Therefore, the requests 11 of the robot 1 may be limited to requests concerning dance behaviors, or music. The objective of life is for example stored as a parameter 21 in the memory zone 19 of the robot 1.
Les paramètres d'abonnement 20 et les paramètres d'objectif de vie 21 forment alors des paramètres d'évolution déterminant l'évolution du robot 1.The subscription parameters 20 and the life objective parameters 21 then form evolution parameters determining the evolution of the robot 1.
De la même façon, lorsqu'ils reçoivent la requête 11, les moyens de sélection 13 pourront, lorsqu'ils identifient le robot 1, identifier que le robot 1 est un robot danseur, et sélectionner en priorité les programmes informatiques 16 codant pour des comportements de danse.Similarly, when they receive the request 11, the selection means 13 may, when they identify the robot 1, identify that the robot 1 is a robot dancer, and select firstly the computer programs 16 coding for behaviors of dance.
L'unité d'intelligence artificielle 8 permet alors de déclencher automatiquement la transmission d'une requête 11 et donc le chargement d'un programme informatique 16 de la base de données 15 de l'équipement 12 en fonction des abonnements et des objectifs de vie préprogrammés du robot 1.The artificial intelligence unit 8 then makes it possible to automatically trigger the transmission of a request 11 and therefore the loading of a computer program 16 of the database 15 of the equipment 12 according to the subscriptions and the objectives of life preprogrammed robot 1.
Selon un mode de réalisation de l'invention, il est possible que le programme informatique transmis par exemple par le robot 1a, soit transmis directement au robot 1. Dès lors, dans ce cas, la requête 11 est émise par le robot 1 directement vers le robot 1a, et l'équipement distant 12 se confond avec les robots 1, 1a et 1b eux-mêmes. Toutefois, ce mode de réalisation a l'inconvénient d'empêcher tout contrôle sur le type de programmes informatiques qui seront échangés par les robots, de sorte qu 'il ne sera pas possible de contrôler les comportements des robots. En effet, en l'absence de contrôle externe, si un programmeur générait un programme informatique codant pour un comportement dangereux d'un robot, ce robot pourrait alors transmettre ce comportement dangereux à d'autres robots.According to one embodiment of the invention, it is possible that the computer program transmitted for example by the robot 1a, is transmitted directly to the robot 1. Therefore, in this case, the request 11 is issued by the robot 1 directly to the robot 1a, and the remote equipment 12 merges with the robots 1, 1a and 1b themselves. However, this embodiment has the disadvantage of preventing any control over the type of computer programs that will be exchanged by the robots, so that it will not be possible to control the behavior of robots. Indeed, in the absence of external control, if a programmer generated a computer program coding for a dangerous behavior of a robot, this robot could then transmit this dangerous behavior to other robots.
Dès lors, selon un deuxième mode de réalisation préféré de l'invention, l'équipement distant 1 2 est toujours distinct des robots 1 , 1 a, et 1 b et, les programmes i nformatiques codant pour un comportement passent par l'équipement distant 1 2 avant de pouvoir être chargés par un robot. Au niveau de l'équipement informatique 12, on peut alors procéder à une vérification des programmes informatiques reçus depuis les robots pour s'assurer qu'ils ne codent pas pour des comportements dangereux. Ainsi, pour l'échange de comportements entre un premier robot 1 a et un deuxième robot 1 , le premier robot 1 a stocke dans sa base de données 6a un programme informatique 7 qui, lorsqu'il est exécuté, fait agi r le premier robot 1 a selon un comportement, le premier robot 1 a transmet le programme informatique 7 à l'équipement distant 1 2, et un deuxième robot, par exemple le robot 1 , charge le programme informatique ai nsi transmis, depuis l 'équipement distant 1 2. Therefore, according to a second preferred embodiment of the invention, the remote equipment 1 2 is always distinct from the robots 1, 1 a, and 1 b and the computer programs coding for a behavior pass through the remote equipment. 1 2 before it can be loaded by a robot. At the level of the computer equipment 12, it is then possible to check the computer programs received from the robots to ensure that they do not code for dangerous behaviors. Thus, for the exchange of behaviors between a first robot 1a and a second robot 1, the first robot 1 has stored in its database 6a a computer program 7 which, when executed, acts as the first robot. 1a according to a behavior, the first robot 1 has transmitted the computer program 7 to the remote equipment 1 2, and a second robot, for example the robot 1, loads the computer program ai nsi transmitted, from the remote device 1 2 .

Claims

REVENDICATIONS
1 . Robot (1 , 1 a, 1 b) comprenant des moyens de stockage (6, 6a, 6b) agencés pou r stocker au moins un programme informatique qui, lorsqu'il est exécuté, fait agir le robot selon un comportement, comprenant des moyens de chargement (8, 9) aptes à charger depuis un équipement informatique distant (1 2), un programme informatique (1 6) qui, lorsqu'il est exécuté, fait agir le robot selon un comportement, et des moyens d'enregistrement (22) aptes à enregistrer le programme informatique (1 6) ainsi chargé dans lesdits moyens de stockage (6, 6a, 6b), lesdits moyens de chargement étant agencés pour transmettre à l'équipement distant une requête de chargement (1 1 ) pour déclencher le chargement du programme informatique depuis l'équipement distant (1 2), caractérisé en ce que le robot comprend au moins une mémoire pour stocker des paramètres d'évolution, et les moyens de chargement sont agencés en outre pour transmettre la requête en fonction des paramètres d'évolution (20, 21 ).1. Robot (1, 1 a, 1 b) comprising storage means (6, 6a, 6b) arranged to store at least one computer program which, when executed, causes the robot to act according to a behavior, comprising means for charging (8, 9) capable of loading from a remote computer equipment (1 2), a computer program (1 6) which, when executed, causes the robot to act according to a behavior, and recording means ( 22) able to record the computer program (1 6) thus loaded into said storage means (6, 6a, 6b), said loading means being arranged to transmit to the remote equipment a loading request (1 1) for triggering the loading of the computer program from the remote device (1 2), characterized in that the robot comprises at least one memory for storing evolution parameters, and the loading means are further arranged to transmit the request according to the evolution parameters (20, 21).
2. Robot (1 , 1 a, 1 b) selon la revendication 1 dans lequel la requête comprend des données relatives aux actions réalisables par le robot.2. Robot (1, 1 a, 1 b) according to claim 1 wherein the query comprises data relating to actions achievable by the robot.
3. Robot selon la revendication 1 ou2 dans lequel les paramètres d'évolution (20, 21 ) comprennent des données d'abonnement (20) déterminant le nombre de requêtes susceptibles d'être transmises à l'équipement distant.3. The robot of claim 1 or 2 wherein the evolution parameters (20, 21) comprise subscription data (20) determining the number of requests that can be transmitted to the remote equipment.
4. Robot selon l'une des revendications précédentes dans lequel les moyens de chargement sont agencés pour déclencher automatiquement le chargement du programme informatique. 4. Robot according to one of the preceding claims wherein the loading means are arranged to automatically trigger the loading of the computer program.
5. Robot selon l'une des revendications précédentes comprenant des moyens de génération de comportement (2a-2e, 3a-3e, 4, 23a-23f) agencés pour que le robot réalise, lorsqu'ils sont activés, des comportements du robot, le programme informatique (1 6) étant apte, à l'exécution, à faire agir le robot selon au moins un comportement en activant lesdits moyens de génération de comportement.5. Robot according to one of the preceding claims comprising means for generating behavior (2a-2e, 3a-3e, 4, 23a-23f) arranged for the robot to perform, when activated, robot behavior, the computer program (1 6) being capable, at runtime, of causing the robot to act according to at least one behavior by activating said means for generating behavior.
6. Robot selon la revendication précédente dans lequel lesdits moyens de génération de comportement (2a-2e, 3a-3e, 4, 23a-23f) comprennent des parties mobiles (2a-2e) commandées par des moteurs, et dans lequel le programme informatique (1 6) est apte à faire agir le robot selon au moins un comportement en activant au moins un desdits moteurs de sorte à déplacer au moi ns une des parties mobiles.6. Robot according to the preceding claim wherein said behavior generating means (2a-2e, 3a-3e, 4, 23a-23f) comprise movable parts (2a-2e) controlled by motors, and wherein the computer program (1 6) is able to act the robot according to at least one behavior by activating at least one of said motors so as to move at least ns one of the moving parts.
7. Robot selon l 'une des revendications 7 ou 8, dans lequel les moyens de génération de comportement (2a-2e, 3a-3e, 4, 23a-23f) comprennent des applications (4) et dans lequel le programme informatique (1 6) est apte à réaliser au moins un comportement en activant au moins une desdites applications.7. Robot according to one of claims 7 or 8, wherein the behavior generating means (2a-2e, 3a-3e, 4, 23a-23f) comprise applications (4) and wherein the computer program (1 6) is capable of performing at least one behavior by activating at least one of said applications.
8. Robot selon l'u ne des revendications précédentes comprenant en outre le programme informatique (1 6) ainsi chargé stocké dans les moyens de stockage (6, 6A, 6b).8. Robot according to one of the preceding claims further comprising the computer program (1 6) thus loaded stored in the storage means (6, 6A, 6b).
9. Robot (1 , 1 a, 1 b) selon l 'une des revendications précédentes comprenant en outre des moyens de transmission agencés pour déclencher la transmission du programme informatique (7) stocké dans les moyens de stockage vers l'équipement distant (1 2).9. Robot (1, 1 a, 1 b) according to one of the preceding claims further comprising transmission means arranged to trigger the transmission of the computer program (7) stored in the storage means to the remote equipment (1 2).
10. Robot (1 , 1 a, 1 b) comprenant des moyens de stockage (6, 6a, 6b) agencés pour stocker au moins un programme informatique (7) qui , à l'exécution, fait agir le robot selon au moins un comportement, le robot étant caractérisé en ce qu'il comprend des moyens de transmission agencés pour déclencher la transmission du programme informatique (7) stocké dans les moyens de stockage vers un équipement distant (12), de sorte à permettre le chargement du programme informatique depuis l'équipement distant (12) par les moyens de chargement (8,9) d'un robot selon l'une des revendications précédentes.10. Robot (1, 1 a, 1 b) comprising storage means (6, 6a, 6b) arranged for storing at least one computer program (7) which, at run time, causes the robot to act in at least one behavior, the robot being characterized in that it comprises means for transmission arranged to trigger the transmission of the computer program (7) stored in the storage means to a remote device (12), so as to allow the loading of the computer program from the remote equipment (12) by the loading means (8). 9) of a robot according to one of the preceding claims.
11. Système comprenant un robot (1, 1a, 1b) selon l'une des revendications 1 à 11, et un équipement informatique (12) comprenant des moyens de stockage (15) agencés pour stocker des programmes informatiques (16) aptes à faire agir le robot selon au moins un comportement, des programmes informatiques (16) stockés dans lesdits moyens de stockage (15), et des moyens de transmission agencés pour transmettre le programme informatique (16) au robot lorsque le chargement depuis l'équipement distant (12) est déclenché par les moyens de chargement (8, 9) du robot.11. System comprising a robot (1, 1a, 1b) according to one of claims 1 to 11, and computer equipment (12) comprising storage means (15) arranged to store computer programs (16) able to make operating the robot according to at least one behavior, computer programs (16) stored in said storage means (15), and transmission means arranged to transmit the computer program (16) to the robot when the loading from the remote equipment ( 12) is triggered by the loading means (8, 9) of the robot.
12. Système selon la revendication précédente dans lequel l'équipement informatique comprend des moyens de sélection (13) agencés pour déterminer si le robot est capable de réaliser le comportement codé par le programme informatique à charger vers le robot.12. System according to the preceding claim wherein the computer equipment comprises selection means (13) arranged to determine whether the robot is capable of performing the behavior coded by the computer program to be loaded to the robot.
13. Système selon la revendication précédente dans lequel les moyens de sélection (13) sont aptes à déterminer si le robot est capable de réaliser le comportement codé par le programme informatique à charger vers le robot en fonction de données de la requête (11).13. System according to the preceding claim wherein the selection means (13) are able to determine if the robot is capable of performing the behavior encoded by the computer program to be loaded to the robot based on data request (11).
14. Procédé pour faire évoluer un robot comprenant des étapes dans lesquelles :14. Process for developing a robot comprising steps in which:
- le robot charge depuis un équipement informatique distant (12), un programme informatique (16) apte à faire agir le robot selon un comportement, - le robot enregistre dans des moyens de stockage (6, 6a, 6b), le programme informatique (1 6) ainsi chargé, de sorte que le robot puisse agir selon le comportement lorsque le programme i nformatique (1 6) est exécuté, ladite étape dans laquelle le robot charge le programme informatique comprenant des étapes dans lesquelles :the robot loads from a remote computer equipment (12), a computer program (16) able to make the robot act according to a behavior, the robot records in storage means (6, 6a, 6b), the computer program (1 6) thus loaded, so that the robot can act according to the behavior when the computer program (1 6) is executed, said a step in which the robot loads the computer program comprising steps in which:
- le robot transmet une requête (1 1 ) vers l'équipement informatique distant (1 2) ;the robot transmits a request (1 1) to the remote computer equipment (1 2);
- l'équipement informatique (1 2) transmet le programme informatique au robot en réponse à la requête. et ladite étape dans laquelle l'équipement informatique (1 2) transmet le programme informatique au robot en réponse à la requête comprenant des étapes dans lesquelles :- The computer equipment (1 2) transmits the computer program to the robot in response to the request. and said step in which the computer equipment (1 2) transmits the computer program to the robot in response to the request including steps in which:
- l 'équipement informatique (1 2) analyse la requête (1 1 ) de sorte à déterminer si le robot est apte à exécuter le programme informatique ;the computer equipment (1 2) analyzes the request (1 1) so as to determine whether the robot is capable of executing the computer program;
- l'équipement informatique (1 2) transmet le programme informatique si le robot est apte à l'exécuter.- The computer equipment (1 2) transmits the computer program if the robot is able to execute it.
15. Procédé selon la revendication 14 dans lequel15. The method of claim 14 wherein
- un premier robot stocke dans des moyens de stockage (6, 6a, 6b) le programme informatique (7) qui, lorsqu 'il est exécuté, fait agir le premier robot selon un comportement ;a first robot stores in storage means (6, 6a, 6b) the computer program (7) which, when it is executed, causes the first robot to act according to a behavior;
- le premier robot transmet le programme informatique (7) à un équipement distant (1 2) ;the first robot transmits the computer program (7) to a remote device (1 2);
- l'équipement distant (1 2) stocke le programme informatique (7) dans des moyens de stockage (1 5) ;the remote equipment (1 2) stores the computer program (7) in storage means (1 5);
- un deuxième robot charge le programme informatique ainsi transmis, depuis l'équipement distant (1 2).a second robot loads the computer program thus transmitted from the remote equipment (1 2).
1 6. Procédé selon la revendication 14 ou 1 5 dans lequel le robot exécute le programme informatique (1 6) ainsi chargé de sorte à réaliser le comportement. The method of claim 14 or 15 wherein the robot executes the computer program (1 6) so loaded so as to perform the behavior.
EP08786975A 2007-09-12 2008-08-07 Robot capable of exchanging behaviour-coding computer programs Withdrawn EP2197632A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0706387A FR2920686B1 (en) 2007-09-12 2007-09-12 ROBOT FOR EXCHANGING COMPUTER PROGRAMS FOR BEHAVIOR
PCT/EP2008/060372 WO2009033898A1 (en) 2007-09-12 2008-08-07 Robot capable of exchanging behaviour-coding computer programs

Publications (1)

Publication Number Publication Date
EP2197632A1 true EP2197632A1 (en) 2010-06-23

Family

ID=39322575

Family Applications (1)

Application Number Title Priority Date Filing Date
EP08786975A Withdrawn EP2197632A1 (en) 2007-09-12 2008-08-07 Robot capable of exchanging behaviour-coding computer programs

Country Status (5)

Country Link
US (1) US20110218672A1 (en)
EP (1) EP2197632A1 (en)
JP (1) JP2010538849A (en)
FR (1) FR2920686B1 (en)
WO (1) WO2009033898A1 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140288704A1 (en) * 2013-03-14 2014-09-25 Hanson Robokind And Intelligent Bots, Llc System and Method for Controlling Behavior of a Robotic Character
EP2933068B1 (en) * 2014-04-17 2021-08-18 Aldebaran Robotics Omnidirectional wheeled humanoid robot based on a linear predictive position and velocity controller
EP3172235A2 (en) 2014-07-25 2017-05-31 Cytomx Therapeutics Inc. Anti-cd3 antibodies, activatable anti-cd3 antibodies, multispecific anti-cd3 antibodies, multispecific activatable anti-cd3 antibodies, and methods of using the same
US9443192B1 (en) 2015-08-30 2016-09-13 Jasmin Cosic Universal artificial intelligence engine for autonomous computing devices and software applications
US9864933B1 (en) 2016-08-23 2018-01-09 Jasmin Cosic Artificially intelligent systems, devices, and methods for learning and/or using visual surrounding for autonomous object operation
US10452974B1 (en) 2016-11-02 2019-10-22 Jasmin Cosic Artificially intelligent systems, devices, and methods for learning and/or using a device's circumstances for autonomous device operation
US10607134B1 (en) 2016-12-19 2020-03-31 Jasmin Cosic Artificially intelligent systems, devices, and methods for learning and/or using an avatar's circumstances for autonomous avatar operation
US10102449B1 (en) 2017-11-21 2018-10-16 Jasmin Cosic Devices, systems, and methods for use in automation
US10474934B1 (en) 2017-11-26 2019-11-12 Jasmin Cosic Machine learning for computing enabled systems and/or devices
US10402731B1 (en) 2017-12-15 2019-09-03 Jasmin Cosic Machine learning for computer generated objects and/or applications

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69937058T2 (en) * 1999-10-26 2008-05-29 Sony France S.A. Method and system for agent transfer for a robot
JP2003001578A (en) * 2001-06-26 2003-01-08 Casio Comput Co Ltd Robot, robot management system, robot control program, robot management processing program, robot management method, and instrument management system, instrument management processing program, instrument management method
JP3925140B2 (en) * 2001-10-09 2007-06-06 ソニー株式会社 Information providing method, information providing apparatus, and computer program
JP2005078456A (en) * 2003-09-01 2005-03-24 Sony Corp Content providing system
JP2005279830A (en) * 2004-03-29 2005-10-13 Victor Co Of Japan Ltd Robot and information management method using robot

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
None *
See also references of WO2009033898A1 *

Also Published As

Publication number Publication date
JP2010538849A (en) 2010-12-16
WO2009033898A1 (en) 2009-03-19
FR2920686A1 (en) 2009-03-13
US20110218672A1 (en) 2011-09-08
FR2920686B1 (en) 2010-01-15

Similar Documents

Publication Publication Date Title
EP2197632A1 (en) Robot capable of exchanging behaviour-coding computer programs
KR101994574B1 (en) Cloud-based analysis of robotic system component use
US20170154017A1 (en) Web Application Management
Goransson et al. Professional Android open accessory programming with Arduino
EP1969461A1 (en) System and method for deploying customised web applications
EP2483784A1 (en) Method, system and adapting device enabling a data exchange between a communicating object and a processing unit
EP2605496A1 (en) Access restriction to the resources of a terminal
Lachgar et al. Decision framework for mobile development methods
CA2261620C (en) Man-machine interface for a smart card reader
FR3041844A1 (en) TECHNIQUE FOR ACCESSING A PERIPHERAL DEVICE
EP2297643A1 (en) Electronic board and system comprising a plurality of such boards
FR3041787A1 (en) METHOD FOR TRANSFERRING CONFIGURATION INFORMATION OF A CONNECTED OBJECT
EP2751624A1 (en) Onboard system for supervising a machine from a portable terminal
CA3143068A1 (en) Service application system for payment terminals
EP3000224B1 (en) Method of self-adaptation of a signal quality, and corresponding devices and computer programme
FR3014626A1 (en) METHOD FOR PROCESSING DATA FOR ESTABLISHING WEBRTC COMMUNICATION, DEVICE AND COMPUTER PROGRAM.
EP3692747B1 (en) Technique for managing a right of access to a network for a communicating device
Aroca et al. Web-based robot programming environment and control architecture
EP2991279B1 (en) Method for bi-directional transfer of information from a home automation system, such a system and a unit for carrying out said method
Perch Hands-on robotics with JavaScript: build robotic projects using Johnny-Five and control hardware with JavaScript and Raspberry Pi
Duan et al. Installation and Initial Use of the Robots
FR3077903A1 (en) METHOD FOR CREATING A SINGLE COMPUTER EXECUTING ENVIRONMENT FOR SOFTWARE APPLICATIONS REQUIRING DIFFERENT EXECUTION ENVIRONMENTS
FR3038401A1 (en) CONFIGURATION METHOD AND METHOD FOR CONTROLLING A SYSTEM OF INTERCONNECTED EXECUTION MODULES.
de FO Araújo et al. Maerobot: an open source test platform for prototyping robots
EP1269377A1 (en) Selective intercommunication i device for mobile terminals in physical proximity, also linked by global networks

Legal Events

Date Code Title Description
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

17P Request for examination filed

Effective date: 20100318

AK Designated contracting states

Kind code of ref document: A1

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

AX Request for extension of the european patent

Extension state: AL BA MK RS

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20170511

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

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20190103