Skip to content

第3回人狼知能大会 プロトコル部門の出場エージェントプログラム。

License

Notifications You must be signed in to change notification settings

mcre/aiwolf-3rd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

チームm_cre (プロトコル部門)

第3回人狼知能大会 プロトコル部門の出場エージェントです。

チームm_creについて

社会人の個人参加チームです。(twitter: @m_cre)

仕事ではAzureやAWSでの大規模データ分析システムの開発とか運用をやっています。 趣味ではウェブサービスつくったりしています。

プレイヤーjarファイル

  • McrePlayer.jar
    • クラスは net.mchs_u.mc.aiwolf.dokin.McrePlayer を指定してください。

クラス説明

  • net.mchs_u.mc.aiwolf.dokin.McrePlayer

    • 今回の出場エージェント
  • net.mchs_u.mc.aiwolf.eclair.McrePlayer

    • 作りかけで諦めたエージェント

コンセプト

いわゆる饂飩さん孫です。

人狼知能プレ大会@GAT2017の出場エージェントをベースにしています。 人狼知能プレ大会@GAT2017の出場エージェントについてはhttps://github.com/mcre/aiwolf-gat2017をご覧ください。 そこからの変更点は以下のとおりです。

  • バグ修正

    • 予備予選でぬるぽ発生していた箇所を回避
    • 「狂人が人狼に黒出し・人狼が狂人に黒出し・人狼が人狼に黒出し」での確率調整について、白出しでも同様な調整をするようになっていたバクを修正
  • 占CO ⇒ 村CO を占CO取消として認識するようにした

本エージェントは、自然言語部門出場エージェントの内部でも使用しています。

人狼・狂人推定アルゴリズム

  • GAT2016のチームcashさんのアルゴリズム(下記)をベースにしています。

    • ゲーム開始時に人狼と狂人の可能な組み合わせ(15人の場合5,460通り)を列挙し相対比を1とする
    • ゲーム進行に伴い各パターンの相対比を調整
    • 条件を満たすパターンの相対比の和/全パターンの相対比の和 で確率が計算できるので、「自分目線」「客観目線」「自分が村人と思い込んだ目線」の確率をそれぞれ計算し、それによって行動を決める
  • 調整パターンやパラメータは net.mchs_u.mc.aiwolf.dokin.Estimate を参照してください。

行動方針

  • 人狼

    • COしない
    • 客観目線で人狼らしくない人を襲撃。襲撃対象はWisperで宣言(毎Wisperタイミング計算し対象が変わるたびに宣言し直す) +「自分を村人と思い込んだ目線」で仲間の人狼らしさを0.5倍したときに、最も人狼らしい人に投票。投票対象はTalkで事前宣言(毎Talkタイミング計算し対象が変わるたびに宣言し直す。(以下全ての役職で同様))
      • 再投票は1回目投票で最高票数だった中から1回目と同じ優先度で投票(以下全ての役職で同様)
    • PP可能状態(自分目線で"人狼 + 狂人 > 村人側"と確信できる状態)であれば人狼CO
      • 別の人狼からの投票依頼がなければ、自分目線で一番村人らしい人に投票依頼をする
      • 別の人狼から投票依頼された相手に投票、投票依頼がなければ自分目線で一番村人らしい人に投票
  • 狂人

    • 0日目第一声占い師CO
    • 自分目線で最も人間らしい人を占い黒出し(1日1回3人まで)
    • 「自分を村人と思い込んだ目線」で最も人狼らしい人に投票。投票対象はTalkで事前宣言
    • PP可能状態であれば狂人CO
      • 人狼からの投票依頼にしたがって投票、投票依頼がなければ自分目線で一番村人らしい人に投票
  • 村人

    • 「客観目線」で最も人狼らしい人に投票。投票対象はTalkで事前宣言
  • 占い師

    • 0日目第一声CO
    • 「自分目線」で最も人狼らしい人を占う。ただし占い師COした人は他に対象がいない場合を除き占わない
    • 占い結果があれば朝一で報告
    • ほかは村人と同様
  • 霊能

    • 0日目第一声CO
    • 霊能結果があれば朝一で報告
    • ほかは村人と同様
  • 狩人

    • 「自分目線」で最も人間らしい人を護衛
    • COしない
    • ほかは村人と同様

つくりかけエージェントについて

net.mchs_u.mc.aiwolf.eclair.McrePlayer についてです。 予備予選のログを集計し、「2人占CO、1人霊能CO」の状況での「占COの人の(人狼|狂人|村陣営)確率」などが集計できたので、 推定アルゴリズムのCO認識部分をそれベースの計算に置き換えようとしました。

しかし、決勝エージェント提出に完成が間に合わなかったため、作成途中の状態になっています。

なお、使用したログ集計コードはhttps://github.com/mcre/aiwolf-logreaderに置いてあります。

連絡先

License

  • MIT
    • see LICENSE

About

第3回人狼知能大会 プロトコル部門の出場エージェントプログラム。

Topics

Resources

License

Stars

Watchers

Forks

Languages