Behavior control system and program

The behavioral control system addresses the challenge of robots responding appropriately to user interactions by recognizing user states and emotional values, determining suitable actions, and sharing emotional data among users, resulting in improved user interaction and emotional management.

JP2025062885APending Publication Date: 2025-04-15SOFTBANK GROUP CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2023172245
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-10-03
Publication Date
2025-04-15

AI Technical Summary

Technical Problem

Existing behavioral control systems for robots struggle to perform appropriate actions in response to user interactions, particularly in recognizing and responding to user emotions effectively.

Method used

A behavioral control system that includes a user state recognition unit, an emotional determining unit, and a sharing unit, which recognizes user states and emotional values, determines appropriate actions based on positive or negative emotional values, and shares emotional values among multiple users to coordinate responses.

Benefits of technology

The system enables robots to perform appropriate actions by imitating user behaviors when emotional values are positive and applying reaction rules to positively change user emotions when values are negative, thereby enhancing user interaction and emotional response management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025062885000001_ABST
    Figure 2025062885000001_ABST
Patent Text Reader

Abstract

To make a robot perform an appropriate behavior in response to a user behavior.SOLUTION: A behavior control system comprises: a user state recognition unit for recognizing a user state including a user behavior; an emotion determining unit for determining an emotion value indicating an emotion of the user based on the user state; a behavior determination unit for, if the emotion value is a positive value, determining, as the behavior to be executed, a behavior corresponding to the user behavior, and, if the emotion value is not a positive value, determining, as the behavior to be executed, a behavior determined based on a reaction rule in accordance with a user behavior classification; and a sharing unit for sharing the emotion value. If there are a plurality of users, the behavior determination unit determines a behavior based on the emotion value of at least one user shared via the sharing unit, out of the emotion values of the plurality of users.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

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 make 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 includes 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 the user's emotion based on the user state, an action determination unit that determines an action corresponding to the user's behavior as an action to be executed when the emotion value is a positive value, and determines an action determined based on a reaction rule according to the user's behavior classification as an action to be executed when the emotion value is not a positive value, and a sharing unit that shares the emotion value, and when there are multiple users, the action determination unit determines an action based on the emotion value of at least one user shared via the sharing unit among the emotion values ​​of the multiple users.

[0008] The behavior determination unit may determine, when the emotion value is a positive value and is equal to or greater than a threshold value, that the behavior to be executed is an behavior corresponding to the behavior of the user, and when the emotion value is a positive value and is less than a threshold value or when the emotion value is a negative value, that the behavior to be executed is an behavior determined based on a reaction rule in accordance with the behavior classification of the user.

[0009] The behavior control system may further include a behavior recognition unit that recognizes a behavior classification of the user based on the user state, and the reaction rule may define, for each behavior classification, a behavior for positively changing the emotional value of the user.

[0010] The behavior corresponding to the user's behavior may be a behavior that imitates the user's behavior.

[0011] In a second aspect, there is provided a program comprising: 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 emotion 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 19 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, the robot 100 can cause the robot 100 to perform an appropriate action for the action of the user 10. Conventionally, the user's actions are classified and the action including the robot's facial expression and appearance 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 100'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 a reaction rule. This allows the robot 100 to perform an action such as calling out to the user 10 to cheer him up and bring him to a positive emotion if he looks sad. 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 a 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] The robot 100 described above can be used as a robot that serves customers in, for example, commercial facilities, restaurants, etc. In this case, a plurality of robots 100 may be arranged in one space. In this case, the robot 100 may have a shared part in addition to the components described in FIG. 2 above. Since a commercial facility or the like is used by a plurality of people, the positive and negative emotions of the plurality of people are mixed. The robot 100 having the shared part can share the emotion values ​​of the plurality of people among the plurality of robots 100 through the shared part. As an example, when at least one robot 100 serves a plurality of users who use a commercial facility or the like, if there is an angry user or a noisy user, the robot 100 can pass on the acquired emotion value of the user to the other robots 100, in other words, share it. As a result, the behavior decision unit 236 of the other robots 100, which is not the robot 100 that directly acquired the emotion value of the user, etc., decides the behavior based on the shared emotion value of the user. Other robots 100 that have shared the user's emotion value can respond to a user with a negative emotion value, such as getting angry or making noise, based on that emotion value.

[0057] 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.

[0058] 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.

[0059] 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.

[0060] 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.

[0061] 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.

[0062] 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.

[0063] 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.

[0064] 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.

[0065] 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.

[0066] 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.

[0067] 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.

[0068] 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.

[0069] 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.

[0070] 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.

[0071] 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.

[0072] It should be noted that the order of execution of each process, such as operations, procedures, steps, and stages, in the devices, systems, programs, and methods shown in the claims, specifications, and drawings 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 later process. Even if the operational flow in the claims, specifications, and drawings is described using "first," "next," etc. for convenience, it does not mean that the process must be performed in this order. [Explanation of symbols]

[0073] 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; If the emotion value is a positive value, determining an action to be performed that corresponds to an action of the user; a behavior determining unit that determines, when the emotion value is not a positive value, that the behavior to be executed is a behavior determined based on a reaction rule in accordance with the behavior classification of the user; a sharing unit for sharing the emotion value; Including, The action determination unit is When there are a plurality of users, an action is determined based on the emotion value of at least one user shared via the sharing unit among the emotion values ​​of the plurality of users. Behavioral control system.

2. The action determination unit is If the emotion value is a positive value and is equal to or greater than a threshold, determining an action to be executed that corresponds to the action of the user; 2. The behavior control system according to claim 1, wherein when the emotion value is a positive value and less than a threshold value, or when the emotion value is a negative value, the behavior to be executed is determined to be a behavior determined based on a reaction rule in accordance with the behavior classification of the user.

3. The system further includes a behavior recognition unit that recognizes a behavior classification of the user based on the user state, 2. The behavior control system according to claim 1, wherein the reaction rule defines, for each of the behavior categories, a behavior for positively changing the emotion value of the user.

4. 2. The behavior control system according to claim 1, wherein the behavior corresponding to the user's behavior is a behavior that imitates the user's behavior.

5. A program for causing a computer to function as the behavior control system according to any one of claims 1 to 4.