コンピューター将棋に 投了後(あと)払いの指し掛けルール を提案しよう
※大幅な記事内容の変更が3回ありました。
(1) 削除:「ミライコミ」 上書き:「よみすじゲタ」
(2) 削除:「よみすじゲタ」 上書き:「待ったの前借りルール」
(3) 削除:「待ったの前借りルール」 上書き:「投了後(あと)払いの指し掛けルール」
きふわらべのお父んによるコンピューター将棋の先手有利を埋める案の1つ。ハンディキャップを用いて、以下の1つの問題を解決するよう狙う
現代のコンピュータ将棋で起こっている問題の1つ
現代のコンピュータ将棋の決勝レベルのソフトの間では、対局者のどちらが強いかではなく、くじで先手番を引いた方が7割勝つようになっている
先手有利な理由は、以下の2つ
(a)平手初期局面が先手有利と評価されており、先手がミニマックス法を用いてその有利をずっと保つ定跡を深く整備することができたこと
(b)後手は、先手有利の定跡を掘る必要があることに加えて、そこから後手が評価値を覆す定跡を作らなければならないが、後手が誘導できるものではないので、せっかく掘った後手番定跡へ対局が進行せず定跡の発掘が膨大に無駄になるケースの方が多い
先手後手の有利の差を埋める方法
少なくとも、以下の2通りのどちらを行うか、議論がよく行われる
(1)ゲーム開始時の初期局面の先手後手の評価値の差を埋める
先手の利の調整。
例: 囲碁のコミ出し
例: 連珠のパイルール
(2)ゲーム開始後のプレイ・ルールを先手後手で非対称にする
いわゆるハンディキャップ。
例: 連珠の三三、長連、他
例: 将棋の上手の駒落ち
例: 先手と後手の持ち時間に差を付ける
例: 強い方は目隠しをして盤を見てはいけない
例: 弱い方はチームを組んで相談してよい
(1)について、囲碁ではこれで調整が上手くいく。囲碁は整数の点数勝負なので コミ出し ルールを使うことで、1点ずつ調整できる。
それ以外のゲームでは、この第1案を使って調整するのは困難なケースがある
📖 囲碁の基本:対局のルール・流れ (囲碁では、先後勝率を互角にする方法として、パイルールは必要なく コミ出し というものがある)
(2)については、エンターテイメント感が強くなると競技感、勝負感を損ねてしまう
📺 電竜戦さくらパイルール2023 -中継サイト (パイルールを使っている。連珠を真似ている)
📖 開局規定 (連珠はいろいろなパイルールの導入が先に進んでいる)
以上は、先後のルールが非対称であったとしても、
両対局者の力比べは 100% vs 100% が保たれていた。
以降は 先手の利の調整(パイルールやコミ)とは異なり、ハンディキャップの解説となる
📺 理系の天才棋士と対決します (目隠し積分将棋)
📺 【衝撃の結末!?】ピアノ目隠し将棋 谷合廣紀四段VSよしもと芸人最強桐生ザベスト (目隠しピアノ将棋)
👇 また、先手勝率7割といわれるコンピュータ将棋でも、後手に「待った」を使わせることで後手は勝てることは確認されている。
📺 【待ったは何回まで?】将棋AIに1000回待ったをさせてみた結果、怪物のような棋譜が生まれました【将棋AI水匠/たややん】
しかし、手順中に「待った」が含まれるルールは 将棋のプレイヤーの心理的に受け入れることが難しい。手順中に「待った」が含まれない方法がいい。
対策
まず、先手番定跡の出口まで行く。
先手勝率7割というのは、確率だけの問題だと仮定する。
投了後(あと)払いの指し掛け ルール
👆 先手番定跡から抜けたかどうか後手は知るよしがないことから、とりあえず 後手が自分の定跡を抜けたタイミングだとします
このあとも、先手の利が残っている間、後手は[投了後払いの指し掛け]ができます。
先手の利を払い終えたときは、記録係の文言が変わります
以下、対局が終了するまで続けます。
👇 [先手の利を返済するために必要となる追加の対局数]は、以下の式を参考にして求めます。
先手の利を返済するために必要となる追加の対局数 = 1 / ( 1 - 先手勝率 )
(※小数点以下四捨五入)
もし先手勝率が7割であれば、10回対局すれば後手は3回勝てそうだということだから、3.3333……回対局できれば後手は1勝できそうです。
3.3333……回の対局って何回なのかですが、切り上げるなら 4、四捨五入するか切り捨てるなら 3 になります。ここでは四捨五入することにします。
そこで3.3333……の小数点以下を四捨五入して 3 が、後手が1勝するのに必要そうな対局数とします。そのうちの1つは現在の対局ですから、追加したいのは 2局 になります。したがって[先手の利を返済するのに必要となる追加の対局数]は 2 とします。
先手勝率 後手が1勝するのに必要そうな対局数
-------- -------------------------------
5割 2 = 1 / (1-0.5)
6割 2.5 = 1 / (1-0.6)
7割 3.3333... = 1 / (1-0.7)
8割 5 = 1 / (1-0.8)
9割 10 = 1 / (1-0.9)
9.9割 100 = 1 / (1-0.99)
9.99割 1000 = 1 / (1-0.999)
[待った]と[先手の利の返済をお願いします]の違い
[待った]は、棋譜の末端で行われる。また、[待った]は負けを回避するものだ。
[投了後払いの指し掛けルール]では、棋譜の末端で行われるのは[投了後払いの指し掛けをお願いします]なので、後日に負けが記録される。
この負けが大会の順位に影響しないというのは[大会ルール]であって、将棋としては、ちゃんと[負け]が付いている。
[投了後払いの指し掛けルール]によって後手に与えられたハンディキャップの1つは、ある意味で、この対局を[公式戦]とするか、[非公式戦]とするかの権限とも言える。
[後手が勝つまで4番勝負を行うこと]との違い
先手番定跡を抜けたところで 先手勝率7割の中で後手番が回ってくる。
ここで初めて、後手が誘導できる後手番定跡の先着が1手指せる。
この後手番定跡は勝率3割なので、3.3333……回指す機会を与えることで、やっと確率を五分五分に戻せるはず。
それに比べ、初期局面が4回回ってきても、その初手はどれを選んでも 先手勝率は7割だ。
後手に[先手の利]が回ってきたのでは?
[返済します]を宣言した局面では 後手に手番があり、もしこの局面を先手後手の利が確率的に対等な局面だとすれば、後手の方に[先手の利]が回ってきていて後手が有利な気がするが、
この時点で後手は定跡をもっていないと考えられ、先手番定跡によって先手の利を拡大していくような、先手勝率7割と同じ状況にはならないと考える。
備考
指し手を相手に開示するというアイデア自体は、ねこ将棋 という先例がある
この記事が気に入ったらサポートをしてみませんか?