本日も乙

ただの自己満足な備忘録。

生成AIをPDCAツールにする 〜横浜マラソン完走しました〜

昨日、横浜マラソンに参加してきました。記録は4時間11分と、前回のフルマラソンから30分以上の記録更新で自己ベストを達成しました。平均すると1kmあたり6分前後で走り、エイドやトイレ休憩以外ではほぼ立ち止まらずに走り切れたのが大きな成果だと思います。

後半はペースが少し落ちましたが、立ち止まらずに走り続けられたこと、そして練習の成果を実感できたので、今の時点では満足できる結果となりました。

しかし、人間の欲というものは限りがないもので、この記録になるとサブ4(4時間未満での完走)の背中が見えてきました。ここまで来たら達成したいと思ってしまうもの。

理論的には1kmあたり5分40秒のペースを維持し続ければサブ4を達成できます。水分補給などを考慮すると5分30秒/kmで走り続ける必要があります。ハーフマラソンくらいならそのペースで走れるのですが、35kmを過ぎると失速してしまうことから持続力が課題だと感じています。コーチングなどを受ければよいのですが、今回はChatGPTに横浜マラソンの結果を分析して最適なトレーニングメニューを考えてもらいました。

Garminのスマートウォッチを使用しています。GarminではFITGPXTCX、3つのファイル形式でエクスポートができます。情報量は FIT > TCX > GPX の順ですが、FITはバイナリでそのままではChatGPTに解析してもらうことはできません。TCX、GPXはテキストデータなのでChatGPTにアップロードすればそのまま読み込んでくれます。

今回は、情報量の多いFITファイルをPythonスクリプトでCSVファイルに変換してChatGPTにアップロードすることにしました。スクリプトはこんな感じです。

import csv
from fitparse import FitFile

fitfile = FitFile("17386049546_ACTIVITY.fit")
output_csv_file = "output_file.csv"

with open(output_csv_file, mode="w", newline="") as file:
    writer = csv.writer(file)

    headers = [
        "altitude",
        "cadence",
        "distance",
        "enhanced_altitude",
        "enhanced_speed",
        "fractional_cadence",
        "heart_rate",
        "position_lat",
        "position_long",
        "speed",
        "timestamp",
    ]
    writer.writerow(headers)

    for record in fitfile.get_messages("record"):
        row = []
        for field in headers:
            value = record.get_value(field)
            if value is not None:
                row.append(value)
            else:
                row.append("")

        writer.writerow(row)

ChatGPTからの回答

ChatGPTにはFITからCSVに変換したファイルに加え、普段の練習量と身長・体重・年齢をプロンプトに含めて、1週間のプランニングをしてもらった結果の一部が以下になります。

## フルマラソンの結果からの課題点

### 1. ペースのばらつき

* 解析: フルマラソンでは、レース全体を通じて一定のペースで走ることが重要です。横浜マラソンのデータを確認すると、速度にばらつきがあり、途中で速度が落ちる区間が見られました。特に後半でのペース維持が難しい傾向があり、持久力の向上が課題です。
* 対策: ペース配分を改善するために、テンポ走やロングランを行い、一定のペースで走る感覚を身に付けることが重要です。目標ペースである1kmあたり5分40秒のペースを体感し、そのペースを長時間維持できる練習を行います。

### 2. 心拍数の上昇と管理

* 解析: 心拍数が徐々に上昇していくことで、レース後半にエネルギーが枯渇しやすくなることが予想されます。特に、心拍数が高い状態で走り続けると、乳酸が溜まり、足が重くなり、パフォーマンスが低下します。
* 対策: 心拍数を安定させるために、ゆっくりとしたペースでの長距離走を増やし、有酸素運動ゾーンで走る練習を取り入れます。また、インターバルトレーニングなどの高強度なトレーニングで心肺機能を強化し、心拍数の管理能力を向上させます。

### 3. エネルギー管理と後半のペースダウン

* 解析: レースの後半にペースが落ちる原因として、エネルギー補給の不足やスタミナ切れが考えられます。これは、ペースの維持だけでなく、適切なエネルギー管理も課題であることを示しています。カーボローディングやレース中の補給計画が不十分だと、後半でエネルギー切れが起こり、ペースダウンに繋がります。
* 対策: 長距離走では、途中でエネルギー補給(ジェル、バナナなど)を適切に行うことを意識しましょう。トレーニング中にもエネルギー補給をシミュレーションし、本番でも活かせるように練習します。また、カーボローディングをレース前日に行い、筋肉中に十分なグリコーゲンを蓄えることが重要です。

### 4. スタート時のペース配分

* 解析: マラソンでは、スタート時に速すぎるペースで飛び出すと、後半でバテてしまうことがよくあります。横浜マラソンのデータでも、最初の区間で速いペースが確認されており、その後の失速に繋がっている可能性があります。
* 対策: スタート時のペースをしっかりとコントロールし、レース全体で一定のペースを保つ練習を行います。特にテンポ走やペース走で、自分のレースペースを体感することが大切です。

### 5. 長距離への耐久力

* 解析: 長距離を走る際の持久力が不十分である可能性があります。マラソンの後半でペースが落ちることは、スタミナ切れや体力の消耗が主な原因となるため、より長い距離を走るトレーニングが必要です。
* 対策: 週1回のロングランで25〜30kmの距離を走ることで、レースの後半でも持久力を維持できるようにトレーニングします。ロングランでは、ペースを少し落としつつも、長時間走り続けることに慣れることが重要です。


## 1週間のトレーニングプラン

* 月曜日: ジョグ 10km(6分30秒/kmペース)
* 火曜日: スピードトレーニング(インターバルトレーニング)
* 水曜日: 軽めのジョグ 5〜8km(6分30秒/kmペース)+筋トレ
* 木曜日: テンポ走 8〜10km(5分30秒/kmペース)
* 金曜日: 軽めのジョグ 5〜8km(6分30秒/kmペース)+筋トレ
* 土曜日: ロングラン 25〜30km(6分30秒/kmペース)
* 日曜日: 休養または軽いストレッチ、ウォーキング

## 筋トレ

* スクワット: 3セット×15〜20回
* ランジ: 3セット×10〜15回(片足ずつ)
* プランク: 3セット×30〜60秒
* サイドプランク: 2セット×30〜60秒(片側ずつ)
* レッグレイズ: 3セット×15〜20回
* ヒップリフト: 3セット×15〜20回

 

目標達成するためには、現状と目標とのギャップを正しく把握し、ギャップを埋めるためのプランを考えて、それを実行し、フィードバックからプランを最適化していくことが重要です。要はPDCAサイクルですね。 現状の把握とギャップを埋めるためのプラン作成をするには、それに詳しい人にアドバイスをもらうのが最善ですが、今回のようなChatGPTに問いかけてみるのも良いですね。

次のフルマラソンは12月1日の湘南国際マラソン。残り1ヶ月ちょっとしかありませんが、できる限りの準備をして少しでもサブ4に近づけるようにしていきたいと思います。