Commentarii de Bello Kazusso カズサ戦記(後編)
前回までのあらすじ:無事1次予選を突破したA級リーグ指し手1号。明日の戦闘に備えるその夜、訪れてきた玲子から熱い想いを打ち明けられる。秘かに好意を寄せてきた相手からの思いがけぬ告白に、心乱れる指し手1号。しかし運命の歯車は既に廻り始めているのだった… <いやそんな話じゃなかったべさ。てか玲子って誰よ?
[2次予選]
対戦相手は竜玉、マイムーブ、備後、ゆうちゃん、dos、WILDCAT、K-Shogi、棋理、山田。
棋譜は1次予選のと同じURLで見えます。
竜玉:言わずと知れた決勝進出ソフトで、もうはなっから諦めていたのですが。話してるうちにいつの間にか千日手になっていました。まだ仕掛け早々くらいで、むこう振飛車、こっちが馬を作ったものの四間の飛車先が破られる寸前、という状況で馬が飛車を追っかけまわしてました。まあこちらとしてはラッキーで、竜玉さんは残念がってました。
竜玉さんの本業は、えー何というか、私のいる会社の隣の業界でしたね。彼のとこの作ってる製品が私の近くにあるんじゃないかと思います。FPGAも仕事で関係あるそうで、よくご存じでした。
マイムーブ:また負け。対マイムーブ戦連敗記録更新中です。1次と2次両方当たったのはここだけです。
私は局面表示がテキスト(「v銀」)であまり見やすくないので、相手がGUIのときはだいたい相手のとこに行って見せてもらってます。今回も見せてもらってたのですが、局面以外にもいろいろ情報表示してるのであれこれ聞いてました。時間の使い方はすごく工夫されてましたね。私のは超原始的で、最低限の制御しかしてないのですが、これだと1局に2分しか使わなかったかと思えば、1手4,5分長考したり。相手時間なんて当然(?)寝てるし。ここはちゃんとやるだけで深さ1くらい増やせそうな気がするので、大会後のTODOリストNo.1です。てか実はもうやってたりして。
備後:大会少し前のレーティングで、floodgate最強対最弱の決戦。ここは我が軍としては撤退あるのみです。備後さんは「決勝常連のソフトは、詰みとかものすごいいろいろ工夫してるんやで~」と(備後弁?で)話しておられましたが、備後さんもそこに負けないようにがんばってるようですね。というのは小宮日記でもうかがえましたね。
この将棋では備後側の飛車が2八~2六~5六~5八~2八、と動く回転飛車!が登場しまして、私は幻惑されてました。私の方も穴熊からはい出たりと怪しげなことやってましたが、華麗さで回転飛車にはかないません。試合に負けるのはしかたないけど、華麗さで負けるのはくやしい。こうなったらもうこっちも対抗して、来年は定跡仕込んで、王さんにバック転させたるで!と決意を燃やしてます(嘘)
次もうわかりますよね:
♪I'm dazed and confused...
ゆうちゃん:「例の」対局です^^; ワタシ的にはある意味今大会のハイライト(?)。こちらが徐々にリードを拡大していき、圧倒的駒得に。ゆうちゃん側の王手ラッシュが始まったな、などと言ってたときに、会場の大盤解説が本局になりました。えーこれってネット中継してるんだっけ、と思ったちょうどそのとき。暴走モードに入りました。1手詰があるのに、関係ないただ捨ての手とかをぼろぼろ指す。まあそれでも元々が超駒得なのでこっちが負けになるというわけではないのですが、そうこうしているうちに同局面4回で千日手になってしまいました。原因については、その後考えていちおう判明しているので、後で書きます。大盤なので会場はこの一局をかなりの人が見ていましたが、一同あきれるばかり。まそりゃそうでしょう。「顔から火の出る王手飛車」状態でした。中継もされてたはずなので、あとでネット上の大会情報(2ちゃんの実況とか)見てましたが、いやいや、案の定だいぶ失笑を買ってましたね^^;;; まあ千日手対策もまったくやってないので、王手千日手で負けにならなかっただけマシだったかも。
dos:1次のときに作者の小日向さんに話しかけられまして、いろいろ話してたんですが。こっちがFPGAというので「すごいですねぇ」などと言われ、いえいえ、とか言ってて。ところでそちらはハードどんなのですか?「PS3です。」…は?ぴーえすすりー、って…?一瞬意味がわかりませんでしたが、そう、あのプレステ3でした。ちょ、ちょっと見せてくださいよ!で彼の席に行くと、机の上に黒光りするPS3が。思わずのけぞってしまいました。私のも見た目は相当インパクトあるぞと自負してたんですが、これにはクロス・カウンターを食らいました。
Cellというのは私は漠然と「ベクトルマシンみたいなもん」と思ってたんですが、ちょっと違いましたね。PPE*1とSPE*8があり、PPEはPowerPC相当、SPEはそれぞれがLocal Storeというメモリ上で独自に命令列を走らせるSIMDプロセサとのこと。Local Storeは各256KBで、それでもハッシュ持ってるというので「外れたらどうすんですか?」と聞いたところ、「DMAみたいなことやってメインメモリからロードします。」えぇえ~~!これにはまた圧倒されました。さすがにDMAでは速度はそんなに出ないそうですが。まあ本業もPS3関連とのことなのでCellのプログラミングには慣れておられるようでしたが、いやー私にはできそうにないなと思いました。
本大会の「ゲテモノハード部門」では、大賞は不肖わたくしがいただいていきますが、次点の優秀賞は小日向さんに差し上げたいと思います。いやもらっても迷惑かと思いますが。しかし来年あたり、誰か携帯とかDSとかで大会出ないですかね。有志諸君、目指せゲテモノハード大賞!!!しかし携帯で大会出て、対局中電話かかってきて、電話とって話しはじめたら審判さんから「あー勝手にいじっちゃだめですよ~はい失格」とかなったらかなり笑えるでしょうね。ってなんでそう人の不幸を喜ぶかな。
さて対戦の方は、定跡の巡り合わせか何かなのか、なぜか私の方が序盤から攻め続けて、そのまま勝ちきってしまいました。dosは1次みさきにも勝ってるので、こりゃ苦しいかなと思ってたんですが。相性とかあるんでしょうかね。
WILDCAT:ずっと接戦でした。長手数になり、最後CATが時間切れになって勝ちを拾いました。予測読みの時間設定にミスがあった、とかブログに書かれてましたね。実力的にはたぶんほぼ互角だろうと思います。この将棋も後半大盤解説の対象となり、また公衆の面前で変なことしないかとヒヤヒヤしてました^^;
KShogi:ここまで2勝2敗2分となり、まあまあの星となったためまた上位陣と当たってしまいました。KShogiは愛用させていただいてます。強さもさることながら、ユーザインタフェースとか細かいところまで対応できていてほんと商品レベルのクォリティなので、感心しています。ふだんのスパーリングはKShogi*初級*とやってて負け越してるくらいなので、リミッタ解除のKShogiとではちょっと勝負になりません。本田さんには「初級でお願いしますね」と対局前にお願いしてました^^;(するなよ) この回から勝又先生の解説が始まりまして、私は最前列だったのであまり解説無視するのもあれかと思ったので聞いてたところ、こっちの対局はあまりちゃんと見ないうちに負けてました。
棋理:floodgateで2、3ランク上だったので、予想通りいいところなく敗れました。佐藤さんのブログはよく見てまして、参考にさせていただいています。しかし彼は若いのにしっかりしてますねー。fruitやcraftyのソースは「熟読してる」というあたり、なかなかできることではないです。現に私はろくに読んでません--; やっぱ基本をしっかりせんと。
ハードは、ブレードサーバからひっこぬいてきたブレードをでんと置いてました。プログラム的にはPCといっしょのはずですが、これもなかなかの迫力。そういえば1次のあいちゃんもブレードでした。あいちゃんのはファン(?)の音が大迫力で、存在感ありました。
山田:これも大接戦に。途中負けたと思う場面もありましたが、何か粘って逆転してしまいました。山田将棋ともおそらく実力ほぼ互角と思います。この将棋も、解説とかちあってあまり見れませんでした。(棋理のときは最後列だったんで自分たちのを見てたんですが。)まあ2日め最終戦ともなるともう意識がもうろうとしてきて、頭が働いてません。
以上で3勝4敗2分。2次予選15位で、2次シード獲得となりました。いちおう事前予想では「1次はなんとか通過、2次でぼろ負け」と思っていたので、望外の成果です。ほぼ実力互角だったであろう dos, CAT, 山田にことごとく勝てた、のがラッキーでした。確率1/8?4敗はすべて順当。2分は1つラッキー、1つアンラッキーなのでチャラ?
[キサラヅ市街地攻防戦]
西村さんが弁当総括をされてましたが、私は会場ではどうも落ち着かないので弁当は頼まず、試合終わってからゆっくり木更津市街で食べようかな、と考えてました。ところが、木更津駅近くって、夜7時も過ぎるとあんまり店開いてないんですよねー。閉まるの早いのか、昼間も閉まってるシャッター商店街なのか。木更津経済まずいんじゃないの?まあまったくないというわけではないんですが。
5/2 夜ホテルのある東口側をしばし歩きまわり、あまりないので西口の方にも行ってみましたが、ちょっと歩いたくらいではやはりあまり見当たらず。この日は西口すぐのAQUA(だっけ?)の上の中華料理。まあ可もなく不可もなし。
5/3 は、ただ歩いたのでは探すの大変そうなのでホテルでマップをもらったところ、西口の証誠寺付近がいちおう繁華街のようで。そちらへ向ってみましたが、やはり閉まってるところが多く。あきらめてコンビニ弁当を買って帰る途中、ようやくそこそこにぎわっているエリアに出ました。来年はこの辺まで足をのばしますか。「宝家」は門構えがすごく、メニュー等も店の前に出てません。入ってみたい気もしますが予算不明ではちょっとこわい。誰か入ったことあります?あと気になったのは、普通の店はほとんど閉まってるのに、ラブホだけ妙に目についたのは私だけでしょうか。4,5軒あったかな。しかもどこもけっこう賑わってたし。うーん恐るべしキサラヅ。
5/4は帰ったのが遅かったので歩きまわる気もせず、東口から線路沿い南へすぐのパスタ屋…といいつつ中華もしょうが焼き定食もある、という妙な店に入りました。でもここはまあまあ。
話は変わりますが、木更津のさびれぶりを見ると、かずさアークの方も心配になってしまうんですが。あそこもどうなんでしょう。運営費稼げてるのかなあ。公営(おそらく)のイベント会場はともかく、ホテルは経営成り立ってるんでしょうかね。千葉南部の結婚式はみなあそこでやる、とかいうのでもないと採算取れないような、などと余計な心配をしております。市か県かから補助金でも出てんのかな。
ところで総括といえば赤軍を思い出す私はやっぱ変でしょうか。
[情報戦]
大会のたびに主に対戦相手の方とはいろいろお話しさせていただいてましたが、今回はまあ初のFPGAということでもの珍しがられたのか、けっこう多くの方から話しかけられたというのもありまして、かなりいろんな方々と情報交換ができました。大きな収穫だったです。
FPGAのことを説明してて、「ハッシュないんですよ」と言うと「えーっ!」という感じの反応が多くて。柿木さんやうさ親さんからは具体的なハッシュの作りについてもいろいろ教えていただき。ハード的にちょっと面倒なので二の足を踏んでたんですが、これもまじめに考えてみることにしました。てことでこれもTODOリスト上位。
会う人ごとに「ソフトどんな作りなんですか」などとずうずうしく聞いてまして。ベテラン勢は前向き枝刈り派が多く、最近参入組は全幅派が多いようですね。やはりこの辺はBonaの影響が大きいようです。奈良さんも書いてましたが、自分がコン将を始めたころに「流行っていた」方式に影響受けるんでしょう。ま私などは比較的昔からやってるくせに途中から全幅に宗旨変えしたりしてますが。
深さはだいたい6~10くらいでしょうか。ま「基本」深さなので、延長でもっと行くみたいですが。いちばん意外だったのは習甦の竹内さん。ここで書くのもあれなので具体的な数字はあげませんが、あんまり読んでないんですよね。それであんなに強ぇのかよ?!三味線じゃないの?などとつい思ってしまうくらいだったんですが、ほんとなら深く読みゃいいってわけでもなさそうです。
あと、将棋世界の田名後さんからもインタビュー(?)されてました。まあ記事になるかはわからないですが。私は20世紀の終わり頃将棋世界毎月買ってまして。最近あまり読んでないんですが。でその頃は大崎編集長で、その頃新人で入った(?らしい)田名後さんを大崎さんがいろいろ「いじって」まして。「『僕の東大将棋がぁぁぁっ!』いや君のじゃないんだってば田名後くん、」てな感じ。あの田名後さんですよね、などといらぬことを聞いたら「今は編集長です」。ひぇええ!もしかしたらむっとされたかも。十数年前の新人のころのこととか言われたら、あまりいい気分でないかもですね。今は編集長が板についておられました。今後できるだけ読むようにしますんでご勘弁を。
♪ 惑星のちからと 死の魔術が必要
[敗因分析会議]
暴走の原因については、大会前に初めて見つかったときから考えてたんですが。最初は評価値がオーバフローしたのかな、と予想してたのですが、実は大会前に、根本的ではないがまあちょっとした対策を組み込んだのですが、効果なし。でまた考え直し。
事例としては4回出ました:yowa_usa(floodgate)、あうあう、なり金、ゆうちゃん。
症状としては次のよう:
・圧倒的駒得の状態になったとき出る
・明らかな詰めがあるのに、関係ないただ捨て等を指す
・駒を取る手が多い(駒損でも)
・悪手を指すが、それで負けるわけではない(千日手を除けば)
以上から、今のところ次のように考えています。まだ検証してはいませんが、脳内SIMLで再現できるので、たぶん間違いないと思うんですが。
今までのAリーグでは、詰みが見つかったら+∞(正確には、14bitのオール1)を返してました。ルートではβ=+∞-1としていて、1手でも+∞を返したら(βカットで)探索を終了してその手を返す、というふうにしてました。これで問題ないだろ、と思ってましたが、どうもこれがまずそう。
これだと、たとえば全幅8手読みで、圧倒的優勢で、「1手変な手を指しても、次相手が何を指しても、その後5手以内に詰む」という状況だとしましょう。その「変な1手」も、結局探索の評価値は+∞になるので、そこで探索終了してそれを指してしまいます。たとえ1手詰みの手があっても、手生成の順番しだいで、それが後の方にあればそこまで行きません。まあ仮に行ったとしても、評価値は同じ+∞なので、それが最初の(変な)手より良い、ということがわかりません。
駒を取る手が多いのは、最初に生成するから。千日手の1一馬も、最初の方に生成する手です。
だとすれば、対策はいくつか考えられるのですが、
案1)詰将棋ルーチンを持つ
たとえば反復深化の詰将棋をやればもちろん問題ないわけです。がAリーグにはありません。
案2)ルートで深さ1、2、…で反復深化する
これをやってれば、最初に+∞が見つかったとこで終わっても問題ないわけです。最短手数の詰みのはずなので。ただこれもAリーグはやってないです。
案3)詰めの評価値を一律+∞でなく、「+∞ - (詰むまでの手数)」とする
このアイデアはCraftyのソースのコメントを読んでて気づきました。ただ、これを読んだ当時は「何でそんなことすんの?別に+∞でいーじゃん」と思っておりました^^; この意味がようやくわかりました。これだと5手詰めが見つかってもルートでβカットになりません。3手詰めがあったら5手詰めよりそちらを優先します。1手詰みならβカットで終了します。
というわけで、大会終わってからまっさきにこの案3を入れました。その後検証してないですが、たぶん直ってる…んじゃないかな…
他のソフトはおそらく案1か2のいずれかをやってるんですよね。だからこの問題現れないんだと思います。この話、私の知るかぎりCraftyソース以外で見かけたことないです。
またこれ、自分より弱い相手とやらないと出てこない。KShogi初級やyowai_gpsくらいだと、勝つときも全駒にはならないので、気づくのが遅れたというのも敗因。強弱とりまぜていろんな相手と指さないと、と思いました。
[戦後統治]
大会終了後は燃え尽きてまして、しばらく何もする気が起きませんでした。上のバグ修正だけは気になってたので入れましたが、あとは小森霧状態。最近ようやく社会生活に復帰したところ。大会中にいろいろ情報を仕入れて、だいぶ改善ネタもたまってるので、TODOリストの検討からはじめたところです。来年までに何をするか?はまた次回。
…というわけで2回にわたりましてお送りしてまいりました「カズサ漫遊記」、いかがでしたでしょうか。次回からまた普通の開発日誌に戻る予定。
最近のコメント