MUGENメモ ( フォント環境:MS ゴシック 標準 サイズ10 )   AIにおける対人システム論 by ADI 7:22 2009/09/15 書き始め・眠い 8:15 2009/09/15寝る。 20:43 2009/09/15 基本終わり。 9:04 2009/09/25 最後尾追記 10:57 2009/10/24 最後尾追記。 18:04 2009/10/29 ついきん 19:25 2010/04/28 典型的な例 20:16 2010/05/10 うーん。 01:53 2010/06/28 僅かな隙  「人は経験によって学習し、理解する。」 ■対人の意味 Anti-Player  ここにおける対人とは「人が戦えるよう考慮された」ではなく、   「人に対して効果的な動作の考慮された」という意味である。  ただし、これらは人に対してだけでなく、   AIに対しても有効的である場合もあるが、   それはあくまで「AIを制作するのは人」だからに過ぎない。  もちろん、ここで書かれているものを実行できるキャラは限定される。  出来ない場合は「対人」では強くなりにくいキャラとも言える為、   「対人」を考慮せず、そのキャラの「最善」を考慮すべきだろう。  「対人」はあくまで「対人」であり、AIの「最善」ではない。 ■理解という能力  例えば、1・2・3 1・2・3 1・2・と来た場合、   その言語を知っている人間は、大抵即座に3と答えることができる。  1・2・3のパターンを覚え、それの繰り返しだと理解できるのだ。  これはゲームにおいても同様であり、CPUの動作が   「1・2・3 1・2・3」というパターンであれば、   容易にそのパターンを覚え、対応することができる。  それが対人として優れているかと言えば、致命的な欠陥とすら言える。  単純なパターンであれば、例え差や相性が大きくとも、   致命的でさえなければ、人は対処できてしまう。  それが人間の大きな強みであり、武器である。  ゲームとして、そうしたパターンの分かりやすい行動は、   とても「読みやすく」そして「騙しやすい」という、   対人にあってはならないものである。  だが、1・3・2 2・2・1 3・2・とこられた場合、人は迷う。  2が多く、1と3が少ないからそのどちらかか、   区切り方を代えて、13222・132に2であるのか。  残念ながら、無作為に打たれた数字であり、   そこに規則性が無い以上、正確な予測は不可能。  そして、それが対人の原則であり、   そこに予測困難な4を入れるのも対人の一種になる。  もちろん、それは4を入れることの可能なキャラに限定されてしまうが。 ■n択の内包  反応の種類が択一であることは、対人として欠陥を有していると語った。  よって用いるべきは、n択による反応の変化。   勿論、択一攻撃に限らず、防御においても重要な要素である。  まず多用な状況の予想できる条件、単純で広範囲に及ぶ条件は避けるべきで、   細密な条件による区分のなされた反応群である方が、読み辛く細かい対応が可能。  それが出来ても、出来なくとも乱数によって複数の反応を入れるべきである。  例えば対攻撃の反応において、ガード一本はガード崩しの餌食。  最短攻撃での暴れ、無敵技での拒否、移動を行っての回避など、   最も堅実な行動がガードであったとしても、それだけでは分かりやすすぎる。  攻撃動作で言っても、近接での攻撃、接近する攻撃、遠距離の攻撃と、   距離によって分類があろうとも、それぞれが1つ2つでは分かりやすすぎる。  弱パンチか小パンか、小足か弱キックか、投げか必殺技か、あえての待ちか、   ダッシュ攻撃か飛び込み攻撃か、突進攻撃かあるいはフェイントか、   牽制射撃か待機か接近か、複数種類の動作を与えること。  リサーバルや起き攻めも同様なことが言えるだろう。  もちろん、格闘ゲームの基本のなっていないような動作は避けるべきだが、   基本から逸脱さえしなければ、n択は単純な判断を許さないものとなる。  不確定性はCPUが人間を騙し得る唯一の手段だからだ。 ■緩急  また常に攻撃し続けるといった傾向は、それを必要とする場合以外避けるべきだ。  それはつまり「常に攻撃をしてくる」という1択になる、  勿論、近接は攻撃し合うことが第一になるが、   問題となるのは中距離から、特に遠距離の動作、牽制射撃など。  行動可能から寸分たがわない接近は、落ち着きを与えはしないだろうが、   それ自体がテンポを作り、反対に対応しやすくなりかねない。  「常に来る」よりも「いつか来る」状態の方が、迎撃はしにくいのだから。  また同様の理由で射撃も、トリカゴができないようであれば連打は禁物。   特に牽制射撃はたまに打つからこそ、意味を持つ。  言いかえれば「タイミングのn択」である。  だが、例外はある。タッグ戦、複数人数での戦闘。  対人という意味は薄いが、この場合、待ちはあまり必要ない、   と言うより、待ちでチャンスを逃す、見殺しにする可能性が発生する。  それを判別した場合、待ちは厳禁とすら言え、   射撃の連打すらも効果的な攻撃方法となりえる。 ■パターン  そうしたn択がいくつもある場合、もう一つの手段が生まれる。  早めの時間に「一時的に特定の1択へ限定する」という手段。  ただし、これはパターン化の癖を持つ相手に限定されるが。  パターン化する為、長い間そのままになるのは好ましいとは言えない。  だが、「常に同じ1択」という認識を与えられれば、   「常に違うn択」がより効果的になる、という期待ができる。  1・2・3 1・2・3 1・2・ときて3以外を与えるように、   人間の理解という認識を、騙すのである。  その為には相応数の選択肢が無ければいけないが、   「対人」の窮みは「人を欺く」ところにある。  もちろん、「対人」と「最善」は異なる為、バランスは必要だが。 ■プレイヤー殺し  プレイヤーは相手を視認で確認する。  よって視認が困難な攻撃は、プレイヤー殺しの攻撃となる。  多少効率の悪い技であっても、「対応が困難な技」は効果的である。  もちろん、乱用すればそのイメージをつかみ易くなる為、逆効果になるが。  主に格闘ゲームの技として知られるような   めくり・すかし投げ・すかし下段・択一攻撃・低空中段など。    攻撃技で無くとも、瞬間移動などもそれにあたる。  透明化が可能なキャラクターなども、そうだろう。 ■ただし。  こういくつも方法を書いていったが、あくまで「対人」の要素である。  AIとして、ゲームとして、有効な手段であるかは別とも言える。  格闘ゲームの基本を逸脱するような方法は、弱くなるだけである。  あくまで基本、応用といった範疇での「対人」でなければ、   基本、応用だけで対応が可能なこともありうる。  策は、基礎があってこそ活きる。  特に「タイミングのn択」の要素は、対AIを考慮すると邪魔になる。  なぜならば、そのフレーム毎に的確な判断の可能なAIに対して、   「いつくるか」という要素はただの遅さに過ぎない。  それが対人型と、対AI型の差と言われるものかもしれない。 追記■AIの人らしさ  1.まず人間は、毎フレームの反応なんて不可能なので、相手の様子をうかがう。    >動作ばかりでなく、静止状態を作る。    >動作・反応に遅延処理をかける。     >「擬似プレイヤー疲労値」みたいなもので動作を制限するなどもあり。     >コマンド的に難しい動作なども控える。(ダッシュ直後に超必殺技など)  2.人間は、同じ失敗を短時間に繰り返すことはしようとしない。    >失敗の簡易記憶を行う。    >簡易学習もあり。     >二、三度失敗した場合、その行動を控えるようにする。  あとは、対人と同じことです。  対人的な動作と言うのは、人対人でも使われますから。 追記■典型的な例  例えば空中の中段はAIの場合ほぼ確実にガードできるが、   手操作の場合あまりにも素早いと反応しきることができない。  対AI戦において低空中段は対空攻撃を考慮すると使いづらく、   Anti-Playerに傾倒しているものであると言える。 追記■わずかな隙  またAIは1Fでも条件がそろえば確実に行動をさせることも可能ですが、   プレイヤーの場合は1Fを狙って行動することはまず不可能です。  その為、「固め」において相手の動作可能なフレームが極めて少ない場合、   プレイヤーだと対応が困難ですが、AIなら容易に返すことも可能です。