読者です 読者をやめる 読者になる 読者になる

mgudn's

髷であり曲げでもある。

【将棋】 電王戦出場ソフトに勝とう!

電王戦Final - 第一局 - 将棋ソフト開発(仮)

と言うブログを読みまして、自分が昔に書いた事の補足を

今までとは違う考察を交えて書けそうだと思ったんですね。

 

上記ブログは非情に読みやすく かつ、判りやすく、今まで何人も電王戦について

書いている記事を読んでいますけれど、ライターの方以外で

では抜けて良い出来だと思いました。

プログラマーからの視点での記事は少ないので、是非、読んで見て頂きたいですね。

 

 

 

前にプロ棋士は先攻するか、攻め合いじゃないと勝てない と書いた事があります

他にはソフト同士の対戦は先攻 している方が勝率が高いはず とも書きました。

それについ最近書いた  (数値は高い程良い訳ではない)

ポナ・Aprey  攻めの鋭さ 80  玉の危険度許容 80

AWAKE・習甦・ツツカナ等  65          65

プロ棋士平均像         70          30

  

ソフトによる攻めの鋭さ と 受けの危険度は比例するんじゃないか?

は今まで見ていて感じていた事でして、

棋士含めた3タイプの攻撃を武器に例えてみたいと思います。

 

まず 攻め80のタイプは槍です。 最も長い射程距離を持ちます。

評価関数はかなり早くから上下にぶれます。

他の武器より射程が長いので、対局させると基本的に先攻します。

自分だけが攻める状況は圧倒的に強いですが、懐に潜り込まれて乱戦になった時に

意外な脆さを出します。

 

次に 攻め70のタイプは日本刀です。 切れ味が抜群です。

攻撃を受けると、刃が薄い事もあって折れる場合があります。

特に居合切りは必殺の一撃で、相手を一瞬の内に葬ります。

 

最後は 攻め65のタイプ。 これはトンファーです。 攻防一体の武器です。

一発で倒さなくても良いと思っていて、相手が弱ると動かなくなるまで

殴り続けますw

武器の特徴を良く理解していて、自分が優勢な局面を作る事が大好きです。

油断はしないタイプなので、評価値はゆったり推移します。

 

 上記の内容を基に、”指し手がランダムで選ばれる”を絡めてお話しします。

今回の説明ではソフトは指し手を評価値が高い順に

上位3番目までをランダムで選ぶ仕様になっている事にします

 

攻めの鋭さと言う点において棋士はソフトと遜色無いか上回っている

戦型があるので、まず、それは活かすべきだと思います。

 但し、確信を持って攻めに出れるか、確信はなくとも攻めるしかないか

どうかは状況次第な所もあります。

練習対局で出来る事と、電王戦本番で同じ事が出来るかは、

対局者の心の持ち様次第でしょうね。

 

 

では、本題に移ります。 

ランダムで選ばれる序盤の3択

↓ は相横歩取りの途中図です。 

 

f:id:mgudn:20150322005220j:plain

 指し手A と B は途中まで同じでその次の指し手を総合して点数をつけています

指し手 C は AとBとは別の手を選択しています。

対局開始数手しか進んでいないので、この時点で評価値が大きく差が出る事は

少ない状況です。 

なので、全くのランダムでA~Cのどれを選択しても勝敗に影響は少ないです。

 

 

次に攻めの3択で起こりやすい事

f:id:mgudn:20150322112837j:plain

 

A と B はどちらも良い状況です。 画像に入れ忘れましたが、

これ以外の手を指す C もありますが。。。

 

この様に攻めの場合は、どれでも良い場合が、局面に差がつけばつく程

増えていきます。 結果として、ランダムでも勝敗に影響しません。

 

ここからは私の棋力が低すぎてどんな局面を提示したら良いか判らないので

画像はありません <(_ _)>

 

中盤で選択権がある場合の3択

 

A 攻めの手

B 守りの手

C AかBの指し手のどちらかに類似した手

 

この場合も3択でどれを選んでも問題無い場合が多いです。

勝敗に直結しない可能性が高いです。

 

では最後に 受けの3択

 

A~Cまで受けの手

この場合は ソフトが一番良いと評価した手以外は

評価が下がり続ける可能性が増えます。

特に玉付近の場合は顕著に出ますし、勝敗に直結します。

 

このように受ける時だけ ”急激に” 3択でランダムに指し手を決める事が

マイナスになる可能性が高まります。

 

こういった事例は電王戦、電王戦トーナメントの両方で何度も繰り返されている

事例です。

ランダムをどうプログラムに組み入れているか?はソフトによって違いは

あるでしょうが、私には判りません。

但し、現象としては間違いない事だとも思っています。

 

こうした特性があるので、棋士は攻め合いの方が勝ち易く、

ソフト同士では先後に関わらず、先攻した方が勝っている事が多いように

感じていたのだと思います。

いつ、どのタイミングで戦いになるか?は予想できるものでもありませんから

機械的にこれを回避する事をプログラムに組み込む事は難しいのだと

思うのですが、どうなんでしょうね?

 

成りと成らずはソフトは別の手だと認識するので、

3択とはいえ実質2択になる場合がある。

この事を書こうとして下書きで文章をあ~だこ~だ考えたり

他ごとしてたりでUPが遅れてたら、Final第二戦があの結末w

もうね、 二重でびっくりです。。。

 

最後に、棋譜を検討したい時は 槍よりトンファータイプをお勧めします。

最近Aperyが公開されて普通に自分のPCで使える事になりましたが、

槍タイプは現在の局面を正確に判断しているか?の優先順位は低いと思います。

その局面で自分が攻める事は可能なのか? が槍タイプの評価値

だと思っていた方が良いかも知れません。

強い、勝っている=評価が正しい とは限りません。

ソフトを使う方は、使用目的と特徴を考えて選びましょう。

タイプの違いを知ったうえで両者を比較するのも面白そうですね。