2015-04-20 22:15
選手権まで、あと10日ぐらいなのかだぜ☆?
1日1時間でもプログラムの調査をしておくのは大きいんだぜ☆
そこで きふわらちゃんが
成らない理由が分かった☆
データの構造が原因なんだぜ☆
局面データは、
(指した手 現局面図)
の1対で持っている☆ そして、局面データは枝を持っている☆
(指した手 現局面図) 枝1 ──→略
枝2 ──→略
枝3 ──→略
枝4 ──→略
…
枝の先には、また別の 局面データが ぶら下がるわけなんだぜ☆
ここで、枝の兄弟1、2、3、4…の間では、同じ(指した手)が重複することはできない☆
重複したところで、同じデータなので無視するだけなんだぜ☆
このデータ構造には問題はないんだぜ☆
このデータ構造に変換する計算途中に、問題のデータ構造があったんだぜ☆
途中に、次のようなデータ構造があるんだぜ☆
(駒1 →進む先のマス1)
→進む先のマス2)
→進む先のマス3)
→進む先のマス4)
… )
駒が、次にどのマスに進むか、というデータなんだぜ☆
駒は、将棋盤上の40個の駒のことなんだぜ☆
このデータ構造だと、例えば、2二の角が8八に飛び込む、といった覚え方をするんだが、
不成なのか、成りなのか、判定できないし、判定していないんだぜ☆
なぜ こんなつくりで作ったかというと、第2回電王トーナメントに出るために
3ヶ月ぐらいの開発期間だったので 時間配分の都合で
「成る」ということを ばっさり はしょった からなんだぜ☆
じゃあ、この後回しにしてきた部分を、今回どう直せばいいのか☆ 考えてみよう☆
今 現在、
( 駒 ) → ( 進むマス1、進むマス2、進むマス3 )
という仕組みがある。 駒を指定すれば、
その駒が進めるマス全部返すんだぜ☆ これは 成る/成らない 関係なく使える☆
現状だと、この機能の直後に、
(
( 駒 ) → ( 進むマス1、進むマス2、進むマス3 )
)
↓
(
(指した手 その局面)
(指した手 その局面)
(指した手 その局面)
)
という変換があるんだぜ☆ ここで 【指した手】に、
この前作った【水際のいんちきプログラム】を使って
【成る手】 を水増しするのがいいんだろうか☆
23:03
いんちきプログラムの場所を 覚書なんだぜ☆
23:47
作れるかな☆と思って進んでいたら 詰まったんだぜ☆
2015-04-21 00:14
指し手に、駒番号なんか要らないんだぜ☆!
ごっつんこ は解消したので、明日は いんちきプログラムの開発を
進めたいんだぜ☆
問題点は どんどん 絞り込めているぜ☆
成果は
あり なんだぜ☆
微速微進、遅々前進なんだぜ☆!
[0回]
PR
http://grayscale.dou-jin.com/Entry/178/【将棋】めざせ世界コンピュータ将棋選手権☆(84) きふわらちゃんが成らない理由が分かってきたんだぜ☆ww