こんにちは、GO ASIA TRAIL の堤です。
先日、私がGitHubでオープンソースとして公開した、Monte Carlo法を活用したトレイルランニングレースの混雑度シミュレーションツールについて、前回の記事ではツールの概要をプレスリリース的に紹介しました。
👨🏻💻Code for Trail: トレイルランニングレースの混雑度をシミュレーションするツールを作っみた
今回は、より具体的な活用例に焦点を当ててお話しします。このツールを使って、実際のレースデータを基に、参加者数の違いがレースの完走率やDNF(Did Not Finish、リタイア)の数にどう影響するかをシミュレーションしてみました。レース運営者やランナーにとって役立つ洞察が得られるはずです。
ツールの概要と今回のシミュレーション目的
このツールは、トレイルレースのコースデータをGPXファイルとして入力し、Monte Carlo法(ランダムサンプリングによる確率シミュレーション)を使って、ランナーのペース分布やコースの勾配、混雑による影響を考慮したレース進行をシミュレートします。渋滞が発生しやすいシングルトラック区間での遅れをモデル化し、全体のタイムやDNF率を予測可能です。
前回の公開時からアップデートを加え、特に「関門(チェックポイント)の位置と制限時間」を設定できる機能を追加しました。これにより、実際のレースルールに沿ったDNFの発生をより正確にシミュレートできるようになりました。
今回の記事では、2025年6月に開催された「加賀スパトレイル by UTMB」の100kmコースを例に取り上げます。実際の参加者数である1200人と、仮定の500人バージョンを比較し、DNF数の変化を検証します。コースデータ(GPX)は実際のレースから取得し、ランナーのペース設定は両ケースで同一としています。これにより、純粋に参加者数の違いによる影響を分析できます。
ツールの詳細やソースコードは、以下のGitHubリポジトリで公開しています。ぜひ fork してカスタマイズしてみてください!
1200人参加の場合:実際のレースシミュレーション

まず、実際の参加者数1200人でシミュレートしてみましょう。コースは100kmで、関門は以下の通り設定:
- 39km地点:制限時間10時間5分
- 66km地点:制限時間16時間(スタートから)
結果は以下の通りです:
- 39km関門時点:DNF 686人
- 66km関門時点:累計DNF 729人
- 最終DNF:729人(完走率約39.2%)
このシミュレーションでは、中盤の39km時点で既に半数以上のランナーがDNFとなってしまいます。これは、スタート直後の混雑やシングルトラックでの渋滞が原因で、想定ペースを維持できなくなるためです。国際的な大規模レース(例: UTMB本戦)の完走率が65-70%程度であるのに対し、今回のレースは4割以下と低く、コースのキャパシティが参加者数に対して明らかに不足していることが示唆されます。
500人参加の場合:人数を減らした改善シミュレーション

次に、参加者を500人に減らした場合を同じ条件でシミュレートします。コースやペース設定は変更せず、混雑度のみが変化します。
結果は以下の通り:
- 39km関門時点:DNF 59人
- 66km関門時点:累計DNF 136人
- 最終DNF:136人(完走率約72.8%)
大幅に改善が見られます! 中盤のDNFが激減し、全体の完走率はUTMB本戦並みの水準に近づきます。これは、参加者数の減少により渋滞が軽減され、各ランナーが自身のペースを保ちやすくなるためです。
参加者数 | 39km関門DNF(人) | 66km関門DNF(人・累計) | 最終DNF(人) | 完走率(%) |
---|---|---|---|---|
1200 | 686 | 729 | 729 | 39.25 |
500 | 59 | 136 | 136 | 72.8 |
この比較から、参加者数を減らすだけで完走率が30%以上向上する可能性がわかります。特に、1200人ケースでは中盤で686人のDNFが発生するため、運営側は大量のランナーを輸送する必要があります。
大型観光バスで計算すると、13~14台分に相当しますが、現実的には2~3台のバスをピストン輸送する形になるでしょう。それでも、数百人をスタート地点に戻すには数時間かかり、当日の混乱を招くリスクが高いです。
ツールの活用メリットと結論
このシミュレーターの強みは、事前に机上でレースのリスクを予測できる点です。例えば:
- DNF予測と輸送計画:予想されるリタイア者数に基づき、バスやシャトルの手配を最適化。コストを抑えつつ、安全性を高められます。
- 参加者数調整:コースのキャパシティに合ったエントリー数を設定し、完走率を向上。ランナーの満足度を高め、リピート参加を促進。
- コース設計の改善:渋滞しやすい区間を特定し、バイパスルート追加、もしくはコースの見直し。
今回の加賀スパトレイルの例から、完走率の低さはコースキャパシティの不足が主因だと考えられます。1200人規模で開催するなら、輸送リソースを大幅に増強する必要がありますが、現実的に見て参加者数を減らすのが合理的です。ツールを使ってこうした分析を繰り返せば、より公平で楽しいレース運営が可能になるでしょう。
加賀スパトレイルに関しては、コースキャパシティ設計以外にも、エイドステーションでの水や食料が大幅に不足していた問題や財政問題も存在する。ただ、エイドステーションでの水や食糧問題は、参加人数を減らすことである程度は解決できる問題ではないでしょうか。
皆さんも自分のレースデータを入れて試してみてください! フィードバックがあればGitHubでお待ちしています。次回は、さらに高度な機能追加についてお話しするかも? それでは、また次回の記事でお会いしましょう。