Robot, robot control method and program

The robot simulates growth and individual personalities through a control system that integrates growth-dependent and personality-dependent actions, enhancing the realism and interaction with users.

JP7750269B2Active Publication Date: 2025-10-07CASIO COMPUTER CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2023111356
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-07-06
Publication Date
2025-10-07
Estimated Expiration
2043-07-06

AI Technical Summary

Technical Problem

Existing robots that simulate growth lack realistic representation of individual personalities due to innate factors, failing to mimic the diverse behaviors and traits of real living creatures.

Method used

A robot design that incorporates action control mechanisms to perform actions based on both simulated growth and individuality, using a combination of growth-dependent and personality-dependent operations, with a control system that adjusts personality traits based on user interaction.

Benefits of technology

Enables a robot to realistically simulate the growth and individual personalities of living creatures, providing a richer and more engaging user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007750269000001
    Figure 0007750269000001
  • Figure 0007750269000002
    Figure 0007750269000002
  • Figure 0007750269000003
    Figure 0007750269000003
Patent Text Reader

Abstract

To provide a robot capable of simulating a creature in real, a control method of the robot, and a program.SOLUTION: In a robot 200 that autonomously operates, an operation control unit 115 causes the robot 200 to perform first operation depending on a pseudo growth of the robot 200 and second operation not depending on the pseudo growth of the robot 200 and depending on individuality of the robot 200.SELECTED DRAWING: Figure 8
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a robot, a robot control method, and a program. [Background technology]

[0002] Robots that mimic living creatures such as pets are known. For example, Patent Document 1 discloses a robot device that can give a user a simulated sense of growth by executing a scenario corresponding to the value of a growth parameter. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2003-285286 Summary of the Invention [Problem to be solved by the invention]

[0004] The robot disclosed in Patent Document 1 can realistically simulate the growth of a living creature by operating a scenario corresponding to the value of a growth parameter. However, real living creatures not only change their movements in various ways as they grow, but also have individual personalities due to innate factors such as genetics. There is a demand for more realistic simulations of living creatures by taking such individual personalities into account.

[0005] The present invention has been made to solve the above-mentioned problems, and has as its object to provide a robot, a robot control method, and a program that can realistically simulate living creatures. [Means for solving the problem]

[0006] In order to achieve the above object, one aspect of the robot according to the present invention is , own A robot that operates rhythmically ,beforean action control means for causing the robot to execute a first action that depends on the simulated growth of the robot and a second action that is independent of the simulated growth and depends on the individuality of the robot; wherein the operation control means causes the robot to perform the first operation while the pseudo-growth does not satisfy a predetermined condition, and causes the robot to perform the first operation and the second operation after the pseudo-growth satisfies the predetermined condition, and the predetermined condition is satisfied when the number of days of the pseudo-growth reaches a predetermined number of days, and the predetermined number of days is less than the number of days until the pseudo-growth is completed. It is characterized by: [Effects of the Invention]

[0007] According to the present invention, it is possible to provide a robot capable of realistically simulating a living creature, a method for controlling the robot, and a program. [Brief explanation of the drawings]

[0008] [Figure 1] 1 is a diagram illustrating an external appearance of a robot according to an embodiment. [Figure 2] FIG. 1 is a cross-sectional view of a robot according to an embodiment, as viewed from the side. [Figure 3] FIG. 2 is a diagram illustrating a housing of the robot according to the embodiment. [Figure 4] FIG. 1 is a first diagram showing the movement of a twist motor of a robot according to an embodiment; [Figure 5] FIG. 10 is a second diagram showing the movement of the twist motor of the robot according to the embodiment. [Figure 6] FIG. 2 is a first diagram showing the movement of the up and down motor of the robot according to the embodiment. [Figure 7] FIG. 10 is a second diagram showing the movement of the up and down motor of the robot according to the embodiment. [Figure 8] 1 is a block diagram showing a configuration of a robot according to an embodiment. [Figure 9] FIG. 2 is a diagram illustrating an example of an emotion map according to the embodiment. [Figure 10] FIG. 10 is a diagram showing an example of a personality value radar chart according to the embodiment. [Figure 11] FIG. 10 is a diagram illustrating an example of a growth table according to the embodiment. [Figure 12] FIG. 10 is a diagram illustrating an example of an operation content table according to the embodiment. [Figure 13] FIG. 2 is a diagram illustrating an example of a motion table according to the embodiment. [Figure 14] FIG. 10 is a diagram illustrating an example of a personality table according to the embodiment. [Figure 15] FIG. 10 is a diagram illustrating differences in the duration of actions performed by the robot according to the embodiment. [Figure 16] 10 is a flowchart showing a flow of a robot control process according to the embodiment. [Figure 17] 10 is a flowchart showing the flow of an operation control process according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0009] Hereinafter, embodiments of the present invention will be described with reference to the drawings, in which the same or corresponding parts are designated by the same reference numerals.

[0010] 1 to 3 show the appearance of a robot 200 according to this embodiment. The robot 200 is a device that operates autonomously without direct operation by a user. As shown in FIG. 1, the robot 200 is a pet robot that resembles a small animal. The robot 200 has an exterior 201 that includes decorative parts 202 that resemble eyes and fluffy fur 203.

[0011] 2 and 3, the robot 200 includes a housing 207. The housing 207 is covered by an exterior 201 and is housed inside the exterior 201. The housing 207 includes a head 204, a connecting portion 205, and a body 206. The connecting portion 205 connects the head 204 and the body 206 together.

[0012] The exterior 201 is an example of an exterior member, and is long in the front-to-rear direction, and has a bag-like shape that can house the housing 207 inside. The exterior 201 is formed in a cylindrical shape from the head 204 to the body 206, and integrally covers the body 206 and the head 204. By having the exterior 201 shaped in this way, the robot 200 is formed in a prone position.

[0013] The outer surface of exterior 201 is made of artificial pile fabric that resembles small animal fur 203 in order to simulate the feel of a small animal's skin. The lining of exterior 201 is made of synthetic fiber, natural fiber, natural leather, artificial leather, a synthetic resin sheet material, a rubber sheet material, or the like. Because it is made of such a flexible material, exterior 201 follows the movement of casing 207. Specifically, exterior 201 follows the rotation of head 204 relative to body 206.

[0014] In order for exterior 201 to follow the movement of housing 207, exterior 201 is attached to housing 207 with snap buttons (not shown). Specifically, at least one snap button is provided in the front of head 204, and at least one snap button is provided in the rear of body 206. Snap buttons that fit into the snap buttons provided on head 204 and body 206 are also provided in corresponding positions on exterior 201, and exterior 201 is fastened to housing 207 and attached with the snap buttons. Note that the number and positions of the snap buttons are merely examples and can be changed as desired.

[0015] The body 206 extends in the front-to-rear direction, and comes into contact with a support surface such as a floor or a table on which the robot 200 is placed, via the exterior 201. The body 206 has a twist motor 221 at its front end. The head 204 is connected to the front end of the body 206 via a connecting unit 205. The connecting unit 205 has a vertical motor 222. Note that although the twist motor 221 is provided in the body 206 in FIG. 2 , it may be provided in the connecting unit 205. The twist motor 221 and the vertical motor 222 connect the head 204 to the body 206 so as to be rotatable about axes in the left-right and front-to-back directions of the robot 200.

[0016] As the XYZ coordinate axes, the X-axis and Y-axis are set in a horizontal plane, and the Z-axis is set in the vertical direction. The positive direction of the Z-axis corresponds to the vertically upward direction. For ease of explanation, the following description will be given assuming that the robot 200 is placed on the placement surface with the left-right direction (width direction) of the robot 200 as the X-axis direction and the front-back direction of the robot 200 as the Y-axis direction.

[0017] The connecting portion 205 connects the body portion 206 and the head portion 204 so as to be rotatable about a first rotation axis that passes through the connecting portion 205 and extends in the front-to-rear direction (Y direction) of the body portion 206. As shown in Figures 4 and 5, the twist motor 221 rotates the head portion 204 (forward rotation) clockwise (right-handed) around the first rotation axis within a forward rotation angle range, and rotates the head portion 204 (reverse rotation) counterclockwise (left-handed) within a reverse rotation angle range, relative to the body portion 206.

[0018] In this description, clockwise refers to the clockwise direction when looking from the body 206 toward the head 204. Clockwise rotation is also called "rightward twist rotation," and counterclockwise rotation is also called "leftward twist rotation." The maximum angle of rightward or leftward twist rotation is arbitrary. In Figures 4 and 5, the angle of the head 204 when the head 204 is not twisted to the right or left (hereinafter referred to as "twist reference angle") is represented by 0. The angle when the head 204 is twisted to the left most (counterclockwise rotation) is represented by -100, and the angle when the head is twisted to the right most (clockwise rotation) is represented by +100.

[0019] Furthermore, connecting portion 205 connects body portion 206 and head portion 204 so as to be rotatable about a second rotation axis that passes through connecting portion 205 and extends in the left-right direction (width direction, X direction) of body portion 206. As shown in Figures 6 and 7, up-down motor 222 rotates head portion 204 upward about the second rotation axis within a forward rotation angle range (forward rotation) and rotates head portion 204 downward within a reverse rotation angle range (reverse rotation).

[0020] The maximum angle of rotation upward or downward is arbitrary, but in Figures 6 and 7, the angle of head 204 when head 204 is not rotated upward or downward (hereinafter referred to as the "vertical reference angle") is represented as 0, the angle when rotated most downward is represented as -100, and the angle when rotated most upward is represented as +100.

[0021] 2 and 3, the robot 200 is provided with touch sensors 211 on the head 204 and the body 206. The touch sensors 211 enable the robot 200 to detect when the user strokes or hits the head 204 or the body 206.

[0022] The robot 200 includes an acceleration sensor 212, a microphone 213, a gyro sensor 214, an illuminance sensor 215, and a speaker 231 on its body 206. The acceleration sensor 212 and the gyro sensor 214 enable the robot 200 to detect changes in its own posture, and also to detect when the robot 200 is being picked up, turned around, or thrown by a user. The illuminance sensor 215 enables the robot 200 to detect the illuminance around the robot 200. The microphone 213 enables the robot 200 to detect external sounds. The speaker 231 enables the robot 200 to make sounds.

[0023] At least some of the acceleration sensor 212, microphone 213, gyro sensor 214, illuminance sensor 215, and speaker 231 may be provided not only in the torso 206 but also in the head 204, or may be provided in both the torso 206 and the head 204.

[0024] Next, the functional configuration of the robot 200 will be described with reference to Fig. 8. As shown in Fig. 8, the robot 200 includes a control device 100, a sensor unit 210, a drive unit 220, an output unit 230, and an operation unit 240. These units are connected via a bus line BL, for example. Note that instead of the bus line BL, a wired interface such as a USB (Universal Serial Bus) cable or a wireless interface such as Bluetooth (registered trademark) may be used.

[0025] The control device 100 includes a control unit 110 and a storage unit 120. The control device 100 controls the operation of the robot 200 using the control unit 110 and the storage unit 120.

[0026] The control unit 110 includes a CPU (Central Processing Unit). The CPU is, for example, a microprocessor, and is a central processing unit that executes various processes and calculations. In the control unit 110, the CPU reads out a control program stored in ROM and controls the overall operation of the robot 200, which is the control unit's own device, while using RAM as a work memory. Furthermore, although not shown, the control unit 110 includes a clock function, a timer function, etc., and can measure the date and time, etc. The control unit 110 may also be called a "processor."

[0027] The storage unit 120 includes a ROM (Read Only Memory), a RAM (Random Access Memory), a flash memory, etc. The storage unit 120 stores programs and data used by the control unit 110 to perform various processes, including an OS (Operating System) and application programs. The storage unit 120 also stores data generated or acquired by the control unit 110 as a result of the control unit 110 performing various processes.

[0028] The sensor unit 210 includes the above-described touch sensor 211, acceleration sensor 212, gyro sensor 214, illuminance sensor 215, and microphone 213. The control unit 110 acquires, via the bus line BL, detection values ​​detected by the various sensors included in the sensor unit 210 as external stimuli. Note that the sensor unit 210 may include sensors other than the touch sensor 211, acceleration sensor 212, gyro sensor 214, and microphone 213. Increasing the types of sensors included in the sensor unit 210 can increase the types of external stimuli that the control unit 110 can acquire.

[0029] The touch sensor 211 includes, for example, a pressure sensor or a capacitance sensor, and detects contact with an object. Based on the detection value of the touch sensor 211, the control unit 110 can detect whether the robot 200 is being stroked or hit by the user.

[0030] The acceleration sensor 212 detects acceleration applied to the body 206 of the robot 200. The acceleration sensor 212 detects acceleration in each of the X-axis direction, the Y-axis direction, and the Z-axis direction, that is, acceleration in three axes.

[0031] For example, the acceleration sensor 212 detects gravitational acceleration when the robot 200 is stationary. The control unit 110 can detect the current posture of the robot 200 based on the gravitational acceleration detected by the acceleration sensor 212. In other words, the control unit 110 can detect whether the housing 207 of the robot 200 is tilted from the horizontal direction based on the gravitational acceleration detected by the acceleration sensor 212. In this way, the acceleration sensor 212 functions as a tilt detection unit that detects the tilt of the robot 200.

[0032] Furthermore, when the user lifts or throws the robot 200, the acceleration sensor 212 detects not only the gravitational acceleration but also the acceleration accompanying the movement of the robot 200. Therefore, the control unit 110 can detect the movement of the robot 200 by removing the gravitational acceleration component from the detection value detected by the acceleration sensor 212.

[0033] The gyro sensor 214 detects the angular velocity when rotation is applied to the body 206 of the robot 200. Specifically, the gyro sensor detects the angular velocity of three-axis rotation, namely, rotation around the X-axis direction, rotation around the Y-axis direction, and rotation around the Z-axis direction. By combining the detection values ​​detected by the acceleration sensor 212 and the detection values ​​detected by the gyro sensor 214, the movement of the robot 200 can be detected with higher accuracy.

[0034] The touch sensor 211, acceleration sensor 212, and gyro sensor 214 detect the strength of contact, acceleration, and angular velocity at synchronized timing (for example, every 0.25 seconds), and output the detected values ​​to the control unit 110.

[0035] The microphone 213 detects sounds around the robot 200. Based on the sound components detected by the microphone 213, the control unit 110 can detect, for example, whether the user is calling out to the robot 200 or clapping their hands.

[0036] The illuminance sensor 215 detects the illuminance around the robot 200. Based on the illuminance detected by the illuminance sensor 215, the control unit 110 can detect whether the area around the robot 200 has become brighter or darker.

[0037] The driving unit 220 includes a twist motor 221 and an up-down motor 222, and is driven by the control unit 110. The twist motor 221 is a servo motor for rotating the head 204 in the left-right direction (width direction) relative to the body 206 around the front-to-back direction as an axis. The up-down motor 222 is a servo motor for rotating the head 204 in the up-down direction (height direction) relative to the body 206 around the left-to-right direction as an axis. The robot 200 can express the action of twisting the head 204 sideways by using the twist motor 221, and can express the action of raising and lowering the head 204 by using the up-down motor 222.

[0038] The output unit 230 includes a speaker 231, and when the control unit 110 inputs sound data to the output unit 230, sound is output from the speaker 231. For example, when the control unit 110 inputs data of the cry of the robot 200 to the output unit 230, the robot 200 emits a pseudo cry.

[0039] Note that instead of or in addition to speaker 231, output unit 230 may be provided with a display such as a liquid crystal display or a light-emitting unit such as an LED (Light Emitting Diode), and emotions such as joy and sadness may be displayed on the display or expressed by the color and brightness of the emitted light.

[0040] The operation unit 240 includes operation buttons, a volume knob, etc. The operation unit 240 is an interface for accepting user operations such as turning the power on and off, adjusting the volume of the output sound, etc.

[0041] Next, a functional configuration of the control unit 110 will be described. As shown in Fig. 8, the control unit 110 functionally includes an external stimulus acquisition unit 111 which is an example of an external stimulus acquisition means, a parameter setting unit 113 which is an example of a parameter setting means, and an operation control unit 115 which is an example of an operation control means. In the control unit 110, the CPU reads a program stored in the ROM into the RAM, and executes and controls the program, thereby functioning as each of these units.

[0042] The storage unit 120 also stores parameter data 121, a growth table 123, an action content table 124, a motion table 125, a personality table 127, and a personality ID 128.

[0043] The external stimulus acquisition unit 111 acquires an external stimulus. The external stimulus is a stimulus that acts on the robot 200 from outside the robot 200. Examples of the external stimulus include "a loud noise was heard," "being spoken to," "being petted," "being lifted," "being turned upside down," "it became brighter," and "it became darker." The external stimulus is also referred to as an "event" below.

[0044] The external stimulus acquisition unit 111 acquires an external stimulus based on a detection value by the sensor unit 210. More specifically, the external stimulus acquisition unit 111 acquires a plurality of external stimuli of different types from each other using a plurality of sensors (touch sensor 211, acceleration sensor 212, microphone 213, gyro sensor 214, and illuminance sensor 215) provided in the sensor unit 210.

[0045] For example, the external stimulus acquisition unit 111 acquires an external stimulus caused by "a loud noise" or "being spoken to" using the microphone 213. The external stimulus acquisition unit 111 acquires an external stimulus caused by "being stroked" using the touch sensor 211. The external stimulus acquisition unit 111 acquires an external stimulus caused by "being lifted" or "being turned upside down" using the acceleration sensor 212 and gyro sensor 214. The external stimulus acquisition unit 111 acquires an external stimulus caused by "it becoming brighter" or "it becoming dark" using the illuminance sensor 215.

[0046] The parameter setting unit 113 sets parameter data 121. The parameter data 121 is data that determines various parameters related to the robot 200. Specifically, the parameter data 121 includes (1) the number of days of growth, (2) emotion parameters, (3) emotion change amounts, (4) personality parameters, and (5) growth parameters.

[0047] (1) Number of days to grow The number of days of growth represents the number of days of pseudo-growth of the robot 200. The robot 200 is pseudo-born when the user activates it for the first time after shipping from the factory, and grows from a child to an adult over a predetermined growth period. The number of days of growth corresponds to the number of days from the pseudo-birth of the robot 200.

[0048] The initial value of the number of days of growth is 1, and the parameter setting unit 113 adds 1 to the number of days of growth each time a day passes. The growth period in which the robot 200 grows from a child to an adult is, for example, 50 days, and the period of 50 days of growth from the simulated birth is referred to as the "first period (child period)." When the first period has passed, the simulated growth of the robot 200 is completed. The period after the first period has passed is referred to as the "second period (adult period)."

[0049] (2) Emotion parameters The parameter setting unit 113 sets emotion parameters. The emotion parameters are parameters that represent simulated emotions in the robot 200. The emotion parameters are expressed by coordinates (X, Y) on the emotion map 300.

[0050] As shown in Figure 9, the emotion map 300 is represented by a two-dimensional coordinate system with the X axis representing relief (anxiety) and the Y axis representing excitement (lethargy). The origin (0,0) on the emotion map represents normal emotions. The larger the absolute value of the X coordinate (X value), the more positive the X coordinate value, the higher the relief emotion, and the larger the absolute value of the negative coordinate value, the higher the anxiety emotion. The larger the absolute value of the Y coordinate (Y value), the more positive the Y coordinate value, the higher the excitement emotion, and the larger the absolute value of the negative coordinate value, the higher the lethargy emotion.

[0051] The emotion parameters represent multiple (four in this embodiment) different pseudo-emotions. In Fig. 9, of the values ​​representing the pseudo-emotions, the relief and anxiety levels are shown together on one axis (X-axis), and the excitement and lethargy levels are shown together on another axis (Y-axis). Therefore, the emotion parameters have two values: an X value (relief, anxiety level) and a Y value (excitement, lethargy level), and the points on the emotion map 300 represented by the X and Y values ​​represent the pseudo-emotions of the robot 200. The initial values ​​of the emotion parameters are (0,0).

[0052] 9, emotion map 300 is represented in a two-dimensional coordinate system, but emotion map 300 may have any number of dimensions. Emotion map 300 may be defined in one dimension, with one value set as the emotion parameter. Alternatively, emotion map 300 may be defined in a coordinate system of three or more dimensions by adding other axes, with the same number of values ​​set as the number of dimensions of emotion map 300 as the emotion parameter.

[0053] The initial size of emotion map 300 has a maximum value of 100 and a minimum value of -100 for both the X and Y values, as shown in frame 301 in Fig. 9. During the first period (e.g., 50 days) which is the growth period of robot 200, parameter setting unit 113 increases both the maximum and minimum values ​​of emotion map 300 by 2 each time the number of days of simulated growth of robot 200 increases by one day.

[0054] When half the number of days of growth of the first period (for example, 25 days) has passed, the maximum value of both the X value and the Y value becomes 150 and the minimum value becomes -150, as shown in box 302 in Fig. 9. Then, when the first period (for example, 50 days) has passed, the simulated growth of the robot 200 stops. At this time, as shown in box 303 in Fig. 9, the maximum value of both the X value and the Y value becomes 200 and the minimum value becomes -200. After that, the size of the emotion map 300 is fixed.

[0055] The settable range of emotion parameters is determined by emotion map 300. Therefore, the settable range of emotion parameters expands as the size of emotion map 300 expands. Expanding the settable range of emotion parameters enables a richer range of emotion expression, and so the pseudo-growth of robot 200 is expressed by expanding the size of emotion map 300.

[0056] The condition for stopping the pseudo-growth of the robot 200 is not limited to "the first period has elapsed," and other conditions may be added. For example, the condition for stopping the growth may be "one of the four personality values ​​reaches a maximum value (e.g., 10)." If the growth is stopped under this condition, the personality is fixed when only one of the four personalities reaches the maximum value, making it possible to emphasize a specific personality.

[0057] (3) Amount of emotional change The emotion change amount is data indicating the degree to which the simulated emotion of the robot 200 is changed, and determines the amount of change by which each of the X value and Y value of the emotion parameter is increased or decreased. The emotion change amount is expressed by the following four variables: DXP and DXM increase or decrease the X value of the emotion parameter, respectively. DYP and DYM increase or decrease the Y value of the emotion parameter, respectively.

[0058] DXP: Ease of feeling at ease (the tendency for the X value on the emotion map to change in a positive direction) DXM: Anxiety (the tendency for the X value on the emotional map to change in a negative direction) DYP: Excitability (the tendency for the Y value on the emotion map to change in a positive direction) DYM: Tendency to become lethargic (the tendency for the Y value on the emotion map to change in the negative direction)

[0059] The initial value of each of these emotion variation amounts DXP, DXM, DYP, and DYM is 10, and is updated through learning, which will be described later. Parameter setting section 113 updates the emotion parameter by adding or subtracting the value of emotion variation amounts DXP, DXM, DYP, and DYM that corresponds to the external stimulus to or from the current emotion parameter.

[0060] For example, when the head 204 is stroked, the simulated emotion of the robot 200 is one of relief, so the parameter setting unit 113 adds DXP to the X value of the emotion parameter. Conversely, when the head 204 is hit, the simulated emotion of the robot 200 is one of anxiety, so the parameter setting unit 113 subtracts DXM from the X value of the emotion parameter. It is possible to arbitrarily set what amount of emotion change is associated with various external stimuli. An example is shown below.

[0061] Petting the head 204 (feels reassuring): X = X + DXP Hit on the head 204 (makes me anxious): X=X-DXM (These external stimuli can be detected by the touch sensor 211 on the head 204.) Body part 206 is stroked (excited): Y=Y+DYP Hitting the torso 206 (becoming lethargic): Y=Y-DYM (These external stimuli can be detected by the touch sensor 211 on the body 206.) Being held with head up (happy): X=X+DXP and Y=Y+DYP Hanging head down (sad): X=X-DXM and Y=Y-DYM (These external stimuli can be detected by the touch sensor 211 and the acceleration sensor 212.) A gentle voice calls out to you (becomes peaceful): X=X+DXP and Y=Y-DYM Being yelled at loudly (irritating): X=X-DXM and Y=Y+DYP (These external stimuli can be detected by microphone 213)

[0062] External stimulus acquisition section 111 acquires a plurality of different types of external stimuli using a plurality of sensors included in sensor section 210. Therefore, parameter setting section 113 derives various amounts of emotion change in accordance with each of the plurality of external stimuli, and sets emotion parameters in accordance with the derived amounts of emotion change.

[0063] The maximum and minimum values ​​of the X and Y values ​​of the emotion parameters are determined by the size of emotion map 300. Therefore, if the above calculation results in a value exceeding the maximum value of emotion map 300, the maximum value is set, and if the value falls below the minimum value of emotion map 300, the minimum value is set.

[0064] Parameter setting section 113 updates each variable of emotion variation amounts DXP, DXM, DYP, and DYM in response to the external stimulus acquired by external stimulus acquisition section 111. Specifically, parameter setting section 113 adds 1 to DXP if the X value of the emotion parameter is set to the maximum value of emotion map 300 at least once in a day, and adds 1 to DYP if the Y value of the emotion parameter is set to the maximum value of emotion map 300 at least once in a day. Furthermore, parameter setting section 113 adds 1 to DXM if the X value of the emotion parameter is set to the minimum value of emotion map 300 at least once in a day, and adds 1 to DYM if the Y value of the emotion parameter is set to the minimum value of emotion map 300 at least once.

[0065] In this way, parameter setting unit 113 changes the emotion change amount according to a condition based on whether the emotion parameter value has reached the maximum or minimum value of emotion map 300 (first condition based on external stimuli). Updating each variable in this way is called learning the emotion change amount. As an example, the initial value of each emotion change amount variable is set to 10. Parameter setting unit 113 increases each variable up to a maximum of 20 through the above-described updating (learning). This learning process changes the emotion change amount, i.e., the degree of change in emotion.

[0066] For example, if only the head 204 is stroked repeatedly, only the emotion change amount DXP increases, while the other emotion change amounts remain unchanged, so the robot 200 develops a reassuring personality. On the other hand, if only the head 204 is hit repeatedly, only the emotion change amount DXM increases, while the other emotion change amounts remain unchanged, so the robot 200 develops a personality that is prone to anxiety. In this way, the parameter setting unit 113 changes the emotion change amount in response to various external stimuli.

[0067] The value added to each variable of the emotion change amount is not limited to 1. For example, the number of times each emotion parameter value is set to the maximum or minimum value of emotion map 300 may be counted, and if that number is high, the value added to the emotion change amount may be increased. Furthermore, the conditions for learning the emotion change amount are not limited to those described above. For example, the emotion change amount may be learned if the X value or Y value of the emotion parameter reaches a predetermined value at least once (e.g., 0.5 times the maximum value or 0.5 times the minimum value of emotion map 300). Furthermore, the period is not limited to one day, and the emotion change amount may be learned if the X value or Y value of the emotion parameter reaches a predetermined value at least once over other periods such as half a day or one week. Furthermore, instead of a fixed period such as one day, the emotion change amount may be learned if the X value or Y value of the emotion parameter reaches a predetermined value at least once over a period until the number of times external stimuli are acquired reaches a predetermined number (e.g., 50 times).

[0068] (4) Personality parameters The personality parameters are parameters that represent the simulated personality of the robot 200. The personality parameters include a plurality of personality values ​​that respectively represent different degrees of personality. The parameter setting unit 113 changes the plurality of personality values ​​included in the personality parameters in response to the external stimulus acquired by the external stimulus acquisition unit 111.

[0069] Specifically, the parameter setting unit 113 calculates the four personality values ​​according to the following (Equation 1): That is, the personality value (cheerful) is calculated by subtracting 10 from DXP, which indicates how easily one feels at ease; the personality value (shy) is calculated by subtracting 10 from DXM, which indicates how easily one becomes anxious; the personality value (active) is calculated by subtracting 10 from DYP, which indicates how easily one becomes excited; and the personality value (spoiled) is calculated by subtracting 10 from DYM, which indicates how easily one becomes lethargic.

[0070] Personality (cheerful) = DXP-10 Personality score (shy) = DXM-10 Personality score (active) = DYP-10 Personality score (spoiled) = DYM-10 …(Formula 1)

[0071] 10, a personality value radar chart 400 can be generated by plotting the personality value (cheerful) on the first axis, the personality value (active) on the second axis, the personality value (shy) on the third axis, and the personality value (spoiled) on the fourth axis. Each variable of the amount of emotional change has an initial value of 10 and can increase up to a maximum of 20, so the range of the personality value is between 0 and 10.

[0072] Since the initial value of each personality value is 0, the personality of robot 200 at birth is represented by the origin of personality value radar chart 400. As robot 200 grows, the four personality values ​​change up to an upper limit of 10 depending on external stimuli (how the user interacts with robot 200) detected by sensor unit 210. This allows for the expression of 11 to the fourth power = 14,641 different personalities.

[0073] In this way, the robot 200 has various personalities depending on how the user interacts with the robot 200. In other words, the personality of each robot 200 is formed differently depending on how the user interacts with the robot 200.

[0074] These four personality values ​​are fixed when the first period has elapsed and the pseudo-growth of the robot 200 is completed. In the subsequent second period, the personality is corrected according to the user's interaction with the robot 200, so the parameter setting unit 113 adjusts the four personality correction values ​​(cheerful correction value, active correction value, shy correction value, and clingy correction value).

[0075] Parameter setting section 113 adjusts the four personality correction values ​​in accordance with a condition (second condition based on external stimulus data) based on which area on emotion map 300 the emotion parameter has existed for the longest time. Specifically, the four personality correction values ​​are adjusted as follows (A) to (E):

[0076] (A) If the longest presence area is a safe area on the emotion map 300, the parameter setting unit 113 adds 1 to the cheerful correction value and subtracts 1 from the shy correction value. (B) If the longest presence area is an excited area on the emotion map 300, the parameter setting unit 113 adds 1 to the active correction value and subtracts 1 from the spoiled child correction value. (C) If the longest existing area is an anxious area on the emotion map 300, the parameter setting unit 113 adds 1 to the shy correction value and subtracts 1 from the cheerful correction value. (D) If the longest presence area is a lethargic area on the emotion map 300, the parameter setting unit 113 adds 1 to the spoiled child correction value and subtracts 1 from the activeness correction value. (E) If the longest presence area is the central area on the emotion map 300, the parameter setting unit 113 decreases the absolute values ​​of all four personality correction values ​​by one.

[0077] When the four character correction values ​​are set, the parameter setting unit 113 calculates the four character values ​​according to the following (Equation 2).

[0078] Personality (cheerful) = DXP-10 + cheerfulness correction value Personality score (shy) = DXM-10 + shyness correction value Personality score (active) = DYP-10 + activeness correction value Personality score (spoiled) = DYM-10 + spoiled correction value …(Formula 2)

[0079] (5) Growth parameters The growth parameter is a value that represents the degree of pseudo-growth of the robot 200. The parameter setting unit 113 sets the growth parameter based on the personality parameter. Specifically, the parameter setting unit 113 sets the growth parameter to the largest value among multiple personality values ​​(four in the above example) included in the personality parameter. For example, in the example of FIG. 10, the personality value (cheerful) is 3, the personality value (active) is 8, the personality value (shy) is 5, and the personality value (spoiled) is 4, so the parameter setting unit 113 sets the personality value (active), which is the largest value among these, to 8, as the growth parameter. Note that the growth parameter is not limited to the maximum value, and the sum, average, mode, etc. of multiple personality values ​​may also be used.

[0080] Since the personality parameters change depending on how the user interacts with the robot 200, by setting the growth parameters based on the personality parameters in this manner, it is possible to obtain the effect of the robot 200 growing in a pseudo-manner based on how the user interacts with the robot 200.

[0081] 8, the operation control unit 115 causes the robot 200 to perform various operations based on the external stimulus acquired by the external stimulus acquisition unit 111 and the parameter data 121 set by the parameter setting unit 113. Here, the operations that the operation control unit 115 causes the robot 200 to perform correspond to at least one of controlling the driving unit 220 to cause the robot 200 to perform various motions and controlling the output unit 230 to output various sounds such as cries.

[0082] The action control unit 115 causes the robot 200 to perform an action corresponding to an action trigger. An action trigger is a condition under which the robot 200 operates. Action triggers include triggers based on an external stimulus (event) acquired by the external stimulus acquisition unit 111 and triggers not based on an external stimulus.

[0083] More specifically, the movement control unit 115 causes the robot 200 to execute a first movement that depends on the simulated growth of the robot 200 and a second movement that is independent of the simulated growth of the robot 200 and depends on the personality of the robot 200. The first movement and the second movement will be described below.

[0084] (I) First movement The first motion is a motion whose content changes according to the simulated growth of the robot 200. Even real living creatures have different behaviors, such as gestures and sounds, when they are young and when they are adults. For example, real living creatures make vigorous movements and high-pitched sounds when they are young, but their movements become less vigorous and their sounds become lower when they become adults. The first motion is a motion intended to express such differences in behavior according to the growth of living creatures.

[0085] The action control unit 115 causes the robot 200 to execute, as the first action, a basic action that is independent of the personality parameters and a personality action that is dependent on the personality parameters. Here, the basic action is a action that is dependent on the simulated growth of the robot 200 but is not dependent on the simulated personality of the robot 200. In other words, the basic action is a action that does not change depending on how the user interacts with (raises) the robot 200. In contrast, the personality action is a action that is dependent on both the simulated growth and the simulated personality of the robot 200. In other words, the personality action is a action that changes depending on how the user interacts with (raises) the robot 200.

[0086] The movement control unit 115 selects the first movement from among the basic movements and the character movement with a probability according to the growth parameter. Specifically, the movement control unit 115 controls the robot 200 so that variations in the movement occur as the robot 200 grows pseudo-growth, that is, as the growth parameter increases. To this end, the movement control unit 115 refers to the growth table 123.

[0087] 11, the growth table 123 defines the types of actions that the robot 200 will perform in response to action triggers such as external stimuli, and the probability that each action will be selected in response to a growth parameter (hereinafter referred to as "action selection probability"). The growth table 123 defines the action selection probability so that while the growth parameter is small, the probability that a basic action will be selected is high, and as the growth parameter increases, the probability that a character action will be selected increases. The growth table 123 also defines the action selection probability so that as the growth parameter increases, the types of basic actions that can be selected increase.

[0088] For example, assume that the current personality values ​​of the robot 200 are, as shown in FIG. 10, personality value (cheerful) 3, personality value (active) 8, personality value (shy) 5, and personality value (spoiled) 4, and a loud sound is detected by the microphone 213. In this case, the growth parameter is 8, which is the maximum value of the four personality values, and the action trigger is "a loud noise is heard." Referring to the item in the growth table 123 shown in FIG. 11 where the action trigger is "a loud noise is heard" and the growth parameter is 8, it can be seen that the action selection probabilities are 20% for "basic action 2-0," 20% for "basic action 2-1," 40% for "basic action 2-2," and 20% for "personality action 2-0."

[0089] That is, in this case, the movement control unit 115 selects "basic movement 2-0" with a probability of 20%, "basic movement 2-1" with a probability of 20%, "basic movement 2-2" with a probability of 40%, and "character movement 2-0" with a probability of 20%. After selecting a basic movement or a character movement in this way, the movement control unit 115 refers to the movement content table 124 and the motion table 125, and causes the robot 200 to execute a movement whose content corresponds to the selected basic movement or character movement.

[0090] 12, the action content table 124 is a table that defines specific action content for each action defined in the growth table 123. However, the action content table 124 defines the action content of the personality action separately for each of the four personality values ​​(cheerful, active, shy, and spoiled). When "personality action 2-0" is selected, the action control unit 115 further selects one of four types of personality action according to the four personality values.

[0091] The movement control unit 115 calculates the selection probability of each personality behavior by dividing the personality value corresponding to that personality behavior by the total value of the four personality values. For example, if the personality value (cheerful) is 3, the personality value (active) is 8, the personality value (shy) is 5, and the personality value (spoiled) is 4, the total value is 3+8+5+4=20. In this case, the movement control unit 115 selects the "cheerful" personality behavior with a probability of 3 / 20=15%, the "active" personality behavior with a probability of 8 / 20=40%, the "shy" personality behavior with a probability of 5 / 20=25%, and the "spoiled" personality behavior with a probability of 4 / 20=20%.

[0092] 11, one character action is selected for each action trigger, but as with basic actions, the types of character actions that can be selected may be increased as the character value increases. Also, the growth table 123 may take any form as long as it can be defined as a function (growth function) that returns the action selection probability of each action type with growth parameters as arguments for each action trigger, and does not necessarily have to be tabular data as shown in FIG.

[0093] 13, the motion table 125 is a table that defines how the motion control unit 115 controls the twist motor 221 and the up / down motor 222 for each motion defined in the growth table 123. Specifically, the motion table 125 defines, for each motion, the motion time (milliseconds), the motion angle of the twist motor 221 after the motion time, and the motion angle of the up / down motor 222 after the motion time. Furthermore, the motion table 125 defines, for each motion, the audio data to be output from the speaker 231.

[0094] For example, when basic movement 2-0 is selected, the movement control unit 115 first controls the twist motor 221 and the up-down motor 222 so that their angles become 0 degrees after 100 milliseconds, and then controls the up-down motor 222 so that its angle becomes -24 degrees after another 100 milliseconds. The movement control unit 115 then prevents rotation for 700 milliseconds, and then controls the twist motor 221 so that its angle becomes 34 degrees and the up-down motor 222 so that its angle becomes -24 degrees after another 500 milliseconds. The movement control unit 115 then controls the twist motor 221 so that its angle becomes -34 degrees after another 400 milliseconds, and then controls the twist motor 221 and the up-down motor 222 so that their angles become 0 degrees after another 500 milliseconds, completing basic movement 2-0. In addition, in parallel with driving the twist motor 221 and the up / down motor 222, the operation control unit 115 reproduces a short beep from the speaker 231 based on the audio data of the short beep.

[0095] (II) Second Action The second behavior is a behavior whose content does not change with the pseudo-growth of the robot 200, and is a behavior that depends on the personality of the robot 200. Here, the personality of the robot 200 means a property that is unique to the robot 200 and that is different from other robots of the same type as the robot 200. In other words, the personality of the robot 200 corresponds to "habits" such as the way it moves and sounds, which do not depend on acquired factors such as how the user raises or interacts with it.

[0096] More specifically, among the characteristics that actual living things possess that are different from other living things belonging to the same species, there are some that are due to innate factors such as genetics and do not change due to factors in the growth process after birth. The second movement is a movement that simulates such individuality. The second movement may also be called an individual movement.

[0097] The parameter setting unit 113 sets the second action to be performed by the robot 200 with reference to the personality table 127. As shown in FIG. 14 , the personality table 127 is a table that defines a plurality of candidates that can be performed as the second action by the robot 200. The parameter setting unit 113 selects, from the personality table 127, at least one of a motion by the driving unit 220 and a sound to be output from the speaker 231 as the second action to be performed by the robot 200. In this way, the parameter setting unit 113 sets the personality of the robot 200.

[0098] The parameter setting unit 113 sets the second action using the individuality ID 128. Since the individuality ID 128 is information indicating the individuality of the robot 200, it is desirable that the individuality ID 128 be unique information different from the individuality IDs of other robots. For example, a BLE (Bluetooth Low Energy (registered trademark)) ID can be used as the individuality ID 128. By using the BLE ID, the individuality of the robot 200 can be set substantially randomly.

[0099] The individuality ID 128 is written into the robot 200 by an operator before the robot 200 is first activated by a user (for example, when the robot 200 is manufactured in a factory). The individuality ID 128 is stored, for example, in the ROM of the storage unit 120 so that it cannot be rewritten by a user once it has been set. The parameter setting unit 113 sets, as the second movement, the movement indicated by the individuality ID 128 set in this manner, from among a plurality of movements (motions and voices) defined in the personality table 127.

[0100] The personality ID 128 does not necessarily have to be set when the robot 200 is manufactured in a factory, but may be set at the user's request. For example, when a user trades in a robot 200 that the user already owns for a new robot 200, the personality ID 128 of the original robot 200 may be copied as the personality ID 128 of the new robot 200. This allows the personality of the original robot 200 to be inherited by the new robot 200. In other words, just like the inheritance of personality between parent and child, the new robot 200 can have the same personality as the original robot 200. Furthermore, by setting the personality ID 128 at the user's request, it is possible to obtain a robot 200 with a highly valuable personality, like a pedigree pet, for example.

[0101] When the individuality ID 128 is set in this manner, the movement control unit 115 causes the robot 200 to execute a second movement indicated by the individuality ID 128 in addition to the first movement. For example, if "shake shake after the movement" is set as the second movement, the movement control unit 115 causes the robot 200 to execute the first movement, and then controls the driving unit 220 to perform a motion of shaking the head 204 or the body 206. Alternatively, if "make a mewing sound after the movement" is set as the second movement, the movement control unit 115 causes the robot 200 to execute the first movement, and then outputs a "mewing" sound from the speaker 231.

[0102] Depending on the second action, the action control unit 115 is not limited to executing the second action after the first action, but may execute the second action simultaneously with the first action or before the first action. For example, if "fast motion" is set as the second action, the action control unit 115 quickly performs the motion of the first action when making the robot 200 execute the first action. Alternatively, if "make a high-pitched sound" is set as the second action, the action control unit 115 outputs a high-pitched sound when making the robot 200 execute the first action. Furthermore, if the second action is independent of the first action, the action control unit 115 is not limited to executing the second action at a timing associated with the first action, but may execute the second action at a timing independent of the first action.

[0103] More specifically, the operation control unit 115 causes the robot 200 to perform the first operation while the simulated growth of the robot 200 does not satisfy the predetermined condition. After the simulated growth of the robot 200 satisfies the predetermined condition, the operation control unit 115 causes the robot 200 to perform the first operation and the second operation.

[0104] In other words, the movement control unit 115 causes the robot 200 to perform only the first movement for a while after the pseudo-birth of the robot 200, and does not cause the robot 200 to perform the second movement immediately after the pseudo-birth. Then, the movement control unit 115 causes the robot 200 to perform the second movement after the pseudo-growth of the robot 200 reaches a certain level.

[0105] Even in real living creatures, the individuality of the creature only emerges after the creature has grown to a certain extent. Therefore, by having the robot 200 perform the second action some time after the simulated birth, it is possible to more realistically simulate the way in which the individuality of such a real living creature emerges. Furthermore, since the individuality of the robot 200 is not immediately known after the purchase of the robot 200, it becomes more interesting to grow the robot 200.

[0106] Here, the predetermined condition is satisfied when the number of days of the simulated growth of the robot 200 reaches a predetermined number of days. Specifically, as shown in Fig. 15, until a third period, which is a period of a predetermined number of days, has elapsed since the simulated birth, the movement control unit 115 causes the robot 200 to perform the first movement, but does not cause the robot 200 to perform the second movement. In contrast, in the period after the third period has elapsed since the simulated birth, the movement control unit 115 causes the robot 200 to perform both the first movement and the second movement.

[0107] The predetermined number of days is shorter than the number of days it takes for the robot 200 to complete its simulated growth. In other words, the third period is shorter than the first period, which is the child period. For example, if the first period is 50 days, the third period, which corresponds to the predetermined number of days, is set to 30 days. In this way, by having the robot 200 start to perform the second action before it grows from a child to an adult, it is possible to more realistically simulate how individuality manifests in an actual living creature.

[0108] Next, the flow of the robot control process will be described with reference to Fig. 16. The robot control process shown in Fig. 16 is executed by the control unit 110 of the control device 100 when the user turns on the power of the robot 200. The robot control process is an example of a method for controlling the robot 200.

[0109] When the robot control process is started, the control unit 110 functions as the parameter setting unit 113 and sets the parameter data 121 (step S101). When the robot 200 is started for the first time (when the robot is started for the first time by the user after being shipped from the factory), the control unit 110 sets each of the parameters, namely, the number of days of growth, the emotion parameter, the amount of emotion change, the personality parameter, and the growth parameter, to an initial value (for example, 0). On the other hand, when the robot is started for the second time or later, the control unit 110 reads out the value of each parameter saved in step S109 (described later) of the previous robot control process and sets it as the parameter data 121. However, the emotion parameters may all be initialized to 0 each time the power is turned on.

[0110] After setting the parameter data 121, the control unit 110 determines whether or not there is an external stimulus detected by the sensor unit 210 (step S102). If there is an external stimulus (step S102; YES), the control unit 110 functions as the external stimulus acquisition unit 111 and acquires the external stimulus from the sensor unit 210 (step S103).

[0111] When an external stimulus is acquired, control unit 110 derives an emotion change amount corresponding to the acquired external stimulus (step S104). Control unit 110 then updates the emotion parameter by adding or subtracting the derived emotion change amount to or from the current emotion parameter (step S105).

[0112] After updating the emotion parameters, control section 110 executes action control processing using the external stimulus acquired in step S103 as an action trigger (step S106), and then proceeds to step S108.

[0113] On the other hand, if there is no external stimulus in step S102 (step S102; NO), the control unit 110 determines whether or not to perform a spontaneous movement such as breathing (step S107).While any method for determining whether or not to perform a spontaneous movement may be used, for example, the determination in step S107 is assumed to be YES every first reference time (for example, 5 seconds).

[0114] If a spontaneous movement is to be performed (step S107; YES), control unit 110 proceeds to step S106, where it executes a movement control process using "the passage of the first reference time" as a movement trigger, and then proceeds to step S108.

[0115] Next, the operation control process executed in step S106 will be described with reference to FIG.

[0116] When the action control process starts, control unit 110 sets personality parameters (step S201). Specifically, during the first period, control unit 110 calculates each personality value of the personality parameters from the emotion change amount learned in step S113 according to (Equation 1) above. On the other hand, during the second period, control unit 110 calculates each personality value of the personality parameters from the emotion change amount learned in step S113 and the personality correction value adjusted in step S112 according to (Equation 2) above.

[0117] After setting the personality parameters, control unit 110 sets growth parameters (step S202). Specifically, control unit 110 sets the maximum value among a plurality of personality values ​​included in the personality parameters as the growth parameter.

[0118] After setting the growth parameters, the control unit 110 refers to the growth table 123 and reads out the action selection probability corresponding to the action trigger given when executing the action control process and the growth parameters calculated in step S202 (step S203). Then, the control unit 110 selects a first action using a random number based on the read action selection probability (step S204).

[0119] For example, if the calculated growth parameter is 8 and the action trigger is "a loud noise is made," the control unit 110 will select "basic action 2-0" with a 20% probability, "basic action 2-1" with a 20% probability, "basic action 2-2" with a 40% probability, and "personality action 2-0" with a 20% probability (see Figure 11).

[0120] When the first action is selected, the control unit 110 determines whether or not a character action has been selected as the first action (step S205). If a basic action has been selected as the first action (step S205; NO), the process proceeds to step S208.

[0121] If a character action is selected as the first action (step S205; YES), the control unit 110 calculates the selection probability of each character based on the magnitude of the four character values ​​(step S206). Then, the control unit 110 selects a character action using a random number based on the calculated selection probability of each character (step S207).

[0122] When the basic action or the character action is selected as the first action, the control unit 110 determines whether or not it is within a third period (for example, 30 days after birth) (step S208). If it is within the third period (step S208; YES), the control unit 110 causes the robot 200 to execute the selected first action (step S209). Specifically, the control unit 110 causes the robot 200 to execute the action of the action content defined in the action content table 124 by performing the motion and outputting the sound defined in the motion table 125.

[0123] On the other hand, if it is not during the third period (step S208; NO), the control unit 110 causes the robot 200 to perform the first action as in step S209, and also causes the robot 200 to perform the second action (step S210). Specifically, after a certain number of days of growth of the robot 200 have passed, the control unit 110 causes the robot 200 to perform, in addition to the first action, the second action indicated by the personality ID 128 from among the multiple actions (motions and voices) defined in the personality table 127. In this way, the control unit 110 expresses the personality of the robot 200. With this, the action control process shown in FIG. 17 ends.

[0124] 16, if the robot does not move spontaneously (step S107; NO), the control unit 110 determines whether to end the process (step S108). For example, if the operation unit 240 receives an instruction from the user to turn off the power of the robot 200, the process ends. If the process ends (step S108; YES), the control unit 110 saves the current parameter data 121 in a nonvolatile memory (e.g., a flash memory) of the storage unit 120 (step S109), and ends the robot control process shown in FIG.

[0125] If the process does not end (step S108; NO), the control unit 110 determines whether the date has changed using the clock function (step S110). If the date has not changed (step S110; NO), the process returns to step S102.

[0126] If the date has changed (step S110; YES), the control unit 110 determines whether or not it is within the first period (for example, 50 days from birth) (step S111). If it is within the second period and not the first period (step S111; NO), the control unit 110 adjusts the personality correction value (step S112) and proceeds to step S115.

[0127] If it is during the first period (step S111; YES), control unit 110 learns the emotion variation amounts (step S113). Specifically, control unit 110 changes the values ​​of emotion variation amounts DXP, DXM, DYP, DYM depending on whether the emotion parameters have reached the maximum or minimum values ​​of emotion map 300.

[0128] Once emotion change amount learning has been performed, control unit 110 expands both the maximum and minimum values ​​of emotion map 300 by a predetermined increment (for example, 2) (step S114). Then, control unit 110 adds 1 to the number of days of growth (step S115) and returns to step S102.

[0129] 16, learning of the amount of emotion change and expansion of emotion map 300 are performed after it is determined in step S110 that the date has changed, but they may also be performed after it is determined that a reference time (for example, 9:00 PM) has been reached. Furthermore, the determination in step S110 may not be based on the actual date, but may be based on a value accumulated by a timer function of control unit 110 for the time that robot 200 has been powered on. For example, each time the accumulated time that power has been on becomes a multiple of 24, it may be assumed that robot 200 has grown by one day, and learning of the amount of emotion change and expansion of emotion map 300 may be performed. Furthermore, in consideration of users who tend to leave robot 200 unattended, determination may be made based on the number of times external stimuli are received (for example, one day of growth days elapses every time the number of times the external stimuli are received reaches 100), so that the growth of robot 200 slows down when left unattended.

[0130] As described above, the robot 200 according to this embodiment includes an action control means that causes the robot 200 to execute a first action that depends on the simulated growth of the robot 200 and a second action that is independent of the simulated growth and depends on the personality of the robot 200. In this way, the robot 200 according to this embodiment executes not only the first action that depends on the simulated growth but also the second action that is independent of the simulated growth and depends on the personality, and therefore can simulate not only the growth of a living creature but also the personality due to innate factors such as genetics. As a result, the robot 200 according to this embodiment can more realistically simulate a living creature.

[0131] (Variation) Although the embodiments of the present invention have been described above, the above embodiments are merely examples, and the scope of application of the present invention is not limited to these. In other words, the embodiments of the present invention are applicable to various applications, and all embodiments are included in the scope of the present invention.

[0132] For example, in the above embodiment, the growth parameter is set to the maximum value of the multiple personality values ​​included in the personality parameter. However, the growth parameter is not limited to being based on the personality parameter. For example, the growth parameter may be directly based on the number of days of growth. In addition, the setting of the parameter data 121 by the parameter setting unit 113 is not limited to the method described in the above embodiment, and various methods are possible.

[0133] In the above embodiment, the predetermined condition for executing the second operation is satisfied when the number of days of simulated growth of the robot 200 reaches a predetermined number of days. However, the predetermined condition is not limited to this. For example, the predetermined condition may be satisfied when a growth parameter reaches a predetermined value.

[0134] In the above embodiment, the exterior 201 is formed in a cylindrical shape from the head 204 to the torso 206, and the robot 200 is in a prone position. However, the robot 200 is not limited to being modeled after a prone position creature. For example, the robot 200 may be modeled after a creature with arms and legs, and may be modeled after a creature that walks on four legs or two legs.

[0135] In the above embodiment, the control device 100 is built into the robot 200, but the control device 100 may be a separate device (e.g., a server) rather than built into the robot 200. When the control device 100 is located outside the robot 200, the robot 200 communicates with the control device 100 via a communication unit to send and receive data to and from the control device 100. Through such communication with the robot 200, the external stimulus acquisition unit 111 acquires the external stimulus detected by the sensor unit 210, and the operation control unit 115 controls the drive unit 220 and the output unit 230.

[0136] In the above embodiment, the CPU of the control unit 110 executes a program stored in the ROM, thereby functioning as the external stimulus acquisition unit 111, the parameter setting unit 113, and the operation control unit 115. However, in the present invention, the control unit 110 may include dedicated hardware such as an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or various control circuits instead of a CPU, and the dedicated hardware may function as the external stimulus acquisition unit 111, the parameter setting unit 113, and the operation control unit 115. In this case, the functions of each unit may be realized by individual hardware, or the functions of each unit may be realized together by a single piece of hardware. Alternatively, some of the functions of each unit may be realized by dedicated hardware, and other parts may be realized by software or firmware.

[0137] It is possible to provide a robot that is equipped with a configuration for realizing the functions of the present invention, and also possible to make an existing information processing device or the like function as a robot of the present invention by applying a program. That is, by applying a program for realizing each functional configuration of the robot 200 exemplified in the above embodiment so that it can be executed by a CPU or the like that controls an existing information processing device or the like, it can function as a robot of the present invention.

[0138] Furthermore, the application method of such a program is arbitrary. The program can be applied by storing it on a computer-readable storage medium such as a flexible disk, a CD (Compact Disc)-ROM, a DVD (Digital Versatile Disc)-ROM, or a memory card. Furthermore, the program can be superimposed on a carrier wave and applied via a communication medium such as the Internet. For example, the program can be distributed by posting it on a bulletin board system (BBS) on a communication network. Then, the program can be started and executed under the control of an operating system (OS) in the same way as other application programs, thereby enabling the above-mentioned processing to be performed.

[0139] The above describes preferred embodiments of the present invention, but the present invention is not limited to the above-described embodiments, and various modifications and substitutions can be made to the above-described embodiments without departing from the scope of the claims. [Explanation of symbols]

[0140] 100...control device, 110...control unit, 111...external stimulus acquisition unit, 113...parameter setting unit, 115...motion control unit, 120...storage unit, 121...parameter data, 123...growth table, 124...motion content table, 125...motion table, 127...personality table, 128...personality ID, 200...robot, 201...exterior, 202...decorative part, 203...hair, 204...head, 205...connection unit, 206...torso unit, 207...casing, 210...sensor unit, 211...touch sensor, 212...acceleration sensor, 213...microphone, 214...gyro sensor, 215...illumination sensor, 220...drive unit, 221...twist motor, 222...up and down motor, 230...output unit, 231... Speaker, 240...Operation unit, 300...Emotion map, 301-303...Frame, 400...Personality value radar chart, BL...Bus line

Claims

1. An autonomously operating robot, an action control means for causing the robot to execute a first action that depends on the simulated growth of the robot and a second action that is independent of the simulated growth and depends on the individuality of the robot; the action control means causes the robot to perform the first action while the pseudo-growth does not satisfy a predetermined condition, and causes the robot to perform the first action and the second action after the pseudo-growth satisfies the predetermined condition; the predetermined condition is satisfied when the number of days of the simulated growth reaches a predetermined number of days; The predetermined number of days is less than the number of days it takes for the pseudo-growth to be completed. A robot characterized by:

2. The motion control means causes the robot to execute, as the first motion, a motion selected from a personality motion that depends on the pseudo-personality of the robot and a basic motion that does not depend on the pseudo-personality.

2. The robot according to claim 1 .

3. A parameter setting means for setting a growth parameter representing the degree of pseudo-growth of the robot, the action control means causes the robot to execute, as the first action, an action selected from the character action and the basic action with a probability according to the growth parameter set by the parameter setting means; 3. The robot according to claim 2.

4. The parameter setting means sets a personality parameter representing the pseudo personality, and sets the growth parameter based on the personality parameter.

4. The robot according to claim 3.

5. The personality parameters include a plurality of personality values ​​each representing a different degree of personality, the parameter setting means sets the growth parameter to a maximum value among the plurality of personality values; 5. The robot according to claim 4.

6. An external stimulus acquisition means for acquiring an external stimulus, the parameter setting means changes the personality parameters in response to the external stimulus acquired by the external stimulus acquisition means; 5. The robot according to claim 4.

7. A method for controlling an autonomously operating robot, comprising: a motion control process for causing the robot to execute a first motion that depends on the simulated growth of the robot and a second motion that is independent of the simulated growth and depends on the individuality of the robot; the action control process causes the robot to execute the first action while the pseudo-growth does not satisfy a predetermined condition, and causes the robot to execute the first action and the second action after the pseudo-growth satisfies the predetermined condition; the predetermined condition is satisfied when the number of days of the simulated growth reaches a predetermined number of days; The predetermined number of days is less than the number of days it takes for the pseudo-growth to be completed. A robot control method comprising:

8. A computer for an autonomously operating robot, functioning as an action control means for causing the robot to execute a first action that depends on the simulated growth of the robot and a second action that is independent of the simulated growth and depends on the individuality of the robot; the action control means causes the robot to perform the first action while the pseudo-growth does not satisfy a predetermined condition, and causes the robot to perform the first action and the second action after the pseudo-growth satisfies the predetermined condition; the predetermined condition is satisfied when the number of days of the simulated growth reaches a predetermined number of days; The predetermined number of days is less than the number of days it takes for the pseudo-growth to be completed. A program characterized by:

Citation Information

Patent Citations

  • Robot

    JP2003285286A

  • Instrument control device, instrument control method, and program

    JP2022142107A

  • Equipment control device, equipment control method, and program

    JP2022142108A

  • Robots with autonomous behavior

    US20080058988A1

  • Robot and voice generation program

    WO2020045658A1