5

私たちのオフィスでは、仕事の後、定期的にフーズボールやテーブル サッカーを楽しんでいます。私は、利用可能なプレイヤーからランダムな 2vs2 ラインナップを生成し、その後、試合結果をデータベースに保存する小さな Java プログラムをまとめました。

結果の現在の予測では、関係する 4 人のプレーヤーからの以前のすべての試合結果の単純平均が使用されます。これは非常に大まかな見積もりになりますが、次のようなことを考慮して、より洗練されたものに置き換えたいと思います。

  • プレーヤーは、アタッカーとしてプレーするのは得意でも、ディフェンダーとしてプレーするのは苦手かもしれません (またはその逆)
  • プレーヤーは特定の対戦相手に対してうまくいく/他の対戦相手に対しては悪い
  • うまく連携できるチームもあれば、うまくいかないチームもある
  • スキルは時間とともに変化する

ゲームの結果をできるだけ正確に予測するための最適なアルゴリズムは何ですか?

誰かがこれにニューラル ネットワークを使用することを提案しましたが、これは非常に興味深いように思えます... しかし、私はこのトピックについて十分な知識がなく、それが機能するかどうかを判断できません。

編集:
いくつかのプロジェクトの締め切りのために、これから長い休憩を取る必要がありました. 質問をより具体的にするには:

これまでに行われたすべての試合を含む次の mysql テーブルがあるとします。

table match_result

match_id      int pk
match_start   datetime
duration      int (match length in seconds)
blue_defense  int fk to table player
blue_attack   int fk to table player
red_defense   int fk to table player
red_attack    int fk to table player
score_blue    int
score_red     int

関数 predictResult(blueDef, blueAtk, redDef, redAtk) {...}
をどのように記述して、SQL を実行したり、計算を行ったり、外部ライブラリを使用したりして、結果をできるだけ正確に推定しますか?

4

5 に答える 5

2

ニューラルネットを使用する理由 統計を使用してください。おそらく、各プレーヤー間の相関関係が適切な尺度になるでしょう。

于 2008-11-04T13:30:59.977 に答える
1

始めに、いくつかの情報を収集しましょう: 特定のプレーヤーについて、次のものが必要です。

  1. 彼らがプレーしたポジション
  2. 最終スコア

優れた攻撃者はポイントを獲得します。優れたディフェンダーは、ポイントが獲得されるのを防ぎます。

本当の情報は、優れた防御者と対戦する優れた攻撃者から得られます。

于 2008-11-04T13:34:05.323 に答える
0

1つのオプションは、ある種の線形モデルとしてポイントスプレッドを推測することです。プレーヤーよりも多くのゲームがある場合は、すべてのゲームと結果のゲームマトリックス(一方のチームのプレーヤーの場合は+1、もう一方のチームの場合は-1、観客の場合は0)を作成することで、プレーヤーあたりのポイントの最小二乗適合を行うことができます。スプレッドのベクトル。

于 2009-01-28T07:17:04.933 に答える
0

単純ベイズ分類器を適用してみてください。

ベイジアン学習は、関心のある量が確率分布によって支配され、観測されたデータと共にこれらの確率について推論することによって最適な決定を行うことができるという仮定に基づく確率論的アプローチです。[Mitchell, T. (1997)、機械学習]

プレーヤーの分布がまったく同じであっても、試合結果が異なる場合があります。データにパターン (変数に基づくパターン) がある場合、単純ベイズ分類器は良い結果を生成する可能性があります。

アルゴリズムはそれほど複雑ではありません。確率の知識があれば、それを理解して適用できると思います。

侵入検知システムでは、さまざまなネットワーク パラメータを調べて、ネットワークの異常を判断するために使用されています。ベイジアン アプローチは、特定の種類のデータで非常に成功し、高い TP と低い FP レートを生成する場合があります。ただし、データによっては、FP 率が高くなる場合もあります。あなたのデータが最善のアプローチを決定します。

Weka ( http://www.cs.waikato.ac.nz/~ml/weka/ ) というデータ マイニング ソフトウェア ライブラリを使用して、さまざまなアルゴリズムを試すことができます。単純ベイズ分類器が含まれています。ただ試してみてください。

于 2008-11-07T21:53:29.010 に答える