2015-04-19 14:16
きふわらべが なぜ成りをしないのかというと、
指し手生成ルーチンが、駒を成った手 を指さないからなんだぜ☆ww
じゃあ、指し手生成ルーチン 直せばいいじゃないか☆www というところなんだが
慌てるななんだぜ☆www
きふわらちゃんは、「動けるマスは全部でこれだけ」という【マス集合】を持っているだけで、
成るだの、成らないだの、
そういうフラグは 持っていないんだぜ☆
さて どうしたものか☆
例えば将棋盤上に 2階 を作って、2階に居る駒は成駒、1階に居る駒は成っていない駒、
ということもできるかもしれないんだが、無駄くさいんだぜ~☆
駒が変身するときと、変身しないときの2通りがあるなんて、
そういう仕組みに作ってないんだぜ☆
リーガルムーブ じゃなくて、
リーガルムーブアンド成り なんじゃないのか☆ww
「動けるマス一覧」を返したあと、別途、「成ることもできるマス一覧」も返せばいいのか☆
集合を2つ返す、みたいな……☆?
15:57
既存のプログラムでは、
この駒 → 動けるマスの集合
この駒 → 動けるマスの集合
…
この駒 → 動けるマスの集合
で、1セットの塊りにしているので、これを、
この駒 → 駒が成らずに動けるマスの集合
+駒が成って 動けるマスの集合
この駒 → 駒が成らずに動けるマスの集合
+駒が成って 動けるマスの集合
…
この駒 → 駒が成らずに動けるマスの集合
+駒が成って 動けるマスの集合
のように作り変えればいけるはずなんだぜ☆
うーむ、しかし これでは、駒が成らないマスと、駒が成るマス、どちらも同じマスなので
1つのマスに減らされてしまうんだぜ☆ むむ☆
18:42
18:56
要するに、 内部でどんなに集合論を使っていても、最終的には SFEN にしているので、
その水際で 【成り】 のコードを水増しするんだぜ☆ww
やってみるんだぜ☆ww
20:05
わはー☆ なんらかのバグを埋め込んでしまったみたいなんだぜ☆ww
今さっき 追加したコードが原因のバグに ほぼ決まってるだろう☆wwwwww
20:25
ログと格闘するんだぜ☆
23:30
23:48
「成り」が指し手から消える範囲は 絞り込んだんだぜ☆ww
0:04
バグの範囲をもっと絞り込んだんだぜ☆ 続きは、また今度だぜ☆
成りの指し手を ちょっと作り始めた☆ww
成果は
あり なんだぜ☆wwwwwwwwwwww
微速微進、遅々前進なんだぜ~~~☆wwwwwwwwwww
[1回]
PR
http://grayscale.dou-jin.com/Entry/177/【将棋】めざせ世界コンピュータ将棋選手権☆(83) 指し手生成ルーチンに、成りを入れたいんだぜ☆ww