Action control system and program
Through the user status recognition and emotional determination units, the robot adjusts behavior according to the user's emotional state, solving the problem of poor robot interaction in the prior art, and achieving a more natural user interaction effect.
Patent Information
- Application Number
- JP2023122006
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-07-26
- Publication Date
- 2025-02-06
AI Technical Summary
In the prior art, it is difficult for robots to respond appropriately based on the user's emotional state and behavior, resulting in poor interaction effects.
Through the user status recognition unit, emotion determination unit and behavior control system, the robot can recognize the user's emotional state and behavior, and decide whether to continue the current action or switch to different actions based on the emotional value, and use the server to update the reaction rules to improve the interactive effect.
Robots can better adapt to user emotional changes, improve interactive experience and reduce misjudgment by imitating user's positive behavior or adjusting behavior according to reaction rules.
Smart Images

Figure 2025018371000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a behavior control system and a program. [Background technology]
[0002] A behavior control system is known that includes a behavior information storage unit that stores decision information for deciding an action based on a user's state, a user state recognition unit that recognizes the user's state, a behavior decision unit that decides an action to be performed based on the user's state recognized by the user state recognition unit and the decision information, a reaction recognition unit that recognizes the user's reaction to performing the action decided by the behavior decision unit, a transmission unit that transmits the user's state recognized by the user state recognition unit, the action decided by the behavior decision unit, and the user's reaction recognized by the reaction recognition unit to an external server, a receiving unit that receives from the server an action appropriate to the user's state recognized by the user state recognition unit when the behavior decision unit is unable to decide an action to be performed based on the user's state and the decision information, and a behavior information update unit that updates the decision information based on the action received by the receiving unit from the server (see, for example, Patent Document 1).
[0003] [Prior art document]
[0004] [Patent documents]
[0005] [Patent Document 1] Patent No. 6053847 Summary of the Invention [Problem to be solved by the invention]
[0006] It is desirable to have a robot perform an appropriate action in response to a user's action. [Means for solving the problem]
[0007] According to a first aspect of the present invention, there is provided a behavior control system, the behavior control system including a user state recognition unit that recognizes a user state including a user's behavior, an emotion determination unit that determines an emotion value indicating an emotion of a user based on the user state, and an behavior determination unit that continues a first behavior corresponding to the user's behavior when the emotion value is a positive value, and determines a second behavior different from the first behavior when the emotion value is not a positive value.
[0008] The emotion determination unit may determine the emotion value for the first action continuously or at regular intervals, and when the determined emotion value does not change or decreases, the action determination unit may switch to the second action and change the action content of the second action according to the emotion value.
[0009] The system may include a first robot and a second robot, each of the first robot and the second robot including the user state recognition unit, the emotion determination unit, and the behavior determination unit, the emotion determination unit of the first robot transmitting the emotion value determined for the user to the second robot, and the behavior determination unit of the second robot determining either the first behavior or the second behavior depending on the emotion value received from the first robot.
[0010] The first robot and the second robot may be installed in different locations.
[0011] In a second aspect, a program is provided. The program causes a computer to It functions as a behavioral control system.
[0012] The above summary of the invention does not list all of the necessary features of the present invention. Also, subcombinations of these features may also be inventions. [Brief description of the drawings]
[0013] [Figure 1]1 illustrates a schematic diagram of an example of a system 5 according to the present embodiment. [Diagram 2] 2 shows a schematic functional configuration of the robot 100. [Diagram 3] 1 shows an example of an operation flow of the robot 100. [Figure 4] 1 illustrates an example of a hardware configuration of a computer 1200. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0014] The present invention will be described below through embodiments of the invention, but the following embodiments do not limit the scope of the invention according to the claims. Furthermore, not all of the combinations of features described in the embodiments are necessarily essential to the solution of the invention.
[0015] FIG. 1 is a schematic diagram of an example of a system 5 according to the present embodiment. The system 5 includes a robot 100, a robot 101, a robot 102, and a server 300. A user 10a, a user 10b, a user 10c, and a user 10d are users of the robot 100. A user 11a, a user 11b, and a user 11c are users of the robot 101. A user 12a and a user 12b are users of the robot 102. In the description of the present embodiment, the user 10a, the user 10b, the user 10c, and the user 10d may be collectively referred to as the user 10. The user 11a, the user 11b, and the user 11c may be collectively referred to as the user 11. The user 12a and the user 12b may be collectively referred to as the user 12. The robot 101 and the robot 102 have substantially the same functions as the robot 100. Therefore, the system 5 will be described by mainly focusing on the functions of the robot 100.
[0016] The robot 100 converses with the user 10 and provides images to the user 10. At this time, the robot 100 cooperates with a server 300 or the like with which it can communicate via a communication network 20 to converse with the user 10 and provide images, etc. to the user 10. For example, the robot 100 not only learns appropriate conversation by itself, but also cooperates with the server 300 to learn how to have a more appropriate conversation with the user 10. The robot 100 also causes the server 300 to record captured image data, etc. of the user 10, and requests the server 300 for the image data, etc. as necessary, and provides the data, etc. to the user 10.
[0017] The robot 100 also has an emotion value that indicates the type of its own emotion. For example, the robot 100 has emotion values that indicate the intensity of each of the emotions of "joy", "anger", "sorrow", "pleasure", "discomfort", "relief", "anxiety", "sadness", "excitement", "concern", "relief", "fulfillment", "emptiness", and "neutral". When the robot 100 converses with the user 10 in a state where the emotion value of excitement is high, for example, the robot 100 utters sounds at a fast speed. In this way, the robot 100 can express its own emotions through actions.
[0018] The robot 100 also has a function of recognizing the behavior of the user 10. The robot 100 recognizes the behavior of the user 10 by analyzing a facial image of the user 10 acquired by a camera function and a voice of the user 10 acquired by a microphone function. The robot 100 determines the behavior to be performed by the robot 100 based on the recognized behavior of the user 10, etc.
[0019] The robot 100 stores rules that define actions that the robot 100 will execute based on the actions of the user 10, and performs various actions according to the rules.
[0020] Specifically, the robot 100 has reaction rules for determining the behavior of the robot 100 based on the behavior of the user 10. For example, the reaction rules define the behavior of the robot 100 as "laughing" when the behavior of the user 10 is "laughing". The reaction rules also define the behavior of the robot 100 as "apologizing" when the behavior of the user 10 is "getting angry". The reaction rules also define the behavior of the robot 100 as "answering" when the behavior of the user 10 is "asking a question". The reaction rules also define the behavior of the robot 100 as "calling out" when the behavior of the user 10 is "getting sad".
[0021] When the robot 100 recognizes the behavior of the user 10 as "anger" based on the reaction rules, the robot 100 selects the behavior of "apologizing" defined in the reaction rules as the behavior to be executed by the robot 100. For example, when the robot 100 selects the behavior of "apologizing", the robot 100 performs the motion of "apologizing" and outputs a voice expressing the word "apologize".
[0022] The robot 100 also transmits to the server 300 user reaction information indicating that this action has elicited a positive reaction from the user 10. The user reaction information includes, for example, the user action of "getting angry," the robot 100 action of "apologizing," the fact that the reaction of the user 10 was positive, and attributes of the user 10.
[0023] The server 300 stores the user reaction information received from the robot 100. The server 300 receives and stores user reaction information not only from the robot 100, but also from each of the robots 101 and 102. The server 300 analyzes the user reaction information from the robots 100, 101, and 102, and updates the reaction rules.
[0024] The robot 100 receives the updated reaction rules from the server 300 by inquiring about the updated reaction rules from the server 300. The robot 100 incorporates the updated reaction rules into the reaction rules stored in the robot 100. This allows the robot 100 to incorporate the reaction rules acquired by the robot 101, the robot 102, etc. into its own reaction rules.
[0025] 2 shows a schematic functional configuration of the robot 100. The robot 100 includes a sensor unit 200, a sensor module unit 210, a storage unit 220, a user state recognition unit 230, an emotion determination unit 232, a behavior recognition unit 234, a behavior determination unit 236, a behavior control unit 250, a control target 252, and a communication processing unit 280.
[0026] The control target 252 includes a display device, a speaker, LEDs in the eyes, and motors for driving the arms, hands, legs, etc. The posture and gestures of the robot 100 are controlled by controlling the motors of the arms, hands, legs, etc. Some of the emotions of the robot 100 can be expressed by controlling these motors. In addition, the facial expressions of the robot 100 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 100. The posture, gestures, and facial expressions of the robot 100 are examples of the attitude of the robot 100.
[0027] The sensor unit 200 includes a microphone 201, a 3D depth sensor 202, a 2D camera 203, and a distance sensor 204. The microphone 201 continuously detects sound and outputs sound data. The microphone 201 may be provided on the head of the robot 100 and may have a function of performing binaural recording. The 3D depth sensor 202 detects the contour of an object by continuously irradiating an infrared pattern and analyzing the infrared pattern from infrared images continuously captured by the infrared camera. The 2D camera 203 is an example of an image sensor. The 2D camera 203 captures an image using visible light and generates visible light video information. The distance sensor detects the distance to an object by irradiating, for example, a laser or ultrasonic waves. The sensor unit 200 may also include a clock, a gyro sensor, a touch sensor, a sensor for motor feedback, and the like.
[0028] 2, the components other than the control target 252 and the sensor unit 200 are examples of components included in a behavior control system included in the robot 100. The behavior control system of the robot 100 controls the control target 252.
[0029] The storage unit 220 includes reaction rules 221. At least a part of the storage unit 220 is implemented by a storage medium such as a memory. It may include a person DB that stores the face image of the user 10, attribute information of the user 10, and the like. Among the components of the robot 100 shown in FIG. 2, the functions of the components excluding the control target 252, the sensor unit 200, and the storage unit 220 can be realized by a CPU operating based on a program. For example, the functions of these components can be implemented as the operation of a CPU by an operating system (OS) and a program operating on the OS.
[0030] The sensor module unit 210 includes a voice emotion recognition unit 211, a speech understanding unit 212, a facial expression recognition unit 213, and a face recognition unit 214. Information detected by the sensor unit 200 is input to the sensor module unit 210. The sensor module unit 210 analyzes the information detected by the sensor unit 200, and outputs the analysis result to the user state recognition unit 230.
[0031] The voice emotion recognition unit 211 of the sensor module unit 210 analyzes the voice of the user 10 detected by the microphone 201 and recognizes the emotion of the user 10. For example, the voice emotion recognition unit 211 extracts feature amounts such as frequency components of the voice and recognizes the emotion of the user 10 based on the extracted feature amounts. The speech understanding unit 212 analyzes the voice of the user 10 detected by the microphone 201 and outputs text information representing the content of the utterance of the user 10.
[0032] The facial expression recognition unit 213 recognizes the facial expression and emotion of the user 10 from the image of the user 10 captured by the 2D camera 203. For example, the facial expression recognition unit 213 recognizes the facial expression and emotion of the user 10 based on the shapes, positional relationship, etc. of the eyes and mouth.
[0033] The face recognition unit 214 recognizes the face of the user 10. The face recognition unit 214 recognizes the user 10 by matching a face image stored in a person DB (not shown) with a face image of the user 10 captured by the 2D camera 203.
[0034] The user state recognition unit 230 recognizes the state of the user 10 based on the information analyzed by the sensor module unit 210. For example, the user state recognition unit 230 mainly performs processing related to perception using the analysis results of the sensor module unit 210. For example, it generates perceptual information such as "Daddy is alone" or "There is a 90% chance that Daddy is not smiling." It performs processing to understand the meaning of the generated perceptual information. For example, it generates semantic information such as "Daddy is alone and looks lonely."
[0035] The emotion determination unit 232 determines an emotion value indicating the emotion of the user 10 based on the information analyzed by the sensor module unit 210 and the state of the user 10 recognized by the user state recognition unit 230. For example, the information analyzed by the sensor module unit 210 and the recognized state of the user 10 are input to a pre-trained neural network to obtain an emotion value indicating the emotion of the user 10.
[0036] Here, the emotion value indicating the emotion of the user 10 is a value indicating the positive or negative emotion of the user. For example, if the emotion of the user is a cheerful emotion accompanied by a sense of pleasure or comfort, such as "joy", "pleasure", "comfort", "relief", "excitement", "relief", and "fulfillment", the value indicates a positive value, and the more cheerful the emotion, the larger the value. If the emotion of the user is an unpleasant emotion, such as "anger", "sorrow", "discomfort", "anxiety", "sorrow", "worry", and "emptiness", the value indicates a negative value, and the more unpleasant the emotion, the larger the absolute value of the negative value. If the emotion of the user is not any of the above ("neutral"), the value indicates 0.
[0037] The behavior recognition unit 234 recognizes the behavior of the user 10 based on the information analyzed by the sensor module unit 210 and the state of the user 10 recognized by the user state recognition unit 230. For example, the information analyzed by the sensor module unit 210 and the recognized state of the user 10 are input to a pre-trained neural network, the probability of each of a plurality of predetermined behavior classifications (for example, "laughing", "getting angry", "asking a question", "getting sad") is obtained, and the behavior classification with the highest probability is recognized as the behavior of the user 10.
[0038] When the emotion value of the user 10 determined by the emotion determining section 232 is a positive value, the behavior determining section 236 determines a behavior of imitating the behavior of the user 10 as the behavior to be executed.
[0039] When the emotion value of the user 10 determined by the emotion determination unit 232 is not a positive value, that is, when the emotion value of the user 10 is a negative value or 0, the behavior determination unit 236 determines the behavior of the robot 100 based on the behavior of the user recognized by the behavior recognition unit 234 and the reaction rule 221. At this time, the reaction rule 221 defines an action for changing the emotion value of the user 10 to a positive value for a user action corresponding to a negative emotion. Specifically, the reaction rule 221 defines an action of "apologizing" as the behavior of the robot 100 when the behavior of the user 10 is "angry". Also, the reaction rule 221 defines an action of "calling out" as the behavior of the robot 100 when the behavior of the user 10 is "sad". Also, the reaction rule 221 defines an action of "answering" as the behavior of the robot 100 for a user action corresponding to an emotion value of 0, for example, "asking a question".
[0040] The behavior control unit 250 controls the control target 252 based on the behavior determined by the behavior determination unit 236. For example, when the behavior determination unit 236 determines an behavior including speaking, the behavior control unit 250 outputs a sound from a speaker included in the control target 252. At this time, the behavior control unit 250 may determine the speaking speed of the sound based on the emotion value of the robot 100.
[0041] Furthermore, when the behavior decision unit 236 decides on a behavior of imitating the behavior of the user 10, the behavior control unit 250 outputs a voice corresponding to the voice of the user 10 from a speaker, expresses an expression corresponding to the expression of the user 10 by the light emission state of LEDs in the eyes of the robot 100, and expresses a posture and gesture of the robot 100 corresponding to the movement of the user 10 by driving motors of the arms, hands, legs, etc. In this way, when the behavior of the user 10 is "laughing", the robot 100 can "laugh" together with the user 10 by imitating the behavior of the user 10.
[0042] The behavior control unit 250 may recognize a change in the user 10's emotion in response to the execution of the behavior determined by the behavior determination unit 236. For example, the change in emotion may be recognized based on the voice or facial expression of the user 10. In addition, the change in emotion of the user 10 may be recognized based on the detection of an impact by a touch sensor included in the sensor unit 200. When an impact is detected by the touch sensor included in the sensor unit 200, the emotion of the user 10 may be recognized as having worsened, and when the reaction of the user 10 is determined to be laughing or happy, etc., based on the detection result of the touch sensor included in the sensor unit 200, the emotion of the user 10 may be recognized as having improved. Information indicating the reaction of the user 10 is output to the communication processing unit 280.
[0043] The communication processing unit 280 is responsible for communication with the server 300. As described above, the communication processing unit 280 transmits user reaction information to the server 300. In addition, the communication processing unit 280 receives updated reaction rules from the server 300. When the communication processing unit 280 receives the updated reaction rules from the server 300, it updates the reaction rules 221.
[0044] The server 300 communicates between the robots 100, 101, and 102 and the server 300, receives user reaction information transmitted from the robot 100, and updates the reaction rules based on reaction rules that include actions that have received positive reactions.
[0045] Fig. 3 shows an example of an operation flow for determining an action of the robot 100. The operation flow shown in Fig. 3 is repeatedly executed. At this time, it is assumed that information analyzed by the sensor module unit 210 is input. Note that "S" in the operation flow indicates a step to be executed.
[0046] First, in step S100 , the user state recognition unit 230 recognizes the state of the user 10 based on the information analyzed by the sensor module unit 210 .
[0047] In step S102 , the emotion determination unit 232 determines an emotion value indicating the emotion of the user 10 based on the information analyzed by the sensor module unit 210 and the state of the user 10 recognized by the user state recognition unit 230 .
[0048] In step S104, it is determined whether the emotion value of user 10 determined in step S102 above is a positive value. If the emotion value of user 10 determined in step S102 above is a positive value, the process proceeds to step S106. On the other hand, if the emotion value of user 10 determined in step S102 above is a negative value or 0, the process proceeds to step S108.
[0049] In step S106, the behavior determining unit 236 determines a behavior of imitating the behavior of the user 10 as the behavior to be executed.
[0050] In step S108, the behavior recognition unit 234 recognizes the behavior classification of the user 10 based on the information analyzed by the sensor module unit 210 and the state of the user 10 recognized by the user state recognition unit 230.
[0051] In step S110, the behavior determining unit 236 determines the behavior of the robot 100 based on the user's behavior recognized by the behavior recognizing unit 234 and the reaction rule 221.
[0052] In step S 112 , the behavior control unit 250 controls the control target 252 based on the behavior determined by the behavior determining unit 236 .
[0053] As described above, according to the robot 100, it is possible to make the robot 100 perform an appropriate action for the action of the user 10. Conventionally, the action of the user is classified and the action including the facial expression and the appearance of the robot is determined. In contrast, the robot 100 determines the emotion value of the user 10, and imitates the action of the user 10 if the emotion is positive. By imitating the action of the user 10, which is a positive emotion, the user 10 is not made to feel uncomfortable, and a problem caused by the robot 10's erroneous recognition of the action of the user 10 can be avoided. In addition, if the emotion of the user 10 is negative, the robot 100 recognizes the user's action classification by a neural network and performs an action on the user 10 based on the reaction rule. Thereby, for example, if the user 10 looks sad, the robot 100 can perform an action such as calling out to the user 10 to cheer him up and bring him to a positive emotion. In addition, if the emotion value of the user 10 is 0, the robot 100 recognizes the user's action classification by a neural network and performs an appropriate action on the user's action based on the reaction rule.
[0054] In addition, the behavior determining unit 236 may determine a behavior that imitates the behavior of the user as the behavior to be executed when the emotion value is a positive value and is equal to or greater than the threshold value. In addition, the behavior determining unit 236 may determine a behavior that is determined based on a reaction rule according to the behavior classification of the user as the behavior to be executed when the emotion value is a positive value and is less than the threshold value, or when the emotion value is a negative value. In this way, when the positive emotion is strong, the robot 100 executes a behavior that imitates the behavior of the user 10, and in other cases, the behavior of the robot 100 can be determined and executed based on the reaction rule 221.
[0055] The robot 100 is an example of an electronic device equipped with a behavior control system. The application of the behavior control system is not limited to the robot 100, and the behavior control system can be applied to various electronic devices. The functions of the server 300 may be implemented by one or more computers. At least a part of the functions of the server 300 may be implemented by a virtual machine. At least a part of the functions of the server 300 may be implemented in the cloud.
[0056] In addition, in the embodiment, the action to be taken by the robot 100 may be determined depending on whether the user 10 has a positive emotion or not.
[0057] Specifically, the user state recognition unit 230 recognizes the user state including the behavior of the user 10 .
[0058] The emotion determining unit 232 determines an emotion value indicating the emotion of the user 10 based on the user state recognized by the user state recognizing unit 230 .
[0059] When the emotion value of the user 10 determined by the emotion determination unit 232 for the first action of the robot 100 corresponding to the action of the user 10 is a positive value, the action determination unit 236 continues the first action, and when the emotion value is not a positive value, that is, is a negative value or 0, the action determination unit 236 determines a second action different from the first action. Here, as described above, when the emotion value of the user 10 determined by the emotion determination unit 232 is a positive value, the action determination unit 236 may determine an action that imitates the action of the user 10 as the action to be executed. When the emotion value of the user 10 determined by the emotion determination unit 232 is not a positive value, the action determination unit 236 may determine a second action of the robot 100 based on the action of the user recognized by the action recognition unit 234 and the reaction rule 221. At this time, the reaction rule 221 defines an action for changing the emotion value of the user 10 to a positive value for a user action corresponding to a negative emotion.
[0060] That is, whether the user 10 is satisfied with the first action (primary response) of the robot 100 is determined based on the emotion value, and if the user is dissatisfied, a different second action (secondary response) is performed. While the user 10 and the robot 100 have a conversation, the robot 100 performs the secondary response according to the emotion value of the user 10. If the user 10 is satisfied with the action of the robot 100, the emotion value of the user 10 indicates a positive value. On the other hand, if the user is dissatisfied, the emotion value of the user 10 indicates a negative value or 0. If the user 10 is dissatisfied with the first action (primary response) of the robot 100, the robot 100 performs a secondary response such as taking a different second action.
[0061] Furthermore, the emotion determining unit 232 may determine the emotion value of the user 10 in response to the first behavior of the robot 100 continuously or at regular intervals. In this case, when the determined emotion value does not change or decreases, the behavior determining unit 236 switches to the second behavior and changes the behavior content of the second behavior according to the emotion value.
[0062] That is, even if the robot 100 is in the first response, the robot 100 may constantly or periodically measure the emotion value of the user 10 and change the behavior of the robot 100. This allows the robot 100 to correct erroneous behavior. It also allows the robot 100 to respond to the emotional fluctuations of the user 10. For example, assume that the robot 100 offers words of encouragement to the sad user 10 as the first behavior, but the emotion value of the user 10 does not change or decreases. In this case, the robot 100 takes the next action, such as offering different words of encouragement or words of scolding, as the second behavior.
[0063] Also, the subsequent robot 101 (or robot 102) may take over the emotion value of the user 100 from the robot 100 that responded earlier and respond appropriately. In this example, the robot 100 is an example of the first robot, and the robot 101 (or robot 102) is an example of the second robot.
[0064] For example, each of the robot 100 and the robot 101 includes a user state recognition unit 230, an emotion determination unit 232, and a behavior determination unit 236. The emotion determination unit 232 of the robot 100 transmits the emotion value determined for the user 10 to the robot 101. The behavior determination unit 236 of the robot 101 determines either a first behavior or a second behavior according to the emotion value received from the robot 100. That is, when the emotion value received from the robot 100 is a positive value, the robot 101 determines the first behavior for the user 10, and when the emotion value is not a positive value, that is, is a negative value or 0, the robot 101 determines the second behavior different from the first behavior.
[0065] Furthermore, the robot 100 and the robot 101 may be installed in different locations. For example, assume that the robot 100 is a reception robot located in a reception area, and the robot 101 is a customer service robot located in a customer service area. The robot 100, which is a reception robot, acquires an emotional value of the user 10, and passes the acquired emotional value on to the robot 101, which is a subsequent customer service robot. In this case, the robot 100, which is a reception robot, handles the primary response, and the robot 101, which is a customer service robot, handles the secondary response.
[0066] 4 shows a schematic example of a hardware configuration of a computer 1200 functioning as the robot 100 and the server 300. A program installed on the computer 1200 can cause the computer 1200 to function as one or more "parts" of an apparatus according to the present embodiment, or cause the computer 1200 to execute operations or one or more "parts" associated with the apparatus according to the present embodiment, and / or cause the computer 1200 to execute a process or steps of the process according to the present embodiment. Such a program can be executed by the CPU 1212 to cause the computer 1200 to execute specific operations associated with some or all of the blocks of the flowcharts and block diagrams described herein.
[0067] The computer 1200 according to this embodiment includes a CPU 1212, a RAM 1214, and a graphics controller 1216, which are connected to each other by a host controller 1210. The computer 1200 also includes input / output units such as a communication interface 1222, a storage device 1224, a DVD drive 1226, and an IC card drive, which are connected to the host controller 1210 via an input / output controller 1220. The DVD drive 1226 may be a DVD-ROM drive, a DVD-RAM drive, or the like. The storage device 1224 may be a hard disk drive, a solid state drive, or the like. The computer 1200 also includes a legacy input / output unit such as a ROM 1230 and a keyboard, which are connected to the input / output controller 1220 via an input / output chip 1240.
[0068] The CPU 1212 operates according to a program stored in the ROM 1230 and the RAM 1214, thereby controlling each unit. The graphic controller 1216 acquires image data generated by the CPU 1212 into a frame buffer or the like provided in the RAM 1214 or into itself, and causes the image data to be displayed on the display device 1218.
[0069] The communication interface 1222 communicates with other electronic devices via a network. The storage device 1224 stores programs and data used by the CPU 1212 in the computer 1200. The DVD drive 1226 reads programs or data from a DVD-ROM 1227 or the like and provides the programs or data to the storage device 1224. The IC card drive reads programs and data from an IC card and / or stores the programs and data in the storage device 1224. Write it onto the IC card.
[0070] The ROM 1230 stores therein a boot program or the like that is executed by the computer 1200 upon activation, and / or a program that depends on the hardware of the computer 1200. The input / output chip 1240 may also connect various input / output units to the input / output controller 1220 via a USB port, a parallel port, a serial port, a keyboard port, a mouse port, and the like.
[0071] The programs are provided by a computer-readable storage medium such as a DVD-ROM 1227 or an IC card. The programs are read from the computer-readable storage medium, installed in the storage device 1224, the RAM 1214, or the ROM 1230, which are also examples of computer-readable storage media, and executed by the CPU 1212. Information processing described in these programs is read by the computer 1200, and brings about cooperation between the programs and the various types of hardware resources described above. An apparatus or method may be constructed by implementing operations or processing of information according to the use of the computer 1200.
[0072] For example, when communication is performed between the computer 1200 and an external device, the CPU 1212 may execute a communication program loaded in the RAM 1214 and instruct the communication interface 1222 to perform communication processing based on the processing described in the communication program. Under the control of the CPU 1212, the communication interface 1222 reads transmission data stored in a transmission buffer area provided in the RAM 1214, the storage device 1224, the DVD-ROM 1227, or a recording medium such as an IC card, and transmits the read transmission data to a network, or writes reception data received from the network to a reception buffer area or the like provided on the recording medium.
[0073] Furthermore, the CPU 1212 may cause all or a necessary portion of a file or database stored in an external recording medium such as the storage device 1224, the DVD drive 1226 (DVD-ROM 1227), an IC card, etc. to be read into the RAM 1214, and perform various types of processing on the data on the RAM 1214. The CPU 1212 may then write back the processed data to the external recording medium.
[0074] Various types of information, such as various types of programs, data, tables, and databases, may be stored in the recording medium and undergo information processing. The CPU 1212 may perform various types of processing on the data read from the RAM 1214, including various types of operations, information processing, conditional judgment, conditional branching, unconditional branching, information search / replacement, etc., as described throughout this disclosure and specified by the instruction sequence of the program, and write back the results to the RAM 1214. The CPU 1212 may also search for information in a file, database, etc. in the recording medium. For example, when a plurality of entries each having an attribute value of a first attribute associated with an attribute value of a second attribute are stored in the recording medium, the CPU 1212 may search for an entry whose attribute value of the first attribute matches a specified condition from among the plurality of entries, read the attribute value of the second attribute stored in the entry, and thereby obtain the attribute value of the second attribute associated with the first attribute that satisfies a predetermined condition.
[0075] The above-described programs or software modules may be stored in a computer-readable storage medium on the computer 1200 or in the vicinity of the computer 1200. In addition, a recording medium such as a hard disk or a RAM provided in a server system connected to a dedicated communication network or the Internet can be used as a computer-readable storage medium, thereby providing the programs to the computer 1200 via the network.
[0076] The blocks in the flowcharts and block diagrams in the present embodiment may represent stages of a process in which an operation is performed or "parts" of an apparatus responsible for performing the operation. Particular stages and "parts" may be implemented by dedicated circuitry, programmable circuitry provided with computer-readable instructions stored on a computer-readable storage medium, and / or a processor provided with computer-readable instructions stored on a computer-readable storage medium. The dedicated circuitry may include digital and / or analog hardware circuits, and may include integrated circuits (ICs) and / or discrete circuits. The programmable circuitry may include reconfigurable hardware circuits, such as, for example, field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), and the like, including AND, OR, XOR, NAND, NOR, and other logical operations, flip-flops, registers, and memory elements.
[0077] A computer-readable storage medium may include any tangible device capable of storing instructions that are executed by a suitable device, such that a computer-readable storage medium having instructions stored thereon comprises an article of manufacture that includes instructions that can be executed to create means for performing the operations specified in the flowcharts or block diagrams. Examples of computer-readable storage media may include electronic storage media, magnetic storage media, optical storage media, electromagnetic storage media, semiconductor storage media, and the like. More specific examples of computer-readable storage media may include floppy disks, diskettes, hard disks, random access memories (RAMs), read-only memories (ROMs), erasable programmable read-only memories (EPROMs or flash memories), electrically erasable programmable read-only memories (EEPROMs), static random access memories (SRAMs), compact disk read-only memories (CD-ROMs), digital versatile disks (DVDs), Blu-ray disks, memory sticks, integrated circuit cards, and the like.
[0078] The computer readable instructions may include either assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state-setting data, or source or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, JAVA, C++, etc., and conventional procedural programming languages such as the "C" programming language or similar programming languages.
[0079] Computer readable instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, or to a programmable circuit, either locally or over a local area network (LAN), a wide area network (WAN), such as the Internet, etc., to cause the processor of the general purpose computer, special purpose computer, or other programmable data processing apparatus, or to a programmable circuit, to execute the computer readable instructions to generate means for performing the operations specified in the flowcharts or block diagrams. Examples of processors include computer processors, processing units, microprocessors, digital signal processors, controllers, microcontrollers, etc.
[0080] Although the present invention has been described above using the embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments. It is clear to those skilled in the art that various modifications and improvements can be made to the above embodiments. It is clear from the description of the claims that such modifications and improvements can also be included in the technical scope of the present invention.
[0081] The device, system, program, and It should be noted that the order of execution of each process, such as operations, procedures, steps, and stages in the present invention and methods, is not specifically stated as "before" or "prior to," and that the process may be performed in any order unless the output of a previous process is used in a subsequent process. Even if the operational flow in the claims, specifications, and drawings is described using "first," "next," and the like for convenience, this does not mean that the process must be performed in that order. [Explanation of symbols]
[0082] 5 system, 10, 11, 12 user, 20 communication network, 100, 101, 102 robot, 200 sensor unit, 201 microphone, 202 depth sensor, 203 camera, 204 distance sensor, 210 sensor module unit, 211 voice emotion recognition unit, 212 speech understanding unit, 213 facial expression recognition unit, 214 face recognition unit, 220 storage unit, 221 reaction rule, 230 user state recognition unit, 232 emotion determination unit, 234 behavior recognition unit, 236 behavior determination unit, 250 behavior control unit, 252 control target, 280 communication processing unit, 300 server, 1200 computer, 1210 host controller, 1212 CPU, 1214 RAM, 1216 graphic controller, 1218 display device, 1220 input / output controller, 1222 Communication interface, 1224 Storage device, 1226 DVD drive, 1227 DVD-ROM, 1230 ROM, 1240 Input / Output Chips
Claims
1. A user state recognition unit that recognizes a user state including a user's behavior; an emotion determining unit that determines an emotion value indicating an emotion of the user based on the user state; an action decision unit that continues a first action corresponding to a behavior of the user when the emotion value is a positive value, and decides on a second action different from the first action when the emotion value is not a positive value; A behavior control system including:
2. the emotion determining unit determines the emotion value for the first action continuously or at regular intervals; the behavior determining unit switches to the second behavior when the determined emotion value does not change or decreases, and changes the behavior content of the second behavior in accordance with the emotion value. The behavior control system according to claim 1.
3. A first robot and a second robot are provided, Each of the first robot and the second robot includes the user state recognition unit, the emotion determination unit, and the behavior determination unit, the emotion determining unit of the first robot transmits the emotion value determined for the user to the second robot; the behavior decision unit of the second robot decides on one of the first behavior and the second behavior in accordance with the emotion value received from the first robot; The behavior control system according to claim 1.
4. The first robot and the second robot are installed in different locations. The behavior control system according to claim 3.
5. A program for causing a computer to function as the behavior control system according to any one of claims 1 to 4.