horoyoisawaのゴミ箱

いろいろ書きます

梅原大吾『勝負論』メモ

プロゲーマー梅原大吾の本『勝負論』のメモ。自分が面白いと思ったこと、意外に思ったことなどをメモしていく。

ニュートラルな、先入観のない状態をどこまで保てるか。それが、高みに上がるための絶対的な強さになることを、まずは覚えていて欲しい。 

 先入観がない状態って本当に難しいと思う。ある分野に精通するにしたがって、その分野について「知った様な」気になる。そしてバイアスがどんどん強くなっていって決まったことしかできない様になる。常に「初心者のつもりで」考え始めることが大切か。

しかし、知識の蓄積の段階に入ってくると、僕の勝率は大きく改善し、あまり負けなくなる。 

 新しいゲームが導入される時には、梅原さんは最初大抵若い人たちには勝てないそうだ。「若い人には瞬発力があるから」と梅原さんは言う。その次の文章が上。長い間格闘ゲームをやってきた梅原さんには圧倒的な基礎があり、その基礎を新しいゲームに対して応用するのに時間がかかると言える。

自分を振り返って見てみると、瞬発力も基礎も何もないのでまずはそれを付けなきゃいけない。瞬発力はおそらく才能の要素がかなり強いので基礎の方を大事にしていきたい。

「個性」について。

即座に個性をはっきしようと考えるのは、絶対にしてはいけない勘違いだ。好きだから、才能があるからと言って、すぐに自分にしかできないことが発揮できるほど、勝負の世界は甘くはない。 

 この言葉は肝に命じたい。この前の章で「体験として理解すること」と「知識として理解すること」の違いについて書いてあったが、僕もまだ梅原さんの言葉を知識としてしか受け入れられていない。これが体験として、経験として理解できる様になれば嬉しい。

セオリーを知識として理解するのではなく、体験として理解する、もっと具体的に言えばセオリーを疑って疑ってそしてセオリーがセオリーであることを理解することを表した図が結構わかりやすかったので紹介。

f:id:horoyoisawa:20200320094259p:plain

セオリーの習得について

僕が言う「基礎固め」とか、「基礎をしっかり作ろう」とは、現象としては疑問をもちながら極めて地味な作業を繰り返すことだ。この段階では、まだ個性は出しようがない。なぜこの基礎は大切なのか、なぜこうなっているのかを考えながら習得していくプロセスになる。 

競技プログラミングなら「キーストロークを確認する」「ライブラリ整備」「一度解いた問題を見直して、もう一度考えてみる」そう言ったところかもしれない。

そしてこう続く。

キーワードは、分解と反復である。しっかりと学ぶと決めた以上は、面倒でも一度は全てばらさなければならない。

 分解と反復。

大切なのは「自分は何ができないから結果が足せないのか?」と言う考え方である。 

 一つのコンテストの中で具体的にどの問題ができなかったのか、どの問題に時間がかかったのかを明かにすることがここでいう分解と言える。さらに一つの問題の中でもたくさんの部分に分解して分析していく。そして自分ができていなかった部分が発覚したらその点を徹底的に反復して体が覚える様にする。

数学なら証明を1行1行、数式単位で分解する。そして自分が理解していない部分を明らかにする。そしてその部分を書くでもいいし、なんでそうなるのかをいろんな具体例を挙げてみて考えるのでもいい。

僕の場合は、「無意識にできる様になったらクリア」と言うことになる。 

 何も考えなくてもできる様になる。そこまでどれくらいの時間が必要になるのだろうか。

分解後の大切なポイントは3つあると梅原さんは指摘する。

「正確さ」「速さ」、そして「なるべく少ない力で行うこと」だ。この3つ全てが、一定のレベル以上に達した段階で初めて、技術精度が向上したと見なすことができる。

もう競技プログラミングと一致するところが大変多い。全競技プログラマにこの本を読んで欲しい。

そして次は最適な負荷の設定方法について。梅原さんはこう言っている。

僕の考える、ちょうどいい負荷の設定条件とは、「意識すればできるが、意識しないとできないこと」と言った表現になる。

 意識すればできるが、意識しないとできないこと。競技プログラミングの問題で例えるなら、僕にとってのナップザック問題で、なかなか意識しないと書くことができない。あとはインデックスの感覚だ。インデックスは0から始まるので(1からではない)、自分の感覚とたまに合わなくなり慎重に確認する作業をすることがある。インデックスを瞬時に判断できる様になれば。。

それから失敗の話に進む。

 失敗から学べる最大の要素は、繰り返す述べているが、表向きの勝負に100%勝つことは絶対にできないことだ。

 梅原さんだからこそこの様な言葉が出てくるのかもしれない。凡人にとって100%勝つことがないなんて常識中の常識なのではないか。昔から勝つことが多かった梅原さんにとって、この発見は大きいものだったのかもしれない。凄すぎる。

そのあと梅原さんは道草の重要性を強調する。

ところが、その場ではゴミに過ぎなかった思考が、後からどうかするとゴミ同士が繋がって新しい知識になったりするから面白い。
道草を好きなだけ食った方が、遊びの幅は増えるし、思考の幅も広がる。誰も見向きもしていないものに価値を発見し、更地から新しいもとを組み立てれる様になる。後になればなるほど、その差は決定的になる。 

 これは数学書を読む人にはとても共感できる内容なのではないか。数学書では得てしてたくさんの定理が紹介されている。道草ばかりを食っている人は中々前に読み進めない。「こんな場合はどうなんだろう」とか「この定理はこの場面で使うことができるのだろうか」とか「この定理とこの定理を使うとこんなことが示せるのではないか」などといろいろ考える。そうすると結局1日で進めたのが数行なんて始末になる。梅原さんが言っているのは「物理的にはあまり進んでいない様に見えるかもしれないが、後半の方の伸び率と言う観点からみると道草は大変有効だ」ということだ。

今度は多くに人にとって耳が痛い内容であろう「わかったふり」についてだ。

そして、最も陥りやすい罠は、本当はわかっていないのにわかったふりをすること。そして容量がいいかの様に振る舞う癖だ。
ただ容量がいいだけの人は、後から僕の様な人間に追い越されてしまうが、要領のいい振りだけをしている人と言うのは、おそらく最悪の状態にあると言える。 

 梅原さんに最悪の状態と言わしめる「知ったかぶり」の状態。長期的な観点から自分の成長を最も阻害するものだと言う。数学でも重要な証明の1行を知ったかぶりするだけでその後の道筋が全くわからなくなる。下手なプライドを守るために、その後の自分の成長をなくす様なことはやめた方がいい。

再び「遊び」の重要性を別の観点から強調する。

観衆が感動する様な、興奮する様なプレーは、「遊び」からしか生まれない。僕の生きているゲームの世界には、「遊び」は欠かせないものだと思う。誰だってすでに知っている様な「完璧さ」「完成度の高さ」を見せつけられても、実際はただ退屈なだけだからだ。観客はプレーヤーの人間的な成長も物語の一面としてみているし、成長のためには「遊び」が必要不可欠なだぶつきである。 

 人に見せる上でも「遊び」は重要だ。本人が楽しそうにプレイしていないと観客もその「遊び」に乗っかれないだろう。自ら楽しんで観客を巻き込むプレーヤーが真のプロプレイヤーかもしれない。

そして競技プログラミングにも遊びの側面はつきものだ。毎年クリスマスに開催されるXmas Contest。これはLyricallyさんやSnukeさんが遊びの一環として開催しているコンテストだ。彼らの競技プログラミングの強さもこの「遊び」の側面が強いのかもしれない。加えて筑波大学駒場のパソコン研究部が主宰するコンテストもその一例だ。

「誰にでも見える知識や情報は隠さない」と言う章で梅原さんは情報を積極的にオープンにすることについて言及する。

一度たどり着いた結論、得た知識でも、やがて他人に発見され、陳腐化していく。誰にでも見える知識や情報はその程度のものでしかなく、時間が立場価値を失う。絶対的な強さにはなり得ないのだ。 

僕自身、「こんないいアルゴリズムがあったよ」とか「こんなすごい証明方法があったよ」とか「こんな解放があるよ」とか発表できる様になれば嬉しい。今はほとんど初心者なので誰もが知っている様なことしか書けないが。

次に個性的になろうとすることの危険性について書いている。

個性は、こうした知識の積み重ねから出てくるものだ。しかし、今の僕は、自分が個性的であろうとは特に考えていない。
むしろ、個性は出そうと思って出るものではなく、「個性的でありたい」と考えることはかえって危険であるとも言える。
僕が個性的に見えるのだとしたら、自分の専門分野である格闘ゲームにおいて、何が正しいかを追求するのが楽しく、そこで妥協をしていないからこそ、セオリーを疑いながら基礎を身につけ、そのあとは様々な遊びを経ながら思考しているからだ。

エンジニアの方でも個性的であろうとする人が多いと思う。「この言語を使っている」「このエディタを使っている」とか。パソコンにシールを貼っているアレとかまさに個性的であろうとする典型だと思う。別に悪いとは言わないが、少なくとも僕はしていない。

本論とは外れるかもしれないが、梅原さんが麻雀をしている時期に教えを受けた人であるH市の発言が非常にかっこいいと言うか至言溢れていると思ったのでここで紹介させて欲しい。

「要するに梅ちゃんは、真剣に麻雀に取り組みたいと言うことだね。それは、麻雀打ちになると言うことだよ。麻雀が強い奴には2種類いる。一つは麻雀打ち、もう一つはバクチ打ちだ。バクチ打ちは、麻雀の専門的な知識はあまりないけれど、とにかく強いよ。本当の、一流のバクチ打ちと戦うと、こっちが何をされているのかわからないままやられる。そのくらい強いのと戦うんだよ。でもね梅ちゃん、これだけは覚えておかなくちゃいけない」
「最後に勝つのは、麻雀打ちだよ」

 一生自分の心に留めておきたい言葉である。

梅原さんは「深い思考」と言う言葉をよく使われるが、その持続方法について言及している。

勝ち続けるためには、思考を深める必要がる。ではどうすれば持続的に思考を深めることができるのだろうか。その答えは、ジムで身体を鍛える様なものだと思う。あまり難しく考えないで欲しい。思考の強さ、意志の強さ、そうしたものは全て全て、筋肉を鍛える様な感覚で鍛えることができる。

僕は個人的にボディビルディングを見るが好きなのだが、彼らの筋肉を鍛えることに対する執着はある意味で異常だ。筋トレ食事睡眠・筋トレ食事睡眠・筋トレ食事睡眠を永遠と繰り返す。そしてコンテストに合わせて圧倒的な減量をして、最高のコンディションで爆発的な筋肉を披露する。アーノルドクラシックに出場する様なボディビルダーの方は本当にすごいし尊敬する。彼らも梅原さんの様に「深い思考」を持続して体を綿密にコンスタントに鍛えているのだろう。とにかくボディビルの方はすごい。 

さらに続ける。

ここで大切になるのは、深い思考が できているか、成長しているか判別するのはあくまで自分の「内的な評価」であって、決して外的な評価に依存してはいけない、ということだ。そうでなければ楽しさがなくなり、持続することが辛くなってしまう。

 時に失敗し、時として成功することがある。そうした時に外的な評価ばかりに踊らされていると、本当に自分の成長にとって必要なものが何なのかわからなくなる。そのためにも自分で自分を評価できる様に物差しを常に持っておくのはいいことだろう。言い方を変えるのならば「人と比べない」ということだ。

次章は僕にとってかなり意外な内容だった。内容は「目標の弊害」について。

言うなれば、目標の設定は「ドーピング」に近い効果を生んでしまうのだ。ゲーマーが、何らかの大会で一定の成績をあげることを目標に設定したとする。そのレベルを調べ、そこで勝てる様頑張る。
この場合、目標には日時がある。何ヶ月後の何月何日に大会があるから、そこに向けて頑張る、という形をとることになる。直前に慣ればなるほど無理をしがちになる。

「ドーピング」と言われると何となくしっくりくる。 所謂「燃え尽き症候群」である。目標達成後、目標を持っていた時ほどのパフォーマンスを出すことができなくなることだ。目標を続けて立て続けること、もしくは目標というよりもっと大きい夢を抱き続けることが対処法になると思う。「勝って兜の緒を締める」と言ってもいい。

梅原さんは「目標の危険性」についてこう書いている。

僕が考えている成長の持続は、あくまで一定のペースであることがベストだ。何があろうと揺るがず、常に一定のペースで持続することを大切にしている。というのは、一時期過度に頑張ると、その反動で穴埋めするどころか、帰ってあとでサボる分の悪影響の方が大きいのだ。ドーピングの副作用の様なものだと思う。力を人為的に出しているからだ。

目標達成後の反動まで考えるのは、梅原さんが世界一というかなりスケールが大きいところで戦っているからかもしれない。

成長の持続が大切だと梅原さんは書いている。しかし成長を認識することすらプロのレベルになると難しくなるという。

勝ち続けるとは成長し続けることであって、それは達成感のためにある。だから自分が成長しているという実感を持つことは、幸福感に直接つながっている。ところが、勝負のレベルが上がってくればくるほど、その認識が難しくなってしまうのだ。

 競技プログラミングでのプロはレッドコーダーと言えるかもしれない。彼らのレベルになってくるとレートの上下はほとんどない。だからこそ始めた頃ほどの成長の実感は得られないかもしれない。

そこで成長を実感するために、小さな変化に気づくことが大切だと梅原さんは書いている。

僕は、自分自身が成長し続けることと同時に、成長し続けている事実を自分で把握することも大切な能力だと考えている。特に、レベルが上がってくれば来るほど重要度が増す。同じレベルかそれ以上のライバルにしかわからないし、彼らは普通励ましてくれたりはしない。だから自分でしっかりモニターをすることが大切になる。

そのために大切なのは、実は普段から小さな変化を見逃さない様にする観察力。そしてそれを記録にとどめることだ。 

 大きな変化には誰にでも気づくことができる。しかし小さな変化はよく観察してみたいと見えてこない。しかし大きな変化がある前には必ず小さな変化がある。小さな変化の堆積物として大きな変化が眼に見える様になる。小さな変化に気付けるかどうかがプロとそれ以外を分つものなのかもしれない。

内側の変化を常に見過ごさない梅原さんは自己観察力ないし人間観察力が人一倍あるのだろう。

 

第5章ではメンタルを維持する方法論が書いてあったが、この本を読む以前から知っていることが多かった印象なので、ここで終わり。

感想

全ての競技プログラマに読んで欲しいと思う。「自分が成長するために何が必要になってくるのか」「どうすれば勝ち続けれるのか」それらがよく分かる。競技プログラミングも言って仕舞えば「ゲーム」でその点で共感できる部分は多々ある。成長を臨む人間にお勧めする本だ。