机上だからできる配分
パーティ構築はぶっちゃけまだ何にも考えてません(
というかもう少し汎用性の高いパーティになるように組み直してる最中です。 拘りサンダーとかさ、粘着ユレイドルとかさ、…。 で、その間の記事として、個人的な努力値配分を晒してみます。 いつだったか252、252、4でいいじゃんとか言ってた覚えが( HP、こうげき、ぼうぎょ、とくこう、とくぼう、すばやさの順です。 カビゴン せいかくはしんちょうです。2通りの配分が可能。
|
ミクロ論の具体的パーティ構築法1
一応まだ更新予定(
今までの話で、結局思うのは、「だから何?」なんですよね; 使えない理論を振りかざして、何か救われるものはあるのか。 別に言い出さなくてもよかったのではないか。 というわけで、 ![]() こんなの作ってみました。 数字の意味は、 タイマンで勝てる場合:+1 交代から出して勝てる場合:+2 となっています。 今回のマクロ近似は、 ・ポケモンは全部で25体 ・技は大体固定(例えばスターミーは波乗りリフ再生10万orサイコです。) ・努力値も大体固定 ・評価基準が2種類(流しか潰しか) もちろんこの数値を変化させることができます。 今回、1回だろうが2回だろうが流せるポケモンは全て+2ですが、 これを1回なら+2、2回なら+4、何回でもなら+5、 などと数値を変化させればいいわけです。 あー、ちなみにダメージ計算ツールとかあまり使ってないので、 今回の表の中身は結構適当です; そもそもステータスそのものも曖昧ですし。 次回からこの表を使ってパーティを考えていきます。 忙しいということをあまり理由にしたくないのですが、 忙しいので超すろーぺーす更新になります。すみません。 |
陰でコソコソと5
今回はほとんど自分のことや感想です。ナルちゃんキメェとでも思ってて下さい(
自分が何をしたかったのか 自分が2年前しようとしていたことは何だったのか。 「普通のパーティじゃカッコワルイ!ブラキパとか爆パカッコイイ!」 という中二的発想はあったはずです。だって今でもしっかり中二病ですから; 「ミクロ論を実用レベルまで近似する」 実は知らず知らずのうちにこんなことを研究してたんだぜ、 というのがミクロ論を思いついた時の「2年前しようと思っていたこと」の答えでした。 しかしまあ冷静に考えて、ミクロ論的視点に立ってみると、 全員「ミクロ論を実用レベルまで近似する」ためにパーティを作っているとできるわけです; 「俺ってなんか特別なことをやってたと思ったけど、実はそんなことなかったぜ」ということです。 ただ、役割理論から作られたパーティが、 「相手の持つ大量の行動パターン1つ1つに、解法を持ってこよう」という、 ミクロ論に良いマクロ的近似を用いてその中で問題を解いた答えであるとすれば、 自分の考えていた中二的パーティは、 「自分が〜〜すれば相手は〜〜するしかないじゃん」という、 自分の立場を限定してミクロ論を解いて作られたものであると考えられます。 前者は「マクロ」×「マクロ」で、後者は「固定」×「限定されたミクロ」となります。 どちらが大変かわかりませんが、自分は後者の方が楽だと考えたのでしょう。 これを書いた元々のきっかけ ちなみにこのミクロ論は、 「人間の中の分子の動きが正確に把握できれば、人間の行動パターンがわかるか。」 という話をある講義で聞いたときに、 「それは人間の中の分子数が多すぎるから無理じゃん。けどポケモンはできるでしょ。 数百しかいないポケモンをこれ以上細分化できない所まで分けて、 その最小単位の性質を把握できれば最強のパーティが作れるんじゃねーの?」 というようなことをぼんやり考えたことが発端でした。 そして某所インスパイアでバーニングした、と。 今までこのミクロ論が何を示しているのかさっぱりわからなかった時は、 このことを念頭に置いてもらってもう1回読んでいただけると、 多少はわかりやすくなるんじゃないかな、と思います。 個人的結論と感想 で、最後にこれを言うのかって感じですが、 ミクロレベルでのポケモンの分析というのは、ぶっちゃけ無理です; 例えば相手ががむしゃらを持っていた場合、自分の6体のポケモンそれぞれに対して、 状態異常がない場合は自分がHP○以下なら、もしくは相手がHP△以上なら□%の確率で使い、 自分のHPが・・・、状態異常や天気のサポートがある場合は… というのを全部やらないといけないわけです。しかも自分の場合と相手の場合(→イメージ)を。 これはコンピュータの機能ではできず、全部自分でインプットしないといけません。 出力(結果)を出すための入力(情報)が多すぎるということです。 しかもその入力は毎回打ち込まなければいけません。同じ人同じ状況でも確率は変わるからです。 (例えばその人が3連勝してる時と3連敗してる時では出す技の傾向が変わる。) つまり、「全ランダム」から「パターン的行動」にするというたったそれだけの仕事が、 天文学的数字を持ったタスクになってしまってミクロ的な解析が不可能である、と言えるわけです。 数学的に言うと、未知数が多いけど、その式も多いため、解は出せるけど計算が面倒。 ドラクエ3の最初みたいに、対戦をパソコンに覚えさせ、思考パターンをある程度読みとり、 帰納的に決定する、というのは正確性に欠けますし。 パソコンだろうとスパコンだろうと、入力数は変えられないので、 これを解消しない限り実用化はできないでしょう。 (例えば、この入力をしないで済む方法として、 ゲーム内のCPUの思考パターンが攻撃においてはある程度合理的であることに注目し、 防御の部分を改良して、ある程度対戦において優秀な行動パターンを取らせる方法がありますが、 これは、その改良型CPUの行動パターンが本物の対戦相手の行動パターンと一致するか、 一致しない場合はそれがどの程度違うのか、その違いをどう評価すればいいのか、 という問題があります。) 戦術としては役割理論を深めていった方がいいと思います。 個人的にはそれがわかっただけでも書いた意味がありました。慰めです( ただ、役割理論もいいけどさらに強い戦術の理論があるのでは、と考えたときに、 このミクロ論がスタートになるんじゃないかなぁと思います。 ミクロ論の最小単位はこれ以上細分化できず、またそのままでは実用的ではないので、 ミクロ論をどのように近似して実用的にするかが新理論誕生のカギとなる気がします。 [終] とりあえず今は推敲する気力がないので、書き終わった度にそのままアップしています; いつか見直した時に間違ってたらその都度修正しよう。 疲れたけどなんか充実。自分の考えを言葉に表現する苦悩と快感。 |
陰でコソコソと4
前回、パーティの最小単位を定義し、その総数を求めました。
ミクロ論そのものはこれで終わりでいいと思います。 最小単位を決めることで、その総数が導かれ、その範囲で「あらゆるパーティ」が作られるので、 これを2個目の記事に従って演算装置に入力すれば、最強のパーティが完成します。 では今回以降は何をするのか。 現時点ではミクロ論はあまりにも抽象的で受け入れにくいと思います。 しかし、個人的にはこの理論パネェと思ってるので、ぜひ他の人にこの理論を見てもらい、 どのように感じたのか、理論に不整合な点はないかなどを聞いてみたいわけです。妄言じゃないよ(( そこで、この理論をもう少しわかりやすくするために、 このミクロ論が既存の理論や考えとどのように関わっているのか考えてみたいと思います。 補足2 役割理論についての個人的解釈を書きます。 役割理論の定義とかそこまで詳しくないため、他の人と意見がずれるかもしれないからです。 まだ今回何も始まってないのに補足とかアレですが、タイミングがここしかなかったので; で、自分は、役割理論は「ポケモンに役割を与える理論」だと思っています。 受けやら潰しやらは沢山ある役割の中で特に有用なものを名詞化しただけです。 GBAの役割理論ならポケモンに「流し」という役割が有用になったので、「流し」が生まれました。 DSでは特に「役割理論に従わないパーティ」と呼ばれるパーティもありますが、 遅いor速い×倒すor守るの4大要素でしたっけ? 現在の役割理論はこの「遅い」の部分が重要ではなくなっていると考えればいいと思います。 ミクロ論と役割理論 ミクロ論と役割理論の関係を考えますと、 ミクロ論⊃役割理論 だと思われます。 パーティの最小単位には、役割理論的なステータスの作り方が全て含まれているからです。 ここで勘違いしないで欲しいのは、ミクロ論の方が優れているわけではない、ということです。 今まで見てきた通り、ミクロ論には「実用的ではない」という致命的な欠点があるからです。 では具体的にはこの2つの理論はどのようにつながっているのでしょうか。 ・受けと最適解の違い 確定5発などに合わせて受けを作ることで攻撃面のステータスを減らすということが、 本当に一番高い勝率を出力するのか、という問題です。 例えば、受けの具体的なラインとして、確定5発(受けの方が遅い時)というのがラインになりますが、 威力100のわざで最大100ダメージという単純な場合で考えてみると、 威力乱数が100のときは4回で400、威力乱数が85のときは5回で425とそこまで違いがありません。 ここで、例えば威力乱数が95だったときに4回耐える381というHPは受けの定義は満たしていません。 しかし300という、3回耐えるラインは超えており、眠りっぱなしで急所なしなら倒されません。 5発というのは、「ねむる→ねむり→ねむり→行動→ねむる」というサイクルが可能だということです。 乱数4発ならば、このサイクルの「行動」の部分がいつかは来るので、 (実際には最低威力85を3回受けた後に最高威力100を耐えられる以上の耐久の乱数4発が望ましい) HP381は、HP401と比べて、受けとしての機能はそこまで落ちてないわけです。 つまり、 85×3+100+1=356 より、HP356〜401の間に、勝率が一番高いHPが存在する時、 それがHP401であるとは言い切れないわけなんですね。 HP401というのはその分だけ他のステータスを下げているわけですから。 で、HP401が最適解ではない場合、その答えはどれも役割理論上は不完全なものになります。 それなのに、そのHPのときの勝率が最も高くなるわけです。 もう1つの受けのラインである確定4発(受けの方が速い時)の方ではどうか。 この場合は乱数3発にはしてはいけません。 3発で倒される可能性がある以上、乱数3発は勝率が低いと計算結果に出ると予想されます。 まきびしなど、どこかで何かダメージを受けること(まきびし等)を考えないとすると、 確定4発が乱数4発になるまではいくら振っても勝率は上がらず、 むしろ攻撃力が落ちている以上、勝率は下がっていくと思われるので、 確定4発のラインが最適解となり、受けと最適解が一致します。 つまり、確定数が少ない事象では、最適解と役割理論とのズレは少なく、 確定数が多くなるにつれて、最適解は役割理論に従わなくなります。 ・受け以外の耐久の指標について 例えばカビゴンのぼうぎょをメタグロスのコメットパンチ確定3発に調整するというのは、 カビゴンはメタグロスの受けではないので、役割理論の受けでは意味のないことになります。 ただ、メタグロスをカビ受けとして見ると、のろい1回で確定4発にできるため、 メタグロスが受けにくいカビゴンを作るという点で意味のあることと言えます。 ただこれは、特定の2体のポケモンという、局所的な部分なので、 全体的に見てこのぼうぎょへの振り方がどれだけの意味を持つのかわかりません。 しかし、ここでミクロ論においてこの事象を見ると、 ぼうぎょを確定3発が有用なのかどうなのかが、勝率の違いで明確にわかります。 ・役割理論の欠点 役割理論の欠点はスタンダロンな面があることだと思っています。 (例:スイクンに地面受けさせるけど電気は他にやらせればいいからノータッチ) つまり、ポケモンの組み合わせ方の細かな分析をカバーできません。 ヘラクロスに合う地面受けがミロカロスなのかスイクンなのかが簡単にはわかりません。 というわけで理論的に考えずに経験的に考えて組み合わせている場合が多いように思います。 一方、ミクロ論ではその点をカバーできる、というよりは、 組み合わせの良し悪しが勝率という数値としてわかります。 このように役割理論よりもミクロ論の方が優れているぜ、というスタンスで書きましたが、 これはあくまでミクロ論が実用的であればの話です; 個人的にはこのミクロ論を考えたときに、役割理論はミクロ論を近似したものだと思いました。 耐久面で確定数が少ない場合は良い近似で、確定数が増えると近似できなくなる。 確定数が少なくなると1発1発のダメージが増えて、戦術的に不安定になると思われるので、 確定数が少ない方を正確に近似している辺りが、役割理論が汎用的だと言われる所以でしょう。 マクロ的な視点による衝突 1個目の記事に「ポケモンにおけるミクロマクロ論」と書いてあるのに、 今までポケモンにおけるマクロを1回も触れてこなかったので、そろそろ触れます。 まず、ポケモンにおけるマクロを次のように定義します。 ポケモンにおけるマクロ == 最小単位をミクロ論が使えないぐらい大まかに近似したもの 例えば、ポケモンの種類(386)で分割して考える場合はマクロ的視点です。 「ミロカロスはメタグロス受け」や「ハガネールは電気封じ」などがそれになります。 他にもタイプ(17)で分割する、物理と特殊(2)で分割するなどが考えられます。 これは議論を単純化できるという利点がありますが、 ミクロ論ほどの近似ができないので、勝率の信用性が著しく低くなります。 例えば17タイプだけで勝率を求めると、 明らかにはがねタイプばかりのパーティの勝率が高くなってしまうでしょう。 で、掲示板などで議論する際、このマクロ的近似が問題になると思います。 1つのポケモンについて議論する時(育成論など)、もしミクロな視点から考えるとすると、 そのポケモンの全ての最小単位(前回の記号を使えばS/P(n))に言及する必要があります。 これがどれだけ大きい数字かは前回の分を読んでいただけるかわかると思います。 掲示板のレス数が1000だとしても全然足りません。スレPart1600000(( そのうえその最小単位と他のポケモンの最小単位全てとの関係も考えないといけません。 つまり、ミクロレベルの近似で議論するのは難しいので、どこかでマクロ的近似を行います。 このマクロ的近似が人によって違うため、議論が延々と続いてしまうと思っています。 例えば、「○○には××を覚えさせ△△対策とするのが良い」というのは、 その人が△△の技は基本的に〜〜だ、○○の努力値は〜〜だ、 などのいくつかのマクロ的近似を行った結果出た結論なので、 同様のマクロ的近似をしていなければこの結論は出てきません。だから反論します。 しかし、その反論の論点として重要なのは、あくまで「この近似が妥当」であるかどうかであり、 「それでは□□に勝てない」(△△との差、□□担当を外すことの損失などが言及されない)とか、 「パーティによって違うんだから人それぞれだ」とかはミクロ的視点を全く無視してるんですね。 ただ、合理的なマクロ的近似を追求したとしても、全員が同じ結論にたどりつくのかはわかりません。 これはポケモンの掲示板において、議論を円滑に進められない原因となると思います。 では、あるマクロ的近似をしたとして、 それが良い近似であるかどうかをどうやって見分ければいいのでしょうか。 現時点で普遍的な方法は思いつきませんでしたが、 マクロ的近似によって消された最小単位がどの程度他に影響を及ぼしていたのか調べると、 ある程度妥当かどうかが見えてくるのではないかと思います。 例えば「おだやかメタグロス」について考えてみましょう。 おそらくマクロ的近似で多くの人が消すと思います。自分も消します。 では、おだやかメタグロスは何ができたかを考えてみますと、 炎技を持たないエスパー、ゴーストを狩ることができます。 おいうち、コメットパンチ、だいばくはつ、じこあんじor何か 辺りでしょうか。 一応威力80の悪技で耐久無振りゲンガー、フーディンを確定2発。 コメットパンチでも同様に確定2発なので、炎技を持たない場合はタイマンでも強いです。 たしかにゴーストや岩に強い爆発ポケモンは重要なので、差別化はできているわけです。 しかし、おいうちポケモンが炎技に対応できないのは致命的であり、 そのうえカビゴンの受けも流しもできず、水には結局同じ様に受けられるので、 差別化ができていても、パーティに入れて高い勝率を出すのは難しいでしょう。 以上のことより、自分は、おだやかメタグロスはマクロ的には無しとします。 なんか書いてておだやかメタグロスも使えるんじゃないかと思い始めたので終了します(( 今回のまとめ 今回の重要なことは、次の3点です。 ・役割理論はミクロ論を実用的レベルまで近似したものである。 ・議論するためにマクロ的近似は必要だが、障害にもなる。 ・マクロ的近似の評価方法を誰か教えて下さい。いや、ホント。マジで。 1つ目は書いているうちに出てきた結論で、演算装置を作ってないですが、正しいと思います。 ミクロ論の中に役割理論的な動きは全部入ってるので、 「近似した」という表現が正しいかどうかを考えるだけでいいからです。 一応次で終了する予定です。 |
陰でコソコソと3
これから、ポケモンのパーティをミクロの視点から考えていきます。
これは、前回の抽象的な考えをもう少し具体的に捉えるためです。 用語の解説 ミクロについて。 相互作用しない粒子(最小単位)の集まりをミクロ系と言います。 最小単位を考えれば、全体の動きが把握できるか。 例えば、人間の最小単位は分子ですが、 ではその分子の構成と運動を把握することができたら、 その人がどのような行動をするのか完全にわかるかどうか。 「肩の部分の酸素分子が2cm移動したからこの人は右に曲がる。」 というような素っ頓狂な考えも、ない話ではないかもしれません。 ただ、マクロ的な作用が働かないことが条件です。 マクロについて。 莫大な数が集まって相互作用しているのをマクロ系を言います。 熱力学などでよく使われていて、例えば、水を温める場合を考えてみますと、 水分子(最小単位)が熱エネルギーを受け取って、全体が温まるとは考えず、 水(最小単位の集まり)が熱エネルギーを受け取って、水が温まると考えます。 本来ミクロレベルで考えないといけないことが、マクロレベルで考えられるパターンです。 最小単位の定義 で、ミクロ的な話をするために、パーティの最小単位を定義します。 パーティの最小単位 == 特定のポケモンの特定のわざ構成 つまり、努力値個体値性格とくせい持ち物などが全てが決まっているポケモンで、例えば、 ハガネール (個体値全て31) じしん いわなだれ ほえる だいばくはつ @オボンのみ HP252 こうげき236 すばやさ20 いじっぱり このような、パーティ鑑定などでよく見られるものです。 例えばこのハガネールのHPの努力値を8減らしてこうげきに8入れるだけで違うものです。 そしてこの定義された最小単位を用いパーティ構築を考えていくことを、 「ミクロ論」と呼びたいと思います。あくまで便宜上ですが。 最小単位の総数の求め方 パーティの最小単位がわかったので、その総数も導くことができます。 S = P(n) × A(n) × T(n) × M(n) × W(n) S:パーティの最小単位の総数 P:ポケモン A:ステータス T:とくせい M:もちもの W:わざ構成 (n):左についている条件の数 各項目の具体的な説明をします。 Pはポケモンの種類を示し、例えば赤緑なら、 P(n)=151 です。 Aはステータスの種類です。エメラルドでは、A(n) = 64C6 × 25 × 32^6 − X です。 64C6は努力値を効率よく全部振った場合の数、25はせいかくの種類、32^6は個体値の場合の数です。 で、努力値の振り分けや個体値が違っても同じステータスになる場合もあるので、 それをXで引くことにします。Xはポケモンによって値が変動します。 Tはとくせいが2種類ある場合は、 T(n)=2 で、それ以外は、 T(n)=1 です。 Mはもちものの種類で、持たせる意味のあるものを数えると、 M(n)=66 です。たぶん; ちなみにこれは同じもちものを持たせられない場合を考えてませんし、 ふといほねなど持たせても意味のない場合があるものもカウントしています。 Wはポケモンによって変わります。例えばバタフリーは45種類の技を覚えるので、 W(n) = 45C4 + 45C3 + 45C2 + 45C1 となります。 後ろの3つの項は覚えているわざを3つ以下にしたものですが、一応入れておきます。 また、ポケモンによっては遺伝わざでできない組み合わせなどもあります。 計算方法の近似の妥当性 このSの値を近似せずに求めてみてもいいのですが、面倒です。 ポケモンに依存しないA(n)の最初の項ですら、 64C6×25×32^6 = 2012577866239180800(201京2577兆8662億3918万800) です。また、努力値は200しか振らない場合などは考えてませんし、 もちものはあなぬけのヒモなどの意味のないものは除外しています。 つまり、すでにいくつかの近似はしてしまっているわけです。 そもそも本当に近似をしてしまってもいいのか。結論から言うといいと思います。 例えばニャース、プリン、ピィ、コダック、キャタピー、ピチューというパーティを考えますと、 どう見ても、拘りメタグロスとかに6タテされます(( ある程度強いパーティは、このパーティに対しての勝率はほぼ100なので、 このパーティを考慮しない場合、その分だけ全体の勝率は落ちますが、 ある程度強いパーティ同士の強弱関係は大きく変化しないということになり、 勝率の数値は変動するものの、他との大小関係は変化しない、ということが言えます。 というわけで、P全体からこれらを引いても結果は大きくずれないでしょう。 ※これが、チルタリス、カイロス、ヌオー、ジュゴン、オクタン、ルージュラ辺りになると、 微妙なラインで考えから省いていいのか難しくなるのですが; どういうことかと言いますと、今年のセ・リーグを見てみます。 1 巨人 84勝57敗3分 対横浜戦成績18勝5敗1分 2 阪神 82勝59敗3分 対横浜戦成績13勝10敗1分 3 中日 71勝68敗5分 対横浜戦成績17勝7敗0分 4 広島 69勝70敗5分 対横浜戦成績13勝11敗0分 で、今年6位だった横浜を同様に考慮せずに考えますと、 1 阪神 69勝49敗2分 2 巨人 66勝52敗2分 3 広島 56勝59敗5分 4 中日 54勝61敗5分 となり、順位がごろっと入れ替わります。 今年の横浜は弱い弱い言われてましたが、それを除くと結果が変わるわけです。 つまり、ある程度弱いパーティも考慮に入れなければならないのです。 ただ、対戦界がある程度成熟し、ある程度弱いパーティを誰も使わないとなった場合、 そのパーティと戦う確率を低く設定し、新しい最強パーティを作る必要が出てきますが。 総数の計算 とりあえずかなり大雑把に計算してSを求めてみます。 P(n) = 150 誰もダンバルとか使いませんし。 A(n) = 50×18×2^6 = 57600 努力値の振り分け方は252ずつ振る方法で2つのステータスの選び方が15種類、 後はメタ的な振り方を加えて50にしました。 せいかくは変動なしの5種類とパルシェンにせっかちはないだろうなどの2種類を引いた18、 個体値は50レベルのため、実質16種類まで減らせます。今回はAll28越えの廃人仕様(( また、個体数の少なさから、最遅仕様は考慮しないことにします。 T(n) = 1.2 スターミーなどは実質1つですし、平均するとまあこれぐらいかなぁ、と。 M(n) = 30 もくたんなどを1つに、回復系を1つにまとめるとこれぐらいかなぁ、と。 W(n) = 50 ポケモンによって変わりますが、平均的なわざ構成の数はこれぐらいかなぁ、と。 サポート1つ取ってもどくどくかでんじはかで2倍になりますし。 ということで計算。 S = 150×57600×1.2×30×50 = 15552000000(155憶5200万) 世界人口の倍程度で済みました(( ただこれは個体値における部分が大きいです。 個体値を計算しない場合、2億4300万まで減らすことができます。 したがって、これ以降は S=2億4300万 で話を進めていきます。 個体値によるステータスの違いはせいかくを含めてもせいぜい3なので、 ステータスが100ぐらいなら3%です。威力の乱数でカバーできるからというのと、 個体値だけが違ってあとは全部同じポケモンは2^6=64種類いるのですが、 その64種類は役割理論においてはほぼ同質と見ていい場合が多いからという理由があります。 (同質でないとき:ステータスの1の違いが確定4発と乱数3発を分ける場合←詳しくは次回) 補足1 前回の、 あらゆるパーティ == ミクロ論における、最小単位から6体を選んでできるもの全て この定義をここでもう1回見てみますと、あらゆるパーティとは、 「2億4300万から前提(ポケモンの被りなしとか)に従って6体を選んでできるもの全て」 で、その総数は、Pから6体選ぶ場合の数にA(n)とT(n)とW(n)を6回ずつかけて、 さらにもちものの選び方30P6をかければいいんでしょうか。ちょっとでかくね?(( 1.52×10^47だそうです。ここでも全部いわポケモンである場合を除くなどの近似が必要ですね。 今回のまとめ ちなみに今回の記事の大部分は特に意味はありません; 重要なのは、次の2点です。 ・パーティの最小単位を定義することで、その総数を求めることができる。 ・この最小単位でパーティを構築する理論を「ミクロ論」と呼ぶ。 最初だけですね; 計算好き理系の暴走でした; |
陰でコソコソと2
言い訳をもう1つ((
自分の脳みそはまだ専門に入る前の大学生のレベルなので、 ミクロマクロや統計に対する理解が曖昧だったりします; あくまで、「ポケモンにおける」ミクロマクロです。 ただ、この視点から考えていくと、自分が2年前に何をしようとしていたがよくわかる気がします。 つまり、やっぱり自分本位。大学で手に入れた新しい知識を見せびらかしたい意図が存在する。 対戦の前提 ポケモンのミクロマクロ論に入る前に自分のポケモンバトルの前提を示します。 基本ルールはGBA世代に対応し、 お互いが50レベルのポケモンを6体用意し、 見せ合った後に3体選出し対戦します。 選出したポケモンを相手に教える必要は無いです。 ポケモン、もちものは被ってはいけません。 まだDS持ってないよ!(( ただ、この後に出てくるGBAまでの話をDSに展開すればいいです。 例えば、「とくせい」の欄に新しいとくせいを追加する、など。 まあ、そう考えても理論に支障が出ないほど抽象的だということです; そもそも伝説ポケの制限についても書く必要ないし。 導入―対戦で勝つために まず、導入として、このような場合を考えてみましょう。 自分と相手の6体のポケモンの、 わざ、もちもの、ステータスなどの全てがお互いにわかっていて、 最初の3体選出や、対戦中のわざ4種類+交代2体の6通りの選択などの、 対戦時のプレーヤーの行動が全てランダムに行われたとする。 この時、自分の勝率が計算できるでしょうか。 もちろん自分の勝率を100%から引けば相手の勝率もわかります。 で、結論から言えば可能です。自分が勝つパターン数を全体のパターン数で割ればいいでしょう。 ちなみに、計算できると言っても、 なみのり(1/6)→威力の乱数で96%(1/16)→相手は交代しない(4/6)→急所に当たらない(15/16) など、1ターンで相当のパターンが考えられるので、あくまで演算装置を用いた場合の話です。 ということは、どの行動をすれば勝率が高いかも必然的にわかるので、 相手がランダムである場合の勝利への最適解が導かれるわけです。 本当の対戦では、相手のわざやもちものはわかりませんし、行動もランダムではないです。 誰もミロカロス相手にサイドンを突っ込ませないですよね; そこで、上の計算にこれらの配分を組み込みます。 全ランダムの場合はこのパーティのこのポケモンはこのわざ構成の時が一番勝率が高かったので、 相手がこのわざ構成を使う確率を高く見積もろう、とか、 この場合にこの行動をする確率は30%、あの行動は20%、… というような感じです。 そしてその確率配分で相手の行動が決められたとき、 その中で最も自分の勝率が上がる戦い方をすればいいわけです。 つまり、この場合においては、自分と相手の最初の6体の相性と、 相手の行動の確率配分の正確性が勝敗を決めることになります。 勝つためにしなければならないタスクが、対戦に勝つことから、 相手の性格や構成を正確に把握すること、に変換されたということです。 ちなみにこの勝率の計算方法のイメージ→こちら 最強のパーティの作り方 プレーヤーの行動が全てランダムであるという前提で、あらゆるパーティと対戦を行い、 その勝率の平均が最も高くなるように作ったパーティは、「全ランダム時の最強のパーティ」です。 人の行動は人それぞれですから、ランダムでない時の「普遍的な最強のパーティ」は作れません。 少し言い方が正確ではないです。正確には「作れるとは言えません」。 つまり、勝つという目的による共通の行動がいくつかある以上、その傾向を組み込めば、 「ある程度強いパーティ」は作れると思います。でもそれが「普遍的」かどうかはわかりません。 (パソコンを使った演算方法とか全然詳しくないのでアレですが、 プレーヤーにバトルフロンティアのCPUのパターンを組み込んだ場合の「最強のパーティ」が、 実際どのくらいのものなのか、計算はできるはずなので、一回計算してみたいです。 でもプログラマーには絶対になりたくない;) 「最強のパーティなど存在しない。そのアンチの方が強いから。」 という説がありますが、ここではこれをもう少し深く考えてみます。 今までの理論で、相手の行動の確率配分が正確にできれば最適解が出せることがわかりました。 ということは、全体の数が限定される場合(例えば100人総当たり戦など)、 100人のパーティとその100種の行動パターンを正確に把握できれば、 その場合における最強のパーティは作ることができるでしょう。 そのオフ会は優勝です。(正確にはそのオフ会で優勝できる可能性が一番高い人は貴方です。) ただし、相手のパーティを知る頃には自分のパーティを変更できないので、 対戦前の100人についての情報の収集、ウソの情報を流す(スイクン使うよ、とか)などの、 情報戦を対戦前にしなければいけません。 (よく最速ガラガラ辺りのすばやさ設定でいろいろと話していたことなども、 オフ前の情報戦という側面を持っていると思います。) しかし、その最強のパーティを使うわけではなく、 最強パーティを知っててそれを使う人、最強パーティを知らずにそれを使う人、 最強パーティを知っててそれを使わない人、最強パーティを知らずにそれを使わない人 の数の期待値という4種類のおおまかな分布から、 最強パーティを知っててそれを使わずそのアンチパーティを使う人、 最強パーティを知っててそれを使わずそれとそのアンチパーティに強いパーティを使う人 などの数の期待値などの細かい分布までを設定し、 その分布においての最強のパーティを作る必要があります。 今回のまとめ とりあえずこの導入で言いたいことは、 ・あらゆるパーティに対しての対戦を想定することで、正確な勝率が出せる。 ・全員のパーティ、行動パターンがわかった上での最適な行動パーティ、行動パターンは存在する。 ・全員のパーティ、行動パターンが不明確な場合、それをどれだけ正しく予想できるかが勝率を決定する。 ということです。特に2つ目が重要です。 今回の理論では「あらゆるパーティ」が明確に定義されてないですが、 「ミクロ論における、最小単位から6体を選んでできるもの全て」と定義します。 詳しくは次回に。 |



