2022-01-07

経験から1ヶ月!Pythonで観る将ライフを向上させた話(将棋編)

まとめ

プログラミング経験から1ヶ月ほどで、将棋評価値の新たな方法でのグラフ化を行うPythonツールを作った。

https://github.com/k-the-p/notherscore

この記事は2本立てです。結果のグラフ将棋よりプログラミングに興味がある方はもう一方のプログラムから読むことをおすすめします。

未経験から1ヶ月!Pythonで観る将ライフを向上させた話(プログラム編)

何をしたか評価値に対する思い)

一局全体において、AIの示す第1候補手と第2候補手の評価値の差をグラフ化するツールを作った。

評価値は強力で便利なものだ。それを否定できる人はいないでしょう。しか評価値が絶対に正しいものかといと、それは怪しい。単にAIが今も強くなり続けていることは多かれ少なかれ現在ソフトが間違っていることを意味するし、そこまで極端なことを言わなくても、評価値はそもそもAIのための数字であって、それを人間将棋にどれだけ活かせるのかという問題もある。

こうした考えは、私が振り飛車であるということが影響しているのかもしれない。AI飛車を振った瞬間に、相居飛車戦であれば若干形勢を損ねているぐらいの評価値を出すのだが、いくらなんでもそれはないだろうと思う。そうした思いを抱えている中で、もう一つの記事でも紹介した藤森哲也先生の「AIの一手は最強の一手なんです。確かにプラス1000点になるけど一手間違えた瞬間にマイナス何百点になるような綱渡りの手。それよりもアマチュアの皆さんにはプラス数百点で得は少ないけど安全な道、最善の一手を学んで欲しい」(大意)という言葉や、佐藤天彦先生振り飛車転向以降のインタビューを読むにつけ、「それをAIを使って調べてみると面白いんじゃないか?」と思うようになりました。

なのでプログラミングを覚えるところからやってみた。その辺りはもう片方の記事で詳しく書いたので、以下では分析してわかったことを書いてみます

藤井井上

まずは、1995年に行われた藤井猛六段-井上慶太六段戦(段位はいずれも当時)、有名な藤井システムの第一号局を見ながらグラフ見方確認しましょう(以下全て使用エンジンは水匠4、1手10局面)。

https://imgur.com/a/CdNYiqK

このグラフを見ると、30手ごろから井上六段のグラフが下方向に向かって大きく傾いているのが見て取れます。30手ごろと言えば、まさに桂馬が跳ねて角道を開ける、藤井システムが炸裂した瞬間とも言える場面ですが、評価自体はやや藤井有利程度で、すぐに大きく開いているわけではありません。

しかしこの局面グラフが下に振れているということは、井上六段は「一手間違えると大きく不利になる局面」に連続して立ち向かわなければならなかったということがわかります。結果として井上六段は徐々に不利に陥っていきます

他方の藤井六段のグラフ中央から大きく離れることがなく、一見すると「何を指しても大勢に影響はない」ように見えますが、不安定藤井システムの将棋においてそうした均衡を保つのにこそ超絶的な技量研究必要とされることは言うまでもありません。

力戦派を定式化する

佐藤康光山崎隆之糸谷哲郎はい、今期A級へんt…力戦派三羽烏ですね。「力戦派」の定義って今まで定量的分析されたことが無かったと思うのですが(見れば分かるので)、今回分析してみてそれができそうだな、と思いました。ここで3枚のグラフを見てみましょう。

https://imgur.com/a/37PvzLI

それぞれの共通点があることがわかりましたか? ここでは序中盤に着目してみましょう。どれも評価自体は互角なのに、力戦派の方だけグラフが振れているのがわかるでしょうか。これを言葉で言うと、「相手は何を指してもいいのに序盤から自分だけ綱渡りしながらも互角を保っている人」ということになります

自分で言うのもなんですがこれ、けっこう面白い知見ではないでしょうか。言われてみれば確かにそうだけど、というのが数字で表せるということは、「山崎糸谷佐藤康光みたいな将棋を指すAI」という可能性が決して夢物語ではないことを意味しています。だいたい互角の手の中で、綱渡りの手を選ぶようにすればいいわけですから(上手くいくかは知りませんが)。

最先端居飛車党はどんな戦いをしているか

では、正統派(3人の先生申し訳ありません)の将棋はどんなグラフを描くのだろうか?

https://imgur.com/a/KoeBDEL

1枚目は棋聖戦第2局の藤井渡辺戦ですが、これはある意味でとても典型的藤井四冠のグラフです。自分だけ選択肢が多い状態にしながら、相手だけを間違えたら危ない状態に置く。その後に行われた棋聖戦第3局のグラフ(2枚目)を見ると、渡辺三冠藤井四冠と同じ方針をとって食らいつこうとしているのがわかります。3枚目の王位戦挑戦者決定リーグ戦における藤井豊島戦も、藤井四冠の方だけグラフが落ち着いているのが目に付きます。4枚目の竜王戦第4局豊島藤井戦は、豊島竜王藤井四冠のお株を奪うような指し回しをしていましたが、最終的には崩れてしまった。この指し方はそれだけ難しいということでしょう。

自分だけ選択肢を残しながら相手に難しい必然手を指さざるを得ない状況にさせるということは、藤井四冠からすると相手の反応を予測やすく、相手からすれば最善手を見つけるのみならず藤井四冠の多様なありうる応手を調べなければならないということを意味します。言葉にすれば簡単ですが、これはまさに超絶技巧でしょう。単にAI評価値が右肩上がりになるのを眺めているだけでは分からない、藤井四冠の強さを示すことが出来たと思います

ここではいちいちグラフを示しませんが、振り飛車グラフは、評価値はもちろん若干悪いのですが、中盤で居飛車側のグラフけが振れる傾向にあるように思いました。すなわち、中盤になると振り飛車まったり指せるのに対して、居飛車党は間違えると形勢を損ねやすくなるということです。これが、AI評価しないのに反して、人間同士ではまだまだ振り飛車が有力であるつの理由であると私は思いますし、これは多くの振り飛車党の先生が言っている「評価値は若干悪くてもねじり合いになれば美濃囲いが固くて有利」という見解にも一致します。

データ観る将のすすめ

私は評価値だけを見て悪手だの名局だの言う傾向には嫌気がさしていましたが、今回は自分で作った愛着もともなって、ろくに指し手の意味も考えずに多数の対局をグラフだけ眺めて面白がる、という行為につい耽溺してしまいました。

あなたもぜひ楽しんでみては、というには導入のハードルが高いのですが、きっとここまで読んでくださった方には価値があるのではないかと思うので、暇な方はトライしてみてください。ただ、導入方法についての質問にはお答えできません。これは意地悪でも手抜きでもなくて、単に人に教えられるだけの知識を私が持っていないからです。頑張ってください。

最後

私は現在仕事Twitterフォロワー募集しています

30歳無職よろしくお願いいたします。

https://twitter.com/k_the_p

記事への反応 -
  • まとめ プログラミング未経験から1ヶ月ほどで、将棋の評価値の新たな方法でのグラフ化を行うPythonツールを作った。 https://github.com/k-the-p/notherscore この記事は2本立てです。プログラミン...

    • たぶんもうインターネット芸人になるしかないと思うんですけど、なり方がわかりません。ゆくゆくはHIKAKINさんみたいになりたいなとは思うんですけど、とりあえずは堀元見みたいに絶...

      • @saitamasaitamaや。DM送ったので見たってな。 スペースでもしながら神待ちしようやあ。

      • 俺はつくづく怠惰で無責任な人間であるという認識まではあなた方と共有できるし、それが望ましくないということもわかる。 しかし怠惰で無責任な人間であるが故に修正できないのだ...

        • 何才だろうと、根本的には働かないと生きていけないのでは?

        • ようよう、多分お前が開き直った場合の末路だぜ。 高校中退で一橋入ったけど、出席だるくて6留年して10年通って追い出された30職歴無しだ。。 俺は毎日その日が楽しいから刹那的に生...

          • 失礼かもしれませんが、俺みたいな人間はどこにでもいるんだなと思いました。 引用されていた記事も拝読しました。 俺は機会もしくは正当な理由さえあればいつでも死んでいいなと...

        • 社会へ   拝啓 お久しぶりです、いかがお過ごしでしょうか。 前回に私が社会と直にお会いしたのは、ハローワークでライティングの仕事を10件ほど印刷して、履歴書等々を送るのが面...

        • どうも、30歳無職職歴なし労働意欲なし中卒おじさんです。さっき役場に行って生活保護を申請してきました。2週間以内には何らかの結果が明らかになるはずです。 一般的には申請する...

          • まず、今回の問題に解しては「全ての暴力(とりわけ殺人)は悪である」という言明から始めることが不可能であるのはもはや明らかだということをわれわれは認めなければならない。 ...

          • 生保受けるのはいいけど、FIREじゃないよそれ 無職が無職で居続けるだけ

          • 一橋入れる頭でとる行動がこれか

          • 実際にFIRE出来たのか実証はまだされてないじゃん タイトル詐欺

          • 生活保護ガチャに当たった人。

          • 今は良くても、あんた寿命迎えるまでそれで生きて行けるのか? 90歳まで生きるとするならあと60年だろう。1962年に生活保護受け始めた人が、今日まで乗り切れてるとは思えんけど。 「...

          • 生活保護+親の現金仕送りが強いよ uberで1.5万(経費マシマシ)で実質手取り20万いける デイケア・作業所で若美人な福祉女相手に清純派キャバクラ遊び、スポーツの相手もしてくれる ...

          • 診察券の難易度高いやろ。 あとは自治体や担当による。 もっとカジュアルに失業したら受けれるようにすべき。

          • 普通に生活保護もらえない条件あるじゃん>親の仕送り

            • 口座に振り込まれなければわかりようがないんだから、手渡しにすれば良くね?

          • 生活保護おすすめしててワロタ。 人数増えすぎたらその分支給額減らされたり、生活保護制度自体改定されかねないとかそういう危機意識ないのかな?

          • 中卒にしては賢そう。いろいろ事情があるのかな

        • よく見てみ、増田やはてブでアドバイスしてくれるのはお前と同じ属性のダメ人間やらニートだけだぞ。同じ傷を舐め合いたいだけの人間だけがお前に関心を寄せる。 普通の社会人はお...

        • お前の姿勢なんかどうでもよくて 働かずに生きるために必要なのは金でしかないんだから 方法を聞くなら前提としてお前の資産と親の資産・年齢、兄妹の有無 とかが重要だろ その程度...

          • 全人類の半分は知能が半分より上で、残り半分は知能が半分以下なんだ つまり増田は全人類の半分を敵に回した

        • 納税しないって、他の人の納税によって支えられているという自覚を持ってもらいたい。 インフラの維持だって無料じゃないのよ。

        • 統一教会にでも入れば?広告塔のポストが空いてるはず。

        • 親ガチャSSRなら逆転する必要もないし金稼ぐ必要もないし、親の資産で大家やるとか資産運用するとかでいいじゃん いわゆる高等遊民よ 後ろめたさなんか感じなくていいよ

        • ライターつづけていけばいいのに。…とおもったけど こないだのオモコロのコンテストでトイレットペーパーの芯をものすごい数あつめてて比較検討したあげく撤退したというあまりお...

        • これかなりマジレスするけどさ。 俺もかなりこれに近い状況だったけど、30過ぎてなんとなーく適当な求人に応募して働きだしたら楽しかったぞ。ど田舎薄給だけど、働いて誰かに喜ば...

        • 俺はつくづく怠惰で無責任な人間であるという認識まではあなた方と共有できるし、それが望ましくないということもわかる。 しかし怠惰で無責任な人間であるが故に修正できないの...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん