Post

【FF14】特定の魚を狙う釣りにおけるスキル総合戦略の最適化モデル

【FF14】特定の魚を狙う釣りにおけるスキル総合戦略の最適化モデル

制限時間内に、どれだけ狙った魚を釣り上げられるか。

本記事では、その効率を数学的に最適化するためのアプローチとして、3段階に分かれたスキル戦略構築のプロセスを解説します。


1. 単一シナリオの評価

まずは「トレードリリースの対象」「撒き餌の有無」「ルアーの使用回数」「型確定の有無」といった状況パターンを完全に固定した、単一の「シナリオ」を作り、その基本性能を評価します。

例えば、「ルアーアクションを3回使って何も起こらなかった」あるいは「2回目で型が確定した」といった1つの状況がシナリオに該当します。

この段階での目的は、当該シナリオにおける 「ターゲット1匹を釣るための期待時間」「秒間あたりの平均GP収支(消費と回復の差)」 という絶対的な指標を把握することです。

変数定義

変数意味補足
$p_i$各魚のヒット率シナリオ内で特定の魚がヒットする確率
$t_i$サイクル時間その魚が釣れるまでにかかる時間
$c$平均サイクル時間シナリオ1周あたりの平均所要時間
$h$ターゲットのヒット率狙っている魚単体のヒット率
$E_{time}$期待時間ターゲット1匹を釣るための期待時間
$GP_{cost}$スキル消費量シナリオで固定消費されるGP
$GP_{sec}$秒間平均GP消費量1秒あたりのGP消費ペース
$GP_{rec}$秒間GP回復力自然回復やアイテム使用を秒間に均した総回復量
$GP_{net}$秒間GP収支最終的な1秒あたりのGP増減(黒字か赤字か)

期待時間と秒間GP収支の算出

「平均サイクル時間 ($c$)」 の算出:

\[c = \sum (p_i \times t_i)\]

「ターゲット1匹を釣るための期待時間 ($E_{time}$)」 の算出:

\[E_{time} = \frac{c}{h}\]

「秒間あたりの平均GP消費量 ($GP_{sec}$)」 の算出:

\[GP_{sec} = \frac{GP_{cost}}{c}\]

「秒間GP収支 ($GP_{net}$)」 の算出:

\[GP_{net} = GP_{rec} - GP_{sec}\]

補足: GP回復力について
$GP_{rec}$(時間あたりのGP回復力)は、プレイヤーの自然回復(3秒ごとに8GP)と、アイテム「ハイコーディアル」使用(180秒ごとに400GP)による回復実績をそれぞれ秒間に均した数値($8/3 + 400/180 = \text{約} 4.88$)を使用しています。


2. L戦略(ルアー戦略)の加重平均による実戦モデル化

実際の釣りにおいて「基本的にルアーを3回使うが、1,2回目で型が確定した場合は待機する」といった方針(L戦略)を定めた場合、その方針の中には事象の発生確率(例えば「2回目で型が確定する確率」など)に応じた複数の「固定シナリオ」が内包されています。

Step 1で行ったのは、そのうちの1つの固定シナリオが起きた場合の純粋な性能評価でした。Step 2では、それら複数の固定シナリオを各発生確率に基づいて加重平均し、ひとまとめにした「L戦略(ルアー戦略)」として包括的に評価します。

L戦略として評価することで、実戦運用時の「平均的なサイクル時間・GP収支・釣り上げ期待値」といった総合的な性能が算出できるようになります。

変数定義

変数意味補足
$P_i$到達確率L戦略内で特定の分岐シナリオに到達する確率
$V_i$評価値そのシナリオが持つ時間やGP収支などの値
$V_L$平均評価値L戦略全体の加重平均された総合的な評価値

L戦略の加重平均

L戦略全体の 「平均評価値 ($V_{L}$)」 は、加重平均により以下のように表されます。

\[V_{L} = \sum (P_i \times V_i)\]

この段階でのゴールは、数あるL戦略の中から 「効率は低いがGPは着実に回復する(GP黒字)」 と、 「効率は高いがGPを激しく消費する(GP赤字)」 という、性質の異なる2つの最適なL戦略の候補を見つけ出すことです。


3. 総合戦略(オプティマイザ)による最適解の導出

強力なL戦略の候補を抽出できたら、最後はそれらを制限時間内でどう配分するかという「総合戦略」の算出です。

「条件の制限時間(例: 7分)」と「実質的な使用可能GP(初期GP+サリャクの恩寵等の回復見込み)」という2つのリソース上限を定めます。

先ほど導出した2戦略の能力を係数として当てはめ、 「用意されたGPリソースを残さず使い切り、かつ制限時間内にぴったり収束する」 という条件で、最適となる実行配分(回数)を算出します。

変数定義

変数意味補足
A, B戦略の種類赤字戦略A と 黒字戦略B
$n_A, n_B$実践回数それぞれの戦略を実行する回数(本計算の解)
$c_A, c_B$平均サイクル時間各戦略の1周あたりの平均時間
$GP_{net,A}, GP_{net,B}$平均GP収支各戦略の1周あたりの平均GP収支
$e_A, e_B$平均釣り上げ期待値各戦略の1周あたりのターゲット釣り上げ期待値
$T$制限時間釣り場等での条件制限時間
$GP_{total}$総GP使用可能な総計算GPリソース
$E_{total}$総合期待値制約内の配分で得られるトータルの釣り上げ期待値

連立方程式による最適配分の算出

制限時間を $T$、使用可能な総GPを $GP_{total}$ としたとき、以下の連立方程式が成り立ちます。

時間制約:

\[n_A \times c_A + n_B \times c_B = T\]

GP制約:

\[n_A \times GP_{net,A} + n_B \times GP_{net,B} = -GP_{total}\]

これを解き、最適な実行回数 $n_A, n_B$ を算出します。

\[n_A = \frac{T \times GP_{net,B} + c_B \times GP_{total}}{det}\] \[n_B = \frac{-c_A \times GP_{total} - T \times GP_{net,A}}{det}\]

これにより、「対象の戦略セットを用いた場合、黒字戦略を◯回、赤字戦略を△回実行できる」という最適な配分が導き出せます。

総合期待値の算出と最適解の決定

連立方程式によって算出された $n_A, n_B$ を用いることで、該当の戦略セットを採用した際の 「トータルの釣り上げ期待値 ($E_{total}$)」 を求めることができます。

「総合期待値 ($E_{total}$)」 の算出:

\[E_{total} = n_A \times e_A + n_B \times e_B\]

これにより、「制限時間と持ち込みGPリソースの範囲内で、ターゲットを何匹釣れる見込みがあるのか」という性能が導き出されます。 強力な赤字・黒字のペア候補に対して計算を行い、 「この $E_{total}$ が最も大きくなる戦略の組み合わせ(とその配分)」 が、該当条件下における「最適解(最適な総合戦略)」となります。


4. 未知の確率への対応

なお、ターゲットヒット確率が不明な魚であっても、確率を「変数 ($p$)」のまま方程式に組み込んで計算比較することで、「どの総合戦略が最も優位か」という論理的な判断を下すことが可能です。

下記は、私が持っているデータを用いて実際に上記の計算を実装したツールで、リッチパースを狙う釣りにおける最適解を導出した例です。

赤字戦略「ルアー使用1回、撒き餌あり」を約15回と、黒字戦略「ルアー使用基本3回、型確定したら待機、撒き餌なし」を約5回が最適解となります。

👉 ツールでのシミュレーション結果(リッチパースの最適解)


5. おわりに

以上の計算を精密に行い、最適な総合戦略を見つけ出すためには、各釣り場での「魚の基本ヒット率」や「型確定発生率」といった正確なデータが必要不可欠です。

こうしたデータ収集は非常に重要になります。今後も多くの漁師の皆さんと協力してデータを提供し合い、より精度の高い最適解を作り上げていければと思います。

This post is licensed under CC BY 4.0 by the author.