おやまバディは,ポケットやウエストベルトに入れたスマートフォン1台で「計画どおりに無理なく登り,下り坂で足への負担を溜めずに歩き切るための客観的な道しるべ」を登山者に届ける伴走アプリです.各機能の詳しい数理モデル・床反力板との整合性検証は,各セクションの折りたたみパネルを開いて確認できます.
登り・平坦・下りの勾配ごとに無理のない区間ラップと到着予測時刻(ETA)を提示し,前半の飛ばしすぎや日没遅れの不安を減らします.
山行序盤のあなた自身の歩き方を基準(N-of-1)として記憶し,下り坂で着地衝撃や左右のブレが増えたときに「歩幅を少し狭める」等の具体的なヒントを届けます.
48文字以内の短い音声案内と,下りの小股リズムを促すデジポールにより,足元と周囲の景色に集中したまま歩けます.
登高速度(VAM),推定床反力(体重比 BW),安定した足運び(シカ状態)の維持割合を一覧化し,次の山行に向けた具体的な振り返り材料を残せます.
おやまバディの内部処理は,(1) GPX・気圧による地形ギアバンド別ペーシング,(2) 下層の勾配条件付き床反力(GRF)推定モジュール(ForcePlateGrfLowerLayer / GradeConditionedGrfEstimator),(3) 上層の N-of-1 初期校正+ExtraTrees 足運び5タイプ分類器(SherpaKneeDriftDetector),(4) 任意ONの下りケイデンスクリック(最大30秒),(5) 最大48文字の有界TTS案内から構成されます.下層GRF推定と上層ExtraTrees分類は同一の3軸加速度窓を並列に処理する独立モジュールであり,いわゆる「3層モデル」という実装構造は存在しません.
登山相棒こまち
人間の歩行において勾配 $i = \tan\theta$(または $\Delta h / \Delta d$)に応じた単位質量・距離あたりの代謝エネルギー消費量 $C(i)$ [$\text{J}/(\text{kg}\cdot\text{m})$] は,Minetti ら(2002)により以下の5次多項式でモデル化されています:
このコスト関数は勾配 $i \approx -0.10$(約 $-10\%$)で最小値をとり,登りでは急峻に増大,急激な下り坂($i < -0.15$)ではエキセントリック筋収縮の増大に伴い再びコストが増加します.
地形勾配に応じた標準歩行速度 $V(i)$ [km/h] は,Tobler のハイキング関数をベースに山岳路面の不整地抵抗係数を考慮して算出されます:
| ギア区分 | 勾配範囲($i$) | 力学的特性 | バディのペーシング制御 |
|---|---|---|---|
| 急登(Steep Climb) | $i > +0.15$ | 重力に対抗する筋出力が支配的,心拍上昇大 | 目標VAM(登高速度)を提示し,オーバーペースを抑止 |
| 緩登(Gentle Climb) | $+0.05 < i \le +0.15$ | 有酸素定常歩行領域 | 基準CT比(0.8〜1.2)での巡航を維持 |
| 平坦(Flat / Rolling) | $-0.05 \le i \le +0.05$ | 水平方向の推進効率が最大 | 歩調リズム(ケイデンス)の一定性を評価 |
| 緩下り(Gentle Descent) | $-0.15 \le i < -0.05$ | 代謝コスト最小領域 | 惰性での加速を抑え,転倒防止の足運びを案内 |
| 急下り(Steep Descent) | $i < -0.15$ | 大腿四頭筋へのエキセントリック制動が支配的 | 下りケイデンスクリック(任意ON時)の対象域 |
足運び5タイプ分類(ExtraTrees)の学習・閾値選定には,実生活下の腰部3軸加速度データセット PhysioNet LTMM(DOI: 10.13026/C2KM49,サンプリング周波数 $100\,\text{Hz}$)を被験者分離交差検証(Subject-disjoint OOF)で用いています.
床反力(GRF)推定MLPの教師データには,Scherpereel et al., Scientific Data 2023(論文 DOI: 10.1038/s41597-023-02840-6,データ DOI: 10.35090/gatech/70296)の被験者 $N=11$ 名・計547立脚期(平地 $0.6, 1.2, 1.8\,\text{m/s}$ および下り $-5^\circ = -8.75\%$, $-10^\circ = -17.63\%$)の骨盤実測IMU($200\,\text{Hz}$)と床反力板3分力(体重比 BW)を用いています.
| 階層 | 公開実測データセット | サンプリング・検証方式 | アプリ内で担う役割 |
|---|---|---|---|
| 上層(足運び分類) | PhysioNet LTMM(腰部3軸IMU) | $100\,\text{Hz}$・被験者分離OOF(Youden $p_{\text{th}}=0.40$) | N-of-1個人基準からの歩行変調検知と5動物タイプ分類 |
| 下層(床反力推定) | Scherpereel et al. 2023(骨盤IMU+床反力板) | 立脚201点正規化・被験者分離LOO検証 | 3軸加速度生波形と勾配%から鉛直・制動GRF(BW)を推論 |
時間窓内の平均加速度ベクトル $\bar{\mathbf{a}} = (\bar{a}_x, \bar{a}_y, \bar{a}_z)$ から重力単位基底 $\hat{\mathbf{e}}_V = \bar{\mathbf{a}} / \|\bar{\mathbf{a}}\|$ を定め,Gram-Schmidt 直交化によって水平左右基底 $\hat{\mathbf{e}}_{\text{ML}}$ と前後基底 $\hat{\mathbf{e}}_{\text{AP}} = \hat{\mathbf{e}}_V \times \hat{\mathbf{e}}_{\text{ML}}$ を構成します:
鉛直加速度の自己相関関数 $R(\tau)$ から,1歩周期(Step Lag $\tau_{\text{step}} \in [0.38, 0.85]\,\text{s}$)および1ストライド周期(Stride Lag $\tau_{\text{stride}} = 2\tau_{\text{step}}$)を特定し,歩調 $\text{Cadence} = 60 / \tau_{\text{step}}$ と左右対称性(Symmetry Index)および EBII を算出します:
登山相棒こまち
lee_park_grade_grf_mlp_v1.json)
下層モジュール ForcePlateGrfLowerLayer(およびラッパー GradeConditionedGrfEstimator)は,Lee & Park(2020, doi:10.3390/s20216277)の仙骨IMU運動学再構成+人工ニューラルネットワーク(ANN)手法を,Scherpereel et al.(2023, doi:10.1038/s41597-023-02840-6 / データ doi:10.35090/gatech/70296)の傾斜トレッドミル実測床反力データ(11名・547立脚期)で学習した多層パーセプトロン(MLP: $11 \to 20\text{ [logistic]} \to 3\text{ [linear]}$)です.
ここで $\tau_i = i / 200$($i = 0, \dots, 200$)は1立脚期を201点に正規化した無次元時間,$\sigma(u) = (1 + e^{-u})^{-1}$ はロジスティック関数,$G$ は実効勾配($\%$:気圧高度差 $\Delta h / \Delta d \times 100$ またはGPX計画標高プロファイル)です.
実験室の骨盤IMU+床反力板で学習したモデルをスマートフォンの内蔵IMUストリームへ適用するにあたり,以下の5つの物理的・数理的不変条件を満たすよう実装・検証されています:
| 整合性検証項目 | 生じうる物理的・数理的乖離 | 実装されている厳密な整合化処置 |
|---|---|---|
| ① 単位系の自己整合 ($\text{G}$ vs $\text{m/s}^2$) |
iOS CoreMotion 重力整列ストリームは $\text{G}$ 単位(静止時 $\approx 1.0\,\text{G}$),sensors_plus 生ストリームは $\text{m/s}^2$ 単位(静止時 $\approx 9.81\,\text{m/s}^2$).そのまま混在させると重力減算 $a_V - g$ で $-8.8\,\text{m/s}^2$ の誤差が生じる. |
窓平均ベクトルのノルム $\|\bar{\mathbf{a}}\|$ を検査し,$0.35 < \|\bar{\mathbf{a}}\| < 3.5$ の場合は $g = 9.80665\,\text{m/s}^2$ を乗じて全軸を厳密に $\text{m/s}^2$ 単位へ統一する(単体テストで $\text{G}$ 入力と $\text{m/s}^2$ 入力の出力が $10^{-3}\,\text{BW}$ 以内で一致することを検証済み). |
| ② 重力整列射影と 水平DCオフセット除去 |
スマホがポケット内で傾くと重力が $Y$ 軸や $X$ 軸に漏れ,また骨盤前傾角による定数オフセットが加速度チャンネルに残るとMLP入力がシフトする. | Gram-Schmidt 正規直交射影で重力軸 $\hat{\mathbf{e}}_V$ と水平2軸 $(\hat{\mathbf{e}}_{\text{ML}}, \hat{\mathbf{e}}_{\text{AP}})$ へ分解後,Scherpereel の pelvis_acc と同じく $\bar{a}_{\text{ML}} = 0,\; \bar{a}_{\text{AP}} = 0,\; \bar{a}_V = +g$ にDC整列し,着地鉛直ピーク時点の前後加速度符号を検査して前後軸の向きを揃える. |
| ③ ステップ自己相関による 1立脚期 $[a, b]$ 切り出し |
腰部鉛直加速度は1立脚期中に上下振動するため,単純な閾値連続区間($a_V > g + 1.5$)では $0.30\,\text{s}$ 以上連続せず,複数歩の窓全体が1歩として誤入力される. | ステップ周期帯域 $\tau_{\text{step}} \in [0.38, 0.85]\,\text{s}$ の自己相関ピークから $T_{\text{stride}} = 2\tau_{\text{step}}$ と立脚期長 $T_{\text{stance}} = \text{clamp}(0.60\,T_{\text{stride}},\, 0.42,\, 1.05)\,\text{s}$ を算出.Scherpereel 547立脚期の実測位相中央値に従い,着地衝撃ピークの $11.3\%$ 手前を初期接地(IC: $a$),$b = a + \text{round}(T_{\text{stance}} f_s) - 1$ を離地(TO)として1歩を切り出す. |
| ④ Lee & Park 二重積分と 周期境界ドリフト除去 |
生加速度の単純な二重積分はセンサバイアスにより $O(t^2)$ で発散する. | $10\,\text{Hz}$ ゼロ位相ローパス後,$\tilde{\mathbf{a}}(t) = \mathbf{a}(t) - [0, 0, g]^\top$ を累積積分し,線形ドリフト除去 $\mathbf{v}(t) \leftarrow \mathbf{v}(t) - (\mathbf{v}(T)-\mathbf{v}(0))\frac{t}{T}$ と平均速度条件 $\bar{\mathbf{v}} = [0, v_{\text{AP}}, 0]^\top$,同様に位置 $\mathbf{p}(t)$ のドリフト除去と平均位置条件 $\bar{\mathbf{p}} = [0, \frac{1}{2}v_{\text{AP}}T, 0]^\top$,立脚中期の左右符号統一 $\mathbf{p}(T/2)_{\text{ML}} \ge 0$ を適用する. |
| ⑤ コホート物理スケール正規化 ($F=ma$ 衝撃振幅の保存) |
二重積分は動的加速度 $\tilde{\mathbf{a}}$ に対し斉次1次(線形)であるため,1立脚期ごとに $[0, 1]$ Min-Max 正規化(amp01)を行うと振幅倍率 $\alpha$ が分子・分母で約分($\alpha/\alpha = 1$)され,強い着地衝撃も弱い着地衝撃も同じ入力に潰れてしまう. |
学習コホート全体の $0.5 \sim 99.5$ パーセンタイル物理境界 $[\mathbf{k}_{\min}, \mathbf{k}_{\max}] \in \mathbb{R}^9$ をモデルJSONに保持し,$\tilde{\mathbf{k}} = (\mathbf{k} - \mathbf{k}_{\min}) / (\mathbf{k}_{\max} - \mathbf{k}_{\min})$ で正規化する.これにより1歩ごとの衝撃振幅が厳密に保存され,歩行速度・着地衝撃に応じたGRF変化が再現される. |
MLPが出力した201点の床反力波形 $\hat{F}_V(\tau_i),\, \hat{F}_{\text{AP}}(\tau_i)$ [$\text{BW}$] と実立脚時間 $T_{\text{stance}}$ [$\text{s}$] から,以下の4つの力学指標を算出します(加速度生波形が未供給のときのみ `waveform_unavailable` として基準プレースホルダを返します):
ここで $b_i = \max(0, -\hat{F}_{\text{AP}}(\tau_i))$,$\Delta t_{\text{stance}} = T_{\text{stance}} / 200$,$t_{\text{rise}}$ は初期接地から立脚前半最大ピークまでの到達時間です.
Scherpereel et al.(2023)公開データ($N=11$ 名・547立脚期,平地 $0.6, 1.2, 1.8\,\text{m/s}$ および下り $-5^\circ, -10^\circ$)における被験者分離 Leave-One-Subject-Out(LOO)検証結果は以下の通りです.
| 検証条件(Scherpereel $N=11$ 被験者分離 LOO) | 鉛直 GRF ($V$) NRMSE 中央値 | 前後 GRF ($AP$) NRMSE 中央値 | ピーク誤差 MAE(平均 / 中央値) |
|---|---|---|---|
| 本搭載モデル(勾配特徴あり+コホート物理スケール正規化) | 7.24%(平均 7.55%) | 10.07%(平均 11.00%) | 鉛直: 0.0666 / 0.0465 BW 制動: 0.0374 / 0.0318 BW |
比較:1立脚期ごとの amp01 正規化(衝撃振幅が約分消失する場合) |
9.92%(平均 10.52%) | 12.41%(平均 15.54%) | 鉛直: 0.0983 / 0.0671 BW 制動: 0.0695 / 0.0674 BW |
| 比較:平地学習モデルを下り $-10^\circ$ へ勾配特徴なしで転用 | 19.3% | 55.2% | 下り制動波形が大きく破綻 |
平地のみで学習したモデルを勾配情報なしで下り坂へ転用すると前後制動GRFのNRMSEが $55.2\%$ まで悪化しますが,勾配特徴 $G/45$ とコホート物理スケール正規化を導入することで,全勾配・全速度域にわたり鉛直NRMSE中央値 $7.24\%$,ピーク制動誤差中央値 $0.0318\,\text{BW}$ で再構成できることが確認されています(なお,このLOO NRMSEはScherpereel骨盤IMU実験データ上の検証値であり,スマートフォン装着時の実測床反力板NRMSEを直接保証するものではありません).
初期校正フェーズで計測された各特徴量の個人基準値 $\mu_{\text{base}, i}, \sigma_{\text{base}, i}$ に対する現在値と相対変化量から特徴ベクトルを構成し,PhysioNet LTMM Phase-2 被験者分離検証で学習された ExtraTrees モデル(oyama_trait_change_et_v1.json)により歩行変調確率 $p$ を推論します:
| 特徴量シンボル | 力学的指標の定義 | 優勢時に割り当てられる動物タイプ |
|---|---|---|
peak_impact / ebii | 鉛直最大着地衝撃・着地制動衝撃指数 | 🐗 イノシシ(歩幅を少し小さく意識) |
rms_ml / sway_ml_v | 水平左右動揺RMS・左右ブレ比率 | 🐒 サル(一本のレールの上を歩く意識) |
jerk_rms / impact_ratio | 鉛直躍度RMS・高周波突き上げ比率($8\sim20\,\text{Hz}$) | 🦡 イタチ(足首と膝を柔らかく使う意識) |
guarding_ratio | 筋性防御帯域比率($3\sim8\,\text{Hz}$) | 🐐 ヤギ(肩の力を抜いて呼吸を整える意識) |
| 変調未検知($p < 0.40$) | 個人基準範囲内の安定した足運び | 🦌 シカ(良好な巡航・下山リズム) |
変調未検知($p < 0.40$)
初期校正範囲内の良好な歩行状態.テンポと衝撃吸収のバランスが保たれています.
peak_impact 最上位
下り坂での大股着地・強い制動衝撃傾向.歩幅を少し小さく意識します.
rms_ml 最上位
体幹動揺や左右の揺れが増大.一本のレールの上を歩く意識を持ちます.
jerk_rms 最上位
膝関節を突っ張った着地で加加速度が上昇.足首と膝を柔軟に使います.
guarding_ratio 最上位
急斜面への警戒による筋肉のこわばり傾向.肩の力を抜いて呼吸を整えます.
歩行運動学における幾何学的関係は次式で表されます:
下り坂で1歩あたりの着地制動衝撃(EBII: Eccentric Braking Impact Index)および制動床反力 $F_{y,\text{brake}}$ の集中を抑えるには,移動速度を抑えつつ,歩調(Cadence)を維持または引き上げることで,歩幅を小さく保つ(小股化する)ことが基本的な幾何学的解です.
急下り $\le -8.75\%$ では上記適応式により目標SPMを $88\sim128$ の範囲で算出し,デジポールの小股リズム案内の目安とします.こまちの発話ガイドと一体で,身体が小股のリズムを掴むきっかけを作ります.
登山相棒こまち
| 制御原則 | 実装仕様 | 登山者にとってのメリット |
|---|---|---|
| 最新1件合流(非有界キュー禁止) | 新着発話リクエスト時に世代トークン(generation)を更新し,未着手の古いタスクを即時破棄 |
案内が遅れて後からまとめて鳴り続ける現象を防ぎ,常に「いま目の前の状況」だけを伝達 |
| フルセンテンス音声案内(文字数制限撤廃) | システムTTS(AVSpeechSynthesizer)の採用により48文字の短文切り詰めを撤廃し,句読点と単位読み替え(m→メートル,%→パーセント等)を正規化 |
「全◯区間中 第◯区間の達成率」「コース全体の進捗%と残り推定時間」「急下りでの丁寧な膝ケア助言と通過後の負荷軽減フィードバック」まで途切れず自然に伝達 |
| 急下り3連続ヒット+デバウンス | 勾配 $\le -8.75\%$ で同一動物タイプ変調が連続規定回数発生したときのみ発話し,発話後はデバウンス間隔を設定 | たまたま石を踏んだ1歩だけの揺れでは鳴らず,本当に歩き方が崩れ始めたときだけ静かに知らせる |
登山相棒こまち
1kmごとの区間サマリーでは,勾配を平坦($0\%$)に固定するのではなく,区間内の各ウィンドウで記録された実測勾配の平均値と各ウィンドウの床反力推定値($F_{z,\text{peak}},\, F_{y,\text{brake}},\, \text{Loading Rate},\, I_{\text{brake}}$)を平均して集計します.
| 分類 | 表示指標 | 算出方法 | 自己管理上の意味 |
|---|---|---|---|
| 登高・巡航指標 | 登高速度 (VAM) | 登坂区間における獲得標高ペース(m/h) | 急登での出力水準の把握 |
| 平坦巡航速度 | 平坦区間(勾配 $\pm 5\%$)の歩行速度(km/h) | 林道や稜線での巡航テンポの把握 | |
| 登り持続力 | 前半登坂ペースに対する後半登坂ペース維持率(%) | 行動後半でのペース維持傾向の確認 | |
| ペース一貫性 | 区間ごとの速度ばらつきの小ささ(%) | 無理のない一定ペース配分の確認 | |
| 下山フットワーク・GRF指標 | 下り平均テンポ | 勾配 $\le -8.75\%$ 区間の平均歩調(SPM) | 小股ピッチ(88〜128 SPM)の維持確認 |
| 推定着地・制動床反力(BW) | 床反力板MLP(ForcePlateGrfLowerLayer)によるピーク鉛直 $F_{z,\text{peak}}$・ピーク制動 $F_{y,\text{brake}}$(体重比 BW) |
勾配と加速度波形から推定された1歩あたりの力学的負荷の可視化 | |
| シカ歩行維持率 | 全歩行時間に対するシカ判定($p < 0.40$)時間の割合(%) | 初期基準に近い安定した足運びを継続できた割合 | |
| 下山ペース比 | 目標下山ペースに対する実測下山ペース比(%) | 後半の失速有無の客観確認 |
| 用いない表現 | おやまバディにおける客観的表現 | 位置づけ |
|---|---|---|
| ❌ 医療上の断定・判定 | ✅ タイプ分類,歩行傾向の可視化,ログ解析 | 医療類似表現の排除 |
| ❌ 治療・予防・処方・医学的助言 | ✅ 一般的な参考情報,歩行改善のヒント | 客観的バイオメカニクス指標の提示 |
| ❌ 膝の限界判定・耐性判定 | ✅ 下り区間の負荷関連指標,客観的負荷の可視化 | 力学的負荷数値の客観表示 |
| ❌ 安全・危険判定,参加可否の判定 | ✅ 本人・リーダーの判断材料,参考指標 | 最終的な登山判断の自主性尊重 |
| 版 | 内容 |
|---|---|
| 10/27版 2026-10-27 |
|
| 版 | 内容 |
|---|---|
| 10/14版 2026-10-14 |
|
運営・データ方針
| 項目 | 方針・内容 |
|---|---|
| 現在の提供状況 | バイオメカニクスモデルの実証実験期間中につき,音声案内や高度な力学推定を含め,すべての機能を完全無料でお使いいただけます. |
| 将来の課金・開発支援 | 継続的なサーバー維持費やセンサー解析エンジンの改善のため,将来的に一部機能の課金や開発支援(寄付・サポート)をお願いする可能性がありますが,現在はすべて無料でお使いいただけます.導入時にも事前にアプリ内や公式サイトにて明記・告知し,意図しない自動課金等は一切発生いたしません. |
| プライバシーとデータ保護 | 端末内で記録された加速度センサー波形や歩行パラメータ,位置情報は,歩行力学の研究開発・解析精度の改善,およびユーザーご自身の振り返り用途にのみ安全に利用され,第三者へ販売・提供されることはありません. |