BBANALY プロ野球データ分析

NPBのデータから、野球に関する議論や迷信を検証していくブログです。

山賊打線にバントは必要か

 

否定される送りバント

少なくとも「得点期待値を上げる(1点でも多くとる)」という目的で試合の戦略を立てるのならば、「送りバントはしない方がいい」という考え方は一般的です。

この考え方はよく得点期待値表を用いて説明されます。そんなことは分かっているという方もいるかとは思いますが、これから書いていく検証のもとになる部分なので、今一度確認しておきます。

out runner Δexp(点)
0 1 -0.125
2 -0.153
12 -0.091
1 1 -0.173
2 -0.333
12 -0.300

送りバント成功時の得点期待値変動

数値は1.02 - Essence of Baseball | DELTA Inc.のものを使用させてもらっています。

 

上の表はあるアウトカウント、ランナーがいる状況で送りバントを成功させたとき、得点期待値がどれだけ変動するのか(Δexp)を示したものです。

見てわかる通り、すべての項目で負の値をとっています。得点期待値表上では,バントをするたびにこの数字の分だけ、取れる得点が少なくなるということになります。

このことから、「平均的でムラのない打線」を考えたときに、「送りバントが得点期待値を下げる」ことが分かります。

 

 

ここからが本題です。上記のような主張に対してこう反論するとします。

「それは平均的な打線での話だ。打てないバッターの後ろにいいバッターがいるといった、前後で大きな能力差がある場合には、送りバントをするべきだ」

上記の表での得点期待値の変動はあくまで平均的な打者から平均的な打者に打順が移っていくことを前提にした数値です。そのため、このような意見が出るのはうなずけます。

そこで今回は、得点期待値表を打者ごとに作成し、そのような状況で送りバントが有効かを検証したいと思います。

具体的には、ヒッティングの場合の得点期待値の変動と、送りバント(成功率は100%とする)時の得点期待値の変動を比較することで,打順の巡り合わせを考慮した上で「送りバントが得点期待値を上げる」場面がないのかを検証します。

 

 検証

というわけで、今回は西武打線2018を使って、この検証を行いました(もうちょっと選手間で成績差のある打線を使うべきかもしれませんが)。

1 秋山
2 源田
3 浅村
4 山川
5
6 外崎
7 栗山
8 中村
9 金子

 

見た感じのイメージでいうと、源田選手や金子選手のところでは送りバントが利益を生むようなシチュエーションがありそうですよね。

 

 

まずは選手ごとの得点期待値表(アウトカウント×ランナー)を作成します。100万試合シミュレータを回して、1番~9番までの得点期待値表を作成しました。なお、一度もバントはしません。

 

秋山   源田
out runner exp out runner exp
0 0 0.698 0 0 0.669
1 1.122 1 1.063
2 1.342 2 1.297

1番秋山と2番源田の得点期待値表の一部

 

ここでは例として、秋山選手と源田選手の得点期待値表の一部を貼りました。例えば、0アウトランナーなしで秋山選手に回ってきたとすると、その攻撃で取ることができる得点の期待値が0.698点ということが分かります。同様の状況を源田選手で考えてみると、期待値は0.669点で、秋山選手の数値より少し小さくなっています。この数字だけでも、「秋山選手から始まる攻撃」の方が「源田選手から始まる攻撃」よりも強力なことが分かります。

また、0アウトランナーなしから秋山選手が何らかの形で出塁し、0アウト1塁になった場合、得点期待値は0.698から1.063まで上昇するということもわかります。このように、従来の得点期待値表では平均的な価値しか計算できなかったものを、選手一人一人について算出することにより、打順の巡りまで考慮した得点期待値の変動を求めることができます。

 

 

では次に、ヒッティングの場合の得点期待値の変動を求めていきます。具体的には以下のような手順を踏みます。

  1. 打撃イベントが起きる確率をシーズン成績から求める。
  2. アウトカウント、ランナー、イベントをもとにして、イベント後のアウトカウントとランナーがどのように遷移するのかを実際のNPBの試合から調べる(なお、野球シミュレータの開発で調査済み。2016~2017のNPB公式戦全試合を対象)
  3. イベント前とイベント後の得点期待値の変化(差)を求める
  4. 全ての打順、アウトカウント、ランナー、イベントとそれによる状態遷移の組み合わせに対して、1~3を実行し、得点期待値の変動の期待値を求める。

長々と書いていますが,この値はどの場合でも0になります.理由を簡単に書きますが,読み飛ばして頂いて構いません.

  • あるアウトカウント,ランナー状況である打者が打席に入っている状況をノードとして定義します.
  • あるノード  A から遷移可能なノードが  N 個あるとするとします.遷移先のノードをそれぞれノード  1,ノード  2,...,ノード  N と呼び,ノード  A からノード  i への遷移確率を  p_i とします.
  • ノード  A における得点期待値を  RE_A ,遷移先のノード  i についても同様に  RE_i とします.

f:id:hihrois_1104o:20200628095023p:plain

モデル

このとき, \sum_{i = 1}^{N}{p_i(RE_i - RE_A)} = 0 を示せればよいことになります.

 \begin{eqnarray} \sum_{i = 1}^{N}{p_i(RE_i - RE_A)} = \sum_{i = 1}^{N}{p_{i}RE_i} -  \sum_{i = 1}^{N}{p_{i}RE_A} =\sum_{i = 1}^{N}{p_{i}RE_i} - RE_A \end{eqnarray}

このとき,期待値の定義から  RE_A = \sum_{i = 1}^{N}{p_{i}RE_i} ですので, \sum_{i = 1}^{N}{p_i(RE_i - RE_A)} = 0 が成り立ちます.

 

 

最後に、送りバント(成功率は100%とする)時の得点期待値の変動を求めていきます。

こちらは先ほど求めた選手別得点期待値表を基にして、バント後の得点期待値からバント前の得点期待値を引けば求められます。なお、0,1アウトで、ランナー1 or 2 or 1・2塁の時を対象にします。

 

 

この2つの数値を計算することで、ヒッティングを選択した時よりも送りバントの方が得点期待値が良い方に転ぶのならば、その場合送りバントを選択した方が取れる得点が上がるということになります。

 

 

結果

最もバントしたときに利益がありそうな、9番金子選手から見ていきます。

金子
out runner ヒッティング バント成功
0 1 0 -0.16
2 0 -0.21
12 0 -0.07
1 1 0 -0.15
2 0 -0.25
12 -0.21

全てのパターンで、ヒッティングの方がバント成功よりも得点期待値を上げる(減少量が少ない)ことが分かりました。

 

次に2番源田選手です。

源田
out runner ヒッティング バント成功
0 1 0 -0.19
2 0 -0.24
12 0 -0.14
1 1 0 -0.20
2 0 -0.32
12 0 -0.29

こちらも全てのパターンで、ヒッティングの方がバント成功よりも得点期待値を上げる(減少量が少ない)ことが分かりました。

 

この2人でも利益が出ないことで察していただきたいのですが、打順(9通り)×アウトカウント(2通り)×ランナー(3通り)の54パターン全てを調べた結果、バント成功の方がヒッティングよりも得点期待値を上げるような状況は1つもありませんでした。

打順の巡りを考慮しても,得点期待値を用いた場合のバントの有効性は微妙なところでしょうか.