tの妄想 / 将棋ソフト指し対策案 「ソフト指し分析判明法」

先日、コンピュータ将棋YSS掲示板に、将棋ソフト指し迷惑の苦情の
書き込みがありました。


内容は、高段の棋力を誇る将棋ソフトを利用して、
ネット対局に参加している、というもの。


それによって、なんらかの利益を得るのであれば(賞金)
それは、詐欺行為ではありますが、対策案が無い、との事。


私自身は、将棋ソフト指しはしていませんが、
将棋ソフト指し対策について考えてみました。
題して、「ソフト指し分析判明法」と言います。(好きやなー)(^^;


まず、その者が、将棋ソフトを利用していること、を
見破ることが先決です。



>「誰々がソフトを使い失格となった」というようなメッセージが出てましたし、
>普通の対局時にもそういうメッセージが出ることがあります。
>どういうアルゴリズムを使っているんでしょうね。


これは、対局ネットサーバーに、前もって対局プログラムを登録して置くことにより、
不可能ではないと妄想します。


例えば、AI将棋、激指、東大将棋等の対局プログラムを
ネットサーバーに登録して置きます。


登録された対局プログラムで必要なのが、棋譜解析機能です。
この棋譜解析機能には、リアルタイムで指されている棋譜を解析し、
その指し手が、登録された対局プログラムの何番目の手かを
つぶさに解析、集計し表示します。


まさか、初手から終局まで登録された対局プログラムの第一候補手の人は
いないでしょう。
バージョンの違いはあるにしても、
指し手が登録された対局プログラムの何番目の候補手か、を解析できれば
将棋ソフト指しであることが、ほぼ推測できます。(ほんまかいなー)(^^;



■将棋ソフト指し対策案/サンプル棋譜


下記の棋譜の指し手はAI将棋、激指、東大将棋の何番目の候補手になりますか?
第一候補手、または上位に候補手を多く表示するソフトは、どれでしょう?
これを棋譜解析機能で対局プログラムの何番目の候補手か、を表示させるのです。


▲7六歩 △3四歩 ▲2六歩 △3三角 ▲4八銀 △4二銀
▲2五歩 △8四歩 ▲3三角成 △同 銀 ▲6八銀 △7二銀
▲7八金 △6四歩 ▲6九玉 △6三銀 ▲7九玉 △4二玉
▲5八金 △3二金 ▲7七銀 △7四歩 ▲8八玉 △7三桂
▲4六歩 △5二金 ▲4七銀 △6五歩 ▲5六銀 △6四銀
▲4五歩 △6三金 ▲3六歩 △8五歩 ▲3七桂 △7五歩
▲同 歩 △同 銀 ▲7六歩 △6四銀 ▲6八金右 △3五歩
▲5八角 △3六歩 ▲同 角 △6二金 ▲9六歩 △9四歩
▲1六歩 △1四歩 ▲2七角 △3八歩 ▲6六歩 △3九歩成
▲3四歩 △同 銀 ▲6五歩 △同 銀 ▲3八歩 △5六銀
▲同 歩 △2六銀 ▲3六角 △3五銀引 ▲1八角 △3六歩
▲2四歩 △同 歩 ▲6七金直 △4八角 ▲2六銀 △同 銀
▲同 飛 △3五銀 ▲7一銀 △9二飛 ▲6二銀不成△同 飛
▲3六飛 △同 銀 ▲6三歩 △8二飛 ▲3六角 △3八と
▲7一銀 △8四飛 ▲4七金 △3九角成 ▲4四歩 △3五歩
▲1八角 △6五桂 ▲4五桂 △4四歩 ▲5三桂成 △同 玉
▲6二歩成 △4二玉 ▲6六銀 △6九銀 ▲7五銀 △8六桂
▲5二と △同 玉 ▲6二銀成 △同 玉 ▲6三角成 △同 玉
▲6四歩 △5二玉 ▲8六歩 △7八銀成 ▲同 玉 △8七銀
▲同 玉 △8六歩 ▲同 銀 △同 飛 ▲同 玉 △8五歩
▲8七玉 △8六銀 ▲7八玉 △8七銀打


棋譜の指し手が対局プログラムの何番目の候補手か? 第一候補手の手がいくつあるか?
どれだけの 第一候補手の手があれば、将棋ソフト指しである可能性が高いか、を
確率で出す訳です。


これが、可能なら、将棋ソフト指しを見破り、相手に指摘、警告する事ができます。
検討モード使用での人間の指し手が混入するとお手上げですが。


将棋ソフトに含まれる定跡データの手は、1番目の候補手とする。
候補番号数を集計して、集計数が少ないソフトの使用確率を弾き出す。


ただ、それで、将棋ソフト指しがなくなるとは思えませんけど。(^^;




■実験■「ソフト指し分析判明法」


この「ソフト指し分析判明法」の判別方法の信憑性は確かなのでしょうか?
実験として、前棋譜を検討モードでの候補手の順位で検証してみます。


○注意○
棋譜の後の番号が、候補手順位番号。
・候補手順位番号は、検討モードの検討終了までやっていない。
 故に、順位は検討終了させた順位とは異なる。
・候補手順位番号の「ー」は、棋譜とは違う詰め手順の読みの為「ー」とした。
 つまり、点数に加えていない為0という事になる。
・検討モード10番内に表示されない手は、11点にした。

                                                                                                                                    • -


AI将棋Ver.12の場合。


▲7六歩1 △3四歩1 ▲2六歩1 △3三角1 ▲4八銀1 △4二銀1
▲2五歩1 △8四歩1 ▲3三角成1 △同 銀1 ▲6八銀1 △7二銀1
▲7八金1 △6四歩5 ▲6九玉1 △6三銀5 ▲7九玉2 △4二玉3
▲5八金1 △3二金2 ▲7七銀3 △7四歩5 ▲8八玉1 △7三桂1
▲4六歩1 △5二金3 ▲4七銀1 △6五歩6 ▲5六銀2 △6四銀5
▲4五歩1 △6三金11 ▲3六歩1 △8五歩8 ▲3七桂1 △7五歩1
▲同 歩1 △同 銀1 ▲7六歩1 △6四銀1 ▲6八金右1 △3五歩11
▲5八角5 △3六歩1 ▲同 角1 △6二金3 ▲9六歩3 △9四歩10
▲1六歩3 △1四歩11 ▲2七角1 △3八歩1 ▲6六歩2 △3九歩成2
▲3四歩3 △同 銀1 ▲6五歩1 △同 銀1 ▲3八歩4 △5六銀11
▲同 歩1 △2六銀1 ▲3六角1 △3五銀引1 ▲1八角2 △3六歩1
▲2四歩1 △同 歩1 ▲6七金直5 △4八角11 ▲2六銀2 △同 銀1
▲同 飛1 △3五銀3 ▲7一銀1 △9二飛1 ▲6二銀不成2 △同 飛1
▲3六飛1 △同 銀1 ▲6三歩1 △8二飛1 ▲3六角1 △3八と1
▲7一銀1 △8四飛1 ▲4七金1 △3九角成1 ▲4四歩1 △3五歩1
▲1八角1 △6五桂5 ▲4五桂4 △4四歩1 ▲5三桂成1 △同 玉1
▲6二歩成1 △4二玉11 ▲6六銀1 △6九銀1 ▲7五銀1 △8六桂4
▲5二と1 △同 玉1 ▲6二銀成1 △同 玉1 ▲6三角成3 △同 玉1
▲6四歩1 △5二玉3 ▲8六歩2 △7八銀成1 ▲同 玉1 △8七銀1
▲同 玉1 △8六歩ー ▲同 銀1 △同 飛ー ▲同 玉1 △8五歩1
▲8七玉1 △8六銀1 ▲7八玉1 △8七銀打ー
29      65     31       49     33   69


総手数124手
先手62手 93点 93/62=1.5
後手62手 183点 183/62=2.9


・総手数は、124手で先手62手。後手62手。
・先手候補手順位合計番号の93点に先手62手を割ります。93/62=1.5
・後手候補手順位合計番号の183点に後手62手を割ります。183/62=2.9


AI将棋Ver.12
先手候補手平均順位1.5手
後手候補手平均順位2.9手


■AI将棋Ver.12の先手番では、候補手平均順位1.5手となり、
 AI将棋Ver.12の上位候補手の指し手棋譜と分析した。

                                                                                                                                    • -

激指4の場合。


▲7六歩1 △3四歩1 ▲2六歩1 △3三角8  ▲4八銀1 △4二銀1
▲2五歩1 △8四歩1 ▲3三角成1 △同 銀1 ▲6八銀1 △7二銀1
▲7八金1 △6四歩1 ▲6九玉3 △6三銀1 ▲7九玉1 △4二玉1
▲5八金1 △3二金1 ▲7七銀1 △7四歩11 ▲8八玉8 △7三桂2
▲4六歩1 △5二金3 ▲4七銀1 △6五歩11 ▲5六銀10 △6四銀1
▲4五歩5 △6三金11 ▲3六歩3 △8五歩3 ▲3七桂2 △7五歩8
▲同 歩1 △同 銀1 ▲7六歩1 △6四銀1 ▲6八金右2 △3五歩11
▲5八角6 △3六歩1 ▲同 角1 △6二金2 ▲9六歩8 △9四歩3
▲1六歩2 △1四歩2 ▲2七角11 △3八歩11 ▲6六歩7 △3九歩成1
▲3四歩2 △同 銀1 ▲6五歩3 △同 銀2 ▲3八歩2 △5六銀11
▲同 歩1 △2六銀10 ▲3六角1 △3五銀引1 ▲1八角6 △3六歩1
▲2四歩3 △同 歩1 ▲6七金直5 △4八角4 ▲2六銀3 △同 銀2
▲同 飛1 △3五銀2 ▲7一銀2 △9二飛2 ▲6二銀不成2 △同 飛1
▲3六飛1 △同 銀1 ▲6三歩2 △8二飛2 ▲3六角3 △3八と1
▲7一銀2 △8四飛3 ▲4七金6 △3九角成2 ▲4四歩1 △3五歩2
▲1八角3 △6五桂5 ▲4五桂2 △4四歩1 ▲5三桂成1 △同 玉2
▲6二歩成3 △4二玉2 ▲6六銀1 △6九銀11 ▲7五銀3 △8六桂11
▲5二と2 △同 玉1 ▲6二銀成1 △同 玉1 ▲6三角成4 △同 玉1
▲6四歩1 △5二玉2 ▲8六歩2 △7八銀成1 ▲同 玉1 △8七銀8
▲同 玉1 △8六歩2 ▲同 銀1 △同 飛1 ▲同 玉2 △8五歩1
▲8七玉2 △8六銀1 ▲7八玉1 △8七銀打2
36     53     50     77     68     70


総手数124手
先手62手 154点 154/62=2.4
後手62手 200点 200/62=3.2


激指4
先手候補手平均順位2.4手
後手候補手平均順位3.2手

                                                                                                                                    • -

大将棋7の場合。


▲7六歩1 △3四歩1 ▲2六歩1 △3三角1 ▲4八銀1 △4二銀1
▲2五歩9 △8四歩1 ▲3三角成1 △同 銀1 ▲6八銀1 △7二銀1
▲7八金1 △6四歩1 ▲6九玉3 △6三銀1 ▲7九玉4 △4二玉1
▲5八金4 △3二金1 ▲7七銀1 △7四歩1 ▲8八玉6 △7三桂1
▲4六歩1 △5二金1 ▲4七銀1 △6五歩2 ▲5六銀11 △6四銀1
▲4五歩6 △6三金1 ▲3六歩1 △8五歩1 ▲3七桂3 △7五歩1
▲同 歩1 △同 銀1 ▲7六歩1 △6四銀1 ▲6八金右1 △3五歩1
▲5八角3 △3六歩1 ▲同 角1 △6二金1 ▲9六歩3 △9四歩1
▲1六歩1 △1四歩2 ▲2七角9 △3八歩1 ▲6六歩10 △3九歩成1
▲3四歩11 △同 銀1 ▲6五歩1 △同 銀1 ▲3八歩4 △5六銀1
▲同 歩1 △2六銀1 ▲3六角1 △3五銀引1 ▲1八角1 △3六歩1
▲2四歩1 △同 歩1 ▲6七金直1 △4八角2 ▲2六銀2 △同 銀1
▲同 飛1 △3五銀1 ▲7一銀3 △9二飛2 ▲6二銀不成1 △同 飛1
▲3六飛1 △同 銀1 ▲6三歩2 △8二飛2 ▲3六角4 △3八と1
▲7一銀5 △8四飛1 ▲4七金2 △3九角成1 ▲4四歩5 △3五歩1
▲1八角1 △6五桂1 ▲4五桂4 △4四歩1 ▲5三桂成1 △同 玉2
▲6二歩成1 △4二玉3 ▲6六銀1 △6九銀1 ▲7五銀1 △8六桂11
▲5二と1 △同 玉4 ▲6二銀成1 △同 玉3 ▲6三角成1 △同 玉1
▲6四歩1 △5二玉3 ▲8六歩ー △7八銀成1 ▲同 玉ー △8七銀1
▲同 玉ー △8六歩1 ▲同 銀ー △同 飛1 ▲同 玉ー △8五歩1
▲8七玉ー △8六銀1 ▲7八玉ー △8七銀打1
51      29     35     27     60     31


総手数124手
先手62手 146点 146/62=2.3
後手62手 87点 87/62=1.4


大将棋
先手候補手平均順位2.3手
後手候補手平均順位1.4手


■東大将棋7の後手番では、候補手平均順位1.4手となり、
 東大将棋7の上位候補手の指し手棋譜と分析した。

                                                                                                                                    • -

■解答■


手合割:平手  
先手:AI将棋Ver.12 4段
後手:東大将棋7 四段(標準)

                                                                                                                                    • -

候補手平均順位1.X手が、本当に将棋ソフト指しの確率が高いのか?
いろんな棋譜を検証してみる必要はある。


なお、この「ソフト指し分析判明法」の判別方法の
イデア特許権利、著作権は、私(t)にあります。


ただし、この「ソフト指し分析判明法」を
将棋プログラムに搭載したい人には、無料にて使用する事を許可します。
もちろん、私に許可の確認をする必要もありません。(したい人居るんかなぁー)(^^;