WO2022130714A1 - 推奨負荷決定装置、能力パラメータ推定モデル学習装置、方法、及びプログラム - Google Patents

推奨負荷決定装置、能力パラメータ推定モデル学習装置、方法、及びプログラム Download PDF

Info

Publication number
WO2022130714A1
WO2022130714A1 PCT/JP2021/033879 JP2021033879W WO2022130714A1 WO 2022130714 A1 WO2022130714 A1 WO 2022130714A1 JP 2021033879 W JP2021033879 W JP 2021033879W WO 2022130714 A1 WO2022130714 A1 WO 2022130714A1
Authority
WO
WIPO (PCT)
Prior art keywords
load
data
recommended
user
target user
Prior art date
Application number
PCT/JP2021/033879
Other languages
English (en)
French (fr)
Inventor
崇紀 栗栖
哲志 八瀬
雅宗 中山
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Priority to EP21906079.5A priority Critical patent/EP4265305A1/en
Priority to CN202180081640.8A priority patent/CN116547044A/zh
Priority to US18/265,053 priority patent/US20240017409A1/en
Publication of WO2022130714A1 publication Critical patent/WO2022130714A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0062Monitoring athletic performances, e.g. for determining the work of a user on an exercise apparatus, the completed jogging or cycling distance
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0075Means for generating exercise programs or schemes, e.g. computerized virtual trainer, e.g. using expert databases
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2102/00Application of clubs, bats, rackets or the like to the sporting activity ; particular sports involving the use of balls and clubs, bats, rackets, or the like
    • A63B2102/16Table tennis
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/30Speed
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/80Special sensors, transducers or devices therefor
    • A63B2220/806Video cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training

Definitions

  • This disclosure relates to a recommended load determination device, a capacity parameter estimation model learning device, a recommended load determination method, and a recommended load determination program.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2018-55611.
  • the control device described in Patent Document 1 has a storage unit for storing biometric information according to the skill level of each work skill level. Further, this control device acquires the biological information measured from the operator, and compares the feature amount of the biological information acquired at the time of work with the feature amount of the biological information for each skill level of the storage unit. Then, based on the result of the comparison, this control device determines which skill level the acquired biometric information corresponds to, and determines the control amount of the drive unit based on the determined skill level.
  • Patent Document 2 Japanese Patent Application Laid-Open No. 2019-107235
  • the device described in Patent Document 2 includes a reception unit, an acquisition unit, a calculation unit, and an output control unit.
  • the reception unit accepts inputs of the first index value of brain activity measured by fMRI, the first achievement rate of the rehabilitation task, and the first difficulty level of the rehabilitation task for the subject to be rehabilitation.
  • the acquisition unit acquires the correlation between the second index value of brain activity measured by fMRI, the second achievement rate of the rehabilitation task, and the second difficulty level of the rehabilitation task for a plurality of persons who have undergone rehabilitation. ..
  • the calculation unit calculates the third difficulty level of the rehabilitation performed by the target person based on the input and the correlation, and the output control unit outputs the third difficulty level.
  • Patent Document 3 Special Feature
  • Kaihei 11-235401 The apparatus described in Patent Document 3 increases the load intensity of exercise in steps from P1 to P2, and the increase in load causes the rotation speed of the rotating machine due to the exercise to decrease by ⁇ R from R1. Further, in this device, the time 1 / of which the rotation speed returns by 1/2 of ⁇ R in response to the subject's subsequent exercise to increase the rotation speed in an attempt to return to the original rotation speed R1. 2tf is obtained, and athletic ability is evaluated by this time 1 / 2tf.
  • Patent Document 2 appropriately adjusts the difficulty level of the rehabilitation task according to the patient.
  • Patent Document 3 is for evaluating athletic ability. Therefore, as described above, there is a problem that any of the techniques cannot be applied when an appropriate load is applied so as to improve the skill of the user for a certain exercise task.
  • the present disclosure has been made in view of the above points, and an object thereof is to determine a load that is beneficial for improving the skill of the user when the load is applied to the user to carry out an exercise task.
  • the disclosed recommended load determining device is based on load data representing a load applied to a user and operation data representing the operation of one operation unit of the user under the load. It is a recommended load determination device that uses an estimation model that outputs parameters related to the user's ability, and is a load data representing the load applied to the target user who is the target of determining the recommended load, and the load.
  • the estimation model is output by inputting the acquisition unit that acquires the operation data representing the operation of one operation unit of the target user under the above, and the acquired load data and the operation data into the estimation model. It is configured to include a determination unit for determining recommended load data representing the recommended load for the target user based on the parameters relating to the ability of the target user.
  • the disclosed recommended load determination device is the user's ability calculated based on the load data representing the load given to the user and the operation data representing the operation of one operation unit of the user under the load. It is a recommended load determination device that uses an estimation model that outputs parameters related to, and the load data that represents the load given to the target user who is the target user for determining the recommended load, and the target usage under the load. Based on the parameters related to the ability of the target user, which is output by the estimation model by acquiring the operation data representing the operation of one operation unit of the person and inputting the acquired load data and the operation data to the estimation model. Therefore, the recommended load data representing the recommended load for the target user is determined.
  • the motion data includes displacement data of a specific part of the user or a device held by the user when performing the motion, muscle activity data of the user, or displacement data or muscle activity. It may be differential data or integrated data of data. Further, the displacement data of the specific portion of the user may be time-series data of the skeleton information of the user.
  • the parameter related to the capacity output by the estimation model imposes a burden on the user within the range of the load value for one load item in which the success probability for the operation becomes larger than a predetermined standard. It may be the limit load data representing the largest value of the load, and the determination unit may determine the limit load data for the target user as the recommended load data.
  • the parameter related to the capability output by the estimation model may be a parameter representing the relationship between the load and the magnitude of the probability of success for the operation, and the determination unit relates to the capability for the target user.
  • the recommended load data may be determined based on the parameters.
  • the parameter showing the relationship between the load for the target user and the magnitude of the expected success for the operation is a graph showing the relationship between the value of the load for one load item and the magnitude of the expected success. It may be a parameter to be specified, and the determination unit determines the value of the load that places the greatest burden on the target user within the range of the value of the load in which the probability of success is larger than a predetermined reference in the graph.
  • the limit load data to be represented may be determined as the recommended load data.
  • the parameter showing the relationship between the load for the target user and the magnitude of the expected success for the operation is a heat map showing the relationship between the value of the load for a plurality of load items and the magnitude of the expected success.
  • the determination unit may determine a set of load values whose success probability is larger than a predetermined reference in the heat map as the recommended load data.
  • the determination unit may output data for visualizing and displaying the heat map.
  • the determination unit may be able to use a comparative heat map, which is a range of the set of load values for which the target user has a greater chance of success in comparison with the comparative heat map.
  • a relative strength map that specifies the strength range or a relative weakness map that specifies the relative weakness range that is the range of the set of the load values for which the success probability of the target user is smaller is created, and the relative strength range is created.
  • a set of load values within the relative weakness range may be determined as the recommended load data.
  • the comparative heat map may be prepared for each level of the user, and the determination unit is at a level equal to or higher than the level of the target user and is said to be above the level of the target user.
  • the comparative heat map for the user at the level closest to the level of the target user may be used.
  • the acquisition unit may further acquire the designation of strengths or weaknesses for the target user, and the determination unit creates the relative strength map when the designation of the strength is acquired, and the said.
  • the relative weakness map may be created.
  • the determination unit may output data for visualizing and displaying at least one of the relative strength map and the relative weakness map.
  • the estimation model may be prepared for each type of the operation, the acquisition unit may acquire the designation of any of the types from the target user, and the determination unit is designated.
  • the recommended load data may be determined using the estimation model corresponding to the type.
  • the acquisition unit may acquire a plurality of sets of the load data and the operation data, and the determination unit averages the load data obtained by averaging the plurality of load data and the operation data obtained by averaging the plurality of operation data.
  • Operational data may be input to the estimation model.
  • the acquisition unit may acquire a plurality of sets of the load data and the operation data, and the determination unit obtains each of the load data and the operation data set by inputting them into the estimation model.
  • the parameters relating to the capacity obtained may be averaged and the recommended load data may be determined based on the averaged parameters.
  • the acquisition unit may acquire a plurality of sets of the load data and the operation data, and the determination unit obtains each of the load data and the operation data set by inputting them into the estimation model.
  • a plurality of recommended load data may be calculated based on the parameters related to the respective capacity, and the plurality of recommended load data may be averaged to determine the final recommended load data.
  • the acquisition unit may acquire actual measurement parameters relating to the load data, the set of the operation data, and the actual operation result corresponding thereto, and the determination unit may acquire the measurement parameter evaluated by the acquired measurement parameters.
  • the user's ability is lower than the target user's ability evaluated by the parameter which is the output of the estimation model, the recommended load data is determined so that the burden on the target user is smaller. It's okay.
  • the determination unit may output the recommended load data to the load applying device in order to control the load applying device that applies the load to the target user. Further, the determination unit may output data for displaying the latest recommended load data at predetermined time intervals.
  • the disclosed recommended load determining device is estimated by learning the correspondence between the load data and the operation data and the parameters related to the user's ability calculated based on the load data and the operation data. It may be configured to include a learning unit that generates a model.
  • the learning unit may generate the estimation model using the operation data compressed so that the difference between the number of dimensions of the load data and the number of dimensions of the operation data is within a predetermined range.
  • the disclosed ability parameter estimation model learning device includes load data indicating a load applied to a user, operation data indicating an operation of one operation unit of the user under the load, and performance data associated with the operation.
  • load data indicating a load applied to a user
  • operation data indicating an operation of one operation unit of the user under the load
  • performance data associated with the operation.
  • the recommended load determination method of the disclosure is calculated based on the load data representing the load given to the user and the operation data representing the operation of one operation unit of the user under the load.
  • An estimation model that outputs parameters related to the user's ability is prepared, load data representing the load given to the target user whose recommended load is determined by the acquisition unit, and the load data of the target user under the load.
  • the ability of the target user to be output by the estimation model by acquiring the operation data representing the operation of one operation unit and inputting the acquired load data and the operation data to the estimation model. It is a method of determining recommended load data representing the recommended load for the target user based on the parameters related to.
  • the disclosed recommended load determination program is calculated based on load data representing the load applied to the user of the computer and operation data representing the operation of one operation unit of the user under the load.
  • This is a program for functioning as a determination unit for determining recommended load data representing the recommended load for the target user based on the parameters related to the ability of the target user output by the estimation model.
  • a load useful for improving the skill of the user is determined. Can be done.
  • a recommended load determining device for determining the load given to the user when the user performs an operation according to a predetermined exercise task with respect to the load given by the machine.
  • Exercise tasks include, for example, improving the return rate in table tennis rallies, improving the hit rate in baseball batting, and improving walking in rehabilitation.
  • the load applying device which is a machine that applies a load to the user, a table tennis robot, a batting machine, a treadmill, or the like that returns or sends a hit ball of table tennis is assumed.
  • the expressions "input to the model” and “output by the model” are computers and the like on which the model is implemented. It refers to input to the functional means (model execution unit) and output by the same means.
  • the case where the entity of the estimation model is the data defining the processing content is, for example, the case where the entity of the estimation model is the structural data and the coupling weight data defining the neural network.
  • FIG. 1 shows a block diagram showing a functional configuration of the recommended load determination device 10 according to the first embodiment.
  • the recommended load determination device 10 includes an acquisition unit 12, a learning data DB (database) 14, a learning unit 16, an estimation model 18, and a determination unit 20.
  • the recommended load determining device 10 operates in two modes, a learning mode for learning the estimation model 18 and a practice mode for determining the recommended load using the learned estimation model 18.
  • the acquisition unit 12 acquires load data representing the load given to the sample user in the learning mode.
  • the sample user is a user who performs an exercise task for collecting learning data for learning the estimation model 18.
  • the load data is, for example, when the load applying device is a table tennis robot or a pitching machine, the ball speed, rotation, direction, and the like of a hitting ball or a pitching ball sent from the load applying device. Further, the load data is, for example, the speed of the traveling belt, the inclination angle, and the like when the load applying device is a treadmill.
  • the acquisition unit 12 can acquire load data by, for example, acquiring control information regarding a load such as motor torque from a load applying device, or measuring a load actually given to a sample user. ..
  • the acquisition unit 12 may acquire the load data of one of a plurality of items according to the items to be changed when the load is applied, that is, the items to be determined as the recommended load, or the load data of a plurality of items may be acquired. You may get it.
  • the acquisition unit 12 acquires operation data representing the operation of one operation unit of the sample user under a load in the learning mode.
  • one motion unit is an motion indicating one swing, and in the case of walking training, it is a walking motion for a predetermined number of steps (for example, one step or two steps).
  • the motion data is, for example, displacement data of a specific part of the device held by the sample user or the sample user when performing the motion, muscle activity data of the sample user, or differential data or integral data thereof.
  • the acquisition unit 12 can acquire operation data by analyzing an image taken by a camera of a sample user who performs an operation and processing the output value from a myoelectric potential sensor attached to the sample user. can.
  • the acquisition unit 12 acquires the grade data accompanying the operation of the sample user under the load in the learning mode.
  • the performance data is the return rate in the case of a table tennis exercise task, the hit rate in the case of a baseball batting exercise task, and the like.
  • the acquisition unit 12 can acquire these performance data by, for example, image analysis of an image taken by a camera or data processing of output values from various sensors. Further, the acquisition unit 12 may acquire the grade data manually input in the learning mode.
  • the acquisition unit 12 stores the load data, operation data, and performance data for each sample user acquired in the learning mode in the learning data DB 14 as shown in FIG. 2, for example.
  • "user No.” is an identification number that can individually identify a sample user.
  • the "trial No.” is a number indicating, for each sample user, a trial involving an operation of one operation unit as one trial, and each data is the data in the number of trials.
  • the example of FIG. 2 shows an example in which load data, operation data, and performance data for 100 trials are stored for each sample user.
  • the "capacity parameter" in FIG. 2 will be described later.
  • the acquisition unit 12 has load data representing the load applied to the target user who is the target of determining the recommended load, and operation data representing the operation of one operation unit of the target user under the load. And get.
  • the details of the load data and the operation data are the same as the load data and the operation data acquired in the above learning mode.
  • user When explaining the sample user and the target user without distinction, it is simply referred to as "user".
  • the learning unit 16 is a functional unit that functions in the learning mode.
  • the learning unit 16 calculates a parameter (hereinafter, referred to as “ability parameter”) relating to the ability of each sample user for the exercise task based on the load data and the performance data stored in the learning data DB 14.
  • the capacity parameter is, for example, the value of the load that is the most burdensome to the sample user in the range of the load values for one load item in which the success probability indicated by the performance data for the operation is larger than the predetermined standard. It can be the limit load data to be represented. Further, the capacity parameter may be a parameter representing the relationship between the load and the magnitude of the probability of success for the operation.
  • this parameter can be a parameter for specifying a graph showing the relationship between the load value for one load item and the magnitude of the expected success.
  • this parameter can be a parameter that specifies a heat map that represents the relationship between the load value for a plurality of load items and the magnitude of the expected success.
  • the "probability of success” is a parameter indicating the magnitude of the possibility of success, and corresponds to, for example, a predicted success rate and a predicted performance value.
  • the result value there is a large error in the landing position in the embodiment for table tennis described later. In the case of landing position error, the smaller the predicted error, the greater the chance of success.
  • the "burden" for the user is the difficulty for the user, and the heavier the burden, the smaller the probability of success.
  • the larger the ball speed (load) of the ball thrown from the table tennis robot the larger the burden and the smaller the probability of success.
  • the learning unit 16 stores the ability parameters calculated for each sample user in the "ability parameters" column of the learning data DB 14. Each set of the load data and the operation data stored in the training data DB 14 and the ability parameter becomes each training data for learning the estimation model 18. By learning the correspondence between the load data and the operation data and the ability parameter, the learning unit 16 receives the input of the load data and the operation data for the target user who is the target of determining the recommended load by the target user. An estimation model 18 that estimates and outputs capability parameters is generated.
  • the estimation model 18 is composed of, for example, a neural network or the like.
  • the determination unit 20 is a functional unit that functions in the practice mode.
  • the determination unit 20 inputs the load data and the operation data for the target user acquired by the acquisition unit 12 into the estimation model 18. Then, the determination unit 20 determines the recommended load data representing the recommended load for the target user based on the capacity parameter of the target user output by the estimation model 18. As described above, when the limit load data is output from the estimation model 18 as the capacity parameter, the determination unit 20 determines the limit load data as the recommended load data. Further, as described above, when a parameter indicating the relationship between the load and the magnitude of the expected success of the operation is output as the capacity parameter, the determination unit 20 determines the recommended load data based on the capacity parameter.
  • the determination unit 20 represents a limit load that represents the value of the load that places the greatest burden on the target user within the range of the load values whose success probability is larger than a predetermined standard.
  • the data can be determined as recommended load data.
  • the determination unit 20 can determine a set of load values whose success probability is larger than a predetermined reference as recommended load data in the heat map specified by the capacity parameter.
  • the determination unit 20 outputs the determined recommended load data.
  • the output recommended load data may be used as control information for controlling the load applying device, or may be presented to the target user and the instructor of the target user by displaying it on the display device.
  • FIG. 3 shows a block diagram showing the hardware configuration of the recommended load determination device 10 according to the first embodiment.
  • the recommended load determination device 10 includes a CPU (Central Processing Unit) 32, a memory 34, a storage device 36, an input device 38, an output device 40, a storage medium reading device 42, and a communication I / F (Interface). ) 44.
  • Each configuration is communicably connected to each other via a bus 46.
  • the storage device 36 stores a recommended load determination program for executing each of the learning mode processing and the practice mode processing described later.
  • the CPU 32 is a central arithmetic processing unit, which executes various programs and controls each configuration. That is, the CPU 32 reads the program from the storage device 36 and executes the program using the memory 34 as a work area. The CPU 32 controls each of the above configurations and performs various arithmetic processes according to the program stored in the storage device 36.
  • the memory 34 is composed of a RAM (Random Access Memory), and temporarily stores programs and data as a work area.
  • the storage device 36 is composed of a ROM (Read Only Memory), an HDD (Hard Disk Drive), an SSD (Solid State Drive), and the like, and stores various programs including an operating system and various data.
  • the input device 38 is a device for performing various inputs such as a keyboard and a mouse.
  • the output device 40 is a device for outputting various information such as a display and a printer. By adopting a touch panel display as the output device 40, it may function as an input device 38.
  • the storage medium reading device 42 reads data stored in various storage media such as a CD (Compact Disc) -ROM, a DVD (Digital Versaille Disc) -ROM, a Blu-ray disc, and a USB (Universal Serial Bus) memory, and is a storage medium. Write data to the USB.
  • the communication I / F44 is an interface for communicating with other devices, and for example, standards such as Ethernet (registered trademark), FDDI, and Wi-Fi (registered trademark) are used.
  • FIG. 4 is a flowchart showing the flow of learning mode processing executed by the CPU 32 of the recommended load determination device 10.
  • the CPU 32 reads the recommended load determination program from the storage device 36, expands it into the memory 34, and executes the program, whereby the CPU 32 functions as each functional configuration of the recommended load determination device 10.
  • FIG. The learning mode processing shown in is executed.
  • step S10 the acquisition unit 12 acquires load data, operation data, and grade data for each trial for each of the plurality of sample users and stores them in the learning data DB 14.
  • step S12 the learning unit 16 calculates the ability parameter from the load data and the grade data for each sample user based on the data stored in the learning data DB 14, and stores it in the learning data DB 14.
  • step S14 the learning unit 16 learns the correspondence between the load data and the operation data and the ability parameter, so that the target user can input the load data and the operation data for the target user. Generate an estimation model 18 that outputs capability parameters.
  • the learning unit 16 stores the generated estimation model 18 in a predetermined storage area of the recommended load determination device 10, and the learning mode processing ends.
  • FIG. 5 is a flowchart showing the flow of practice mode processing executed by the CPU 32 of the recommended load determination device 10.
  • the CPU 32 reads the recommended load determination program from the storage device 36, expands it into the memory 34, and executes the program, whereby the CPU 32 functions as each functional configuration of the recommended load determination device 10.
  • FIG. The practice mode processing shown in is executed.
  • the practice mode processing is an example of the disclosed recommended load determination method.
  • step S20 the acquisition unit 12 acquires the load data and operation data at the time of this trial for the target user.
  • step S22 the determination unit 20 inputs the load data and the operation data for the target user acquired by the acquisition unit 12 into the estimation model 18, and estimates the ability parameters of the target user.
  • step S24 the determination unit 20 determines recommended load data representing the recommended load for the next trial of the target user based on the ability parameter of the target user estimated and output by the estimation model 18. And output, and the practice mode processing ends.
  • the recommended load is repeatedly determined, so that the target user can continuously perform the exercise task.
  • the recommended load determining device has load data representing the load given to the target user and operation data representing the operation of one operation unit of the target user under the load. And get.
  • the recommended load determination device inputs the acquired load data and operation data into an estimation model that estimates and outputs the user's ability parameters with respect to the input of load data and operation data. Estimate one's ability parameters.
  • the recommended load determination device determines the recommended load data representing the recommended load for the target user based on the estimated capacity parameter of the target user. Thereby, when the load is applied to the user to carry out the exercise task, the load useful for improving the skill of the user can be determined.
  • the first embodiment may be modified as follows.
  • the recommended load determining device 10 according to the first embodiment includes a learning mode and a practice mode, but may be a recommended load determining device 10 having only a practice mode and not a learning mode.
  • the recommended load determination device 10 does not include the learning data DB 14 and the learning unit 16 necessary for learning.
  • the acquisition unit 12 does not acquire the load data, the operation data, and the performance data of the sample user.
  • the recommended load determination device 10 may not have a built-in learning unit 16 and may use a learning function provided outside such as a server on the network by communication. Further, the learning data DB 14 may not be built in, and the data to be recorded may be transmitted to the learning data DB provided externally.
  • the recommended load determination device 10 may acquire the trained estimation model 18 from the outside and use it. Further, a trained estimation model provided externally may be used by communication.
  • FIG. 6 shows a block diagram showing a functional configuration of the recommended load determination device 210 according to the second embodiment. As shown in FIG. 6, the recommended load determining device 210 is connected to each of the table tennis robot 60, the sensor 70, and the sensor 72.
  • FIG. 7 shows an external view of the table tennis robot 60.
  • the table tennis robot 60 is a robot in which a table tennis ball BL hit by a user (not shown) bounces on the table tennis table TB and hits back with a racket RK as a striking tool. Since the present embodiment focuses on the load given to the user, that is, the point of sending or returning the ball BL with a specific load, the function of recognizing the returned ball from the user is described in detail. Explanation is omitted.
  • the table tennis robot 60 includes a movable portion 62 for supporting and moving the racket RK.
  • the movable portion 62 includes three robot arms 64A, 64B, 64C, and a support portion 66 of the racket RK. That is, the movable portion 62 is a so-called parallel link robot, and the behavior of the racket RK supported by the support portion 66 at the tip of the robot arms 64A, 64B, 64C by controlling the robot arms 64A, 64B, 64C in parallel. It is a robot that controls.
  • the support portion 66 includes a drive mechanism for changing the posture of the racket RK.
  • the movable portion 62 is not limited to the parallel link robot, and may be another type of robot.
  • the table tennis robot 60 controls the drive mechanism so that the ball BL is returned at the hitting speed specified as the control information by a control unit (not shown). "Striking speed" is an example of load data.
  • cameras 74A, 74B, and 74C are installed in the table tennis robot 60.
  • the cameras 74A and 74B are installed at positions where the user can shoot from different angles, and shoot at a predetermined frame rate.
  • the cameras 74A and 74B function as so-called stereo cameras.
  • the sensor 70 includes cameras 74A and 74B and an image analysis unit (not shown).
  • the sensor 70 outputs the skeleton information of the user by analyzing the images taken by the cameras 74A and 74B for each frame.
  • the skeletal information is time-series data of three-dimensional positions (X, Y, Z) of each joint (joint 1 to joint n) of the user.
  • the joints included in the skeletal information may be limited to the joints necessary for specifying the swing motion, for example, the shoulder, elbow, and wrist of the dominant arm. Further, the joint is not limited to the user, and a three-dimensional position at the center of the surface of the racket RK held by the user may be included. "Skeletal information" is an example of operation data.
  • the camera 74C is installed at a position where the surface of the table tennis table TB can be photographed.
  • the sensor 72 includes a camera 74C and an image analysis unit (not shown).
  • the sensor 72 detects the landing position of the returned ball by the user with respect to the table tennis table TB by analyzing the image taken by the camera 74C, and hits the preset position (for example, the center of the table tennis table TB).
  • the error from the position hereinafter referred to as "return ball error” is calculated and output.
  • Return error is an example of performance data.
  • the recommended load determination device 210 functionally includes an acquisition unit 212, a learning data DB 214, a learning unit 216, an estimation model 218, and a determination unit 220.
  • the acquisition unit 212 acquires from the table tennis robot 60 the hitting speed of the hit ball sent (returned) from the table tennis robot 60 as load data indicating the load given to the sample user.
  • the acquisition unit 212 can acquire the hitting speed from the control information set for controlling the drive mechanism of the table tennis robot 60 or the analysis result of the images taken by the cameras 74A and 74B.
  • the acquisition unit 212 may measure the speed of the hit ball sent from the table tennis robot 60 by a sensor (not shown) and acquire the hitting speed indicated by the measured value output from the sensor.
  • the acquisition unit 212 acquires the skeleton information of the sample user output by the sensor 70 as the operation data of the sample user in the learning mode. Further, in the learning mode, the acquisition unit 212 acquires the return ball error output by the sensor 72 as the performance data accompanying the operation of the sample user.
  • the acquisition unit 212 stores the acquired hitting speed, skeleton information, and return ball error in the learning data DB 214.
  • FIG. 8 shows an example of the learning data DB 214.
  • the items stored in the learning data DB 214 are the same as in the case of the learning data DB 14 in the first embodiment.
  • the acquisition unit 212 obtains the hitting speed, which is load data representing the load applied to the target user, and the skeleton information, which is the motion data representing the swing motion of the return ball of the target user with respect to the hitting ball. get.
  • the details of the method of acquiring the hitting speed and the skeleton information are the same as those in the above learning mode.
  • the acquisition unit 212 may acquire the hitting speed indicated by the recommended load determined by the determination unit 220, which will be described later, as the hitting speed for the target user.
  • the learning unit 216 calculates the maximum ball speed that can be returned as an example of the limit load data as a capability parameter of each sample user. Specifically, the learning unit 216 calculates the ball return rate by the sample user for each hitting speed from the learning data for each sample user stored in the learning data DB 214. More specifically, the learning unit 216 succeeds in the case where the return ball error is a predetermined value (for example, 75 cm) or less, and succeeds in returning the ball for the total number of trials of the hitting speed v ⁇ ⁇ [m / sec]. The ratio of the number of trials is calculated as the return rate at the hitting speed v. For example, user No.
  • the learning unit 216 is set to the user No. For one sample user, the return rate at a hitting speed of 3 m / sec is calculated as 50%. The learning unit 216 similarly calculates the return rate for each hitting speed. Then, the learning unit 216 creates a graph showing the relationship between the hitting speed and the return rate as shown in FIG. 9, and from this graph, the return rate is a predetermined value (for example, 85%) or less and is the maximum. The hitting speed is calculated as the maximum ball speed that can be returned. The learning unit 216 stores the maximum returnable ball speed obtained for each sample user in the learning data DB 214 as shown in FIG.
  • the learning unit 216 learns the correspondence between the hitting speed and skeleton information of the sample user and the ability parameter. As a result, an estimation model 218 is generated that estimates and outputs the maximum ball speed that can be returned, which is a capability parameter of the target user, in response to the input of the hitting speed and the skeleton information for the target user.
  • the determination unit 220 inputs the hitting speed and the skeleton information of the target user acquired by the acquisition unit 212 into the estimation model 218. Then, the determination unit 220 determines the maximum returnable ball speed output by the estimation model 218 as recommended load data for the target user, and outputs it to the table tennis robot 60. As a result, in the table tennis robot 60, the recommended load data is set as control information, and at the next trial, the table tennis robot 60 is controlled to send (return) the hit ball at the hitting speed indicated by the recommended load data.
  • the storage device 36 stores a recommended load determination program for executing the recommended load determination process described later.
  • FIG. 10 is a flowchart showing the flow of the recommended load determination process executed by the CPU 32 of the recommended load determination device 210.
  • the CPU 32 reads the recommended load determination program from the storage device 36, expands it into the memory 34, and executes it, the CPU 32 functions as each functional configuration of the recommended load determination device 210, and the recommended load determination process shown in FIG. 10 is executed. Will be done.
  • the recommended load determination process is an example of the disclosed recommended load determination method.
  • step S200 the acquisition unit 212 determines whether or not the selected mode is the learning mode. If the learning mode is selected, the process proceeds to step S202, and if the practice mode is selected, the process proceeds to step S214.
  • step S202 the acquisition unit 212 instructs the table tennis robot 60 to send (return) the hit ball.
  • Control information is set in the table tennis robot 60 so that the hitting speed of the hitting ball sent out in this step is the hitting speed gradually changed from the initial value for each step for the same sample user. Just leave it.
  • step S204 the acquisition unit 212 acquires the hitting speed of the hit ball sent by the instruction in step S202, the skeleton information indicating the swing of the sample user at the time of returning the hit ball, and the return ball error, and the learning data.
  • the acquisition unit 212 acquires the hitting speed of the hit ball sent by the instruction in step S202, the skeleton information indicating the swing of the sample user at the time of returning the hit ball, and the return ball error, and the learning data.
  • DB 214 Store in DB 214.
  • step S206 the acquisition unit 212 determines whether or not the number of trials for the corresponding sample user has reached a predetermined number of times (for example, 100 times) or more.
  • the predetermined number of times may be set in advance as the number of times required as the number of learning data for each sample user. If the number of trials is the predetermined number or more, the process proceeds to step S208, and if the number of trials is less than the predetermined number, the process returns to step S202.
  • step S208 the learning unit 216 calculates the return rate for each hitting speed from the learning data of the corresponding sample user stored in the learning data DB 214. Then, the learning unit 216 obtains the hitting speed at which the hitting rate is a predetermined value (for example, 85%) or less from the graph showing the relationship between the hitting speed and the return rate as the maximum returnable ball speed, and stores it in the learning data DB 214. do.
  • a predetermined value for example, 85%
  • step S210 the learning unit 216 determines whether or not the learning data for the number of sample users that can generate the estimation model 218 is stored in the learning data DB 214. If the estimation model 218 can be generated, the process proceeds to step S212, and if sufficient training data is not stored for the generation of the estimation model 218, the recommended load determination process ends.
  • step S212 the learning unit 216 generates an estimation model 218 by learning the correspondence between the hitting speed and skeleton information for the sample user and the ability parameter, and the recommended load determination process ends.
  • the determination unit 220 determines whether or not the estimation model 218 has been generated. If the estimation model 218 has been generated, the process proceeds to step S216, and if it has not been generated, the process proceeds to step S202.
  • step S216 the acquisition unit 212 instructs the table tennis robot 60 to set the hitting speed to the initial value and start sending the hitting ball.
  • step S218 the acquisition unit 212 acquires the hitting speed of the hit ball sent from the table tennis robot 60 according to the instruction in step S216, and the skeleton information indicating the swing of the target user at the time of returning the hit ball. ..
  • step S220 the determination unit 220 inputs the hitting speed and the skeleton information of the target user acquired by the acquisition unit 212 into the estimation model 218, and estimates the maximum ball speed that the target user can return.
  • step S222 the determination unit 220 determines the maximum returnable ball speed estimated in step S220 as recommended load data for the target user, and the maximum returnable ball indicated by the recommended load data to the table tennis robot 60. Instruct to return the ball at ball speed.
  • step S224 the determination unit 220 determines whether or not to finish the exercise task. For example, if there is no return ball from the target user, or if a command indicating the end of the exercise task is input, it is determined that the exercise task is finished, and the recommended load determination process ends. On the other hand, if the exercise task is not completed, the process returns to step S218, the hitting speed of the hit ball sent (returned) from the table tennis robot 60 according to the instruction in step S222, and the swing of the target user at the time of returning the hit ball. The process of acquiring the skeleton information indicating the above is repeated.
  • the hit ball in the exercise task of improving the return ball rate using the table tennis robot, the hit ball is delivered as fast as possible within the range where the target user can return the ball. It can give a beneficial load to the skill improvement of the target user.
  • the present invention is not limited to this.
  • the exercise task of improving the hit rate using a batting machine and the exercise task of walking improvement in rehabilitation using a treadmill, as exemplified in the first embodiment, are also embodied in the same manner as in the second embodiment. It is feasible as.
  • FIG. 11 shows an example of learning data DB 214A in the case of an exercise task for improving the hit rate using a batting machine.
  • the load data the pitching speed of the ball sent from the batting machine is acquired.
  • the motion data skeleton information indicating the swing of the user at the time of batting for the pitch is acquired.
  • the result data the result of batting (hits or hits) is acquired.
  • the pitching speed at which the hit rate is a predetermined value (for example, 85%) or less is obtained as the maximum hitable ball speed, and this is a capability parameter. Can be.
  • FIG. 12 shows an example of learning data DB 214B in the case of an exercise task for walking improvement in rehabilitation using a treadmill.
  • the speed of the running belt of the treadmill is acquired as the load data.
  • the operation data the skeleton information of the user walking on the traveling belt is acquired.
  • the performance data for example, the variation of the center of gravity during one operation is acquired based on the skeleton information. It should be noted that the performance data is not limited to the variation in the center of gravity, and may be any index that can evaluate the movement of walking without falling. Then, as in the graph shown in FIG.
  • the speed of the traveling belt in which the variation in the center of gravity is equal to or more than a predetermined value is obtained as the maximum walking speed, and this is a capability parameter.
  • the predetermined value may be a value that may cause a fall if the center of gravity fluctuates more than that value. From the learning data as shown in FIG. 12, it is possible to generate an estimation model that estimates the speed of the traveling belt as fast as possible as the recommended load data within the range in which the target user can walk without falling.
  • the case of outputting the determined recommended load data to the table tennis robot that is, the case of outputting to the load applying device in order to control the load applying device that applies the load to the target user has been described.
  • data for displaying the latest recommended load data on the display device may be output to the display device at predetermined time intervals.
  • present the determined recommended load data to a trainer or a physiotherapist who gives guidance to the target user, and set the load control information to the load application device under the judgment of the instructor. You may do it. This makes it possible to consider the safety of the target user, especially when the exercise task is related to rehabilitation.
  • the case of estimating the maximum ball speed that can be returned which is an example of the limit load data, has been described as the capacity parameter, but the present invention is not limited to this.
  • a parameter specifying a graph as shown in FIG. 9 may be estimated as a capacity parameter, and recommended load data may be determined based on this graph.
  • the recommended load data may be randomly determined from the load in which the return ball rate is within a predetermined range (for example, 80% to 85%).
  • statistical values such as the average, median, and mode of loads whose return rate is within a predetermined range may be determined as recommended load data.
  • the third embodiment will be described.
  • the improvement of the return ball rate in the table tennis rally is set as an exercise task
  • the load given to the user is the return ball from the table tennis robot
  • the movement of the user is the table tennis robot.
  • the swing is for returning the hit ball from the ball.
  • the recommended load determination device 310 functionally includes an acquisition unit 312, a learning data DB 314, a learning unit 316, an estimation model 318, and a determination unit 320. include.
  • the acquisition unit 312 acquires load data, operation data, and grade data in the learning mode, and acquires load data and operation data in the practice mode.
  • the operation data is the skeleton information of the user as in the second embodiment
  • the performance data is the return ball error as in the second embodiment.
  • the load is made multidimensional, and the acquisition unit 312 acquires load data of a plurality of items.
  • the acquisition unit 312 acquires the hitting ball rotation indicating the hitting ball rotation speed and the relative position as load data of a plurality of items in addition to the hitting speed similar to that of the second embodiment.
  • the relative position is a relative position between the landing position of the ball BL returned from the table tennis robot 60 on the table tennis table TB and the position of the user.
  • the acquisition unit 312 can acquire these load data from the control information set in the table tennis robot 60.
  • a sensor (not shown) may be used to detect the landing position of the ball BL, the position of the user, the rotation of the hit ball, and the like to acquire load data.
  • the acquisition unit 312 stores the acquired ball hitting speed, hitting ball rotation, relative position, skeleton information, and return ball error in the learning data DB 314.
  • FIG. 13 shows an example of the learning data DB 314.
  • the items of the learning data DB 314 are the same as those of the learning data DB 214 in the second embodiment, except that the load data is a plurality of items.
  • the learning unit 316 calculates a heat map showing the relationship between the load value of each of the load data of a plurality of items and the return rate when the load indicated by the load data is given, as the ability parameter of each sample user. .. Specifically, the learning unit 316 allocates the value of the load data to a plurality of stages. For example, the hitting speed of 2.5 to 3.5 m / sec is set to 3 m / sec. The learning unit 316 calculates the return ball rate for each set of values after allocation of each of the hitting speed, the hitting rotation, and the relative position, as in the second embodiment.
  • the learning unit 316 stores the calculated return rate in the cell corresponding to the value of the load data of each set in the heat map having each of the hitting speed, the hitting rotation, and the relative position as each axis.
  • a heat map is obtained and stored in the "ability parameter" column of the learning data DB 314 as shown in FIG. In the example of FIG. 13, the return rate of the heat map is shown by shading.
  • the learning unit 316 learns the correspondence between the load data (hit speed, hit rotation, relative position) and skeleton information of a plurality of items for the sample user and the ability parameter. As a result, the learning unit 316 generates an estimation model 318 that estimates and outputs a heat map, which is a capability parameter of the target user, for the input of a plurality of load data and skeleton information about the target user.
  • the estimation model 318 can be realized by a neural network as shown in FIG. 14, for example.
  • the input to each neuron in the input layer corresponds to each element of the multidimensional data that combines the load data of multiple items and the skeletal information
  • the output from each neuron in the output layer corresponds to each of the heat maps. Corresponds to the cell value.
  • the determination unit 320 inputs the load data (striking speed, hitting rotation, relative position) and skeleton information of a plurality of items about the target user acquired by the acquisition unit 312 into the estimation model 318, so that the target user can be determined. Estimate the heat map. Then, the determination unit 320 determines the recommended load data for the next trial based on the estimated heat map. Also. The determination unit 320 may output data for visualizing and displaying the estimated heat map.
  • the method of determining the recommended load data will be described using the heat map shown in FIG. In FIG. 15, for the sake of simplicity, a two-dimensional heat map for load data (ball hitting speed and relative position) of two items will be described. The same applies to the following FIGS. 18 to 21, 28, and 29.
  • the determination unit 320 identifies cells (shaded cells in FIG. 15) having a return ball rate of a predetermined value (for example, 85%) or more in the heat map.
  • the determination unit 320 determines the recommended load data from the combination of the values of the load data included in the range indicated by the specified cell.
  • the determination unit 320 can select the cell having the smallest return rate from the specified cells and determine the recommended load data from the combination of the load data values included in the range indicated by the cell. For example, the determination unit 320 can select the cell indicated by the circle in FIG. 15 and determine the recommended load data that the hitting speed is 4 m / sec and the relative position is ⁇ 0.3 m. Since the value of the load data corresponding to each cell is a value having a width, it can be predetermined to select the median value, the maximum value, or the minimum value within the width. Further, it may be set to randomly determine the value in the range from the minimum value to the maximum value.
  • the recommended load data may be determined so as to give a stricter load.
  • the determination unit 320 is a cell (marked with a circle or a triangle in FIG. 15) adjacent to a cell having a return ball rate of less than a predetermined value among cells having a return ball rate of a predetermined value or more.
  • the recommended load data can be determined from the values in the range indicated by the cell). More strictly, the determination unit 320 obtains recommended load data from the values on the boundary (thick line in FIG. 15) between the cells whose return ball rate is equal to or more than the predetermined value and the cells whose return rate is less than the predetermined value in the heat map. Can be decided.
  • the determination unit 320 outputs the determined load data to the table tennis robot 60.
  • the recommended load data is set as control information, and at the next trial, it is controlled to send (return) the hit ball at the hitting speed, hitting rotation, and relative position indicated by the recommended load data. ..
  • the storage device 36 stores a recommended load determination program for executing the recommended load determination process described later.
  • FIG. 16 is a flowchart showing the flow of the recommended load determination process executed by the CPU 32 of the recommended load determination device 310.
  • the CPU 32 reads the recommended load determination program from the storage device 36, expands it into the memory 34, and executes it, the CPU 32 functions as each functional configuration of the recommended load determination device 310, and the recommended load determination process shown in FIG. 16 is executed. Will be done.
  • the recommended load determination process in the third embodiment the same process as the recommended load determination process (FIG. 10) in the second embodiment is assigned the same step number and detailed description thereof will be omitted.
  • step S304 the acquisition unit 312 acquires load data (ball hitting speed, hitting ball rotation, relative position), skeleton information, and return ball error of a plurality of items and stores them in the learning data DB 314.
  • step S308 is executed instead of step S208 of the recommended load determination process of the second embodiment.
  • the learning unit 316 shows the relationship between the load value of each of the load data of a plurality of items and the return rate when the load indicated by the load data is given, as the ability parameter of each sample user. Calculate the map.
  • step S200 determines whether a negative determination is made in step S200 and the process proceeds to the practice mode processing after step S214, and if it is determined in step S214 that the estimation model 318 has been generated, the process proceeds to step S316.
  • step S316 the acquisition unit 312 instructs the table tennis robot 60 to set each of the hitting speed, hitting rotation, and relative position to the initial values and start sending the hitting ball.
  • step S3108 the acquisition unit 312 determines the hitting speed, hitting rotation, and relative position of the hitting ball sent from the table tennis robot 60 according to the instruction in step S316, and the swing at the time of returning the target user to the hitting ball. Acquire the skeleton information to be shown.
  • step S320 the determination unit 320 inputs the load data (hit speed, hit ball rotation, relative position) and skeleton information of a plurality of items for the target user acquired by the acquisition unit 312 into the estimation model 318. Estimate the heat map of the target user.
  • step S321 the determination unit 320 determines the recommended load data for the next trial based on the estimated heat map.
  • step S322 the determination unit 320 instructs the table tennis robot 60 to hit the ball at the hitting speed, hitting rotation, and returning the ball at the relative position indicated by the recommended load data determined in step S321.
  • a load that combines a plurality of items is used as a target within the range in which the target user can return the ball. Can be given to a person.
  • a useful load can be given to the skill improvement of the target user.
  • the fourth embodiment will be described.
  • the improvement of the return ball rate in the table tennis rally is an exercise task
  • the load given to the user is the return ball from the table tennis robot
  • the movement of the user is the table tennis robot.
  • the swing is for returning the hit ball from the ball.
  • a range of load data having a return ball rate of a predetermined value or more is specified and a value of recommended load data is determined from this range has been described.
  • the recommended load data for the next trial is the value of one set of load data of a plurality of items, but the specified range includes a set of values of a plurality of loads as a candidate for the recommended load data. Therefore, in the fourth embodiment, a method of narrowing down the recommended load data to be determined from a specified range will be described so that more useful recommended load data can be determined.
  • the recommended load determination device 410 functionally has an acquisition unit 412, a learning data DB 314, a learning unit 416, a comparative heat map DB 422, and an estimation model 318. And the determination unit 420.
  • the acquisition unit 412 acquires load data, operation data, and grade data of a plurality of items in the learning mode, and load data and operation data of a plurality of items in the practice mode.
  • the load data of a plurality of items is the hitting speed, the hitting rotation, and the relative position
  • the motion data is the skeleton information of the user
  • the performance data is the return ball error.
  • the acquisition unit 412 acquires the designation of strength / weakness indicating whether the target user wants to practice his / her strong part or weak part in the practice mode. This designation is input to the recommended load determination device 410 via the input device 38.
  • the learning unit 416 calculates a heat map as an ability parameter for each sample user and generates an estimation model 318. Further, the learning unit 416 has a relative strength range showing a range of loads that the target user is relatively good at and a relative weakness showing a range of loads that the target user is relatively weak compared to other users. Create a comparative heatmap to identify the range. What is good is that the target user has a higher chance of success than other users, and what is weak is that the target user has a lower chance of success than other users.
  • the learning unit 416 classifies each of the sample users whose learning data is stored in the learning data DB 314 into levels according to their abilities for exercise tasks. This leveling may be performed manually, or may be performed using the ability parameters calculated by the learning unit 416 in the process of generating the estimation model 318.
  • the learning unit 416 is based on the level of each sample user, which is defined according to the ratio of the number of cells having a return rate of a predetermined value (for example, 85%) or more to the total number of cells in the heat map. To judge.
  • the number of levels may be appropriately set according to the number of sample users and the like. Then, as shown in FIG.
  • the learning unit 416 calculates a typical heat map of each level from the heat map calculated for each sample user of the same level.
  • the learning unit 416 calculates, for example, statistical values such as the average value, the median value, and the mode value of the values of each cell of the heat map of the sample user of the same level as the value of each cell of the typical heat map. Then, the learning unit 416 stores the typical heat map calculated for each level in the comparison heat map DB 422 as a comparison heat map.
  • the determination unit 420 estimates the heat map of the target user by using the estimation model 318, similarly to the determination unit 320 of the third embodiment. Then, the determination unit 420 compares the heat map of the target user with the heat map for comparison, and creates a relative strength / weakness map for specifying the relative strength / weakness range of the target user. The determination unit 420 determines a set of load values in the relative strength range or the relative weakness range in the created relative strength / weakness map as recommended load data.
  • the determination unit 420 determines the level of the target user based on the heat map of the target user, and compares a typical heat map of the same level as the target user or one rank higher. It is specified as a heat map and obtained from the comparison heat map DB422. The level one rank higher is used in consideration of skill improvement. Then, the determination unit 420 prepares an empty relative strength / weakness map having cells corresponding to each cell of the heat map. The determination unit 420 causes each cell of the empty relative strength / weakness map to hold information according to the result of comparing the value (return rate) of each cell between the heat map of the target user and the heat map for comparison. Creates a relative strengths and weaknesses map.
  • the return rate of the heat map of the target user is a predetermined value (for example, 85%) or more, and the return rate of the comparative heat map is less than the predetermined value.
  • the cell of is specified as a relative specialty range.
  • the determination unit 420 specifies a cell in which the return rate of the heat map of the target user is less than a predetermined value and the return rate of the comparative heat map is equal to or more than a predetermined value as a relative weak range.
  • cells in which the return rate of the heat map of the target user and the heat map for comparison are both equal to or higher than a predetermined value are specified as a range without any problem.
  • cells in which the return rate of both the heat map of the target user and the heat map for comparison is less than a predetermined value are specified as the range of NG for both.
  • the determination unit 420 determines the recommended load data based on the relative strength range of the relative strength / weakness map. Further, the determination unit 420 determines the recommended load data based on the relative weakness range of the relative strength / weakness map when the strength / weakness designation acquired by the acquisition unit 412 specifies “weakness”. ..
  • a method for determining specific recommended load data based on the relative strength range or the relative weakness range will be described.
  • the determination unit 420 determines the recommended load data based on the relative specialty range, as shown in FIG. 20, the boundary between the cell showing the relative specialty range and the cell having the return ball rate lower than the predetermined value (FIG. 20).
  • the recommended load data can be determined from above (thick line in the middle). As a result, it is possible to improve the ball return rate of the target user with respect to the load included in the range in the direction indicated by the arrow in FIG.
  • the determination unit 420 determines the recommended load data based on the relative weakness range, as shown in FIG. 21, the cell adjacent to the relative weakness cell and having a return ball rate of a predetermined value or more (in FIG. 21).
  • Recommended load data can be determined from the range of cells) indicated by circles.
  • the determination unit 420 can determine the recommended load data from the boundary (thick line in FIG. 21) between the relative weak cell and the cell having a return ball rate of a predetermined value or more. As a result, it is possible to improve the return rate of the target user with respect to the load included in the range indicated by the arrow in FIG. 21, that is, the relative weak range.
  • the storage device 36 stores a recommended load determination program for executing the recommended load determination process described later.
  • step S200 when the recommended load determination process (FIG. 16) in the third embodiment is positively determined in step S200 and the process shifts to the learning mode process after step S202, it is shown in FIG. 22 after step S212.
  • the comparison heat map creation process is executed.
  • step S400 the learning unit 416 defines the number of cells having a return rate of a predetermined value (for example, 85%) or more with respect to the total number of cells in the heat map. Determine the level of each sample user based on the level of the level to be applied.
  • a predetermined value for example, 85%
  • step S402 the learning unit 416 calculates a typical heat map for each level from the heat map calculated for each sample user at the same level, and uses the comparative heat map DB 422 as a comparative heat map.
  • the comparison heat map creation process is completed, and the recommended load determination process is also completed.
  • step S200 the process proceeds to the practice mode processing after step S214, and it is determined in step S214 that the estimation model 318 has already been generated.
  • the acquisition unit 412 acquires the designation of the target user's strengths / weaknesses input to the recommended load determination device 410 via the input device 38.
  • steps S316 to S320 are executed in the same manner as the recommended load determination process of the third embodiment, and the determination process shown in FIG. 23 is executed in step S321.
  • step S410 the determination unit 420 determines the level of the target user based on the heat map of the target user estimated in step S320.
  • step S412 the determination unit 420 identifies a typical heat map at the same level as the level of the target user or one rank higher than the level of the target user determined in step S410, as a comparative heat map, and heats for comparison. Obtained from map DB422.
  • step S414 the determination unit 420 compares the value (return ball rate) of each cell between the heat map of the target user and the heat map for comparison, and creates a relative strength / weakness map.
  • step S416 the recommended load data is determined based on the relative strength / weakness map created in step S414 and the designation of strengths / weaknesses acquired by the acquisition unit 412. Then, the process returns to the recommended load determination process (FIG. 16).
  • the recommended load determination device creates a relative strength / weakness map in which the relative strength / weakness range of the target user compared with other users is specified. Then, since the recommended load data is determined based on this relative strength / weakness map, it is more useful for skill improvement from the candidates of the set of load values that can be the recommended load data, as compared with the case of the third embodiment. The set can be determined as the recommended load data.
  • the present invention is not limited to this.
  • a relative strength map in which only the relative strength range is specified may be created, or a relative weakness map in which only the relative weakness range is specified may be created.
  • the target user is made to practice the strong part based on the relative strength map, or the target user is made to practice the weak part based on the relative weakness map. You can do it like this.
  • acquire the designation of strength / weakness create a relative strength map in the case of "good” designation, and create a relative weakness map in the case of "weakness" designation. May be good.
  • the determination unit may output data for visualizing and displaying the created relative strength / weakness map, relative strength / weakness map, or relative weakness map.
  • the target user can objectively grasp his / her relative strength range or relative weakness range.
  • the exercise task is to improve the return ball rate in the table tennis rally, and the load given to the user is the return ball from the table tennis robot, and the user's movement is performed.
  • the case where it is a swing for returning a hit ball from a table tennis robot will be described.
  • the purpose is to improve the skill of the exercise task, there are cases where it is desired to improve the skill for the exercise task under finer restrictions.
  • a method for determining useful recommended load data for a more detailed request for an exercise task will be described.
  • the recommended load determination device 510 functionally includes an acquisition unit 512, a learning data DB 514, a learning unit 516, an estimation model 518, and a determination unit 520. include.
  • the acquisition unit 512 acquires load data, operation data, and grade data in the learning mode, and acquires load data and operation data in the practice mode.
  • the load data is the hitting speed
  • the motion data is the skeleton information of the user
  • the performance data is the return error.
  • the acquisition unit 512 acquires, for example, the hitting speed, the hitting rotation, and the relative position as load data of a plurality of items. You may do it.
  • the learning mode the motion data and the grade data when the sample user is returned after designating the hitting method such as cut, smash, and fore drive are acquired. Therefore, the data as shown in FIG. 8 or 13 is stored in the learning data DB 514 for each striking method.
  • "how to hit” is an example of "type of operation" of the disclosed technique.
  • the acquisition unit 512 acquires the designation of the practice menu indicating the striking method that the target user wants to practice in the practice mode. This designation is input to the recommended load determination device 510 via the input device 38.
  • the learning unit 516 generates an estimation model 518 using the learning data for each hitting method.
  • the specific method for generating the estimation model 518 is the same as that of the second to fourth embodiments. Therefore, as shown in FIG. 25, the estimation model 518 is a set of estimation models for each hitting method, such as for cutting, smashing, and fore drive. In the example of FIG. 25, the estimation model 518 also includes an estimation model for random generation generated without limiting the hitting method.
  • the determination unit 520 estimates the ability parameter of the target user from the estimation model 518 using the estimation model for the striking method corresponding to the designation of the practice menu acquired by the acquisition unit 512, and is based on the ability parameter. To determine the recommended load data.
  • the specific method for determining the recommended load data based on the capacity parameters is the same as that in the second to fourth embodiments.
  • the hardware configuration of the recommended load determination device 510 is the same as the hardware configuration of the recommended load determination device 10 according to the first embodiment shown in FIG. 3, the description thereof will be omitted. Further, regarding the operation of the recommended load determination device 510 according to the fifth embodiment, the point of acquiring the designation of the practice menu and the designated practice menu in step S220 of FIG. 10 or step S320 of FIG. 16 correspond to the designated practice menu. Since the point that the estimation model for the striking method is used is different from the recommended load determination process of the second to fourth embodiments, detailed description thereof will be omitted.
  • an estimation model is prepared for each striking method, and the target user's ability is used by using the estimation model for the striking method specified by the target user. Estimate the parameters and determine the recommended load data. This makes it possible to determine useful recommended load data for more detailed requirements for exercise tasks.
  • the exercise task is to improve the return ball rate in the table tennis rally, and the load given to the user is the return ball from the table tennis robot, and the user's movement is performed.
  • load data and operation data are input to the estimation model to estimate the ability parameters of the target user. Therefore, for example, in the case of table tennis, although the swing is good, an excessively large load may be given to a target user having a poor return rate.
  • the recommended load determination device 610 functionally determines the acquisition unit 612, the actual DB 624, the learning data DB 314, the learning unit 316, and the estimation model 318. Includes part 620.
  • the acquisition unit 612 acquires load data, operation data, and grade data of a plurality of items in the learning mode, similarly to the acquisition unit 312 according to the third embodiment.
  • the acquisition unit 612 acquires the performance data as the actual measurement parameter of the operation result in addition to the load data and the operation data of a plurality of items.
  • the load data of a plurality of items is the hitting speed, the hitting rotation, and the relative position
  • the motion data is the skeleton information of the user
  • the performance data is the return ball error.
  • the acquisition unit 612 stores the grade data acquired in the practice mode in the achievement DB 624 as shown in FIG. 27, for example, for each trial.
  • the determination unit 620 imposes a burden on the target user. Determine the recommended load data to be small. On the other hand, if the ability of the target user evaluated by the performance data is higher than the ability of the target user evaluated by the ability parameter which is the output of the estimation model 318, the determination unit 620 bears the burden on the target user. Determine the recommended load data so that
  • the determination unit 620 estimates the heat map as the ability parameter of the target user by using the estimation model 318, and obtains the recommended load data from the heat map, as in the determination unit 320 of the third embodiment. Identify the cell to determine. Further, the determination unit 620 calculates the actual return rate from the return error in the past predetermined number of trials stored in the actual DB 624. When the actual return rate is less than or equal to the lower limit threshold value (for example, 85%), the estimated return rate stored in each cell of the estimated heat map is higher than the actual return rate corresponding to the actual ability of the target user. It becomes a high value, and there is a possibility that a cell in a load range that places a heavy burden on the target user has been identified.
  • the lower limit threshold value for example, 85%
  • the determination unit 620 corrects the cell specified from the heat map in the direction in which the load becomes low (decrease direction).
  • the actual return rate is equal to or higher than the upper limit threshold value (for example, 95%)
  • the estimated return rate stored in each cell of the estimated heat map corresponds to the actual ability of the target user. It is possible that a cell in a load range that is less burdensome for the target user has been identified. Therefore, the determination unit 620 corrects the cell specified from the heat map in the direction in which the load increases (increase direction).
  • the load decreasing direction is, for example, a cell in which the estimated return rate is improved as shown by an arrow in FIG. 28 when the load included in the cell in the thick frame in FIG. 28 is used as a reference.
  • the direction is toward.
  • the determination unit 620 identifies the cell closest to the cell specified from the heat map along the increasing or decreasing direction, and determines a set of load values included in the range of the specified cell as recommended load data. be able to.
  • the storage device 36 stores a recommended load determination program for executing the recommended load determination process described later.
  • step S200 if a negative determination is made in step S200, the process proceeds to the practice mode process after step S214. Then, when it is determined in step S214 that the estimation model 318 has been generated, the determination process shown in FIG. 30 is executed instead of steps S316 to S321.
  • step S600 the acquisition unit 612 acquires load data (hit speed, hit rotation, relative position) of a plurality of items and skeleton information and stores them in the learning data DB 314. Further, the acquisition unit 612 acquires the return ball error and stores it in the actual result DB 624.
  • step S602 the determination unit 620 inputs load data and skeleton information of a plurality of items into the estimation model 318, estimates the heat map of the target user, and determines the recommended load data from the heat map. Identify the cell of.
  • step S604 the determination unit 620 determines whether or not the performance data (return error) for a predetermined number of times or more is stored in the actual result DB 624. If it is stored, the process proceeds to step S606, and if it is not stored, the process proceeds to step S614.
  • step S606 the determination unit 620 determines whether or not the return ball rate calculated from the return ball error for the past predetermined number of times stored in the actual DB 624 is equal to or less than the lower limit threshold value (for example, 85%). If the return ball rate is equal to or less than the lower limit threshold value, the process proceeds to step S608, and if the return ball rate exceeds the lower limit threshold value, the process proceeds to step S610. In step S608, the determination unit 620 corrects and identifies the cell specified from the heat map in the decreasing direction, and determines a set of load values included in the range of the specified cell as recommended load data.
  • the lower limit threshold value for example, 85%
  • step S610 the determination unit 620 determines whether or not the return ball rate is equal to or higher than the upper limit threshold value (for example, 95%). If the return ball rate is equal to or higher than the upper limit threshold value, the process proceeds to step S612, and if it is less than the upper limit threshold value, the process proceeds to step S614. In step S612, the determination unit 620 corrects and identifies the cell specified from the heat map in the increasing direction, and determines a set of load values included in the range of the specified cell as recommended load data.
  • the upper limit threshold value for example, 95%
  • step S614 the determination unit 620 determines a set of load values included in the range of cells specified in step S602 as recommended load data. Then, the process returns to the recommended load determination process (FIG. 16).
  • the recommended load data to be determined is corrected in the decreasing direction or the increasing direction according to the ability indicated by the actual results of the target user.
  • recommended load data useful for skill improvement can be determined according to the performance of the target user.
  • the present invention is not limited to this.
  • the correction in the increasing direction may not be performed.
  • a low load is given to the target user, but since the practice is performed until the quality of the swing is improved with the low load, there is no problem even if the correction in the increasing direction is not performed.
  • the recommended load data in the next trial is determined based on the load data given for this trial and the operation data for the load data has been described.
  • it is usually a bad swing, but if a good swing happens to be made only once, an excessive load may be applied in the next trial.
  • the first, second, fourth, and fifth trials are bad swings, and the third trial happens to have a good swing.
  • a low capacity parameter is estimated for a bad swing, so appropriate recommended load data according to the target user is determined.
  • high capacity parameters are estimated, so recommended load data that is burdensome for the target user is determined.
  • the ability parameter of the nth trial may be estimated by inputting the averaged load data n_Ave and the operation data n_Ave into the estimation model.
  • k + 1 capacity parameters estimated in the past k + 1 trials were averaged and averaged.
  • the recommended load data may be determined from the capacity parameter n_Ave. Further, the recommended load data determined based on each of the k + 1 capacity parameters may be averaged and used as the final recommended load data.
  • the operation data may be dimensionally compressed and used as training data so that the number of dimensions of the operation data is the same as the number of dimensions of the load data. In this case, the dimensional compression of the motion data is performed at the time of estimating the ability parameter as well as at the time of learning.
  • the number of dimensions having the same degree is the number of dimensions in which the difference between the number of dimensions of the load data and the number of dimensions of the operation data is within a predetermined range.
  • the coordinate value representing one joint is 3
  • the number of frames of the image of one motion unit is f
  • the number of dimensions of the motion data is n ⁇ . It is 3 ⁇ f.
  • the feature quantity of s type is extracted from the operation data so that the dimension number is the same as the dimension number i of the load data, and the operation data is obtained after dimension compression.
  • a matrix as shown in FIG. 35 is created from operation data for a plurality of sample users.
  • the coordinate values of the actual skeleton information are entered.
  • principal component analysis is performed on this matrix, for example, the cumulative contribution rate of the principal components is obtained, and the upper s principal components are specified.
  • the values obtained by mapping the motion data indicating each swing are calculated for each of the specified main components P1, P2, ..., Ps.
  • the value mapped to each main component is entered.
  • the operation data of n ⁇ 3 ⁇ f dimension can be dimensionally compressed into s dimension.
  • the motion data may be featured so as to show the skill of the swing based on the knowledge information about the corresponding motion and the analysis of the motion data. For example, if it is known that a person who is good at swinging has a constant elbow height, the variance of the elbow height is extracted from the motion data as a feature quantity. In addition, if there is a knowledge that a person who is good at swinging has a smooth swing trajectory, an analysis such as taking a derivative is performed on the trajectory indicated by the motion data, and an index indicating the smoothness of the trajectory is used as a feature quantity. Extract as. Then, as shown in FIG. 37, the motion data showing each swing is quantified. In the shaded area of FIG. 37, the feature amount extracted from the operation data for each feature is entered.
  • the present invention is not limited to this.
  • the exercise task for improving the hit rate using a batting machine and the exercise task for improving walking in rehabilitation using a treadmill, as illustrated in the first embodiment are also described. It can be realized as a concrete embodiment similar to the third to sixth embodiments.
  • the present invention is not limited to this.
  • the ability parameter estimation model learning device including the acquisition unit and the learning unit and the recommended load determination device including the acquisition unit and the determination unit may be realized by different computers.
  • various processors other than the CPU may execute the recommended load determination process executed by the CPU reading the software (program) in each of the above embodiments.
  • a processor in this case a PLD (Programmable Logic Device) whose circuit configuration can be changed after manufacturing an FPGA (Field-Programmable Gate Array), an ASIC (Application Specific Integrated Circuit), or the like for specifying an ASIC.
  • An example is a dedicated electric circuit or the like, which is a processor having a circuit configuration designed exclusively for it.
  • the recommended load determination process may be executed by one of these various processors, or a combination of two or more processors of the same type or different types (for example, a plurality of FPGAs, and a CPU and an FPGA). It may be executed by combination etc.).
  • the hardware-like structure of these various processors is, more specifically, an electric circuit in which circuit elements such as semiconductor elements are combined.
  • the mode in which the recommended load determination program is stored (installed) in the storage device in advance has been described, but the present invention is not limited to this.
  • the program may be provided in a form stored in a storage medium such as a CD-ROM, a DVD-ROM, a Blu-ray disc, or a USB memory. Further, the program may be downloaded from an external device via a network.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Databases & Information Systems (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Rehabilitation Tools (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

利用者に与えた負荷を表す負荷データと、当該負荷の下での利用者の一動作単位の動作を表す動作データとに基づいて計算される、利用者の能力に関するパラメータを出力する推定モデル(18)を利用する推奨負荷決定装置(10)において、取得部(12)が、推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、当該負荷の下での対象利用者の一動作単位の動作を表す動作データとを取得し、決定部(20)が、取得された負荷データ及び動作データを推定モデル(18)に入力することにより推定モデル(18)が出力する対象利用者の能力に関するパラメータに基づいて、対象利用者のための推奨負荷を表す推奨負荷データを決定する。

Description

推奨負荷決定装置、能力パラメータ推定モデル学習装置、方法、及びプログラム
 本開示は、推奨負荷決定装置、能力パラメータ推定モデル学習装置、推奨負荷決定方法、及び推奨負荷決定プログラムに関する。
 従来、人が機械を使用して運動、作業、リハビリテーション等を行う際に、人の生体情報等に基づいて、機械の制御量を自動で決定する技術が提案されている。
 例えば、作業の熟練度に応じて生産ラインの駆動部を制御する制御装置が提案されている(特許文献1:特開2018-55611号公報参照)。特許文献1に記載の制御装置は、作業の熟練度毎に当該熟練度に応じた生体情報を記憶するための記憶部を有する。また、この制御装置は、作業者から測定された生体情報を取得し、作業時に取得される生体情報が有する特徴量と、記憶部の熟練度毎の生体情報が有する特徴量とを比較する。そして、この制御装置は、比較の結果に基づき、当該取得される生体情報がいずれの熟練度に該当するかを判定し、判定された熟練度に基づき駆動部の制御量を決定する。
 また、例えば、適正な難易度設定を可能にするリハビリテーション支援装置が提案されている(特許文献2:特開2019-107235号公報参照)。特許文献2に記載の装置は、受付部と、取得部と、算出部と、出力制御部とを備える。受付部は、リハビリテーションの対象となる対象者について、fMRIにより計測される脳活動の第1指標値、リハビリテーションのタスクの第1達成率、及びリハビリテーションのタスクの第1難易度の入力を受け付ける。取得部は、リハビリテーションを行った複数の者について、fMRIにより計測される脳活動の第2指標値、リハビリテーションのタスクの第2達成率、及びリハビリテーションのタスクの第2難易度の相関関係を取得する。算出部は、入力及び相関関係に基づいて、対象者が実行するリハビリテーションの第3難易度を算出し、出力制御部は、第3難易度を出力する。
 また、被検者に拘束性を与えず、評価不能となることが少なく、特別の生理情報センサも必要としないで運動能力を評価する運動能力評価装置が提案されている(特許文献3:特開平11-235401号公報参照)。特許文献3に記載の装置は、運動の負荷強度をP1からP2までステップ状に増加させ、この負荷増加により、運動による回転機の回転数がR1からΔRだけ低下する。また、この装置は、その後、被検者が元の回転数R1に復帰させようとして、回転数を上げるように運動することに応じて、回転数がΔRの1/2だけ復帰する時間1/2tfを求め、この時間1/2tfにより、運動能力を評価する。
 例えば、利用者に対して負荷を与えて、ある運動課題を実施させる場合、運動課題に対する利用者の技能が向上するように適切な負荷を与えることが望ましい。しかしながら、特許文献1に記載の技術では、生体情報の変動が、ロボットから人に与えられた負荷の変化によるものであるか、本人の上達によるものであるかを区別することができない。すなわち、利用者の技能が向上しているか否かを把握することができない。そのため、特許文献1に記載の技術では、ある運動課題に対する利用者の技能が向上するような適切な負荷を与えることができない、という問題がある。
 また、特許文献2に記載の技術は、リハビリテーションのタスクの難易度を患者に合わせて適切に調整するものである。また、特許文献3に記載の技術は、運動能力の評価を行っているものである。したがって、いずれの技術も、上記のように、ある運動課題に対する利用者の技能が向上するような適切な負荷を与える場合には適用することができない、という問題がある。
 本開示は、上記の点に鑑みてなされたものであり、利用者に負荷を与えて運動課題を実施させる場合に、利用者の技能向上に有益な負荷を決定することを目的とする。
 上記目的を達成するために、開示の推奨負荷決定装置は、利用者に与えた負荷を表す負荷データと、当該負荷の下での前記利用者の一動作単位の動作を表す動作データとに基づいて計算される、前記利用者の能力に関するパラメータを出力する推定モデルを利用する推奨負荷決定装置であって、推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、当該負荷の下での前記対象利用者の一動作単位の動作を表す動作データとを取得する取得部と、取得された前記負荷データ及び前記動作データを前記推定モデルに入力することにより前記推定モデルが出力する前記対象利用者の前記能力に関するパラメータに基づいて、前記対象利用者のための推奨負荷を表す推奨負荷データを決定する決定部と、を含んで構成される。
 開示の推奨負荷決定装置は、利用者に与えた負荷を表す負荷データと、当該負荷の下での利用者の一動作単位の動作を表す動作データとに基づいて計算される、利用者の能力に関するパラメータを出力する推定モデルを利用する推奨負荷決定装置であって、取得部が、推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、当該負荷の下での対象利用者の一動作単位の動作を表す動作データとを取得し、決定部が、取得された負荷データ及び動作データを推定モデルに入力することにより推定モデルが出力する対象利用者の能力に関するパラメータに基づいて、対象利用者のための推奨負荷を表す推奨負荷データを決定する。
 これにより、利用者に負荷を与えて運動課題を実施させる場合に、利用者の技能向上に有益な負荷を決定することができる。
 また、前記動作データは、前記利用者若しくは前記利用者が前記動作を行う際に保持する器具の特定部位の変位データ、前記利用者の筋活動量データ、又は、前記変位データ若しくは前記筋活動量データの微分データ若しくは積分データであってよい。また、前記利用者の特定部位の変位データは、前記利用者の骨格情報の時系列データであってよい。
 また、前記推定モデルが出力する前記能力に関するパラメータは、前記動作についての成功見込みが所定の基準より大きくなる、1つの負荷項目についての前記負荷の値の範囲の中で前記利用者にとっての負担が最も大きい前記負荷の値を表す限界負荷データであってよく、前記決定部は、前記対象利用者についての前記限界負荷データを前記推奨負荷データとして決定してよい。
 また、前記推定モデルが出力する前記能力に関するパラメータは、前記負荷と前記動作についての成功見込みの大きさとの関係を表すパラメータであってよく、前記決定部は、前記対象利用者についての前記能力に関するパラメータに基づいて前記推奨負荷データを決定してよい。
 また、前記対象利用者についての前記負荷と前記動作についての成功見込みの大きさとの関係を表すパラメータは、1つの負荷項目についての前記負荷の値と前記成功見込みの大きさとの関係を表すグラフを特定するパラメータであってよく、前記決定部は、前記グラフにおいて前記成功見込みが所定の基準より大きくなる前記負荷の値の範囲の中で前記対象利用者にとっての負担が最も大きい前記負荷の値を表す限界負荷データを前記推奨負荷データとして決定してよい。
 また、前記対象利用者についての前記負荷と前記動作についての成功見込みの大きさとの関係を表すパラメータは、複数の負荷項目についての前記負荷の値と前記成功見込みの大きさとの関係を表すヒートマップを特定するパラメータであってよく、前記決定部は、前記ヒートマップにおいて前記成功見込みが所定の基準より大きくなる負荷の値の組を前記推奨負荷データとして決定してよい。
 また、前記決定部は、前記ヒートマップを可視化して表示するためのデータを出力してよい。
 前記決定部は、比較用ヒートマップを利用可能とされてよく、前記比較用ヒートマップとの比較において、前記対象利用者の前記成功見込みの方が大きい前記負荷の値の組の範囲である相対得意範囲を特定する相対得意マップ又は前記対象利用者の前記成功見込みの方が小さい前記負荷の値の組の範囲である相対不得意範囲を特定する相対不得意マップを作成し、前記相対得意範囲又は前記相対不得意範囲の中の負荷の値の組を前記推奨負荷データとして決定してよい。
 また、前記比較用ヒートマップは、前記利用者のレベル別に用意されてよく、前記決定部は、前記対象利用者のレベルと同等のレベル又は前記対象利用者のレベルより上のレベルであって前記対象利用者のレベルに最も近いレベルの前記利用者についての前記比較用ヒートマップを利用してよい。
 また、前記取得部は、さらに前記対象利用者についての得意又は不得意の指定を取得してよく、前記決定部は、前記得意の指定が取得された場合は前記相対得意マップを作成し、前記不得意の指定が取得された場合は前記相対不得意マップを作成してよい。
 また、前記決定部は、前記相対得意マップ及び前記相対不得意マップの少なくとも一方を可視化して表示するためのデータを出力してよい。
 また、前記推定モデルは、前記動作の類型毎に用意されてよく、前記取得部は、前記対象利用者から、いずれかの前記類型の指定を取得してよく、前記決定部は、指定された前記類型に対応する前記推定モデルを用いて、前記推奨負荷データを決定してよい。
 また、前記取得部は、前記負荷データ及び前記動作データの組を複数組取得してよく、前記決定部は、複数の前記負荷データを平均化した負荷データ及び複数の前記動作データを平均化した動作データを前記推定モデルに入力してよい。
 また、前記取得部は、前記負荷データ及び前記動作データの組を複数組取得してよく、前記決定部は、前記負荷データ及び前記動作データの組のそれぞれを前記推定モデルに入力することにより得られた前記能力に関するパラメータを平均化し、前記平均化したパラメータに基づいて前記推奨負荷データを決定してよい。
 また、前記取得部は、前記負荷データ及び前記動作データの組を複数組取得してよく、前記決定部は、前記負荷データ及び前記動作データの組のそれぞれを前記推定モデルに入力することにより得られたそれぞれの前記能力に関するパラメータに基づいて複数の推奨負荷データを算出し、さらに前記複数の推奨負荷データを平均化して最終的な前記推奨負荷データを決定してよい。
 また、前記取得部は、前記負荷データ及び前記動作データの組とそれに対応する実際の動作結果に関する実測パラメータを取得してよく、前記決定部は、取得された前記実測パラメータにより評価される前記対象利用者の能力が前記推定モデルの出力である前記パラメータにより評価される前記対象利用者の能力よりも低い場合は、前記対象利用者にとっての負担がより小さくなるように前記推奨負荷データを決定してよい。
 また、前記決定部は、前記推奨負荷データを、前記対象利用者に対して前記負荷を与える負荷付与装置を制御するために前記負荷付与装置へ出力してよい。また、前記決定部は、所定の時間間隔で、最新の前記推奨負荷データを表示するためのデータを出力してよい。
 また、開示の推奨負荷決定装置は、前記負荷データ及び前記動作データと、前記負荷データ及び前記動作データに基づいて計算される前記利用者の能力に関するパラメータとの対応を学習することにより、前記推定モデルを生成する学習部を含んで構成してよい。
 前記学習部は、前記負荷データの次元数と、前記動作データの次元数との差が所定範囲となるように圧縮した前記動作データを用いて、前記推定モデルを生成してよい。
 開示の能力パラメータ推定モデル学習装置は、利用者に与えた負荷を表す負荷データと、当該負荷の下での前記利用者の一動作単位の動作を示す動作データと、前記動作に伴う成績データとを取得する取得部と、前記負荷データ及び前記動作データと、前記負荷データと前記成績データとに基づいて計算される、前記利用者の能力に関するパラメータとの対応を学習することにより、推奨負荷の決定対象である対象利用者についての前記負荷データ及び前記動作データの入力に対して前記対象利用者の能力に関するパラメータを出力する推定モデルを生成する学習部と、を含んで構成される。
 また、開示の推奨負荷決定方法は、利用者に与えた負荷を表す負荷データと、当該負荷の下での前記利用者の一動作単位の動作を表す動作データとに基づいて計算される、前記利用者の能力に関するパラメータを出力する推定モデルを用意し、取得部が、推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、当該負荷の下での前記対象利用者の一動作単位の動作を表す動作データとを取得し、決定部が、取得された前記負荷データ及び前記動作データを前記推定モデルに入力することにより前記推定モデルが出力する前記対象利用者の前記能力に関するパラメータに基づいて、前記対象利用者のための推奨負荷を表す推奨負荷データを決定する方法である。
 開示の推奨負荷決定プログラムは、コンピュータを、利用者に与えた負荷を表す負荷データと、当該負荷の下での前記利用者の一動作単位の動作を表す動作データとに基づいて計算される、前記利用者の能力に関するパラメータを出力する推定モデルを利用する推奨負荷決定装置として機能させるためのプログラムであって、前記コンピュータを、推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、当該負荷の下での前記対象利用者の一動作単位の動作を表す動作データとを取得する取得部、及び、取得された前記負荷データ及び前記動作データを前記推定モデルに入力することにより前記推定モデルが出力する前記対象利用者の前記能力に関するパラメータに基づいて、前記対象利用者のための推奨負荷を表す推奨負荷データを決定する決定部として機能させるためのプログラムである。
 開示の推奨負荷決定装置、能力パラメータ推定モデル学習装置、方法、及びプログラムによれば、利用者に負荷を与えて運動課題を実施させる場合に、利用者の技能向上に有益な負荷を決定することができる。
第1実施形態に係る推奨負荷決定装置の機能ブロック図である。 第1実施形態における学習データDBの一例を示す図である。 推奨負荷決定装置のハードウェア構成を示すブロック図である。 第1実施形態における学習モード処理の一例を示すフローチャートである。 第1実施形態における練習モード処理の一例を示すフローチャートである。 第2及び第3実施形態に係る推奨負荷決定装置の機能ブロック図である。 卓球ロボットの外観図である。 第2実施形態における学習データDBの一例を示す図である。 打球速度と返球率との関係を表すグラフである。 第2実施形態における推奨負荷決定処理の一例を示すフローチャートである。 学習データDBの他の例を示す図である。 学習データDBの他の例を示す図である。 第3実施形態における学習データDBの一例を示す図である。 第3実施形態における推定モデルの一例を示す図である。 ヒートマップに基づく推奨負荷データの決定を説明するための図である。 第3実施形態における推奨負荷決定処理の一例を示すフローチャートである。 第4実施形態に係る推奨負荷決定装置の機能ブロック図である。 比較用ヒートマップを説明するための図である。 相対得意不得意マップを説明するための図である。 相対得意不得意マップに基づく推奨負荷データの決定を説明するための図である。 相対得意不得意マップに基づく推奨負荷データの決定を説明するための図である。 第4実施形態における比較用ヒートマップ作成処理の一例を示すフローチャートである。 第4実施形態における決定処理の一例を示すフローチャートである。 第5実施形態に係る推奨負荷決定装置の機能ブロック図である。 第5実施形態における推定モデルの一例を示す図である。 第6実施形態に係る推奨負荷決定装置の機能ブロック図である。 実績DBの一例を示す図である。 負荷の減少方向を説明するための図である。 負荷の増加方向を説明するための図である。 第6実施形態における決定処理の一例を示すフローチャートである。 負荷の突発的な変動を説明するための図である。 推定モデルへの入力の平均化を説明するための図である。 推定モデルからの出力の平均化を説明するための図である。 動作データの次元圧縮を説明するための図である。 動作データの次元圧縮の一例を説明するための図である。 動作データの次元圧縮の一例を説明するための図である。 動作データの次元圧縮の一例を説明するための図である。
 以下、開示の技術に関する実施形態の一例を、図面を参照しつつ説明する。以下の各実施形態では、機械によって与えられた負荷に対して、利用者が所定の運動課題に応じた動作を行う場合における、利用者に与える負荷を決定する推奨負荷決定装置について説明する。運動課題は、例えば、卓球のラリーにおける返球率の向上、野球のバッティングにおける安打率の向上、リハビリテーションにおける歩行改善等である。この場合、利用者に負荷を与える機械である負荷付与装置としては、卓球の打球を返球又は送出する卓球ロボット、バッティングマシン、トレッドミル等が想定される。
 以下の各実施形態において、推定モデルの実体が処理内容を規定するデータである場合には、「モデルに入力する」、「モデルが出力する」という表現は、モデルが実装されたコンピュータ等である機能手段(モデル実行部)に入力する、同手段が出力することを指す。推定モデルの実体が処理内容を規定するデータである場合とは、例えば、推定モデルの実体がニューラルネットワークを規定する構造データ及び結合重みデータである場合である。
 なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法及び比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
<第1実施形態>
 図1に、第1実施形態に係る推奨負荷決定装置10の機能的構成を示すブロック図を示す。図1に示すように、推奨負荷決定装置10は、取得部12と、学習データDB(database)14と、学習部16と、推定モデル18と、決定部20とを含む。推奨負荷決定装置10は、推定モデル18を学習するための学習モードと、学習された推定モデル18を用いて推奨負荷を決定する練習モードとの2つのモードで動作する。
 取得部12は、学習モードにおいて、サンプルユーザに与えた負荷を表す負荷データを取得する。サンプルユーザとは、推定モデル18を学習するための学習データの収集のために運動課題を実施する利用者のことである。負荷データは、例えば、負荷付与装置が卓球ロボットやピッチングマシンの場合には、負荷付与装置から送出される打球又は投球の球速、回転、方向等である。また、負荷データは、例えば、負荷付与装置がトレッドミルの場合には、走行ベルトの速度、傾斜角度等である。取得部12は、例えば、負荷付与装置から、モータのトルク等の負荷に関する制御情報を取得したり、実際にサンプルユーザに与えられた負荷を計測したりすることにより負荷データを取得することができる。
 なお、利用者に与える負荷を規定する値は、上記の「球速、回転、方向等」のように複数の項目を含む場合がある。取得部12は、負荷を与える際に変動させる項目、すなわち、推奨負荷として決定する項目に応じて、複数項目のうちの1項目の負荷データを取得してもよいし、複数項目の負荷データを取得してもよい。
 また、取得部12は、学習モードにおいて、負荷の下でのサンプルユーザの一動作単位の動作を表す動作データを取得する。一動作単位とは、例えば、卓球や野球のバッティングの運動課題の場合、1スイングを示す動作であり、歩行訓練の場合、所定歩数分(例えば、1歩又は2歩)の歩行動作である。動作データは、例えば、サンプルユーザ若しくはサンプルユーザが動作を行う際に保持する器具の特定部位の変位データ、サンプルユーザの筋活動量データ、又は、それらの微分データ若しくは積分データ等である。取得部12は、動作を行うサンプルユーザをカメラで撮影した画像を画像解析したり、サンプルユーザに装着した筋電位センサからの出力値をデータ処理したりすることにより、動作データを取得することができる。
 また、取得部12は、学習モードにおいて、負荷の下でのサンプルユーザの動作に伴う成績データを取得する。成績データは、卓球の運動課題の場合には返球率、野球のバッティングの運動課題の場合には安打率等である。取得部12は、これらの成績データを、例えば、カメラで撮影した画像を画像解析したり、各種センサからの出力値をデータ処理したりすることにより取得することができる。また、取得部12は、学習モードにおいては、人手により入力された成績データを取得してもよい。
 取得部12は、学習モードにおいて取得した、サンプルユーザ毎の負荷データ、動作データ、及び成績データを、例えば図2に示すような学習データDB14に記憶する。図2の例では、「ユーザNo.」は、サンプルユーザを個別に特定可能な識別番号である。また、「試行No.」は、各サンプルユーザについて、一動作単位の動作を伴う試行を1回の試行とし、各データが何回目の試行におけるデータかを示す番号である。図2の例では、各サンプルユーザについて、100回分の試行についての負荷データ、動作データ、及び成績データが記憶された例を示している。なお、図2における「能力パラメータ」については後述する。
 また、取得部12は、練習モードにおいて、推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、その負荷の下での対象利用者の一動作単位の動作を表す動作データとを取得する。負荷データ及び動作データの詳細は、上記の学習モードにおいて取得する負荷データ及び動作データと同様である。なお、サンプルユーザと対象利用者とを区別なく説明する場合には、単に「利用者」という。
 学習部16は、学習モードにおいて機能する機能部である。学習部16は、学習データDB14に記憶された負荷データと成績データとに基づいて、運動課題に対する各サンプルユーザの能力に関するパラメータ(以下、「能力パラメータ」という)を計算する。能力パラメータは、例えば、動作についての成績データが示す成功見込みが所定の基準より大きくなる、1つの負荷項目についての負荷の値の範囲の中で、サンプルユーザにとっての負担が最も大きい負荷の値を表す限界負荷データとすることができる。また、能力パラメータは、負荷と、動作についての成功見込みの大きさとの関係を表すパラメータであってもよい。また、このパラメータは、1つの負荷項目についての負荷の値と成功見込みの大きさとの関係を表すグラフを特定するパラメータとすることができる。また、このパラメータは、複数の負荷項目についての負荷の値と成功見込みの大きさとの関係を表すヒートマップを特定するパラメータとすることができる。ここで、「成功見込み」は、成功の可能性の大きさを表すパラメータであり、例えば、予測される成功率、予測される成績値が該当する。成績値の例としては、後述の卓球についての実施形態における着弾位置の誤差の大きさがある。着弾位置の誤差の場合には、予測される誤差が小さいほど成功見込みは大きい。また、利用者にとっての「負担」は、利用者にとっての難度のことであり、負担が大きいほど成功見込みは小さくなる。例えば卓球の実施形態の場合であれば一般に卓球ロボットからの送球の球速(負荷)が大きいほど負担が大きくなり成功見込みが小さくなる。
 学習部16は、サンプルユーザ毎に計算した能力パラメータを、学習データDB14の「能力パラメータ」欄に記憶する。学習データDB14に記憶された、負荷データ及び動作データと、能力パラメータとの各組が、推定モデル18を学習するための各学習データとなる。学習部16は、負荷データ及び動作データと、能力パラメータとの対応を学習することにより、推奨負荷の決定対象である対象利用者についての負荷データ及び動作データの入力に対して、対象利用者の能力パラメータを推定して出力する推定モデル18を生成する。推定モデル18は、例えば、ニューラルネットワーク等で構成される。
 決定部20は、練習モードにおいて機能する機能部である。決定部20は、取得部12により取得された対象利用者についての負荷データ及び動作データを推定モデル18に入力する。そして、決定部20は、推定モデル18が出力する対象利用者の能力パラメータに基づいて、対象利用者のための推奨負荷を表す推奨負荷データを決定する。上記のように、能力パラメータとして限界負荷データが推定モデル18から出力される場合、決定部20は、その限界負荷データを推奨負荷データとして決定する。また、上記のように、能力パラメータとして、負荷と動作についての成功見込みの大きさとの関係を表すパラメータが出力される場合、決定部20は、その能力パラメータに基づいて推奨負荷データを決定する。
 例えば、決定部20は、能力パラメータにより特定されるグラフにおいて、成功見込みが所定の基準より大きくなる負荷の値の範囲の中で、対象利用者にとっての負担が最も大きい負荷の値を表す限界負荷データを推奨負荷データとして決定することができる。また、決定部20は、能力パラメータにより特定されるヒートマップにおいて、成功見込みが所定の基準より大きくなる負荷の値の組を推奨負荷データとして決定することができる。決定部20は、決定した推奨負荷データを出力する。出力された推奨負荷データは、負荷付与装置を制御する制御情報として利用されてもよいし、表示装置に表示することにより、対象利用者及び対象利用者の指導者等に提示されてもよい。
 図3に、第1実施形態に係る推奨負荷決定装置10のハードウェア構成を示すブロック図を示す。図3に示すように、推奨負荷決定装置10は、CPU(Central Processing Unit)32、メモリ34、記憶装置36、入力装置38、出力装置40、記憶媒体読取装置42、及び通信I/F(Interface)44を有する。各構成は、バス46を介して相互に通信可能に接続されている。
 記憶装置36には、後述する学習モード処理及び練習モード処理の各々を実行するための推奨負荷決定プログラムが格納されている。CPU32は、中央演算処理ユニットであり、各種プログラムを実行したり、各構成を制御したりする。すなわち、CPU32は、記憶装置36からプログラムを読み出し、メモリ34を作業領域としてプログラムを実行する。CPU32は、記憶装置36に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。
 メモリ34は、RAM(Random Access Memory)により構成され、作業領域として一時的にプログラム及びデータを記憶する。記憶装置36は、ROM(Read Only Memory)、及びHDD(Hard Disk Drive)、SSD(Solid State Drive)等により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
 入力装置38は、例えば、キーボードやマウス等の、各種の入力を行うための装置である。出力装置40は、例えば、ディスプレイやプリンタ等の、各種の情報を出力するための装置である。出力装置40として、タッチパネルディスプレイを採用することにより、入力装置38として機能させてもよい。記憶媒体読取装置42は、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM、ブルーレイディスク、USB(Universal Serial Bus)メモリ等の各種記憶媒体に記憶されたデータの読み込みや、記憶媒体に対するデータの書き込み等を行う。
 通信I/F44は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
 次に、第1実施形態に係る推奨負荷決定装置10の作用について説明する。
 図4は、推奨負荷決定装置10のCPU32により実行される学習モード処理の流れを示すフローチャートである。学習モードが選択されると、CPU32が記憶装置36から推奨負荷決定プログラムを読み出して、メモリ34に展開して実行することにより、CPU32が推奨負荷決定装置10の各機能構成として機能し、図4に示す学習モード処理が実行される。
 ステップS10で、取得部12が、複数のサンプルユーザの各々について、試行毎の負荷データ、動作データ、及び成績データを取得し、学習データDB14に記憶する。
 次に、ステップS12で、学習部16が、学習データDB14に記憶されたデータに基づいて、サンプルユーザ毎に、負荷データ及び成績データから、能力パラメータを計算し、学習データDB14に記憶する。
 次に、ステップS14で、学習部16が、負荷データ及び動作データと、能力パラメータとの対応を学習することにより、対象利用者についての負荷データ及び動作データの入力に対して、対象利用者の能力パラメータを出力する推定モデル18を生成する。学習部16は、生成した推定モデル18を推奨負荷決定装置10の所定の記憶領域に記憶し、学習モード処理は終了する。
 図5は、推奨負荷決定装置10のCPU32により実行される練習モード処理の流れを示すフローチャートである。練習モードが選択されると、CPU32が記憶装置36から推奨負荷決定プログラムを読み出して、メモリ34に展開して実行することにより、CPU32が推奨負荷決定装置10の各機能構成として機能し、図5に示す練習モード処理が実行される。なお、練習モード処理は、開示の推奨負荷決定方法の一例である。
 ステップS20で、取得部12が、対象利用者について、今回試行時の負荷データ及び動作データを取得する。次に、ステップS22で、決定部20が、取得部12により取得された対象利用者についての負荷データ及び動作データを推定モデル18に入力し、対象利用者の能力パラメータを推定する。
 次に、ステップS24で、決定部20が、推定モデル18により推定され出力された対象利用者の能力パラメータに基づいて、対象利用者の次回試行時のための推奨負荷を表す推奨負荷データを決定して出力し、練習モード処理は終了する。
 練習モード処理が試行毎に繰り返し実行されることにより、繰り返し推奨負荷が決定されるため、対象利用者に、連続的に運動課題を実施させることができる。
 以上説明したように、第1実施形態に係る推奨負荷決定装置は、対象利用者に与えた負荷を表す負荷データと、その負荷の下での対象利用者の一動作単位の動作を表す動作データとを取得する。また、推奨負荷決定装置は、取得された負荷データ及び動作データを、負荷データ及び動作データの入力に対して、利用者の能力パラメータを推定して出力する推定モデルに入力することにより、対象利用者の能力パラメータを推定する。そして、推奨負荷決定装置は、推定した対象利用者の能力パラメータに基づいて、対象利用者のための推奨負荷を表す推奨負荷データを決定する。これにより、利用者に負荷を与えて運動課題を実施させる場合に、利用者の技能向上に有益な負荷を決定することができる。
 第1実施形態は、以下のように変形してもよい。第1実施形態に係る推奨負荷決定装置10は、学習モードと練習モードとを備えるが、練習モードのみを備えて学習モードを備えない推奨負荷決定装置10としてもよい。この場合、推奨負荷決定装置10は、学習に必要な学習データDB14及び学習部16を備えない。取得部12は、サンプルユーザの負荷データ、動作データ、及び成績データを取得しない。
 第1実施形態に係る推奨負荷決定装置10は、学習部16を内蔵せず、ネットワーク上のサーバ等の外部に設けられた学習機能を通信によって利用するようにしてもよい。また、学習データDB14を内蔵せず、外部に設けられた学習データDBに対して記録させるデータを送信するようにしてもよい。
 第1実施形態に係る推奨負荷決定装置10は、学習済みの推定モデル18を外部から取得して利用するようにしてもよい。また、外部に設けられた学習済みの推定モデルを通信により利用するようにしてもよい。
 以上の第1実施形態についての変形は、第2実施形態以降の各実施形態についても同様に適用することができる。
<第2実施形態>
 次に、第2実施形態について説明する。第2実施形態では、卓球のラリーにおける返球率の向上を運動課題とし、利用者に与える負荷が、卓球ロボットからのボールの送出又は返球であり、利用者の動作が、卓球ロボットからの打球を返球するためのスイングである場合について説明する。
 図6に、第2実施形態に係る推奨負荷決定装置210の機能的構成を示すブロック図を示す。図6に示すように、推奨負荷決定装置210は、卓球ロボット60、センサ70、及びセンサ72の各々と接続されている。
 図7に、卓球ロボット60の外観図を示す。卓球ロボット60は、図示しない利用者が打った卓球のボールBLが卓球台TBでバウンドして飛来するボールBLを、打撃具としてのラケットRKで打ち返すロボットである。なお、本実施形態では、利用者に対して与える負荷、すなわち、特定の負荷でボールBLを送出又は返球する点に着目するものであるため、利用者からの返球を認識する機能については、詳細な説明を省略する。
 図7に示すように、卓球ロボット60は、ラケットRKを支持して運動させるための可動部62を備える。可動部62は、図7の例では、3本のロボットアーム64A、64B、64C、及びラケットRKの支持部66を含む。すなわち、可動部62は、所謂パラレルリンクロボットであり、ロボットアーム64A、64B、64Cを並列に制御することにより、ロボットアーム64A、64B、64Cの先端の支持部66に支持されたラケットRKの挙動を制御するロボットである。支持部66は、ラケットRKの姿勢を変更するための駆動機構を備えている。なお、可動部62は、パラレルリンクロボットに限られるものではなく、他のタイプのロボットであってもよい。卓球ロボット60は、図示しない制御部により、制御情報として指定された打球速度でボールBLを返球するように、駆動機構を制御する。「打球速度」は、負荷データの一例である。
 また、卓球ロボット60には、カメラ74A、74B、74Cが設置されている。カメラ74A、74Bは、利用者を各々異なる角度から撮影可能な位置に設置されており、予め定めたフレームレートで撮影する。カメラ74A、74Bは、所謂ステレオカメラとして機能する。センサ70は、カメラ74A、74Bと、図示しない画像解析部とで構成されている。センサ70は、カメラ74A、74Bで撮影された画像をフレーム毎に画像解析することにより、利用者の骨格情報を出力する。骨格情報は、利用者の各関節(関節1~関節n)の3次元位置(X,Y,Z)の時系列データである。なお、骨格情報に含める関節としては、スイング動作の特定に必要な関節、例えば、利き腕の肩、肘、及び手首に限定してもよい。また、利用者の関節に限らず、利用者が保持するラケットRKの面の中央の3次元位置などを含めてもよい。「骨格情報」は、動作データの一例である。
 カメラ74Cは、卓球台TBの面を撮影可能な位置に設置されている。センサ72は、カメラ74Cと、図示しない画像解析部とで構成されている。センサ72は、カメラ74Cで撮影された画像を画像解析することにより、利用者による返球の、卓球台TBに対する着弾位置を検出し、予め設定された位置(例えば、卓球台TBの中心)と着弾位置との誤差(以下、「返球誤差」という)を算出して出力する。「返球誤差」は、成績データの一例である。
 図6に示すように、推奨負荷決定装置210は、機能的には、取得部212と、学習データDB214と、学習部216と、推定モデル218と、決定部220とを含む。
 取得部212は、学習モードにおいて、サンプルユーザに与えた負荷を示す負荷データとして、卓球ロボット60から送出(返球)される打球の打球速度を卓球ロボット60から取得する。例えば、取得部212は、卓球ロボット60の駆動機構を制御するために設定された制御情報又はカメラ74A、74Bで撮影された画像の解析結果から打球速度を取得することができる。また、取得部212は、図示しないセンサにより、卓球ロボット60から送出される打球の速度を計測し、センサから出力される計測値が示す打球速度を取得してもよい。
 また、取得部212は、学習モードにおいて、サンプルユーザの動作データとして、センサ70が出力するサンプルユーザの骨格情報を取得する。さらに、取得部212は、学習モードにおいて、サンプルユーザの動作に伴う成績データとして、センサ72が出力する返球誤差を取得する。
 取得部212は、取得した打球速度、骨格情報、及び返球誤差を学習データDB214に記憶する。図8に、学習データDB214の一例を示す。学習データDB214に記憶される項目は、第1実施形態における学習データDB14の場合と同様である。
 また、取得部212は、練習モードにおいて、対象利用者に与えた負荷を表す負荷データである打球速度と、その打球に対する対象利用者の返球のスイングの動作を表す動作データである骨格情報とを取得する。打球速度及び骨格情報の取得方法の詳細は、上記の学習モードと同様である。なお、取得部212は、対象利用者に対する打球速度として、後述する決定部220において決定される推奨負荷が示す打球速度を取得してもよい。
 学習部216は、各サンプルユーザの能力パラメータとして、限界負荷データの一例である返球可能最大球速を計算する。具体的には、学習部216は、学習データDB214に記憶されたサンプルユーザ毎の学習データから、サンプルユーザによる返球率を、打球速度毎に計算する。より具体的には、学習部216は、返球誤差が所定値(例えば、75cm)以下の場合を成功とし、打球速度v±α[m/sec]の全試行回数に対する、返球が成功している試行回数の割合を、その打球速度vにおける返球率として計算する。例えば、ユーザNo.1のサンプルユーザについて、打球速度が2.5~3.5m/secに含まれる試行回数が10回、そのうちの返球が成功している試行回数が5回であったとする。この場合、学習部216は、ユーザNo.1のサンプルユーザについて、打球速度3m/secの返球率を50%と計算する。学習部216は、各打球速度について同様に返球率を計算する。そして、学習部216は、図9に示すような、打球速度と返球率との関係を表すグラフを作成し、このグラフから、返球率が所定値(例えば、85%)以下で、かつ最大の打球速度を、返球可能最大球速として求める。学習部216は、各サンプルユーザについて求めた返球可能最大球速を、図8に示すように、学習データDB214に記憶する。
 学習部216は、サンプルユーザについての打球速度及び骨格情報と、能力パラメータとの対応を学習する。これにより、対象利用者についての打球速度及び骨格情報の入力に対して、対象利用者の能力パラメータである返球可能最大球速を推定して出力する推定モデル218を生成する。
 決定部220は、取得部212により取得された対象利用者についての打球速度及び骨格情報を推定モデル218に入力する。そして、決定部220は、推定モデル218が出力する返球可能最大球速を、対象利用者のための推奨負荷データとして決定し、卓球ロボット60へ出力する。これにより、卓球ロボット60では、推奨負荷データが制御情報として設定され、次回試行時に、その推奨負荷データが示す打球速度で打球を送出(返球)するように制御される。
 推奨負荷決定装置210のハードウェア構成は、図3に示す、第1実施形態に係る推奨負荷決定装置10のハードウェア構成と同様であるため、説明を省略する。なお、記憶装置36には、後述する推奨負荷決定処理を実行するための推奨負荷決定プログラムが格納されている。
 次に、第2実施形態に係る推奨負荷決定装置210の作用について説明する。
 図10は、推奨負荷決定装置210のCPU32により実行される推奨負荷決定処理の流れを示すフローチャートである。CPU32が記憶装置36から推奨負荷決定プログラムを読み出して、メモリ34に展開して実行することにより、CPU32が推奨負荷決定装置210の各機能構成として機能し、図10に示す推奨負荷決定処理が実行される。なお、推奨負荷決定処理は、開示の推奨負荷決定方法の一例である。
 ステップS200で、取得部212が、選択されているモードが学習モードか否かを判定する。学習モードが選択されている場合には、ステップS202へ移行し、練習モードが選択されている場合には、ステップS214へ移行する。
 ステップS202では、取得部212が、卓球ロボット60に打球の送出(返球)を指示する。本ステップで送出される打球の打球速度は、同一のサンプルユーザに対して、ステップ毎に、初期値から段階的に変化させた打球速度となるように、卓球ロボット60に制御情報を設定しておけばよい。
 次に、ステップS204で、取得部212が、上記ステップS202における指示により送出された打球の打球速度と、その打球に対するサンプルユーザの返球時のスイングを示す骨格情報及び返球誤差を取得し、学習データDB214に記憶する。
 次に、ステップS206で、取得部212が、該当のサンプルユーザについての試行回数が所定回数(例えば、100回)以上となったか否かを判定する。この所定回数は、各サンプルユーザについての学習データ数として必要な回数を予め定めておけばよい。試行回数が所定回数以上の場合には、ステップS208へ移行し、所定回数未満の場合には、ステップS202に戻る。
 ステップS208では、学習部216が、学習データDB214に記憶された、該当のサンプルユーザの学習データから、打球速度毎の返球率を計算する。そして、学習部216が、打球速度と返球率との関係を表すグラフから、返球率が所定値(例えば、85%)以下となる打球速度を、返球可能最大球速として求め、学習データDB214に記憶する。
 次に、ステップS210で、学習部216が、推定モデル218を生成可能な数のサンプルユーザ数分の学習データが学習データDB214に記憶されているか否かを判定する。推定モデル218を生成可能な場合には、ステップS212へ移行し、推定モデル218の生成のために十分な学習データが記憶されていない場合には、推奨負荷決定処理は終了する。
 ステップS212では、学習部216が、サンプルユーザについての打球速度及び骨格情報と、能力パラメータとの対応を学習することにより、推定モデル218を生成し、推奨負荷決定処理は終了する。
 一方、練習モードが選択されているとして、ステップS214に移行した場合、決定部220が、推定モデル218が生成済みか否かを判定する。推定モデル218が生成済みの場合には、ステップS216へ移行し、未生成の場合には、ステップS202へ移行する。
 ステップS216では、取得部212が、卓球ロボット60に、打球速度を初期値に設定して打球の送出を開始するように指示する。次に、ステップS218で、取得部212が、上記ステップS216における指示により卓球ロボット60から送出された打球の打球速度、及び、その打球に対する対象利用者の返球時のスイングを示す骨格情報を取得する。
 次に、ステップS220で、決定部220が、取得部212により取得された対象利用者についての打球速度及び骨格情報を推定モデル218に入力し、対象利用者の返球可能最大球速を推定する。
 次に、ステップS222で、決定部220が、上記ステップS220で推定した返球可能最大球速を、対象利用者のための推奨負荷データとして決定し、卓球ロボット60へ、推奨負荷データが示す返球可能最大球速での返球を指示する。
 次に、ステップS224で、決定部220が、運動課題を終了するか否かを判定する。例えば、対象利用者からの返球が無かった場合や、運動課題の終了を示すコマンドが入力された場合には、運動課題を終了すると判定し、推奨負荷決定処理は終了する。一方、運動課題を終了しない場合には、ステップS218に戻り、上記ステップS222における指示により卓球ロボット60から送出(返球)された打球の打球速度、及び、その打球に対する対象利用者の返球時のスイングを示す骨格情報を取得する処理を繰り返す。
 以上説明したように、第2実施形態に係る推奨負荷決定装置では、卓球ロボットを使用した返球率向上の運動課題において、対象利用者が返球可能な範囲で、できるだけ速い打球が送出されるため、対象利用者の技能向上に有益な負荷を与えることができる。
 なお、第2実施形態では、卓球ロボットを使用した返球率向上の運動課題のための推奨負荷を決定する例について説明したが、これに限定されない。第1実施形態で例示したような、バッティングマシンを使用した安打率向上の運動課題や、トレッドミルを使用したリハビリテーションにおける歩行改善の運動課題についても、第2実施形態と同様に具体化した実施形態として実現可能である。
 図11に、バッティングマシンを使用した安打率向上の運動課題の場合の学習データDB214Aの一例を示す。この場合、負荷データとしては、バッティングマシンから送出されるボールの投球球速が取得される。また、動作データとしては、投球に対する利用者のバッティング時のスイングを示す骨格情報が取得される。また、成績データとしては、バッティングの結果(安打又は凡打)が取得される。そして、図9に示すグラフと同様に、投球球速と安打率との関係から、安打率が所定値(例えば、85%)以下となる投球球速を、安打可能最大球速として求め、これを能力パラメータとすることができる。図11に示すような学習データから、対象利用者が安打可能な範囲で、できるだけ速い球速を推奨負荷データとして推定する推定モデルを生成することができる。
 図12に、トレッドミルを使用したリハビリテーションにおける歩行改善の運動課題の場合の学習データDB214Bの一例を示す。この場合、負荷データとしては、トレッドミルの走行ベルトの速度が取得される。また、動作データとしては、走行ベルト上を歩行する利用者の骨格情報が取得される。また、成績データとしては、例えば、骨格情報に基づいて一動作中における重心のばらつきが取得される。なお、成績データは重心のばらつきに限定されるものではなく、転倒することなく歩行可能な動作を評価可能な指標であればよい。そして、図9に示すグラフと同様に、走行ベルトの速度と重心のばらつきとの関係から、重心のばらつきが所定値以上となる走行ベルトの速度を、歩行可能最大速度として求め、これを能力パラメータとすることができる。なお、所定値は、その値以上に重心がばらつくと転倒の恐れがある値を予め定めておけばよい。図12に示すような学習データから、対象利用者が転倒することなく歩行可能な範囲で、できるだけ速い走行ベルトの速度を推奨負荷データとして推定する推定モデルを生成することができる。
 なお、第2実施形態では、決定した推奨負荷データを卓球ロボットへ出力する場合、すなわち、対象利用者に対して負荷を与える負荷付与装置を制御するために負荷付与装置へ出力する場合について説明したが、これに限定されない。例えば、所定の時間間隔で、最新の推奨負荷データを表示装置に表示するためのデータを、表示装置へ出力するようにしてもよい。例えば、対象利用者の指導等を行うトレーナや理学療法士等の指導者に、決定した推奨負荷データを提示し、指導者の判断の下で、負荷に関する制御情報を負荷付与装置に設定するようにしてもよい。これにより、特に、運動課題がリハビリテーションに関連するものである場合などにおいて、対象利用者の安全性を考慮することができる。
 また、第2実施形態では、能力パラメータとして、限界負荷データの一例である返球可能最大球速を推定する場合について説明したが、これに限定されない。例えば、図9に示すようなグラフを特定するパラメータを、能力パラメータとして推定し、このグラフに基づいて、推奨負荷データを決定するようにしてもよい。例えば、返球率が所定範囲(例えば、80%~85%)に含まれる負荷からランダムに推奨負荷データを決定してもよい。又は、返球率が所定範囲に含まれる負荷の平均、中央値、最頻値等の統計値を、推奨負荷データとして決定してもよい。
<第3実施形態>
 次に、第3実施形態について説明する。第3実施形態では、第2実施形態と同様に、卓球のラリーにおける返球率の向上を運動課題とし、利用者に与える負荷が、卓球ロボットからの返球であり、利用者の動作が、卓球ロボットからの打球を返球するためのスイングである場合について説明する。
 図6に示すように、第3実施形態に係る推奨負荷決定装置310は、機能的には、取得部312と、学習データDB314と、学習部316と、推定モデル318と、決定部320とを含む。
 取得部312は、第2実施形態の取得部212と同様に、学習モードにおいて、負荷データ、動作データ、及び成績データを取得し、練習モードにおいて、負荷データ及び動作データを取得する。動作データは、第2実施形態と同様に利用者の骨格情報であり、成績データは、第2実施形態と同様に返球誤差である。
 第3実施形態では、負荷を多次元化し、取得部312は、複数項目の負荷データを取得する。例えば、取得部312は、第2実施形態と同様の打球速度に加え、打球の回転速度を示す打球回転、及び相対位置を複数項目の負荷データとして取得する。相対位置は、卓球ロボット60から返球されたボールBLの卓球台TBへの着弾位置と利用者の位置との相対位置である。取得部312は、これらの負荷データを、卓球ロボット60に設定される制御情報から取得することができる。また、図示しないセンサにより、ボールBLの着弾位置及び利用者の位置、打球回転等を検出して、負荷データを取得してもよい。
 取得部312は、取得した打球速度、打球回転、相対位置、骨格情報、及び返球誤差を学習データDB314に記憶する。図13に、学習データDB314の一例を示す。学習データDB314の項目は、負荷データが複数項目になっている点を除いて、第2実施形態における学習データDB214と同様である。
 学習部316は、各サンプルユーザの能力パラメータとして、複数項目の負荷データの各々の負荷の値と、その負荷データが示す負荷が与えられたときの返球率との関係を示すヒートマップを計算する。具体的には、学習部316は、負荷データの値を複数段階に割り振る。例えば、2.5~3.5m/secの打球速度を3m/secとする。学習部316は、打球速度、打球回転、及び相対位置の各々の割り振り後の値の組毎に、第2実施形態と同様に返球率を計算する。そして、学習部316は、打球速度、打球回転、及び相対位置の各々を各軸とするヒートマップにおいて、各組の負荷データの値に対応するセルに、計算した返球率を格納することにより、ヒートマップを求め、図13に示すように、学習データDB314の「能力パラメータ」欄に記憶する。なお、図13の例では、ヒートマップの返球率を濃淡で表している。
 学習部316は、サンプルユーザについての複数項目の負荷データ(打球速度、打球回転、相対位置)及び骨格情報と、能力パラメータとの対応を学習する。これにより、学習部316は、対象利用者についての複数の負荷データ及び骨格情報の入力に対して、対象利用者の能力パラメータであるヒートマップを推定して出力する推定モデル318を生成する。推定モデル318は、例えば図14に示すようなニューラルネットワークで実現することができる。この場合、入力層の各ニューロンへの入力は、複数項目の負荷データと骨格情報とを合わせた多次元のデータの各要素が対応し、出力層の各ニューロンからの出力は、ヒートマップの各セルの値に対応する。
 決定部320は、取得部312により取得された対象利用者についての複数項目の負荷データ(打球速度、打球回転、相対位置)及び骨格情報を推定モデル318に入力することにより、対象利用者についてのヒートマップを推定する。そして、決定部320は、推定したヒートマップに基づいて、次回試行時の推奨負荷データを決定する。また。決定部320は、推定したヒートマップを可視化して表示するためのデータを出力してもよい。
 推奨負荷データの決定方法について、図15に示すヒートマップを用いて説明する。なお、図15では、説明を簡単にするため、2つの項目の負荷データ(打球速度及び相対位置)についての2次元のヒートマップを用いて説明する。以降の図18~図21、図28、及び図29についても同様である。決定部320は、ヒートマップにおいて、返球率が所定値(例えば、85%)以上となるセル(図15中の網掛のセル)を特定する。決定部320は、特定したセルが示す範囲に含まれる負荷データの値の組み合わせから、推奨負荷データを決定する。
 例えば、決定部320は、特定したセルのうち、返球率が最小のセルを選択して、そのセルが示す範囲に含まれる負荷データの値の組み合わせから、推奨負荷データを決定することができる。例えば、決定部320は、図15中の丸印で示すセルを選択し、打球速度が4m/sec、相対位置が-0.3mという推奨負荷データを決定することができる。なお、各セルに対応する負荷データの値は幅を持った値であるため、その幅の中で、中央値、最大値、又は最小値を選択するように予め定めておくことができる。また、最小値から最大値の範囲でランダムに値を決定するように定めておいてもよい。
 また、対象利用者の技能向上を目的としていることから、より厳しめの負荷を与えるように推奨負荷データを決定してもよい。具体的には、決定部320は、ヒートマップにおいて、返球率が所定値以上となるセルのうち、返球率が所定値未満となるセルに隣接するセル(図15中の丸印又は三角印で示すセル)が示す範囲の値から推奨負荷データを決定することができる。より厳密には、決定部320は、ヒートマップにおいて、返球率が所定値以上となるセルと、所定値未満となるセルとの境界(図15中の太線)上の値から、推奨負荷データを決定することができる。決定部320は、決定した負荷データを卓球ロボット60へ出力する。これにより、卓球ロボット60では、推奨負荷データが制御情報として設定され、次回試行時に、その推奨負荷データが示す打球速度、打球回転、及び相対位置で打球を送出(返球)するように制御される。
 推奨負荷決定装置310のハードウェア構成は、図3に示す、第1実施形態に係る推奨負荷決定装置10のハードウェア構成と同様であるため、説明を省略する。なお、記憶装置36には、後述する推奨負荷決定処理を実行するための推奨負荷決定プログラムが格納されている。
 次に、第3実施形態に係る推奨負荷決定装置310の作用について説明する。
 図16は、推奨負荷決定装置310のCPU32により実行される推奨負荷決定処理の流れを示すフローチャートである。CPU32が記憶装置36から推奨負荷決定プログラムを読み出して、メモリ34に展開して実行することにより、CPU32が推奨負荷決定装置310の各機能構成として機能し、図16に示す推奨負荷決定処理が実行される。なお第3実施形態における推奨負荷決定処理において、第2実施形態における推奨負荷決定処理(図10)と同様の処理については、同一のステップ番号を付して詳細な説明を省略する。
 ステップS200で肯定判定され、ステップS202以降の学習モードの処理へ移行した場合、第2実施形態の推奨負荷決定処理のステップS204に替えて、ステップS304の処理が実行される。ステップS304では、取得部312が、複数項目の負荷データ(打球速度、打球回転、相対位置)、骨格情報、及び返球誤差を取得して、学習データDB314に記憶する。
 また、第2実施形態の推奨負荷決定処理のステップS208に替えて、ステップS308の処理が実行される。ステップS308では、学習部316が、各サンプルユーザの能力パラメータとして、複数項目の負荷データの各々の負荷の値と、その負荷データが示す負荷が与えられたときの返球率との関係を示すヒートマップを計算する。
 一方、ステップS200で否定判定され、ステップS214以降の練習モードの処理へ移行し、ステップS214で、推定モデル318が生成済みであると判定された場合、ステップS316へ移行する。
 ステップS316では、取得部312が、卓球ロボット60に、打球速度、打球回転、及び相対位置の各々を初期値に設定して打球の送出を開始するように指示する。次に、ステップS318で、取得部312が、上記ステップS316における指示により卓球ロボット60から送出された打球の打球速度、打球回転、及び相対位置と、その打球に対する対象利用者の返球時のスイングを示す骨格情報とを取得する。
 次に、ステップS320で、決定部320が、取得部312により取得された対象利用者についての複数項目の負荷データ(打球速度、打球回転、相対位置)及び骨格情報を推定モデル318に入力し、対象利用者のヒートマップを推定する。次に、ステップS321で、決定部320が、推定したヒートマップに基づいて、次回試行時の推奨負荷データを決定する。
 次に、ステップS322で、決定部320が、卓球ロボット60へ、上記ステップS321で決定した推奨負荷データが示す打球速度、打球回転、及び相対位置での返球を指示する。
 以上説明したように、第3実施形態に係る推奨負荷決定装置では、卓球ロボットを使用した返球率向上の運動課題において、対象利用者が返球可能な範囲で、複数項目を組み合わせた負荷を対象利用者に与えることができる。また、返球可能な範囲のうち、利用者にとっての負担がより大きくなるような負荷を選択することで、対象利用者の技能向上に有益な負荷を与えることができる。
<第4実施形態>
 次に、第4実施形態について説明する。第4実施形態では、第3実施形態と同様に、卓球のラリーにおける返球率の向上を運動課題とし、利用者に与える負荷が、卓球ロボットからの返球であり、利用者の動作が、卓球ロボットからの打球を返球するためのスイングである場合について説明する。第3実施形態では、図15を用いて説明したように、返球率が所定値以上の負荷データの範囲を特定し、この範囲から、推奨負荷データの値を決定する場合について説明した。次回試行時のための推奨負荷データは、複数項目の負荷データ1組の値であるが、特定した範囲には、複数の負荷の値の組が推奨負荷データの候補として含まれる。そこで、第4実施形態では、より有益な推奨負荷データを決定することができるように、特定した範囲から決定する推奨負荷データを絞り込む手法について説明する。
 図17に示すように、第4実施形態に係る推奨負荷決定装置410は、機能的には、取得部412と、学習データDB314と、学習部416と、比較用ヒートマップDB422と、推定モデル318と、決定部420とを含む。
 取得部412は、第3実施形態に係る取得部312と同様に、学習モードにおいて、複数項目の負荷データ、動作データ、及び成績データを取得し、練習モードにおいて、複数項目の負荷データ及び動作データを取得する。例えば、複数項目の負荷データは、打球速度、打球回転、及び相対位置であり、動作データは利用者の骨格情報であり、成績データは返球誤差である。さらに、取得部412は、練習モードにおいて、対象利用者が、自身の得意な部分を練習したいか、不得意な部分を練習したいかを示す得意/不得意の指定を取得する。この指定は、入力装置38を介して推奨負荷決定装置410に入力される。
 学習部416は、第3実施形態の学習部316と同様に、サンプルユーザ毎の能力パラメータとしてヒートマップを計算し、推定モデル318を生成する。さらに、学習部416は、他の利用者と比較して対象利用者が相対的に得意とする負荷の範囲を示す相対得意範囲、及び相対的に不得意とする負荷の範囲を示す相対不得意範囲を特定するための比較用ヒートマップを作成する。得意とは、対象利用者が他の利用者よりも成功見込みが大きいことであり、不得意とは、対象利用者が他の利用者よりも成功見込みが小さいことである。
 具体的には、学習部416は、学習データDB314に学習データが記憶されているサンプルユーザの各々を、運動課題に対する能力に応じてレベル分けする。このレベル分けは人手で行ってもよいし、学習部416が推定モデル318の生成の過程で計算した能力パラメータを用いて行ってもよい。例えば、学習部416は、ヒートマップの総セル数に対する、返球率が所定値(例えば、85%)以上のセル数の割合に応じて定義されるレベルの段階に基づいて、各サンプルユーザのレベルを判定する。レベルの段階数は、サンプルユーザの数等に応じて、適宜設定しておけばよい。そして、学習部416は、図18に示すように、同一レベルの各サンプルユーザについて計算されたヒートマップから、各レベルの典型となるヒートマップを計算する。学習部416は、例えば、同一レベルのサンプルユーザのヒートマップの各セルの値の平均値、中央値、最頻値等の統計値を、典型のヒートマップの各セルの値として計算する。そして、学習部416は、各レベルについて計算した典型のヒートマップを、比較用ヒートマップとして、比較用ヒートマップDB422に記憶する。
 決定部420は、第3実施形態の決定部320と同様に、推定モデル318を用いて、対象利用者のヒートマップを推定する。そして、決定部420は、対象利用者のヒートマップと比較用ヒートマップとを比較して、対象利用者の相対得意範囲及び相対不得意範囲を特定するための相対得意不得意マップを作成する。決定部420は、作成した相対得意不得意マップにおける、相対得意範囲又は相対不得意範囲の中の負荷の値の組を、推奨負荷データとして決定する。
 具体的には、決定部420は、対象利用者のヒートマップに基づいて、対象利用者のレベルを判定し、対象利用者と同レベル又は1ランク上のレベルの典型のヒートマップを、比較用ヒートマップとして特定し、比較用ヒートマップDB422から取得する。なお、1ランク上のレベルを用いるのは、技能向上を考慮したものである。そして、決定部420は、ヒートマップの各セルに対応するセルを有する空の相対得意不得意マップを用意する。決定部420は、空の相対得意不得意マップの各セルに、対象利用者のヒートマップと比較用ヒートマップとで各セルの値(返球率)を比較した結果に応じた情報を保持させることにより、相対得意不得意マップを作成する。
 より具体的には、図19に示すように、決定部420は、対象利用者のヒートマップの返球率が所定値(例えば、85%)以上で、比較用ヒートマップの返球率が所定値未満のセルを相対得意範囲として特定する。また、決定部420は、対象利用者のヒートマップの返球率が所定値未満で、比較用ヒートマップの返球率が所定値以上のセルを相対不得意範囲として特定する。なお、図19の例では、対象利用者のヒートマップ及び比較用ヒートマップの返球率がいずれも所定値以上のセルを、問題なしの範囲として特定している。また、対象利用者のヒートマップ及び比較用ヒートマップの返球率がいずれも所定値未満のセルを、両者NGの範囲として特定している。
 決定部420は、取得部412が取得した得意/不得意の指定が「得意」を指定している場合、相対得意不得意マップの相対得意範囲に基づいて推奨負荷データを決定する。また、決定部420は、取得部412が取得した得意/不得意の指定が「不得意」を指定している場合、相対得意不得意マップの相対不得意範囲に基づいて推奨負荷データを決定する。以下、相対得意範囲又は相対不得意範囲に基づく、具体的な推奨負荷データの決定方法について説明する。
 技能向上を考慮すると、相対得意範囲をより広げるような練習ができることが望ましい。そこで、決定部420は、相対得意範囲に基づいて推奨負荷データを決定する場合、図20に示すように、相対得意範囲を示すセルと、返球率が所定値より低いセルとの境界(図20中の太線)上から推奨負荷データを決定することができる。これにより、図20の矢印で示す方向の範囲に含まれる負荷に対する対象利用者の返球率の向上を図ることができる。
 また、対象利用者の返球率が低い負荷の範囲で練習を続けるよりも、返球が成功となるかならないかのギリギリの負荷で練習する方が技能向上には有益であると考えられる。そこで、決定部420は、相対不得意範囲に基づいて推奨負荷データを決定する場合、図21に示すように、相対不得意セルに隣接する、返球率が所定値以上のセル(図21中の丸印で示すセル)の範囲から推奨負荷データを決定することができる。又は、決定部420は、相対不得意セルと、返球率が所定値以上のセルとの境界(図21中の太線)上から推奨負荷データを決定することができる。これにより、図21の矢印で示す方向の範囲、すなわち相対不得意範囲に含まれる負荷に対する対象利用者の返球率の向上を図ることができる。
 推奨負荷決定装置410のハードウェア構成は、図3に示す、第1実施形態に係る推奨負荷決定装置10のハードウェア構成と同様であるため、説明を省略する。なお、記憶装置36には、後述する推奨負荷決定処理を実行するための推奨負荷決定プログラムが格納されている。
 次に、第4実施形態に係る推奨負荷決定装置410の作用について説明する。
 第4実施形態では、第3実施形態における推奨負荷決定処理(図16)において、ステップS200で肯定判定され、ステップS202以降の学習モードの処理へ移行した場合、ステップS212の後に、図22に示す比較用ヒートマップ作成処理が実行される。
 図22に示す比較用ヒートマップ作成処理において、ステップS400で、学習部416が、ヒートマップの総セル数に対する、返球率が所定値(例えば、85%)以上のセル数の割合に応じて定義されるレベルの段階に基づいて、各サンプルユーザのレベルを判定する。
 次に、ステップS402で、学習部416が、同一レベルの各サンプルユーザについて計算されたヒートマップから、各レベルの典型となるヒートマップを計算し、比較用ヒートマップとして、比較用ヒートマップDB422に記憶する。そして、比較用ヒートマップ作成処理は終了し、推奨負荷決定処理も終了する。
 一方、ステップS200で否定判定され、ステップS214以降の練習モードの処理へ移行し、ステップS214で、推定モデル318が生成済みであると判定されたとする。この場合、取得部412が、入力装置38を介して推奨負荷決定装置410に入力された、対象利用者の得意/不得意の指定を取得する。
 そして、第3実施形態の推奨負荷決定処理と同様にステップS316~S320の処理が実行され、ステップS321において、図23に示す決定処理が実行される。
 図23に示す決定処理において、ステップS410で、決定部420が、上記ステップS320で推定された、対象利用者のヒートマップに基づいて、対象利用者のレベルを判定する。次に、ステップS412で、決定部420が、上記ステップS410で判定した対象利用者のレベルと同レベル又は1ランク上のレベルの典型のヒートマップを、比較用ヒートマップとして特定し、比較用ヒートマップDB422から取得する。
 次に、ステップS414で、決定部420が、対象利用者のヒートマップと比較用ヒートマップとで各セルの値(返球率)を比較し、相対得意不得意マップを作成する。次に、ステップS416で、上記ステップS414で作成した相対得意不得意マップと、取得部412により取得された得意/不得意の指定に基づいて、推奨負荷データを決定する。そして、処理は、推奨負荷決定処理(図16)に戻る。
 以上説明したように、第4実施形態に係る推奨負荷決定装置では、他の利用者と比較した対象利用者の相対得意範囲及び相対不得意範囲が特定された相対得意不得意マップを作成する。そして、この相対得意不得意マップに基づいて推奨負荷データを決定するため、第3実施形態の場合に比べ、推奨負荷データとなり得る負荷の値の組の候補から、より技能向上のために有益な組を推奨負荷データとして決定することができる。
 なお、第4実施形態では、相対得意範囲及び相対不得意範囲の両方が特定された相対得意不得意マップを作成する場合について説明したが、これに限定されない。相対得意範囲のみが特定された相対得意マップを作成してもよいし、相対不得意範囲のみが特定された相対不得意マップを作成してもよい。この場合、練習モードにおいて、相対得意マップに基づいて、対象利用者の得意な部分を練習させるようにするか、又は、相対不得意マップに基づいて、対象利用者の不得意な部分を練習させるようにすればよい。また、得意/不得意の指定を取得し、「得意」の指定の場合には、相対得意マップを作成し、「不得意」の指定の場合には、相対不得意マップを作成するようにしてもよい。
 また、第4実施形態において、決定部は、作成した相対得意不得意マップ、相対得意マップ、又は相対不得意マップを可視化して表示するためのデータを出力してもよい。これにより、対象利用者は、自身の相対得意範囲又は相対不得意範囲を客観的に把握することができる。
<第5実施形態>
 次に、第5実施形態について説明する。第5実施形態では、第2~第4実施形態と同様に、卓球のラリーにおける返球率の向上を運動課題とし、利用者に与える負荷が、卓球ロボットからの返球であり、利用者の動作が、卓球ロボットからの打球を返球するためのスイングである場合について説明する。運動課題の技能向上を目的とする場合において、より細かい制約の下で、運動課題に対する技能を向上させたい場合がある。例えば、卓球の例では、単純に返球率の向上を目指すだけでなく、カット、スマッシュ、フォアドライブ等の特定の打ち方における返球率を向上させたい場合がある。そこで、第5実施形態では、運動課題に対するより細かい要求に対して、有益な推奨負荷データを決定する手法について説明する。
 図24に示すように、第5実施形態に係る推奨負荷決定装置510は、機能的には、取得部512と、学習データDB514と、学習部516と、推定モデル518と、決定部520とを含む。
 取得部512は、第2実施形態に係る取得部212と同様に、学習モードにおいて、負荷データ、動作データ、及び成績データを取得し、練習モードにおいて、負荷データ及び動作データを取得する。例えば、負荷データは、打球速度であり、動作データは利用者の骨格情報であり、成績データは返球誤差である。なお、取得部512は、第3実施形態における取得部312又は第4実施形態における取得部412と同様に、複数項目の負荷データとして、例えば、打球速度、打球回転、及び相対位置を取得するようにしてもよい。なお、学習モードでは、サンプルユーザに、カット、スマッシュ、フォアドライブ等の打ち方を指定した上で返球した場合における、動作データ及び成績データを取得する。したがって、学習データDB514には、図8又は図13に示すようなデータが、打ち方毎に記憶される。なお、「打ち方」は、開示の技術の「動作の類型」の一例である。
 さらに、取得部512は、練習モードにおいて、対象利用者が練習したい打ち方を示す練習メニューの指定を取得する。この指定は、入力装置38を介して推奨負荷決定装置510に入力される。
 学習部516は、打ち方毎の学習データを用いて、推定モデル518を生成する。推定モデル518の具体的な生成方法は、第2~第4実施形態と同様である。したがって、推定モデル518は、図25に示すように、カット用、スマッシュ用、フォアドライブ用等のように、打ち方毎の推定モデルの集合となる。なお、図25の例では、推定モデル518には、打ち方を限定することなく生成したランダム用の推定モデルも含まれる。
 決定部520は、推定モデル518の中から、取得部512で取得された練習メニューの指定に対応する打ち方用の推定モデルを用いて、対象利用者の能力パラメータを推定し、能力パラメータに基づいて、推奨負荷データを決定する。能力パラメータに基づく推奨負荷データの具体的な決定方法は、第2~第4実施形態と同様である。
 推奨負荷決定装置510のハードウェア構成は、図3に示す、第1実施形態に係る推奨負荷決定装置10のハードウェア構成と同様であるため、説明を省略する。また、第5実施形態に係る推奨負荷決定装置510の作用についても、練習メニューの指定を取得する点、及び、図10のステップS220又は図16のステップS320で、指定された練習メニューに対応する打ち方用の推定モデルを用いる点が第2~第4実施形態の推奨負荷決定処理と異なるだけであるため、詳細な説明を省略する。
 以上説明したように、第5実施形態に係る推奨負荷決定装置では、例えば打ち方毎に推定モデルを用意し、対象利用者が指定した打ち方用の推定モデルを用いて、対象利用者の能力パラメータを推定し、推奨負荷データを決定する。これにより、運動課題に対するより細かい要求に対して、有益な推奨負荷データを決定することができる。
<第6実施形態>
 次に、第6実施形態について説明する。第6実施形態では、第2~第5実施形態と同様に、卓球のラリーにおける返球率の向上を運動課題とし、利用者に与える負荷が、卓球ロボットからの返球であり、利用者の動作が、卓球ロボットからの打球を返球するためのスイングである場合について説明する。上記各実施形態では、負荷データ及び動作データを推定モデルに入力して、対象利用者の能力パラメータを推定する。そのため、例えば、卓球の場合、スイングは上手であるにもかかわらず、返球率が悪い対象利用者に対して、過度に大きな負荷が与えられてしまう場合がある。例えば、素振りの練習を熱心に行い、上手なスイングをできるようになったが、球速の速いボールには目が追い付かない対象利用者に対して、速いボールが送出されてしまう可能性がある。逆に、上手とは言えない独特のくせのあるスイングではあるが、返球率が良い対象利用者に対する負荷が物足りないものになってしまう場合がある。第6実施形態では、このような場合の負荷を補正して、技能向上に有益な推奨負荷データを決定する手法について説明する。
 図26に示すように、第6実施形態に係る推奨負荷決定装置610は、機能的には、取得部612と、実績DB624と、学習データDB314と、学習部316と、推定モデル318と、決定部620とを含む。
 取得部612は、第3実施形態に係る取得部312と同様に、学習モードにおいて、複数項目の負荷データ、動作データ、及び成績データを取得する。取得部612は、練習モードにおいては、複数項目の負荷データ及び動作データに加え、動作結果の実測パラメータとして、成績データも取得する。例えば、複数項目の負荷データは、打球速度、打球回転、及び相対位置であり、動作データは利用者の骨格情報であり、成績データは返球誤差である。取得部612は、練習モードにおいて取得した成績データを、例えば図27に示すような実績DB624に、試行毎に記憶する。
 決定部620は、成績データにより評価される対象利用者の能力が、推定モデル318の出力である能力パラメータにより評価される対象利用者の能力よりも低い場合は、対象利用者にとっての負担がより小さくなるように推奨負荷データを決定する。一方、決定部620は、成績データにより評価される対象利用者の能力が、推定モデル318の出力である能力パラメータにより評価される対象利用者の能力よりも高い場合は、対象利用者にとっての負担がより大きくなるように推奨負荷データを決定する。
 具体的には、決定部620は、第3実施形態の決定部320と同様に、推定モデル318を用いて、対象利用者の能力パラメータとしてヒートマップを推定し、ヒートマップから、推奨負荷データを決定するためのセルを特定する。また、決定部620は、実績DB624に記憶された過去所定回数分の試行における返球誤差から、実績返球率を計算する。実績返球率が下限閾値(例えば、85%)以下の場合には、推定されたヒートマップの各セルに格納された推定返球率が、対象利用者の実際の能力に対応する実績返球率よりも高い値となり、対象利用者にとっては負担の大きい負荷の範囲のセルが特定されている可能性がある。そこで、決定部620は、ヒートマップから特定するセルを、負荷が低くなる方向(減少方向)に補正する。一方、実績返球率が上限閾値(例えば、95%)以上の場合には、推定されたヒートマップの各セルに格納された推定返球率が、対象利用者の実際の能力に対応する実績返球率よりも低い値となり、対象利用者にとっては負担の小さい負荷の範囲のセルが特定されている可能性がある。そこで、決定部620は、ヒートマップから特定するセルを、負荷が高くなる方向(増加方向)に補正する。
 負荷の減少方向は、例えば、図28に示すように、図28中の太枠のセルに含まれる負荷を基準とした場合、図28中の矢印で示すように、推定返球率が向上するセルに向かう方向である。また、負荷の増加方向は、例えば、図29に示すように、図29中の太枠のセルに含まれる負荷を基準とした場合、図29中の矢印で示すように、推定返球率が低下するセルに向かう方向である。例えば、決定部620は、ヒートマップから特定したセルから増加方向又は減少方向に沿って最も近いセルを特定し、特定したセルの範囲に含まれる負荷の値の組を、推奨負荷データとして決定することができる。
 推奨負荷決定装置610のハードウェア構成は、図3に示す、第1実施形態に係る推奨負荷決定装置10のハードウェア構成と同様であるため、説明を省略する。なお、記憶装置36には、後述する推奨負荷決定処理を実行するための推奨負荷決定プログラムが格納されている。
 次に、第6実施形態に係る推奨負荷決定装置610の作用について説明する。
 第6実施形態における推奨負荷決定処理において、第3実施形態における推奨負荷決定処理(図16)と同様に、ステップS200で否定判定されると、ステップS214以降の練習モードの処理へ移行する。そして、ステップS214で、推定モデル318が生成済みであると判定されると、ステップS316~S321に替えて、図30に示す決定処理が実行される。
 図30に示す決定処理において、ステップS600で、取得部612が、複数項目の負荷データ(打球速度、打球回転、相対位置)、及び骨格情報を取得して、学習データDB314に記憶する。また、取得部612が、返球誤差を取得して、実績DB624に記憶する。次に、ステップS602で、決定部620が、複数項目の負荷データ及び骨格情報を推定モデル318に入力して、対象利用者のヒートマップを推定し、ヒートマップから、推奨負荷データを決定するためのセルを特定する。
 次に、ステップS604で、決定部620が、実績DB624に所定回数分以上の成績データ(返球誤差)が記憶されているか否かを判定する。記憶されている場合には、ステップS606へ移行し、記憶されていない場合には、ステップS614へ移行する。
 ステップS606では、決定部620が、実績DB624に記憶された過去所定回数分の返球誤差から計算される返球率が、下限閾値(例えば、85%)以下か否かを判定する。返球率が下限閾値以下の場合には、ステップS608へ移行し、下限閾値を超えている場合には、ステップS610へ移行する。ステップS608では、決定部620が、ヒートマップから特定するセルを減少方向に補正して特定し、特定したセルの範囲に含まれる負荷の値の組を、推奨負荷データとして決定する。
 一方、ステップS610では、決定部620が、返球率が、上限閾値(例えば、95%)以上か否かを判定する。返球率が上限閾値以上の場合には、ステップS612へ移行し、上限閾値未満の場合には、ステップS614へ移行する。ステップS612では、決定部620が、ヒートマップから特定するセルを増加方向に補正して特定し、特定したセルの範囲に含まれる負荷の値の組を、推奨負荷データとして決定する。
 ステップS614では、決定部620が、上記ステップS602で特定したセルの範囲に含まれる負荷の値の組を、推奨負荷データとして決定する。そして、処理は、推奨負荷決定処理(図16)に戻る。
 以上説明したように、第6実施形態に係る推奨負荷決定装置では、対象利用者の実績が示す能力に応じて、決定する推奨負荷データを減少方向又は増加方向に補正する。これにより、対象利用者の実績に応じて、技能向上に有益な推奨負荷データを決定することができる。
 なお、第6実施形態では、スイングは上手ではないが、返球率が良い対象利用者については、負荷を増加方向に補正する場合について説明したが、これに限定されない。例えば、上手なスイングが行えるようになることを運動課題とする場合、増加方向への補正は行わないようにしてもよい。この場合、対象利用者にとって低い負荷が与えられることになるが、低い負荷でスイングの質が向上するまで練習することになるため、増加方向への補正は行わなくても問題ない。
 また、上記各実施形態では、今回の試行に対して与えた負荷データと、その負荷データに対する動作データとに基づいて、次回の試行における推奨負荷データを決定する場合について説明した。この場合、図31に示すように、通常は悪いスイングであるが、たまたま1回だけ良いスイングができた場合、その次の試行において、過度な負荷が与えられてしまう場合がある。図31の例では、1、2、4、及び5試行目は悪いスイングで、3試行目にたまたま良いスイングができた例を示している。この場合、悪いスイングに対しては、低い能力パラメータが推定されるため、対象利用者に応じた適切な推奨負荷データが決定される。しかし、良いスイングに対しては、高い能力パラメータが推定されるため、対象利用者にとって負担の大きい推奨負荷データが決定される。
 このような突発的な負荷データの変動を抑制するために、図32に示すように、過去k+1回分の試行(n試行目、n-1試行目、・・・、n-k試行目)におけるk+1個の負荷データ及び動作データを平均する。そして、平均した負荷データn_Ave及び動作データn_Aveを推定モデルへ入力することにより、n試行目の能力パラメータを推定してもよい。
 また、図33に示すように、過去k+1回分の試行(n試行目、n-1試行目、・・・、n-k試行目)において推定されたk+1個の能力パラメータを平均し、平均した能力パラメータn_Aveから推奨負荷データを決定するようにしてもよい。また、k+1個の能力パラメータの各々に基づいて決定した推奨負荷データを平均して、最終的な推奨負荷データとしてもよい。
 また、上記各実施形態では、例えば図14に示すように、ニューラルネットワーク等で実現される推定モデルに、負荷データ及び動作データを入力して、能力パラメータを推定する場合について説明した。上述したように、動作データとして骨格情報を用いる場合などには、動作データの次元数と負荷データの次元数との差が大きくなり過ぎ、この次元数の差が影響して、推定モデルの学習時に偏った学習が進む可能性がある。そこで、図34に示すように、動作データの次元数が、負荷データの次元数と同程度の次元数となるように、動作データを次元圧縮したうえで、学習データとして用いてもよい。この場合、能力パラメータの推定時にも、学習時と同様に、動作データの次元圧縮を行う。なお、同程度の次元数とは、負荷データの次元数と動作データの次元数との差が所定範囲となる次元数である。図34の例では、動作データである骨格情報は、関節数がn、1関節を表す座標値が3、1動作単位の画像のフレーム数がfとすると、動作データの次元数は、n×3×fである。この次元数を、負荷データの次元数iと同程度の次元数sとなるように、動作データからs種類の特徴量を抽出して、次元圧縮後の動作データとしている。
 動作データの次元圧縮の方法の一例を説明する。例えば、複数のサンプルユーザについての動作データから、図35に示すような行列を作成する。図35中の網掛部分には、実際の骨格情報の座標値が入る。そして、この行列に対して主成分分析を行い、例えば、主成分の累積寄与率を求め、上位s個の主成分を特定する。そして、図36に示すように、特定した主成分P1、P2、・・・、Psの各々に対して、各スイングを示す動作データを写像した値を計算する。図36の網掛部分には、各主成分へ写像した値が入る。これにより、n×3×f次元の動作データをs次元に次元圧縮することができる。
 また、他の次元圧縮の方法として、該当の動作に関する知見情報や、動作データの分析に基づいて、動作データを、スイングの上手さを表すように特徴量化してもよい。例えば、スイングが上手な人は肘の高さが一定である、という知見がある場合、動作データから肘の高さの分散を特徴量として抽出する。また、スイングが上手な人はスイングの軌道が滑らか、という知見がある場合、動作データが示す軌道に対して、例えば、微分をとる等の分析を行い、軌道の滑らかさを示す指標を特徴量として抽出する。そして、図37に示すように、各スイングを示す動作データを特徴量化する。図37の網掛部分には、各特徴に関して動作データから抽出された特徴量が入る。
 また、上記第3~第6実施形態では、卓球ロボットを使用した返球率向上の運動課題のための推奨負荷を決定する例について説明したが、これに限定されない。第2実施形態の末尾で説明したように、第1実施形態で例示したような、バッティングマシンを使用した安打率向上の運動課題や、トレッドミルを使用したリハビリテーションにおける歩行改善の運動課題についても、第3~第6実施形態と同様に具体化した実施形態として実現可能である。
 また、上記各実施形態では、学習モードにおいて機能する機能部と、練習モードにおいて機能する機能部とが同一のコンピュータで実現される場合について説明したが、これに限定されない。取得部及び学習部を含む能力パラメータ推定モデル学習装置と、取得部及び決定部を含む推奨負荷決定装置とをそれぞれ別のコンピュータで実現してもよい。
 また、上記各実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した推奨負荷決定処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、推奨負荷決定処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
 また、上記各実施形態では、推奨負荷決定プログラムが記憶装置に予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM、DVD-ROM、ブルーレイディスク、USBメモリ等の記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
 本明細書に記載された全ての文献、特許出願、及び技術規格は、個々の文献、特許出願、及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
10、210、310、410、510、610 推奨負荷決定装置
12、212、312、412、512、612 取得部
14、214、214A、214B、314、514 学習データDB
16、216、316、416、516 学習部
18、218、318、518 推定モデル
20、220、320、420、520、620 決定部
422 比較用ヒートマップDB
624 実績DB
32 CPU
34 メモリ
36 記憶装置
38 入力装置
40 出力装置
42 記憶媒体読取装置
44 通信I/F
46 バス
60 卓球ロボット
70、72 センサ

Claims (24)

  1.  利用者に与えた負荷を表す負荷データと、当該負荷の下での前記利用者の一動作単位の動作を表す動作データとに基づいて計算される、前記利用者の能力に関するパラメータを出力する推定モデルを利用する推奨負荷決定装置であって、
     推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、当該負荷の下での前記対象利用者の一動作単位の動作を表す動作データとを取得する取得部と、
     取得された前記負荷データ及び前記動作データを前記推定モデルに入力することにより前記推定モデルが出力する前記対象利用者の前記能力に関するパラメータに基づいて、前記対象利用者のための推奨負荷を表す推奨負荷データを決定する決定部と、
     を含む推奨負荷決定装置。
  2.  前記動作データは、前記利用者若しくは前記利用者が前記動作を行う際に保持する器具の特定部位の変位データ、前記利用者の筋活動量データ、又は、前記変位データ若しくは前記筋活動量データの微分データ若しくは積分データである請求項1に記載の推奨負荷決定装置。
  3.  前記利用者の特定部位の変位データは、前記利用者の骨格情報の時系列データである請求項2に記載の推奨負荷決定装置。
  4.  前記推定モデルが出力する前記能力に関するパラメータは、前記動作についての成功見込みが所定の基準より大きくなる、1つの負荷項目についての前記負荷の値の範囲の中で前記利用者にとっての負担が最も大きい前記負荷の値を表す限界負荷データであり、
     前記決定部は、前記対象利用者についての前記限界負荷データを前記推奨負荷データとして決定する
     請求項1~請求項3のいずれか1項に記載の推奨負荷決定装置。
  5.  前記推定モデルが出力する前記能力に関するパラメータは、前記負荷と前記動作についての成功見込みの大きさとの関係を表すパラメータであり、
     前記決定部は、前記対象利用者についての前記能力に関するパラメータに基づいて前記推奨負荷データを決定する
     請求項1~請求項3のいずれか1項に記載の推奨負荷決定装置。
  6.  前記対象利用者についての前記負荷と前記動作についての成功見込みの大きさとの関係を表すパラメータは、1つの負荷項目についての前記負荷の値と前記成功見込みの大きさとの関係を表すグラフを特定するパラメータであり、
     前記決定部は、前記グラフにおいて前記成功見込みが所定の基準より大きくなる前記負荷の値の範囲の中で前記対象利用者にとっての負担が最も大きい前記負荷の値を表す限界負荷データを前記推奨負荷データとして決定する
     請求項5に記載の推奨負荷決定装置。
  7.  前記対象利用者についての前記負荷と前記動作についての成功見込みの大きさとの関係を表すパラメータは、複数の負荷項目についての前記負荷の値と前記成功見込みの大きさとの関係を表すヒートマップを特定するパラメータであり、
     前記決定部は、前記ヒートマップにおいて前記成功見込みが所定の基準より大きくなる負荷の値の組を前記推奨負荷データとして決定する
     請求項5に記載の推奨負荷決定装置。
  8.  前記決定部は、前記ヒートマップを可視化して表示するためのデータを出力する請求項7に記載の推奨負荷決定装置。
  9.  前記決定部は、比較用ヒートマップを利用可能とされており、前記比較用ヒートマップとの比較において、前記対象利用者の前記成功見込みの方が大きい前記負荷の値の組の範囲である相対得意範囲を特定する相対得意マップ又は前記対象利用者の前記成功見込みの方が小さい前記負荷の値の組の範囲である相対不得意範囲を特定する相対不得意マップを作成し、前記相対得意範囲又は前記相対不得意範囲の中の負荷の値の組を前記推奨負荷データとして決定する
     請求項7又は請求項8に記載の推奨負荷決定装置。
  10.  前記比較用ヒートマップは、前記利用者のレベル別に用意されており、
     前記決定部は、前記対象利用者のレベルと同等のレベル又は前記対象利用者のレベルより上のレベルであって前記対象利用者のレベルに最も近いレベルの前記利用者についての前記比較用ヒートマップを利用する
     請求項9に記載の推奨負荷決定装置。
  11.  前記取得部は、さらに前記対象利用者についての得意又は不得意の指定を取得し、
     前記決定部は、前記得意の指定が取得された場合は前記相対得意マップを作成し、前記不得意の指定が取得された場合は前記相対不得意マップを作成する
     請求項9又は請求項10に記載の推奨負荷決定装置。
  12.  前記決定部は、前記相対得意マップ及び前記相対不得意マップの少なくとも一方を可視化して表示するためのデータを出力する請求項9~請求項11のいずれか1項に記載の推奨負荷決定装置。
  13.  前記推定モデルは、前記動作の類型毎に用意され、
     前記取得部は、前記対象利用者から、いずれかの前記類型の指定を取得し、
     前記決定部は、指定された前記類型に対応する前記推定モデルを用いて、前記推奨負荷データを決定する
     請求項1~請求項12のいずれか1項に記載の推奨負荷決定装置。
  14.  前記取得部は、前記負荷データ及び前記動作データの組を複数組取得し、
     前記決定部は、複数の前記負荷データを平均化した負荷データ及び複数の前記動作データを平均化した動作データを前記推定モデルに入力する
     請求項1~請求項13のいずれか1項に記載の推奨負荷決定装置。
  15.  前記取得部は、前記負荷データ及び前記動作データの組を複数組取得し、
     前記決定部は、前記負荷データ及び前記動作データの組のそれぞれを前記推定モデルに入力することにより得られた前記能力に関するパラメータを平均化し、前記平均化したパラメータに基づいて前記推奨負荷データを決定する
     請求項1~請求項13のいずれか1項に記載の推奨負荷決定装置。
  16.  前記取得部は、前記負荷データ及び前記動作データの組を複数組取得し、
     前記決定部は、前記負荷データ及び前記動作データの組のそれぞれを前記推定モデルに入力することにより得られたそれぞれの前記能力に関するパラメータに基づいて複数の推奨負荷データを算出し、さらに前記複数の推奨負荷データを平均化して最終的な前記推奨負荷データを決定する
     請求項1~請求項13のいずれか1項に記載の推奨負荷決定装置。
  17.  前記取得部は、前記負荷データ及び前記動作データの組とそれに対応する実際の動作結果に関する実測パラメータを取得し、
     前記決定部は、取得された前記実測パラメータにより評価される前記対象利用者の能力が前記推定モデルの出力である前記パラメータにより評価される前記対象利用者の能力よりも低い場合は、前記対象利用者にとっての負担がより小さくなるように前記推奨負荷データを決定する
     請求項1~請求項16のいずれか1項に記載の推奨負荷決定装置。
  18.  前記決定部は、前記推奨負荷データを、前記対象利用者に対して前記負荷を与える負荷付与装置を制御するために前記負荷付与装置へ出力する請求項1~請求項17のいずれか1項に記載の推奨負荷決定装置。
  19.  前記決定部は、所定の時間間隔で、最新の前記推奨負荷データを表示するためのデータを出力する請求項1~請求項17のいずれか1項に記載の推奨負荷決定装置。
  20.  前記負荷データ及び前記動作データと、前記負荷データ及び前記動作データに基づいて計算される前記利用者の能力に関するパラメータとの対応を学習することにより、前記推定モデルを生成する学習部を含む請求項1~請求項19のいずれか1項に記載の推奨負荷決定装置。
  21.  前記学習部は、前記負荷データの次元数と、前記動作データの次元数との差が所定範囲となるように圧縮した前記動作データを用いて、前記推定モデルを生成する請求項20に記載の推奨負荷決定装置。
  22.  利用者に与えた負荷を表す負荷データと、当該負荷の下での前記利用者の一動作単位の動作を示す動作データと、前記動作に伴う成績データとを取得する取得部と、
     前記負荷データ及び前記動作データと、前記負荷データと前記成績データとに基づいて計算される、前記利用者の能力に関するパラメータとの対応を学習することにより、推奨負荷の決定対象である対象利用者についての前記負荷データ及び前記動作データの入力に対して前記対象利用者の能力に関するパラメータを出力する推定モデルを生成する学習部と、
     を含む能力パラメータ推定モデル学習装置。
  23.  利用者に与えた負荷を表す負荷データと、当該負荷の下での前記利用者の一動作単位の動作を表す動作データとに基づいて計算される、前記利用者の能力に関するパラメータを出力する推定モデルを用意し、
     取得部が、推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、当該負荷の下での前記対象利用者の一動作単位の動作を表す動作データとを取得し、
     決定部が、取得された前記負荷データ及び前記動作データを前記推定モデルに入力することにより前記推定モデルが出力する前記対象利用者の前記能力に関するパラメータに基づいて、前記対象利用者のための推奨負荷を表す推奨負荷データを決定する
     推奨負荷決定方法。
  24.  コンピュータを、利用者に与えた負荷を表す負荷データと、当該負荷の下での前記利用者の一動作単位の動作を表す動作データとに基づいて計算される、前記利用者の能力に関するパラメータを出力する推定モデルを利用する推奨負荷決定装置として機能させるための推奨負荷決定プログラムであって、
     前記コンピュータを、
     推奨負荷の決定対象である対象利用者に与えた負荷を表す負荷データと、当該負荷の下での前記対象利用者の一動作単位の動作を表す動作データとを取得する取得部、及び、
     取得された前記負荷データ及び前記動作データを前記推定モデルに入力することにより前記推定モデルが出力する前記対象利用者の前記能力に関するパラメータに基づいて、前記対象利用者のための推奨負荷を表す推奨負荷データを決定する決定部
     として機能させるための推奨負荷決定プログラム。
PCT/JP2021/033879 2020-12-18 2021-09-15 推奨負荷決定装置、能力パラメータ推定モデル学習装置、方法、及びプログラム WO2022130714A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP21906079.5A EP4265305A1 (en) 2020-12-18 2021-09-15 Recommended load determining device, capability parameter estimation model training device, method, and program
CN202180081640.8A CN116547044A (zh) 2020-12-18 2021-09-15 推荐负载决定装置、能力参数推测模型学习装置、方法以及程序
US18/265,053 US20240017409A1 (en) 2020-12-18 2021-09-15 Recommended load determining device, capability parameter estimation model training device, method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020210721A JP2022097249A (ja) 2020-12-18 2020-12-18 推奨負荷決定装置、能力パラメータ推定モデル学習装置、方法、及びプログラム
JP2020-210721 2020-12-18

Publications (1)

Publication Number Publication Date
WO2022130714A1 true WO2022130714A1 (ja) 2022-06-23

Family

ID=82058996

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/033879 WO2022130714A1 (ja) 2020-12-18 2021-09-15 推奨負荷決定装置、能力パラメータ推定モデル学習装置、方法、及びプログラム

Country Status (5)

Country Link
US (1) US20240017409A1 (ja)
EP (1) EP4265305A1 (ja)
JP (1) JP2022097249A (ja)
CN (1) CN116547044A (ja)
WO (1) WO2022130714A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11235401A (ja) 1998-02-20 1999-08-31 Omron Corp 運動能力評価装置、運動機器及び運動能力評価方法
JP2010205043A (ja) * 2009-03-04 2010-09-16 Nec Corp パターン学習方法、装置、およびプログラム
JP2014104265A (ja) * 2012-11-29 2014-06-09 Taisho Pharmaceutical Co Ltd 近赤外線分光法による疲労の評価方法
JP2018055611A (ja) 2016-09-30 2018-04-05 オムロン株式会社 制御装置、システム、制御方法およびプログラム
JP2018175670A (ja) * 2017-04-19 2018-11-15 クラブコング株式会社 運動器具、制御装置、およびプログラム
JP2019107235A (ja) 2017-12-18 2019-07-04 キヤノンメディカルシステムズ株式会社 リハビリテーション支援装置及びリハビリテーション支援プログラム
JP2020199049A (ja) * 2019-06-10 2020-12-17 Kddi株式会社 コーチングアプリケーションの構築装置、方法およびプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11235401A (ja) 1998-02-20 1999-08-31 Omron Corp 運動能力評価装置、運動機器及び運動能力評価方法
JP2010205043A (ja) * 2009-03-04 2010-09-16 Nec Corp パターン学習方法、装置、およびプログラム
JP2014104265A (ja) * 2012-11-29 2014-06-09 Taisho Pharmaceutical Co Ltd 近赤外線分光法による疲労の評価方法
JP2018055611A (ja) 2016-09-30 2018-04-05 オムロン株式会社 制御装置、システム、制御方法およびプログラム
JP2018175670A (ja) * 2017-04-19 2018-11-15 クラブコング株式会社 運動器具、制御装置、およびプログラム
JP2019107235A (ja) 2017-12-18 2019-07-04 キヤノンメディカルシステムズ株式会社 リハビリテーション支援装置及びリハビリテーション支援プログラム
JP2020199049A (ja) * 2019-06-10 2020-12-17 Kddi株式会社 コーチングアプリケーションの構築装置、方法およびプログラム

Also Published As

Publication number Publication date
US20240017409A1 (en) 2024-01-18
JP2022097249A (ja) 2022-06-30
EP4265305A1 (en) 2023-10-25
CN116547044A (zh) 2023-08-04

Similar Documents

Publication Publication Date Title
JP6733738B2 (ja) 運動認識装置、運動認識プログラムおよび運動認識方法
US20180133551A1 (en) System and method for personalized exercise training and coaching
Ghasemzadeh et al. Wearable coach for sport training: A quantitative model to evaluate wrist-rotation in golf
US9510789B2 (en) Motion analysis method
US9826923B2 (en) Motion analysis method
JP6554981B2 (ja) 診断サーバー、診断システム、診断方法、診断プログラム、記録媒体
JP2007520282A (ja) 身体的なスキルのパフォーマンスおよびこの身体的なスキルを実行するために使用する用具の測定および評価のシステムおよび方法
JP6911298B2 (ja) ゴルフクラブのフィッティング装置、方法及びプログラム
JP6753144B2 (ja) 打点推定装置
JP4833919B2 (ja) 眼球運動計測によるゴルフ技量評価方法
WO2022130714A1 (ja) 推奨負荷決定装置、能力パラメータ推定モデル学習装置、方法、及びプログラム
JP6783646B2 (ja) 選択支援装置、選択支援システムおよび選択支援方法
JP6672617B2 (ja) ゴルフクラブのフィッティング装置、方法及びプログラム
CN113384858B (zh) 打法确定装置、打法确定方法、记录介质及回球机器人
CN112494034B (zh) 基于3d体态检测分析的数据处理分析系统及方法
JP2021100453A (ja) 情報処理装置、情報処理方法、プログラム
KR20150058111A (ko) 골프레슨 정보제공을 위한 골프 연습 시스템 및 이를 이용한 골프레슨 정보제공을 위한 정보 처리방법
JP2024508782A (ja) マーカレス運動解析を改善するための方法
WO2020121500A1 (ja) 推定方法、推定プログラムおよび推定装置
WO2015146155A1 (ja) スイングデータ圧縮方法、スイングデータ圧縮装置、スイング解析装置及びスイングデータ圧縮プログラム
JP6984682B2 (ja) 打点推定装置
JP7283692B2 (ja) スイング解析装置
JP6984326B2 (ja) 打具のフィッティング装置
JPH11137524A (ja) 計測システムおよびその方法
JP2024005858A (ja) スイング分析システム及びスイング分析方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21906079

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202180081640.8

Country of ref document: CN

Ref document number: 18265053

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021906079

Country of ref document: EP

Effective date: 20230718