Behavior control system
The behavior control system enhances robot interaction by integrating user state and emotion recognition to determine and execute appropriate actions, addressing the challenge of inadequate response in existing systems.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-04-16
- Publication Date
- 2026-07-17
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Existing robot systems struggle to execute appropriate actions in response to user reactions, lacking effective emotion recognition and dialogue management.
A behavior control system that includes a user state recognition unit, emotion determination unit, and action determination unit, enabling robots to engage in dialogue and autonomously guide users based on their preferences, emotions, and reactions, using a text generation model and emotion engine to determine appropriate responses.
Enhances the robot's ability to respond appropriately to user emotions and actions, improving interaction quality and user experience by adapting its behavior dynamically.
Smart Images

Figure 0007892015000003 
Figure 0007892015000004 
Figure 0007892015000005
Abstract
Description
Technical Field
[0001] The present invention relates to a behavior control system.
Background Art
[0002] Patent Document 1 discloses a technique for determining appropriate actions of a robot with respect to the state of a user. The prior art of Patent Document 1 recognizes the reaction of the user when the robot executes a specific action, and when it cannot determine the action of the robot with respect to the recognized reaction of the user, it receives information regarding an action suitable for the recognized state of the user from a server to update the action of the robot.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] However, in the prior art, there is room for improvement in causing the robot to execute an appropriate action with respect to the action of the user.
Means for Solving the Problems
[0005] According to a first aspect of the present invention, a behavior control system is provided. The behavior control system includes a user state recognition unit that recognizes a user state including the behavior of a user, an emotion determination unit that determines the emotion of the user or the emotion of the robot, and an action determination unit that determines the action of the robot corresponding to the user state and the emotion of the user or the emotion of the robot based on a dialogue function that causes the user and the robot to dialogue. The robot is mounted on a ticket guidance system, and the action determination unit guides the user through an event autonomously while having a conversation while considering the preference, situation, and reaction of the user.
Brief Description of the Drawings
[0006] [Figure 1] An example of system 5 according to this embodiment is schematically shown. [Figure 2] The functional configuration of robot 100 is shown in general terms. [Figure 3] A schematic example of the operation flow by robot 100 is shown below. [Figure 4] A schematic example of the hardware configuration of Computer 1200 is shown below. [Figure 5] This shows emotion map 300, where multiple emotions are mapped. [Figure 6] This shows emotion map 900, where multiple emotions are mapped. [Modes for carrying out the invention]
[0007] The present invention will be described below through embodiments of the invention, but these embodiments are not intended to limit the invention as defined in the claims. Furthermore, not all combinations of features described in the embodiments are necessarily essential to the solution of the invention.
[0008] Figure 1 schematically shows an example of system 5 according to this embodiment. System 5 comprises robot 100, robot 101, robot 102, and server 300. Users 10a, 10b, 10c, and 10d are users of robot 100. Users 11a, 11b, and 11c are users of robot 101. Users 12a and 12b are users of robot 102. In the description of this embodiment, users 10a, 10b, 10c, and 10d may be collectively referred to as user 10. Also, users 11a, 11b, and 11c may be collectively referred to as user 11. Also, users 12a and 12b may be collectively referred to as user 12. Robots 101 and 102 have substantially the same functions as robot 100. Therefore, system 5 will be described mainly focusing on the functions of robot 100.
[0009] Robot 100 engages in conversation with user 10 and provides user 10 with video. At this time, robot 100 cooperates with a server 300 or the like that which can communicate via the communication network 20 to converse with user 10 and provide user 10 with video and other information. For example, robot 100 not only learns appropriate conversation on its own, but also learns to converse with user 10 more appropriately by coordinating with server 300. In addition, robot 100 has server 300 record video data of user 10 that it has captured, and requests video data from server 300 as needed to provide it to user 10.
[0010] Furthermore, robot 100 has an emotion value that represents the type of emotion it is feeling. For example, robot 100 has emotion values that represent the intensity of each of the following emotions: "joy," "anger," "sadness," "pleasure," "pleasantness," "unpleasantness," "anxiety," "sadness," "excitement," "worry," "relief," "fulfillment," "emptiness," and "neutral." For example, when robot 100 is conversing with user 10 with a high emotion value for excitement, it will speak at a fast pace. In this way, robot 100 can express its emotions through its actions.
[0011] Furthermore, the robot 100 may be configured to determine its actions in response to user 10's emotions by matching a text generation model with an emotion engine using AI (Artificial Intelligence). Specifically, the robot 100 may be configured to recognize user 10's actions, determine user 10's emotions in response to those actions, and determine its actions in response to the determined emotions.
[0012] More specifically, when the robot 100 recognizes the user 10's actions, it automatically generates the content of the actions the robot 100 should take in response to the user 10's actions using a pre-configured text generation model. The text generation model can be interpreted as an algorithm and calculations for automatic text-based dialogue processing. The text generation model is, for example, based on Japanese Patent Publication No. 2018-081444 or chatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> As it is publicly known as disclosed in [the relevant document], a detailed explanation will be omitted. Such text generation models are composed of large-scale language models (LIMs).
[0013] In summary, this embodiment combines a large-scale language model and an emotion engine to reflect the emotions of user 10 and robot 100, as well as various linguistic information, in the actions of robot 100. In other words, according to this embodiment, a synergistic effect can be obtained by combining a text generation model and an emotion engine.
[0014] Furthermore, the robot 100 has the function of recognizing the user 10's actions. The robot 100 recognizes the user 10's actions by analyzing the user 10's facial image acquired by the camera function and the user 10's voice acquired by the microphone function. Based on the recognized user 10's actions, the robot 100 decides what action to perform.
[0015] Robot 100 stores rules that define the actions it will perform based on user 10's emotions, robot 100's emotions, and user 10's actions, and performs various actions according to these rules.
[0016] Specifically, robot 100 has response rules for determining its actions based on user 10's emotions, robot 100's emotions, and user 10's actions. For example, if user 10's action is "laugh," the response rule stipulates that robot 100 should "laugh." Similarly, if user 10's action is "anger," the response rule stipulates that robot 100 should "apologize." Furthermore, if user 10's action is "ask a question," the response rule stipulates that robot 100 should "answer." And if user 10's action is "sadness," the response rule stipulates that robot 100 should "speak to" the user.
[0017] Based on the response rules, if robot 100 recognizes that user 10's behavior is "anger," it selects the action of "apologizing," as defined in the response rules, as the action robot 100 will perform. For example, if robot 100 selects the action of "apologizing," it will perform the "apologizing" motion and output an audible message expressing the words "apologizing."
[0018] Furthermore, it is defined that when robot 100's emotions are "normal" (i.e., "joy"=0, "anger"=0, "sadness"=0, "happiness"=0) and the user 10's state is "alone and looks lonely", robot 100's emotions will change to "worried" and it will be able to perform the action of "speaking to" the user.
[0019] Based on the response rules, if robot 100 recognizes that its current emotion is "normal" and that user 10 is lonely, it increases its "sadness" emotion value. Furthermore, robot 100 selects the action "speak to" as defined in the response rules to perform on user 10. For example, if robot 100 selects the action "speak to," it will output the phrase "What's wrong?" in a worried tone of voice.
[0020] Also, by this action, the robot 100 transmits user reaction information indicating that a positive reaction has been obtained from the user 10 to the server 300. The user reaction information includes, for example, a user action of "being angry", an action of the robot 100 of "apologizing", that the reaction of the user 10 is positive, and the attributes of the user 10.
[0021] The server 300 stores the user reaction information received from the robot 100. Note that 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. Then, the server 300 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 the server 300 about the updated reaction rules. The robot 100 incorporates the updated reaction rules into the reaction rules stored in the robot 100. Thereby, the robot 100 can incorporate the reaction rules acquired by the robots 101, 102, etc. into its own reaction rules.
[0023] FIG. 2 schematically shows the 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, an action recognition unit 234, an action determination unit 236, a memory control unit 238, an action control unit 250, a control target 252, and a communication processing unit 280.
[0024] The controlled object 252 includes a display device, a speaker, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 100 are controlled by controlling the motors in the arms, hands, and feet. Some of the robot 100's emotions can be expressed by controlling these motors. The robot 100's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes. The posture, gestures, and facial expressions of the robot 100 are examples of the robot 100's attitude.
[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 sound data. The microphone 201 is mounted on the head of the robot 100 and may have a function for binaural recording. The 3D depth sensor 202 detects the outline of an object by continuously irradiating it with an infrared pattern and analyzing the infrared pattern from infrared images continuously captured by an 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 image information. The distance sensor 204 detects the distance to an object by irradiating it with, for example, a laser or ultrasound. The sensor unit 200 may also include other components such as a clock, a gyro sensor, a touch sensor, and a motor feedback sensor.
[0026] Note that, among the components of the robot 100 shown in Figure 2, the components other than the controlled object 252 and the sensor unit 200 are examples of components of the behavior control system of the robot 100. The behavior control system of the robot 100 controls the controlled object 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 associating it with the user 10's identification information. At least a portion of the storage unit 220 is implemented by a storage medium such as memory. It may also include a person database that stores the user 10's facial image, user 10's attribute information, etc. Of the components of the robot 100 shown in Figure 2, the functions of the components other than the controlled object 252, the sensor unit 200, and the storage unit 220 can be realized by the CPU operating based on a program. For example, the functions of these components can be implemented as CPU operations by the operating system (OS) and programs that run on the OS.
[0028] The sensor module 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. The sensor module 210 receives information detected by the sensor unit 200. The sensor module 210 analyzes the information detected by the sensor unit 200 and outputs the analysis results to the user state recognition unit 230.
[0029] The voice emotion recognition unit 211 of the sensor module unit 210 analyzes the voice of user 10 detected by microphone 201 and recognizes the emotions of user 10. For example, the voice emotion recognition unit 211 extracts feature quantities such as frequency components of the voice and recognizes the emotions of user 10 based on the extracted feature quantities. The speech understanding unit 212 analyzes the voice of user 10 detected by microphone 201 and outputs character information representing the content of user 10's speech.
[0030] The facial expression recognition unit 213 recognizes the facial expressions and emotions of user 10 from images of user 10 captured by the 2D camera 203. For example, the facial expression recognition unit 213 recognizes the facial expressions and emotions of user 10 based on the shape and positional relationship of the eyes and mouth.
[0031] The face recognition unit 214 recognizes the face of user 10. The face recognition unit 214 recognizes user 10 by matching the face images stored in the person database (not shown) with the face images of user 10 captured by the 2D camera 203.
[0032] The user state recognition unit 230 recognizes the state of user 10 based on the information analyzed by the sensor module unit 210. For example, it uses the analysis results from the sensor module unit 210 to perform processing mainly related to perception. For example, it generates perceptual information such as "Dad is alone" or "There is a 90% chance that Dad is not smiling." It then processes the meaning of the generated perceptual information. For example, it generates semantic information such as "Dad is alone and looks lonely."
[0033] The emotion determination unit 232 determines an emotion value indicating the user 10's emotions based on the information analyzed by the sensor module unit 210 and the user state recognized by the user state recognition unit 230. For example, the information analyzed by the sensor module unit 210 and the recognized user state of the user 10 are input into a pre-trained neural network to obtain an emotion value indicating the user 10's emotions.
[0034] Here, the emotion value representing user 10's emotions is a value indicating whether the user's emotion is positive or negative. For example, if the user's emotion is a positive emotion accompanied by pleasure or comfort, such as "joy," "pleasure," "pleasantness," "security," "excitement," "relief," and "fulfillment," it will show a positive value, and the more positive the emotion, the larger the value. If the user's emotion is an unpleasant emotion, such as "anger," "sadness," "discomfort," "anxiety," "grief," "worry," and "emptiness," it will show a negative value, 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"), it will show a value of 0.
[0035] Furthermore, the emotion determination unit 232 determines an emotion value indicating the emotions 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. Robot 100's emotional value includes emotional values for each of several emotional categories, such as values (0-5) indicating the intensity of "joy," "anger," "sadness," and "happiness."
[0036] Specifically, the emotion determination unit 232 determines an emotion value indicating the robot 100's emotions according to a rule for updating the robot 100's emotion value, which is determined in association with the information analyzed by the sensor module unit 210 and the state of user 10 recognized by the user state recognition unit 230.
[0037] For example, if the user state recognition unit 230 recognizes that user 10 looks lonely, the emotion determination unit 232 increases the "sadness" emotion value of robot 100. Also, if the user state recognition unit 230 recognizes that user 10 has smiled, it increases the "joy" emotion value of robot 100.
[0038] Furthermore, the emotion determination unit 232 may take the state of the robot 100 into further consideration when determining the emotion value that indicates the robot 100's emotions. For example, the emotion value of "sadness" of the robot 100 may be increased when the robot 100's battery level is low or when the surrounding environment of the robot 100 is completely dark. In addition, if the user 10 continues to talk to the robot despite the low battery level, the emotion value of "anger" may be increased.
[0039] The behavior recognition unit 234 recognizes the user 10's actions based on the information analyzed by the sensor module unit 210 and the user 10's state recognized by the user state recognition unit 230. For example, the information analyzed by the sensor module unit 210 and the recognized user 10's state are input into a pre-trained neural network to obtain the probability of each of several predetermined behavior classifications (e.g., "laughing," "getting angry," "asking a question," "being sad"), and the behavior classification with the highest probability is recognized as the user 10's action.
[0040] As described above, in this embodiment, the robot 100 identifies the user 10 and acquires the content of the user 10's speech. However, when acquiring and using the content of the speech, the robot 100 obtains the necessary consent from the user 10 in accordance with the law, and the behavior control system of the robot 100 according to this embodiment takes into consideration the protection of the user 10's personal information and privacy.
[0041] The action decision unit 236 determines an action corresponding to the user 10's actions recognized by the action recognition unit 234, based on the user 10's current emotion value determined by the emotion decision unit 232, the history data 222 of past emotion values determined by the emotion decision unit 232 before the user 10's current emotion value was determined, and the robot 100's emotion value. In this embodiment, the action decision unit 236 uses the most recent emotion value included in the history data 222 as the user 10's past emotion value, but the disclosed technology is not limited to this embodiment. For example, the action decision unit 236 may use multiple most recent emotion values as the user 10's past emotion value, or it may use an emotion value from a unit period earlier, such as one day ago. Furthermore, the action decision unit 236 may determine an action corresponding to the user 10's actions by further considering not only the robot 100's current emotion value but also the history of the robot 100's past emotion values. The actions determined by the action decision unit 236 include gestures performed by the robot 100 or the content of speech uttered by the robot 100.
[0042] In this embodiment, the action decision unit 236 determines the robot 100's action based on a combination of the user 10's past and current emotional values, the robot 100's emotional value, the user 10's action, and the reaction rule 221, as an action corresponding to the user 10's action. For example, if the user 10's past emotional value is positive and the current emotional value is negative, the action decision unit 236 determines an action to change the user 10's emotional value to positive, as an action corresponding to the user 10's action.
[0043] Response rule 221 defines the actions of robot 100 in response to combinations of user 10's past and current emotional values, robot 100's emotional value, and user 10's actions. For example, if user 10's past emotional value is positive and their current emotional value is negative, and user 10's action is sad, then the rule defines a combination of gestures and speech content for robot 100 to ask encouraging questions to user 10, accompanied by gestures.
[0044] For example, the response rule 221 defines the robot 100's actions for all combinations of the robot 100's emotional value patterns (1296 patterns, which are the 4th power of the 6 values "0" to "5" for "joy," "anger," "sadness," and "happiness"), the combinations of the user 10's past and current emotional values, and the user 10's behavior patterns. In other words, for each emotional value pattern of the robot 100, the robot 100's actions are defined according to the user 10's behavior patterns for each of the multiple combinations of the user 10's past and current emotional values, such as negative and negative, negative and positive, positive and negative, positive and positive, negative and neutral, and neutral and neutral. The action determination unit 236 may also transition to an operation mode in which it determines the robot 100's actions using history data 222 when the user 10 makes an utterance that intends to continue a conversation from a past topic, such as "I want to talk about that topic we talked about before." Furthermore, response rule 221 may specify at least one of a gesture and a statement as an action for robot 100 for each of the 1296 patterns of robot 100's emotional value. Alternatively, response rule 221 may specify at least one of a gesture and a statement as an action for robot 100 for each of the groups of patterns of robot 100's emotional value.
[0045] Each gesture included in the actions of robot 100 as defined in response rule 221 has a predetermined intensity. Each utterance included in the actions of robot 100 as defined in response rule 221 has a predetermined intensity.
[0046] The memory control unit 238 decides whether or not to store data including the user 10's actions in the history data 222, based on the predetermined intensity of the action determined by the action decision unit 236 and the emotion value of the robot 100 determined by the emotion decision unit 232. Specifically, if the sum of the emotion values for each of the multiple emotion classifications of the robot 100, the predetermined intensity for the gestures included in the actions determined by the action decision unit 236, and the predetermined intensity for the speech content included in the actions determined by the action decision unit 236 is greater than or equal to a threshold, it is decided to store the data including the user 10's actions in the history data 222.
[0047] When the memory control unit 238 decides to store data including the user 10's actions in the history data 222, it stores the actions determined by the action determination unit 236, information analyzed by the sensor module unit 210 from the present time up to a certain period of time prior (for example, all surrounding information such as sound, images, smells, etc.), and the user 10's state recognized by the user state recognition unit 230 (for example, the user 10's facial expressions, emotions, etc.) in the history data 222.
[0048] The behavior control unit 250 controls the controlled object 252 based on the action determined by the action decision unit 236. For example, if the action decision unit 236 determines an action that includes speaking, the behavior control unit 250 causes the speaker included in the controlled object 252 to output sound. At this time, the behavior control unit 250 may determine the speech output speed based on the emotion value of the robot 100. For example, the behavior control unit 250 determines a faster speech output speed the greater the emotion value of the robot 100. In this way, the behavior control unit 250 determines the execution form of the action determined by the action decision unit 236 based on the emotion value determined by the emotion decision unit 232.
[0049] The behavior control unit 250 may recognize changes in user 10's emotions in response to the action decided by the behavior decision unit 236. For example, changes in emotions may be recognized based on user 10's voice or facial expressions. Alternatively, changes in user 10's emotions may be recognized based on the detection of an impact by the touch sensor included in the sensor unit 200. If an impact is detected by the touch sensor included in the sensor unit 200, it may be recognized that user 10's emotions have worsened. Conversely, if the detection result of the touch sensor included in the sensor unit 200 indicates that user 10 is laughing or happy, it may be recognized that user 10's emotions have improved. Information indicating user 10's reaction is output to the communication processing unit 280.
[0050] Furthermore, after the action control unit 250 executes the action determined by the action decision unit 236 in an execution mode determined according to the robot 100's emotions, the emotion decision unit 232 further changes the robot 100's emotion value based on the user's reaction to the execution of the action. Specifically, the emotion decision unit 232 increases the robot 100's "joy" emotion value if the user's reaction to the action performed by the action decision unit 236 in an execution mode determined by the action control unit 250 was not unfavorable. Also, the emotion decision unit 232 increases the robot 100's "sadness" emotion value if the user's reaction to the action performed by the action decided by the action decision unit 236 in an execution mode determined by the action control unit 250 was unfavorable.
[0051] Furthermore, the behavior control unit 250 expresses the emotions of the robot 100 based on the determined emotion values of the robot 100. For example, if the behavior control unit 250 increases the "joy" emotion value of the robot 100, it controls the controlled object 252 to make the robot 100 perform joyful gestures. Also, if the behavior control unit 250 increases the "sadness" emotion value of the robot 100, it controls the controlled object 252 so that the robot 100 assumes a dejected 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 response information to the server 300. The communication processing unit 280 also receives updated response rules from the server 300. When the communication processing unit 280 receives updated response rules from the server 300, it updates the response rule 221.
[0053] Server 300 communicates with robots 100, 101, and 102, receives user response information transmitted from robot 100, and updates the response rules based on the response rules that include actions for which a positive response was obtained.
[0054] Figure 3 schematically shows an example of an action flow related to the action that determines the robot 100's behavior. The action flow shown in Figure 3 is executed repeatedly. At this time, it is assumed that information analyzed by the sensor module 210 is input. In the action flow, "S" represents the step that is executed.
[0055] First, in step S100, the user state recognition unit 230 recognizes the state of user 10 based on the information analyzed by the sensor module unit 210.
[0056] In step S102, the emotion determination unit 232 determines an emotion value indicating the user 10's emotion based on the information analyzed by the sensor module unit 210 and the user state recognition unit 230.
[0057] In step S103, the emotion determination unit 232 determines an emotion value indicating the robot 100's emotions based on the information analyzed by the sensor module unit 210 and the state of user 10 recognized by the user state recognition unit 230. The emotion determination unit 232 adds the determined emotion value of user 10 to the history data 222.
[0058] In step S104, the behavior recognition unit 234 recognizes the behavior classification of user 10 based on the information analyzed by the sensor module unit 210 and the state of user 10 recognized by the user state recognition unit 230.
[0059] In step S106, the action decision unit 236 determines the action of the robot 100 based on the combination of the user 10's current emotion value and past emotion values included in the history data 222 determined in step S102, the robot 100's emotion value, the user 10's actions recognized by the action recognition unit 234, and the reaction rule 221.
[0060] In step S108, the action control unit 250 controls the controlled object 252 based on the action determined by the action decision unit 236.
[0061] In step S110, the memory control unit 238 calculates a total intensity value based on the predetermined intensity of the action determined by the action decision unit 236 and the emotion value of the robot 100 determined by the emotion decision unit 232.
[0062] In step S112, the memory 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 is terminated without storing data including the user 10's actions 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 action determined by the action decision unit 236, the information analyzed by the sensor module unit 210 from the present time up to a certain period of time prior, and the state of user 10 recognized by the user state recognition unit 230 are stored in the history data 222.
[0064] As explained above, the robot 100 determines an emotion value indicating its own emotions based on the user's state, and then decides whether or not to store data including user 10's actions in the history data 222 based on the robot 100's emotion value. This reduces the capacity of the history data 222 that stores data including user 10's actions. For example, if the robot 100 determines that the user's state is the same as it was 10 years ago, it can read the history data 222 from 10 years ago and present the user 10 with all kinds of surrounding information, such as user 10's state at that time (e.g., user 10's facial expressions, emotions, etc.), as well as data such as sounds, images, and smells from that location.
[0065] Furthermore, robot 100 can perform actions appropriate to user 10's actions. Traditionally, user actions were classified, and actions including the robot's facial expressions and appearance were determined based on that. In contrast, robot 100 determines user 10's current emotional state and performs actions for user 10 based on past and current emotional states. Therefore, for example, if user 10 was cheerful yesterday but depressed today, robot 100 can say something like, "You were cheerful yesterday, what's wrong today?" Robot 100 can also perform speech with gestures. For example, if user 10 was depressed yesterday but cheerful today, robot 100 can say something like, "You were depressed yesterday, but you seem cheerful today?" For example, if user 10 was cheerful yesterday and is more cheerful today than yesterday, robot 100 can say something like, "You seem more cheerful today than yesterday. Did something better happen today?" Furthermore, for example, robot 100 can make statements such as, "You seem to be in a stable mood lately, which is good," to user 10 whose emotional value is 0 or higher and whose emotional value fluctuations remain within a certain range.
[0066] Furthermore, for example, if robot 100 asks user 10, "Did you finish the homework we talked about yesterday?", and user 10 replies, "Yes, I did it," robot 100 can make positive statements such as "Great job!" and perform positive gestures such as applause or a thumbs-up. Also, for example, if user 10 says, "The presentation I gave the day before yesterday went well," robot 100 can make positive statements such as "You did a great job!" and perform the aforementioned positive gestures. In this way, by having robot 100 act based on user 10's history, it is expected that user 10 will feel a sense of familiarity with robot 100.
[0067] In the above embodiment, the case in which the robot 100 recognizes user 10 using a facial image of user 10 was described, but the disclosed technology is not limited to this embodiment. For example, the robot 100 may recognize user 10 using voice spoken by user 10, user 10's email address, user 10's SNS ID, or an ID card with a built-in wireless IC tag possessed by user 10.
[0068] Robot 100 is an example of an electronic device equipped with a behavior control system. The behavior control system is not limited to robot 100, and can be applied to various electronic devices. Furthermore, the functions of server 300 may be implemented by one or more computers. At least some of the functions of server 300 may be implemented by a virtual machine. Also, at least some of the functions of server 300 may be implemented in the cloud.
[0069] Figure 4 schematically shows an example of the hardware configuration of a computer 1200 that functions as a robot 100 and a server 300. A program installed on the computer 1200 can cause the computer 1200 to function as one or more "parts" of the apparatus according to this embodiment, or to cause the computer 1200 to execute operations associated with the apparatus according to this embodiment or such one or more "parts", and / or to cause the computer 1200 to execute a process or a stage of such process according to this embodiment. Such a program may be executed by the CPU 1212 to cause the computer 1200 to execute 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, 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 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 and a DVD-RAM drive, etc. The storage device 1224 may be a hard disk drive and a solid-state drive, etc. The computer 1200 also includes legacy input / output units such as a ROM 1230 and a keyboard, which are connected to the input / output controller 1220 via an input / output chip 1240.
[0071] The CPU 1212 operates according to the programs stored in the ROM 1230 and RAM 1214, thereby controlling each unit. The graphics controller 1216 acquires the image data generated by the CPU 1212 and stores it in the frame buffer provided in RAM 1214 or within itself, so that the image data is 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, etc., 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 boot programs and / or hardware-dependent programs of the computer 1200, which are executed by the computer 1200 upon activation. The input / output chip 1240 may also connect various input / output units to the input / output controller 1220 via USB ports, parallel ports, serial ports, keyboard ports, mouse ports, etc.
[0074] The program is provided on a computer-readable storage medium such as a DVD-ROM 1227 or an IC card. The program is read from the computer-readable storage medium and installed on a storage device 1224, RAM 1214, or ROM 1230, which are examples of computer-readable storage media, and executed by the CPU 1212. The information processing described within these programs is read by the computer 1200, resulting in coordination between the program and the various types of hardware resources described above. The apparatus or method may be configured to realize the operation or processing of information in accordance with the use of the computer 1200.
[0075] For example, when communication is performed between a computer 1200 and an external device, the CPU 1212 may execute a communication program loaded into RAM 1214 and, based on the processing described in the communication program, instruct the communication interface 1222 to perform communication processing. Under the control of the CPU 1212, the communication interface 1222 reads transmission data stored in a transmission buffer area provided in a recording medium such as RAM 1214, storage device 1224, DVD-ROM 1227, or IC card, transmits the read transmission data to the network, or writes received data received from the network to a reception buffer area or the like provided on the recording medium.
[0076] Furthermore, the CPU 1212 may read all or necessary parts of files or databases stored on external recording media such as the storage device 1224, DVD drive 1226 (DVD-ROM 1227), or IC card into the RAM 1214, and perform various types of processing on the data in the RAM 1214. The CPU 1212 may then write the processed data back to the external recording media.
[0077] Various types of information, such as various types of programs, data, tables, and databases, may be stored on the recording medium and subjected to information processing. The CPU 1212 may perform various types of processing on the data read from RAM 1214, including various types of operations, information processing, conditional judgments, conditional branching, unconditional branching, information retrieval / replacement, etc., as described throughout this disclosure and specified by the program instruction sequence, and write the results back to RAM 1214. The CPU 1212 may also retrieve information in files, databases, etc., within the recording medium. For example, if multiple entries are stored in the recording medium, each having an attribute value of a first attribute associated with an attribute value of a second attribute, the CPU 1212 may search among the multiple entries for an entry that matches the specified condition for the attribute value of the first attribute, read the attribute value of the second attribute stored in that entry, and thereby obtain the attribute value of the second attribute associated with the first attribute that satisfies the predetermined condition.
[0078] The program or software module described above may be stored on or near the computer 1200 in a computer-readable storage medium. Alternatively, a recording medium such as a hard disk or RAM provided within a server system connected to a dedicated communication network or the Internet can be used as a computer-readable storage medium, thereby providing the program to the computer 1200 via the network.
[0079] In this embodiment, blocks in the flowchart and block diagram may represent a stage in a process in which an operation is performed or a "part" of a device that has the role of performing an operation. A particular stage and "part" may be implemented by a dedicated circuit, a programmable circuit supplied with computer-readable instructions stored on a computer-readable storage medium, and / or a processor supplied with computer-readable instructions stored on a computer-readable storage medium. The dedicated circuit may include digital and / or analog hardware circuits, and may include integrated circuits (ICs) and / or discrete circuits. The programmable circuit may include reconfigurable hardware circuits, such as field-programmable gate arrays (FPGAs) and programmable logic arrays (PLAs), which include logical AND, logical OR, exclusive OR, negated AND, negated OR, 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 to be executed by a suitable device, and as a result, a computer-readable storage medium having instructions stored therein will comprise a product that includes instructions that can be executed to create means for performing operations specified in a flowchart or block diagram. 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 disk read-only memory (CD-ROM), digital multipurpose disc (DVD), Blu-ray® disc, memory stick, integrated circuit card, etc.
[0081] Computer-readable instructions may include assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, Java®, C++, and traditional procedural programming languages such as the C programming language or similar languages.
[0082] Computer-readable instructions may be provided to a general-purpose computer, a special-purpose computer, or a programmable circuit, either locally or via a wide area network (WAN) such as a local area network (LAN) or the internet, so that the computer-readable instructions may be executed by the processor or programmable circuit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, in order to generate means for performing operations specified in a flowchart or block diagram. Examples of processors include computer processors, processing units, microprocessors, digital signal processors, controllers, microcontrollers, and the like.
[0083] Although the present invention has been described above using 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 or improvements can be made to the above embodiments. It will be clear from the claims that such modified or improved forms may also be included in the technical scope of the present invention.
[0084] It should be noted that the execution order of operations, procedures, steps, and stages in the apparatus, systems, programs, and methods shown in the claims, specifications, and drawings is not explicitly stated as "before" or "prior to," and that these can be implemented in any order unless the output of a previous process is used in a later process. Even if the operation flow in the claims, specifications, and drawings is described using phrases such as "first," and "next," for convenience, this does not mean that it is essential to perform the operations in that order.
[0085] (Other embodiments) As other embodiments, the robot 100 described above may be applied to a robot mounted on a device such as an electrical appliance, computer, automobile, motorcycle, or toy, or the robot 100 may control a device such as an electrical appliance, computer, automobile, motorcycle, or toy. Furthermore, the robot 100 may be mounted on a stuffed animal, or applied to a control device wirelessly or wired to a controlled device (speaker or camera) mounted on the stuffed animal. Other embodiments are specifically configured as follows. For example, the robot 100 may be applied to control an event guidance system. This event guidance system has a function (event guidance function) to guide a user 10 to an event. That is, the event guidance system converses with the user 10 while observing the user 10's preferences, situation, and reactions. The event guidance system then autonomously guides the user 10 to an event. Event guidance includes, for example, guiding the user 10 to a specific event. Event guidance includes guiding the user to purchase event tickets and encouraging the user to purchase event tickets. For example, the robot 100's display device 1218 displays how to purchase tickets. The ticket purchase method includes the release date, release location, and purchase method (which may also include payment method). Additionally, the Robot 100's speaker may provide voice announcements regarding the ticket release date, release location, and purchase method.
[0086] The system may provide user 10 with further information related to the event it has been informed about, i.e., event-related information. Event-related information may include, for example, past publications and merchandise from event participants (organizers, co-organizers, sponsors, performers, artists, etc.) and information sources on the internet. Event-related information may also include, for example, information on transportation to and from the event venue.
[0087] Alternatively, information regarding the issuance of event tickets may be stored in a storage device such as the memory device 1224, and this information may be transmitted to the ticket issuing device. For example, when the robot 100 is near the ticket issuing device, the robot 100 transmits information regarding ticket issuance to the ticket issuing device. The ticket issuing device then automatically issues the tickets upon receiving the information. This eliminates the need for the user 10 to operate the ticket issuing device.
[0088] Furthermore, the robot 100 may have a ticket function unit. This ticket function unit functions as a ticket for an event guided to the user 10 by the event guidance system. For example, it stores in the storage device 1224 that the user 10 has completed registration for participation in the event or payment. The ticket function unit then communicates wirelessly with a check-in terminal (ticket inspection device) at the event venue, confirming that the user 10 is a legitimate attendee and allowing the user 10 to enter the event venue.
[0089] The types of events are not limited. For example, they include movies, plays, music concerts, lectures, exhibitions, trade shows, consultations, product exhibitions, and sales events. These events can include both paid and free events.
[0090] Robot 100, as a ticket guidance system, is equipped with various functional parts to perform the actions described above. Below, as an example, we will describe the case where robot 100 performs an event guidance function.
[0091] Robot 100 executes the following steps 1 to 5-2 to select an event to guide User 10 to, according to User 10's preferences, User 10's situation, and User 10's reactions.
[0092] (Step 1) Robot 100 obtains the state of user 10, the emotional value of user 10, the emotional value of robot 100, and history data 222. Specifically, it performs the same processing as in steps S100 to S103 above to obtain the state of user 10, the emotional value of user 10, the emotional value of robot 100, and history data 222.
[0093] (Step 2) The robot 100 obtains the user 10's preferences regarding the type of event. Specifically, the action decision unit 236 determines that the robot 100 will make an utterance asking the user 10 about their preferences regarding the type of event, and the action control unit 250 controls the controlled object 252 to make an utterance asking the user 10 about their preferences regarding the type of event. The user state recognition unit 230 recognizes the user 10's preferences regarding the type of event based on the information analyzed by the sensor module unit 210 (for example, the user's response).
[0094] (Step 3) The robot 100 determines specific examples of events to propose to the user 10. Specifically, the action decision unit 236 adds the fixed phrase "What type of event would you recommend to the user at this time?" to the text representing the user 10's preferences regarding event types, the user 10's emotions, the robot 100's emotions, and the contents stored in the history data 222, and inputs this into the AI text generation model to obtain recommendations regarding event types. At this time, by considering not only the user 10's preferences regarding event types but also the user 10's emotions and the history data 222, it is possible to suggest specific examples of events suitable for the user 10. Furthermore, by considering the robot 100's emotions, it is possible to make the user 10 feel that the robot 100 has emotions. More specifically, for example, in the case of movies, it considers whether the user 10 prefers foreign films or Japanese films, and whether they prefer mystery, suspense, horror, action, science fiction, adventure, fantasy, comedy, documentary, anime, etc.
[0095] (Step 4) The robot 100 proposes specific examples of the events determined in Step 3 to the user 10 and obtains the user 10's response. Specifically, the action decision unit 236 decides that the robot 100's action will be to make an utterance that proposes a specific example of an event to the user 10, and the action control unit 250 controls the controlled object 252 to make an utterance that proposes a specific example of an event 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 emotion decision unit 232 determines an emotion value indicating the user 10's emotion 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. Based on the state of the user 10 recognized by the user state recognition unit 230 and the emotion value indicating the user 10's emotion, the action decision unit 236 determines whether the user 10's reaction is positive or negative, and decides whether to execute a process to guide the user 10 to the specific example of the event that was proposed to the user 10, or to propose a different specific example of an event to the user 10, as the action of the robot 100.
[0096] (Step 5-1) If user 10's response is positive, robot 100 performs a process to guide user 10 to specific examples of the proposed event. Specifically, when the robot 100 decides to perform an action to guide the user 10 to a specific example of an event it has proposed, the action control unit 250 controls various functional units, which are the controlled objects 252, to perform the action of proposing a specific example to the user 10. More specifically, the display device 1218 displays the name of the event to be guided, the location and date and time of the event (including screenings and performances), the direction of participation, the fee, etc.
[0097] (Step 5-2) If user 10's response is not positive, robot 100 determines a specific example of another event to suggest to user 10. Specifically, if the robot 100 decides to suggest a specific example of another event to the user 10, the action decision unit 236 adds the fixed phrase "Are there any other types of events you would recommend to the user?" to the text representing the user 10's preferences regarding event types, the user 10's emotions, the robot 100's emotions, and the contents stored in the history data 222, and inputs this into the AI text generation model to obtain recommendations regarding event types. Then, it returns to step 4 and repeats the processes from step 4 to step 5-2 above until it decides to execute the process of guiding the user 10 to a specific example of the suggested event.
[0098] In this way, the robot 100 can perform processing to guide user 10 to specific examples of events, in accordance with user 10's preferences, user 10's situation, and user 10's reactions.
[0099] The emotion determination unit 232 may determine the user's emotion according to a specific mapping. Specifically, the emotion determination unit 232 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 5).
[0100] Figure 5 shows an emotion map 300 in which multiple emotions are mapped. In the emotion map 300, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 300, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[0101] (1) For example, if the emotion engine, which is the emotion determination unit 232 of the robot 100, detects an emotion at approximately 100 msec, the determination of the robot 100's reaction action (e.g., nodding) may be set to a timing similar to the emotion engine's detection frequency (100 msec), at least in frequency, or it may be set to an earlier timing. The emotion engine's detection frequency may be interpreted as the sampling rate.
[0102] By detecting emotions in approximately 100ms and immediately responding with an action (such as nodding), the response becomes natural and nuanced, avoiding unnatural nods. The robot performs response actions (such as nodding) according to the direction and degree (strength) of the mandala of emotion map 300. Note that the detection frequency (sampling rate) of the emotion engine is not limited to 100ms and may be changed depending on the situation (such as when playing sports) or the user's age.
[0103] (2) By referring to the emotion map 300, the direction and intensity of the emotion may be set in advance, and the movement of the nod and the strength of the nod may be set. For example, if robot 100 is feeling stable or safe, robot 100 will nod and continue to listen. If robot 100 is feeling anxious, confused or suspicious, robot 100 may tilt its head or stop shaking its head.
[0104] These emotions are distributed at the 3 o'clock position on the Emotion Map 300, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 300, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[0105] (3) If Robot 100 feels pleasure from being praised, the filler word "Ah" may be added before the line. If Robot 100 feels pain from receiving harsh words, the filler word "Ugh!" may be added before the line. Additionally, physical reactions such as Robot 100 crouching down while saying "Ugh!" may be included. These emotions are distributed around the 9 o'clock position on emotion map 300.
[0106] (4) In the left half of the Emotion Map 300, internal feelings (reactions) are dominant over situational awareness. Therefore, it may give the impression that the reaction was involuntary.
[0107] When robot 100 experiences an internal feeling (reaction) of understanding and also feels favorable in its perception of the situation, robot 100 may nod deeply while looking at the other person and may also say "yes, yes." In this way, robot 100 may generate balanced favorability towards the other person, that is, behaviors such as acceptance and tolerance. Such emotions are distributed around the 12 o'clock position on emotion map 300.
[0108] Conversely, even when Robot 100 experiences an internal sensation (reaction) of discomfort, in terms of situational awareness, it may shake its head when it feels disgusted, or turn its eye LEDs red and glare at the other party when it feels hatred. These kinds of emotions are distributed around the 6 o'clock position on emotion map 300.
[0109] (5) The inside of the Emotion Map 300 represents what is in your mind, and the outside of the Emotion Map 300 represents your actions. Therefore, the further you go from the outside of the Emotion Map 300, the more visible your emotions become (they are expressed in your actions).
[0110] (6) When listening to someone speak while feeling secure, which is distributed around the 3 o'clock position on the emotion map 300, robot 100 will only nod slightly and say "hmm hmm," but when it comes to love, which is around the 12 o'clock position, it may nod more strongly, such as a deep up-and-down motion.
[0111] The emotion determination unit 232 inputs the information analyzed by the sensor module unit 210 and the recognized state of user 10 into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 300, and determines the emotion of user 10. This neural network is pre-trained based on multiple training data sets, which are combinations of the information analyzed by the sensor module unit 210, the recognized state of user 10, and the emotion values representing each emotion shown in the emotion map 300. Furthermore, this neural network is trained so that emotions placed close together have similar values, as shown in the emotion map 900 in Figure 6. Figure 6 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[0112] Furthermore, the emotion determination unit 232 may determine the emotion of the robot 100 according to a specific mapping. Specifically, the 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 representing each emotion shown in the emotion map 300, and determines the emotion of the robot 100. This neural network is pre-trained based on multiple training data sets, which 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 the emotion values representing each emotion shown in the emotion map 300. For example, the neural network is trained based on training data that indicates that when the robot 100 is perceived to be being petted by user 10 based on the output of a touch sensor (not shown), the emotion value for "happy" is "3," and training data that indicates that when the robot 100 is perceived to be being hit by user 10 based on the output of an accelerometer (not shown), the emotion value for "angry" is "3." Furthermore, this neural network is trained so that emotions placed close together have similar values, as shown in the emotion map 900 in Figure 6.
[0113] The action decision unit 236 generates the robot's actions by adding fixed phrases for asking about the robot's actions corresponding to the user's actions to text representing the user's actions, the user's emotions, and the robot's emotions, and inputting these into the dialogue function.
[0114] For example, the action decision unit 236 obtains text representing the state of robot 100 from the emotions of robot 100 determined by the emotion decision unit 232, using an emotion table as shown in Table 1. Here, the emotion table assigns an index number to each emotion value for each type of emotion, and text representing the state of robot 100 is stored for each index number.
[0115] If the emotion of robot 100 determined by the emotion determination unit 232 corresponds to index number "2", the text "very happy state" is obtained. If the emotion of robot 100 corresponds to multiple index numbers, multiple texts representing the state of robot 100 are obtained.
[0116] Furthermore, a sentiment table like the one shown in Table 2 is prepared to track the emotions of user 10. Here, if user 10's action is to ask "Is the event fun?", robot 100's emotion is index number "2", and user 10's emotion is index number "3", then the AI text generation model is input with the following message: "The robot is in a very happy state. The user is in a normally happy state. The user asked, 'Is the event fun?' As a robot, how should you respond?" and the robot's action content is obtained. The action decision unit 236 then determines the robot's action based on this action content.
[0117] [Table 1]
[0118] [Table 2]
[0119] In this way, because robot 100 can change its behavior according to an index number corresponding to the robot's emotions, users get the impression that the robot has a heart, and are encouraged to take actions such as talking to the robot.
[0120] Furthermore, the action decision unit 236 may generate the robot's actions by adding text representing the user's actions, the user's emotions, and the robot's emotions, as well as text representing the contents of the history data 222, and then adding fixed phrases for asking about the robot's actions corresponding to the user's actions, and inputting these into the dialogue function. As a result, the robot 100 can change its actions according to the history data representing the user's emotions and actions, so that the user gets the impression that the robot has a personality and is encouraged to take actions such as talking to the robot. In addition, the history data may also include the robot's emotions and actions. [Explanation of Symbols]
[0121] 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, 232 Emotion Determination Unit, 234 Action Recognition Unit, 236 Action Determination Unit, 238 Memory Control Unit, 250 Action Control Unit, 252 Controlled Object, 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 user state recognition unit that recognizes the user's state, including the user's actions, Based on the user state recognized by the user state recognition unit, an emotion determination unit determines an emotion value indicating the user's emotion or the robot's emotion using an emotion engine. The system includes a dialogue function that enables interaction between a user and a robot, and includes an action determination unit that generates the robot's action content based on a combination of the user's past and current emotion values included in the history data of the user's past emotion values, which are determined by the emotion determination unit, the robot's emotion value determined by the emotion determination unit, the user's actions recognized by the user state recognition unit, and reaction rules, and determines the robot's action based on the action content. The response rule defines the robot's actions in response to a combination of the user's past and current emotional values, the robot's emotional value, and the user's actions. The aforementioned robot is installed in the ticket information system. The aforementioned action decision unit autonomously guides the user to events while engaging in conversation with them, taking into account the user's preferences, circumstances, and reactions. Behavior control system.
2. The behavior control system according to claim 1, wherein the behavior decision unit presents the user with a method for purchasing tickets to the event.
3. The action control system according to claim 1, wherein the action decision unit stores information regarding ticket issuance in the ticket issuing device for the event.
4. The behavior control system according to claim 1, further comprising a ticket function unit that functions as a ticket for the event announced to the user by the behavior decision unit.
5. The behavior control system according to claim 1, wherein the behavior decision unit provides the user with event-related information related to the event that the user has been informed of.
6. The behavior control system according to claim 1, wherein the robot is mounted on a stuffed animal or connected wirelessly or via wire to a controlled device mounted on a stuffed animal.