robot
The robot adapts its communication modes based on distance and contact with the user, enhancing interaction appropriateness through multiple operational modes, addressing the inflexibility of existing systems.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- NITTO DENKO CORP
- Filing Date
- 2023-03-29
- Publication Date
- 2026-05-27
AI Technical Summary
Existing robot communication operations are not appropriately tailored to the distance and contact with a user, lacking flexibility in interaction modes.
A robot capable of operating in multiple modes based on distance and contact information, including one-way, non-contact bidirectional, and two-way communication modes, utilizing sensors and actuators to adjust interactions accordingly.
Enhances the appropriateness of communication actions by adapting to user proximity and contact, improving interaction quality and user engagement.
Smart Images

Figure 2026086956000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a robot.
Background Art
[0002] Conventionally, there has been known a robot that gives a user healing by touching the user (see, for example, Patent Document 1).
[0003] Also, a robot control device that switches the mechanical operation of a robot based on the distance to a user has been disclosed (see, for example, Patent Document 2).
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Patent Document 2
Summary of the Invention
Problems to be Solved by the Invention
[0005] However, in the device described in Patent Document 2, since the operation of the robot is switched in two cases where the distance from the robot to a moving object such as a user is close and not close, there is room for improvement in the appropriateness of the communication operation of the robot according to the distance to the moving object.
[0006] An object of the present invention is to provide a robot excellent in the appropriateness of communication operation according to the distance to a moving object.
Means for Solving the Problems
[0007] A robot according to one aspect of the present invention is a robot capable of operating in multiple operating modes, comprising: a distance acquisition unit that acquires distance information to a movable object; a contact detection unit that detects contact with the movable object; and a determination unit that determines the operating mode to one of three mutually distinct modes, a first mode, or a second mode, based on the distance information acquired by the distance acquisition unit and the contact information from the contact detection unit. [Effects of the Invention]
[0008] According to the present invention, it is possible to provide a robot that excels in the appropriateness of communication actions according to the distance to the movable object. [Brief explanation of the drawing]
[0009] [Figure 1] This is a perspective view of the robot according to this embodiment. [Figure 2] This is a side view of the robot according to the embodiment. [Figure 3] This is a cross-sectional view along line III-III in Figure 2. [Figure 4] This diagram shows the configuration of a vital sensor according to an embodiment. [Figure 5] This is a block diagram showing the hardware configuration of the control unit according to the embodiment. [Figure 6] This is a block diagram showing the functional configuration of the control unit according to the embodiment. [Figure 7] This is a block diagram of the hardware configuration of the estimation unit (learning device) according to the embodiment. [Figure 8] This is a block diagram showing the functional configuration of the estimation unit (learning device) according to the embodiment. [Figure 9] This is a schematic diagram of the neuron learning model according to the embodiment. [Figure 10] This is a schematic diagram of the neural network learning model according to the embodiment. [Figure 11] This is a flowchart showing the processing of the control unit according to the embodiment. [Figure 12]It is a flowchart showing the processing of the estimation unit (learning device) according to the embodiment. [Figure 13] It is a block diagram showing the functional configuration of the estimation unit (learning device) according to the modification example. [Figure 14] It is a flowchart showing the processing of the estimation unit (learning device) according to the modification example. [Figure 15] It is a diagram for explaining the first mode of the operation of the robot according to the embodiment. [Figure 16] It is a diagram for explaining the second mode of the operation of the robot according to the embodiment. [Figure 17] It is a diagram for explaining the third mode of the operation of the robot according to the embodiment. [Figure 18] It is a diagram showing an example of the functions of the display, speaker, and light according to the embodiment. [Figure 19] It is a diagram showing an example of a method for recognizing a user from a captured image according to the embodiment. [Figure 20] It is an enlarged view of region E in FIG. 18. [Figure 21] It is a diagram showing an example of a sound table indicating the correspondence between at least one of the user's emotions and actions and the sound generated by the speaker. [Figure 22] It is a diagram showing an example of a light table indicating the correspondence between at least one of the user's emotions and actions and the light emitted by the light.
Embodiments for Carrying Out the Invention
[0010] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In each drawing, the same reference numerals are given to the same components, and redundant explanations are omitted as appropriate.
[0011] The embodiments described below illustrate robots that embody the technical concept of the present invention, and do not limit the present invention to the embodiments described below. The dimensions, materials, shapes, relative arrangements, etc. of the components described below are intended to be illustrative, and not to limit the scope of the present invention unless otherwise specified. Furthermore, the size and positional relationships of the members shown in the drawings may be exaggerated for clarity of explanation.
[0012] In this specification, for the sake of clarity, in the robot according to the embodiment, the vertically upward side when a user is holding the robot is referred to as "up," and the vertically downward side is referred to as "down." The upward and downward directions together are referred to as the up-down direction. The direction perpendicular to the up-down direction is referred to as the horizontal direction. Within the horizontal direction, in the robot according to the embodiment, the direction in which the user is positioned when the user is holding the robot is referred to as "front," and the direction opposite to the direction in which the user is positioned is referred to as "back." The forward and backward directions together are referred to as the front-back direction. Within the horizontal direction, the direction perpendicular to the front-back direction is referred to as the side. Within the side, the left side as viewed from the robot according to the embodiment is referred to as "left," and the right side as viewed from the robot according to the embodiment is referred to as "right." However, in this specification and the claims, terms indicating a specific direction or position (e.g., "up," "down," "side," "right," "left," and other terms including these terms) only need to be accurate in their relative positional relationships, and the orientation of the robot during use according to the embodiment is not limited to the above. Furthermore, in the embodiment, the orthogonality may include an error of ±10° from 90°.
[0013] The robot according to this embodiment is capable of communicating with a user, which is an example of a movable object. "User" refers to the user (operator) of the robot. Typical examples of users include working adults living alone, seniors whose children have become independent, and frail elderly individuals receiving home medical care. Note that "user" may include not only the robot's operator but also other individuals who simply come into contact with the robot, such as the robot's administrator. However, the movable object is not limited to the user; any object capable of movement is acceptable. This specification describes embodiments using the case where the movable object is the user as an example.
[0014] Communication according to this embodiment includes verbal exchange or communication and exchange or communication involving contact or touch. For example, a state in which a user is in contact with and touching the robot by holding it in their arms without speaking is also included in the state in which the user and the robot are communicating. Contact with the user means actions in which the user and the robot touch each other (acts of contact), such as stroking, tapping (touching), and hugging. In this specification, the term "holding" may be replaced with the term "holding".
[0015] <Example of overall configuration of Robot 100> The configuration of the robot 100 according to this embodiment will be described with reference to Figures 1 to 3. Figure 1 is a perspective view illustrating the robot 100 according to this embodiment. Figure 2 is a side view of the robot 100. Figure 3 is a cross-sectional view taken along line III-III in Figure 2.
[0016] As shown in Figures 1-3, the robot 100 is, for example, a doll-shaped robot modeled after a bear cub, and is capable of communicating with a user. The robot 100 has an exterior component 10 and is powered by supplied electricity. The robot 100 is also manufactured to be a size and weight suitable for a user to hold. However, the robot 100 is not limited to a doll-shaped robot modeled after a bear cub, and may have various shapes or structures.
[0017] In this embodiment, the robot 100 can operate in multiple operating modes. These multiple operating modes include the first to third modes shown in (1) to (3) below. (1) First Mode The first mode is a mode in which one-way communication actions are performed when the distance to the user is greater than or equal to a distance threshold, that is, when the user is far from the robot 100 and at a distance greater than or equal to the distance threshold. One-way communication refers to communication that is only in one direction from the robot 100 to the user. One-way communication includes actions such as the robot 100, which is located far from the user, beckoning the user to get the user's attention or appealing to the user that it wants attention. In other words, one-way communication is an action that induces interaction with the user. An action that induces interaction with the user is an action that explicitly induces interaction with the user, such as "spreading its arms" or "waving its arms". Alternatively, an action that induces interaction with the user may be an action that implicitly induces interaction with the user, such as "acting frightened" or "singing". (2) Second mode The second mode is a mode in which non-contact, bidirectional communication operations are performed when the distance to the user is less than the distance threshold, that is, when the user is close to the robot 100 and within the distance threshold. Bidirectional communication refers to two-way communication that includes communication from the robot 100 to the user and communication from the user to the robot 100. Non-contact bidirectional communication operations mean bidirectional communication operations performed without physical contact between the robot 100 and the user. Non-contact bidirectional communication operations include, for example, communication operations such as emitting sounds or words, nodding in agreement, and making gestures. The robot 100 can perform communication operations such as emitting sounds or words or making gestures in response to sounds, words, or gestures emitted by the user. (3) Third Mode The third mode is a mode in which two-way communication actions, including contact, are performed when the distance to the user is less than a distance threshold. Two-way communication actions, including contact, mean communication actions that include actions in which the robot 100 and the user make contact, such as hugging or tapping each other. Contact actions include, for example, at least one of a hugging action and a stroking action towards the user. In response to hugging and stroking actions from the user towards the robot 100, the robot 100 can perform communication actions such as hugging and stroking actions towards the user. Two-way communication actions, including contact, may also include non-contact communication actions such as uttering sounds or words, nodding in agreement, or making gestures to each other.
[0018] The distance threshold for the distance to the user can be set to a shorter distance, such as 1m, because two-way communication such as conversation is infrequent when the user and robot 100 are 2-3m apart. When the distance from robot 100 to the user is 1m or more, for example, around 2-3m, robot 100 can perform one-way communication actions in the first mode to draw the user closer.
[0019] For example, when the user is far away from the robot 100, the user is not particularly aware of the robot 100. Therefore, from the standpoint of promoting communication, it is preferable for the robot 100 to perform one-way communication actions that attract the user's attention. On the other hand, when the user is close to the robot 100, it is easier for the robot 100 and the user to communicate with each other, so it is preferable for the robot 100 to perform two-way communication actions. Furthermore, when the user is close to the robot 100 and the robot 100 and the user are in contact, the user is more likely to feel a sense of familiarity compared to when there is no contact, so communication actions such as hugging or stroking are preferable. Moreover, when the robot 100 and the user are not in contact, the sense of familiarity is lower compared to when there is contact, so communication actions through words, nods, gestures, etc. are preferable. As described above, the appropriate communication actions of the robot 100 differ depending on whether the user is far away, close and non-contact (distance is not zero), or close and including contact (distance is zero). In other words, the appropriate communication behavior of robot 100 differs depending on the distance to the user.
[0020] In this embodiment, the robot 100 determines an operating mode from among three mutually distinct modes: a first mode, a second mode, or a third mode, based on distance information, which is information regarding the distance to the user, and contact information, which is information regarding contact with the user. For example, if the distance to the user is greater than or equal to a distance threshold, the robot 100 determines the operating mode to the first mode; if the distance is less than the distance threshold and no contact with the user is detected, the robot 100 determines the operating mode to the second mode; and if the distance is less than the distance threshold and contact with the user is detected, the robot 100 determines the operating mode to the third mode. The robot 100 operates in the determined operating mode. As a result, the robot 100 can perform appropriate communication actions in each of the following cases: when the distance to the user is far, when the distance to the user is close and there is no contact, or when the distance to the user is close and includes contact actions. In other words, this embodiment provides a robot 100 that excels in the appropriateness of communication actions according to the distance to the user.
[0021] The following describes the details of each part of robot 100.
[0022] The exterior component 10 is flexible. The exterior component 10 includes a soft material that is pleasant to the touch when a user of the robot 100 touches the robot 100. The material of the exterior component 10 can include organic materials such as urethane foam, rubber, resin, and fibers. Preferably, the exterior component 10 is composed of an exterior made of a urethane foam material or the like with heat insulation properties, and a soft fabric material that covers the outer surface of the exterior.
[0023] Robot 100, as an example, has a torso 1, a head 2, arms 3, and legs 4. The head 2 has a right eye 2a, a left eye 2b, a mouth 2c, a right cheek 2d, and a left cheek 2e. The arms 3 include a right arm 3a and a left arm 3b, and the legs 4 include a right leg 4a and a left leg 4b. Here, the torso 1 corresponds to the robot body. The head 2, arms 3, and legs 4 each correspond to a drive unit that is displaceable relative to the robot body.
[0024] In this embodiment, the arm 3 is configured to be displaceable relative to the torso 1. For example, when the robot 100 is picked up by a user, the right arm 3a and the left arm 3b are displaced to make contact with the user's neck, torso, etc., as if embracing the user. This action makes the user feel a sense of closeness to the robot 100, thus promoting interaction between the user and the robot 100. Interaction with the user refers to actions in which the user and the robot 100 touch each other (acts of contact), such as stroking, tapping, and hugging.
[0025] The torso 1, head 2, arms 3, and legs 4 are all covered by exterior members 10. The exterior members on the torso 1 and the arms 3 are integrated, while the exterior members on the head 2 and legs 4 are separate from those on the torso 1 and arms 3. However, the configuration is not limited to these, and for example, only the parts of the robot 100 that are likely to be touched by the user may be covered by the exterior members 10. Also, at least one of the exterior members 10 on each of the torso 1, head 2, arms 3, and legs 4 may be separated from the other exterior members. Furthermore, the non-displaceable parts of the head 2, arms 3, and legs 4 may not contain any internal components such as sensors, and may be composed solely of the exterior members 10.
[0026] Robot 100 has a camera 11, a tactile sensor 12, a control unit 13, a vital sensor 14, a battery 15, a first capacitive sensor 21, and a second capacitive sensor 31 inside the exterior member 10 of the outer casing member 10. Robot 100 also has a camera 11, a tactile sensor 12, a control unit 13, a vital sensor 14, and a battery 15 inside the outer casing member 10 of the torso 1. Furthermore, robot 100 has a first capacitive sensor 21 inside the outer casing member 10 of the head 2, and a second capacitive sensor 31 inside the outer casing member 10 of the arm 3.
[0027] The robot 100 also has a display 24, a speaker 25, and a light 26 inside the exterior member 10 of the head 2. Furthermore, the robot 100 has a display 24 inside the exterior member 10 of the right eye area 2a and the left eye area 2b. In addition, the robot 100 has a speaker 25 inside the exterior member 10 of the mouth area 2c, and a light 26 inside the exterior member 10 of the right cheek area 2d and the left cheek area 2e. In this embodiment, the robot 100 also has a first pyroelectric sensor 37-1 and a second pyroelectric sensor 37-2. The display 24 corresponds to a display unit located in the eye area of the robot 100. The speaker 25 corresponds to a sound generating unit located in the mouth area of the robot 100. The light 26 corresponds to a light emitting unit located in the cheek area of the robot 100.
[0028] Let me explain in more detail. As shown in Figure 3, the robot 100 has a torso frame 16 and a torso mounting base 17 inside the exterior member 10 of the torso 1. The robot 100 also has a head frame 22 and a head mounting base 23 inside the exterior member 10 of the head 2. Furthermore, the robot 100 has a right arm frame 32a and a right arm mounting base 33 inside the exterior member 10 of the right arm 3a, and a left arm frame 32b inside the exterior member 10 of the left arm 3b. In addition, the robot 100 has a right leg frame 42a inside the exterior member 10 of the right leg 4a, and a left leg frame 42b inside the exterior member 10 of the left leg 4b.
[0029] The torso frame 16, head frame 22, right arm frame 32a, left arm frame 32b, right leg frame 42a, and left leg frame 42b are structures formed by combining multiple columnar members. The torso mounting base 17, head mounting base 23, and right arm mounting base 33 are plate-shaped members having a mounting surface. The torso mounting base 17 is fixed to the torso frame 16, the head mounting base 23 is fixed to the head frame 22, and the right arm mounting base 33 is fixed to the right arm frame 32a. The torso frame 16, head frame 22, right arm frame 32a, left arm frame 32b, right leg frame 42a, and left leg frame 42b may be formed in a box shape including multiple plate-shaped members.
[0030] The right arm frame 32a is connected to the torso frame 16 via a right arm connecting mechanism 34a, and is driven by a right arm servo motor 35a, allowing it to be displaced relative to the torso frame 16. When the right arm frame 32a is displaced, the right arm 3a is displaced relative to the torso 1. The right arm connecting mechanism 34a preferably has a reduction gear that increases the output torque of the right arm servo motor 35a, for example.
[0031] In this embodiment, the right arm frame 32a is composed of a multi-joint robot arm including a plurality of frame members and a plurality of connecting mechanisms. For example, the right arm frame 32a has a right shoulder frame F1a, a right upper arm frame F2a, a right elbow frame F3a, and a right forearm frame F4a. The torso frame 16, the right shoulder frame F1a, the right upper arm frame F2a, the right elbow frame F3a, and the right forearm frame F4a are each connected to one another via connecting mechanisms.
[0032] The right arm servo motor 35a is a collective designation for multiple servo motors. For example, the right arm servo motor 35a includes the right shoulder servo motor M1a, the right upper arm servo motor M2a, the right elbow servo motor M3a, and the right forearm servo motor M4a. The right shoulder servo motor M1a rotates the right shoulder frame F1a around a rotation axis perpendicular to the torso frame 16. The right upper arm servo motor M2a rotates the right upper arm frame F2a around a rotation axis perpendicular to the rotation axis of the right shoulder frame F1a. The right elbow servo motor M3a rotates the right elbow frame F3a around a rotation axis perpendicular to the rotation axis of the right upper arm frame F2a. The right forearm servo motor M4a rotates the right forearm frame F4a around a rotation axis perpendicular to the rotation axis of the right elbow frame F3a.
[0033] The left arm frame 32b is connected to the torso frame 16 via a left arm connecting mechanism 34b and is driven by a left arm servo motor 35b, allowing it to be displaced relative to the torso frame 16. As the left arm frame 32b is displaced, the left arm 3b is displaced relative to the torso 1. The left arm connecting mechanism 34b preferably has a reduction gear that increases the output torque of the left arm servo motor 35b, for example.
[0034] In this embodiment, the left arm frame 32b is composed of a multi-joint robot arm including a plurality of frame members and a plurality of connecting mechanisms. For example, the left arm frame 32b has a left shoulder frame F1b, a left upper arm frame F2b, a left elbow frame F3b, and a left forearm frame F4b. The torso frame 16, the left shoulder frame F1b, the left upper arm frame F2b, the left elbow frame F3b, and the left forearm frame F4b are each connected to one another via connecting mechanisms.
[0035] The left arm servo motor 35b is a collective designation for multiple servo motors. For example, the left arm servo motor 35b includes the left shoulder servo motor M1b, the left upper arm servo motor M2b, the left elbow servo motor M3b, and the left forearm servo motor M4b. The left shoulder servo motor M1b rotates the left shoulder frame F1b around a rotation axis perpendicular to the torso frame 16. The left upper arm servo motor M2b rotates the left upper arm frame F2b around a rotation axis perpendicular to the rotation axis of the left shoulder frame F1b. The left elbow servo motor M3b rotates the left elbow frame F3b around a rotation axis perpendicular to the rotation axis of the left upper arm frame F2b. The left forearm servo motor M4b rotates the left forearm frame F4b around a rotation axis perpendicular to the rotation axis of the left elbow frame F3b.
[0036] By having a four-axis joint in the arm 3, the robot 100 can achieve more realistic movements. For example, the robot 100 can initiate interaction with a neutral, inactive user by moving the arm 3 to "spread its hand." Similarly, the robot 100 can initiate interaction with a user who is walking around feeling angry by trembling the arm 3 to "appear frightened."
[0037] The head frame 22 is connected to the body frame 16 via a head connecting mechanism 27 and is driven by a head servo motor 35c, allowing it to be displaced relative to the body frame 16. As the head frame 22 is displaced, the head 2 is displaced relative to the body 1. The head connecting mechanism 27 preferably has, for example, a reduction gear that increases the output torque of the head servo motor 35c.
[0038] In this embodiment, the head frame 22 includes a neck frame F1c and a face frame F2c. The torso frame 16, the neck frame F1c, and the face frame F2c are each connected to one another via connecting mechanisms.
[0039] The head servo motor 35c is a general term for multiple servo motors. For example, the head servo motor 35c includes a neck servo motor M1c and a face servo motor M2c. The neck servo motor M1c rotates the neck frame F1c around a rotation axis perpendicular to the torso frame 16. The face servo motor M2c rotates the face frame F2c around a rotation axis perpendicular to the rotation axis of the neck frame F1c.
[0040] By having a two-axis joint in the head 2, the robot 100 can achieve more realistic movements. For example, the robot 100 can move its head 2 to "look up at" (pay attention to) a user who is operating a mobile phone while feeling aversion, thereby expressing concern for the user and inducing interaction with the user.
[0041] The right leg frame 42a is connected to the torso frame 16 via a right leg connecting mechanism 44a and has a right leg wheel 41a on its bottom side. To stabilize the posture of the robot 100, it is preferable that the robot 100 has two right leg wheels 41a in the front-rear direction of the right leg frame 42a. The right leg wheels 41a are driven by a right leg servo motor 35d and are rotatable around a rotation axis perpendicular to the front-rear direction of the right leg frame 42a. The rotation of the right leg wheels 41a enables the robot 100 to move. It is preferable that the right leg connecting mechanism 44a has, for example, a reduction gear that increases the output torque of the right leg servo motor 35d.
[0042] The left leg frame 42b is connected to the torso frame 16 via a left leg connecting mechanism 44b and has a left leg wheel 41b on its bottom side. To stabilize the posture of the robot 100, it is preferable that the robot 100 has two left leg wheels 41b in the front-rear direction of the left leg frame 42b. The left leg wheels 41b are driven by a left leg servo motor 35e and are rotatable around a rotation axis perpendicular to the front-rear direction of the left leg frame 42b. The rotation of the left leg wheels 41b enables the robot 100 to move. It is preferable that the left leg connecting mechanism 44b has, for example, a reduction gear that increases the output torque of the left leg servo motor 35e.
[0043] In this embodiment, the robot 100 moves forward or backward by simultaneously rotating the right leg wheel 41a and the left leg wheel 41b forward or backward. The robot 100 turns right or left by braking either the right leg wheel 41a or the left leg wheel 41b with a brake and rotating the other forward or backward.
[0044] In this way, the legs 4 enable the robot 100 to perform more realistic movements. For example, the robot 100 can initiate interaction with a user who is standing still, experiencing sadness or surprise, by moving its legs 4 to "approach" the user.
[0045] The camera 11 is fixed to the torso frame 16. The tactile sensor 12, control unit 13, vital sensor 14, and battery 15 are fixed to the torso mounting base 17. The control unit 13 and battery 15 are fixed on the side of the torso mounting base 17 opposite to the side where the tactile sensor 12 and vital sensor 14 are fixed. Note that the arrangement of the control unit 13 and battery 15 here is due to the available space on the torso mounting base 17 and is not necessarily limited to the above. However, fixing the battery 15 on the side of the torso mounting base 17 opposite to the side where the tactile sensor 12 and vital sensor 14 are fixed lowers the center of gravity of the robot 100 because the battery 15 is heavier than the other components. A lower center of gravity for the robot 100 is preferable because it stabilizes at least one of the robot 100's position and posture, and makes it easier to charge and replace at least one of the batteries 15.
[0046] The first capacitive sensor 21 is fixed to the head mount 23, and the second capacitive sensor 31 is fixed to the right arm mount 33. The display 24 has a right eye display 24a and a left eye display 24b. The right eye display 24a, the left eye display 24b and the speaker 25 are fixed to the head frame 22. The lights 26 have a right cheek light 26a and a left cheek light 26b. The right cheek light 26a and the left cheek light 26b are fixed to the head frame 22. The first pyroelectric sensor 37-1 and the second pyroelectric sensor 37-2 are fixed to the head mount 23.
[0047] The camera 11, tactile sensor 12, control unit 13, vital sensor 14, battery 15, first capacitive sensor 21, second capacitive sensor 31, etc., can be fixed using screws or adhesive members. The right eye display 24a, left eye display 24b, speaker 25, right cheek light 26a, left cheek light 26b, etc., can also be fixed using screws or adhesive members.
[0048] There are no particular restrictions on the materials used for the torso frame 16, torso mounting base 17, head frame 22, head mounting base 23, right arm frame 32a, right arm mounting base 33, and left arm frame 32b; resin materials or metal materials can be used. However, from the viewpoint of ensuring strength during operation, it is preferable to use metal materials such as aluminum for the torso frame 16, right arm frame 32a, and left arm frame 32b. On the other hand, if strength can be ensured, it is preferable to use resin materials for these parts in order to lighten the robot 100. There are no particular restrictions on the materials used for the torso mounting base 17, head frame 22, head mounting base 23, right arm mounting base 33, and left arm frame 32b; resin materials or metal materials can be used; however, from the viewpoint of lightening the robot 100, it is preferable to use resin materials.
[0049] The control unit 13 is connected to the camera 11, tactile sensor 12, vital sensor 14, first capacitive sensor 21, second capacitive sensor 31, right arm servo motor 35a, and left arm servo motor 35b via wired or wireless communication. The control unit 13 is also connected to the head servo motor 35c, right leg servo motor 35d, and left leg servo motor 35e via wired or wireless communication. Furthermore, the control unit 13 is also connected to the right eye display 24a, left eye display 24b, speaker 25, right cheek light 26a, and left cheek light 26b via wired or wireless communication.
[0050] Camera 11 is an image sensor that outputs captured images of the robot 100's surroundings to the control unit 13. In this embodiment, camera 11 captures images of the user. Camera 11 includes a lens and an image sensor that captures an image from the lens. The image sensor can be a CCD (Charge Coupled Device) or a CMOS (Complementary Metal-Oxide Semiconductor), etc. The captured image may be a still image or a video.
[0051] Furthermore, it is preferable that the camera 11 is a Time of Flight (TOF) camera that outputs distance images of the robot 100's surroundings to the control unit 13. Therefore, the captured images output from the camera 11 may include three-dimensional captured images (distance images) in addition to or instead of two-dimensional captured images. The captured images are used for detecting the presence or approach of a user, detecting the distance from the robot 100 to the user, user authentication, or estimating the user's emotions or actions. The captured images correspond to images of the user. In addition to the camera 11, the robot 100 may also be equipped with ultrasonic sensors, infrared sensors, millimeter-wave radar, or LiDAR (Light Detection and Raging).
[0052] Furthermore, in this embodiment, the camera 11 is an example of a distance acquisition unit that acquires distance information to the user. The camera 11 acquires a captured image of the user as distance information to the user and outputs it to the control unit 13. The control unit 13 can, for example, acquire in advance the correspondence between the image size of an object included in the captured image and the distance to that object, and based on the image size of the user included in the captured image, refer to the above correspondence to obtain the distance to the user.
[0053] The tactile sensor 12 is a sensor element that detects information perceived by the sense of touch inherent in a human hand, etc., converts it into a tactile signal which is an electrical signal, and outputs it to the control unit 13. In this embodiment, the tactile sensor 12 is an example of a contact detection unit that detects contact with a user. For example, the tactile sensor 12 converts information about pressure and vibration generated when a user contacts the robot 100 into a tactile signal using a piezoelectric element and outputs it to the control unit 13. The tactile signal output from the tactile sensor 12 corresponds to the contact information from the contact detection unit. This tactile signal is used to detect contact or presence of a user 200 with the robot 100.
[0054] The vital sensor 14 is an example of a biological information acquisition unit that acquires biological information of movable animals. The vital sensor 14 is an electromagnetic wave sensor that acquires the user's biological information using electromagnetic waves. The vital sensor 14 will be described in detail separately with reference to Figure 4.
[0055] The first capacitance sensor 21 and the second capacitance sensor 31 are sensor elements that output a capacitance signal to the control unit 13 based on a change in capacitance, detecting when a user has touched or is in close proximity to the robot 100. The first capacitance sensor 21 is preferably a rigid sensor that does not have flexibility from the viewpoint of stabilizing the exterior member 10. Since the arm 3 is a part that the user is likely to touch, the second capacitance sensor 31 is preferably a flexible sensor containing conductive thread or the like from the viewpoint of providing a good tactile feel. The capacitance signals output from the first capacitance sensor 21 and the second capacitance sensor 31 are used to detect the proximity or presence of a user to the robot 100.
[0056] The first pyroelectric sensor 37-1 and the second pyroelectric sensor 37-2 are sensor elements that detect changes in heat (infrared radiation) emitted from living organisms such as the human body. In this embodiment, the first pyroelectric sensor 37-1 and the second pyroelectric sensor 37-2 are examples of distance acquisition units that acquire distance information to the user. Furthermore, the first pyroelectric sensor 37-1 and the second pyroelectric sensor 37-2 correspond to a plurality of pyroelectric sensors capable of detecting users located at different distances from the robot 100. For example, the first pyroelectric sensor 37-1 outputs a first pyroelectric signal, which is a detection signal for a user located in an area at a distance greater than or equal to a distance threshold from the robot 100, as distance information to the control unit 13. The second pyroelectric sensor 37-2 outputs a second pyroelectric signal, which is a detection signal for a user located in an area at a distance less than a distance threshold from the robot 100, as distance information to the control unit 13. When the control unit 13 receives a first pyroelectric signal from the first pyroelectric sensor 37-1, it can recognize that the user is located within a distance threshold or greater from the robot 100. On the other hand, when the control unit 13 receives a second pyroelectric signal from the second pyroelectric sensor 37-2, it can recognize that the user is located within a distance threshold or less from the robot 100. In this way, the robot 100 can determine the distance to the user based on the first pyroelectric signal from the first pyroelectric sensor 37-1 and the second pyroelectric signal from the second pyroelectric sensor 37-2. In this embodiment, by using the first pyroelectric sensor 37-1 and the second pyroelectric sensor 37-2, the distance to the user can be determined with a simple configuration without complex processing.
[0057] The right-eye display 24a and the left-eye display 24b are display modules that display strings of characters, numbers, and symbols or images in response to commands from the control unit 13. The right-eye display 24a and the left-eye display 24b are composed of, for example, liquid crystal display modules. The strings of characters or images displayed on the right-eye display 24a and the left-eye display 24b are used to express the emotions of the robot 100. For example, the robot 100 can implicitly induce interaction with a user by displaying a "smiling" image on the right-eye display 24a and the left-eye display 24b to share in the happiness of a user who is sitting with feelings of happiness.
[0058] Speaker 25 is a speaker unit that amplifies the audio signal from the control unit 13 and outputs sound. The sound output from speaker 25 is the words or cries of robot 100 and is used to express robot 100's emotions. For example, if robot 100 is doing housework while feeling sad, it can output a "(worried) voice" from speaker 25, thereby inducing interaction with the user.
[0059] The right cheek light 26a and the left cheek light 26b are light modules that blink or change color in response to on / off signals from the control unit 13. The right cheek light 26a and the left cheek light 26b are composed of, for example, LED (Light Emitting Diode) light modules. The blinking or color change of the right cheek light 26a and the left cheek light 26b is used to express the emotions of the robot 100. For example, the robot 100 can express empathy to a user who is sitting with feelings of sadness by blinking the right cheek light 26a and the left cheek light 26b in blue, thereby inducing interaction with the user.
[0060] Battery 15 is a power source that supplies power to the camera 11, tactile sensor 12, control unit 13, vital sensor 14, first capacitive sensor 21, second capacitive sensor 31, right arm servo motor 35a, and left arm servo motor 35b. Battery 15 also supplies power to the head servo motor 35c, right leg servo motor 35d, and left leg servo motor 35e. Furthermore, battery 15 supplies power to the right eye display 24a, left eye display 24b, speaker 25, right cheek light 26a, and left cheek light 26b. Various types of rechargeable batteries, such as lithium-ion batteries and lithium polymer batteries, can be used for battery 15.
[0061] Note that the various sensors in the robot 100, such as the first capacitive sensor 21 and the second capacitive sensor 31, are not essential components. The robot 100 only needs to have at least a camera 11, a vital sensor 14, and a tactile sensor 12. The installation positions of these sensors can also be changed as appropriate. Furthermore, the various sensors, such as the camera 11, vital sensor 14, and tactile sensor 12, may be placed outside the robot 100 and transmit necessary information to the robot 100 or an external device wirelessly. For example, a learning device consisting of a PC (Personal Computer) or a server is an example of an external device.
[0062] Furthermore, the robot 100 does not necessarily have to have the control unit 13 inside the exterior member 10; the control unit 13 can communicate with each device wirelessly from outside the exterior member 10. The battery 15 can also supply power to each component from outside the exterior member 10.
[0063] In this embodiment, a configuration in which the head 2, arms 3, and legs 4 are displaceable is illustrated, but the invention is not limited to this, and at least one of the head 2, arms 3, and legs 4 may be displaceable. Furthermore, the arms 3 are configured as a 4-axis articulated robot arm, but they may be configured as a 6-axis articulated robot arm. In addition, it is preferable that the arms 3 be connectable to an end effector such as a hand. Furthermore, the legs 4 are configured as a wheeled system, but they can be configured as a crawler system or a leg system, etc.
[0064] The configuration and shape of the robot 100 are not limited to those exemplified in this embodiment and can be appropriately modified according to user preferences and usage patterns. For example, the robot 100 may not be in the form of a bear cub, but rather a robotic arm such as that of an industrial robot, or a humanoid form such as that of a humanoid. The robot 100 may also be in the form of a mobile device such as a drone or vehicle having at least one of the following: an arm, a display, a speaker, and a light.
[0065] <Example configuration of vital sensor 14> Figure 4 illustrates the configuration of the vital sensor 14. The vital sensor 14 is a microwave Doppler sensor comprising a microwave emitter 141 and a microwave receiver 142. Microwaves are an example of electromagnetic waves.
[0066] The vital sensor 14 emits a microwave wave Ms from the inside of the exterior member 10 of the robot 100 towards the user 200 using a microwave emitter 141. The vital sensor 14 also receives the reflected wave Mr, which is the emitted wave Ms reflected by the user 200, using a microwave receiver 142.
[0067] The vital sensor 14 uses the Doppler effect to detect minute displacements on the body surface caused by the user 200's heartbeat, etc., non-contactually, based on the difference between the frequency of the emitted wave Ms and the frequency of the reflected wave Mr. From the detected minute displacements, the vital sensor 14 acquires biometric information of the user 200, such as heart rate, respiration, pulse wave, and blood pressure, and can output the acquired biometric information to the control unit 13.
[0068] However, the vital sensor 14 is not limited to a microwave Doppler sensor; it may also detect minute displacements on the body surface by utilizing changes in the coupling between the human body and the antenna, or it may utilize electromagnetic waves other than microwaves, such as near-infrared light. Furthermore, the vital sensor 14 may also be a millimeter-wave radar, microwave radar, etc. In addition, it is preferable that the vital sensor 14 is equipped with a non-contact thermometer that detects infrared rays emitted from the user 200, in addition to the Doppler sensor. In this case, the vital sensor 14 detects the user 200's biological information, including information on at least one of heart rate (pulse), respiration, blood pressure, and body temperature.
[0069] In this embodiment, since the vital sensor 14 is provided inside the exterior member 10, the user 200 cannot see the vital sensor 14. This reduces the user 200's resistance to having their biological information detected, enabling the smooth acquisition of biological information. Furthermore, since the vital sensor 14 can acquire biological information without contact, unlike contact-type sensors that require the user to be in contact with the same location for a certain period of time, it can acquire biological information even if the user moves to some extent.
[0070] Furthermore, by promoting interaction between the user 200 and the robot 100 through actions such as the robot 100's embrace, the vital sensor 14 can acquire biological information when the robot 100 is being held by the user 200 and is in contact with or in close proximity to the user 200. The vital sensor 14 can acquire highly reliable biological information with suppressed noise.
[0071] <Example of configuration of control unit 13> (Example hardware configuration) Figure 5 is a block diagram showing the hardware configuration of the control unit 13. The control unit 13 is built by a computer and includes a CPU (Central Processing Unit) 131, a ROM (Read Only Memory) 132, and a RAM (Random Access Memory) 133. The control unit 13 also includes an HDD / SSD (Hard Disk Drive / Solid State Drive) 134, a device connection I / F (Interface) 135, and a communication I / F 136. These are connected to each other via system bus A so that they can communicate with one another.
[0072] The CPU 131 executes control processing, including various arithmetic operations. The ROM 132 stores programs used to drive the CPU 131, such as the IPL (Initial Program Loader). The RAM 133 is used as the work area for the CPU 131. The HDD / SSD 134 stores various information such as programs, captured images acquired by the camera 11, biological information acquired by the vital sensor 14, and detection information from various sensors, such as tactile signals acquired by the tactile sensor 12.
[0073] The device connection interface 135 is an interface for connecting the control unit 13 to various external devices. These external devices include the camera 11, tactile sensor 12, vital sensor 14, first capacitive sensor 21, second capacitive sensor 31, servo motor 35, and battery 15. Other external devices include the display 24, speaker 25, and light 26.
[0074] Here, servo motor 35 is a collective term for the right arm servo motor 35a, left arm servo motor 35b, head servo motor 35c, right leg servo motor 35d, and left leg servo motor 35e. Display 24 is a collective term for the right eye display 24a and left eye display 24b. Light 26 is a collective term for the right cheek light 26a and left cheek light 26b.
[0075] The communication interface 136 is an interface for communicating with external devices via a communication network or the like. For example, the control unit 13 connects to the internet via the communication interface 136 and communicates with external devices via the internet.
[0076] Furthermore, at least some of the functions implemented by the CPU 131 may be implemented by electrical or electronic circuits.
[0077] (Example of functional configuration) Figure 6 is a block diagram showing the functional configuration of the control unit 13. The control unit 13 includes an acquisition unit 101, a communication control unit 102, a storage unit 103, an authentication unit 104, a registration unit 105, a start control unit 106, a motor control unit 107, and an output unit 108. Furthermore, the control unit 13 includes a detection unit 110, a determination unit 111, an estimation unit 112, and an action control unit 113.
[0078] The functions of the acquisition unit 101 and the output unit 108 are realized by the device connection interface 135, etc., and the functions of the communication control unit 102 can be realized by the communication interface 136, etc. Furthermore, the functions of the storage unit 103 and the registration unit 105 can be realized by non-volatile memory such as an HDD / SSD 134. In addition, the functions of the authentication unit 104, the start control unit 106, and the motor control unit 107 can be realized by a processor such as a CPU 131 executing processing defined in a program stored in non-volatile memory such as a ROM 132.
[0079] Furthermore, the functions of the detection unit 110, the determination unit 111, the estimation unit 112, and the behavior control unit 113 are realized by a processor such as the CPU 131 executing processes defined in a program stored in a non-volatile memory such as the ROM 132. Some of the above functions may be realized by an external device such as a PC or server, or by distributed processing between the control unit 13 and the external device. For example, the estimation unit 112 may be configured as a learning device that is communicatively connected to the robot 100.
[0080] The acquisition unit 101 acquires a captured image Im of the user 200 from the camera 11 by controlling communication between the control unit 13 and the camera 11. The acquisition unit 101 also acquires a tactile signal S from the tactile sensor 12 by controlling communication between the control unit 13 and the tactile sensor 12. Furthermore, the acquisition unit 101 acquires the user 200's biological information B from the vital sensor 14 by controlling communication between the control unit 13 and the vital sensor 14.
[0081] Furthermore, the acquisition unit 101 acquires a first capacitance signal C1 from the first capacitance sensor 21 by controlling communication between the control unit 13 and the first capacitance sensor 21. The acquisition unit 101 also acquires a second capacitance signal C2 from the second capacitance sensor 31 by controlling communication between the control unit 13 and the second capacitance sensor 31.
[0082] Furthermore, the acquisition unit 101 acquires the first pyroelectric signal D1 from the first pyroelectric sensor 37-1 by controlling communication between the control unit 13 and the first pyroelectric sensor 37-1. The acquisition unit 101 also acquires the second pyroelectric signal D2 from the second pyroelectric sensor 37-2 by controlling communication between the control unit 13 and the second pyroelectric sensor 37-2.
[0083] The communication control unit 102 controls communication with external devices via a communication network or the like. For example, the communication control unit 102 can transmit captured images Im acquired by the camera 11, biological information B acquired by the vital sensor 14, and tactile signals S acquired by the tactile sensor 12 to an external device (for example, a learning device described later) via the communication network.
[0084] The storage unit 103 stores biological information B acquired by the vital sensor 14. The storage unit 103 continuously stores the acquired biological information B while the acquisition unit 101 is acquiring biological information B from the vital sensor 14. The storage unit 103 can also store information obtained from the image Im captured by the camera 11, the tactile signal S from the tactile sensor 12, the first capacitance signal C1 from the first capacitance sensor 21, the second capacitance signal C2 from the second capacitance sensor 31, the first pyroelectric signal D1 from the first pyroelectric sensor 37-1, and the second pyroelectric signal C2 from the second pyroelectric sensor 37-2.
[0085] The authentication unit 104 authenticates user 200 based on the image Im of user 200 captured by camera 11. For example, the authentication unit 104 performs facial authentication based on the captured image Im, which includes the face of user 200, captured by camera 11, by referring to the registration information 150 of face images pre-registered in registration unit 105. This allows the system to associate user 200, who is currently in contact with or near robot 100, with pre-registered personal information, and to associate biometric information B acquired by vital sensor 14 with said personal information. Furthermore, the control unit 13 can also control the system to stop the acquisition of biometric information by vital sensor 14 if the face image included in the captured image Im is not registered in registration unit 105.
[0086] The start control unit 106 initiates the acquisition of biological information B by the vital sensor 14. For example, when the detection unit 110 detects contact or proximity of the user 200 to the robot 100, the start control unit 106 turns on a switch that supplies power from the battery 15 to the vital sensor 14. This causes the start control unit 106 to initiate the acquisition of biological information B by the vital sensor 14.
[0087] The detection unit 110 detects the presence or approach of a user 200 around the robot 100 based on the image Im captured by the camera 11. Preferably, the detection unit 110 detects the distance from the robot 100 to the user 200 based on the image Im (distance image) captured by the camera 11. Alternatively, the detection unit 110 may detect the proximity or presence of the user 200 to the robot 100 based on a first capacitance signal C1 or a second capacitance signal C2. Furthermore, the detection unit 110 detects contact or presence of the user 200 with the robot 100 based on a tactile signal S from the tactile sensor 12.
[0088] The determination unit 111 determines one of three distinct operating modes—a first mode, a second mode, or a third mode—based on the captured image Im acquired by the camera 11 and the tactile signal S from the tactile sensor 12. For example, the determination unit 111 determines the operating mode to be the first mode if the distance obtained from the size of the user 200's image in the captured image Im is greater than or equal to a distance threshold. The determination unit 111 also determines the operating mode to be the second mode if the distance is less than the distance threshold and contact with the user 200 is not detected by the tactile sensor 12. The determination unit 111 also determines the operating mode to be the third mode if the distance is less than the distance threshold and contact with the user 200 is detected by the tactile sensor 12. The determination unit 111 outputs operating mode information md related to the determined operating mode to the estimation unit 112.
[0089] If the operation mode information md input from the determination unit 111 is the first or second mode, the estimation unit 112 estimates a predetermined action an (where n is the identification number of action a) for the robot 100 that is appropriate for the user 200's state, based on the captured image Im of the user 200. If the operation mode information md input from the determination unit 111 is the third mode, the estimation unit 112 estimates a predetermined action an for the robot 100 that is appropriate for the user 200's state, based on the captured image Im of the user 200 and the user 200's biometric information B. In this embodiment, the estimation unit 112 performs reinforcement learning to estimate the action at (where t is the time) for the robot 100 that is appropriate for the user 200's state st (where t is the time). However, the estimation unit 112 may also perform other machine learning methods such as supervised learning, semi-supervised learning, or unsupervised learning to estimate the predetermined action at for the robot 100 that is appropriate for the user 200's state st.
[0090] The configuration of the estimation unit 112 that performs reinforcement learning will be described in detail separately with reference to Figure 8. The configuration of the estimation unit 112 that performs supervised learning will be described in detail separately with reference to Figure 13. Furthermore, if the learning has converged, the estimation unit 112 may use the learned learning model (in this embodiment, an action-value table or a neural network) to estimate the robot 100's action at which is suitable for the user 200's state st. In this case, the estimation unit 112 will estimate a predetermined action at which is suitable for the user 200's state st using a predetermined logic or a predetermined algorithm.
[0091] The behavior control unit 113 commands the motor control unit 107 or the output unit 108 to execute action at of the robot 100. The behavior control unit 113 also commands the execution of action at (communication action) to communicate with the user 200 according to the user 200's state st. By having the robot 100 perform actions to communicate with the user 200 at the appropriate time, it can provide comfort to the user 200.
[0092] Table 1 shows the correspondence between the processing performed by the estimation unit 112 for each operating mode and the actions taken by the action control unit 113. [Table 1]
[0093] The storage unit 103 stores information about a predefined action an of the robot 100. Information about action an of the robot 100 is managed, for example, by a database table. Table 2 below is an example of an action table TB1 related to action an of the robot 100. Action table TB1 includes an action ID that identifies action an of the robot 100, the content of the action of the robot 100, the command content of action an, the action time per cycle, and an example of use.
[0094] [Table 2]
[0095] In Table 2, the codes in the command content represent the codes of the controlled object. A teaching command is an action command that is taught in advance using a teaching method such as offline teaching, online teaching, or direct teaching. A tracking command is an action command that tracks the position and orientation of the user 200 based on various sensor information such as the captured image Im (distance image).
[0096] The information regarding robot 100's behavior an shown in Table 2 is not limited to behaviors intended to induce physical contact in one-way communication. The information regarding robot 100's behavior an can include predefined behaviors intended for non-contact two-way communication in the second mode and two-way communication including contact actions in the third mode.
[0097] The motor control unit 107 controls the drive of the servo motor 35 in response to a command from the action control unit 113 for the robot 100 to perform an action at. If the action of the robot 100 is, for example, "spreading its arms," the motor control unit 107 executes the previously taught "spreading its arms" action command.
[0098] The output unit 108 controls communication between the control unit 13 and the display 24 in response to a command from the action control unit 113 to execute action at. If the action of the robot 100 is, for example, "smile with its eyes," the output unit 108 outputs smiling image data to the right eye display 24a and the left eye display 24b.
[0099] Furthermore, the output unit 108 controls communication between the control unit 13 and the speaker 25 in response to a command from the action control unit 113 to execute action at. If the action of the robot 100 is, for example, "to make a voice (to call out)", the output unit 108 outputs a voice output signal to the speaker 25.
[0100] Furthermore, the output unit 108 controls communication between the control unit 13 and the lights 26 in response to a command from the action control unit 113 to execute action at. If the action of the robot 100 is, for example, "flashing its cheeks," the output unit 108 outputs an on / off signal to the switching elements of the right cheek light 26a and the left cheek light 26b.
[0101] <Configuration of the estimation unit 112> (Example hardware configuration) Figure 7 is a block diagram showing the hardware configuration of the estimation unit 112. Figure 7 shows an example in which the estimation unit 112 shown in Figure 6 is configured as a learning device 300 that is communicatively connected to the robot 100. However, the functions of the estimation unit 112 may be provided inside the robot 100, as shown in Figure 6.
[0102] The estimation unit 112 is built by a computer and includes a CPU 301, a ROM 302, a RAM 303, an HDD / SSD 304, a device connection I / F 305, and a communication I / F 306. These are connected to each other via a system bus A' so that they can communicate with one another. In order to improve the computer's learning processing capability, it is preferable that the learning device 300 has a GPU (Graphics Processing Unit) or is configured as a PC cluster with multiple computers.
[0103] The CPU 301 executes control processing, including various arithmetic operations. The ROM 302 stores programs used to drive the CPU 301, such as IPL. The RAM 303 is used as the work area for the CPU 301. The HDD / SSD 304 stores various information such as programs, captured images Im acquired by the camera 11, biological information B acquired by the vital sensor 14, or detection information from various sensors.
[0104] The device connection interface 305 is an interface for connecting the estimation unit 112 to various external devices. These external devices include the camera 11, tactile sensor 12, vital sensor 14, first capacitive sensor 21, second capacitive sensor 31, etc. However, the estimation unit 112 may also acquire detection information from these various sensors from the robot 100 via the communication interface 306 described later.
[0105] The communication interface 306 is an interface for communicating with external devices such as the robot 100 via a communication network. For example, the estimation unit 112 connects to the internet via the communication interface 136 and communicates with external devices via the internet. Alternatively, the estimation unit 112 can directly communicate wirelessly with external devices using the communication interface 306.
[0106] Furthermore, at least some of the functions realized by the CPU 301 may be realized by electrical or electronic circuits.
[0107] (Example of functional configuration) Figure 8 is a block diagram showing the functional configuration of the estimation unit 112. The estimation unit 112 includes a state observation unit 121, an action decision unit 122, a result acquisition unit 123, a learning unit 124, a communication control unit 125, and a storage unit 126. Note that if the functions of the estimation unit 112 are installed inside the robot 100, the communication control unit 125 and the storage unit 126 become unnecessary. Also, if the estimation unit 112 estimates the robot 100's action at, which is suitable for the user 200's state st, using a learned learning model LM or based on a predetermined algorithm, the result acquisition unit 123 and the learning unit 124 become unnecessary.
[0108] The various functions of the state observation unit 121, action decision unit 122, result acquisition unit 123, and learning unit 124 can be realized by a processor such as the CPU 301 executing processes defined in a program stored in a non-volatile memory such as the ROM 302. The functions of the communication control unit 125 can be realized by a communication interface 306, etc. Furthermore, the functions of the storage unit 126 can be realized by a non-volatile memory such as the HDD / SDD 304.
[0109] For example, the estimation unit 112 performs reinforcement learning to estimate the robot 100's action at, which is appropriate for the user 200's state st. The reinforcement learning algorithm can be one of the following: Q-learning, Sarsa, Monte Carlo method, or deep reinforcement learning (reinforcement learning using DQN (Deep-Q-Network)). Below, Q-learning and deep reinforcement learning will be explained as examples.
[0110] The state observation unit 121 performs various processes to observe the state st of the user 200. The state observation unit 121 observes the state st of the user 200 based on at least one of the captured image Im of the user 200 and the user 200's biometric information B. For example, if the operating mode is the first mode or the second mode, the state observation unit 121 observes the state st of the user 200 based on the captured image Im of the user 200. If the operating mode is the third mode, the state observation unit 121 observes the state st of the user 200 based on the captured image Im of the user 200 and the user 200's biometric information B.
[0111] The captured image Im includes at least one of the user 200's face image and full-body image. The biometric information B includes information about at least one of the user 200's heart rate, respiration, blood pressure, and body temperature. For example, biometric information B includes at least one of the user 200's heart rate [bpm], respiratory rate [beats / min], blood pressure [mmHg], and body temperature [°C].
[0112] The user 200's state st includes an emotional state classified based on at least one of the user 200's facial image and information on at least one of the user 200's heart rate, respiration, blood pressure, and body temperature. Preferably, the user 200's state st further includes a behavioral state classified based on skeletal movement estimated from the user 200's full-body image. In other words, the user 200's state st is a predetermined state classified by a combination of the user 200's emotions and behavior estimated from at least one of the captured image Im and biometric information B. Note that the user 200's state st may consist only of the user 200's emotional state estimated from the captured image Im and biometric information B, or it may consist only of the user 200's behavioral state estimated from the captured image Im of the user 200.
[0113] The state observation unit 121 includes an emotion / behavior estimation unit 151. The emotion / behavior estimation unit 151 is responsible for one of the processes in the state observation unit 121. The function of the emotion / behavior estimation unit 151 may be handled by another external device that is communicatively connected to the learning device 300. The emotion / behavior estimation unit 151 estimates the emotion of the user 200 based on the user 200's facial image and information on at least one of the user 200's heart rate, respiration, blood pressure, and body temperature. The emotion of the user 200 is classified into a predetermined state based on the user 200's facial image and information on at least one of the user 200's heart rate, respiration, blood pressure, and body temperature. For example, it is preferable that the emotion of the user 200 is classified into at least one of "neutral," "happy," "sad," "disgusted," "fear," "surprise," and "anger." The emotion of the user 200 may also be a combination such as "fear" and "surprise."
[0114] The emotion and behavior estimation unit 151 estimates the user 200's emotions using a pre-trained model or by performing machine learning. For example, the emotion and behavior estimation unit 151 uses training data to deep train a neural network model that takes the user 200's facial image, heart rate, and blood pressure values as inputs and outputs the user 200's emotions such as "happiness," "sadness," and "disgust." As a result, when a new facial image of user 200 smiling, along with heart rate and blood pressure values, is input into the neural network model and analyzed by AI (artificial intelligence), the user 200's emotions can be classified as "happiness."
[0115] Furthermore, the emotion and behavior estimation unit 151 estimates the user 200's actions based on the skeletal movements estimated from the user 200's full-body image. For example, the emotion and behavior estimation unit 151 learns the position of each joint from the user 200's full-body image, estimates the user 200's skeleton from the position of each joint, and estimates the user 200's actions based on the estimated skeletal movements. Skeletal movements consist of basic movements such as "standing," "sitting," "squatting," "walking," "right arm forward," "left arm forward," and "shaking head." The user 200's actions consist of a combination and sequence of one or more basic skeletal movements. For example, the user 200's actions can be classified into at least one of the following: "doing nothing," "walking," "sitting," "operating a mobile phone," "cooking," "typing on a keyboard," "watching television," and "sleeping."
[0116] The emotion and behavior estimation unit 151 estimates the user 200's behavior using a pre-trained learning model or by performing machine learning. For example, the emotion and behavior estimation unit 151 uses training data to deep train a first neural network learning model that takes a full-body image of user 200 as input and the position of each joint of user 200 as output. Next, the emotion and behavior estimation unit 151 uses training data to deep train a second neural network learning model that takes information about changes in user 200's skeleton (changes in the position of each joint) as input and the basic movements of user 200's skeleton as output. Then, the emotion and behavior estimation unit 151 estimates user 200's behavior based on the combination and sequence of basic skeletal movements. As a result, when a new full-body image of user 200 operating a mobile phone is input to the neural network learning model and AI analysis is performed, user 200's behavior can be classified as "operating a mobile phone".
[0117] The storage unit 126 stores information about the user 200's state sn (where n is the identification number of state s). Information about the user 200's state sn is managed, for example, by a database table. Table 3 below is an example of a state table TB2 related to the user 200's state sn. The state table TB2 has a state ID that identifies the user 200's state sn and the user 200's state content. There are as many user 200's state sns as there are predefined combinations of user 200's emotions and actions. If the function of the estimation unit 112 is provided inside the robot 100, the storage unit 103 of the robot 100 stores the state table TB2.
[0118] [Table 3]
[0119] For example, if user 200's state st is "Emotion: Neutral, Behavior: Typing on the keyboard," it is observed that user 200 has a neutral emotion but is busy due to work or other reasons. Therefore, if robot 100 performs any action at, it may cause stress to user 200. If user 200 has negative emotions such as "I'm a little busy right now" or "This is annoying," user 200 will become bored with robot 100, and robot 100 will no longer be able to provide comfort to user 200.
[0120] On the other hand, when user 200's state st is "emotion: happy, behavior: sitting," it is observed that user 200 is experiencing positive emotions and is relatively unbusy. Therefore, when robot 100 performs behavior at that induces interaction with user 200, there is a higher probability that it can interact with user 200 without causing stress. As opportunities for interaction with user 200 increase, robot 100 can provide comfort to user 200. Thus, it can be inferred that there is a certain correlation between user 200's state st and the value Q of robot 100's behavior at.
[0121] The action decision unit 122 determines the robot 100's action at for user 200's state st, based on the value Q of action at-1 (t-1 is the previous time). The storage unit 126 stores the action value table TB3, which represents the value Q of the robot's action an for user 200's state sn. Table 4 below is an example of the action value table TB3 at a certain time t.
[0122] [Table 4]
[0123] In the initial state of the action value table TB3 (time t=0, etc.), the value Q of robot 100's action at for user 200's state st is unknown. Therefore, it is preferable for the action decision unit 122 to initialize the value Q of all actions an with random numbers and select one action at from among the predetermined actions an.
[0124] Furthermore, if the action decision unit 122 continues to learn by continuously selecting only the action at with the highest value Q, it will never transition to a state st+1 (t+1 is the next time step) that it has not yet experienced. Therefore, it is preferable for the action decision unit 122 to use an ε-greedy method or the like to select the action at with the highest value Q with probability 1-ε, and then select one action at from all the actions an with probability ε.
[0125] For example, if user 200's state st is "emotion: sadness, action: walking," the action decision unit 122 selects the action at with the highest value Q, "dancing," with a probability of 0.9 (ε=0.1). This increases the likelihood of inducing interaction with user 200. The action decision unit 122 also selects any action at from all actions an with a probability of 0.1. This makes user 200 feel that robot 100 is choosing actions at of its own free will, and prevents them from getting bored with robot 100. If there is no action with the highest value Q, and there are multiple actions with the same value Q, the action decision unit 122 randomly selects one of the actions at with the highest value Q of the same rank.
[0126] The communication control unit 125 transmits a command to the robot 100 to execute the action at determined by the action decision unit 122. The robot 100 receives the command to execute action at from the communication control unit 102. The action control unit 113 then commands the motor control unit 107 or the output unit 108 to execute action at of the robot 100. As a result, the robot 100 executes action at that induces interaction with the user 200, according to the state st of the user 200.
[0127] The result acquisition unit 123 acquires information regarding the result of the successful interaction with the user 200 as a result of the robot 100's action at. Preferably, the information regarding the successful interaction with the user 200 includes information regarding the user 200's approach, information regarding the user 200's emotions, and information regarding the duration of the interaction with the user.
[0128] Information regarding user 200's approach includes at least whether user 200 approached (whether or not user 200 approached robot 100). Information regarding user 200's emotions includes at least user 200's level of positive or negative emotion. Furthermore, the time spent interacting with user 200 includes at least the length of time spent interacting with user 200.
[0129] The result acquisition unit 123 includes an approach information acquisition unit 152, an emotion level estimation unit 153, and a contact time acquisition unit 154. At least one of the functions of the approach information acquisition unit 152, the emotion level estimation unit 153, and the contact time acquisition unit 154 may be handled by another external device that is communicatively connected to the learning device 300. The function of the emotion level estimation unit 153 may also be handled by the emotion behavior estimation unit 151.
[0130] The proximity information acquisition unit 152 acquires information regarding the approach of user 200 (whether user 200 is approaching) based on various sensor information such as the captured image Im (distance image) and the first capacitance signal C1 or the second capacitance signal C2. For example, if the distance from robot 100 to user 200 is greater than or equal to a distance threshold (e.g., 1 m or more), the proximity information acquisition unit 152 acquires information that user 200 is not approaching. Also, if the distance from robot 100 to user 200 falls below the distance threshold (e.g., less than 1 m), the proximity information acquisition unit 152 acquires information that user 200 is approaching. Furthermore, it is preferable for the proximity information acquisition unit 152 to acquire the approach speed of user 200 to robot 100.
[0131] The emotion level estimation unit 153 estimates the emotion level of user 200 based on at least one of the user 200's facial image and information on at least one of user 200's heart rate, respiration, blood pressure, and body temperature. For example, if user 200's emotion is classified as "neutral," the emotion level 153 estimates it as "neutral," and if it is classified as "happy," it estimates it as "very positive." Also, if user 200's emotion is classified as "sad," the emotion level 153 estimates it as "negative," and if it is classified as "disgusted," it estimates it as "very negative."
[0132] The contact time acquisition unit 154 acquires information regarding the time spent in contact with the user 200 based on various sensor information such as tactile signals S. For example, the contact time acquisition unit 154 acquires the length of time spent in contact with the user 200 by calculating the total time of all on periods until the tactile signal S is completely turned off during a predetermined period after the robot 100 has performed action at.
[0133] Based on the above, the result acquisition unit 123 acquires information regarding the outcome of the interaction with the user 200 as a result of the robot 100's actions at (for example, whether the user 200 approached, the emotional level of the user 200, and the length of time spent interacting with the user 200).
[0134] The learning unit 124 generates a learning model LM by reinforcement learning, taking the state st of user 200 (e.g., a combination of emotion and behavior) as input and the value Q(st,at) of robot 100's behavior at as output. The learning unit 124 also updates the learning model LM based on the result of the interaction with user 200. In this embodiment, the learning unit 124 obtains a reward r for robot 100's behavior at based on the result of the interaction with user 200 and updates the value Q (behavior value table TB3) of behavior at for user 200's state st based on the reward r.
[0135] The learning unit 124 includes a reward acquisition unit 155 and a value update unit 156. The reward acquisition unit 155 acquires a reward r for the robot 100's action at based on the results of the interaction with the user 200 (for example, whether the user 200 approached, the emotional level of the user 200, and the length of time spent interacting with the user 200).
[0136] The storage unit 126 stores information regarding a predetermined reward rn (where n is the identification number of the reward r) based on the result of an interaction with the user 200. Information regarding the reward rn is managed, for example, by a database table. Table 5 below is an example of a reward table TB4 that shows a predetermined reward rn. The reward table TB4 has a reward ID that identifies the reward rn, the result of an interaction with the user 200, and the reward rn based on the result of the interaction with the user 200. There are as many reward rn as there are predetermined results of interactions with the user 200.
[0137] [Table 5]
[0138] The reward acquisition unit 155 determines that interaction with the user 200 has occurred if the user 200 approaches the robot 100 (approach / no approach: yes) and the time spent in contact with the user 200 is greater than or equal to a predetermined time threshold (for example, 1 second or more). In this case, the reward acquisition unit 155 acquires a predetermined reward rn corresponding to the user 200's emotional level and the length of time spent in contact with the user 200. Although not shown in Table 5, the reward acquisition unit 155 may also acquire a predetermined reward rn corresponding to the user 200's approach speed, in addition to the user 200's emotional level and the length of time spent in contact with the user 200.
[0139] If the user 200's emotional level is positive, a positive reward rn may be defined for longer periods of interaction with the user 200. If the configuration of the robot 100 matches the user 200's preferences, an increase in the frequency of interactions with the user 200 can be expected. Conversely, if the user 200's emotional level is negative, a negative reward rn may be defined for longer periods of interaction with the user 200. If the configuration of the robot 100 matches the user 200's preferences, a decrease in the frequency of interactions with the user 200 can be prevented.
[0140] On the other hand, the reward acquisition unit 155 determines that interaction with the user 200 did not occur if the user 200 does not approach the robot 100 (approach status: none), or if the duration of contact with the user 200 is less than a predetermined time. In this case, the reward acquisition unit 155 acquires a reward of zero rn.
[0141] The value update unit 156 updates the value Q of the robot 100's action at in relation to the user 200's state st, based on a predetermined reward rn. In Q learning, the value Q is updated by the following equation 1.
[0142]
number
[0143] In Equation 1, st is the state of user 200 at a certain time t, and at is the action of robot 100 at a certain time t. Robot 100's action at changes user 200's state to st+1 (t+1 being the next time). r is the reward obtained from this change in user 200's state. The term with max represents the value Q obtained by multiplying the value Q of the action at+1, which is the highest known value Q at that time, by the discount rate γ (0 < γ ≤ 1), given the state st+1. α is the learning rate (0 < α ≤ 1), which adjusts the learning speed.
[0144] Equation 1 represents a method for updating the value Q(st,at) of action at for user 200 in state st, based on the reward r returned as a result of action at by robot 100. If the value Q of action at by robot 100 in state st of user 200 is less than the sum of its reward r and the discounted value Q of the best action at+1 for the next state st+1, the value Q(st,at) is increased. Conversely, if the value Q(st,at) of action at by robot 100 in state st of user 200 is greater than the sum of its reward r and the discounted value Q of the best action at+1 for the next state st+1, the value Q(st,at) is decreased. Therefore, Equation 1 aims to bring the value Q of action at in state st closer to the sum of the resulting reward r and the discounted value Q of the best action at+1 for the next state st+1.
[0145] The value update unit 156 updates the value Q(sn,an) of the action value table TB3 according to equation 1. The state observation unit 121 then observes the next state st+1 of user 200. The action decision unit 122 determines the robot 100's action at+1 for the next state st+1 of user 200, based on the value Q of action at (in this example, the action value table TB3), using the ε-greedy method or the like.
[0146] The communication control unit 125 transmits a command to the robot 100 to execute the determined action at+1. The robot 100 receives the command for action at+1 from the learning device 300 via the communication control unit 102. The action control unit 113 then commands the motor control unit 107 or the output unit 108 to execute action at+1 of the robot 100. As a result, the robot 100 executes action at+1 which is appropriate for the user 200's state st+1.
[0147] Here, one way to represent the value Q(st,at) on a computer is to store the value Q(st,at) as an action value table TB3 for all combinations of the state sn of all users 200 and the action an of all robots 100, as described above. Another method is to prepare an action value function that approximates the action value table TB3. The latter method can be realized by adjusting the parameters of the approximation function using techniques such as stochastic gradient descent. For example, as an approximation function, it is preferable for the learning unit 124 to generate a learning model of a neural network (DQN) using deep reinforcement learning, with the input being the state st of user 200 (combination of emotion and action) and the output being the value Q of the robot 100's action at.
[0148] The following will explain deep reinforcement learning, but first, we will explain neural networks. Figure 9 is a schematic diagram showing a neuron learning model, and Figure 10 is a schematic diagram showing a three-layer neural network learning model constructed by combining the neurons shown in Figure 9. A neural network consists of a computing unit and memory that mimics a neuron (simple perceptron) model, for example, as shown in Figure 9.
[0149] As shown in Figure 9, a neuron outputs an output (result) y for multiple inputs x (in Figure 9, inputs x1 to x3 as an example). Each input x(x1, x2, x3) is multiplied by a weight w(w1, w2, w3) corresponding to that input x. As a result, the neuron outputs an output y expressed by the following equation 2. Note that the inputs x, output y, and weights w are all vectors. Also, in equation 2 below, θ is the bias and fk is the activation function.
[0150]
number
[0151] Figure 10 shows a three-layer neural network constructed by combining the neurons shown in Figure 9. As shown in Figure 10, multiple inputs x (in this case, inputs x1 to x3 as an example) are input from the left side of the neural network, and results y (in this case, outputs y1 to y3 as an example) are output from the right side. Specifically, inputs x1, x2, and x3 are input to each of the three neurons N11 to N13, each multiplied by the corresponding weight. These weights multiplied by the inputs are collectively denoted as W1.
[0152] Neurons N11 to N13 output z11 to z13, respectively. In Figure 10, these z11 to z13 are collectively denoted as feature vector Z1, and can be considered as a vector from which the features of the input vector have been extracted. This feature vector Z1 is the feature vector between weights W1 and W2. For each of the two neurons N21 and N22, z11 to z13 are input multiplied by their corresponding weights. The weights multiplied by these feature vectors are collectively denoted as W2.
[0153] Neurons N21 and N22 output z21 and z22, respectively. In Figure 10, these z21 and z22 are collectively represented as the feature vector Z2. This feature vector Z2 is the feature vector between weights W2 and W3. For each of the three neurons N31 to N33, z21 and z22 are input multiplied by their corresponding weights. These weights multiplied by these feature vectors are collectively represented as W3.
[0154] Finally, neurons N31 to N33 output outputs y1 to y3, respectively. The neural network operates in two modes: a learning mode in which the neural network's weights W1 to W3 are learned, and an estimation mode in which outputs y1 to y3 are estimated from inputs x1 to x3. For example, in the learning mode, weights W1 to W3 are learned using a training dataset, and these parameters are used in the estimation mode to determine the robot 100's action at. Although we have written "estimation" for convenience, it goes without saying that a variety of tasks such as detection and classification are possible.
[0155] Furthermore, weights W1 to W3 can be learned using backpropagation. Error information enters from the right side of the neural network and flows to the left side. Backpropagation is a method that adjusts (learns) the weights of each neuron to minimize the difference (error) between the output y when input x is input and the true output y (label data).
[0156] Such neural networks can be made to perform deep learning by adding even more layers beyond three. Furthermore, it is possible to automatically acquire a computing unit that has a convolutional neural network (CNN) that extracts input features stepwise and a neural network that classifies or regresses the output, using only training data.
[0157] In the aforementioned action value table TB3, the memory space of the action value table TB3 can become excessively large when the number of user 200 states sn and the number of robot 100 actions an become enormous. Therefore, by approximating the action value table TB3 with a neural network (DQN), it is possible to prevent the memory space from increasing.
[0158] Referring again to Figure 8, the configuration of the estimation unit 112 that performs deep reinforcement learning will be explained. The learning unit 124 has two neural networks (DQN) including the target network TN(value Q(st,at)|θ-) and the Q network QN(value Q(st,at)|θ). The two networks are stored in the storage unit 126. The structure of the two networks is the same, but the parameters θ (corresponding to the weights mentioned above) are different. The input to both networks is the state st of the user 200, and the output is the value Q(st,at) of the robot 100's action at.
[0159] The state observation unit 121 observes the state st of the user 200 and outputs it to the action decision unit 122 and the learning unit 124. The action decision unit 122 inputs the state st of the user 200 to the target network TN and determines the action at of the robot 100 based on the value Q(st,at|θ-) of the action at output from the target network TN, using the ε-greedy method or the like. The communication control unit 125 transmits a command to the robot 100 to execute the determined action at, and the robot 100 executes action at in accordance with the command to execute action at.
[0160] The result acquisition unit 123 acquires the result of the successful interaction with the user 200 (whether the user 200 approached, the user 200's emotional level, and the length of the interaction with the user 200) as the result of the robot 100's action at, and outputs it to the learning unit 124. The learning unit 124 acquires a reward r based on the result of the successful interaction with the user 200. The state observation unit 121 also observes the next state of the user 200 st+1 and outputs it to the action decision unit 122 and the learning unit 124.
[0161] Learning unit 124 is robot 100 experience et(<st,at,st+1,r> The data is stored in the storage unit 126 as an Experience Buffer. Here, st is the state of user 200, at is the action of robot 100, st+1 is the next state of user 200, and r is the reward. It is preferable for the learning unit 124 to clip the reward r to a range of -1 to +1 so as not to overreact to outliers, etc. (so-called reward clipping).
[0162] The learning unit 124 periodically acquires arbitrary experience et from the storage unit 103 (Experience Buffer) and trains the Q network QN. For example, the learning unit 124 acquires experience (B=e0~en) for mini-batch learning B from the storage unit 126. The learning unit 124 then updates the parameters θ of the Q network QN to minimize the TD (Temporal Difference) error L(θ) shown in equation 3 below (so-called Experience Replay).
[0163]
number
[0164] Next, the learning unit 124 reflects the parameters θ of the Q network QN to the target network TN at arbitrary intervals. The learning unit 124 may periodically copy all the parameters θ of the Q network QN to the target network TN at once, or it may reflect the parameters θ of the Q network QN little by little each time the parameters θ of the Q network QN are updated.
[0165] The action decision unit 122 inputs the next user 200 state st+1 to the target network TN. The action decision unit 122 then determines the robot 100's action at+1 using the ε-greedy method or the like, based on the value Q(st+1,at+1|θ-) of action at+1 output from the target network TN. The communication control unit 125 transmits a command to the robot 100 to execute the determined action at+1, and the robot 100 executes action at+1 in response to the command.
[0166] As a result, the estimation unit 112 can perform deep reinforcement learning to estimate the robot 100's action at which is appropriate for the user 200's state st.
[0167] <Example of processing by the control unit 13> Figure 11 is a flowchart illustrating the processing of the control unit 13. Figure 11 shows the process by which the control unit 13 determines the operating mode of the robot 100 and controls the communication operation of the robot 100 in the determined first mode, second mode, and third mode. The control unit 13 starts the processing shown in Figure 11 when the detection unit 110 detects the presence of the user 200 based on the image Im captured from the camera 11. The detection of the presence of the user 200 refers to detecting the user 200 at a distance from the robot 100, at a close distance, or at a position in contact with the robot 100.
[0168] First, in step S1, the control unit 13 acquires a captured image Im of the user 200 using the acquisition unit 101. The captured image Im includes at least one of the user 200's face image and full-body image.
[0169] In step S1, the camera 11, tactile sensor 12, first capacitive sensor 21, second capacitive sensor 31, and vital sensor 14 are powered by the battery 15. However, in order to reduce the power consumption of the battery 15, the servo motor 35, display 24, speaker 25, and light 26 do not need to be powered.
[0170] Next, in step S2, the control unit 13 uses the determination unit 111 to determine whether the distance to the user 200 is greater than or equal to the distance threshold. The determination unit 111 calculates the distance to the user 200 based on the size of the user 200's image in the captured image Im. The determination unit 111 makes a determination by comparing the acquired distance with the distance threshold stored in the storage unit 103, etc.
[0171] In step S2, if it is determined that the distance to user 200 is greater than or equal to a distance threshold (step S2, YES), the control unit 13 uses the estimation unit 112 to estimate at least one of user 200's emotions and behaviors based on the captured image Im. The estimation unit 112 also estimates a predetermined action at for robot 100 that is appropriate for the estimated state st of user 200. It is preferable that the control unit 13 uses the estimation unit 112 to estimate the predetermined action at for robot 100 that is appropriate for the state st of user 200 while performing reinforcement learning or using a previously learned learning model. Note that the processing in step S3 is not an essential process for the control unit 13 and can be performed by an external device (a learning device described later) that is communicatively connected to robot 100. Detailed processing in step S3 will be described separately with reference to Figure 12.
[0172] Next, in step S4, the control unit 13 instructs the action control unit 113 to execute a one-way communication action, such as action at, which induces interaction with the user 200, according to the state st of the user 200. After the robot 100 executes action at, the control unit 13 repeats the processing in steps S1, S3 to S4, thereby inducing interaction with the user 200 and providing comfort to the user 200.
[0173] On the other hand, if in step S2 it is determined that the distance to the user 200 is not greater than or equal to the distance threshold (step S2, NO), then in step S5 the control unit 13 determines, using the determination unit 111, whether or not the robot 100 has made contact with the user 200. The determination unit 111 can determine contact with the user 200 based on the tactile signal S from the tactile sensor 12.
[0174] If, in step S5, it is determined that contact has been made with user 200 (step S5, YES), then in step S6, the control unit 13 acquires user 200's biometric information B using the acquisition unit 101. The biometric information B includes information on at least one of user 200's heart rate, respiration, blood pressure, and body temperature.
[0175] Next, in step S7, the control unit 13 uses the estimation unit 112 to estimate the emotions of the user 200 based on the captured image Im and biometric information B. The estimation unit 112 also estimates a predetermined action at for the robot 100 that is appropriate for the estimated state st of the user 200. Preferably, the control unit 13 uses the estimation unit 112 to estimate the predetermined action at for the robot 100 that is appropriate for the state st of the user 200 while performing reinforcement learning or using a learned model. Note that the processing in step S7 is not an essential process for the control unit 13 and can be performed by an external device that is communicatively connected to the robot 100.
[0176] Next, in step S8, the control unit 13 instructs the action control unit 113 to perform a bidirectional communication action, including a contact action with the user 200, according to the state st of the user 200. After the robot 100 performs the bidirectional communication action, the control unit 13 can provide the user 200 with healing through bidirectional communication by repeating the processes in steps S1, S6 to S8.
[0177] On the other hand, if it is determined in step S5 that there is no contact with the user 200 (step S5, NO), then in step S9, the control unit 13 uses the estimation unit 112 to estimate the emotion of the user 200 based on the captured image Im. The estimation unit 112 also estimates a predetermined action at for the robot 100 that is appropriate for the state st of the user 200. It is preferable that the control unit 13 uses the estimation unit 112 to estimate the predetermined action at for the robot 100 that is appropriate for the state st of the user 200 while performing reinforcement learning or using a learned model. Note that the processing in step S9 is not an essential process for the control unit 13 and can be performed by an external device that is communicatively connected to the robot 100.
[0178] Next, in step S10, the control unit 13, via the action control unit 113, commands the user 200 to perform a non-contact, bidirectional communication action according to the user 200's state st. After the robot 100 performs the non-contact, bidirectional communication action, the control unit 13 repeats the processes of steps S1, S9 to S10, thereby providing the user 200 with comfort through bidirectional communication.
[0179] Next, in step S11, the control unit 13 determines whether or not to terminate the process. For example, based on the tactile signal S from the tactile sensor 12, the control unit 13 can determine to terminate the process when it no longer detects contact between the user 200 and the robot 100.
[0180] If it is determined in step S11 to terminate the process (step S11, YES), the control unit 13 terminates the process. On the other hand, if it is determined not to terminate the process (step S11, NO), the control unit 13 repeats the process from step S1 onwards.
[0181] As described above, the control unit 13 can perform processing to command the execution of one-way communication with the user 200, bidirectional communication including contact operations, or non-contact bidirectional communication operations, depending on the state st of the user 200. In order to improve the learning processing capability or to suppress the power consumption of the battery 15, if the functions of the estimation unit 112 are handled by a learning device 300 that is communicatively connected to the robot 100, the processing in steps S3, S7, and S9 will be performed by the learning device 300.
[0182] Furthermore, at the start of the process shown in Figure 11, the servo motor 35, display 24, speaker 25, and light 26 may be in a standby state (sleep state) with reduced power supply. In other words, it is preferable for the control unit 13 to suppress the power consumption of the battery 15 by waking up the various devices from the standby state with reduced power supply as needed.
[0183] <Processing by estimation unit 112> Figure 12 is a flowchart showing the processing of the estimation unit 112 (e.g., the learning device 300). Figure 12 shows the process by which the estimation unit 112 performs reinforcement learning to estimate a predetermined action at of the robot 100 that is suitable for the state st of the user 200. Each step shown in Figure 12 is a detailed process of step S3 shown in Figure 11.
[0184] First, in step S20, the estimation unit 112 observes the state st of the user 200 based on the captured image Im using the state observation unit 121. The estimation unit 112 estimates the emotions of the user 200 based on the facial image of the user 200. The estimation unit 112 also estimates the actions of the user 200 based on the skeletal movements estimated from the full-body image of the user 200. Preferably, the estimation unit 112 then observes a predetermined state st of the user 200, which is classified based on the combination of the user 200's emotions and actions.
[0185] Next, in step S21, the estimation unit 112, using the action decision unit 122, determines a predetermined action at for the robot 100 that is suitable for the user 200's state st, based on the value Q of action at-1 (the aforementioned action value table TB3 or a learning model LM such as DQN). The estimation unit 112 outputs a command to execute action at to the action control unit 113, or transmits it to the robot 100 via the communication control unit 125, causing the robot 100 to execute action at (step S4).
[0186] Steps S20 and S21 are estimation phases in which the robot 100's action at, which is appropriate for the user 200's state, is estimated, while the other steps are learning phases.
[0187] In step S22, the estimation unit 112, using the result acquisition unit 123, acquires information regarding the result of the interaction with the user 200 as the result of the robot 100's action at. Preferably, the result of the interaction with the user 200 includes, for example, whether the user 200 approached, the user 200's emotional level, and the length of the interaction with the user 200.
[0188] In step S23, the estimation unit 112, using the reward acquisition unit 155, acquires a reward r for the robot 100's action at, based on the result of the interaction with the user 200.
[0189] In step S24, the estimation unit 112, using the value update unit 156, updates the value Q of the robot 100's action at for the user 200's state st, based on the reward r.
[0190] After learning, the process returns to step S20, where the estimation unit 112 observes the next user 200's state st+1 using the state observation unit 121. Then, in step S21, the estimation unit 112, using the action decision unit 122, determines the robot 100's action at+1, which is appropriate for the next user 200's state st+1, based on the updated action at's value Q. The robot 100 then executes the next action at+1 (step S4).
[0191] Furthermore, after step S24, the estimation unit 112 may include a step in which the value update unit 156 determines whether the value Q of action at has converged (i.e., whether the learning has converged). If the estimation unit 112 determines that the learning has converged, it does not need to execute the learning phase in subsequent processing. In other words, the estimation unit 112 executes only the estimation phase and uses the learned learning model LM (action value table TB3 or DQN, etc.) to estimate the action at+n of robot 100 that is suitable for the state st+n of user 200 (t+n is the time n times later).
[0192] Figure 12 is applicable not only to step S3 in Figure 11, but also to steps S7 and S9. When applied to step S7, the estimation unit 112 observes the user 200's state st based on the captured image Im and biological information B using the state observation unit 121. The action decision unit 122 determines a predetermined action at for the robot 100 that is suitable for the user 200's state st, and the robot 100 executes action at (step S8). When applied to step S9, the estimation unit 112 observes the user 200's state st based on the captured image Im using the state observation unit 121. The action decision unit 122 determines a predetermined action at for the robot 100 that is suitable for the user 200's state st, and the robot 100 executes action at (step S10).
[0193] <Configuration of the estimation unit 112 in the modified example> Figure 13 is a block diagram showing the functional configuration of the modified estimation unit 112. The modified estimation unit 112 differs from the functional configuration of the estimation unit 112 shown in Figure 8 in that it performs supervised learning to estimate the robot 100's action at, which is suitable for the user 200's state st. In other words, the learning unit 124 includes a teacher data recording unit 157, an error calculation unit 158, and a learning model update unit 159. Below, only the differences from the configuration of the estimation unit 112 shown in Figure 8 will be explained.
[0194] The functions of the training data recording unit 157 can be realized by non-volatile memory such as an HDD / SSD 304. Furthermore, the functions of the error calculation unit 158 and the learning model update unit 159 can be realized by a processor such as a CPU 301 executing processes defined in a program stored in non-volatile memory such as a ROM 302.
[0195] The learning unit 124 can use a decision tree (regression tree), a neural network, or logistic regression as the learning model LM for supervised learning. Below, we will describe an example in which the learning unit 124 generates a neural network learning model LM by supervised learning, with the input being the state st of user 200 and the output being the value Q of the robot 100's action at.
[0196] The training data recording unit 157 stores training data previously obtained, for example, from another robot 100 or through simulation. The training data is result (labeled) data that includes the user 200's state st-n (tn is the time n times ago), the robot 100's action at-n, and the value Q (corresponding to a label) of action at-n. The estimation unit 112 receives training data from another robot 100 or another external device via the communication control unit 125, etc. The estimation unit 112 may also store experiences that the robot 100 itself has experienced as training data.
[0197] The error calculation unit 158 first obtains training data from the training data recording unit 157 and calculates the error L of the value Q of action at based on the training data. For example, if interaction with user 200 actually occurred, the error calculation unit 158 assumes an error of -log(Q(st,at)) and calculates the error L. Also, if interaction with user 200 did not actually occur, the error calculation unit 158 assumes an error of -log(1-Q(st,at)) and calculates the error L.
[0198] The learning model update unit 159 updates the parameters (such as the weights mentioned above) of the neural network learning model LM to minimize the error L. The backpropagation method mentioned above can be used to update the learning model LM. As a result, the learning unit 124 generates a learning model LM that has been trained to a certain level using the training data.
[0199] Subsequently, the estimation unit 112 uses the learning model LM generated by supervised learning to estimate an action at that is appropriate for the actual user 200's state st. Then, the robot 100 executes an action at that induces interaction with the user 200, according to the user 200's state st.
[0200] More specifically, the state observation unit 121 observes the state st of the user 200, and the action decision unit 122 uses a learning model LM to determine a predetermined action at that is appropriate for the state st of the user 200. Then, the communication control unit 125 transmits a command to the robot 100 to execute action at, and the robot 100 executes action at in accordance with the received command to execute action at.
[0201] The result acquisition unit 123 acquires the result of the successful interaction with the user 200 as the result of the robot 100's action at. The error calculation unit 158 calculates the error of the value Q of action at based on the result of the successful interaction with the user 200, and the learning model update unit 159 further updates the neural network's learning model LM to minimize the error L. Then, the action decision unit 122 uses the learning model LM to determine the robot 100's action at+1 that is appropriate for the next state st+1 of the user 200.
[0202] As described above, the estimation unit 112 can estimate the actions of the robot 100 that are appropriate for the user 200's state st, using a learning model LM that has been trained to a certain level through supervised learning. For example, even if the robot 100 malfunctions and is replaced with another robot 100 of the same model number, the replacement robot 100 will learn from past experiences based on the faulty training data and will be able to immediately execute actions at that are appropriate for the user 200's emotional state st. Furthermore, the robot 100 will be able to execute actions at that are appropriate for the user 200's state st to some extent, even when interacting with a user 200 for the first time.
[0203] <Processing by estimation unit 112 of modified example> Figure 14 is a flowchart showing the processing of the modified estimation unit 112 (learning device 300). Figure 14 shows the process by which the estimation unit 112 performs supervised learning to estimate the robot 100's action at, which is appropriate for the user 200's state st. Each step shown in Figure 14 is a detailed process of step S11 shown in Figure 11.
[0204] First, in step S30, the estimation unit 112 obtains training data from the training data recording unit 157 using the error calculation unit 158, and calculates the error L of the value Q of the robot 100's action at based on the training data.
[0205] Next, in step S31, the estimation unit 112 updates the parameters (such as the weights mentioned above) of the neural network's learning model LM using the learning model update unit 159 to minimize the error L. As a result, the estimation unit 112 can use the learning model LM, which has been trained to a certain level using the training data, to estimate an action at that is appropriate for the actual user 200's state st.
[0206] Subsequently, in step S32, the estimation unit 112 observes the actual state st of the user 200 based on the captured image Im using the state observation unit 121. The estimation unit 112 estimates the emotions of the user 200 based on the facial image of the user 200. The estimation unit 112 also estimates the actions of the user 200 based on the skeletal movements estimated from the full-body image of the user 200. Preferably, the estimation unit 112 then observes a predetermined state st of the user 200, which is classified based on the combination of the user 200's emotions and actions.
[0207] Next, in step S33, the estimation unit 112, based on the value Q of action at-1 (a learning model LM such as a neural network) determined by the action decision unit 122, determines action at for the robot 100 that is appropriate for the user 200's state st. The estimation unit 112 outputs a command to execute action at to the action control unit 113, or transmits it to the robot 100 via the communication control unit 125. As a result, the robot 100 executes action at according to the user 200's state st (step S4).
[0208] Steps S32 and S33 are estimation phases in which the robot 100's action at, which is appropriate for the user 200's state, is estimated, while the other steps are learning phases.
[0209] In step S34, the estimation unit 112, using the result acquisition unit 123, acquires information regarding the result of the interaction with the user 200 as the result of the robot 100's action at. Preferably, the information regarding the result of the interaction with the user 200 includes whether the user 200 approached, the user 200's emotional level, and the length of the interaction with the user 200.
[0210] Next, returning to step S30, the estimation unit 112, using the error calculation unit 158, calculates the error L of the value Q of action at based on the result of the interaction with the user 200.
[0211] Then, in step S31, the estimation unit 112 updates the parameters (weights, etc.) of the learning model LM based on the error L, using the learning model update unit 159.
[0212] After learning, in step S32, the estimation unit 112 observes the next user 200's state st+1 using the state observation unit 121. Then, in step S33, the estimation unit 112, using the action decision unit 122, determines the robot 100's action at+1, which is appropriate for the next user 200's state st+1, based on the updated action at's value Q. Then the robot 100 executes the next action at+1 (step S4).
[0213] Furthermore, after step S31, the estimation unit 112 may include a step in which the learning model update unit 159 determines whether the value Q of action at has converged (i.e., whether the learning has converged). If the estimation unit 112 determines that the learning has converged, it does not need to execute the learning phase in subsequent processing. In other words, the estimation unit 112 will execute only the estimation phase and use the learned learning model LM (neural network, etc.) to estimate the action at+n of robot 100 that is suitable for the state st+n of user 200 (t+n is the time n times later).
[0214] Figure 14 is applicable not only to step S3 in Figure 11, but also to steps S7 and S9. When applied to step S7, the estimation unit 112 observes the user 200's state st based on the captured image Im and biological information B using the state observation unit 121. The action decision unit 122 determines a predetermined action at for the robot 100 that is suitable for the user 200's state st, and the robot 100 executes action at (step S8). When applied to step S9, the estimation unit 112 observes the user 200's state st based on the captured image Im using the state observation unit 121. The action decision unit 122 determines a predetermined action at for the robot 100 that is suitable for the user 200's state st, and the robot 100 executes action at (step S10).
[0215] The functions of the estimation unit 112 of the robot 100 described above may also be provided in a learning device 300 that is communicatively connected to the robot 100 and processed in a distributed manner. This enhances the learning processing capabilities of the computer. Furthermore, distributed processing by the learning device 300 can yield technical benefits such as reduced power consumption of the robot 100's battery 15, reduced charging cycles, and reduced battery weight.
[0216] <Examples of Robot 100's operation> The operation of robot 100 will be explained with reference to Figures 15-17. Figure 15 is a diagram illustrating the first mode of operation of robot 100. Figure 16 is a diagram illustrating the second mode of operation of robot 100. Figure 17 is a diagram illustrating the third mode of operation of robot 100.
[0217] In the first mode shown in Figure 15, user 200 is positioned at a distance from robot 100 (for example, about 2-3 m). User 200 is not particularly aware of robot 100 and is not attracting its attention. In this state, robot 100 performs one-way communication actions, including actions to beckon user 200 over and actions to appeal to user 200 that it wants attention, in order to attract user 200's attention.
[0218] In the second mode shown in Figure 16, the user 200 is located at a close distance (e.g., less than 1m) from the robot 100, and the robot 100 and the user 200 are not in contact. In this state, the sense of familiarity is lower compared to when the robot 100 and the user 200 are in contact, so the robot 100 performs non-contact two-way communication actions via words, nods, gestures, etc.
[0219] In the third mode shown in Figure 17, the user 200 is positioned at a close distance (e.g., less than 1 m) from the robot 100, and the robot 100 is positioned on the user 200's lap and in contact with the user 200. In this state, the user is more likely to feel a sense of closeness compared to when the robot 100 and the user 200 are in contact, so the robot 100 performs two-way communication actions, including contact actions such as hugging and stroking. Also, because the robot 100 and the user 200 are in contact, the robot 100 can acquire the user 200's vital information B using the vital sensor 14. Based on the captured image Im and the biometric information B, the robot 100 can estimate the user 200's emotions with high accuracy.
[0220] <Examples of functions of display 24, speaker 25, and light 26> The functions of the display 24, speaker 25, and light 26 will be described with reference to Figures 18-20. Figure 18 is a schematic diagram of the head 2 of the robot 100, showing an example of the functions of the display 24, speaker 25, and light 26. Figure 19 is a diagram showing an example of how the user 200 is recognized using the captured image Im. Figure 20 is a magnified view of region E in Figure 18.
[0221] In Figure 18, the head 2 includes, as described above, a display 24 positioned in the eye area of the robot 100, a speaker 25 positioned in the mouth area of the robot 100, and a light 26 positioned in the cheek area of the robot 100. The display 24 displays, for example, the white of the eye 241, the pupil 242, and the highlight area 243. The pupil 242 corresponds to the black part of the eye. The highlight area 243 corresponds to the image (mirror image) reflected by the pupil 242. For example, when the head 2 is facing the user 200, a mirror image of the user 200 is displayed in the highlight area 243.
[0222] In this embodiment, the control unit 13 controls at least one operation of the display 24, speaker 25, and light 26 based on at least one of the user 200's emotions and behaviors, using the behavior control unit 113 shown in Figure 6. For example, the estimation unit 112 shown in Figure 6 estimates at least one of the user 200's emotions and behaviors based on at least one of the captured image Im and biometric information B, and determines a predetermined action at of the robot 100 that is appropriate for the user 200's state st. The behavior control unit 113 controls at least one operation of the display 24, speaker 25, and light 26 in response to a command to execute the determined action at. For example, if the user 200's emotion is "happy," the robot 100 expresses its emotion corresponding to at least one of the user 200's emotions and behaviors by controlling at least one of the operation of the display 24, speaker 25, and light 26. Through such emotional expression, the robot 100 can share the emotion of "happiness" with the user 200 and provide comfort to the user 200. Control of the operation of at least one of the display 24, speaker 25, and light 26 is possible in any of the first to third modes.
[0223] In Figure 19, the image Im captured by the camera 11 includes the face 210 of the user 200. The face center 220 represents the central position of the face 210. The control unit 13 can obtain positional information related to the user 200's position, such as the coordinate values (X,Y) of the face center 220, by processing the captured image Im.
[0224] Figure 20 shows the mirrored image Im' displayed on the display 24 according to the coordinate values (X,Y) of the user 200's face center 220. The mirrored image Im' is a mirror image of the captured image Im. The action control unit 113 controls the display position of the mirrored image Im' on the display 24 according to the coordinate values (X,Y) of the user 200's face center 220. The display 24 displays the mirrored image Im' according to the coordinate values (X,Y) of the user 200's face center 220. The robot 100 can display its own eye area realistically, like a living eye. By viewing the mirrored image Im' displayed on the display 24, the user 200 can realistically recognize the robot 100's eye area, like a living eye.
[0225] In this embodiment, the display 24 displays the mirror image Im' with variable size, transparency, saturation, and brightness of at least one of the mirror image Im's properties. For example, a correspondence between the captured image Im and at least one of the size, transparency, saturation, and brightness of the mirror image Im' to be displayed on the display 24 is predetermined and stored in the storage unit 103 shown in Figure 6. The action control unit 113 displays the mirror image Im' on the display 24 according to at least one of the size, transparency, saturation, and brightness of the mirror image Im' obtained by referring to the storage unit 103, based on the captured image Im obtained by the camera 11. The robot 100 can display its own eye area realistically, like a living eye. The user 200 can perceive the robot 100's eye area realistically, like a living eye, by viewing the mirror image Im' displayed on the display 24.
[0226] In this embodiment, the speaker 25 shown in Figure 18 may generate a sound corresponding to sound information selected from a plurality of sound information pre-stored in the storage unit 103, based on at least one of the user 200's emotions and actions. This sound may be a cry or a word. Figure 21 is a diagram illustrating an example of a sound table ST1 showing the correspondence between at least one of the user 200's emotions and actions and the sound generated by the speaker 25. The table ST1 is stored in the storage unit 103. The behavior control unit 113 generates a sound corresponding to the sound information selected by referring to the sound table ST1, based on at least one of the user 200's emotions and actions, in the speaker 25. As a result, the robot 100 can generate a sound that is highly appropriate to the user 200's emotions and actions, and can provide comfort to the user 200.
[0227] In this embodiment, the light 26 shown in Figure 18 may emit light corresponding to a selection of light emission information pre-stored in the storage unit 103, based on at least one of the user 200's emotions and behaviors. This light may be a color corresponding to the color of the cheeks, or light emitted in a predetermined flashing pattern. Figure 22 is a diagram illustrating an example of a light table LT1 showing the correspondence between at least one of the user 200's emotions and behaviors and the light emitted by the light 26. The light table LT1 is stored in the storage unit 103. The behavior control unit 113 generates light from the light 26 corresponding to the light emission information selected by referring to the table LT1, based on at least one of the user 200's emotions and behaviors. As a result, the robot 100 can emit light that is highly appropriate to the user 200's emotions and behaviors, and can provide comfort to the user 200.
[0228] Although preferred embodiments have been described in detail above, the invention is not limited to the embodiments described above, and various modifications and substitutions can be made to the embodiments described above without departing from the scope of the claims.
[0229] Furthermore, the ordinal numbers, quantities, and other figures used in the above-described embodiments are all illustrative to specifically illustrate the technology of the present invention, and the present invention is not limited to these illustrative figures. Also, the connection relationships between the components are illustrative to specifically illustrate the technology of the present invention, and the connection relationships that realize the functions of the present invention are not limited thereto.
[0230] The robot according to this embodiment is particularly suitable for promoting oxytocin secretion and providing comfort (a sense of security or self-affirmation) to working adults living alone, seniors whose children have become independent, and frail elderly people receiving home medical care. However, it is not limited to this use and can be used to provide comfort to a variety of users.
[0231] Examples of the present invention are as follows: <1> A robot capable of operating in multiple operating modes, comprising: a distance acquisition unit that acquires distance information to a movable object; a contact detection unit that detects contact with the movable object; and a determination unit that determines the operating mode to one of three mutually distinct modes, namely a first mode, a second mode, or a third mode, based on the distance information acquired by the distance acquisition unit and the contact information from the contact detection unit. <2> The determination unit determines the operation mode to the first mode when the distance corresponding to the distance information is greater than or equal to the distance threshold, determines the operation mode to the second mode when the distance is less than the distance threshold and contact with the movable animal is not detected by the contact detection unit, and determines the operation mode to the third mode when the distance is less than the distance threshold and contact with the movable animal is detected by the contact detection unit. <1> This is the robot described in [the document]. <3> In the first mode, a one-way communication operation is performed with respect to the movable animal, and in the second and third modes, a two-way communication operation is performed with respect to the movable animal. <1> or the above <2> This is the robot described in [the document]. <4> The aforementioned one-way communication action includes the action of beckoning the movable object, <3> This is the robot described in [the document]. <5> In the second mode, non-contact communication actions are performed with respect to the movable object, and in the third mode, communication actions including contact actions are performed with respect to the movable object. <1> or the above <2> This is the robot described in [the document]. <6> The aforementioned contact action includes at least one of the hugging action and the stroking action toward the movable animal. <5> This is the robot described in [the document]. <7> The system comprises a camera for photographing the movable object and a biological information acquisition unit for acquiring biological information of the movable object, wherein in the first mode or the second mode, it operates based on the image of the movable object taken by the camera, and in the third mode, it operates based on the image of the movable object taken by the camera and the biological information acquired by the biological information acquisition unit, <1> from the above <6> It is a robot described in one of the following lists. <8> The distance acquisition unit includes a plurality of pyroelectric sensors capable of detecting the movable object located at different distances from the robot, <1> from the above <7> It is a robot described in one of the following lists. <9> The robot has at least one of the following: a display unit located in the eye area of the robot, a sound generating unit located in the mouth area of the robot, and a light-emitting unit located in the cheek area of the robot, and a control unit, wherein the movable body is the user, and the control unit controls the operation of at least one of the display unit, sound generating unit and light-emitting unit based on at least one of the user's emotions and actions. <1> from the above <8> It is a robot described in one of the following lists. <10> The device has a camera, and the display unit displays a mirror image of the image captured by the camera according to the position information of the movable object obtained from the image captured by the camera. <9> This is the robot described in [the document]. <11> The display unit displays a mirror image of the image captured by the camera, with at least one of the size, transparency, saturation, and brightness of the mirror image being variable. <10> This is the robot described in [the document]. <12> The movable object is the user, and the sound generating unit generates a sound corresponding to the sound information selected from a plurality of sound information pre-stored in the storage unit, based on at least one of the user's emotions and actions. <9> This is the robot described in [the document]. <13> The movable object is the user, and the light-emitting unit emits light corresponding to the light-emitting information selected from a plurality of light-emitting information stored in the storage unit, based on at least one of the user's emotions and actions. <9> This is the robot described in [the document]. [Explanation of Symbols]
[0232] 1 Torso 2 heads 2a Right eye 2b Left eye 2c Mouth 2d Right cheek 2e Left cheek 3 Arms 3a Right arm 3b Left arm 4 legs 4a Right leg 4b Left leg 5 Nose 10 Exterior components 11 Cameras 12. Tactile sensors 13 Control Unit 14 Vital Sensors 141 Microwave Emission Unit 142 Microwave Receiver 15 batteries 16 Torso Frame 17 Torso mounting platform 21. First Capacitive Sensor 22 Head Frames 23 Head rest 24. Display (Example of a display unit) 241 White of the eye 242 Pupil area 243 Highlights 24a Right eye display 24b Left eye display 25. Speaker (an example of a sound-generating component) 26 Lights (an example of a light-emitting part) 26a Right cheek light 26b Left cheek light 27 Head connection mechanism 31 Second capacitance sensor 32a Right arm frame 32b Left arm frame 33 Right arm placement table 34a Right arm connection mechanism 34b Left arm connection mechanism 35 Servo motor 35a Right arm servo motor 35b Left arm servo motor 35c Head servo motor 35d Right foot servo motor 35e Left foot servo motor 37-1 First pyroelectric sensor 37-2 Second pyroelectric sensor 41a Right foot wheel 41b Left foot wheel 42a Right foot frame 42b Left foot frame 44a Right foot connection mechanism 44b Left foot connection mechanism 100 Robot 101 Acquisition unit 102 Communication control unit 103 Storage unit 104 Authentication unit 105 Registration unit 106 Start control unit 107 Motor control unit 108 Output unit 110 Detection unit 111 Decision unit 112 Estimation unit 113 Action control unit 121 State observation unit 122 Action decision unit 123 Result acquisition unit 124 Learning unit 125 Communication control unit 126 Storage unit 131 CPU 132 ROM 133 RAM 134 HDD / SSD 135 Device Connection Interface 136 Communication I / F 151 Emotional behavior estimation part 152 Approach information acquisition unit 153 Emotion Level Estimation Unit 154 Contact time acquisition unit 155 Compensation Acquisition Department 156 Value Renewal Department 157 Training Data Recording Unit 158 Error calculation section 159 Learning Model Update Unit 200 users 201 Light source for photography 202 wavelength filter 203 Lens 204 Image sensor 210 Faces 220 Face-centered A System Bath B. Biometric information C1 First capacitance signal C2 Second capacitance signal F1a Right shoulder frame F2a Upper Right Arm Frame F3a Right elbow frame F4a Right Forearm Frame F1b Left shoulder frame F2b Left Upper Arm Frame F3b left elbow frame F4b Left Forearm Frame F1c Cervical Frame F2c Face Frame Im (photographed image) L irradiation light Ms emission wave Mr reflected wave M1 Breathing characteristic information M2 Mental state information M3 Holding Status Information M1a Right shoulder servo motor M2a Right Upper Arm Servo Motor M3a Right Elbow Servo Motor M4a Right Forearm Servo Motor M1b Left shoulder servo motor M2b Left Upper Arm Servo Motor M3b Left Elbow Servo Motor M4b Left Forearm Servo Motor M1c neck servo motor M2c Face Servo Motor D1 First pyroelectric signal (an example of distance information) D2 Second pyroelectric signal (an example of distance information) Im (image capture, example of distance information) Im' mirror image S Tactile signals (an example of contact information) LT1 Optical Table ST1 Sound Table
Claims
1. A robot capable of operating in multiple operating modes, A distance acquisition unit that acquires distance information to movable objects, A contact detection unit for detecting contact with the aforementioned animal, A robot having a determination unit that determines the operating mode to one of three mutually different modes, based on distance information acquired by the distance acquisition unit and contact information from the contact detection unit.
2. The aforementioned determination unit, If the distance corresponding to the distance information is greater than or equal to the distance threshold, the operation mode is determined to be the first mode. If the distance is less than the distance threshold and the contact detection unit does not detect contact with the animal, the operating mode is set to the second mode. The robot according to claim 1, wherein the operating mode is determined to be the third mode when the distance is less than a distance threshold and contact with the movable object is detected by the contact detection unit.
3. The robot according to claim 1 or 2, wherein in the first mode, it performs a one-way communication operation with the movable animal, and in the second and third modes, it performs a two-way communication operation with the movable animal.
4. The robot according to claim 3, wherein the one-way communication action includes an action of beckoning the movable object.
5. The robot according to claim 1 or 2, wherein in the second mode, it performs non-contact communication actions with the movable object, and in the third mode, it performs communication actions including contact actions with the movable object.
6. The robot according to claim 5, wherein the contact action includes at least one of an embracing action and a stroking action toward the movable animal.
7. A camera that photographs the aforementioned moving object, It has a biological information acquisition unit that acquires biological information of the aforementioned movable animal, In the first mode or the second mode, the operation is based on the image of the movable object captured by the camera. The robot according to claim 1 or 2, which in the third mode operates based on the image of the movable animal captured by the camera and the biological information acquired by the biological information acquisition unit.
8. The robot according to claim 1 or 2, wherein the distance acquisition unit includes a plurality of pyroelectric sensors capable of detecting the movable object located at different distances from the robot.
9. The robot comprises at least one of the following: a display unit located in the robot's eye area, a sound generating unit located in the robot's mouth area, and a light-emitting unit located in the robot's cheek area. It has a control unit and The aforementioned movable object is the user, The robot according to claim 1 or 2, wherein the control unit controls the operation of at least one of the display unit, the sound generating unit, and the light emitting unit based on at least one of the user's emotions and actions.
10. Having a camera, The robot according to claim 9, wherein the display unit displays a mirror image of the image captured by the camera in accordance with the position information of the movable object obtained from the image captured by the camera.
11. The robot according to claim 10, wherein the display unit displays a mirror image of the image captured by the camera, with at least one of the size, transparency, saturation, and brightness of the mirror image being variable.
12. The aforementioned movable object is the user, The robot according to claim 9, wherein the sound generating unit generates a sound corresponding to a plurality of sound information pre-stored in the storage unit, based on at least one of the user's emotions and actions.
13. The aforementioned movable object is the user, The robot according to claim 9, wherein the light-emitting unit emits light corresponding to a plurality of light-emitting information stored in the storage unit, based on at least one of the user's emotions and actions.