(57)【要約】【課題】判定装置、制御システム、通信システム、学習モデル、学習モデルの生成方法、コンピュータプログラム、および、記憶媒体の提供。【解決手段】人力駆動車の走行に関する走行情報に基づき、ライダーの身体的コンディションを判定する。【選択図】図４
2020138557.tif 000002
【特許請求の範囲】
【請求項１】
人力駆動車の走行に関する走行情報に基づき、ライダーの身体的コンディションを判定する判定装置。
【請求項２】
前記走行情報の入力に応じて前記身体的コンディションを示すデータを出力するように構成される学習モデルを用いて、前記身体的コンディションを判定する、請求項１に記載の判定装置。
【請求項３】
前記走行情報は、前記人力駆動車の速度、加速度、地理的な位置、傾斜角度、走行距離、走行時間、ケイデンス、パワー、車輪の回転速度、走行路、風向、風速、外気の温度、および、外気の湿度のうちの少なくとも１つに関する情報を含む、請求項１または２に記載の判定装置。
【請求項４】
前記走行情報、および、前記人力駆動車のライダーに関するライダー情報に基づき、前記ライダーの身体的コンディションを判定する、請求項１から３のいずれか一項に記載の判定装置。
【請求項５】
前記走行情報および前記ライダー情報の入力に応じて前記身体的コンディションを示すデータを出力するように構成される学習モデルを用いて、前記身体的コンディションを判定する、請求項４に記載の判定装置。
【請求項６】
前記ライダー情報は、前記ライダーの性別、年齢、身長、体重、筋肉量、脂肪量、心拍、体温、発汗、血圧、呼吸、筋電、および、脳波のうちの少なくとも１つに関する情報を含む、請求項４または５に記載の判定装置。
【請求項７】
請求項１から６のいずれか一項に記載の判定装置と、
前記判定装置から出力される情報に基づいて、前記人力駆動車のコンポーネントを制御する制御装置と、
を備える制御システム。
【請求項８】
前記コンポーネントは、報知装置を含む、請求項７に記載の制御システム。
【請求項９】
前記制御装置は、推奨走行経路に関する情報を報知するように前記報知装置を制御する、請求項８に記載の制御システム。
【請求項１０】
前記制御装置は、飲食および休憩の少なくとも１つに関する情報を報知するよう前記報知装置を制御する、請求項８または９に記載の制御システム。
【請求項１１】
前記コンポーネントは、変速装置を含む、請求項７から１０のいずれか一項に記載の制御システム。
【請求項１２】
請求項１から６のいずれか一項に記載の判定装置と、
外部装置と通信する通信装置と、を備え、
前記通信装置は、前記判定装置から出力される情報を前記外部装置へ送信する、通信システム。
【請求項１３】
前記判定装置から出力される情報は、前記身体的コンディションに関する警報情報を含む、請求項１２に記載の通信システム。
【請求項１４】
前記通信装置は、他の人力駆動車の判定装置によって判定され、前記他の人力駆動車の通信装置から送信される他のライダーの身体的コンディションに関する情報を受信する、請求項１２または１３に記載の通信システム。
【請求項１５】
前記通信装置は、信号機および交通量の少なくとも１つに関する情報を含む走行環境情報を前記外部装置から受信する、請求項１２から１４のいずれか一項に記載の通信システム。
【請求項１６】
前記走行環境情報に基づき、推奨走行経路に関する情報を報知する報知装置をさらに備える、請求項１５に記載の通信システム。
【請求項１７】
人力駆動車の走行に関する走行情報が入力される入力層と、
前記走行情報と、ライダーの身体的コンディションとの関係を学習した中間層と、
前記身体的コンディションを示すデータを出力する出力層と、を備え、
前記入力層に入力される情報に基づき、前記中間層において演算し、前記身体的コンディションを示すデータを前記出力層から出力する処理に用いられる、学習モデル。
【請求項１８】
人力駆動車の走行に関する走行情報と、ライダーの身体的コンディションを示すデータと、に基づき、前記走行情報から前記ライダーの前記身体的コンディションを判定する処理に用いられる学習モデルを、コンピュータを用いて生成する、学習モデルの生成方法。
【請求項１９】
人力駆動車の走行に関する走行情報に基づき、ライダーの身体的コンディションを判定する処理を、コンピュータに実行させるためのコンピュータプログラム。
【請求項２０】
請求項１９に記載のコンピュータプログラムが記憶される記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、判定装置、制御システム、通信システム、学習モデル、学習モデルの生成方法、コンピュータプログラム、および、記憶媒体に関する。
【背景技術】
【０００２】
自転車に関する情報を収集するシステムが知られている。例えば、特許文献１には、搭載されたコンポーネントに関する情報を収集し、収集した情報をライダーに報知するシステムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１３１５３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
現在、収集した情報を、より便利な方法でライダーの走行に活用することが求められている。
【０００５】
本発明は、人力駆動車のライダーの身体的コンディションを判定する判定装置、制御システム、通信システム、学習モデル、学習モデルの生成方法、コンピュータプログラム、および、記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１側面に係る判定装置は、人力駆動車の走行に関する走行情報に基づき、ライダーの身体的コンディションを判定する。
【０００７】
この判定装置によれば、人力駆動車の走行情報に基づき、ライダーの身体的コンディションを判定するので、例えば、人力駆動車のライダーがあとどれくらい走行することができるのかを把握することができる。
【０００８】
前記第１側面に係る第２側面の判定装置は、前記走行情報の入力に応じて前記身体的コンディションを示すデータを出力するように構成される学習モデルを用いて、前記身体的コンディションを判定する。
【０００９】
この判定装置によれば、走行情報の入力に応じて身体的コンディションを出力する学習モデルを用いるので、効率良くライダーの身体的コンディションを判定できる。
【００１０】
前記第１または第２側面に係る第３側面の判定装置において、前記走行情報は、前記人力駆動車の速度、加速度、地理的な位置、傾斜角度、走行距離、走行時間、ケイデンス、パワー、車輪の回転速度、走行路、風向、風速、外気の温度、および、外気の湿度のうちの少なくとも１つに関する情報を含む。
【００１１】
この判定装置によれば、様々な走行情報を用いて、ライダーの身体的コンディションを判定できる。
【００１２】
前記第１から第３側面のいずれか１つに係る第４側面の判定装置は、前記走行情報、および、人力駆動車のライダーに関するライダー情報に基づき、前記ライダーの身体的コンディションを判定する。
【００１３】
この判定装置によれば、走行情報およびライダー情報に基づき、ライダーの身体的コンディションを判定するので、例えば、人力駆動車のライダーがあとどれくらい走行することができるのかを把握することができる
【００１４】
前記第４側面に係る第５側面の判定装置は、前記走行情報および前記ライダー情報の入力に応じて前記身体的コンディションを示すデータを出力するように構成される学習モデルを用いて、前記身体的コンディションを判定する。
【００１５】
この判定装置によれば、走行情報およびライダー情報の入力に応じて身体的コンディションを出力する学習モデルを用いるので、効率良くライダーの身体的コンディションを判定できる。
【００１６】
前記第４または第５側面に係る第６側面の判定装置において、前記ライダー情報は、前記ライダーの性別、年齢、身長、体重、筋肉量、脂肪量、心拍、体温、発汗、血圧、呼吸、筋電、および、脳波のうちの少なくとも１つに関する情報を含む。
【００１７】
この判定装置によれば、様々なライダー情報を用いて、ライダーの身体的コンディションを判定できる。
【００１８】
本発明の第７側面に係る制御システムは、前記第１から第６側面のいずれか１つに係る判定装置と、前記判定装置から出力される情報に基づいて、前記人力駆動車のコンポーネントを制御する制御装置と、を備える。
【００１９】
この制御システムによれば、判定装置による判定結果に応じて人力駆動車のコンポーネントを制御するので、例えばライダーの身体的コンディションが悪化している場合に、ライダーの身体的負担を軽減するようなコンポーネントの制御が可能となる。
【００２０】
前記第７側面に係る第８側面の制御システムにおいて、前記コンポーネントは、報知装置を含む。
【００２１】
この制御システムによれば、判定装置において判定した身体的コンディションをライダーに報知できる。
【００２２】
前記第８側面に係る第９側面の制御システムにおいて、前記制御装置は、推奨走行経路に関する情報を報知するように前記報知装置を制御する。
【００２３】
この制御システムによれば、例えばライダーの身体的コンディションが悪化している場合に、ライダーの身体的負担を軽減するような推奨走行経路を報知できる。
【００２４】
前記第８または第９側面に係る第１０側面の制御システムにおいて、前記制御装置は、飲食および休憩の少なくとも１つに関する情報を報知するよう前記報知装置を制御する。
【００２５】
この制御システムによれば、例えばライダーの身体的コンディションが悪化している場合に、飲食または休憩をライダーに促すことができる。
【００２６】
前記第７から第１０側面のいずれか１つに係る第１１側面の制御システムにおいて、前記コンポーネントは、変速装置を含む。
【００２７】
この制御システムによれば、例えばライダーの体力が悪化している場合に、ライダーの身体的負担を軽減するように変速装置の動作を制御できる。
【００２８】
本発明の第１２側面に係る通信システムは、前記第１から第６側面に係る判定装置と、外部装置と通信する通信装置と、を備え、前記通信装置は、前記判定装置から出力される情報を前記外部装置へ送信する。
【００２９】
この通信システムによれば、判定装置において判定したライダーの身体的コンディションの情報を外部装置に通知できる。外部装置は、他の人力駆動車に搭載される通信装置を含む。外部装置は、ライダーの身体的コンディションの情報を収集するサーバ装置であってもよい。
【００３０】
前記第１２側面に係る第１３側面の通信システムにおいて、前記判定装置から出力される情報は、前記身体的コンディションに関する警報情報を含む。
【００３１】
この通信システムによれば、例えば、ライダーの身体的コンディションが悪化した場合、または、悪化が予想される場合等において、警報情報を出力することができる。
【００３２】
前記第１２または第１３側面に係る第１４側面の通信システムにおいて、前記通信装置は、他の人力駆動車の判定装置によって判定され、前記他の人力駆動車の通信装置から送信される他のライダーの身体的コンディションに関する情報を受信する。
【００３３】
この通信システムによれば、他の人力駆動車の通信装置から送信される他のライダーの身体的コンディションに関する情報を受信する。例えば、複数のライダーが集団走行している場合であって、何れかのライダーの身体的コンディションが悪化した場合、そのライダーの身体的負担を軽減できるように、飲食または休憩を促したり、走行速度を落としたりすることができる。
【００３４】
前記第１２から第１４側面のいずれか１つに係る第１５側面の通信システムにおいて、前記通信装置は、信号機および交通量の少なくとも１つに関する情報を含む走行環境情報を前記外部装置から受信する。
【００３５】
この通信システムによれば、走行環境情報を外部装置から受信するので、例えば、受信した走行環境情報に基づき、ライダーに報知する推奨走行経路を生成できる。
【００３６】
前記第１５側面に係る第１６側面の通信システムは、前記走行環境情報に基づき、推奨走行経路に関する情報を報知する報知装置をさらに備える。
【００３７】
この通信システムによれば、走行環境情報に基づく推奨走行経路をライダーに報知できるので、例えばライダーの身体的コンディションが悪化している場合、ライダーの身体的負担を軽減できる。
【００３８】
本発明の第１７側面に係る学習モデルは、人力駆動車の走行に関する走行情報が入力される入力層と、前記走行情報と、ライダーの身体的コンディションとの関係を学習した中間層と、前記身体的コンディションを示すデータを出力する出力層と、を備え、前記入力層に入力される情報に基づき、前記中間層において演算し、前記身体的コンディションを示すデータを前記出力層から出力する処理に用いられる。
【００３９】
この学習モデルによれば、人力駆動車の走行情報からライダーの身体的コンディションを示すデータを出力する実行環境を、コンピュータによって実現できる。
【００４０】
本発明の第１８側面に係る学習モデルの生成方法は、人力駆動車の走行に関する走行情報と、ライダーの身体的コンディションを示すデータと、に基づき、前記走行情報から前記ライダーの前記身体的コンディションを判定する処理に用いられる学習モデルを、コンピュータを用いて生成する。
【００４１】
この学習モデルの生成方法によれば、人力駆動車の走行情報と、ライダーの身体的コンディションを示すデータとを収集することによって、ライダーの身体的コンディションを判定するための学習モデルを生成できる。
【００４２】
本発明の第１９側面に係るコンピュータプログラムは、人力駆動車の走行に関する走行情報に基づき、ライダーの身体的コンディションを判定する処理を、コンピュータに実行させるためのコンピュータプログラム。
【００４３】
このコンピュータプログラムによれば、人力駆動車の走行情報からライダーの身体的コンディションを示すデータを出力する実行環境を、コンピュータによって実現できる。
【００４４】
前記第１９側面に係る第２０側面の記憶媒体は、前述のコンピュータプログラムが記憶される。
【００４５】
この記憶媒体によれば、記憶媒体に記憶されているコンピュータプログラムをコンピュータにインストールすることによって、人力駆動車の走行情報からライダーの身体的コンディションを判定する実行環境を、コンピュータによって実現できる。
【発明の効果】
【００４６】
本願によれば、人力駆動車のライダーの身体的コンディションを判定できる。
【図面の簡単な説明】
【００４７】
【図１】第１実施形態の判定装置が適用される人力駆動車の側面図である。
【図２】第１実施形態に係る判定装置の内部構成を示すブロック図である。
【図３】第１実装例における学習モデルの構成図である。
【図４】第１実施形態における判定手順を説明するフローチャートである。
【図５】第２実施形態に係る制御システムを説明するブロック図である。
【図６】第２実施形態における制御手順を示すフローチャートである。
【図７】表示装置に表示される情報の一例を示す模式図である。
【図８】表示装置に表示される情報の他の例を示す模式図である。
【図９】第３実施形態に係る通信システムを説明するブロック図である。
【図１０】第３実施形態における制御手順を示すフローチャートである。
【図１１】サーバ装置の内部構成を示すブロック図である。
【図１２】学習モデルの生成手順を説明するフローチャートである。
【図１３】第５実施形態における判定手順を説明するフローチャートである。
【図１４】第２実装例における学習モデルの構成図である。
【図１５】第３実装例における学習モデルの構成図である。
【発明を実施するための形態】
【００４８】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
（第１実施形態）
図１は第１実施形態の判定装置１００が適用される人力駆動車１の側面図である。人力駆動車１は、走行のための原動力に関して、少なくとも部分的に人力を用いる車両である。内燃機関または電動機のみを原動力に用いる車両は、本実施形態の人力駆動車１から除外される。人力駆動車１は、例えば、ロードバイク、マウンテンバイク、クロスバイク、シティサイクル等を含む自転車である。人力駆動車１は、電気エネルギーを用いて人力駆動車１の推進をアシストする電動アシスト機構を備える電動アシスト自転車であってもよい。
【００４９】
人力駆動車１は、車両本体１０、前輪１２、後輪１４、ハンドルバー１６、サドル１８、および、駆動機構２０を備える。以下の説明において、前後、左右、および、上下の各方向を表す用語は、ライダーが人力駆動車１のサドル１８に着座した状態における方向を基準として用いられる。
【００５０】
車両本体１０は、フレーム１０Ａおよびフロントフォーク１０Ｂを備える。前輪１２は、フロントフォーク１０Ｂに回転可能に支持される。後輪１４は、フレーム１０Ａに回転可能に支持される。ハンドルバー１６は、グリップ１６Ａを含み、前輪１２の進行方向を変更できるように、フレーム１０Ａに支持される。
【００５１】
駆動機構２０は、人力駆動力を後輪１４へ伝達する。駆動機構２０は、クランク２２、フロントスプロケットアセンブリ２４Ａ、リアスプロケットアセンブリ２４Ｂ、チェーン２６、および、一対のペダル２８，２８を含む。
【００５２】
クランク２２は、右クランク２２Ａ、左クランク２２Ｂ、および、クランク軸２２Ｃを含む。クランク軸２２Ｃは、フレーム１０Ａに回転可能に支持される。右クランク２２Ａおよび左クランク２２Ｂは、それぞれクランク軸２２Ｃに連結される。一対のペダル２８，２８の一方は右クランク２２Ａに回転可能に支持され、他方は左クランク２２Ｂに回転可能に支持される。
【００５３】
フロントスプロケットアセンブリ２４Ａは、クランク軸２２Ｃに連結されており、クランク軸２２Ｃと一体的に回転する。フロントスプロケットアセンブリ２４Ａは、一例では、外径が異なる複数のフロントスプロケットを含む。複数のフロントスプロケットの外径は、クランク軸２２の回転軸心と平行な方向において、車両本体１０の中心面から外側に向かって大きくなる。
【００５４】
リアスプロケットアセンブリ２４Ｂは、後輪１４のハブ（図示略）に回転可能に支持される。リアスプロケットアセンブリ２４Ｂは、一例では、外径が異なる複数のリアスプロケットを含む。複数のリアスプロケットの外径は、ハブアセンブリの回転軸心と平行な方向において、車両本体１０の中心面から外側に向かって小さくなる。
【００５５】
チェーン２６は、フロントスプロケットアセンブリ２４Ａおよびリアスプロケットアセンブリ２４Ｂに巻き掛けられる。ペダル２８，２８に加えられる人力駆動力によってクランク２２が前転すると、フロントスプロケットアセンブリ２４Ａがクランク２２と共に前転する。フロントスプロケットアセンブリ２４Ａの回転は、チェーン２６を介してリアスプロケットアセンブリ２４Ｂに伝達し、後輪１４を回転させる。チェーン２６の代わりに、ベルトまたはシャフトを用いてもよい。
【００５６】
人力駆動車１は、更に、操作装置３０、変速装置３２および３３、アジャスタブルシートポスト３４、サスペンション装置３６、および、バッテリユニット３８を備えてもよい。
【００５７】
操作装置３０はライダーによって操作される操作部３０Ａを含む。操作部３０Ａの一例は操作ボタンまたは操作スイッチである。操作部３０Ａの他の例は、ハンドルバー１６に設けられるブレーキレバーである。ブレーキレバーを左右に倒す都度、変速装置３２における変速段数または変速比を変更することができる。操作装置３０は、操作部３０Ａによって、アジャスタブルシートポスト３４の動作切り替え、サスペンション装置３６の動作切り替え等、人力駆動車１が備える各種コンポーネントの制御を指示する操作を受け付ける。
【００５８】
操作装置３０は、操作部３０Ａの操作に応じた信号を変速装置３２または他のコンポーネントへ送信できるように、各コンポーネントと通信接続されてもよい。一例では、操作装置３０は、通信線、または、ＰＬＣ（Power Line Communication）が可能な電線によって変速装置３２および他のコンポーネントと通信接続される。他の例では、操作装置３０は、無線通信が可能な無線通信ユニットによって変速装置３２および他のコンポーネントと通信接続される。操作部３０Ａが操作された場合、例えば変速装置３２の変速段を変更するための制御信号が変速装置３２へ送信され、その信号に応じて変速装置３２が動作することによって、変速段数または変速比が変更される。
【００５９】
変速装置３２は、操作装置３０から送信される制御信号に応じて動作が制御される人力駆動車１のコンポーネントの１つである。変速装置３２は、電動アクチュエータ３２Ａおよびチェーンガイド３２Ｂを備える。電動アクチュエータ３２Ａの一例は、電動モータである。変速装置３２は、電動アクチュエータ３２Ａを駆動し、チェーンガイド３２を動作させることによって、チェーン２６が巻き掛けられるリアスプロケットを変更し、人力駆動車１の変速比を切り替える。
【００６０】
変速装置３２の一例は外装変速機である。変速装置３２が外装変速機である場合、リアスプロケットアセンブリ２４Ｂは、外径が異なる複数のリアスプロケットを含む。変速装置３２は、シフトアップを指示する制御信号を操作装置３０から受信した場合、チェーン２６が巻き掛けられるリアスプロケットを、現在のリアスプロケットよりも外径が小さいリアスプロケットに変更するように、電動アクチュエータ３２Ａによってチェーンガイド３２Ｂを動作させる。変速装置３２は、シフトダウンを指示する制御信号を操作装置３０から受信した場合、チェーン２６が巻き掛けられるリアスプロケットを、現在のリアスプロケットよりも外径が大きいリアスプロケットに変更するように、電動アクチュエータ３２Ａによってチェーンガイド３２Ｂを動作させる。
【００６１】
変速装置３３は、操作装置３０から送信される制御信号に応じて動作が制御される人力駆動車１のコンポーネントの１つである。変速装置３３は、電動アクチュエータ３３Ａおよびチェーンガイド３３Ｂを備える。電動アクチュエータ３３Ａの一例は、電動モータである。変速装置３３は、電動アクチュエータ３３Ａの駆動によって、チェーンガイド３３Ｂを動作させることで、チェーン２６が巻き掛けられるフロントスプロケットを変更し、人力駆動車１の変速比を切り替える。
【００６２】
変速装置３３の一例は外装変速機である。変速装置３３が外装変速機である場合、フロントスプロケットアセンブリ２４Ａは、外径が異なる複数のフロントスプロケットを含む。本実施形態において、変速装置３３は、シフトアップを指示する制御信号を操作装置３０から受信した場合、チェーン２６が巻き掛けられるフロントスプロケットを、現在のスプロケットよりも外径が大きいスプロケットに変更するように電動アクチュエータ３３Ａによってチェーンガイド３３Ｂを動作させる。変速装置３３は、シフトダウンを指示する制御信号を操作装置３０から受信した場合、例えば、チェーン２６が巻き掛けられるフロントスプロケットを、現在のフロントスプロケットよりも外径が小さいフロントスプロケットに変更するように、電動アクチュエータ３３Ａによってチェーンガイド３３Ｂを動作させる。
【００６３】
変速装置３２および３３は内装変速機であってもよい。例えば、変速装置３２が内装変速機である場合、変速装置３２は例えば後輪１４のハブに設けられ、リアスプロケットアセンブリ２４Ｂに入力された回転を変速して後輪１４に伝達する。このとき、リアスプロケットアセンブリ２４Ｂに含まれるリアスプロケットは単一である。変速装置３２および３３の少なくとも１つは、無段変速機であってもよい。
【００６４】
アジャスタブルシートポスト３４は、フレーム１０Ａに取り付けられる。アジャスタブルシートポスト３４は、電動アクチュエータ３４Ａを含む。電動アクチュエータ３４Ａは、サドル１８をフレーム１０Ａに対して上昇および下降させる。電動アクチュエータ３４Ａは例えば電動モータである。アジャスタブルシートポスト３４は、動作パラメータとして、フレーム１０Ａに対するサドル１８の支持位置を設定することによって制御することが可能なコンポーネントの１つである。
【００６５】
サスペンション装置３６は、一例では、フロントフォーク１０Ｂに設けられ、前輪１２に加えられた衝撃を減衰するフロントサスペンションである。サスペンション装置３６は、電動アクチュエータ３６Ａを含む。電動アクチュエータ３６Ａは例えば電動モータである。サスペンション装置３６は、動作パラメータとして、例えば、減衰率、反発力、ストローク量、およびロックアウト状態を設定することによって制御することが可能なコンポーネントの１つである。サスペンション装置３６は、後輪１４に加えられた衝撃を減衰するリアサスペンションであってもよい。
【００６６】
バッテリユニット３８は、バッテリ３８Ａおよびバッテリホルダ３８Ｂを含む。バッテリ３８Ａは、１または複数のバッテリセルを含む蓄電池である。バッテリホルダ３８Ｂは、人力駆動車１のフレーム１０Ａに固定される。バッテリ３８Ａは、バッテリホルダ３８Ｂに、着脱可能に取り付けられる。バッテリ３８Ａは、変速装置３２および３３、アジャスタブルシートポスト３４、サスペンション装置３６などにそれぞれ電気的に接続される。
【００６７】
人力駆動車１は、更に、車速センサＳ１、ケイデンスセンサＳ２、トルクセンサＳ３、傾斜センサＳ４、加速度センサＳ５、位置センサＳ６、および、気象センサＳ７の少なくとも１つを備えてもよい。以下の説明において、それぞれを個別に説明する必要がない場合、センサＳ１〜Ｓ７とも記載する。
【００６８】
車速センサＳ１は、人力駆動車１の速度に応じた信号を出力するセンサである。車速センサＳ１は、フレーム１０Ａまたはフロントフォーク１０Ｂに取り付けられる。車速センサＳ１は、例えばホール素子を含み、前輪１２または後輪１４に設けられる磁石（図示略）を検出することによって、前輪１２または後輪１４の回転速度を計測する。一例では、車速センサＳ１は、前輪１２または後輪１４の回転速度を示す信号を出力する。他の例では、車速センサＳ１は、計測した前輪１２または後輪１４の回転速度に基づき、人力駆動車１の速度を算出し、算出した速度を示す信号を出力する。
【００６９】
ケイデンスセンサＳ２は、ケイデンスを示す信号を出力するセンサである。ケイデンスセンサＳ２は、フレーム１０Ａに取り付けられる。ケイデンスセンサＳ２は、例えばホール素子を含み、右クランク２２Ａまたは左クランク２２Ｂに設けられる磁石（図示略）を検出することによって、クランク軸２２Ｃの単位時間当たりの回転数を計測する。
【００７０】
トルクセンサＳ３は、クランク２２に加えられるトルクに応じた信号を出力するセンサである。トルクセンサＳ３は、右クランク２２Ａ、左クランク２２Ｂ、クランク軸２２Ｃ、フロントスプロケットアセンブリ２４Ａ、または、クランク軸２２Ｃからフロントスプロケットアセンブリ２４Ａまでの駆動経路の何れかに設けられる。トルクセンサＳ３は、歪みセンサ、磁歪センサ、光センサ、または、圧力センサ等を含み、クランク２２に加えられるトルクを検出する。
【００７１】
判定装置１００は、ケイデンスセンサＳ２によって検出されるクランク軸２２Ｃの単位時間当たりの回転数と、トルクセンサＳ３によって検出されるクランク２２に加えられるトルクと、に基づき、人力駆動車１００に加えられるパワーを算出することができる。
【００７２】
傾斜センサＳ４は、人力駆動車１の傾斜角度に応じた信号を出力するセンサである。傾斜センサＳ４が検出する傾斜角度は、例えば、人力駆動車１の左右方向に沿うピッチ軸まわりの回転角度である。傾斜センサＳ４は、一例として、ピッチ角度の角速度を検出するセンサを含み、ピッチ軸まわりの角速度を積分した値をピッチ角度として算出する。傾斜センサＳ４は、人力駆動車１の前後方向に沿うロール軸まわりの回転角度、および、人力駆動車１の上下方向に沿うヨー軸まわりの回転速度を併せて計測する構成であってもよい。
【００７３】
加速度センサＳ５は、人力駆動車１の前後方向の加速度に応じた信号を出力するセンサである。加速度センサＳ５は、例えば、フレーム１０Ａに設けられ、前後方向の加速度が加えられた場合における錘の変位を静電容量または抵抗値の変化として検出することによって加速度を計測する。加速度センサＳ５は、人力駆動車の左右方向の加速度、および、人力駆動車１の上下方向の加速度を併せて計測するように構成されてもよい。また、加速度センサＳ５は、人力駆動車１のヨー軸、ロール軸、およびピッチ軸まわりの加速度を併せて計測するように構成されてもよい。
【００７４】
位置センサＳ６は、人力駆動車１の現在位置を示す信号を出力するセンサである。位置センサＳ６は、フレーム１０Ａまたはハンドルバー１６に取り付けられる。位置センサＳ６は、例えばＧＰＳ（Global Positioning System）通信機を含み、ＧＰＳ衛星からの電波を受信することによって、人力駆動車１の現在位置を測位する。位置センサＳ６は、測位した位置情報を逐次記録するメモリを備え、メモリに記録した位置情報に基づき、人力駆動車１が走行した走行路の情報を出力する構成であってもよい。
【００７５】
気象センサＳ７は、人力駆動車１の周囲の気象を計測し、計測結果を出力する計測装置である。気象センサＳ７は、フレーム１０Ａに取り付けられ、風向、風速、外気の温度、および、外気の湿度のうちの少なくとも１つを計測する。気象センサＳ７は、外部の気象サーバ（図示略）と通信し、気象サーバから、人力駆動車１の周囲の風向、風速、外気の温度、および、外気の湿度のうちの少なくとも１つの情報を取得する構成であってもよい。
【００７６】
人力駆動車１のライダーには、心拍計Ｍ１、体温計Ｍ２、発汗計Ｍ３、血圧計Ｍ４、呼吸計Ｍ５、筋電計Ｍ６、脳波計Ｍ７、および、体組成計Ｍ８のうちの少なくとも１つが装着されてもよい。以下の説明において、それぞれを個別に説明する必要がない場合、計測装置Ｍ１〜Ｍ８とも記載する。計測装置Ｍ１〜Ｍ８は図２において図示される。
【００７７】
心拍計Ｍ１は、ライダーの心拍数を計測する計測装置である。心拍計Ｍ１は、例えばライダーの胸部に装着され、ライダーの心電図を測定する。心拍計Ｍ１は、心電図の変化から心拍を検出し、心拍の間隔から心拍数を算出する。また、心拍計Ｍ１は、ライダーの手首に装着され、ライダーの脈波を検出することによって心拍数を算出してもよい。
【００７８】
体温計Ｍ２は、ライダーの体温を計測する計測装置である。体温計Ｍ２は、例えばライダーの耳に取り付けられ、ライダーの体の表面から発せられる赤外線を検出する。体温計Ｍ２は、発せられる赤外線の強度に基づいてライダーの体温を算出する。体温計Ｍ２は、ライダーの体温を測定できるセンサであればよく、例えば、熱により抵抗値が変化するサーミスタを用いてもよい。
【００７９】
発汗計Ｍ３は、ライダーの発汗量を計測する計測装置である。発汗計Ｍ３は、例えばライダーの手に装着され、ライダーの体の表面から発せられる水分を検出する湿度センサを含む。発汗計Ｍ３は、湿度センサにより検出された湿度に基づいて、ライダーの発汗量を算出する。
【００８０】
血圧計Ｍ４は、ライダーの血圧を計測する計測装置である。血圧計Ｍ４は、例えばライダーの腕に装着され、ライダーの血圧を示す計測結果を出力する。
【００８１】
呼吸計Ｍ５は、ライダーの呼吸の流量を計測する計測装置である。呼吸計Ｍ５は、ライダーの口に装着され、ライダーの呼吸の流量を示す計測結果を出力する。
【００８２】
筋電計Ｍ６は、ライダーの筋肉における活動電位を計測する計測装置である。筋電計Ｍ６は、例えばライダーの脚に装着される電極を備え、この電極によって計測したＥＭＧ（electromyogram）を出力する。
【００８３】
脳波計Ｍ７は、ライダーの脳波を計測する計測装置である。脳波計Ｍ７は、ライダーの頭部に装着され、脳内の神経細胞の電気活動に由来した電気現象をＥＥＧ（electroencephalogram）、ＭＥＧ（magnetoencephalogram）等の手法を用いて計測する。電気現象を計測する構成に代えて、神経細胞発火後の二次的な現象として起こる脳血流または代謝の変化をｆＭＲＩ（functional magnetic resonance imaging）、ＮＩＲＳ（Near Infrared Spectroscopy）等の手法を用いて計測してもよい。
【００８４】
体組成計Ｍ８は、ライダーの筋肉量および脂肪量を計測する計測装置である。体組成計Ｍ８は、例えばライダーの生体組織に微弱な電流を流す電極を備え、生体組織のインピーダンスを計測することによって、ライダーの筋肉量および脂肪量を計測する。体組成計Ｍ８は、計測した筋肉量および脂肪量のデータを出力する。
【００８５】
人力駆動車１に搭載される判定装置１００は、センサＳ１〜Ｓ７の出力に基づき走行情報を取得する。走行情報は、人力駆動車１の速度、前輪１２または後輪１４の回転速度、ケイデンス、パワー、傾斜角度、加速度、地理的な位置、走行路、風向、風速、外気の温度、および、外気の湿度のうちの少なくとも１つを含む。
【００８６】
判定装置１００は、更に、計測装置Ｍ１〜Ｍ８の計測結果からライダー情報を取得する。ライダー情報は、ライダーの性別、年齢、身長、体重、筋肉量、脂肪量、心拍、体温、発汗、血圧、呼吸、筋電、および、脳波のうちの少なくとも１つに関する情報を含む。ライダーの性別、年齢、身長、体重、筋肉量、脂肪量は、走行中の変化が比較的小さい第１ライダー情報として分類できる。心拍、体温、発汗、血圧、呼吸、筋電、および、脳波は、走行中の変化が比較的大きい第２ライダー情報として分類できる。これらの情報は、ライターによって判定装置１００に入力され、判定装置１００内に記憶される。
【００８７】
判定装置１００は、センサＳ１〜Ｓ７を用いて走行情報を取得し、計測装置Ｍ１〜Ｍ８を用いてライダー情報を取得する構成としたが、ライダーが携帯するスマートフォンなどの携帯端末、または、ライダーに装着されるウェアラブル端末等を用いて、走行情報およびライダー情報の一部を取得する構成としてもよい。この場合、判定装置１００は、有線通信または無線通信によって、ライダーの携帯端末またはウェアラブル端末から走行情報およびライダー情報の少なくとも１つを取得すればよい。
【００８８】
判定装置１００は、人力駆動車１の走行に関する走行情報に基づき、ライダーの身体的コンディションを判定する。本実施形態において、判定装置１００は、走行情報、および、人力駆動車１のライダーに関するライダー情報に基づき、ライダーの身体的コンディションを判定する。ここで、判定装置１００は、走行情報、および、第１ライダー情報に基づき、ライダーの身体的コンディションを判定してもよいし、走行情報、第１ライダー情報、および、第２ライダー情報に基づき、ライダーの身体的コンディションを判定してもよい。身体的コンディションは、例えば、人力駆動車１のライダーがあとどれくらい走行できるのかを示す総合的なステータスである。換言すれば、身体的コンディションはライダーの残り体力を表す。
【００８９】
以下、判定装置１００の構成について説明する。
図２は第１実施形態に係る判定装置１００の内部構成を示すブロック図である。判定装置１００は、コンピュータの一種である。一例では、判定装置１００は、人力駆動車１に搭載されるサイクルコンピュータなどの専用端末である。他の例では、判定装置１００は、人力駆動車１のライダーが携帯するスマートフォン、タブレットなどの汎用端末である。判定装置１００は、入力部１０２、演算処理部１０４、記憶部１０６、および、出力部１０８を備える。
【００９０】
入力部１０２は、センサＳ１〜Ｓ７および計測装置Ｍ１〜Ｍ８を接続する通信インタフェースを備える。入力部１０２が備える通信インタフェースは、例えば有線のインタフェースであり、センサＳ１〜Ｓ７および計測装置Ｍ１〜Ｍ８を通信ケーブルを介して接続する。入力部１０２は、通信ケーブルを介して、センサＳ１〜Ｓ７および計測装置Ｍ１〜Ｍ８から出力される信号を受信する。入力部１０２から入力された信号は、記憶部１０６に時系列的に記憶されてもよい。入力部１０２に接続されるセンサＳ１〜Ｓ７および計測装置Ｍ１〜Ｍ８の一部は、無線通信インタフェースにより接続されてもよい。無線通信インタフェースとして、Ｂｌｕｅｔｏｏｔｈ（登録商標） 、ＷｉＦｉ（登録商標）、ＺｉｇＢｅｅ（登録商標）、ＬＴＥ（Long Term Evolution）、および、その他の無線ＬＡＮ（Local Area Network）を含む通信規格に準じた通信インタフェースを用いることができる。
【００９１】
演算処理部１０４は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などを備える。演算処理部１０４が備えるＲＯＭには、判定装置１００が備えるハードウェア各部の動作を制御するためのコンピュータプログラム等が記憶される。演算処理部１０４内のＣＰＵは、ＲＯＭに記憶されたコンピュータプログラムを実行し、ハードウェア各部の動作を制御することによって、人力駆動車１の走行情報に基づき、ライダーの身体的コンディションを判定する処理を実現する。演算処理部１０４が備えるＲＡＭには、演算の実行中に利用されるデータが一時的に記憶される。
【００９２】
演算処理部１０４は、ＣＰＵ、ＲＯＭおよびＲＡＭを備える構成としたが、ＧＰＵ（Graphics Processing Unit）、ＦＰＧＡ（Field Programmable Gate Array）、ＤＳＰ（Digital Signal Processor）、量子プロセッサ、揮発性または不揮発性のメモリ等を備える１または複数の演算回路であってもよい。
【００９３】
記憶部１０６は、ＥＥＰＲＯＭ（Electronically Erasable Programmable Read Only Memory）、ＳＲＡＭ（Static Random Access Memory）などのメモリを備える。記憶部１０６は、演算処理部１０４によって実行される判定処理プログラム１１０を含む各種コンピュータプログラム、および、後述する学習モデル１２０等を記憶する。
【００９４】
判定処理プログラム１１０は、コンピュータに、人力駆動車１の走行情報に基づき、ライダーの身体的コンディションを判定する処理を実行させるためのコンピュータプログラムである。本実施の形態において、判定処理プログラム１１０は、コンピュータに、人力駆動車１の走行情報およびライダー情報に基づき、ライダーの身体的コンディションを判定する処理を実行させるためのコンピュータプログラムである。演算処理部１０４は、判定処理プログラム１１０を実行することによって、人力駆動車１の走行情報およびライダー情報に基づき、ライダーの身体的コンディションを判定する。
【００９５】
判定処理プログラム１１０を含む各種コンピュータプログラムは、コンピュータプログラムが記憶される記憶媒体Ｍによって提供され得る。記憶媒体Ｍは、例えば、ＣＤ−ＲＯＭ、ＵＳＢメモリ、ＳＤ（Secure Digital）カード、マイクロＳＤカード、コンパクトフラッシュ（登録商標）などの可搬型メモリである。本実施形態において、記憶媒体Ｍは、判定処理プログラム１１０を含む各種コンピュータプログラムを読み取り可能に記憶する非一時的な記憶媒体である。演算処理部１０４は、読取装置を用いて記憶媒体Ｍから各種コンピュータプログラムを読み取り、読み取った各種コンピュータプログラムを記憶部１０６にインストールする。
【００９６】
記憶部１０６に記憶される学習モデル１２０は、その定義情報によって記述される。学習モデル１２０の定義情報は、学習モデル１２０の構造情報、学習モデル１２０で用いられるノード間の重みおよびバイアスなどの各種パラメータ等を含む。本実施形態では、人力駆動車１の走行情報およびライダー情報と、ライダーの身体的コンディションを示すデータとを教師データとして、所定の学習アルゴリズムによって学習された学習モデル１２０が記憶部１０６に記憶される。学習アルゴリズムとしては、ニューラルネットワークを用いた教師ありの深層学習アルゴリズムを用いることができる。教師ありの深層学習アルゴリズムに代えて、教師なしの学習アルゴリズムを用いてもよく、リカレントニューラルネットワークを用いてもよい。
【００９７】
出力部１０８は、演算処理部１０４による判定結果を出力する出力インタフェースを備える。判定結果の出力形式は任意である。一例では、出力部１０８は、液晶ディスプレイ、有機ＥＬ（Electro-Luminescence）ディスプレイ等の表示デバイスを備える。この場合、出力部１０８は、ライダーの身体的コンディションを示すデータを文字情報または画像情報により表示デバイスに表示してもよい。他の例では、出力部１０８は、スピーカ等の音声出力デバイスを備える。この場合、出力部１０８は、ライダーの身体的コンディションを示す音声を音声出力デバイスから出力してもよい。更に他の例では、出力部１０８は、通信インタフェースを備える。この場合、出力部１０８は、ライダーの身体的コンディションを示すデータを通信インタフェースに接続された外部機器へ出力してもよい。
【００９８】
図３は第１実装例における学習モデル１２０の構成図である。学習モデル１２０は、例えば、深層学習を含む機械学習の学習モデルであり、ニューラルネットワークによって構成されている。第１実装例における学習モデル１２０は、入力層１２２、中間層１２４Ａ，１２４Ｂ、および、出力層１２６を備える。図３の例では、２つの中間層１２４Ａ，１２４Ｂを記載しているが、中間層の数は２つに限定されず、３つ以上であってもよい。
【００９９】
入力層１２２、中間層１２４Ａ，１２４Ｂ、および、出力層１２６には、１つまたは複数のノードが存在し、各層のノードは、前後の層に存在するノードと一方向に所望の重みおよびバイアスで結合されている。入力層１２２のノードの数と同数の成分を有するベクトルデータが学習モデル１２０の入力データとして与えられる。例えば、入力層１２２の各ノードには、センサＳ１〜Ｓ７の出力信号に基づき得られるデータ、および、計測装置Ｍ１〜Ｍ８の計測結果を示すデータが与えられる。入力層１２２の各ノードには、センサＳ１〜Ｓ７の出力信号および計測装置Ｍ１〜Ｍ８の計測結果をそのまま与えるのではなく、入力層１２２への入力形態に適合するように、演算処理部１０４が変換したデータを与えてもよい。
【０１００】
入力層１２２には、人力駆動車１の走行に関する走行情報が入力される。本実施形態において、入力層１２２には、人力駆動車１の走行に関する走行情報、および、人力駆動車１のライダーに関するライダー情報が入力される。入力層１２２の各ノードに与えられたデータは、最初の中間層１２４Ａに与えられる。その中間層１２４Ａにおいて重みおよびバイアスを含む活性化関数を用いて出力が算出され、算出された値が次の中間層１２４Ｂに与えられ、以下同様にして出力層１２６の出力が求められるまで次々と後の層に伝達される。ノード間を結合する重み、バイアス等の各種パラメータは、所定の学習アルゴリズムによって学習される。各種パラメータを学習する学習アルゴリズムには、例えば深層学習の学習アルゴリズムが用いられる。本実施形態では、人力駆動車１の走行情報およびライダー情報と、ライダーの身体的コンディションを示すデータとを教師データとして、所定の学習アルゴリズムによって各種パラメータを学習することができる。中間層１２４Ａおよび１２４Ｂは、走行情報と、ライダーの身体的コンディションとの関係を学習している。本実施形態において、中間層１２４Ａおよび１２４Ｂは、走行情報およびライダー情報と、ライダーの身体的コンディションとの関係を学習している。
【０１０１】
出力層１２６は、ライダーの身体的コンディションを示すデータ、すなわち判定結果、を出力する。出力層１２６による判定結果の出力形態は任意である。例えば、出力層１２６を第０ノードから第１０ノードまでの１１個のノードで構成し、第０ノードからライダーの残り体力が１００％である確率、第１ノードからライダーの残り体力が９０％である確率、…、第１０ノードからライダーの残り体力が０％である確率といったように、各ノードからライダーの残り体力を示すデータを出力してもよい。ここで、残り体力が１００％の状態は、人力駆動車１の走行を開始する前のライダーの身体的コンディションから実質的に変化がない状態を表す。出力層１２６を構成するノードの数、および、各ノードに割り当てる出力データは、上述の例に限定されるものではなく、適宜設計することが可能である。
【０１０２】
図４は第１実施形態における判定手順を説明するフローチャートである。判定装置１００の演算処理部１０４は、ステップＳ１０１において、人力駆動車１の走行情報およびライダー情報を取得する。具体的には、演算処理部１０４は、入力部１０２を通じて、センサＳ１〜Ｓ７の出力信号および計測装置Ｍ１〜Ｍ８の計測結果を取得する。演算処理部１０４は、取得したセンサＳ１〜Ｓ７の出力信号および計測装置Ｍ１〜Ｍ８の計測結果を加工し、学習モデル１２０の入力層１２２に与える入力データを生成してもよい。
【０１０３】
演算処理部１０４は、ステップＳ１０２において、取得した走行情報およびライダー情報を学習モデル１２０の入力層１２２に入力することによって学習モデル１２０による演算を実行する。入力層１２２の各ノードには、走行情報およびライダー情報を示すデータが与えられる。入力層１２２の各ノードに与えられたデータは、隣接する中間層１２４Ａのノードへ出力される。中間層１２４Ａではノード間の重みおよびバイアスを含む活性化関数を用いた演算が行われ、演算結果は後段の中間層１２４Ｂへ出力される。中間層１２４Ｂにおいて、さらに、ノード間の重みおよびバイアスを含む活性化関数を用いた演算が行われ、演算結果は出力層１２６の各ノードへ出力される。このようにして、学習モデル１２０では、ライダーの身体的コンディションの判定結果が得られる。すなわち、学習モデル１２０は、入力層１２２に入力された走行情報に基づき、中間層１２４Ａ，１２４Ｂにおいて演算し、ライダーの身体的コンディションを示すデータを出力層１２６から出力する処理に用いられる。本実施形態において、学習モデル１２０は、入力層１２２に入力された走行情報およびライダー情報に基づき、中間層１２４Ａ，１２４Ｂにおいて演算し、ライダーの身体的コンディションを示すデータを出力層１２６から出力する処理に用いられる。
【０１０４】
演算処理部１０４は、ステップＳ１０３において、学習モデル１２０による演算結果を出力層１２６から取得する。出力層１２６を構成する各ノードからは、ライダーの身体的コンディションを示すデータが得られる。身体的コンディションを示すデータは、例えば、ライダーの残り体力がＸ％（Ｘは例えば１００，９０，…，０）である確率を表す。
【０１０５】
演算処理部１０４は、ステップＳ１０４において、学習モデル１２０の出力層１２６から取得した演算結果に基づき、ライダーの身体的コンディションを判定する。例えば、演算処理部１０４は、出力層１２６の各ノードから出力される確率のうち、確率が最も高い状態をライダーの身体的コンディションとして判定する。
【０１０６】
以上のように、判定装置１００は、人力駆動車１の走行情報の入力に応じてライダーの身体的コンディションを示すデータを出力するように構成される学習モデル１２０を用いて、ライダーの身体的コンディションを判定する。判定装置１００は、人力駆動車１の走行情報、および、人力駆動車１のライダーに関するライダー情報の入力に応じてライダーの身体的コンディションを示すデータを出力するように構成される学習モデル１２０を用いて、ライダーの身体的コンディションを判定する。第１実施形態における判定装置１００は、学習モデル１２０を用いることによって、センサＳ１〜Ｓ７から得られる人力駆動車１の走行情報、および、計測装置Ｍ１〜Ｍ８から得られるライダー情報に基づき、ライダーの身体的コンディションを判定する。
【０１０７】
本実施形態では、学習モデル１２０を用いてライダーの身体的コンディションを判定する構成としたが、各種センサＳ１〜Ｓ７から得られる人力駆動車１の走行情報、および、各種計測装置Ｍ１〜Ｍ８から得られるライダー情報を入力とし、ライダーの身体的コンディションを示すデータを出力する関数またはテーブルを用いて、ライダーの身体的コンディションを判定してもよい。
【０１０８】
本実施形態では、学習モデル１２０における出力層１２６の各ノードから、ライダーの残り体力がＸ％（Ｘは例えば１００，９０，…，０）である確率を出力する構成としたが、ライダーの消費カロリーが特定の値Ｙ（ＹはＹ１，Ｙ２，…，Ｙｎ等の離散的な値）である確率を出力する構成としてもよい。演算処理部１０４は、出力層１２６からの出力に基づいて、ライダーの消費カロリーを推定し、推定した消費カロリーと、走行を開始する前の値とを比較することによって、身体的コンディションを判定してもよい。
【０１０９】
他の出力形態では、学習モデル１２０における出力層１２６の各ノードから、ライダーへの負荷が特定の値Ｚ（ＺはＺ１，Ｚ２，…，Ｚｎ等の離散的な値）である確率を出力する構成としてもよい。演算処理部１０４は、出力層１２６からの出力に基づいて、ライダーへの負荷を推定し、推定した負荷に基づきライダーの身体的コンディションを判定してもよい。
【０１１０】
（第２実施形態）
第２実施形態では、判定装置１００による判定結果に基づき、人力駆動車１のコンポーネントを制御する制御システムについて説明する。
【０１１１】
図５は第２実施形態に係る制御システムを説明するブロック図である。第２実施形態に係る制御システムは、判定装置１００と、判定装置１００による判定結果に基づき、人力駆動車１のコンポーネントを制御する制御装置２００とを備える。判定装置１００の内部構成は、第１実施形態と同様であるため、その詳細な説明は省略する。
【０１１２】
制御装置２００は、制御部２０２、記憶部２０４、入力部２０６、および、出力部２０８を備える。制御部２０２は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部２０２が備えるＲＯＭには、制御装置２００が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部２０２内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部２０４に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御することによって、本願の制御装置を実現する。具体的には、制御部２０２は、入力部２０６を通じて入力される判定装置１００からの判定結果に基づき、人力駆動車１のコンポーネントを制御する制御信号を生成し、生成した制御信号を出力部２０８から出力する。
【０１１３】
制御部２０２は上述の構成に限定されない。制御部２０２は、シングルコアＣＰＵ、マルチコアＣＰＵ、ＦＰＧＡ、揮発性または不揮発性のメモリ等を含む１または複数の制御回路であればよい。また、制御部２０２は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【０１１４】
記憶部２０４は、ＥＥＰＲＯＭ、ＳＲＡＭなどのメモリを備える。記憶部２０４には、制御部２０２によって実行されるコンピュータプログラム、および、このコンピュータプログラムが用いるデータ等が記憶される。
【０１１５】
入力部２０６は、ケーブルを介して判定装置１００が接続されるインタフェースを備える。入力部２０６には、判定装置１００から出力される判定結果が入力される。入力部２０６に入力される判定結果は、ライダーの身体的コンディションを示すデータである。入力部２０６は、入力された判定結果を制御部２０２へ出力する。本実施形態では、ケーブルを介して判定装置１００を接続する構成としたが、無線通信のインタフェースを介して、判定装置１００と制御装置２００との間でデータを送受信できるように構成してもよい。無線通信では、Ｂｌｕｅｔｏｏｔｈ 、ＷｉＦｉ、ＺｉｇＢｅｅ、ＬＴＥ、その他の無線ＬＡＮ等の通信規格に準じた無線通信方式が利用できる。
【０１１６】
出力部２０８は、ケーブルを介して制御対象のコンポーネントが接続されるインタフェースを備える。出力部２０８は、制御部２０２から出力される制御信号を制御対象のコンポーネントへ出力する。本実施形態では、ケーブルを介して人力駆動車１のコンポーネントを接続する構成としたが、無線通信のインタフェースを介して、制御装置２００と人力駆動車１のコンポーネントとの間でデータを送受信できるように構成してもよい。無線通信では、上述した各種の通信規格に準拠した無線通信方式が利用できる。
【０１１７】
制御装置２００に接続されるコンポーネントは、一例では、報知装置２２０を含む。報知装置２２０は、表示装置２２０Ａまたは音声出力装置２２０Ｂを含む。
【０１１８】
表示装置２２０Ａは、出力部２０８から出力される制御信号に基づいて情報を表示する液晶表示パネル等を備える。表示装置２２０Ａは、ライダーから視認できる人力駆動車１の適宜箇所に設けられる。制御装置２００は、判定装置１００の判定結果に基づきライダーに報知すべき文字情報または画像情報を生成し、生成した文字情報または画像情報を出力部２０８から表示装置２２０Ａへ出力させる。
【０１１９】
音声出力装置２２０Ｂは、出力部２０８から出力される制御信号に基づいて音声を出力するスピーカ等を備える。音声出力装置２２０Ｂは、出力する音声がライダーによって聴き取ることがきる人力駆動車１の適宜箇所に設けられる。制御装置２００は、判定装置１００の判定結果に基づきライダーに報知すべき音声情報を生成し、生成した音声情報を出力部２０８から音声出力装置２２０Ｂへ出力させる。
【０１２０】
図６は第２実施形態における制御手順を示すフローチャートである。制御装置２００の制御部２０２は、ステップＳ２０１において、判定装置１００による判定結果を取得した場合、ステップＳ２０２において、判定装置１００による判定結果に基づき制御対象のコンポーネントを制御する制御信号を生成する。たとえば、制御対象のコンポーネントが表示装置２２０Ａである場合、制御部２０２は、文字情報または画像情報を表示装置２２０Ａに表示させるべく制御信号を生成する。制御対象のコンポーネントが音声出力装置２２０Ｂである場合、制御部２０２は、音声情報を音声出力装置２２０Ｂから出力させるべく制御信号を生成する。
【０１２１】
制御部２０２は、ステップＳ２０３において、ステップＳ２０２において生成した制御信号を出力部２０８から制御対象のコンポーネントへ出力し、制御対象のコンポーネントを制御する。
【０１２２】
表示装置２２０Ａは、制御装置２００からの制御信号に基づき文字情報または画像情報を表示する。図７は表示装置２２０Ａに表示される情報の一例を示す模式図である。図７の例では、ライダーの残り体力が４０％まで低下している旨の文字情報と、飲食または休憩が必要である旨の文字情報とを表示装置２２０Ａに表示している状態を示している。
【０１２３】
図８は表示装置２２０Ａに表示される情報の他の例を示す模式図である。図８の例では、ライダーに推奨する走行経路の画像情報を表示装置２２０Ａに表示している状態を示している。制御装置２００の制御部２０２は、人力駆動車１の現在地から目的地に向かう経路が複数存在する場合、各経路における走行距離を算出し、算出した走行距離が最も短くなるような経路を推奨する走行経路として表示装置２２０Ａに表示させる。目的地についてはライダーにより設定される。制御部２０２は、走行距離が最も短くなる経路を推奨する構成に代えて、走行経路における高低差が最も小さくなるような経路を推奨する走行経路として表示装置２２０Ａに表示させてもよい。制御装置２００は、既知の手法を用いて、人力駆動車１の現在地から目的地までの経路情報を取得することが可能である。制御装置２００は、外部の地図サーバにアクセスすることが可能である場合、地図サーバが提供するＡＰＩ（Application Programming Interface）を利用し、現在地および目的地の情報を与えることによって経路情報を取得できる。
【０１２４】
以上のように、第２実施形態では、ライダーの身体的コンディションの判定結果に応じて、人力駆動車１のコンポーネントを制御するので、必要に応じて、ライダーに飲食または休憩を促したり、ライダーに推奨する走行経路を提示したりすることできる。
【０１２５】
第２実施形態では、制御装置２００による制御対象のコンポーネントを表示装置２２０Ａまたは音声出力装置２２０Ｂとしたが、これらに限らず、人力駆動車１が備える変速装置３２または３３であってもよい。制御対象のコンポーネントが変速装置３２である場合、制御装置２００の制御部２０２は、判定装置１００による判定結果に基づき、変速装置３２の動作を制御する制御信号を生成し、出力部２０８から変速装置３２へ出力する。これにより、制御装置２００は、ライダーの身体的コンディションが悪化している状況下において、変速装置３２における変速比または変速段数を変更する制御を行い、ライダーの身体的負担を軽減してもよい。制御対象のコンポーネントが変速装置３３である場合、制御装置２００の制御部２０２は、判定装置１００による判定結果に基づき、変速装置３３の動作を制御する制御信号を生成し、出力部２０８から変速装置３３へ出力する。これにより、制御装置２００は、ライダーの身体的コンディションが悪化している状況下において、変速装置３３における変速比または変速段数を変更する制御を行い、ライダーの身体的負担を軽減してもよい。
【０１２６】
第２実施形態では、判定装置１００および制御装置２００をそれぞれ独立した装置として記載したが、判定装置１００および制御装置２００が一体となった装置であってもよい。
【０１２７】
（第３実施形態）
第３実施形態では、判定装置１００と外部装置との間で通信する通信システムについて説明する。
【０１２８】
図９は第３実施形態に係る通信システムを説明するブロック図である。第３実施形態に係る通信システムは、判定装置１００と、判定装置１００から出力される情報を外部装置へ送信する通信装置３００と、を備える。判定装置１００の内部構成は、第１実施形態と同様であるため、その詳細な説明は省略する。
【０１２９】
通信装置３００は、制御部３０２、記憶部３０４、入力部３０６、および、通信部３０８を備える。制御部３０２は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部３０２が備えるＲＯＭには、通信装置３００が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部３０２内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部３０４に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御することによって、本願の通信装置を実現する。具体的には、制御部３０２は、入力部３０６を通じて入力される判定装置１００からの判定結果を外部装置へ送信する。外部装置は、一例では、他の人力駆動車１Ａに搭載される通信装置３００Ａである。図９では、便宜的に、通信装置３００Ａを一台だけ示しているが、複数台の通信装置３００Ａと通信できるようにしてもよい。外部装置は、他の例では、インターネット網などの通信ネットワークに接続されたサーバ装置４００である。サーバ装置４００については、第４実施形態において、図１１を用いて説明する。
【０１３０】
制御部３０２は上述の構成に限定されない。制御部３０２は、シングルコアＣＰＵ、マルチコアＣＰＵ、ＦＰＧＡ、揮発性または不揮発性のメモリ等を含む１または複数の制御回路であればよい。また、制御部３０２は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【０１３１】
記憶部３０４は、ＥＥＰＲＯＭ、ＳＲＡＭなどのメモリを備える。記憶部３０４には、制御部３０２によって実行されるコンピュータプログラム、および、このコンピュータプログラムが用いるデータ等が記憶される。
【０１３２】
入力部３０６は、ケーブルを介して判定装置１００を接続するインタフェースを備える。入力部３０６には、判定装置１００から出力される判定結果が入力される。入力部３０６に入力される判定結果は、ライダーの身体的コンディションを示すデータである。入力部３０６は、入力された判定結果を制御部３０２へ出力する。本実施形態では、ケーブルを介して判定装置１００を接続する構成としたが、無線通信のインタフェースを介して、判定装置１００と通信装置３００との間でデータを送受信できるように構成してもよい。無線通信では、Ｂｌｕｅｔｏｏｔｈ 、ＷｉＦｉ、ＺｉｇＢｅｅ、ＬＴＥ、その他の無線ＬＡＮ等の通信規格に準じた無線通信方式が利用できる。
【０１３３】
通信部３０８は、通信インタフェースを備える。通信インタフェースには、例えば、ＷｉＦｉ、ＬＴＥ、その他の無線ＬＡＮ等の通信規格に準拠した通信インタフェースが利用される。通信装置３００は、他の人力駆動車１Ａに搭載される通信装置３００Ａへ通知すべき情報を通信部３０８から送信する。通信装置３００は、他の人力駆動車１Ａに搭載される通信装置３００Ａから送信される自装置宛の情報を通信部３０８にて受信する。
【０１３４】
図１０は第３実施形態における制御手順を示すフローチャートである。通信装置３００の制御部３０２は、ステップＳ３０１において、判定装置１００による判定結果を取得し、ステップＳ３０２において、判定装置１００から取得した判定結果に基づき、他の人力駆動車１Ａに搭載される通信装置３００Ａへ送信すべき情報を生成する。たとえば、制御部３０２は、判定結果を示す文字情報または画像情報を生成する。制御部３０２が生成する文字情報は、図７に示すように、ライダーの残り体力を示す文字情報、または、飲食または休憩を促す文字情報を含んでもよい。制御部３０２が生成する画像情報は、図８に示すように、ライダーに推奨する走行経路についての画像情報を含んでもよい。
【０１３５】
制御部２０２は、ステップＳ３０３において、ステップＳ３０２において生成した情報を、通信部３０８を通じて他の人力駆動車１Ａの通信装置３００Ａへ送信する。
【０１３６】
第３実施形態の通信装置３００は、判定装置１００による判定結果の情報を他の人力駆動車１Ａの通信装置３００へ送信する構成としたが、通信装置３００は、他の人力駆動車１Ａの判定装置によって判定され、他の人力駆動車１Ａの通信装置３００Ａから送信される他のライダーの身体的コンディションに関する情報を受信してもよい。
【０１３７】
通信装置３００は、判定装置１００にて判定結果が得られる都度、他の人力駆動車１Ａに搭載される通信装置３００Ａへ判定結果の情報を送信する必要はなく、ライダーの身体的コンディションが悪化している場合にのみ、身体的コンディションに関する警報情報を出力してもよい。
【０１３８】
通信装置３００は、信号機および交通量の少なくとも１つに関する情報を含む走行環境情報を外部装置から受信してもよい。具体的には、通信装置３００は、信号機および交通量の少なくとも１つに関する走行環境情報を送信する外部サーバと通信可能である場合、外部サーバから送信される走行環境情報を通信部３０８にて受信してもよい。
【０１３９】
通信装置３００が実施形態２で説明した表示装置２２０Ａに接続されている場合、制御部３０２は、通信部３０８にて受信した走行環境情報に基づき、ライダーに推奨する推奨走行経路に関する情報を生成し、生成した情報を表示装置２２０Ａに表示させる構成としてもよい。
【０１４０】
以上のように、実施形態３では、人力駆動車１に搭載される判定装置１００にて判定したあるライダーの身体的コンディションの情報を、他の人力駆動車１Ａのライダーに報知できる。複数のライダーが集団走行している場合であって、何れかのライダーの身体的コンディションが悪化した場合、そのライダーの身体的負担を軽減できるように、飲食または休憩を促したり、走行速度を落としたりすることができる。
【０１４１】
第３実施形態では、判定装置１００および通信装置３００をそれぞれ独立した装置として記載したが、判定装置１００および通信装置３００が一体となった装置であってもよい。
【０１４２】
第３実施形態における通信システムは、判定装置１００および通信装置３００を備える構成としたが、第２実施形態において説明した制御装置２００を更に備える構成であってもよい。
【０１４３】
（第４実施形態）
第４実施形態では、判定装置１００において用いられる学習モデル１２０の生成方法について説明する。
【０１４４】
判定装置１００にて用いられる学習モデル１２０は、例えば、外部のサーバ装置４００によって生成される。図１１はサーバ装置４００の内部構成を示すブロック図である。サーバ装置４００は、制御部４０２、記憶部４０４、入力部４０６、および、通信部４０８を備える。
【０１４５】
制御部４０２は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部４０２が備えるＲＯＭには、サーバ装置４００が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部４０２内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部４０４に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御する。
【０１４６】
制御部４０２は上述の構成に限定されない。制御部４０２は、ＣＰＵ、ＲＯＭ、および、ＲＡＭを備えた構成に限定されない。制御部４０２は、例えば、ＧＰＵ、ＦＰＧＡ、ＤＳＰ、量子プロセッサ、揮発性または不揮発性のメモリ等を含む１または複数の制御回路または演算回路であってもよい。また、制御部４０２は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【０１４７】
記憶部４０４は、ハードディスクドライブなどの記憶装置を備える。記憶部４０４には、制御部４０２によって実行される各種コンピュータプログラム、サーバ装置４００が生成する学習モデル４１０等が記憶される。
【０１４８】
入力部４０６は、各種データまたはプログラムを記録した記録媒体から、データおよびプログラムを取得するための入力インタフェースを備える。入力部４０６を通じて入力された各種データおよびプログラムは記憶部４０４に記憶される。
【０１４９】
通信部４０８は通信インタフェースを備える。通信部４０８は、例えば、サーバ装置４００を宛先として通信装置３００から送信されるデータを受信すると共に、通信装置３００へ送信すべきデータを送信する。
【０１５０】
以下、サーバ装置４００にて学習モデル４１０を生成する手順について説明する。
図１２は学習モデル４１０の生成手順を説明するフローチャートである。サーバ装置４００の制御部４０２は、ステップＳ４０１において、入力部４０６または通信部４０８を通じて、学習モデル４１０を学習するための教師データを取得する。教師データは、例えば、人力駆動車１の走行に関する走行情報、および、人力駆動車１のライダーに関するライダー情報と、ライダーの身体的コンディションを示すラベルデータとを含む。学習モデル４１０を生成する初期段階では、教師データは、例えばサーバ装置４００の管理者等によって設定されてもよい。学習が進めば、学習モデル４１０による推定結果を用いて、教師データを設定する構成としてもよい。後者の場合、学習モデル４１０への入力と、推定結果として得られるラベルデータとを、教師データとして設定できる。
【０１５１】
制御部４０２は、ステップＳ４０２において、教師データとして含まれる走行情報およびライダー情報を学習モデル４１０へ入力する。学習が開始される前の段階では、学習モデル４１０を記述する定義情報には、初期設定値が与えられる。学習モデル４１０は、第１実施形態において説明した学習モデル１２０と同様に、図３に示す学習モデル１２０と同様に、入力層、中間層、および、出力層を備える。学習モデル４１０の入力層を構成する各ノードには、走行情報およびライダー情報が与えられる。入力層の各ノードに与えられた情報は、隣接する中間層のノードへ出力される。中間層ではノード間の重みおよびバイアスを含む活性化関数を用いた演算が行われ、中間層による演算結果が出力層の各ノードへ出力される。制御部４０２は、ステップＳ４０３において、学習モデル４１０による演算結果を出力層の各ノードから取得する。
【０１５２】
制御部４０２は、ステップＳ４０４において、ステップＳ４０３にて得られた演算結果を評価し、ステップＳ４０５において、学習モデル４１０の学習が完了したか否かを判断する。具体的には、制御部４０２は、ステップＳ４０３において得られる演算結果と教師データとに基づく誤差関数を用いて演算結果を評価することができる。誤差関数は、目的関数、損失関数、または、コスト関数とも呼ばれる。制御部４０２は、最急降下法などの勾配降下法により誤差関数を最適化する過程で、誤差関数が閾値以下または閾値以上となった場合、学習モデル４１０の学習が完了したと判断する。制御部４０２は、過学習の問題を避けるために、交差検定、早期打ち切りなどの手法を取り入れ、適切なタイミングにて学習を終了させてもよい。
【０１５３】
ステップＳ４０５において学習が完了していないと判断した場合、制御部４０２は、ステップＳ４０６において、中間層で用いられるノード間の重みおよびバイアスを更新し、処理をステップＳ４０１へ戻す。制御部４０２は、出力層から入力層に向かって、ノード間の重みおよびバイアスを順次更新する誤差逆伝搬法を用いて、各ノード間の重みおよびバイアスを更新することができる。
【０１５４】
ステップＳ４０５において学習が完了したと判断した場合、制御部４０２は、ステップＳ４０６において、学習済みの学習モデル４１０として記憶部４０４に記憶させ、本フローチャートによる処理を終了する。
【０１５５】
以上のように、サーバ装置４００において実行される学習モデルの生成方法では、人力駆動車１の走行に関する走行情報に基づき、走行情報からライダーの身体的コンディションを判定する処理に用いられる学習モデルを、生成できる。第４実施形態におけるサーバ装置４００は、人力駆動車１の走行情報およびライダー情報と、ライダーの身体的コンディションを示すデータとに基づき、走行情報およびライダー情報からライダーの身体的コンディションを判定する処理に用いられる学習モデル４１０を生成できる。判定装置１００は、サーバ装置４００から学習済みの学習モデル４１０をダウンロードし、記憶部１０６に記憶させることによって、学習モデル４１０を用いてライダーの身体的コンディションを判定することができる。
【０１５６】
（第５実施形態）
第５実施形態では、サーバ装置４００においてライダーの身体的コンディションを判定する構成について説明する。
【０１５７】
サーバ装置４００の記憶部４０４に記憶される学習モデル４１０が学習済みである場合、この学習モデル４１０を用いてライダーの身体的コンディションを判定することができる。第５実施形態では、通信装置３００が人力駆動車１に搭載される。判定装置１００は人力駆動車１に搭載されていなくてもよい。通信装置３００の内部構成は第３実施形態と同様である。
【０１５８】
第５実施形態における通信装置３００は、入力部３０６を通じて、センサＳ１〜Ｓ７および計測装置Ｍ１〜Ｍ８から走行情報およびライダー情報を取得する。通信装置３００は、センサＳ１〜Ｓ７および計測装置Ｍ１〜Ｍ８から取得した走行情報およびライダー情報を、通信部３０８を通じてサーバ装置４００へ送信する。サーバ装置４００は、通信装置３００から送信される走行情報およびライダー情報を受信し、受信した走行情報およびライダー情報を用いて、ライダーの身体的コンディションを判定する。すなわち、第５実施形態においては、サーバ装置４００が本願の判定装置として機能するように構成されている。
【０１５９】
図１３は第５実施形態における判定手順を説明するフローチャートである。通信装置３００は、ステップＳ５０１において、人力駆動車１の走行情報およびライダー情報を取得する。具体的には、通信装置３００は、入力部３０６を通じて、センサＳ１〜Ｓ７の出力信号および計測装置Ｍ１〜Ｍ８の計測結果を取得する。
【０１６０】
通信装置３００は、ステップＳ５０２において、ステップＳ５０１において取得した走行情報およびライダー情報をサーバ装置４００へ送信する。
【０１６１】
サーバ装置４００は、ステップＳ５０３において、通信装置３００から送信される走行情報およびライダー情報を受信する。ステップＳ５０４において、サーバ装置４００の制御部４０２は、ステップＳ５０３において受信した走行情報およびライダー情報を学習モデル４１０の入力層に入力することによって学習モデル４１０による演算を実行する。入力層の各ノードには、走行情報およびライダー情報を示すデータが与えられる。入力層の各ノードに与えられたデータは、隣接する中間層のノードへ出力される。中間層ではノード間の重みおよびバイアスを含む活性化関数を用いた演算が行われ、中間層による演算結果は後段の出力層へ出力される。学習モデル４１０の出力層は、ライダーの身体的コンディションを示すデータを出力する。
【０１６２】
制御部４０２は、ステップＳ５０５において、学習モデル４１０による演算結果を学習モデル４１０の出力層から取得する。出力層を構成する各ノードからは、ライダーの身体的コンディションを示すデータが得られる。身体的コンディションを示すデータは、例えば、ライダーの残り体力がＸ％（Ｘは例えば１００，９０，…，０）である確率である。学習モデル４１０は、残り体力についての確率に代えて、消費カロリーが特定の値である確率、ライダーへの負荷が特定の値である確率などを出力してもよい。
【０１６３】
制御部４０２は、ステップＳ５０６において、学習モデル４１０の出力層から取得した演算結果に基づき、ライダーの身体的コンディションを判定する。例えば、制御部４０２は、出力層の各ノードから出力される確率のうち、確率が最も高い状態をライダーの身体的コンディションとして判定する。
【０１６４】
制御部４０２は、ステップＳ５０７において、身体的コンディションの判定結果を通信部４０８より通信装置３００へ送信する。
【０１６５】
通信装置３００の制御部３０２は、ステップＳ５０８において、サーバ装置４００から送信される身体的コンディションの判定結果を、通信部３０８を通じて受信する。
【０１６６】
以上のように、第５実施形態では、人力駆動車１が判定装置１００を備えていない場合であっても、サーバ装置４００を通じて、ライダーの身体的コンディションの判定結果を取得できる。
【０１６７】
（第６実施形態）
第６実施形態では、学習モデルの第２実装例について説明する。
【０１６８】
図１４は第２実装例における学習モデル１４０の構成図である。第２実装例における学習モデル１４０は、リカレントニューラルネットワークの一種であるｓｅｑ２ｓｅｑ（sequence to sequence）モデルである。学習モデル１４０は、例えばサーバ装置４００によって生成され、判定装置１００の記憶部１０６に記憶される。
【０１６９】
学習モデル１４０は、時系列データが入力されるｍ個のエンコーダＥ１〜Ｅｍと、時系列データを出力するｎ個のデコーダＤ１〜Ｄｎとを備える。インデックスのｍおよびｎは２以上の整数である。図１４において、エンコーダＥ１〜ＥｍおよびデコーダＤ１〜Ｄｎは、単一のブロックとして記載しているが、入力層および隠れ層を含む２〜８層程度の複数の層を有する。エンコーダＥ１〜ＥｍおよびデコーダＤ１〜Ｄｎの内部構造、ならびに、エンコーダＥ１〜ＥｍおよびデコーダＤ１〜Ｄｎにおける内部パラメータの学習方法については公知であるため、その詳細な説明を省略する。本実施形態では、人力駆動車１の走行情報またはライダー情報のうちの１つの時系列データを学習モデル１４０への入力とし、ライダーの身体的コンディションを示す時系列データを出力するように、学習モデル１４０の内部パラメータが学習される。
【０１７０】
図１４において横方向は時間ステップを表し、図中左方向から右方向へ手順が進行していることを表している。エンコーダＥ１〜Ｅｍのそれぞれには、人力駆動車１の走行情報またはライダー情報のうちの１つの時系列データが入力される。例えば、ケイデンスセンサＳ２の出力を学習モデル１４０への入力とした場合、判定装置１００の演算処理部１０４は、時系列データとして得られるケイデンスの値Ｋ１，Ｋ２，…Ｋｍを順次エンコーダＥ１〜Ｅｍに入力する。
【０１７１】
エンコーダＥ１〜Ｅｍの隠れ層には、内部状態として、入力されたケイデンスの時系列データが内部ベクトルｃｔとして記録される。ここで、ｔはタイムステップを表し、エンコーダＥ１〜Ｅｍ内では１〜ｍの値をとる。内部ベクトルｃｔは、入力ごとに値のステップへ受け渡されていき、全ての入力が終わった時点でデコーダＤ１に受け渡す内部ベクトルｃｍが得られる。
【０１７２】
最終のエンコーダＥｍにおける内部ベクトルｃｍはデコーダＤ１へ受け渡される。デコーダＤ１には出力の開始を指示する予約語が入力される。図１４の例では、予約語として＜ｇｏ＞を記載しているが、予め設定された固定値であればよい。エンコーダＥｍから内部ベクトルｃｍが受け渡され、出力の開始を指示する予約語が入力された場合、デコーダＤ１は出力ｈ１を出力し、内部ベクトルはｃｍ＋１へ変化する。デコーダＤ１の出力ｈ１は、次のステップにおけるデコーダＤ２への入力に用いられる。デコーダＤ１の内部ベクトルｃｍ＋１は、次のステップにおけるデコーダＤ２の内部状態として使用される。このようにして、Ｄ１，Ｄ２，…Ｄｎ−１の出力ｈｔおよび内部ベクトルｃｔは、順次次のデコーダＤ２，Ｄ３，…，Ｄｎに入力され、最終のデコーダＤｎが出力終了を表す予約語＜ｅｏｓ＞を出力するまで順次演算が実行される。
【０１７３】
以上の結果、デコーダＤ１〜Ｄｎ−１のそれぞれ得られるｎ−１個の出力ｈ１〜ｈｎ−１が、学習モデル１４０の最終的な出力となる。これらの出力ｈ１〜ｈｎ−１は、ライダーの身体的コンディションを示す時系列データを表す。
【０１７４】
演算処理部１０４は、学習モデル１４０のデコーダＤ１〜Ｄｎ−１からライダーの身体的コンディションを示す時系列データを取得する。演算処理部１０４は、エンコーダＥ１〜Ｅｍへの時系列データの入力と、デコーダＤ１〜Ｄｎ−１から出力される時系列データの取得とを順次繰り返すことによって、ライダーの身体的コンディションの経時変化を判定することができる。
【０１７５】
（第７実施形態）
第７実施形態では、学習モデルの第３実装例について説明する。
【０１７６】
図１５は第３実装例における学習モデル１６０の構成図である。第３実装例における学習モデル１６０は、ＣＮＮ（Convolutional Neural Networks）、Ｒ−ＣＮＮ（Region-based CNN）などによる学習モデルであり、入力層１６２、中間層１６４、および、出力層１６６を備える。学習モデル１６０は、人力駆動車１の走行情報またはライダー情報の時系列変化を示すグラフの画像の入力に対して、ライダーの身体的コンディションを示すデータを出力するように学習される。学習モデル１６０は、例えばサーバ装置４００によって生成され、判定装置１００の記憶部１０６に記憶される。
【０１７７】
判定装置１００の演算処理部１０４は、入力部１０２を通じて、人力駆動車１の走行情報およびライダー情報を取得した場合、それらの時系列変化を示すグラフを生成し、生成したグラフの画像を出力する。
【０１７８】
入力層１６２には、人力駆動車１の走行情報およびライダー情報の時系列変化を示すグラフの画像が入力される。例えば、入力層１６２には、横軸を時間、縦軸を人力駆動車１のケイデンス、ライダーの心拍等の値とした時系列グラフの画像が入力される。グラフには、複数の走行情報およびライダー情報の時系列変化が含まれていてもよい。
【０１７９】
中間層１６４は、例えば、畳み込み層１６４ａ、プーリング層１６４ｂ、および、全結合層１６４ｃにより構成される。中間層１６４における畳み込み層１６４ａおよびプーリング層１６４ｂは交互に複数設けられていてもよい。畳み込み層１６４ａおよびプーリング層１６４ｂは、入力層１６２を通じて入力されるグラフの画像から特徴量を抽出する。畳み込み層１６４ａおよびプーリング層１６４ｂにて抽出される特徴量は、例えば、グラフの傾き、極大点、極小点などである。畳み込み層１６４ａおよびプーリング層１６４ｂによって抽出された特徴量は、全結合層１６４ｃを通じて出力層１６６へ出力される。
【０１８０】
出力層１６６は、全結合層１６４ｃから入力される特徴量に基づき、ライダーの身体的コンディションを示すデータを出力する。
【０１８１】
演算処理部１０４は、学習モデル１６０の出力層１６６からライダーの身体的コンディションを示すデータを取得する。演算処理部１０４は、取得したライダーの身体的コンディションを示すデータに基づき、ライダーの身体的コンディションを判定することができる。
【０１８２】
今回開示された実施形態は、全ての点において例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０１８３】
１…人力駆動車、３０…操作装置、３２，３３…変速装置、３４…アジャスタブルシートポスト、３６…サスペンション装置、３８…バッテリユニット、１００…判定装置、１０２…入力部、１０４…演算処理部、１０６…記憶部、１０８…出力部、１１０…判定処理プログラム、１２０，１４０，１６０…学習モデル、２００…制御装置、２０２…制御部、２０４…記憶部、２０６…入力部、２０８…出力部、３００…通信装置、３０２…制御部、３０４…記憶部、３０６…入力部、３０８…通信部、４００…サーバ装置、４０２…制御部、４０４…記憶部、４０６…入力部、４０８…通信部
【図１】
2020138557.tif 000003
【図２】
2020138557.tif 000004
【図３】
2020138557.tif 000005
【図４】
2020138557.tif 000006
【図５】
2020138557.tif 000007
【図６】
2020138557.tif 000008
【図７】
2020138557.tif 000009
【図８】
2020138557.tif 000010
【図９】
2020138557.tif 000011
【図１０】
2020138557.tif 000012
【図１１】
2020138557.tif 000013
【図１２】
2020138557.tif 000014
【図１３】
2020138557.tif 000015
【図１４】
2020138557.tif 000016
【図１５】
2020138557.tif 000017