Behavior Control System
The behavior control system enhances robotic interaction by integrating AI emotion and chat engines to recognize user and device emotions, enabling adaptive and appropriate responses through real-time interaction and rule updates.
Patent Information
- Application Number
- JP2024064871
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2023-04-28
- Filing Date
- 2024-04-12
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2044-04-12
AI Technical Summary
Conventional robot behavior systems struggle to appropriately respond to user actions and emotions, lacking effective mechanisms for real-time interaction and adaptation.
A behavior control system for electronic devices, incorporating an AI emotion engine and chat engine to recognize user and device emotions, determine appropriate responses, and update interaction rules based on user feedback, using a combination of large language models and emotion engines to enhance robotic behavior.
Enables robots to perform appropriate and adaptive behaviors in response to user actions and emotions, improving user interaction and affinity by leveraging emotion recognition and rule-based responses.
Smart Images

Figure 0007809156000001 
Figure 0007809156000002 
Figure 0007809156000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a behavior control system. [Background technology]
[0002] Patent Document 1 discloses a technology for determining an appropriate robot behavior for a user's state. The conventional technology in Patent Document 1 recognizes the user's reaction when the robot performs a specific behavior, and if the robot is unable to determine an action for the recognized user's reaction, it updates the robot's behavior by receiving information about an action appropriate for the recognized user's state from a server. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 6053847 Summary of the Invention [Problem to be solved by the invention]
[0004] However, the conventional technology has room for improvement in terms of making the robot perform appropriate actions in response to the user's actions. [Means for solving the problem]
[0005] A behavior control system according to one embodiment of the present disclosure is a behavior control system for an electronic device that is applied to a mirror device having a mirror function and a display function, and includes: a user emotion determination unit that determines an emotion value that indicates the emotion of a user; an electronic device emotion determination unit that determines an emotion value that indicates the emotion of the electronic device; and a behavior determination unit that determines the behavior of the electronic device based on at least one of the user's emotion value and the electronic device's emotion value and information acquired by a sentence generation model having an interaction function that allows the user to interact with the electronic device, wherein the behavior determination unit determines wellness content that the electronic device will suggest to the user. [Effects of the Invention]
[0006] According to the present invention, it is possible to provide a behavior control system that can cause a robot to perform an appropriate behavior in response to a user's behavior. [Brief explanation of the drawings]
[0007] [Figure 1] 1 shows an example of a system 5 according to the present embodiment. [Figure 2] 1 shows a schematic functional configuration of a robot 100. [Figure 3] 10 shows an example of an operation flow of the robot 100. [Figure 4] 1 shows an example of a hardware configuration of a computer 1200. [Figure 5] 3 shows an emotion map 300 onto which multiple emotions are mapped. [Figure 6] 9 shows an emotion map 900 onto which multiple emotions are mapped. [Figure 7] An example of an emotion table is shown below. [Figure 8] An example of an emotion table is shown below. [Figure 9] 4 is a flowchart illustrating the operation of the robot 100 implemented in the mirror device. DETAILED DESCRIPTION OF THE INVENTION
[0008] 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.
[0009] (Present embodiment) FIG. 1 schematically illustrates an example of a system 5 according to this embodiment. The system 5 includes a robot 100, a robot 101, a robot 102, and a server 300. A user 10, a user 11, and a user 12 are users of the robots 100, 101, and 102, respectively. The users 10, 11, and 12 are, for example, family members of the house in which the robot 100 is located, or strangers visiting the house. The robots 100, 101, and 102 can also be placed at the reception desk of a store or office, and used to greet visiting customers. In the description of this embodiment, the robots 101 and 102 have substantially the same functions as the robot 100. Therefore, the system 5 will be described mainly focusing on the functions of the robot 100.
[0010] The robot 100 converses with the user 10 and provides the user 10 with video. At this time, the robot 100 converses with the user 10 and provides the video, etc. to the user 10 in cooperation with a server 300, etc., with which the robot 100 can communicate via a communication network 20. For example, the robot 100 not only learns appropriate conversation by itself, but also learns to more appropriately converse with the user 10 in cooperation with the server 300. The robot 100 also records captured video data of the user 10 in the server 300, and requests the video data, etc. from the server 300 as needed and provides it to the user 10. In FIG. 1, the robot 100 is assumed to be an autonomously moving robot. However, the robot 100 can be applied to any device (e.g., an in-vehicle terminal, a mobile terminal, etc.) equipped with an AI emotion engine or an AI chat engine (a text generation model with a dialogue function) described below.
[0011] The robot 100 is equipped with an AI emotion engine (described below) that has the function of generating simulated human emotions, and determines and stores emotion values that represent the types of its own emotions. For example, the robot 100 has emotion values that represent the intensity of each of the following emotions: "joy," "anger," "sorrow," "pleasure," "discomfort," "relief," "anxiety," "sadness," "excitement," "worry," "relief," "fulfillment," "emptiness," and "neutral." For example, when the robot 100 is in a state where the emotion value of excitement is high, it speaks at a fast speed when conversing with the user 10. In this way, the robot 100 can express its own emotions through its actions.
[0012] Furthermore, the robot 100 may be configured to match an AI chat engine (chat engine) with an AI emotion engine (emotion engine) to determine the behavior of the robot 100 corresponding to the emotion of the user 10. Specifically, the robot 100 may be configured to recognize the behavior of the user 10, determine the emotion of the user 10 regarding the user's behavior, and determine the behavior of the robot 100 corresponding to the determined emotion.
[0013] More specifically, when the robot 100 recognizes the behavior of the user 10, it uses a pre-set chat engine to automatically generate the behavior that the robot 100 should take in response to the behavior of the user 10. The chat engine may be interpreted as an algorithm and calculation for automatic dialogue processing using text. The chat engine is described, for example, in JP 2018-081444 A and chatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ) and therefore a detailed description thereof will be omitted. Such a chat engine is configured using a large language model (LLM). As described above, in this embodiment, by combining a large-scale language model and an emotion engine, it is possible to reflect the emotions of the user 10 and the robot 100, as well as various linguistic information, in the behavior of the robot 100. In other words, according to this embodiment, by combining a chat engine and an emotion engine, a synergistic effect can be obtained.
[0014] 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.
[0015] The robot 100 stores rules that define the actions that the robot 100 will take based on the emotions of the user 10, the emotions of the robot 100, and the actions of the user 10, and performs various actions in accordance with the rules.
[0016] Specifically, the robot 100 has reaction rules for determining the behavior of the robot 100 based on the emotions of the user 10, the emotions of the robot 100, and 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." Furthermore, the reaction rules define the behavior of the robot 100 as "apologizing" when the behavior of the user 10 is "angry." Furthermore, the reaction rules define the behavior of the robot 100 as "answering" when the behavior of the user 10 is "asking a question." Furthermore, the reaction rules define the behavior of the robot 100 as "calling out" when the behavior of the user 10 is "sad."
[0017] When the robot 100 recognizes that the behavior of the user 10 is "angry" based on the reaction rules, the robot 100 selects the behavior of "apologizing" defined in the reaction rules as the behavior to be performed 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 representing the word "apologize."
[0018] In addition, it is defined that when the emotion of the robot 100 is "normal" (i.e., "joy" = 0, "anger" = 0, "sadness" = 0, "happiness" = 0) and the condition that the state of the user 10 is "alone and looks lonely" is met, the emotion of the robot 100 changes to "worried" and the action of "calling out" can be performed.
[0019] When the robot 100 recognizes based on the reaction rule that the current emotion of the robot 100 is "normal" and that the user 10 appears lonely, the robot 100 increases the emotion value of "sad" of the robot 100. Furthermore, the robot 100 selects the action of "calling out" defined in the reaction rule as the action to be performed toward the user 10. For example, when the robot 100 selects the action of "calling out," the robot 100 converts the phrase "What's wrong?", which indicates concern, into a worried voice and outputs it.
[0020] The robot 100 also transmits to the server 300 user reaction information indicating that this behavior has elicited a positive reaction from the user 10. The user reaction information includes, for example, the user's behavior of "getting angry," the robot's 100 behavior of "apologizing," the fact that the user's 10 reaction was positive, and the attributes of the user 10.
[0021] 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 then analyzes the user reaction information from the robots 100, 101, and 102 and updates the reaction rules.
[0022] 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.
[0023] 2 shows a schematic functional configuration of the robot 100. The robot 100 has a sensor unit 200, a sensor module unit 210, a storage unit 220, a user state recognition unit 230, a user emotion determination unit 231, a robot emotion determination unit (electronic device emotion determination unit) 232, a behavior recognition unit 234, a behavior determination unit 236, a memory control unit 238, a behavior control unit 250, a control target 252, and a communication processing unit 280.
[0024] The control target 252 includes a display device, a speaker, LEDs in the eyes, and motors for driving the arms, hands, and feet, etc., mounted on the robot 100. The posture and gestures of the robot 100 are controlled by controlling the motors of the arms, hands, and feet, 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.
[0025] 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 audio data. The microphone 201 may be provided on the head of the robot 100 and may have a binaural recording function. The 3D depth sensor 202 continuously emits an infrared pattern and detects the contour of an object by 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 images using visible light and generates visible light video information. The distance sensor 204 detects the distance to an object by emitting, 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, etc.
[0026] 2, the components of the robot 100 excluding the control target 252 and the sensor unit 200 are examples of components included in the behavior control system of the robot 100. The behavior control system of the robot 100 controls the control target 252.
[0027] The storage unit 220 includes reaction rules 221 and history data 222. The history data 222 includes the user 10's past emotional values and behavioral history. This emotional value and behavioral history is recorded for each user 10, for example, by being associated with the user 10's identification information. At least a portion of the storage unit 220 is implemented as a storage medium such as a memory. It may also include a person DB that stores the user 10's facial images, attribute information of the user 10, and the like. Note that the functions of the components of the robot 100 shown in FIG. 2 , 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 CPU operations using operating system (OS) and programs running on the OS.
[0028] 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.
[0029] 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 quantities such as frequency components of the voice and recognizes the voice and emotion of the user 10 based on the extracted feature quantities. 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.
[0030] 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 relationships, etc. of the eyes and mouth.
[0031] 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.
[0032] 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, it mainly performs processing related to perception using the analysis results of the sensor module unit 210. For example, it generates perceptual information such as "Dad is alone" or "There is a 90% chance that Dad is not smiling." It then performs processing to understand the meaning of the generated perceptual information. For example, it generates semantic information such as "Dad is alone and looks lonely."
[0033] The user emotion determination unit 231 includes an emotion recognition engine 231a, and 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 into a pre-trained neural network to obtain an emotion value indicating the emotion of the user 10.
[0034] Here, the emotion value indicating the emotion of user 10 is a value indicating the positive or negative emotion of the user. For example, if the user's emotion is a cheerful emotion accompanied by a sense of pleasure or comfort, such as "joy," "pleasure," "comfort," "relief," "excitement," "relief," and "fulfillment," the value is positive, and the cheerfulr the emotion, the larger the value. If the user's emotion is a negative emotion, such as "anger," "sorrow," "discomfort," "anxiety," "sorrow," "worry," and "emptiness," the value is negative, and the more unpleasant the emotion, the larger the absolute value of the negative value. If the user's emotion is none of the above ("neutral"), the value is 0.
[0035] The robot emotion determination unit 232 determines an emotion value indicating the emotion of the robot 100 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. The robot emotion determination unit 232 includes an endocrine control unit 232a and an emotion generation engine 232b. The endocrine control unit 232a adjusts the parameters of the neural network used in the emotion generation engine 232b using 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 endocrine control unit 232a adjusts a parameter corresponding to the amount of dopamine released. Dopamine is an example of an endocrine substance. An endocrine substance refers to a substance secreted in the body that transmits signals, such as a neurotransmitter or hormone. However, the endocrine substance of the robot 100 itself is one piece of information that affects the behavior of the robot 100, and does not mean that the robot 100 actually generates the endocrine substance. Note that the use of endocrine secretions to determine a robot's own emotions is publicly known, as disclosed in, for example, Japanese Patent Application Laid-Open No. 2018-81583, and therefore detailed explanation will be omitted.
[0036] The emotion generation engine 232b uses a neural network to determine an emotion value that indicates the emotion of the robot 100, based on the information analyzed by the sensor module unit 210, the state of the user 10 recognized by the user state recognition unit 230, and parameters adjusted by the endocrine control unit 232a. The emotion value of the robot 100 includes emotion values for each of a plurality of emotion classifications, and in this embodiment, values (0 to 5) that indicate the strength of each of "joy," "anger," "sorrow," and "happiness" are assumed.
[0037] To explain this using a specific example, for example, if the user state recognition unit 230 recognizes that the user 10 looks lonely, the endocrine control unit 232a performs control to increase the parameter corresponding to the emotion value of "sadness" of the robot 100, and as a result, the robot emotion determination unit 232 increases the emotion value of "sadness" of the robot 100. Also, if the user state recognition unit 230 recognizes that the user 10 is smiling, the endocrine control unit 232a performs control to increase the parameter corresponding to the emotion value of "joy" of the robot 100, and as a result, the robot emotion determination unit 232 increases the emotion value of "joy" of the robot 100.
[0038] The robot emotion determination unit 232 may determine the emotion value indicating the emotion of the robot 100 by further considering the state of the robot 100. For example, when the remaining battery power of the robot 100 is low or when the surrounding environment of the robot 100 is pitch black, the endocrine control unit 232a may perform control to increase a parameter corresponding to the emotion value of "sadness" of the robot 100, thereby causing the robot emotion determination unit 232 to increase the emotion value of "sadness" of the robot 100. Furthermore, when the user 10 continues to talk to the robot 100 despite the remaining battery power being low, the endocrine control unit 232a may perform control to increase a parameter corresponding to the emotion value of "anger" of the robot 100, thereby causing the robot emotion determination unit 232 to increase the emotion value of "anger" of the robot 100.
[0039] 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 into a pre-trained neural network, the probability of each of a plurality of predetermined behavior classifications (for example, "laughing," "angry," "asking a question," and "sad") is obtained, and the behavior classification with the highest probability is recognized as the behavior of the user 10.
[0040] As described above, in this embodiment, the robot 100 identifies the user 10 and then acquires the content of the user's utterance. When acquiring and using the content of the utterance, the robot 100 obtains the necessary consent in accordance with laws and regulations from the user 10, and the behavior control system of the robot 100 according to this embodiment takes into consideration the protection of the personal information and privacy of the user 10.
[0041] The behavior determination unit 236 determines a behavior corresponding to the behavior of the user 10 recognized by the behavior recognition unit 234 based on the current emotion value of the user 10 determined by the user emotion determination unit 231, history data 222 of past emotion values determined by the user emotion determination unit 231 before the current emotion value of the user 10 was determined, and the emotion value of the robot 100 determined by the robot emotion determination unit 232. In this embodiment, a case is described in which the behavior determination unit 236 uses one most recent emotion value included in the history data 222 as the past emotion value of the user 10, but the disclosed technology is not limited to this aspect. For example, the behavior determination unit 236 may use multiple most recent emotion values as the past emotion value of the user 10, or may use an emotion value from a unit period ago, such as one day ago. Furthermore, the behavior determination unit 236 may determine a behavior corresponding to the behavior of the user 10 by further considering not only the current emotion value of the robot 100 but also the history of the past emotion values of the robot 100. The behavior determined by the behavior determining unit 236 includes gestures made by the robot 100 or speech content of the robot 100 .
[0042] The behavior determination unit 236 according to this embodiment determines the behavior of the robot 100 as a behavior corresponding to the behavior of the user 10, based on a combination of the past and current emotional values of the user 10, the emotional value of the robot 100, the behavior of the user 10, and the reaction rules 221. For example, if the past emotional value of the user 10 is a positive value and the current emotional value is a negative value, the behavior determination unit 236 determines, as a behavior corresponding to the behavior of the user 10, a behavior that will change the emotional value of the user 10 to a positive value.
[0043] The reaction rule 221 defines the behavior of the robot 100 according to a combination of the past emotional value and the current emotional value of the user 10, the emotional value of the robot 100, and the behavior of the user 10. For example, if the past emotional value of the user 10 is a positive value and the current emotional value is a negative value, and the behavior of the user 10 is sad, a combination of gestures and speech content when asking a question to encourage the user 10 with gestures is defined as the behavior of the robot 100.
[0044] For example, the reaction rules 221 define behaviors of the robot 100 for all combinations of patterns of the robot 100's emotional values (1296 patterns, which are the fourth power of six values "joy," "anger," "sadness," and "happiness" from "0" to "5"), patterns of combinations of the user 10's past emotional values and current emotional values, and behavioral patterns of the user 10. That is, for each pattern of the robot 100's emotional values, behaviors of the robot 100 are defined according to the behavioral patterns of the user 10 for each of a plurality of combinations of the user 10's past emotional values and current emotional values, such as negative and negative values, negative and positive values, positive and negative values, positive and positive values, negative and normal values, and normal and normal values. Note that the behavior determination unit 236 may transition to an operation mode in which the behavior of the robot 100 is determined using the history data 222 when the user 10 makes an utterance intending to continue a conversation from a past topic, such as "I want to talk about that topic we talked about last time." The reaction rules 221 may prescribe at least one of a gesture and a statement as the behavior of the robot 100 for each of the patterns (1296 patterns) of the emotional value of the robot 100. Alternatively, the reaction rules 221 may prescribe at least one of a gesture and a statement as the behavior of the robot 100 for each group of patterns of the emotional value of the robot 100.
[0045] The strength of each gesture included in the behavior of the robot 100 defined in the reaction rules 221 is predetermined. The strength of each utterance included in the behavior of the robot 100 defined in the reaction rules 221 is predetermined.
[0046] The memory control unit 238 determines whether or not to store data including the behavior of the user 10 in the history data 222 based on the predetermined behavior intensity for the behavior determined by the behavior determination unit 236 and the emotion value of the robot 100 determined by the robot emotion determination unit 232. Specifically, if the total intensity value, which is the sum of the sum of the emotion values for each of the multiple emotion classifications of the robot 100, the predetermined intensity for the gesture included in the behavior determined by the behavior determination unit 236, and the predetermined intensity for the speech content included in the behavior determined by the behavior determination unit 236, is equal to or greater than a threshold value, it is determined that data including the behavior of the user 10 is to be stored in the history data 222.
[0047] When the memory control unit 238 decides to store data including the behavior of the user 10 in the history data 222, it stores in the history data 222 the behavior determined by the behavior determination unit 236, information analyzed by the sensor module unit 210 from the present time up to a certain period of time ago (for example, all surrounding information such as data on the sound, images, smells, etc. of the scene), and the state of the user 10 recognized by the user state recognition unit 230 (for example, the facial expression, emotions, etc. of the user 10).
[0048] 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 that includes 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 rate of the sound based on the emotional value of the robot 100. For example, the behavior control unit 250 determines a faster speaking rate as the emotional value of the robot 100 increases. In this way, the behavior control unit 250 determines the execution form of the behavior determined by the behavior determination unit 236 based on the emotional value determined by the robot emotion determination unit 232.
[0049] 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. Alternatively, 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. If an impact is detected by the touch sensor included in the sensor unit 200, the behavior control unit 250 may recognize that the user 10's emotion has worsened, or if the detection result of the touch sensor included in the sensor unit 200 indicates that the user 10 is smiling, happy, or the like, the behavior control unit 250 may recognize that the user 10's emotion has improved. Information indicating the user 10's reaction is output to the communication processing unit 280.
[0050] Furthermore, after the behavior control unit 250 executes the behavior determined by the behavior determination unit 236 in the execution mode determined according to the emotion of the robot 100, the behavior control unit 250 controls the robot emotion determination unit 232 to further change the emotion value of the robot 100 based on the user's reaction to the execution of the behavior. Specifically, the robot emotion determination unit 232 increases the emotion value of "joy" of the robot 100 when the user's reaction to the behavior determined by the behavior determination unit 236 being performed on the user in the execution mode determined by the behavior control unit 250 is not negative. Furthermore, the robot emotion determination unit 232 increases the emotion value of "sad" of the robot 100 when the user's reaction to the behavior determined by the behavior determination unit 236 being performed on the user in the execution mode determined by the behavior control unit 250 is negative.
[0051] Furthermore, the behavior control unit 250 expresses the emotion of the robot 100 based on the determined emotion value of the robot 100. For example, when the emotion value of "happiness" of the robot 100 is increased, the behavior control unit 250 controls the control object 252 to make the robot 100 perform a happy gesture. When the emotion value of "sadness" of the robot 100 is increased, the behavior control unit 250 controls the control object 252 to make the robot 100 assume a droopy posture.
[0052] 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. The communication processing unit 280 also 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.
[0053] The server 300 communicates between the robot 100, the robot 101, and the robot 102 and the server 300, receives user reaction information transmitted from the robot 100, and updates the reaction rules based on reaction rules including actions that have received positive reactions. Note that the functions of the server 300 may be implemented by one or more computers. At least some of the functions of the server 300 may be implemented by a virtual machine. Also, at least some of the functions of the server 300 may be implemented in the cloud.
[0054] Fig. 3 shows an example of an operation flow relating to an operation for determining an action in 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 the step that is executed.
[0055] 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 .
[0056] In step S102, the user emotion determination unit 231 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.
[0057] In step S103, the robot emotion determination unit 232 determines an emotion value indicating the emotion of the robot 100 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. The robot emotion determination unit 232 adds the determined emotion value of the user 10 to the history data 222.
[0058] In step S104 , 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 .
[0059] In step S106, the behavior determination unit 236 determines the behavior of the robot 100 based on a combination of the current emotional value of the user 10 determined in step S102 and the past emotional values included in the history data 222, the emotional value of the robot 100, the behavior of the user 10 recognized by the behavior recognition unit 234, and the reaction rules 221.
[0060] In step S108, the behavior control unit 250 controls the control target 252 based on the behavior determined by the behavior determination unit 236.
[0061] In step S110, the memory control unit 238 calculates a total intensity value based on the predetermined behavior intensities for the behavior determined by the behavior determination unit 236 and the emotion value of the robot 100 determined by the robot emotion determination unit 232.
[0062] In step S112, the storage control unit 238 determines whether the total intensity value is equal to or greater than a threshold. If the total intensity value is less than the threshold, the process ends without storing data including the behavior of the user 10 in the history data 222. On the other hand, if the total intensity value is equal to or greater than the threshold, the process proceeds to step S114.
[0063] In step S114, the behavior determined by the behavior determination unit 236, the information analyzed by the sensor module unit 210 from the present time up to a certain period of time ago, and the state of the user 10 recognized by the user state recognition unit 230 are stored in the history data 222.
[0064] As described above, the robot 100 determines an emotion value indicating the emotion of the robot 100 based on the state of the user, and determines whether or not to store data including the behavior of the user 10 in the history data 222 based on the emotion value of the robot 100. This makes it possible to reduce the capacity of the history data 222 that stores data including the behavior of the user 10. For example, when the robot 100 determines that the state of the user 10 years from now will be the same as that of 10 years ago, the robot 100 can present to the user 10 all kinds of peripheral information, such as the state of the user 10 from 10 years ago (for example, the facial expression, emotions, etc. of the user 10), as well as data on the sounds, images, smells, etc. of the situation.
[0065] Furthermore, the robot 100 can be made to perform an appropriate action in response to the action of the user 10. Conventionally, the user's actions are classified and an action, including the robot's facial expression and appearance, is determined. In contrast, the robot 100 determines the current emotional value of the user 10 and performs an action on the user 10 based on the past emotional value and the current emotional value. Therefore, for example, if the user 10 was cheerful yesterday but is depressed today, the robot 100 can utter an utterance such as, "You were cheerful yesterday, but what's wrong with you today?" The robot 100 can also utter an utterance using gestures. For example, if the user 10 was depressed yesterday but is cheerful today, the robot 100 can utter an utterance such as, "You were depressed yesterday, but you seem cheerful today, don't you?" For example, if the user 10 who was cheerful yesterday is more cheerful today than yesterday, the robot 100 can utter an utterance such as, "You're more cheerful today than yesterday. Has anything better happened than yesterday?" Furthermore, for example, the robot 100 can say to the user 10 whose emotional value is equal to or greater than 0 and whose emotional value fluctuation range continues to be within a certain range, "Your mood has been stable recently, which is good."
[0066] Furthermore, for example, the robot 100 may ask the user 10, "Did you finish the homework you told me about yesterday?", and if the user 10 replies, "Yes, I did," the robot 100 may utter a positive utterance such as "Great!" and perform a positive gesture such as clapping or a thumbs-up. Furthermore, for example, if the user 10 utters, "The presentation you gave the day before yesterday went well," the robot 100 may utter a positive utterance such as "Good job!" and perform the above-mentioned positive gesture. In this way, the robot 100 may be expected to make the user 10 feel a sense of affinity with the robot 100 by performing an action based on the state history of the user 10.
[0067] In the above embodiment, the robot 100 recognizes the user 10 using a facial image of the user 10, but the disclosed technology is not limited to this. For example, the robot 100 may recognize the user 10 using a voice uttered by the user 10, the email address of the user 10, the SNS ID of the user 10, or an ID card with a built-in wireless IC tag that the user 10 possesses.
[0068] 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 some of the functions of the server 300 may be implemented by a virtual machine. At least some of the functions of the server 300 may be implemented in the cloud.
[0069] 4 schematically shows an example of the hardware configuration of a computer 1200 that functions 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 can cause the computer 1200 to perform operations associated with the apparatus according to the present embodiment or one or more "parts" thereof, and / or can cause the computer 1200 to perform a process according to the present embodiment or steps of the process. Such a program can be executed by the CPU 1212 to cause the computer 1200 to perform specific operations associated with some or all of the blocks in the flowcharts and block diagrams described herein.
[0070] The computer 1200 according to this embodiment includes a CPU 1212, a RAM 1214, and a graphics controller 1216, which are interconnected by a host controller 1210. The computer 1200 also includes input / output units such as a communications 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 ROM 1230 and legacy input / output units such as a keyboard, which are connected to the input / output controller 1220 via an input / output chip 1240.
[0071] The CPU 1212 operates according to programs stored in the ROM 1230 and the RAM 1214, thereby controlling each unit. The graphics controller 1216 acquires image data generated by the CPU 1212 into a frame buffer or the like provided in the RAM 1214 or into the graphics controller itself, and causes the image data to be displayed on the display device 1218.
[0072] 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 them to the storage device 1224. The IC card drive reads programs and data from an IC card and / or writes programs and data to an IC card.
[0073] The ROM 1230 stores therein a boot program or the like that is executed by the computer 1200 upon activation, and / or programs that depend 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, etc.
[0074] 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, RAM 1214, or 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 causes cooperation between the programs and the various types of hardware resources described above. An apparatus or method may be configured by implementing operations or processing of information in accordance with the use of the computer 1200.
[0075] For example, when communication is performed between the computer 1200 and an external device, the CPU 1212 may execute a communication program loaded into 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 the network, or writes reception data received from the network to a reception buffer area or the like provided on the recording medium.
[0076] 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 may 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.
[0077] Various types of information, such as various types of programs, data, tables, and databases, may be stored on the recording medium and may undergo information processing. The CPU 1212 may perform various types of processing on 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 sequences of the programs, and write the results back to the RAM 1214. The CPU 1212 may also search for information in a file, database, etc. on the recording medium. For example, if multiple entries, each having an attribute value of a first attribute associated with an attribute value of a second attribute, are stored on 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 multiple 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.
[0078] The above-described programs or software modules may be stored in a computer-readable storage medium on or near the computer 1200. A recording medium such as a hard disk or RAM provided in a server system connected to a dedicated communication network or the Internet can also be used as a computer-readable storage medium, thereby providing the programs to the computer 1200 via the network.
[0079] The blocks in the flowcharts and block diagrams in the present embodiments 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, including integrated circuits (ICs) and / or discrete circuits. The programmable circuitry may include reconfigurable hardware circuits, such as field programmable gate arrays (FPGAs) and programmable logic arrays (PLAs), including AND, OR, XOR, NAND, NOR, and other logical operations, flip-flops, registers, and memory elements.
[0080] A computer-readable storage medium may include any tangible device capable of storing instructions that are executed by an appropriate device, such that a computer-readable storage medium having instructions stored thereon comprises an article of manufacture, including 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, etc. More specific examples of computer-readable storage media may include floppy disks, diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), electrically erasable programmable read-only memory (EEPROM), static random access memory (SRAM), compact disc read-only memory (CD-ROM), digital versatile disc (DVD), Blu-ray disc, memory stick, integrated circuit card, etc.
[0081] 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.
[0082] Computer-readable instructions may be provided locally or over a wide area network (WAN) such as a local area network (LAN), the Internet, etc. to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, or programmable circuitry, such that the processor or programmable circuitry executes 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.
[0083] (Determining emotions using emotion maps) The user emotion determination unit 231 may determine the user's emotion in accordance with a specific mapping. Specifically, the user emotion determination unit 231 may use the emotion recognition engine 231a to determine the user's emotion in accordance with an emotion map (see FIG. 5), which is a specific mapping. Similarly, the robot emotion determination unit 232 may use the emotion generation engine 232b to determine the emotion of the robot 100 in accordance with an emotion map (see FIG. 5), which is a specific mapping. Note that when there is no need to particularly distinguish between the emotion recognition engine 231a and the emotion generation engine 232b, they will be collectively referred to as emotion engines.
[0084] FIG. 5 is a diagram illustrating an emotion map 300 on which multiple emotions are mapped. In the emotion map 300, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion encompasses both emotions and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 300, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[0085] (1) For example, if the emotion engine detects emotions every 100 msec, the frequency of the reaction action (e.g., a backchannel) of the robot 100 may be set at a timing at least as frequent as the emotion engine's detection frequency (100 msec), or may be set at a timing earlier than this. The emotion engine's detection frequency may be interpreted as a sampling rate.
[0086] By detecting emotions in about 100 msec and immediately performing a corresponding reaction (e.g., a back-channel response), unnatural back-channel responses are avoided, enabling a natural dialogue that reads the atmosphere. The reaction (e.g., a back-channel response) is performed according to the direction and degree (strength) of the mandala in the emotion map 300 of the robot 100. Note that the detection frequency (sampling rate) of the emotion recognition engine 231a is not limited to 100 ms and may be changed depending on the situation (e.g., when playing sports), the user's age, etc.
[0087] (2) The directionality and intensity of emotions may be set in advance in reference to the emotion map 300, and the movement of the back-channel and the strength of the back-channel may be set. For example, if the robot 100 feels a sense of stability or security, the robot 100 may nod and continue listening. If the robot 100 feels anxious, confused, or suspicious, the robot 100 may tilt its head or stop shaking its head.
[0088] These emotions are distributed in the 3 o'clock direction on emotion map 300, and typically fluctuate between relief and anxiety. In the right half of emotion map 300, situational awareness dominates over internal sensations, resulting in a sense of calm.
[0089] (3) If the robot 100 receives a compliment and feels good, the filler "ah" may precede the line, and if the robot 100 receives harsh words and feels pain, the filler "ugh!" may precede the line. A physical reaction, such as the robot 100 crouching down while saying "ugh!", may also be included. These emotions are distributed around the 9 o'clock position on the emotion map 300.
[0090] (4) In the left half of the emotion map 300, internal sensations (reactions) are more important than situational awareness. This can give the impression of an unconscious reaction.
[0091] When the robot 100 feels a positive feeling in its situational awareness while experiencing an internal sensation (reaction) of understanding, the robot 100 may nod deeply while looking at the other person, or may say "uh-huh." In this way, the robot 100 may generate a behavior that shows a balanced positive feeling toward the other person, that is, tolerance and tolerance toward the other person. Such emotions are distributed around 12 o'clock on the emotion map 300.
[0092] Conversely, even when the robot 100 is aware of an internal sensation (reaction) of discomfort, the robot 100 may shake its head when it feels disgust, or may turn the LEDs in its eyes red and glare at the other person when it feels hatred. These emotions are distributed around the 6 o'clock position on the emotion map 300.
[0093] (5) The inside of the emotion map 300 represents the mind, and the outside of the emotion map 300 represents behavior, so the further outside the emotion map 300 you go, the more visible the emotions become (the more they are expressed in behavior).
[0094] (6) When listening to someone while feeling a sense of security, which is distributed around 3 o'clock on the emotion map 300, the robot 100 may nod its head lightly and say "hmm." However, when listening to someone while feeling a sense of love, which is distributed around 12 o'clock, the robot 100 may nod its head strongly.
[0095] The user emotion determination unit 231 inputs the information analyzed by the sensor module unit 210 and the recognized state of the user 10 into a pre-trained neural network, and uses the emotion recognition engine 231a to obtain emotion values indicating each emotion shown in the emotion map 300 to determine the emotion of the user 10. This neural network is pre-trained based on multiple pieces of training data that are combinations of the information analyzed by the sensor module unit 210, the recognized state of the user 10, and emotion values indicating each emotion shown in the emotion map 300. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 6. FIG. 6 shows an example in which multiple emotions, such as "relieved," "calm," and "reassuring," have similar emotion values.
[0096] On the other hand, the robot emotion determination unit 232 inputs the information analyzed by the sensor module unit 210, the state of the user 10 recognized by the user state recognition unit 230, and the state of the robot 100 into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 300 using the emotion generation engine 232b, and determines the emotion of the robot 100. This neural network is pre-trained based on a plurality of training data that are combinations of the information analyzed by the sensor module unit 210, the recognized state of the user 10, the state of the robot 100, and emotion values indicating each emotion shown in the emotion map 300. For example, the neural network is trained based on training data indicating that when it is recognized from the output of a touch sensor (not shown) that the robot 100 is being stroked by the user 10, the emotional value of "happy" is "3," and based on training data indicating that when it is recognized from the output of an acceleration sensor (not shown) that the robot 100 is being hit by the user 10, the emotional value of "anger" is "3." Furthermore, this neural network is trained so that emotions that are placed close to each other have similar values, as in the emotion map 900 shown in FIG.
[0097] The behavior determination unit 236 generates the robot's behavior content by adding fixed sentences to ask about the robot's behavior content corresponding to the user's behavior to text representing the user's behavior, the user's emotions, and the robot's emotions, and inputting the text into the dialogue function.
[0098] For example, the behavior determination unit 236 obtains text representing the state of the robot 100 from the emotion of the robot 100 determined by the robot emotion determination unit 232, using an emotion table such as that shown in Fig. 7. Here, in the emotion table, an index number is assigned to each emotion value for each type of emotion, and text representing the state of the robot 100 is stored for each index number.
[0099] When the emotion of the robot 100 determined by the robot emotion determination unit 232 corresponds to the index number "2", the text "very happy state" is obtained. When the emotions of the robot 100 correspond to multiple index numbers, multiple texts representing the state of the robot 100 are obtained.
[0100] An emotion table such as that shown in FIG. 8 is also prepared for the emotions of the user 10. Here, if the user's behavior is "speaking good mood," the emotion of the robot 100 is index number "2," and the emotion of the user 10 is index number "3," the following is input to the chat engine: "The robot is in a very happy state. The user is in a normal happy state. The user spoke to the user saying 'good mood.' How would you respond as the robot?" and the content of the robot's behavior is acquired. The behavior determination unit 236 determines the robot's behavior from this content of the behavior.
[0101] In this way, the robot 100 can change its behavior according to the index number corresponding to the robot's emotion, so that the user gets the impression that the robot has a heart, and is encouraged to take actions such as talking to the robot.
[0102] Furthermore, the behavior determination unit 236 may generate the robot's behavior content by adding not only text representing the user's behavior, the user's emotions, and the robot's emotions, but also text representing the contents of the history data 222, and then adding a fixed sentence for asking about the robot's behavior content corresponding to the user's behavior, and inputting the result into the dialogue function. This allows the robot 100 to change its behavior according to the history data representing the user's emotions and behavior, so that the user has the impression that the robot has individuality and is encouraged to take actions such as talking to the robot. Furthermore, the history data may further include the robot's emotions and behavior.
[0103] (Example) Next, an example in which the robot 100 of this embodiment is used as a mirror device will be described. The mirror device is an IoT (Internet of Things) mirror connected to a communication network such as the Internet, and is equipped with a half mirror, a display panel, a camera, a speaker, a microphone, various sensors, etc.
[0104] For example, by tapping the half mirror installed in the mirror device, the user 10 can select whether to have the mirror device function as a normal mirror (mirror function) or as a display (display function). A mirror device having both a mirror function and a display function can not only display weather forecasts, provide traffic information, and manage schedules, but also use an implemented facial recognition function to evaluate the user's 10 skin condition or makeup application, and collect and analyze data for the user's 10 health management. Note that the mirror device can be installed in various places, such as the user's 10 home, a store, an office, etc.
[0105] The sensor unit 200 of the robot 100 includes, for example, a temperature sensor, a humidity sensor, a touch sensor, etc. in addition to the camera and microphone that constitute the mirror device. By using the camera and microphone, the robot 100 can communicate with the user 10 and monitor the status of the user 10. The control target 252 of the robot 100 includes, for example, a display panel and a speaker that constitute the mirror device.
[0106] In the example shown below, it is assumed that the user 10 uses a sentence generation model to exchange messages (including text and voice; hereinafter simply referred to as "conversation") with the robot 100 to consult about wellness such as health and beauty, while the robot 100 receives the consultation from the user 10 and suggests appropriate content related to wellness (hereinafter referred to as wellness content).
[0107] 9 is a flowchart illustrating the operation of the robot 100 implemented in the mirror device. The robot 100 proposes wellness content (e.g., "Why not try a certain diet?") according to the preferences, situation, and reaction of the user 10 through the following steps S1 to S5-2.
[0108] (Step S1) The robot 100 acquires the state of the user 10, the emotional value of the user 10, the emotional value of the robot 100, and the history data 222. Specifically, the same processing as in steps S100 to S103 above is performed to acquire the state of the user 10, the emotional value of the user 10, the emotional value of the robot 100, and the history data 222.
[0109] (Step S2) The robot 100 may converse with the user 10 based on, for example, the face, body condition, clothing, age, sex, etc. of the user 10 reflected in the mirror device, and acquire the user's preferences (interests) regarding wellness.
[0110] Specifically, the behavior determination unit 236 determines, as the behavior of the robot 100, an utterance to ask the user 10 about their wellness preferences, such as what health and beauty topics they are currently interested in. Then, the behavior control unit 250 controls the control target 252 to make an utterance to ask the user 10 a question. The user state recognition unit 230 recognizes the wellness preferences of the user 10 based on the information analyzed by the sensor module unit 210 (for example, the user's answer).
[0111] For example, the robot 100 may ask the user 10, "You seem to be a little swollen lately. Are you interested in exercising, reviewing your diet, etc.?", and if the user 10 replies, "I'm interested in exercising," the robot 100 may utter a question such as, "How much time do you have to exercise each day?". Furthermore, the robot 100 may analyze the user's preferences not only from the user's answers to the questions, but also from the user's emotions (e.g., "impatience") acquired by the emotion recognition engine 231a, the user's facial expressions acquired from the camera, and the tone of voice during conversation.
[0112] (Step S3) The robot 100 determines wellness content to recommend to the user 10. Specifically, the behavior determination unit 236 adds a fixed sentence, "What wellness content would you recommend to the user at this time?" to text representing the user 10's wellness preferences (interests), the user 10's emotions, the robot 100's emotions, and the content stored in the history data 222, and inputs the resulting text into a sentence generation model to obtain recommended wellness content. At this time, wellness content suitable for the user 10 can be suggested by taking into consideration not only the user 10's wellness preferences (interests), the user 10's emotions, the history data 222, the season, weather, the user 10's age, gender, clothing, and the like. Furthermore, by taking into consideration the robot 100's emotions, the user 10 can be made to feel that the robot 100 has emotions.
[0113] Examples of cases where the emotions of the robot 100 are taken into consideration include when the battery of the robot 100 is extremely low, when the environment around the robot is very noisy or dark, when the user 10 is verbally abusing the robot, or when the user 10 is not listening to what the robot 100 is saying. In these cases, the emotion value of the robot "sadness" or "grief" increases, and the robot 100 can take the emotions of the robot 100 into consideration by making an utterance that corresponds to the emotions of the robot 100, such as "I'm not motivated today. Let's talk about wellness another time."
[0114] The emotion value of the robot 100 can be determined based on an emotion map such as that shown in FIG. 5. The emotion of the robot 100 may vary depending on the surrounding conditions of the mirror device, the time of day, and the state and emotion of the user 10. For example, late at night, the emotion of the robot 100 may be negative (wanting to end the conversation quickly, etc.). Furthermore, the robot 100 may synchronize with the emotion of the user 10, such that if the emotion of the user 10 is positive, the robot 100 also becomes positive, and if the emotion of the user 10 is negative, the robot 100 also becomes negative.
[0115] Furthermore, when the robot 100 determines by referring to the history data 222, etc. that the user 10 frequently consults the robot 100 about wellness, the robot 100 may increase the emotional value of "happiness" so as to enjoy conversation with the user.
[0116] (Step S4) The robot 100 proposes the wellness content determined in step 3 to the user 10 and acquires the user's reaction. Specifically, the behavior determination unit 236 determines an utterance proposing the wellness content to the user 10 (e.g., "The world's easiest, ultra-efficient diet in just 10 minutes a day!") as the robot's 100 behavior. The behavior control unit 250 then controls the control target 252 to make an utterance proposing the wellness content to the user 10. The user state recognition unit 230 recognizes the state of the user 10 based on the information analyzed by the sensor module unit 210, and the user emotion determination unit 231 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. The behavior decision unit 236 determines whether the reaction of the user 10 is positive or not based on the state of the user 10 recognized by the user state recognition unit 230 and the emotional value indicating the emotion of the user 10, and determines the behavior of the robot 100 as to whether to execute processing based on the wellness content proposed to the user 10 or to propose different wellness content to the user 10.
[0117] (Step S5) The robot 100 determines whether the reaction of the user 10 is positive or not based on the state of the user 10 recognized by the user state recognition unit 230 and an emotion value indicating the emotion of the user 10. For example, if it is recognized that the user 10's behavior is a positive state, such as saying "That suggestion is interesting, I'd like to try it" or nodding, the robot 100 determines that the reaction of the user 10 is positive. On the other hand, if it is recognized that the user 10's behavior is a negative state, such as saying "I'm not interested in that suggestion. Do you have any other suggestions?" or shaking their head, the robot 100 determines that the user's reaction is not positive.
[0118] (Step S5-1) If the user 10's reaction in step S5 is positive, the robot 100 executes processing based on the proposed wellness content. Specifically, the behavior control unit 250 controls the display, speaker, and other control objects 252 in accordance with the proposed wellness content. For example, if the wellness content proposed to the user 10 is "The world's easiest, most efficient diet in just 10 minutes a day!", the content may be played using the display function of the mirror device, and the user 10 may play their favorite music through a speaker to encourage them to diet.
[0119] After providing the wellness content, the robot 100 may converse with the user 10 to understand the user's satisfaction with the wellness content and detect changes in the user 10. For example, if the robot 100 detects that the user 10 has become more toned by practicing the wellness content, the robot 100 may say to the user, "That's great! Persistence is power. Keep it up!"
[0120] (Step S5-2) On the other hand, if the reaction of the user 10 is not positive, the robot 100 determines different wellness content to propose to the user 10. Specifically, when it is determined that the behavior of the robot 100 is to propose different wellness content to the user 10, the behavior determination unit 236 adds a fixed sentence, "Is there any other wellness content you would recommend to the user?" to the text representing the user's 10 wellness content preferences (interests), the user's 10 emotions, the robot's 100 emotions, and the content stored in the history data 222, and inputs the resulting sentence into the sentence generation model to obtain different wellness content. Then, the process returns to step S4, and the processes of steps S4 to S5-2 are repeated until the wellness content to be provided is determined.
[0121] In this way, the robot 100 can introduce wellness content that is likely to interest the user 10, based on the preferences, situation, and reactions of the user 10. Furthermore, the wellness content provided to the user 10 is also influenced by the emotions of the robot 100 itself, so the user 10 can have the feeling that the wellness content is being explained to him or her by someone who has emotions.
[0122] If the behavior control unit 250 of the robot 100 detects a change in the emotion of the robot 100 after providing the wellness content, the behavior control unit 250 may provide new wellness content in response to this change. For example, if the user 10 is not motivated despite being provided with wellness content (such as "diet"), the robot 100 may become displeased (i.e., the emotional values of "anger" or "sadness" of the robot 100 may increase), emit a beep, or provide a different, more challenging wellness content.
[0123] In the above-described embodiment, it is assumed that the robot 100 is mounted on a mirror device, but it may also be mounted on a humanoid robot or a stuffed toy and placed beside the mirror device. Also, it may be applied to a control device connected wirelessly or by wire to a control target device (speaker or camera) mounted on a humanoid robot or a stuffed toy.
[0124] 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 will be apparent to those skilled in the art that various modifications and improvements can be made to the above embodiments. It is clear from the claims that such modifications and improvements can also be included within the technical scope of the present invention.
[0125] It should be noted that the execution order 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," "prior to," etc., and that the processes can 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, this does not mean that the processes must be performed in this order. [Explanation of symbols]
[0126] 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 Response rules, 222 History data, 230 User state recognition unit, 231 User emotion determination unit, 232 Robot emotion determination unit, 234 Action recognition unit, 236 Action determination unit, 238 Memory control unit, 250 Action control unit, 252 Control target, 280 Communication processing unit, 300 Server, 1200 Computer, 1210 Host controller, 1212 CPU, 1214 RAM, 1216 Graphics 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 chip
Claims
1. A behavior control system for electronic devices applied to a mirror device having a mirror function and a display function, a user emotion determination unit that determines an emotion value indicating the emotion of the user; an electronic device emotion determination unit that determines an emotion value indicating an emotion of the electronic device; an action determination unit that determines an action of the electronic device based on at least one of an emotional value of the user and an emotional value of the electronic device, and information acquired by a sentence generation model having a dialogue function that allows the user and the electronic device to have a dialogue; a user state recognition unit that recognizes a state of a user to whom wellness content is proposed; a behavior control unit that provides the wellness content to the mirror device when it is determined that the user's reaction is positive based on the recognized state of the user and the emotion value of the user determined by the user emotion determination unit, the behavior determination unit determines the wellness content that the electronic device will suggest to the user; When a change in emotion of the electronic device is detected after the wellness content is provided to the mirror device, the behavior control unit provides new wellness content based on the change in emotion. Behavioral control system.
2. The behavior determination unit when it is determined that the user's reaction is negative based on the recognized state of the user and the emotional value of the user determined by the user emotion determination unit, another wellness content is determined based on at least one of the emotional value of the user and the emotional value of the electronic device and information acquired by the sentence generation model; The behavior control system according to claim 1 .
3. The behavior control system according to claim 2 , wherein the behavior control unit detects a change in the user by having a conversation with the user after providing the wellness content to the mirror device.
4. 4. The behavior control system according to claim 1, wherein the electronic device is mounted on a stuffed toy or is connected wirelessly or by wire to a control target device mounted on the stuffed toy.
Citation Information
Patent Citations
Determination of analite in medium containing particle
JP1985053847A
Feeling generation method and feeling generator
JP2001249945A
Display controller
JP2018081583A
Advice system
JP2019091360A
JPP7121848B