Man-power drive vehicle travel prediction system and man-power drive vehicle travel prediction model generation system
The system uses a detection value acquisition unit and prediction unit with a trained model to generate predictions reflecting rider intentions, addressing the limitations of existing systems by enhancing accuracy and simplicity in human-powered vehicle travel prediction.
Patent Information
- Application Number
- JP2024089395
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-31
- Publication Date
- 2025-12-11
AI Technical Summary
Existing human-powered vehicle travel prediction systems struggle to accurately reflect the rider's intentions due to reliance on sensor values alone, often requiring complex configurations with additional sensors or learning mechanisms.
A system utilizing a detection value acquisition unit and a prediction unit with a trained model by machine learning to generate predictions based on current and past detection values from multiple sensors, enabling predictions that reflect the rider's intentions with a simple configuration.
This approach allows for more accurate travel predictions that align with the rider's intentions, improving the riding experience by controlling vehicle devices to follow the rider's preferences without complex additional sensors or learning mechanisms.
Smart Images

Figure 2025181423000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a system, method, and program for predicting travel time of a human-powered vehicle and generating a human-powered vehicle travel time prediction model. [Background technology]
[0002] An example of a human-powered vehicle is an electrically assisted bicycle. An electrically assisted bicycle controls motor output based on values detected by various sensors, such as a vehicle speed sensor and a pedal force sensor. When the motor output is controlled after the sensor detects values in this way, there is a slight delay in the assistance provided by the motor.
[0003] Japanese Patent Application Laid-Open Publication No. 2023-047987 (Patent Document 1) discloses an electric bicycle that can provide assistance based on the user's intention to accelerate. The control unit of this electric bicycle allows the motor to generate power when the input torque is equal to or greater than a first threshold, and when the cadence is equal to or greater than a second threshold or the acceleration is equal to or greater than a third threshold.
[0004] Japanese Patent Application Laid-Open Publication No. 2023-048913 (Patent Document 2) discloses a control device for a human-powered vehicle. The control unit of this control device estimates the driving path based on forward information including a forward image acquired by an imaging device. When the driving path changes from a downhill to an uphill, the control unit controls the electric device based on at least one of a first distance from the human-powered vehicle to the point where the driving path changes from a downhill to an uphill, a first angle of the downhill, a second angle of the uphill, and the difference between the first angle and the second angle.
[0005] Japanese Patent Application Laid-Open Publication No. 2023-151357 (Patent Document 3) discloses a control device for a human-powered vehicle. This control device stores a first learning model that is trained to output output information related to device control based on input information related to the driving of the human-powered vehicle. The control device includes a control unit that controls the devices of the human-powered vehicle using control data determined based on the output information of the first learning model, and a complementation processing unit that complements the first learning model using a second learning model. The second learning model is trained using input information from a human-powered vehicle where at least one of the human-powered vehicle and the rider is different.
[0006] Japanese Patent Application Laid-Open Publication No. 2023-85936 (Patent Document 4) discloses a control device for a human-powered vehicle that optimizes the criteria for automatic control for each rider. The control device for a human-powered vehicle includes a first control unit that determines control data for devices mounted on the human-powered vehicle using a predetermined control algorithm based on input information related to the driving of the human-powered vehicle and automatically controls the devices, an operation probability output model that outputs the probability that the rider will intervene in the automatic control based on the input information, and a second control unit that changes parameters for determining the control data if the output probability is equal to or greater than a predetermined value. [Prior art documents] [Patent documents]
[0007] [Patent Document 1] Japanese Patent Application Publication No. 2023-047987 [Patent Document 2] Japanese Patent Publication No. 2023-048913 [Patent Document 3] Japanese Patent Publication No. 2023-151357 [Patent Document 4] Japanese Patent Publication No. 2023-85936 Summary of the Invention [Problem to be solved by the invention]
[0008] When predicting future travel using only the sensor values of a human-powered vehicle, as in the above-mentioned conventional technology, it can be difficult to reflect the rider's intentions in the prediction. Furthermore, the above-mentioned conventional technology requires the installation of a special sensor for prediction or a learning mechanism, which makes the configuration complicated.
[0009] Therefore, the present application discloses a system, a program, and a method that, with a simple configuration, enables predictions regarding driving that reflect the intentions of the rider of a human-powered vehicle. [Means for solving the problem]
[0010] The human-powered vehicle travel prediction system according to an embodiment of the present invention includes: a detection value acquisition unit that acquires current detection values of a plurality of detectors provided in the human-powered vehicle and past values based on detection values from the past; and a prediction unit that uses a trained model constructed by machine learning to generate a predicted value regarding the driving of the human-powered vehicle based on the current detection values and past values of each of the multiple detectors acquired by the detection value acquisition unit. [Brief explanation of the drawings]
[0011] [Figure 1] FIG. 1 is a functional block diagram showing an example of the configuration of a system according to this embodiment. [Figure 2] FIG. 2 is a left side view showing an example of the configuration of a bicycle. [Figure 3] FIG. 3 is a block diagram showing an example of the mechanical and electrical connection configuration of the components of the bicycle shown in FIG. [Figure 4] FIG. 4 is a diagram showing a flowchart of the process of the prediction system shown in FIG. 1 and an example of data. [Figure 5] FIG. 5 is a functional block diagram showing a modified example of the prediction system. [Figure 6] FIG. 6 is a diagram illustrating a first example of a vehicle load prediction model and a travel prediction model. [Figure 7] FIG. 7 is a diagram showing a second example of the vehicle load prediction model and the travel prediction model. [Figure 8] FIG. 8 is a diagram illustrating an example of a prediction process using the model illustrated in FIG. 6 and example data. [Figure 9] FIG. 9 is a diagram illustrating an example of a prediction process using the model illustrated in FIG. 7 and example data. [Figure 10] FIG. 10 is a diagram for explaining an example of the process of generating the vehicle load prediction model and the travel prediction model shown in FIG. [Figure 11] FIG. 11 is a diagram for explaining an example of the process of generating the vehicle load prediction model and the travel prediction model shown in FIG. [Figure 12] FIG. 12 is a diagram showing an example of a travel prediction model that generates a vehicle speed as a predicted value. [Figure 13] FIG. 13 is a diagram showing an example of a travel prediction model that generates the crank rotation speed as a predicted value. [Figure 14] FIG. 14 is a diagram illustrating an example of a travel prediction model that generates a pedaling force as a predicted value. [Figure 15] FIG. 15 is a diagram illustrating an example of a driving prediction model that generates a motor output as a predicted value. [Figure 16] FIG. 16 is a functional block diagram showing an example of the configuration of the control unit of the control system. DETAILED DESCRIPTION OF THE INVENTION
[0012] (Configuration 1) The human-powered vehicle travel prediction system according to an embodiment of the present invention includes: a detection value acquisition unit that acquires current detection values of a plurality of detectors provided in the human-powered vehicle and past values based on detection values from the past; and a prediction unit that uses a trained model constructed by machine learning to generate a predicted value regarding the driving of the human-powered vehicle based on the current detection values and past values of each of the multiple detectors acquired by the detection value acquisition unit.
[0013] According to the above configuration 1, a predicted value related to driving is generated using a trained model. The predicted value is generated based on past values based on past detection values as well as current detection values from multiple detectors of the human-powered vehicle. In this way, by making a prediction using a trained model based on current detection values and past detection values, the intentions of the rider of the human-powered vehicle can be reflected in the predicted value. Therefore, with a simple configuration, it is possible to make a prediction related to driving that reflects the intentions of the rider of the human-powered vehicle.
[0014] The detector of the human-powered vehicle may be, for example, a detector that detects at least one of a physical quantity related to the traveling of the human-powered vehicle or a rider input. The multiple detectors may include, for example, at least two of a vehicle speed sensor, a pedal force sensor, a crank rotation sensor, an acceleration sensor, a motor sensor, a steering angle sensor, a seat height sensor, a seat pressure sensor, a gear change sensor, a brake sensor, or a rider input device (a button, a switch, a touch panel, etc.). The motor sensor may be, for example, a sensor that detects a motor output for pedaling assist.
[0015] The past values of each of the multiple detectors may be a detection value at at least one time point prior to the current time point, or may be a value calculated based on a group of detection values at multiple time points prior to the current time point.
[0016] The predicted values generated by the prediction unit may be values indicating physical quantities related to the traveling of the human-powered vehicle. The predicted values may include, for example, at least one value of the human-powered vehicle's vehicle speed, pedaling force, crank rotation speed, acceleration, motor output for pedaling assist, steering angle, seat height, or gear shift. The trained model may, for example, be a model that receives current detection values and past values from each of multiple sensors of the human-powered vehicle as input and outputs predicted values related to the traveling of the human-powered vehicle.
[0017] (Configuration 2) In the above configuration 1, the plurality of detectors may include at least two of a vehicle speed sensor, a pedaling force sensor, a crank rotation sensor, an acceleration sensor, or a motor output sensor for pedaling assist of the human-powered vehicle. The predicted value generated by the prediction unit may include a value indicating at least one of the vehicle speed, pedaling force, crank rotation speed, acceleration, or motor output for pedaling assist of the human-powered vehicle. This enables predictions regarding riding that more closely reflect the rider's intentions.
[0018] (Configuration 3) In the above configuration 1 or 2, the detection value acquisition unit may acquire, as the past values of the plurality of detectors, past values based on a group of detection values from a period prior to the present time, thereby enabling predictions regarding riding that better reflect the rider's intentions.
[0019] For example, the detection value acquisition unit may acquire, as the past value of at least one of the plurality of detectors, a past value based on a group of detection values in each of a plurality of different time periods in the past from the present time.
[0020] (Configuration 4) In any of the above configurations 1 to 3, the trained model may include a vehicle load prediction model and a travel prediction model. The prediction unit may include a vehicle load determination unit that uses the vehicle load prediction model to determine a value indicating a vehicle load of the human-powered vehicle based on current detection values and past values of at least two of the multiple detectors, and a travel prediction unit that uses the travel prediction model to generate the predicted value based on the value indicating the vehicle load and the current detection values and past values of each of the multiple detectors. This generates an appropriate predicted value according to the vehicle load.
[0021] The vehicle load of a human-powered vehicle (vehicle) depends on the driving environment or vehicle state of the human-powered vehicle. The value indicating the vehicle load may be, for example, a value indicating a vehicle load condition determined depending on the driving environment or vehicle state. The vehicle load can also be referred to as the driving condition. The value indicating the vehicle load may be, for example, a value indicating the slope (uphill, downhill, or flat) of the road in the driving direction. Alternatively, the value indicating the vehicle load may be a value indicating the vehicle load due to at least one of the amount of luggage carried on the vehicle, the wind the vehicle experiences, or the air pressure of the vehicle's tires, in addition to the slope of the road in the driving direction. The value of the vehicle load may be, for example, a value indicating one of a plurality of predetermined levels of vehicle load.
[0022] (Configuration 5) In the above configuration 4, the travel prediction model may include a plurality of load-specific travel prediction models corresponding to a plurality of vehicle load levels, respectively. The travel prediction unit may generate the predicted value using a load-specific travel prediction model corresponding to the value indicating the vehicle load determined by the vehicle load determination unit.
[0023] (Configuration 6) In the above configuration 4, the driving prediction model may be a trained model that receives as input a value indicating a vehicle load and current and past detection values of each of the plurality of detectors, and outputs the predicted value regarding the driving of the human-powered vehicle.
[0024] The vehicle load prediction model may be a model that outputs a value indicating the vehicle load based on at least two of the vehicle speed, pedaling force, crank rotation speed, and output of the motor that assists pedaling of the human-powered vehicle, thereby enabling more accurate prediction of the vehicle load.
[0025] (Configuration 7) A human-powered vehicle control system including the human-powered vehicle travel prediction system of any one of configurations 1 to 6 above is also included in the embodiments of the present invention. The human-powered vehicle control system further includes a control unit that controls devices provided in the human-powered vehicle based on the predicted value generated by the prediction unit. This makes it possible to control devices that reflect the intentions of the rider of the human-powered vehicle with a simple configuration. In other words, it is possible to improve the ability of the control to follow the rider's intentions. As a result, the riding experience for the rider is improved.
[0026] (Configuration 8) In the above-mentioned configuration 7, the device may be at least one of a motor that assists the rider's manual driving (the action of propelling the human-powered vehicle, for example, pedaling), a motor that assists the rider's steering, an actuator that adjusts the position of the seat on which the rider sits, an electric transmission, or a display device. The motor that assists the rider's steering may be, for example, an electric power steering (EPS) system.
[0027] A human-powered vehicle equipped with a human-powered vehicle travel prediction system having any of the above configurations 1 to 6, or a human-powered vehicle control system having the above configuration 7 or 8, is also included in the embodiments of the present invention.
[0028] (Configuration 9) The trained model in an embodiment of the present invention is a trained model constructed by machine learning. The trained model receives current detection values and past values based on past detection values from multiple detectors equipped in the human-powered vehicle as input, and outputs predicted values regarding the traveling of the human-powered vehicle. Use of such a trained model enables predictions regarding the traveling of the human-powered vehicle that reflect the intentions of the rider with a simple configuration.
[0029] (Configuration 10) The trained model of configuration 9 above may include a vehicle load prediction model that takes current detection values and past values of at least two of the plurality of detectors as inputs and outputs a value indicating the vehicle load of the human-powered vehicle, and a driving prediction model that takes the value indicating the vehicle load output by the vehicle load prediction model and the current detection values and past values of each of the plurality of detectors as inputs and outputs the predicted value.
[0030] The travel prediction model may be configured as a single model that receives, for example, a value indicating the vehicle load and current and past detection values from each of a plurality of detectors and executes a process of outputting a predicted value. Alternatively, the travel prediction model may include a plurality of load-specific travel prediction models corresponding to a plurality of vehicle load levels. In this case, the current and past detection values from each of the plurality of detectors are input to a load-specific travel prediction model corresponding to the input value indicating the vehicle load among the plurality of load-specific travel prediction models, and a predicted value is output by the load-specific travel prediction model.
[0031] (Configuration 11) A human-powered vehicle travel prediction model generation system according to an embodiment of the present invention includes: a training data acquisition unit that acquires, as training data, multiple sets of data sets including target time detection values at a target time point of a plurality of detectors provided in the human-powered vehicle, past values based on detection values prior to the target time point, and post-detection values at a time point after the target time point; and a machine learning unit that generates a trained model that outputs a predicted value regarding the driving of the human-powered vehicle from the present time into the future based on the current detection values of the plurality of detectors and past values based on detection values from the past, through machine learning using the training data.
[0032] According to the above configuration 11, a trained model that enables predictions regarding driving that reflect the intentions of the rider of a human-powered vehicle can be generated with a simple configuration.
[0033] (Configuration 12) In the above configuration 11, the training data acquisition unit may acquire a plurality of sets of the data set, each set further including a value indicating a vehicle load of the human-powered vehicle. The machine learning unit may generate a trained model that outputs the predicted value based on the value indicating the vehicle load in addition to the current detection values and the past values of the plurality of detectors. This makes it possible to generate a trained model that can make appropriate predictions according to the vehicle load.
[0034] The machine learning unit may generate a vehicle load prediction model that takes current detection values and past values of at least two of the plurality of detectors as inputs and outputs a value indicating the vehicle load of the human-powered vehicle, and a driving prediction model that takes the value indicating the vehicle load output by the vehicle load prediction model and the current detection values and past values of each of the plurality of detectors as inputs and outputs the predicted value.
[0035] The trained model is constructed by machine learning, which is performed by a computer using a learning algorithm, and may be, for example, supervised learning, unsupervised learning, or reinforcement learning.
[0036] The trained model may be, for example, data representing a mathematical formula for calculating a predicted value. This mathematical formula may include current detection values and past values of each of a plurality of detectors as variables. When the trained model is data representing a mathematical formula, the trained model can be generated by determining the parameters or formula configuration of the formula through machine learning.
[0037] The human-powered vehicle travel prediction system of any of the above configurations 1 to 6, or the human-powered vehicle control system of the above configuration 7 or 8, may include an on-board computer and an on-board storage device mounted on the human-powered vehicle. The on-board computer may execute the processing of the detection value acquisition unit and the prediction unit. The on-board storage device may store the trained model used in the processing of the prediction unit. This allows the functions of the human-powered vehicle travel prediction system or the human-powered vehicle control system to be realized by edge computing using the on-board computer and on-board storage device. In other words, the processing of the human-powered vehicle travel prediction system or the human-powered vehicle control system can be completed by the on-board device without communication with external devices other than the on-board device. Since communication between the human-powered vehicle and the outside is not required, rapid processing of prediction or control is possible. Furthermore, prediction or control is possible without depending on the communication environment.
[0038] A human-powered vehicle travel prediction program in an embodiment of the present invention causes a computer to execute a detection value acquisition process that acquires current detection values of a plurality of detectors provided in the human-powered vehicle and past values based on detection values from the past, and a prediction process that uses a trained model constructed by machine learning to generate a predicted value regarding the travel of the human-powered vehicle based on the current detection values and past values of the plurality of detectors acquired in the detection value acquisition process.
[0039] A human-powered vehicle travel prediction method according to an embodiment of the present invention is executed by a computer and includes a detection value acquisition step of acquiring current detection values from a plurality of detectors provided on the human-powered vehicle and past values based on detection values from the past, and a prediction step of generating a predicted value regarding the travel of the human-powered vehicle based on the current detection values and past values of the plurality of detectors acquired in the detection value acquisition step, using a trained model constructed by machine learning.
[0040] A human-powered vehicle travel prediction model generation program in an embodiment of the present invention causes a computer to execute the following steps: a training data acquisition process that acquires, as training data, multiple sets of data sets including target time detection values of multiple detectors equipped in the human-powered vehicle at a target time point, past values based on detection values prior to the target time point, and post-detection values for times after the target time point; and a machine learning process that uses machine learning with the training data to generate a trained model that outputs predicted values for the travel of the human-powered vehicle from the current time point based on current detection values of the multiple detectors at the current time point and past values based on detection values prior to the current time point.
[0041] A method for generating a travel prediction model for a human-powered vehicle according to an embodiment of the present invention is executed by a computer and includes a training data acquisition step of acquiring, as training data, multiple sets of data sets including target time detection values of multiple detectors provided in the human-powered vehicle, past values based on detection values prior to the target time, and post-detection values of times after the target time, and a machine learning step of generating, by machine learning using the training data, a trained model that outputs prediction values for travel of the human-powered vehicle from the current time to the future, based on current detection values of the multiple detectors and past values based on detection values prior to the current time.
[0042] A system according to an embodiment of the present invention will be described below with reference to the drawings. In the drawings, identical or corresponding parts are designated by the same reference numerals, and description of those parts will not be repeated. In the following description, the front / rear, left / right, and up / down directions of a human-powered vehicle (a bicycle, for example) refer to the front / rear, left / right, and up / down directions relative to a rider sitting on a saddle (seat 24) and gripping handlebars 23. The front / rear, left / right, and up / down directions of a human-powered vehicle are the same as the front / rear, left / right, and up / down directions of the body of the human-powered vehicle, i.e., the body frame. The traveling direction of a human-powered vehicle is the same as the front / rear direction of the human-powered vehicle. The following embodiments are merely examples, and the present invention is not limited to the following embodiments.
[0043] (System configuration example) FIG. 1 is a functional block diagram showing an example configuration of a human-powered vehicle travel prediction system (hereinafter simply referred to as the prediction system), a human-powered vehicle control system (hereinafter simply referred to as the control system), and a human-powered vehicle travel prediction model generation system (hereinafter simply referred to as the prediction model generation system) according to this embodiment. The prediction system 50 in FIG. 1 is included in a control system 5. The control system 5 controls devices equipped in the human-powered vehicle. In this embodiment, as an example, the human-powered vehicle is a bicycle 10. The prediction system 50 generates predicted values related to the travel of the bicycle 10 based on detection values from multiple detectors 6a, 6b equipped in the bicycle 10. A trained model is used to generate the predicted values. The prediction model generation system 100 generates this trained model.
[0044] The prediction system 50 has a detection value acquisition unit 51 and a prediction unit 52. The detection value acquisition unit 51 acquires current detection values and past values of each of the multiple detectors 6a, 6b. The current detection values are detection values at the current time. The past values are values based on detection values from the past before the current time. The detection value acquisition unit 51 can acquire the current detection values and past values, for example, from a storage device that stores detection values from each detector in chronological order. The latest detection value of each detector may be acquired as the current detection value. The detection value itself from an earlier time than the current detection value, or a value calculated based on a group of multiple past detection values, may be acquired as the past value.
[0045] The detection value acquisition unit 51 may acquire past values calculated based on a group of past detection values and stored in the storage unit, or may calculate past values based on a group of past detection values stored in the storage unit. One or more past values may be acquired for one detector. The past value calculated based on a group of past detection values may be, for example, a statistical reference amount, a rate of change, or a value indicating other characteristics of the group of detection values. The statistical reference amount of the past values may be, for example, a representative value such as the mean, median, or mode, or a value indicating the degree of dispersion such as the range, variance, or standard deviation. Furthermore, the past value may be, for example, a value calculated using a group of detection values from a certain period in the past based on the current time.
[0046] The prediction unit 52 generates a predicted value regarding the traveling of the bicycle 10 based on the current detection values and past values of each of the multiple detectors 6a, 6b. The prediction unit 52 generates the predicted value using a trained model. The trained model is, for example, a model that calculates a predicted value using the current detection values and past values of each of the multiple detectors 6a, 6b. The trained model is constructed by determining the parameters of the model used to calculate the predicted value through machine learning.
[0047] The control system 5 has a control unit 53. The control unit 53 controls the devices provided on the bicycle 10 based on the predicted values generated by the prediction unit 52. The control unit 53 may determine control values using the predicted values and provide the control values to the devices.
[0048] The prediction model generation system 100 includes a training data acquisition unit 101 and a machine learning unit 102. The training data acquisition unit 101 acquires multiple data sets as training data. Each data set includes target time detection values, past values, and later detection values for each of the multiple detectors equipped on the bicycle 10. The target time detection values are detection values at the target time point. The past values are values based on detection values prior to the target time point. The later detection values are detection values at a time point after the target time point.
[0049] In the example of FIG. 1, the training data is data based on the driving record data. The driving record data is time series data of the detection values of each of the multiple detectors 6a and 6b. In this way, training data can be obtained based on data including the detection values of each detector at each time. In the example of FIG. 1, the training data is made up of a data set including target time detection values, with each time being the target time, past values, which are statistical values generated from a group of detection values for a certain period of time prior to the target time, and post-detection values, which are detection values after a certain time after the target time.
[0050] The training data acquisition unit 101 may generate training data based on the riding record data stored in the storage unit 110. Alternatively, the training data acquisition unit 101 may acquire training data by reading the training data stored in the storage unit 110. Note that the bicycle that supplies the detection values of the training data used in the prediction model generation system does not have to be exactly the same as the bicycle that supplies the detection values used in the prediction process of the prediction system. For example, it is preferable that the configuration of the multiple detectors provided in the human-powered vehicle that supplies the detection values of the training data is the same as the configuration of the multiple detectors provided in the human-powered vehicle that supplies the detection values used in the prediction system. As an example, the configuration of the human-powered vehicle that supplies the detection values of the training data may be the same as the configuration of the human-powered vehicle that supplies the detection values used in the prediction system.
[0051] The machine learning unit 102 generates a trained model using training data. The trained model is a model that generates a predicted value using the current detection value and past value of each of the multiple detectors 6a, 6b. The machine learning unit 102 can perform machine learning using the target detection value and past value of each detector in the data set of training data as input data to the model and the later detection value as a label (correct answer data). In machine learning, for example, the parameters of the model are adjusted using the input data and the label. This generates a trained model that generates a predicted value based on the current detection value and past value of each detector.
[0052] In machine learning by the machine learning unit 102, for example, the parameters or formula configuration are determined so that a value calculated by substituting the target time detection value and past value of each of the multiple detectors included in each data set of training data into the variables of the formula is close to the later detection value included in each data set. In machine learning, the parameters of the formula may be determined using, for example, multiple regression analysis, decision tree analysis, etc. Note that the trained model is not limited to data representing a formula. The trained model may be, for example, a model using a neural network (NN). The machine learning may be deep learning.
[0053] Each of the prediction system, the control system, and the prediction model generation system is implemented by one or more computers. That is, each functional unit of the prediction system, the control system, and the prediction model generation system can be realized by the computer executing a program. The computer may be configured, for example, with a CPU, an MPU (Micro Processing Unit), an MCU (Micro Controller Unit), a PLD (Programmable Logic Device), an FPGA (Field Programmable Gate Array), an ASIC (Application Specific Integrated Circuit), or other ICs. Programs that execute the processing of the prediction system, the control system, and the prediction model generation system, and non-transitory storage media that store the programs, are also included in embodiments of the present invention.
[0054] The prediction system and the control system may be implemented, for example, by an on-board computer installed in the human-powered vehicle (bicycle 10). In this case, the trained model may be stored in an on-board storage device installed in the human-powered vehicle. The on-board computer may be a computer included in a device (on-board device) equipped in the human-powered vehicle. The on-board storage device may be a data storage device (e.g., storage or memory) included in the on-board device. An on-board device including an on-board computer or on-board storage device may be, for example, the drive unit 40, UI unit 70, or display device 71 of the bicycle 10 described below, or another control device. Note that devices that are detachable from the human-powered vehicle, such as a cycle computer (cycle meter) or smartphone that is attached to the human-powered vehicle and connected to a detector of the human-powered vehicle by wire or wirelessly, are also included in the on-board device. A computer or storage device included in such a detachable device may be an on-board computer or on-board storage device.
[0055] (Example of bicycle configuration) FIG. 2 is a left side view showing an example configuration of a bicycle 10. The symbols F, B, U, and D in FIG. 2 represent front, rear, top, and bottom, respectively. The bicycle 10 is, as an example, an electrically assisted bicycle. The bicycle 10 includes multiple wheels 21 and 22, a body frame 11, a motor 3, a crankshaft 41, and pedals 31. The multiple wheels 21 and 22, the crankshaft 41, and the pedals 31 are rotatably supported on the body frame 11. The bicycle 10 also includes a transmission mechanism that transmits the rotation of the motor 3 to at least one of the wheels 21 and 22, and a transmission mechanism that transmits the pedaling force applied to the pedals 31 and the crankshaft 41 to at least one of the wheels 21 and 22. At least one of the wheels 21 and 22 is driven by at least one of the pedaling force of the pedals 31 or the driving force of the motor 3.
[0056] As shown in FIG. 2, the body frame 11 extends in the front-to-rear direction. The body frame 11 has a head pipe 12, an upper frame 13u, a down frame 13d, a seat frame 14, a pair of chain stays 16, and a pair of seat stays 17. The head pipe 12 is located at the front of the bicycle 10. The front ends of the down frame 13d and the upper frame 13u are connected to the head pipe 12. The down frame 13d and the upper frame 13u extend in the front-to-rear direction. The down frame 13d and the upper frame 13u extend diagonally downward. The upper frame 13u is located above the down frame 13d. The rear end of the upper frame 13u is connected to the seat frame 14. The rear end of the down frame 13d is connected to a bracket 15. The lower end of the seat frame 14 is connected to the bracket 15. The seat frame 14 extends upward and diagonally rearward from the bracket 15. Note that the body frame 11 may be configured without the upper frame 13u.
[0057] A handle stem (steering column) 25 is rotatably inserted into the head pipe 12. A handle 23 is fixed to the upper end of the handle stem 25. A front fork 26 is fixed to the lower end of the handle stem 25. A front wheel 21 is rotatably supported by an axle 27 at the lower end of the front fork 26.
[0058] Grips are attached to the left and right ends of the handlebars 23. A left brake lever 74 is attached to the left part of the handlebars 23, and a right brake lever 74 is attached to the right part of the handlebars 23. The left brake lever 74 is a lever for operating a brake 76 of the rear wheel 22. The right brake lever 74 is a lever for operating a brake 75 of the front wheel 21.
[0059] A seat pipe 28 is inserted into the cylindrical seat frame 14. A seat (saddle) 24 is provided at the upper end of the seat pipe 28. In this way, the body frame 11 rotatably supports a handlebar stem 25 at the front and rotatably supports a rear wheel 22 at the rear. The seat 24 and a drive unit 40 are also attached to the body frame 11.
[0060] A pair of chain stays 16 are connected to the rear end of the bracket 15. The pair of chain stays 16 are arranged to sandwich the rear wheel 22 from the left and right. One end of a seat stay 17 is connected to the rear end of each chain stay 16. The pair of seat stays 17 are arranged to sandwich the rear wheel 22 from the left and right. The other end of each seat stay 17 is connected to the upper part of the seat frame 14. The rear wheel 22 is rotatably supported by an axle 29 at the rear ends of the pair of chain stays 16.
[0061] The front fork 26 is provided with a vehicle speed sensor (speed sensor) 61 that detects the rotation of the front wheel 21. The vehicle speed sensor 61 has, for example, a detectable element that rotates with the front wheel 21 (wheel), and a detecting element that is fixed to the body frame 11 and detects the rotation of the detectable element. The detecting element detects the detectable element mechanically, magnetically, or optically. Note that the vehicle speed sensor 61 is not limited to detecting the rotation of the front wheel 21, but may also detect the rotation of a rotating body that rotates as the bicycle 10 travels, such as the rear wheel 22, motor 3, crankshaft 41, transmission gear, or chain.
[0062] The drive unit 40 is attached below the bracket 15 with fasteners (not shown). The drive unit 40 has a housing 40a that forms the outer shape of the drive unit 40. The motor 3 is housed within the housing 40a. A crankshaft 41 passes through the housing 40a in the left-right direction. The crankshaft 41 is rotatably supported by the housing 40a via a plurality of bearings.
[0063] A pedal force sensor 62 is provided around the crankshaft 41 to detect the pedal force of the occupant. The pedal force sensor 62 detects the torque that rotates the crankshaft 41 around its axis. The pedal force sensor 62 can be, for example, a non-contact type such as a magnetostrictive type, or a contact type such as an elastic displacement detection type torque sensor. The magnetostrictive torque sensor has a magnetostrictive effect and includes a magnetostrictive material that receives the rotational force of the crankshaft, and a detection coil that detects changes in magnetic permeability due to the force of the magnetostrictive material.
[0064] Crank arms 31b are attached to both ends of the crankshaft 41. Pedal steps 31a are attached to the tips of the crank arms 31b, respectively. The crank arms 31b and pedal steps 31a form pedals 31. When the rider steps on the pedals 31, the crankshaft 41 rotates. Although not shown, the bicycle 10 is provided with a drive sprocket that rotates with the crankshaft 41 and a driven sprocket that rotates with the rear wheel 22. A chain 46 is wound between the drive sprocket and the driven sprocket. Note that a belt, shaft, or the like may be used instead of the chain 46. A one-way clutch 49a (see FIG. 3) is provided on the rotation transmission path from the driven sprocket to the rear wheel 22. The one-way clutch 49a transmits forward rotation (forward rotation) but does not transmit reverse rotation (reverse rotation).
[0065] A transmission mechanism (not shown) that transmits the rotation of the motor 3 to the drive sprocket (or chain 46) is provided within the drive unit 40. The transmission mechanism includes, for example, a reducer (reduction gear) 32 (see FIG. 3). The reducer 32 reduces the rotation of the motor before transmitting it to the drive sprocket. The transmission mechanism also includes a combining mechanism that combines the rotation of the crankshaft 41 and the rotation of the motor 3 and transmits the combined rotation to the drive sprocket. The combining mechanism has, for example, a cylindrical member. The crankshaft 41 is disposed inside the cylindrical member. The drive sprocket is attached to the combining mechanism. The combining mechanism rotates around the same rotation axis as the crankshaft 41 and the drive sprocket. One-way clutches 49b, 49c (see FIG. 2) may be provided on the rotation transmission path from the crankshaft 41 to the combining mechanism and on the rotation transmission path from the motor 3 to the combining mechanism. The rotational force transmitted from the motor 3 to the drive sprocket via the transmission mechanism becomes the driving force for the wheels (rear wheels 22).
[0066] A battery unit 35 is disposed on the body frame 11. The battery unit 35 supplies power to the motor 3 of the drive unit 40. The battery unit 35 has a battery and a battery control unit (not shown). The battery is a rechargeable battery that can be charged and discharged. The battery control unit controls the charging and discharging of the battery, and monitors the output current and remaining capacity of the battery.
[0067] The handlebars 23 are provided with a user interface unit (UI unit) 70 that accepts various operations from the rider. The UI unit 70 has an input device 72, such as buttons or a touch panel, that accepts user operations. The UI unit 70 may also be equipped with a display device 72. In this case, the display device 71 and the input device 72 may be integrated to form a touch panel. The display device 71 displays various information related to the bicycle 10.
[0068] FIG. 3 is a block diagram showing an example of the mechanical and electrical connection configuration of the components of the bicycle 10 shown in FIG. 2. In the example shown in FIG. 3, rotation of the pedal 31 is transmitted to the combiner mechanism 43 via a one-way clutch 49d. Rotation of the motor 3 is transmitted to the combiner mechanism 43 via a speed reducer 32 and a one-way clutch 49c. The combiner mechanism 43 includes, for example, the combiner mechanism, a drive sprocket, a chain 46, and a driven sprocket. In the combiner mechanism 43, power is transmitted in the following order: combiner mechanism, drive sprocket, chain 46, and driven sprocket. Rotation of the driven sprocket is transmitted to the rear wheel 22 via the drive shaft 44, the transmission mechanism 48, and a one-way clutch 49a.
[0069] The gear change mechanism 48 is a mechanism that changes the gear ratio in response to the rider's operation of the gear change operating device 47. The gear change operating device 47 is attached to the handlebars 23 (FIG. 1), for example. In this example, the gear change mechanism 48 is an internal gear changer provided between the drive shaft 44 and the rear wheel 22, but the gear change mechanism 48 may also be an external gear changer. When the gear change mechanism 48 is an external gear changer, a multi-stage sprocket may be used as the driven sprocket. In this case, the multi-stage sprocket around which the chain 46 is wound is switched in response to the operation of the gear change operating device 47.
[0070] The pedaling force generated by the rider stepping on the pedals 31 rotates the crankshaft 41 in the forward rotation direction. The rotation of the crankshaft 41 is transmitted to the rear wheel 22 by the transmission mechanism. Furthermore, the rotational force generated by the operation of the motor 3 rotates the crankshaft 41 in the forward rotation direction. As a result, the rotational force of the motor 3 is transmitted as a driving force that rotates the rear wheel 22 in the forward rotation direction. When the rider's pedaling force and the rotational force of the motor 3 are transmitted to the crankshaft simultaneously, the rotational force of the motor 3 assists (supports) the rider's pedaling force. As a variant, the rotational force of the motor 3 may be configured to be transmitted to the front wheel 21. In other words, the transmission mechanism may be configured to transmit the rotation of the motor to a wheel different from the wheel to which the rotation of the crankshaft 41 is transmitted. In this case, a combining mechanism that combines the pedaling force and the motor output is not required.
[0071] In the example of FIG. 3, the bicycle 10 has a control system 5. The control system includes a prediction system 50. For example, the control system 5 is configured by a computer mounted on a board inside the housing 40a of the drive unit 40. The control system 5 (prediction system 50) is electrically connected to a vehicle speed sensor 61, a pedal force sensor 62, a crank rotation sensor 65, the motor 3, a motor output sensor 64, and a UI unit 70. These connections may be wired or wireless.
[0072] The crank rotation sensor 65 detects the rotation of the crankshaft 41. The crank rotation sensor 65 may have, for example, a detected element that rotates together with the crankshaft 41, and a detecting element that is fixed to the body frame 11 and detects the rotation of the detected element. The detecting element can detect the detected element mechanically, optically, or magnetically.
[0073] The motor output sensor 64 detects the output of the motor 3. The motor output sensor 64 may detect at least one of the voltage, current, rotational speed (number of rotations), or torque of the motor 3 as the motor output. The motor output sensor 64 may detect the rotational speed (number of rotations) or torque of the motor based on the current, voltage, or other electrical signals of the motor 3. The motor output sensor 64 may be, for example, a voltage sensor or a current sensor.
[0074] The mechanism for transmitting the driving force of the motor 3 is not limited to the above example. For example, the drive unit 40 may have an output shaft that extends laterally from inside the housing 40a to the outside. In this case, the rotation of the motor 3 is transmitted to the output shaft by a transmission mechanism. An auxiliary sprocket is attached to the output shaft outside the housing 40a. A chain 46 is wound around the auxiliary sprocket. The rotational force generated by operation of the motor 3 rotates the auxiliary sprocket, which in turn rotates the rear wheel 22 in the forward direction via the chain 46.
[0075] In the example of FIG. 1, the motor 3 is housed in a drive unit 40 attached to the body frame 11. Alternatively, the motor may be provided in the hub of a wheel (at least one of the front wheel 21 or the rear wheel 22) of the bicycle 10. In this case, the motor may be an in-wheel motor (hub motor) built into the hub. The hub motor may include, for example, a rotor and a stator. The rotation shaft of the rotor may be coaxial with the axles 27, 29. The hub may be provided with a gear that transmits the rotation of the hub motor to the wheel (front wheel 21 or rear wheel 22). The gear may be, for example, a planetary gear. Furthermore, a one-way clutch may be provided in the rotation transmission path between the hub motor and the wheel (front wheel 21 or rear wheel 22).
[0076] (Example of prediction processing) Fig. 4 is a diagram showing a flowchart of processing executed by the prediction system 50 shown in Fig. 1 and example data. In the example of Fig. 4, the detection value acquisition unit 51 of the prediction system 50 acquires the current detection values of the multiple detectors 6a, 6b, i.e., the latest detection values (S01). Here, as an example, a case will be described in which the multiple detectors 6a, 6b are a vehicle speed sensor 61, a pedal force sensor 62, a crank rotation sensor 65, and a motor output sensor 64.
[0077] The detection value acquisition unit 51 uses the current detection value of each detector to update accumulated data of detection values for a certain period of time based on the current time point of each detector (S02). For example, the current detection value is used to update accumulated data of detection values for a period from a certain time before the detection time (current time point) of the current detection value to the current time point. As an example, the accumulated data is updated so that the accumulated data becomes a group of detection values for the most recent (latest) 1000 ms period. The accumulated data is stored, for example, in a storage device (memory, etc.) accessible by a computer constituting the prediction system 50. Note that the certain period based on the current time point that is the subject of the accumulated data may be multiple different periods. For example, the detection values for the period from 500 ms before the current time point to the current time point and the period from 1500 ms before the current time point to 500 ms before the current time point may be stored as accumulated data.
[0078] The detection value acquisition unit 51 acquires past values based on the updated accumulated data (S03). For example, a value calculated based on a group of detection values for a certain period based on the current time point included in the accumulated data is acquired as the past value. As an example, the average of the detection values from a time point 1000 ms before the current time point to the current time point is acquired as the past value. The average may be a simple average or a weighted moving average.
[0079] The prediction unit 52 inputs the current detection values and past values of each of the multiple detectors 6a, 6b into the trained model M1. The trained model outputs a predicted value based on the current detection values and past values (S04). This generates a predicted value. The control unit 53 uses the predicted value generated in S04 to control the devices equipped on the bicycle 10 (S05).
[0080] Table T1 in Figure 4 shows an example of current detected values and past values input to the trained model M1, and predicted values output in response to these. In the example of Table T1, combinations of current detected values and past values for vehicle speed, crank rotation speed, pedal force, and motor output are input to the trained model M1. For these combinations of values, the trained model M1 predicts the vehicle speed two seconds from now and then outputs it.
[0081] In Table T1, each of rows No. 1 to No. 3 indicates a set of input values to the trained model at a point in time during the travel of the human-powered vehicle, and the predicted value that is output. The data in each of rows No. 1 to No. 3 is data from a different point in time. In this example, in the process of generating a predicted value using the current detected value and past values at a certain point in time, the current detected value and past values at other points in time are not used.
[0082] The prediction model generation system 100 can generate a trained model that inputs and outputs the data shown in Table T1 in Figure 4. In this case, each data set of training data includes the target time detection values and past values of vehicle speed, crank rotation speed, pedal force, and motor output, as well as the vehicle speed value two seconds after the target time. The past value can be, for example, the average of a group of detection values over a certain period of time in the past, based on the target time.
[0083] (Modification of prediction system) FIG. 5 is a functional block diagram showing a modified example of a prediction system. In the example of FIG. 5, the prediction unit 52 of the prediction system 50 has a vehicle load determination unit 521 and a travel prediction unit 522. The trained model includes a vehicle load prediction model M11 and a travel prediction model M12. The vehicle load determination unit 521 determines a value indicating the vehicle load of the bicycle 10 based on current and past detection values of the multiple detectors 6a and 6b. The vehicle load prediction model M11 is used for this determination. The travel prediction unit 522 generates a predicted value based on the value indicating the vehicle load and the current and past detection values of each of the multiple detectors 6a and 6b. The travel prediction model M12 is used for generating the predicted value.
[0084] In the example shown in FIG. 5, the prediction model generation system 100 generates a vehicle load prediction model M11 and a driving prediction model M12 as trained models. The training data dataset includes the target-time detection values, past values, and post-detection values of each of the multiple detectors 6a and 6b, as well as a value indicating the vehicle load at the target time. The machine learning unit 102 can generate the vehicle load prediction model M11 by performing machine learning using the target-time detection values and past values of each detector in the dataset as input data to the model and values indicating the vehicle load as labels (correct answer data). The machine learning unit 102 can also generate the driving prediction model M12 by performing machine learning using the target-time detection values and past values of each detector in the dataset, or data obtained by adding a value indicating the vehicle load to these, as input data to the model and values indicating the post-detection values as labels (correct answer data).
[0085] Fig. 6 is a diagram showing a first example of a vehicle load prediction model M11 and a traveling prediction model M12. Fig. 7 is a diagram showing a second example of these models. In both the examples of Fig. 6 and Fig. 7, the vehicle load prediction model M11 receives current detection values and past values from each of a plurality of detectors as input, and outputs a vehicle load. The traveling prediction model M12 receives current detection values and past values from each of a plurality of detectors as well as a value indicating the vehicle load as input, and outputs a predicted value.
[0086] In the example of FIG. 6, the travel prediction model M12-1 is configured as a single model that receives a value indicating one model vehicle load and current and past detection values from a plurality of detectors and executes a process of outputting a predicted value. In contrast, in the example of FIG. 7, the travel prediction model M12-2 includes multiple load-specific travel prediction models corresponding to a plurality of vehicle load levels. The travel prediction model M12-2 also has a switching unit MK that switches between the load-specific travel prediction models that execute the prediction process according to the input value indicating the vehicle load. In the example of FIG. 7, the travel prediction model M12-2 includes load-specific travel prediction models corresponding to three vehicle load levels: high, medium, and low. The vehicle load levels are not limited to three levels, and may be two or four or more levels. The current and past detection values from a plurality of detectors are input to the load-specific travel prediction models at levels corresponding to the vehicle load input to the travel prediction model M12-2. A predicted value is generated by the load-specific travel prediction models.
[0087] Fig. 8 is a diagram showing an example of a prediction process and example data using the model shown in Fig. 6. In the example of Fig. 8, the vehicle load determination unit 521 inputs the current detection values and past values of each of the multiple detectors 6a, 6b to the vehicle load prediction model M11, and causes the vehicle load prediction model M11 to generate a value indicating the vehicle load (S04-1). The traveling prediction unit 522 inputs the vehicle load value determined in S04-1 and the current detection values and past values of each of the multiple detectors 6a, 6b to the traveling prediction model M12-1, and causes the vehicle load prediction model M11 to generate a value indicating the vehicle load (S04-2).
[0088] Table T2 in Fig. 8 shows an example of input data and output data of the vehicle load prediction model M11. In this example, a combination of currently detected values and past values of vehicle speed, crank rotation speed, pedal force, and motor output is input to the vehicle load prediction model M11. The vehicle load prediction model M11 predicts and outputs a value indicating the vehicle load for each combination of these values.
[0089] Table T3 in Fig. 8 shows an example of input data and output data of the driving prediction model M12-1. In this example, a combination of currently detected values and past values of vehicle speed, crank rotation speed, pedal force, and motor output, as well as a value indicating vehicle load, is input to the driving prediction model M12-1. For this combination of values, the driving prediction model M12-1 outputs a value indicating the vehicle speed two seconds from now as a predicted value.
[0090] FIG. 9 is a diagram showing an example of a prediction process using the model shown in FIG. 7 and example data. In the example of FIG. 9, the process of generating a vehicle load value in S04-1 can be performed in the same manner as S04-1 in FIG. 8. The driving prediction model M12-2 inputs the current detection values and past values of each of the multiple detectors 6a, 6b into a load-specific driving prediction model corresponding to the vehicle load determined in S04-1, and causes the load-specific driving prediction model to generate a predicted value (S04-2a to 2c). In this example, when the vehicle load level is high, the current detection values and past values are input into the high-load driving prediction model, and the high-load driving prediction model generates a predicted value. Similarly, when the vehicle load level is medium, the medium-load driving prediction model generates a predicted value. When the vehicle load level is low, the low-load driving prediction model generates a predicted value.
[0091] Table T4 in Fig. 9 shows an example of the input data and output data of the driving prediction model M12-2, as well as an example of a load-specific driving prediction model that executes the prediction process. In this example, a combination of currently detected values and past values of vehicle speed, crank rotation speed, pedal force, and motor output is input to a load-specific driving prediction model that corresponds to the level of vehicle load. The load-specific driving prediction model predicts and outputs the vehicle speed two seconds later for the combination of these values.
[0092] 8 and 9, the combination of detectors that supply input data to the vehicle load prediction model M11 is the same as the combination of detectors that supply input data to the traveling prediction model M12. These combinations may be different. For example, some of the detectors that supply input data to the traveling prediction model M12 (vehicle speed sensor, pedal force sensor, crank rotation sensor, and motor output sensor) (e.g., vehicle speed sensor and pedal force sensor) may serve as detectors that supply input data to the vehicle load prediction model M11. Alternatively, a detector different from the detectors that supply input data to the traveling prediction model M12 may be included in the detectors that supply input data to the vehicle load prediction model M11.
[0093] (Model generation processing example) FIG. 10 is a diagram illustrating an example of the generation process of the vehicle load prediction model M11 and the driving prediction model M12-1 shown in FIG. 6. In the example of FIG. 10, training data is constructed based on driving record data. The driving record data is time-series data of detectors detected by multiple detectors while driving under different vehicle load conditions. The detection values of the multiple detectors at each time point in the driving record data are associated with a value indicating the vehicle load (for example, high, medium, or low). For example, a detection value detected while driving uphill may be recorded in association with a vehicle load value indicating "high," a detection value detected while driving on flat ground may be recorded in association with a vehicle load value indicating "medium," and a detection value detected while driving downhill may be recorded in association with a vehicle load value indicating "low."
[0094] A data set corresponding to one time point (one target time point) of the training data includes a value indicating the vehicle load in addition to the target time detector, past values, and later detected values. The multiple data sets constituting the training data include a data set including a "high" vehicle load, a data set including a "medium" vehicle load, and a data set including a "low" vehicle load. In other words, all of the multiple levels of vehicle load values are included in the multiple data sets of the training data.
[0095] In the machine learning for generating the vehicle load prediction model M11, the target detected values and past values of each data set are input data to the model, and the values indicating the vehicle load of each data set are used as labels (correct answer data). This machine learning makes it possible to generate a vehicle load prediction model that generates values indicating the vehicle load based on the current detected values and past values.
[0096] In the machine learning for generating the driving prediction model M12-1, the values indicating the vehicle load, the target detection values, and past values of each data set are input data to the model, and the values indicating the post-vehicle detection values of each data set are used as labels (correct answer data). This machine learning can generate the driving prediction model M12-1 that generates predicted values based on the vehicle load and the current detection values and past values of each detector.
[0097] FIG. 11 is a diagram for explaining an example of a process for generating the vehicle load prediction model M11 and the driving prediction model M12-2 shown in FIG. 7. In FIG. 11, the configurations of the driving record data and the training data can be the same as those in FIG. 10. Furthermore, machine learning for generating the vehicle load prediction model can be the same as that in FIG. 10. In the machine learning for generating the driving prediction model, each load-specific driving prediction model is generated by machine learning using a group of datasets of training data having the same vehicle load level. In this case, in the machine learning for each load-specific driving prediction model, the target detection value and past value of each detector in the dataset are input data to the model, and the later detection value is used as the label (ground truth data). In the example of FIG. 10, a load-specific driving prediction model for a "high" vehicle load is generated by machine learning using a group of datasets for a "medium" vehicle load. Similarly, a load-specific driving prediction model for a "medium" vehicle load is generated by machine learning using a group of datasets for a "medium" vehicle load, and a load-specific driving prediction model for a "low" vehicle load is generated by machine learning using a group of datasets for a "low" vehicle load.
[0098] (Example of vehicle speed prediction) The prediction system may be configured such that the detection value acquisition unit acquires current and past detection values from a vehicle speed sensor and a pedal force sensor equipped in the human-powered vehicle, and the prediction unit outputs a predicted value of the vehicle speed based on these values. This enables a vehicle speed prediction that reflects the rider's intentions with a simple configuration. Note that the vehicle speed refers to the speed in the traveling direction of the human-powered vehicle. In this case, as an example, the prediction unit may use a vehicle load prediction model to determine a value of the vehicle load based on current and past detection values of the vehicle speed and pedal force, and use a travel prediction model to generate a predicted value of the vehicle speed based on the current and past detection values of the vehicle speed and pedal force, as well as the determined vehicle load value. FIG. 12 is a diagram showing an example of a travel prediction model M12 that generates a predicted value of the vehicle speed. The travel prediction model M12 in FIG. 12 receives current and past detection values from the vehicle speed sensor and pedal force sensor, as well as the vehicle load, and outputs a predicted value of the vehicle speed.
[0099] (Example of crank rotation speed prediction) The prediction system may be configured such that the detection value acquisition unit acquires current and past detection values of a vehicle speed sensor, a pedal force sensor, and a crank rotation sensor (e.g., a cadence sensor) equipped in the human-powered vehicle, and the prediction unit outputs a predicted value of the crank rotation speed (e.g., cadence) based on these values. This enables a crank rotation speed prediction that reflects the rider's intentions with a simple configuration. In this case, as an example, the prediction unit may use a vehicle load prediction model to determine a vehicle load value based on current and past detection values of the vehicle speed, pedal force, and crank rotation speed, and use a riding prediction model to generate a predicted value of the crank rotation speed based on the current and past detection values of the vehicle speed, pedal force, and crank rotation speed, as well as the determined vehicle load value. The detection value acquisition unit may further acquire current and past detection values of the output of a motor that assists pedaling. The prediction unit may further generate a predicted value of the crank rotation speed based on the current and past detection values of the motor output.
[0100] Fig. 13 is a diagram showing an example of a driving prediction model M12 that generates a crank rotation speed as a predicted value. The driving prediction model M12 in Fig. 13 receives current and past detection values of the vehicle speed sensor, pedal force sensor, and crank rotation sensor, as well as the vehicle load, and outputs a predicted value of the crank rotation speed. In the example of Fig. 13, the input data to the driving prediction model M12 may further include current and past detection values of the motor output sensor.
[0101] (Example of pedal force prediction) The prediction system may be configured such that the detection value acquisition unit acquires current and past detection values from a vehicle speed sensor and a pedal force sensor provided in the human-powered vehicle, and the prediction unit outputs a predicted value of the pedal force based on these values. This enables a pedal force prediction that reflects the rider's intentions with a simple configuration. In this case, as an example, the prediction unit may use a vehicle load prediction model to determine a vehicle load value based on current and past detection values of the vehicle speed and pedal force, and use a travel prediction model to generate a predicted value of the pedal force based on the current and past detection values of the vehicle speed and pedal force and the determined vehicle load value. Note that the detection value acquisition unit may further acquire a current detection value or current and past detection values from a crank rotation speed sensor. The prediction unit may further generate a predicted value of the pedal force based on the current detection value or current and past detection values of the crank rotation speed.
[0102] Fig. 14 is a diagram showing an example of a driving prediction model M12 that generates a pedal force as a predicted value. The driving prediction model M12 in Fig. 14 receives as input a vehicle speed sensor, current and past detection values of a pedal force sensor, a current detection value of a crank rotation sensor, and a vehicle load, and outputs a predicted value of a pedal force. In the example of Fig. 14, the input of the current detection value of the crank rotation sensor may be omitted. Also, in the example of Fig. 14, the past value of the crank rotation sensor may be added to the input data to the driving prediction model M12.
[0103] The prediction system may be configured such that the detection value acquisition unit acquires current and past detection values from a vehicle speed sensor, a pedal force sensor, and a motor output sensor for pedaling assist that are provided in the human-powered vehicle, and the prediction unit outputs a predicted value of the motor output based on these values. This enables prediction of the motor output for pedaling assist that reflects the rider's intentions with a simple configuration. In this case, as an example, the prediction unit may use a vehicle load prediction model to determine a vehicle load value based on current and past detection values of the vehicle speed and pedal force, and use a travel prediction model to generate a predicted value of the motor output based on the current and past detection values of the vehicle speed, pedal force, and motor output, as well as the determined vehicle load value. The detection value acquisition unit may further acquire a current detection value or current and past detection values of a crank rotation speed sensor. The prediction unit may further generate a predicted value of the motor output based on the current detection value or current and past detection values of the crank rotation speed.
[0104] Fig. 15 is a diagram showing an example of a driving prediction model M12 that generates motor output as a predicted value. The driving prediction model M12 in Fig. 15 receives current and past detection values of the vehicle speed sensor, pedal force sensor, and motor output sensor, the current detection value of the crank rotation sensor, and the vehicle load as inputs, and outputs a predicted value of motor output. In the example of Fig. 15, the input of the current detection value of the crank rotation sensor may be omitted. Also, in the example of Fig. 15, the past value of the crank rotation sensor may be added to the input data to the driving prediction model M12.
[0105] In the examples shown in Figs. 12 to 15, the predicted value generated by the prediction unit is a predicted value of a value detected by one of the multiple detectors that supply the current detection values acquired by the detection value acquisition unit. That is, the travel prediction model M12 generates a predicted value of one of the current detection values that are input. This enables more accurate prediction. The travel prediction model in Figs. 12 to 15 may have the configuration shown in Fig. 6 or 7. Furthermore, the travel prediction model M12 may be a trained model that does not have a vehicle load input.
[0106] The predicted value is not limited to the above examples, and may be, for example, the acceleration of the human-powered vehicle, at least one angle or angular velocity of roll, pitch, or yaw, or the presence or absence of a turn (curve), etc.
[0107] (Control example) Fig. 16 is a functional block diagram showing an example configuration of the control unit 53 of the control system 5. As shown in Fig. 16, the control unit 53 can control devices of the human-powered vehicle (bicycle) based on at least one predicted value of the predicted vehicle speed, the predicted pedaling force, the predicted crank rotation speed, or the predicted motor output. In the example of Fig. 16, the devices controlled by the control unit 53 are at least one of the display device 71, the motor 3, the seat post actuator 81, the electric power steering (EPS) 82, and the electric transmission 83.
[0108] The control unit 53 can control the motor output for assisting pedaling based on a predicted value of at least one of the vehicle speed, pedaling force, crank rotation speed, and motor output. For example, the control unit 53 can control the amount of assistance by the motor 3 based on a predicted value of pedaling force.
[0109] The control of the motor output for assistance by the control unit 53 may be, for example, control of the amount of assistance by the motor, change in the waveform of the assist force according to the pedaling force, the magnitude of the assist force relative to the pedaling force (assist ratio), the responsiveness of changes in the assist force to changes in the pedaling force, the assist mode, the upper limit of the assist force, or other conditions of assistance.
[0110] The control unit 53 may control the motor output for assist based on two or more predicted values of the predicted vehicle speed, the predicted pedaling force, the predicted crank rotation speed, and the predicted motor output. In this way, controlling the motor output using a combination of two or more predicted values enables assistance that meets the rider's intentions in various situations. For example, the prediction unit 52 may output predicted values of detected values from two or more of the multiple detectors 6a, 6b. The control unit 53 may control a device (e.g., a motor for pedaling assist) provided in the human-powered vehicle using the predicted values of detected values from two or more of the multiple detectors 6a, 6b.
[0111] If the predicted value indicates an increase in vehicle speed, i.e., acceleration, the control unit 53 may control the motor to increase the amount of assistance with respect to the pedaling force. Furthermore, if the predicted value indicates a decrease in vehicle speed, i.e., deceleration, the control unit may control the motor to decrease the amount of assistance with respect to the pedaling force. The control of the amount of assistance with respect to the pedaling force may be, for example, by controlling the ratio of the motor's assist force to the pedaling force (assist ratio) or the response speed of the motor output with respect to a change in pedaling force. Whether the predicted value indicates an increase or decrease in vehicle speed can be determined by comparing the predicted value with the currently detected value. For example, if the predicted value of vehicle speed is greater than the currently detected value and the difference between them exceeds a threshold, the predicted value may be determined to indicate an increase in vehicle speed.
[0112] If the predicted value indicates an increase in pedal force, the control unit 53 may control the motor to increase the amount of assist in response to the pedal force. This improves the ability of the motor output to follow the rider's intention to increase the pedal force. For example, assistance can be provided with a small delay from the start of an uphill climb. Also, if the predicted value indicates a decrease in pedal force, the control unit 53 may control the motor 3 to decrease the amount of assistance, i.e., weaken the assistance.
[0113] If the predicted values indicate a decrease in vehicle speed, pedal force, and crank rotation speed, the control unit 53 may control the motor to reduce the amount of assistance in response to the pedal force, thereby reducing the rider's sense of remaining assistance when, for example, stopping or slowing down.
[0114] When the predicted values indicate a decrease in vehicle speed, a decrease in crank rotation speed, and an increase in pedal force, the control unit 53 may perform control to increase the amount of motor assistance relative to the pedal force, thereby reducing stalling when climbing a slope, for example.
[0115] The control unit 53 may control the motor to increase the amount of assistance in response to the pedaling force when the predicted value indicates an increase in vehicle speed and crank rotation speed and the pedaling force is lower than a threshold value. This can reduce delays in assistance or sudden increases in assistance when starting to pedal from a standstill, for example. As an example, the control unit 53 may relax the pedaling force conditions for starting assistance by the motor when the predicted value indicates an increase in vehicle speed and crank rotation speed. For example, the control unit 53 may lower the pedaling force threshold that is the condition for starting assistance. This can start assistance with a low pedaling force when an increase in vehicle speed and crank rotation speed is predicted.
[0116] When the predicted value indicates that the vehicle speed will not change, the control unit 53 may perform control to smooth the rise in motor assist in response to pedal force. This makes it easier for the rider to ride at a constant speed. The control unit 53 can smooth the rise in motor assist in response to pedal force, for example, by slowing down the response speed of the motor output in response to changes in pedal force. Whether the predicted value indicates that the vehicle speed will not change may be determined, for example, by whether the difference between the currently detected vehicle speed and the predicted value is within a predetermined range.
[0117] The control unit 53 may determine that slippage has occurred and control the motor to reduce the amount of assist when the difference between the predicted values of vehicle speed, crank rotation speed, and pedal force and the actual detected values exceeds a predetermined range. This makes it possible to respond to the occurrence of slippage. In this way, by controlling the motor output based on the difference between the predicted values and the actual detected values, it becomes possible to provide assistance that responds to changes in conditions such as slippage.
[0118] The control unit 53 may control the seat to be lowered when the predicted value indicates that the amount of decrease in vehicle speed is equal to or greater than a threshold value. Furthermore, the control unit may control the seat to be raised when the predicted value indicates an increase in vehicle speed while the seat is lowered. For example, when the predicted value of the vehicle speed indicates a deceleration below a predetermined speed (e.g., 5 km / h), the control unit 53 can lower the seat position. The seat position can be automatically changed, for example, by controlling the actuator 81 provided in the seat post. In this way, by controlling the seat position according to the predicted value of the vehicle speed, the seat position can be adjusted in accordance with the rider's intentions.
[0119] The seat post is attached to the seat frame (seat tube) 14. A seat 24 is attached to the seat post. The seat post is configured to adjust the height of the seat 24 from the road surface by changing the length of the portion that protrudes from the seat frame 14. The seat post includes an actuator 81. The actuator 81 may include an electric motor or a solenoid. Driving the actuator 81 moves the seat post relative to the seat frame 14. The seat post may be, for example, a dropper seat post or an adjustable seat post.
[0120] If the predicted value indicates that the pedal force is equal to or greater than a threshold, the control unit 53 may control the electric power steering (EPS) to maintain straight-line travel. For example, if a strong pedal force is predicted, the EPS outputs a reaction force in response to the rider's steering force, making it easier for the rider to maintain straight-line travel. Furthermore, if the predicted value indicates that the bicycle speed is decreasing by a threshold or greater, the control unit may control the EPS to speed up the response of the assist to the steering input. For example, if the predicted value predicts that the bicycle will travel at a low speed, the EPS's response speed to the rider's steering input can be increased, thereby enabling the bicycle to turn smoothly. The EPS may include a motor and a transmission mechanism that transmits the motor's rotation to the steering shaft. The EPS may also include a steering torque sensor that detects the rider's steering torque. The EPS is electrically connected to the control system 5 wirelessly or via a wire.
[0121] When the predicted value indicates an increase in crank rotation speed, the control unit 53 may control the electric transmission to upshift, i.e., to change gears so that pedaling becomes less heavy. Furthermore, when the predicted value indicates a decrease in crank rotation speed and an increase in pedaling force, the control unit may control the electric transmission to downshift, i.e., to change gears so that pedaling becomes lighter. For example, the control unit 53 can cause the electric transmission to upshift when the prediction unit 52 predicts that the cadence will increase, and can cause the electric transmission to downshift when the prediction unit 52 predicts that the cadence will decrease and the pedaling force will increase. This allows the rider to maintain a comfortable pedaling condition. The electric transmission may include gears, a motor, and a gear shift sensor. The electric transmission is electrically connected to the control system 5 wirelessly or via a wire.
[0122] In addition to or instead of controlling the electric transmission as described above, the control unit 53 may display a gear shift instruction on a display device. The control unit 53 may also perform control to temporarily suspend the assist of the motor 3 at the timing of a gear shift operation by the rider or a gear shift by the electric transmission.
[0123] The human-powered vehicle according to the embodiment of the present invention may be, in addition to an electrically assisted bicycle, an electric bicycle, a pedal-equipped electric motorcycle (electric moped), etc. Furthermore, the human-powered vehicle is not limited to a two-wheeled vehicle, but may be a vehicle with three or more wheels.
[0124] The embodiments of the present invention have been described above, but the above-described embodiments are merely examples for carrying out the present invention. Therefore, the present invention is not limited to the above-described embodiment, and any modifications and variations thereof may be made without departing from the spirit and scope of the present invention. The above-described embodiment can be appropriately modified and implemented within the scope of the present invention. [Explanation of symbols]
[0125] 3: Motor, 5: Control system, 50: Prediction system, 51: Detection value acquisition unit, 52: Prediction unit, 53: Control unit, 100: Prediction model generation system, 101: Training data acquisition unit, 102: Machine learning unit
Claims
1. a detection value acquisition unit that acquires current detection values of a plurality of detectors provided in the human-powered vehicle and past values based on detection values from the past; a prediction unit that generates a predicted value regarding the traveling of the human-powered vehicle based on the current detection values and past values of each of the plurality of detectors acquired by the detection value acquisition unit using a trained model constructed by machine learning; and A human-powered vehicle driving prediction system equipped with the above.
2. The human-powered vehicle travel prediction system according to claim 1, the plurality of detectors include at least two of a vehicle speed sensor, a pedaling force sensor, a crank rotation sensor, an acceleration sensor, or a motor output sensor for pedaling assist of the human-powered vehicle, a predicted value generated by the prediction unit including a value indicating at least one of a vehicle speed, a pedaling force, a crank rotation speed, an acceleration, or a motor output for pedaling assist of the human-powered vehicle;
3. 3. The human-powered vehicle travel prediction system according to claim 1 or 2, The detection value acquisition unit acquires, as past values of each of the plurality of detectors, past values based on a group of detection values from a period prior to the present time.
4. 3. The human-powered vehicle travel prediction system according to claim 1 or 2, The trained model includes a vehicle load prediction model and a driving prediction model, The prediction unit a vehicle load determination unit that determines a value indicating a vehicle load of the human-powered vehicle based on current detection values and past values of at least two of the plurality of detectors using the vehicle load prediction model; a travel prediction unit that generates the predicted value based on the value indicating the vehicle load and current detection values and past values of each of the plurality of detectors using the travel prediction model, Human-powered vehicle driving prediction system.
5. 5. The human-powered vehicle travel prediction system according to claim 4, The driving prediction model includes a plurality of load-specific driving prediction models respectively corresponding to a plurality of vehicle load levels, The travel prediction unit generates the predicted value using a load-specific travel prediction model corresponding to the value indicating the vehicle load determined by the vehicle load determination unit.
6. 5. The human-powered vehicle travel prediction system according to claim 4, The driving prediction model is a trained model that takes as input a value indicating the vehicle load and the current detection values and past values of each of the multiple detectors, and outputs the predicted value regarding the driving of the human-powered vehicle.
7. A human-powered vehicle control system including the human-powered vehicle travel prediction system according to claim 1 or 2, The human-powered vehicle control system further includes a control unit that controls devices provided in the human-powered vehicle based on the predicted value generated by the prediction unit.
8. 8. The human-powered control system according to claim 7, The device is at least one of a motor that assists the rider in driving the vehicle, a motor that assists the rider in steering, an actuator that adjusts the position of a seat on which the rider sits, or a display device.
9. A trained model constructed by machine learning, A trained model that takes as input the current detection values and past values based on detection values from multiple detectors equipped on a human-powered vehicle, and outputs predicted values regarding the driving of the human-powered vehicle.
10. The trained model according to claim 9, a vehicle load prediction model that receives current detection values and past detection values from at least two of the plurality of detectors as inputs and outputs a value indicating a vehicle load of the human-powered vehicle; A trained model including: a value indicating the vehicle load output by the vehicle load prediction model; and a driving prediction model that takes current detection values and past values of each of the plurality of detectors as input and outputs the predicted value.
11. a training data acquisition unit that acquires, as training data, a plurality of sets of data sets including target time detection values at a target time, past values based on detection values prior to the target time, and post-detection values at a time after the target time, from a plurality of detectors provided in the human-powered vehicle; and a machine learning unit that generates, through machine learning using the training data, a trained model that outputs predicted values regarding the driving of the human-powered vehicle from the present time into the future, based on current detection values of the plurality of detectors and past values based on detection values from the past.
12. The human-powered vehicle travel prediction model generation system according to claim 11, the training data acquisition unit acquires a plurality of sets of the data sets, each set further including a value indicating a vehicle load of the human-powered vehicle; The machine learning unit generates a trained model that outputs the predicted value based on the current detection values and past values of the multiple detectors as well as a value indicating the vehicle load.
13. 3. The human-powered vehicle travel prediction system according to claim 1 or 2, an on-board computer and an on-board storage device mounted on the human-powered vehicle; the on-board computer executes the processes of the detection value acquisition unit and the prediction unit, The on-board storage device stores the trained model used in the processing of the prediction unit.
14. a detection value acquisition process for acquiring current detection values from a plurality of detectors provided in the human-powered vehicle and past values based on detection values from the past; a prediction process for generating a predicted value regarding the traveling of the human-powered vehicle based on the current detection values and past values of each of the plurality of detectors acquired in the detection value acquisition process, using a trained model constructed by machine learning; and A human-powered vehicle driving prediction program that causes a computer to execute the above.
15. A computer-implemented method for predicting travel of a human-powered vehicle, comprising: a detection value acquisition step of acquiring current detection values from a plurality of detectors provided in the human-powered vehicle and past values based on detection values from the past; a prediction step of generating a predicted value regarding the traveling of the human-powered vehicle based on the current detection values and past values of each of the plurality of detectors acquired in the detection value acquisition step, using a trained model constructed by machine learning; A human-powered vehicle travel prediction method comprising:
16. a training data acquisition process for acquiring, as training data, a plurality of sets of data sets including target time detection values of a plurality of detectors provided in the human-powered vehicle at a target time point, past values based on detection values prior to the target time point, and post-detection values at a time point after the target time point; and a machine learning process that generates, through machine learning using the training data, a trained model that outputs predicted values regarding the driving of the human-powered vehicle from the present time into the future, based on current detection values of the multiple detectors and past values that are based on detection values from the past.
17. A computer-implemented method for generating a human-powered vehicle travel prediction model, comprising: a training data acquisition step of acquiring, as training data, a plurality of sets of data sets including target time detection values at a target time point of a plurality of detectors provided in the human-powered vehicle, past values based on detection values prior to the target time point, and post-detection values at a time point after the target time point; and a machine learning process for generating a trained model that outputs predicted values regarding the traveling of the human-powered vehicle from the present time into the future, based on current detection values of the plurality of detectors and past values based on detection values from the past, through machine learning using the training data.
Citation Information
Patent Citations
Electric bicycle
EP4019355A1
Creation apparatus, component control apparatus, creation method, component control method, and computer program
JP2020006835A
Control device for man power driving vehicle, creation method for learning model, learning model, control method for man power driving vehicle, and computer program
JP2023085936A
Vehicle
JP2023047987A
Control device for man-powered vehicle
JP2023048913A