RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

Web制作 Meisyo データサイエンス

[Meisyo]育成方針の不均衡を減らすための分析

投稿日:

もともと問題視していた育成方針の選択数の不均衡。
なぜそれが起こるのかというと・・・、

使えない(と思いやすい)育成方針があるってことなんですよね。

詳しく見ていきましょう。

各方針の能力上昇(2019.02.23)
◎=上昇大、○=上昇小、無印=上昇微小

略称 E避
速・肩
投球技術
巧打
長打
走・体
守備
バランス

投手では、投球技術が圧倒的に有利に見えます。
以前の分析で制球(と変化量)が、防御率・WHIPを下げるためにはとても良いという結果が出ていました。
それがどっちも◎です。

そうなれば速・肩とか選ばないですよね。
投手に関係あるのが◎1つって・・・。

その不均衡がどのような状態にあるのかを調査し、
それをどう軽減できるのか方法を考えます。

分析方法

対象:すべての選手。ただし、バランス型を無視。
解析方法:SQLでの抽出 → Excel(ピボットテーブル)での分析

全体


巧打と投球技術が多いですね。
この集計には投手、野手が混ざっているので分けて考えます。

投手


やはり投球技術が圧倒しています。

魅力度(比率)では以下の通り。
投球技術(p):70.16908213
速・肩(sp):15.70048309
走・体(st)14.13043478

野手


巧打が圧倒しています。意外と守備が選ばれていますね。

魅力度(比率)では以下の通り。
巧打(mt):50.61728395
守備(df):20.59483726
長打(pw):16.89113356
走・体(st):8.978675645
速・肩(sp):2.918069585

仮説構築

能力値上昇の◎を2、〇を1、無印を0とした場合、
能力値ごとにそれぞれ異なった重み(判断を上昇させる効果)があるのではないか?
ということを考えました。

ちょっと分かり辛いので噛み砕いて、どうぞ・・・。

投手で言うならば、
データから見て、速球上げるより制球上げたほうが良くね?
という考えを拡大解釈したものです。

速・肩は速球1個しか◎ついてないし、制球◎変化量◎がついてる投球技術選ぶよな!
という判断基準を数値に落とし込む考え方ですね。

ゲームやってる以上負けたい人はいないだろうし、あくまで理性的に行動するだろう、ということを前提にしています。
そのため今回は無選択(バランス型)は抜いています。ノイズになりやすいので。

それを踏まえて重回帰分析を行います。

Excelでの重回帰分析

投手成績を重回帰分析を行いました。

・・・いかん。

なぜダメかというと、
X4(変化量)への相関が0のためです。

つまり、投球技術は制球◎変化量増加なしでも、制球◎変化量◎でも選ばれる率は変わらない。

んーだったら、X2とX4の相関は同等とします。

仮定(偏回帰係数):
 X1:7.85
 X2:17.5
 X3:7.05
 X4:17.5


こんな感じで調整して、と。

野手も調整しました。

こうすればかなりまともになるのでは?と思います。

なぜ調整したのか?

Meisyoは、
「どうすれば勝てるのか?」を考えるゲームです。

どうすれば勝てるのか?は育成から始まります。

育成方針の選択肢が少なければ、まったく選択肢はなくなります。

この調整でどの方向でも進めるし、自分が考えた戦略を実現しやすくなった、ということですね。

では!

-Web制作, Meisyo, データサイエンス

執筆者:


  1. […] 使用ユーザー/全ユーザー)が違うという問題が前からありました。 以前[Meisyo]育成方針の不均衡を減らすための分析で触れた通り、少し調整したあと、データを確認していませんでした。 […]

comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

[Meisyo] 2021年1月末のアップデート内容

はじめに アンケートに回答ありがとうございました。 今回も色々と追加いたしました。 更新内容 前回公式戦優勝チームの模擬戦用NPCの設定 公式戦優勝時に、完全コピーのNPCを作成する。 強いチームに対 …

no image

現代PHPの正しい道「PHP: The Right Way」の紹介とその要約

時代遅れの本や情報があふれている。そのため「何年前のコレ?」というコードが広まっている。 私もまずいコードを書いていた。悪意がある頭のいい人が少し手を加えるだけでデータベースが死んでしまうようなコード …

pythonのnumpyで遊ぶ

異常に奥が深いnumpyで遊びましょう!! import numpy as np 配列の形状変換 a = np.arange(int(np.floor(np.random.rand()*1000))) …

[Meisyo]SQLでバグ発掘

「監督の指導能力が上がらない」という情報が入ったので、 ・バグの修正 ・SQLでバグっているIDの方を検索→チケットプレゼント を行います。 該当能力:  指導能力(体力)  ・・・ちなみに投手以外で …

[Meisyo]ver0.04へのアップデート

Meisyoがバージョン0.04になりました。 バージョンNo.の基準はありません。(1.00(正式リリース)が遠い) 下記機能が0.04で追加されました。 目的としては、「ユーザがゲームを長く楽しめ …