qshinoの日記

Powershell関係と徒然なこと

ウマ娘、解析

ウマ娘解析

目次

  1. 基本式
  2. 数値例
  3. 補正ステータス
  4. 速度
  5. 加速度
  6. 体力
  7. 考察

基本式

速度、加速度、燃費、体力の基本式を示す。

スパート目標速度vts

vts = 2.05gd√(cs) + vb(0.01+1.05(kuv+cr)) 

cs スピード係数= 補正スピードhs/500
gd 距離適性
kuv 脚質速度補正
cr 賢さランダム補正
vb レース基準速度

ポジションムーブ時目標速度

ポジションキープ時目標速度

基礎目標速度vt

vt = gd √(cs)+vb(kuv+cr)

脚質速度補正kuv

脚質、序盤, 中盤, 終盤/スパート
逃げ、1.000, 0.98, 0.962 
先行、0.978, 0.991, 0.975 
差し、0.938, 0.998, 0.994 
追込、0.931, 1.000, 1.000

レース基準速度vb(m/s)

vb = 22 - rl/1000

rl レース距離(m)

体力en

en = rl + 0.8 he x kue

he 補正スタミナ
kue 脚質体力補正

脚質体力補正kue

逃げ0.95, 先行0.89,差し1.0, 追込0.995。

燃費pc, power comsumption

1秒あたりの消費体力を燃費pcとする。

燃費pc = 20 fve x kfe x khe x fspt

fve 体力速度補正 = ( v - vb + 12 )^2/144
kfe  馬場状態体力補正
khe ウマ状態補正
fspt スパート補正= 1/3/√(ck)
ck 根性係数 = 補正根性hk/600

加速度a

加速度a=0.3√(cp) x kua x gf

cp=補正パワー/500
kua 脚質加速度補正
gf 馬場適性

スキル発動率

スキル毎判定に判定されるスキル発動率

スキル発動率 = max(1-90/賢さ, 0.2)

スキル発動率グラフ

f:id:qshino:20210512015710j:plain

掛かり率

掛かり率 = (6.5/log(0.1x賢さ+1))^2 [%]

グラフ

f:id:qshino:20210512014951j:plain

数値例

スパート補正fspt

補正根性、スパート補正fspt
100, 1.82
200, 1.58
300, 1.47
400, 1.41
600, 1.33
1200, 1.24

スキル発動率

補正賢さ、発動率
100, 0.2
200, 0.55
300, 0.7
400, 0.78
600, 0.85
1200, 0.925

考察

スパート時の加速度の影響

ステータスについて

スピードss→hs →基礎目標速度に影響
スタミナse→he →体力に影響
パワー  sp→hp →加速度に影響
根性   sk→hk →スパート燃費、体力切れ速度に影響
賢さ   sj→hj →速度の賢さランダム項、スキル発動率、掛かり率に影響。ヘルプや公式サイトによると、位置取りや下り坂の燃費に影響するらしい。

s?は生ステータス
h?は補正ステータス

適性について

馬場適性gf →加速度aに影響
距離適性gd →速度vに影響
脚質適性gu →補正賢さhjに影響

f field, 馬場
d distance, 距離
u utility, 脚質

補正ステータス

補正スピード
hs = ss x km x kvs + kfs + fst

補正賢さ
hj = sj x km x gu        + fst

補正パワー
hp = sp x km       + kfp + fst

補正その他
ho = so x km       + kfo + fst

補正スピードhs
補正賢さhj
補正パワーhp
補正その他ho

スピードステータスss
賢さステータスsj
パワーsp
その他ステータスso

やる気km
基本速度補正kvs

馬場状態速度補正kfs
馬場状態パワー補正kfp
馬場状態その他補正 kfo (kfoの値は不明)


脚質適性gu

ステ補正fst=スキル補正+育成モード補正

補正スピード=スピードxやる気x基本速度補正+馬場状態速度補正+育成モード補正+スキル補正

元リンク記事では馬場状態速度補正は乗算xだが、補正値が-50等であり、乗算では違和感がある。よって加算の+とする。

補正賢さ=賢さxやる気x脚質適性+育成モード補正+スキル補正

脚質適性gu

S +2%, A 0, B-5%,...,G-30%

補正その他=ステータスxやる気補正+馬場状態補正+育成モード補正+スキル補正

やる気km, mood

絶好調1.1, 好調1.05, 普通1, 不調0.98, 絶不調0.95

基本速度補正kvs

0-299, 0, 300-599, 0.05, 600-899, 0.1, 900-999, 0.15, 1000-, 0.2

馬場状態補正kf?

スピードkfs、良0,稍重0, 重0,  不良-50
パワー  kfp、良0,稍重-50,重-50,不良-50

速度

現在速度vcで走っている時、目標速度vtがvcと異なる場合、加速度aにより目標速度vtに向けて加速する。

初期速度は0m/s。レース開始後、スタート反応時間Ts後、目標速度vtに向け加速する。スタート後1秒間の加速度は24m/s、その後は加速度a。スタート反応時間は0から1秒の間のランダム。集中力やコンセントレーション・スキルでは、スタート反応時間Tsがそれぞれ0.9倍, 0.4倍。出遅れは Ts>=0.8秒。集中力スキルがあっても出遅れの可能性がある。

目標速度vtにはポジションキープ時vtkeep、ポジションムーブ時vtmove、スパート時vtsの3種がある。また、各目標速度算出の中間値として、基礎目標速度vtbがある。

レース距離rlから決まるレース基準速度vbがあり、基礎目標速度vtb算出等に使われる。

基礎目標速度vtb

a)スピード, b)賢さ, c)ランダム値, d)レース基準速度vb等により決まる。

基礎目標速度vtb = (500x補正スピードhs )^0.5x距離適正gd x 0.002+レース基準速度vb x (脚質速度補正kuv+賢さランダム補正cr)

vtb = gd √(cs) + vb (kuv+cr)

cs=補正スピードhs/500

賢さが速度に影響を与える。

2000mレース基準速度vb=20m/s、その他補正1、賢さランダム補正cr=0の場合、基礎目標速度vtbは

補正スピード、基礎目標速度vtb
100→20.5m/s
500→21.0m/s
1200→21.5m/s

補正スピードによる差は100と1200で約1m/s。1馬身を2.5mとすると、1m/s差なら2.5秒で1馬身差がゼロになる。

最後の200mを20m/sで走れば10秒。1m/s差で10秒走れば10m(=4馬身)縮まる。最後の200mで4馬身差=2.5m x 4=10m差なら、補正スピード1200の馬が補正スピード100の馬に追いつく。補正スピードが500と1200の場合、速度差が0.5m/s。2馬身差なら追いつく。

なお、ここでは加速度やスパートを考慮していない。

  • 脚質速度補正kuv

各脚質毎に序盤、中盤、終盤、スパートの4フェーズに分けて定義される。ただし、終盤とスパート時の補正値が同じ為、スパート時を割愛。

逃げ、1.000, 0.980, 0.962
先行、0.978, 0.991, 0.975
差し、0.938, 0.998, 0.994
追込、0.931, 1.000, 1.000
  • 賢さランダム補正cr

下限、上限からランダムに決まる。

下限=上限-0.65[%]
上限=補正賢さ/5500 x log(補正賢さx0.1) [%]

補正賢さhj=0, 100, 550, 1200の場合、

(下限、上限)
(-0.65%, 0%)
(-0.632%, 0.018%)
(-0.480%, 0.17%)
(-0.196%, 0.454%)

※ 参考資料の下限は上限-0.65だが、桁が合わない。0.65%であれば桁が合うため、%忘れと推測。下限も%表記とし、元資料のx0.01を%に変換。

なお、下記リンクによると賢さ100の時、上限=0.018。0.018%を示していれば計算が合う。

https://note.com/pepepe204/n/nd0b16a9e2dd4

参考

https://umamusume.gamewiki.jp/%E8%84%9A%E8%B3%AA%E3%80%81%E9%A6%AC%E5%A0%B4%E3%80%81%E8%B7%9D%E9%9B%A2%E3%81%AE%E9%81%A9%E6%80%A7%E8%A3%9C%E6%AD%A3%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6/

通常時の目標速度vt

ポジションキープ中はポジションキープ補正、ポジションムーブ中はポジションムーブ補正と基礎目標速度から算出される。

  • ポジションキープ中vtkeep
目標速度vtkeep = 基礎目標速度vtb x ポジションキープ補正kkeep+坂補正kslope

ポジションキープ補正kkeep

スピードup 1.04, 追い抜き1.05, ペースダウン0.915, ペースup1.04

  • ポジションムーブ中vtmove
目標速度vtmove = 基礎目標速度vtb + ポジションムーブ補正kmove+坂補正kslope

ポジションムーブ補正kmove

抜け出し0.01, 移動0.01, 追いかけ0.03, その他0.1

坂補正kslope

登り坂、|100 tan(角度)|x200/補正パワー

下り坂、|100 tan(角度)|/10+0.3

スパート時の目標速度vts

基礎目標速度vtb、レース基準速度vb、補正スピードhs等により決まる。

スパート目標速度vts = 1.05x基礎目標速度+0.01xレース基準速度+((500x補正スピード)^0.5)x距離適性補正x0.002

vts 
= 1.05vt + 0.01vb + gd √(cs) x gd
= 1.05(gd√(cs) + vb(kuv+cr)) + gd √(s) + 0.01vb
= 2.05 gd √(cs) + vb (0.01 + 1.05(kuv+cr))

基礎目標速度vt  = gd √(cs) + vb (kuv + cr)

cs=補正スピードhs/500

レース基準速度vb

レース距離により一意に決まる。2000mの時20。100m毎に0.1変化する。短距離の場合は速く、長距離は遅くなる。計算式は

レース基準速度vb = 22-距離km

距離kmは、kmで表した距離。2000なら、2kmであり2。

加速度

加速度aは、

加速度a=(補正パワーx500)^0.5x脚質補正x馬場適性補正x0.0006

補正パワーhp=500cpとすると、

加速度a=0.3√(cp) x 脚質加速度補正kua x 馬場適性gf
  • 脚質加速度補正

各脚質毎に序盤、中盤、終盤、スパートの4フェーズに分けて定義される。ただし、現状、終盤とスパート時の補正値が同じ為、下記ではスパート時を割愛。

逃げ、1.000,1.000,0.996
先行、0.985,1.000,0.996
差し、0.975,1.000,1.000
追込、0.945,1.000,0.997
  • 馬場適性gf

S1.05, A1, B0.9, C0.8, D0.7, E0.5, F0.3, G0.1

加速度例1,脚質加速度補正kua=1,馬場適性gf=1の場合の加速度

補正パワーhp、加速度a(m/s2)
100,0.13
200,0.19
300,0.23
400,0.27
500,0.30
600,0.33
800,0.38
1200, 0.46

補足

補正パワーhp=500の時、加速度a=0.3m/s2。その他補正1の場合。

3.3秒で1m/s上がる。速度20m/sなら1m/s上げる迄に約70mの距離が必要。

体力、スタミナ、根性

体力はレース距離とスタミナ値他により決まる。消費体力は馬場、馬の速度、状態、根性値により決まる。根性値はスパート時のみ使用され、根性値が高い程消費体力が少なくなる。

体力値

体力=レース距離rl + 補正スタミナhe x0.8x脚質体力補正kue

以後補正スタミナの項を補正スタミナ項と呼ぶ。

  • 脚質体力補正kue

逃げ0.95, 先行0.89,差し1.0, 追込0.995。

消費体力pc

馬はレース基準速度だと1秒20の体力を消費する。レース基準速度より早いと速度差分の二乗に比例した消費量となる。スパート時は更に体力を消費するが、根性値が高いと消費量が抑えられる。

1秒消費体力=燃費pc
=20 x 体力速度補正fve x 馬場状態補正kfe x うま状態補正khe x スパート補正fspt
  • 体力速度補正fve
体力速度補正fve=(現在速度-レース基準速度+12)^2/144

上記の式、現在速度がレース基準速度より遅くても体力消費が増える式だが正しい?

  • 馬場状態補正kfe
良、稍重、1.00
重馬場、芝1.02, ダート1.01
不良、1.02
  • うま状態補正khe
通常1, 掛かり1.6, ポジションキープ0.6, ペースダウン0.6, 下り0.4。
  • スパート補正fspt

非スパート時、1

スパート時、

スパート補正fspt = 1+200/(600xhk)^0.5
= 1+1/3/√(ck)

補正根性hk
ck=hk/600

各レース距離のレコードタイム参考値は、

1200, 70秒弱、2000,120秒弱、2400,150秒弱、3000,190秒弱。消費体力は、それぞれ約1400, 2400,3000, 3800。レース距離を引くと、200, 400, 600, 800。

マイルを追加し整理。

距離m 参考タイム,秒 参考スタミナ キープ時
1200 70 +200 120
1600 95 +300 180
2000 120 +400 240
2400 150 +600 360
3000 190 +800 480
3200 205 +900 540

上記表から計算したレース平均速度vmと、レース基準速度vb, 体力切れ速度vnを比較する。

2000m

平均速度vm、16.7m/s
基準速度vb、20m/s
体力切れvn、17m/s + 根性項

平均速度vmが体力切れ速度vnより遅い理由が不明。

参考スタミナは燃費を20とした時に必要な補正スタミナ項。キープは、補正スタミナ項消費期間をポジションキープ状態とした場合の必要補正スタミナ項。計算式は参考スタミナx0.6。

上記はスパート用体力を考慮していない。

さて、菊花賞3000を考える。菊花賞の時期にスタミナ800は難しい。ポジションキープを取り混ぜ480も簡単ではない。それでもスパートできない。

3000mを190秒とすると所要体力は3800. 距離の半分がポジションキープだと、体力消費は1900x0.6+1900=3040。体力にはレース距離3000が加算される為、スタミナが40あれば足りる。スパートなし、レース距離半分ポジションキープであればスタミナが持つ。

なお、スタミナが切れた場合の速度vnは、補正根性をhk、レース基準速度をvbとすると、

vn=0.85 vb +0.001√(200hk)
=0.85 vb + 0.01√(2hk)

補正根性hk=200、レース距離3000m, レース基準速度vb=19m/sとし、vnをvn(hk, vb)と表現すると、

vn(200,19) =0.85vb+0.01√(2hk) =0.85x19+0.01√(2x200) =16.35

レース基準速度vb=19に対し86%の速度であり勝負にならない。

レース基準速度vb

2000m=20m/s, 100m毎に±0.1m/s。短いとプラス、長いとマイナス。3000mだと、20m/s - 0.1x(3000-2000)/100=19m/s

vb=22-rl/1000

スキル発動率

スキル単位で判定

スキル発動率 = max(1 - 90 / 賢さ値, 20)

twitterから

スパート時の加速度の影響

作成予定

参考

https://note.com/earman178/n/n19a8dc5c1b32