コンピュータ将棋

2009年5月 9日 (土)

不名誉記録第2弾!

Y下さんの掲示板で取り上げられていましたが
3年連続28位だそうです。
そんな記録ばっかり。

情けない。

| | コメント (1) | トラックバック (1)

2009年5月 5日 (火)

おつかれ

ようやく落ち着いたので、結果は1次予選4勝3敗でもしかして初の勝ち越し? 後でチェックしよ~。
『かなり当たり所が良かった』というのが実感。
大会前日に他の将棋ソフトと調整対局したときに序盤から悪い手の連続。たぶん定石外しのつもりなんだろうけど酷すぎる。
中盤も勝負に負ける勝負手を指していたりと、見てて笑えるうちは良いんですけどね。

さて、来年に向けてではなく!囲碁のオープン戦に向けて頑張りますか。

| | コメント (0) | トラックバック (1)

2009年5月 2日 (土)

さてさて

昨晩のバグは結果を見る限りそれ程良くない。
今晩から明日の朝までの時間で調整がうまくいけば使うしそうでなければ止めると。

7項妙案はPCによってパラメータの最適値が2種類発生。一つは遅いPC、もう一つは速いPC用のパラメータ。
どちらを使うかな~。たぶん遅いPC用のデータだよね。明日の朝までには決定しよう。


残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → パラメータの決定待ち
.学習もどき → 時間が無いので現状でのまま放置
⑨.角頭の守り対応 → 対応済み
⑩.飛先の歩捨て対応 → 評価ミス、たぶん対応済み
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理!!
⑬.パラメータの最適化 → 納得いかない数値もあるが一応終了
14.学習もどき追加項目 → 放置
⑮.再度高速1手詰め(簡易版)のしきい値検討 → 6で行くつもり
⑯.再探索の追加 → 追加は決定、パラメータがまだ不安

残りは1項目

そろそろ出発の時間となりました。
それでは皆さん現地で。

| | コメント (0) | トラックバック (0)

2009年5月 1日 (金)

ここにきて

調整は今晩のみというこの時期に来てバグ(?)らしきもの発見。
昔昔作ったところをそのまま利用していたのがどうも今現在の使用目的と違う気がしてきた。
もう既に直して見て、修正前と後のどちらが良いか評価中である。
しかし、今さらそんなもの直して良くなったら逆にパラメータの最適化が無駄になりそうだ。
もう、今大会はあきらめるしかないようだ。

残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → パラメータを変更しながら対応検討中
8.学習もどき → 様子見 → 時間が無ければ現状でのまま放置する予定
⑨.角頭の守り対応 → 対応済み
⑩.飛先の歩捨て対応 → 評価ミス、たぶん対応済み
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理か
⑬.パラメータの最適化 → 納得いかない数値もあるが一応終了
14.学習もどき追加項目 → 8項と同タイミングで様子見 →放置する予定
⑮.再度高速1手詰め(簡易版)のしきい値検討 → 6で行くつもり
⑯.再探索の追加 → 追加は決定、パラメータがまだ不安

残りは4項目

| | コメント (0) | トラックバック (0)

最後のパラメータ

今日は休み♪
つい先ほど、最後まで残っていたパラメータに決着をつけた。実戦投入するPCにとっての最適値と評価用のPCの最適値が違うのが気に入らない。評価用のPCの方が速すぎるのだ。
今さら実戦用のPCに最適化するつもりも無いので、評価用PCの数値を使う事にする。仕方がないあきらめるか~。

7、16項用のパラメータも少しは最適化しようとPCをセットアップしてGO!
1時間もしないうちにPCがリセット。PCが暑さに負けている。このPC以前から暑さに弱いので今日はもう殆ど使えない、
まったく自己対戦させられないじゃないか!

残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → パラメータを変更しながら対応検討中
8.学習もどき → 様子見 → 時間が無ければ現状でのまま放置する予定
⑨.角頭の守り対応 → 対応済み
⑩.飛先の歩捨て対応 → 評価ミス、たぶん対応済み
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理か
⑬.パラメータの最適化 → 納得いかない数値もあるが一応終了
14.学習もどき追加項目 → 8項と同タイミングで様子見 →放置する予定
⑮.再度高速1手詰め(簡易版)のしきい値検討 → 6で行くつもり
16.再探索の追加 → 追加は決定、パラメータの最適化を行なう

残りは5項目

| | コメント (0) | トラックバック (0)

2009年4月30日 (木)

今晩中には

今日はというか昨日からパラメータ調整用に本番用のPCも使い出した。
なんとしても明日にはパラメータを決定したかった。
後1、2回で確定しそうなので、たぶん今晩中には最後のパラメータが決定すると思う。朝かな~。

妙案もどき、少しだけパラメータを変更してみると勝率が一気に上がった。自己対戦ならではの問題なんだろうか?現段階では考えている余裕がない。

残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → 対応方法検討中
8.学習もどき → 様子見 → 時間が無ければ現状でのまま放置する予定
⑨.角頭の守り対応 → 対応済み
⑩.飛先の歩捨て対応 → 評価ミス、たぶん対応済み
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理か
13.パラメータの最適化 → 現在進行中
14.学習もどき追加項目 → 8項と同タイミングで様子見 →放置する予定
⑮.再度高速1手詰め(簡易版)のしきい値検討 → 6で行くつもり
16.再探索の追加 → パラメータの最適化終了後にしようか?

残りは6項目。

| | コメント (0) | トラックバック (0)

2009年4月29日 (水)

あと一つ

以前からのパラメータの最適化、予定していたものの最後の一つがなかなか片付かない。(時間があれば他のパラメータもやる予定だ)
通常の思考時間による自己対戦でやらないと意味が無いパラメータなので1度の評価に丸1日位かかってしまう。それを5~7回位やる予定。残りは後3回ほど。対戦回数を稼ぐために同じ思考ルーチンで別のPCにやらせている。約半分の時間で済むと思われる。

それにしても残り時間がない。

残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → 対応方法検討中
8.学習もどき → 様子見 → 時間が無ければ現状でのまま放置する予定
⑨.角頭の守り対応 → 対応済み
⑩.飛先の歩捨て対応 → 評価ミス、たぶん対応済み
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理か
13.パラメータの最適化 → 現在進行中
14.学習もどき追加項目 → 8項と同タイミングで様子見 →放置する予定
⑮.再度高速1手詰め(簡易版)のしきい値検討 → 6で行くつもり
16.再探索の追加 → パラメータの最適化終了後にしようか?

1項目追加で残りは6項目。


| | コメント (0) | トラックバック (0)

2009年4月28日 (火)

本当に最適?

パラメータの最適化が終わりに近づいてきたので時間をかけて妙案を自己対戦させている。
以前はそれなりに効果があったはずなのに自己対戦の勝率は五分、殆ど意味が無いようだ。
しかし、アレだけ特殊な事をやっていて五分ってことは入れる価値はありそうだ。
入れ方をもう少し検討しよう。

最適化中のパラメータ。
読みが深くなるはずのパラメータだったのに、自己対戦を見ている限り読みが深くなっているとは思えない。
確かに以前よりは良さそうな指し手を選択するようにはなっているので、それで良しとしようと思う。
そうしないともう間に合わない。

最後に15項の再度高速1手詰め(簡易版)のしきい値は7が一番強いという結果が出た。
ただし、1手1秒の自己対戦なので少し加減して6で行こうと思う。


残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → 対応方法検討中
8.学習もどき → 様子見 → 時間が無ければ現状でのまま放置する予定
⑨.角頭の守り対応 → 対応済み
⑩.飛先の歩捨て対応 → 評価ミス、たぶん対応済み
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理か
13.パラメータの最適化 → 現在進行中
14.学習もどき追加項目 → 8項と同タイミングで様子見 →放置する予定
⑮.再度高速1手詰め(簡易版)のしきい値検討 → 6で行くつもり

残りは5項目。

| | コメント (0) | トラックバック (0)

2009年4月26日 (日)

パラメータの最適化中

今日は昨日からやっているパラメータの最適化を実行中。
PCが全部自己対戦中。暖房代わりになるくらい部屋が暖かいです。

残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → 未定
8.学習もどき → 様子見 → 時間が無ければ現状でのまま放置する予定
⑨.角頭の守り対応 → 対応済み
⑩.飛先の歩捨て対応 → 評価ミス、たぶん対応済み
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理か
13.パラメータの最適化 → 現在進行中
14.学習もどき追加項目 → 8項と同タイミングで様子見 →放置する予定
15.再度高速1手詰め(簡易版)のしきい値検討 → 現在進行中

残りは6項目。

| | コメント (0) | トラックバック (0)

2009年4月25日 (土)

あといしゅうかん

さて、後1週間。
ここに来て一杯一杯の状態でがんばってます。

10項の飛先の歩捨て問題を3日くらい掛けて探し回ったところ、11項を追加したときにバグを埋め込んでしまったらしい。やっとのことで解決したがその際あちこち見て廻ったためか、ソースの不満な部分をチラホラ発見。結局修正してしまった。これってよくなる方向なんだろうか?
特に評価関数を修正したりしたのでパラメータの最適化は最初からやり直しという大変な状態に突入。PCが燃えてしまうかも知れない(笑


残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → 未定
8.学習もどき → 様子見 → 時間が無ければ現状でのまま放置する予定
⑨.角頭の守り対応 → 対応済み
⑩.飛先の歩捨て対応 → 評価ミス、たぶん対応済み
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理か
13.パラメータの最適化 → 現在進行中
14.学習もどき追加項目 → 8項と同タイミングで様子見 →放置する予定
15.再度高速1手詰め(簡易版)のしきい値検討

残りは6項目。


| | コメント (0) | トラックバック (0)

2009年4月21日 (火)

手っ取り早く今の残問題

大変だ大変だ!

残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
⑥.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → 未定
8.学習もどき → 様子見
⑨.角頭の守り対応 → 対応済み
10.飛先の歩捨て対応
⑪.飛車の逃げ → 対応済み
12.高速化 → 無理か
13.パラメータの最適化 → 現在進行中
14.学習もどき追加項目 → 8項と同タイミングで様子見

残りは6項目。

| | コメント (0) | トラックバック (0)

2009年4月12日 (日)

若干あきらめモード

今週は飛車と角の評価関数の変更とその評価を行なった。
今までは角が死に易かったのがそれ程酷くは無くなった。
飛車はまだ良い結果が出てこない、もう少し評価関数の変更が必要だ。
学習もどき、無いよりは有った方が良い様だ。しかし、うまく使いこなせない。
残り時間がもう無いので今まで一般的な評価で対応しようとしていた角頭の守り、飛先の歩捨て、飛車の狭いところへの逃げ、の3点を矯正する。
後は全体的な高速化も必要だ。

残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
③.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ
④.変な手を指している → 王の25近傍の評価値に原因があったようだ
⑤.頓死が多い → 対応を考える
6.打ち歩詰めが発生 → 対応しない予定
7.妙案対応 → 未定
8.学習もどき → 様子見
9.角頭の守り対応
10.飛先の歩捨て対応
11.飛車の逃げ
12.高速化 → 無理か

| | コメント (0) | トラックバック (0)

2009年4月 5日 (日)

作業中断中

何故か今週は忙しかった。やらなければならなかった事を殆ど何もしていない。

まずい!

残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
3.終局までの手数が長い → 王の25近傍の評価値に原因があったようだ → 修正して様子見
4.変な手を指している → 王の25近傍の評価値に原因があったようだ → 様子見
⑤.頓死が多い → 対応を考える
6.打ち歩詰めが発生 → 対応しない予定
7.妙案対応
8.学習もどき → 止める予定

| | コメント (0) | トラックバック (0)

2009年3月22日 (日)

妙案なのか

前回仮投入した妙案を継続して調査中。合わせて問題点の修正中。
で、例の妙案は効果が出やすいように修正中である。来週までには結論が出て欲しい。

それと、もう一つ改悪。以前から入っていた学習もどき。もうそろそろ学習効果が出ても良い頃合と見込んで表形式の数値化してみた。何となく不満な数字が並んでいる。思い切って評価値にぶち込んで見る。予想以上に悪い結果だ。このまま、1,2日連続対戦を続けてみるが良くならなければ、さっさと止めるに限る。


残っている問題
①.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
②.高速1手詰め(簡易版) 6>10>7=8 → 頓死が多い原因だ。 当面6で調整
3.終局までの手数が長い → 様子見
4.変な手を指している → 様子見
⑤.頓死が多い → 対応を考える
6.打ち歩詰めが発生 → 対応しない予定
7.妙案対応
8.学習もどき → 止める予定

| | コメント (0) | トラックバック (0)

2009年3月14日 (土)

妙案

妙案を仮投入してみる。
妙案以外を同じにして自己対戦を行なってみる。何故か僅かに強い。もしかして効果があるのかもと期待してしまう。
自己対戦の棋譜を眺めてみると最初に気が付くのが、
1.終局までの手数が長い
2.変な手を指している。それがきっかけで勝負がついてしまっているような感じ
3.頓死が多い
4.打ち歩詰めが発生する
とこんなところ。

もう少し調査してみると
3.頓死が多いは、詰めろ時の初手の選択がまずいらしい。妙案とは別に元々あった問題のようだ。
4.打ち歩詰めが発生するは、未対応な問題。
2.変な手を指しているは、学習機能が働いているのが悪さしているような感じがする。もう少し様子を見てみたい。
1.終局までの手数が長いは、どうやら妙案の効果と考えられる。この効果良いのか悪いのか。


残っている問題
1.静止探索は今の探索と評価ルーチンにはなじまない事 → 一旦放置。静止探索は行なわない
2.高速1手詰め(簡易版) 6>10>7=8
3.終局までの手数が長い → 様子見
4.変な手を指している → 様子見
5.頓死が多い → 対応を考える
6.打ち歩詰めが発生 → 対応しない予定


| | コメント (0) | トラックバック (0)

2009年3月 7日 (土)

この1週間

特に大きな変更なし。
深く読めるように何か妙案は無いかと考えつつ、ちょっとしたパラメータのチューニングのみ。

そのチューニング中に気付いた事。
1.静止探索は今の探索と評価ルーチンにはなじまない事
弱くなる。確かに戦形によっては強いようだが、自己対戦の勝率は明らかに悪い。自己対戦というところが実は微妙に怪しいのだが。

2.高速1手詰め(簡易版)
盤面の進行状態により高速1手詰めを行なっている。その盤面の進行状態として、序盤度、終盤度の2パラメータを使っているのだ。以前は終盤度10から高速1手詰めを行なっていたのを変更したくなったので、終盤度6、7、8と10を自己対戦してみた。強い方から並べると6>10>7=8となった。意味不明。
これで、さらに問題が増えてしまった。

| | コメント (0) | トラックバック (0)

2009年3月 3日 (火)

前回の結論

休み中に書く予定が書けなくなってしまったので、今頃の書き込み。
結論は読み不足の様です。ちょうど読みを打ち切っている手数当たりで手毎の評価値の変化が大きいようです。
読み時間を1時間くらいに設定して放置しておいたら1六歩はなくなりました。その時の読みは4六飛。
まあ、妥当なところですかね。

読みの打ち切りに関して何か対応した方が良い気がしてきた。

| | コメント (0) | トラックバック (0)

2009年2月28日 (土)

結局

先週末から静止探索を入れた。しかしながら、思ったほど強くならない。静止探索を入れないものとの対戦させてみると勝率は20%程度。
静止探索が重いのが原因のようだ。重くなりそうな部分を見つけては修正してみるものの結果がよくならない。
そうこうしているうちに新たな問題が発生。評価関数らしいが原因不明。

| 全 ・ ・ ・ ・ ・v角v桂v香
| ・ ・ ・ ・ ・ ・v金v玉 ・
| ・ ・v歩 ・ ・v銀v銀v金 ・
| ・ ・ ・ ・ ・v飛v歩v歩 ・
| ・ 飛 歩 歩 ・ ・ ・ ・v歩
| ・ 角 ・ ・ 歩 ・ 歩 ・ ・
| ・ 歩 桂 ・ ・v歩 ・ 歩 歩
| ・ ・ ・ ・ ・ ・ 金 銀 香
| 香 ・ ・ ・ ・ 歩 金 桂 玉
先手持駒:桂 香 歩五
後手持駒:
手数=93 まで
後手番

こんな盤面の後手番。自分でも何が正しいのか分らない盤面なのだが、なり金が選択したのは1六歩。
いくら手がなさそうな盤面だからといって、ここで1六歩は無いじゃない?4六飛の方が良くない?
今週末はこの盤面で1六歩を選択する理由を見つけたいと思う。

| | コメント (0) | トラックバック (0)

2009年2月22日 (日)

憑き物

内容的には前の続き。
修正にバグは憑き物だ。今回も当然のように憑き物が出てきた。今回の修正で出来たものは良しとしよう。しかし、以前からある憑き物は困ったものだ。

例えば、思考時間の関係で探索を中断したときにそれまでの途中結果を何故か捨てている。不思議だ。
修正してみる。明らかに以前より手が悪い。中断処理に憑き物が居た。ここって修正するのは何年ぶりなんだろうか? その位前から憑いていたらしい。そこも修正するとようやく修正前と同じくらいに復帰。めでたしめでたし。

以前に作成していた静止探索ルーチンも憑いていた。こっちは評価値の反転現象。ルート局面では合っているのに2手4手と偶数手側に反転現象発生。先後を入れ替えただけでは分らなかっただけに混乱していた。

こういったものも、探索ルーチンの一本化によって見つかったのが大きい。元々は理解しやすいαβ探索しかもNULLウィンドウ用は別関数という探索ルーチンだったのだ。最近になっていちいち4箇所も修正するのが面倒になりNegaαβしかも関数1本に統一したのだ。このときに評価値の+-の反転がゴチャゴチャしてきて、いろいろと確認している間に憑き物が見つかってきたのだった。

| | コメント (0) | トラックバック (0)

2009年2月21日 (土)

静止探索

静止探索を入れるにあたり探索ルーチンと評価関数を修正してみた。今現在この手の修正は大変と思いながらも修正開始。理由は3台のマシンで別の開発作業をしていたからなので、1台はボナンザ相手に評価関数の適正化、1台はマルチコア対応、最後は探索ルーチンの一本化。静止探索を入れるには一旦まとめなければならない状態だ。
とはいえ、もうまとめもしたし静止探索も埋め込んだんですけどね。

| | コメント (0) | トラックバック (0)

2009年2月15日 (日)

約1週間

約1週間ボナンザと連続対戦させていた。出来上がった約3000の負け棋譜。分った事はボナンザは凄い!特に学習能力が凄い。
最初の頃は中盤から悪くなっていくパターンがあったが最近は殆どが序盤から悪くなっている。さっさと定石を外してくるようだ。たぶん、それが勝ちの最短パターンなのだろう。

前回から、飛車、角、桂、香の評価値を修正してみた。確かに評価値が変になることは少なくなった。しかし、まだ異常な評価値になる事が多い。これは、静止探索をしていない弊害なのは分っている。気持ち的には入れたくなかった静止探索。入れてみて様子を見てみよう。

| | コメント (0) | トラックバック (0)

2009年2月10日 (火)

やはりボナンザは強い

昨日の発言通り一晩放置した結果は631戦全敗だった(笑
そうなるだろうと予想はしていたが、なってみると気分が良くない。
全てを解析しているわけではないが中盤で一気に悪くなっている気がする。
それと、ボナンザの評価値と大きく違うところがある。なり金の評価値のクセのようだ。
明日には、何か対応を考えよう。

| | コメント (0) | トラックバック (0)

2009年2月 8日 (日)

267分の1

少し前からボナンザと対戦させようとしてGUIを修正してました。それが昨日大体動くようになったのでボナンザに連続対戦開始。一晩放置して、朝まで動いていれば完成のつもりでした。

今朝起きてみると、残念なことにPCの電源が落ちていました。うちのPCは電源管理で1時間程度放置すると電源が落ちるように設定済み。ということで「バグ落ち」だろうと思いつつPCを立ち上げてみる。

思ったとおり267局目の詰み画面で停止してました。なぜこんなところで止まっているのか調査をしたところボナンザの玉が詰んでいるじゃないですか!!
昨日の今日でボナンザが負けるとは思ってもみなかったので、その当りはちゃんと作りこんでいなかったのが原因。ボナンザって投了しないモードに設定すると投了してくれないのね。投了しないのであれば詰み判定を投了に書き換えて修正完了(のはず)。また、今晩連続対局させてみよう。

しかし、いくらハンデ戦だからといってもボナンザに勝てるとは夢にも思わなかった。

| | コメント (1) | トラックバック (0)

2009年2月 7日 (土)

やっと入れた

ご無沙汰してます。
コンピュータ将棋に申し込んだときから書き込み再開しようと思っていたんですが、パスワード忘れてしまいました。
やっと、パスワードを覚えているPCを見つけそこからの投稿です。
今回は報告のみです。

| | コメント (0) | トラックバック (0)

2008年5月24日 (土)

小宮さん曰く

要は序中盤~
ぜひそんなことを言って見たいものです。
なり金はそのレベルに達していないので研究する気も起きません(笑

まずは終盤をいや中盤ももっとよくしなければ。

| | コメント (1) | トラックバック (0)

2008年5月18日 (日)

GUIの続き

小宮さん、floodgate対応CSA将棋の情報をありがとうございます。
しかし、今のところ強くする元気がありませんのでのんびりとGUIをfloodgate対応していくつもりです。

| | コメント (0) | トラックバック (0)

2008年5月17日 (土)

GUIだったり

floodgateに入りたいと思ったのですが、GUIの連続対戦用変更に失敗しています。
最近、ソース触ってないからどう変更したらうまく直せるのか分らない。
面倒になったので、前々から気に入らなかったところを大幅に改修することにします。

なにをやっているのか(笑

| | コメント (1) | トラックバック (0)

2008年5月12日 (月)

ようやく

第18回コンピュータ将棋大会が終わり、さらに体調を崩した後落ち着いたところです。
結果も書く予定ですが、あまりの結果に(笑)まだ書く気がしませんのでそのうちに。
時期的にはコンピュータ囲碁も特別例会が6月21日にあるので、既にそちらを始めています。

話は将棋に戻って、floodgate登録しようと思ってます。
まだ、接続するための処理を作りこんでいないのでこれから作って行く予定です。

| | コメント (0) | トラックバック (0)

2008年5月 2日 (金)

前日

もう今日は前日です。
そろそろ移動開始します。
結局、大した変更も出来なかったです。
今日は、ホテルに着いてから簡単な修正をして終わりの予定です。

| | コメント (0) | トラックバック (0)

2008年4月27日 (日)

もう新しい事は入れられない

もう時間的には新しい事は入れられないと思いながらも深く読ませるための細工をしています。
つい最近LMRの効果を試したくなったので簡易的に入れてみました。1手目の全指し手の1/2毎にを深さ-1するの場合と1/3毎に-1する方法を試験してみました。
確かに読みを深くする効果は絶大ですが強くはありません。多分深さが切り捨てられている部分に良い手が多いということなのでしょう。
現在これをうまく利用する簡易な方法が見つからないので、何か良い方法はないかと画策中。

そういえば中尾さん不参加表明してましたね。残念です。

| | コメント (2) | トラックバック (0)

2008年4月20日 (日)

visual stdio 2008続き

ようやく、てなずけられたかも。
しかも、今まで悩みの種だった速度の問題。それも随分速くなったし。
今まで気が付かなかったバグまで気付いたし。
visual stdio 2008導入は成功した気がする。
因みに、開発に関してはここに載せられるような進展がないのが残念。
詰め将棋のバグが取れたくらいかな(笑

| | コメント (0) | トラックバック (0)

2008年4月19日 (土)

visual stdio 2008

最近になって visual stdio 2008 を導入してみました。
コンピュータ将棋のためではないところが面白くないです。
実際、仕事で使うのでPCにインストールしたのですが、使い勝手が良さそうに思えたのでコンピュータ将棋にも導入してみたのですが、現在使い方が良く分らず苦戦中!
もともとVC6使っていたのでギャップが10年無理も無いな~

| | コメント (0) | トラックバック (0)

2008年4月12日 (土)

このところ

 最近評価関数の変更をしていたんですが、どうやら今の評価関数ではこの先対応できそうも無い事が分ってきました。
それなりにショックです。
もっと考えて評価関数作ればよかった。
無理があるようです。
あー。もうダメだ

| | コメント (0) | トラックバック (0)

2008年3月31日 (月)

なり金の手生成

なり金の手生成は単純?な全探索です。
そんなことを書くとbona系と思われてしまうかも知れませんが実は違います。
大元は逐次生成だったのです。
しかし、他いろいろなところにバグが有るのに気付かずに「逐次探索は生成に時間がかかる」と判断し(実際その当時は全探索の方が速かった)全探索に変更しました。
影響を受けたのは「激指」でした。
今のように進歩本に頼ったり論文を読むわけでもなく「劇指」を自分なりに解析して、当時のプログラムに合う方法として全探索を選択したのです。

| | コメント (0) | トラックバック (0)

放置しすぎ

あまりに放置しすぎたので言い訳。
仕事が忙しかったんです。

王の25近傍を検討していてだんだんと主原因がここではない事が判明。
自己対戦でパラメータのチューニングしているときだったから、時間がかかった訳。
つい最近になって評価関数に原因があることが分ったんです。
なので最近は評価関数のチューニング中です。

ところで、西村さん?だったかな「強さにnpsは関係が無い」ようなことを仰ってたと思いますが、その手のことを実感しました。
手の生成ルーチンと評価関数は殆ど同じものを使っていても 、深く読ませようと細工を入れると nps が落ちます。
例えば、7手位読んでいたときは nps が 20万有ったのですが、11手位読ませる細工を入れると nps が10万を切ります。
なぜなんでしょう?細工に問題でも有るんだろうか?
でも、11手読ませた方が強かったりしたんですよ。評価関数がダメなので意味無いかも知れないですがね。(笑

| | コメント (2) | トラックバック (0)

2008年3月 2日 (日)

今日は休み

今日はコンピュータ将棋とは全く関係の無いことをやっていたので、残念ながら高速1手詰めに関しては進展なしです。
とは言うもののPCを遊ばせておくわけにはいきませんので、王の25近傍の評価値の再検討をPCにさせてみました。
その概算結果、王の25近傍は歩を100点として1マスにつき100点が良さそうです。
これ以上のデータを取っていませんので詳細は不明です。
今後はこの数値も検討課題にする予定です。

というより、高速1手詰めが終わったら検討するつもりだったのですが何時になっても高速1手詰めが仕上がらないので先に進めなくてはまずいです。

| | コメント (0) | トラックバック (0)

2008年3月 1日 (土)

高速1手詰め(まだ途中)

小宮さんがコメント入れてくれているので、高速1手詰めの考察。
>>misakiでは効果が少ないですか。
> いえいえ効果絶大ですよ。
完全に意味を取り違えてました。
ただし、なり金は静止探索を使わない予定なのでmisakiと同じ効果は出ませんね。

> 終盤では、6万手ぐらい1手詰めはヒットしますよ。
それを聞いてヒット数を算出してみました。
2万~3万程度はヒットしているようです。
そこで気付いたのですが、高速1手詰めが機能する前、つまち中盤までのうちに差が広がりすぎているようです。
せっかく入れたのでうまく機能しないのは納得いかないので終盤だけに機能するように変更して再度挑戦します。

>1手詰めは、移動王手もですか?
なり金も現在は、処理時間がかかりそうなので打つ手のみです。
元々は王手を取得するルーチンを改造して使っているので移動王手も実装は簡単そうです。

| | コメント (2) | トラックバック (0)

2008年2月25日 (月)

入玉対策も必要なの?

下の局面見てやってください。
連続対戦でこんな棋譜作られても評価関数の評価には使えないのではないかと思ってしまいます。


P1+TO +OU+TO+TO+TO
P2+RY +NG+TO
P3 +UM+KI+TO+TO
P4 +KY-UM -FU
P5
P6 -TO-TO
P7 -RY -NK-FU-TO-NY
P8 -NG-NG-TO-TO-TO-TO
P9 -NY-TO-NY-TO-NK-OU
P+
P-00KI00KI00KI00GI00KE00KE
+


それは、別として自己対戦問題は良い方向に向かっているようです。

高速1手詰め入れては見たものの、入れる場所が悪いせいか入れたほうの勝率が悪い見たい。
なにか、勘違いしているのかな?

| | コメント (4) | トラックバック (0)

2008年2月24日 (日)

自己対戦問題

この前話題に載せた自己対戦での同一局面頻発問題。
学習に似た手法を取り入れて何とか形にしてみた。パラメータを2種類用意して一晩放置。
パラメータの小さいほうはあまり効果が内容で同一局面がそこそこ発生。
パラメータの大きいほうは少しは効果がありそうだ。33局面中1回しか発生していない。
まだ、効果の程は不明だがこのパラメータの大きいほうを当分使うことにする。

今日は、高速1手詰めを入れるとするか。

| | コメント (0) | トラックバック (0)

2008年2月21日 (木)

自己対戦の問題

昨日、一晩使って自己対戦させてみたのですが、やはり自己対戦は問題があります。
勝つべき方が44戦中11敗。そのうち7敗が同一棋譜という。
序盤にはそれなりに乱数で振っているはずなのに変化のでないパターンというのは発生してしまうのだと実感した。

| | コメント (4) | トラックバック (0)

2008年2月20日 (水)

小宮さんはやっ

小宮さん、反応早すぎ。
私の場合MC囲碁から開発が連続しているせいか、MCで良いものを作るのは、時間が無い私の場合無理と判断してます。(時間の取れる?さんには勝てるはずは無いですからね)
という事で、既存の有効部分とMCの有効部分をうまく組み合わせたかったわけですね。

>MCだけだと、まだまだ強くするのは難しいでしょうから~
未だにMC=囲碁から離れられないのです。(笑
でMCに関して、私は「探索ルーチンの特殊パターンとしてMCが存在している」と理解してます。
既存の探索ルーチンに不足しているものを持っているのがMCではないかと。
その不足しているものは勝敗。
なのでもしかしたらαβ法でも勝敗を基準に探索できたらMCよりはるかに良い結果が出るでしょう。
ありえないですね。

今日はベロベロに酔っているので内容がまとまらない。

| | コメント (2) | トラックバック (0)

1000POについて

小宮さんの反応があったので私的意見。

単純なMCでは最低でも10000PO欲しかったんです。
なぜかというと既存の探索を使いたかったので評価関数の一部として使おうと思っていたのですが、評価関数だと呼ばれる回数が桁違いに多くなるのでできるだけ速くを目標にしたわけです。
逆にUTCとか使うとなると既存探索ルーチンは使えなくなる気がしたので、大会まで日が無いし今回は却下。

来年のために作るならMCをうまく使ってみたいですけどね。

| | コメント (1) | トラックバック (0)

2008年2月19日 (火)

将棋でもMC

最近小宮さん所でやっているモンテカルロ(MC)法。興味ありますよね。
先月の内にbitmapが完成していればMC使う予定だったんですけどね。
バグが有ったのも問題ですが、単純MCなのにplauyout数があまりにも少なかった(確か1000位)ので止めちゃいました。
時間がもっとあればMC法を使いたい所ですが、未だに去年のレベルに達していないので現状ではやめておきます。

小宮さん頑張れ!
有効な情報があればいただきのくらです。

| | コメント (1) | トラックバック (0)

2008年2月17日 (日)

速くなる

プログラムにバグは付き物だ。しかし、今回のバグはありがたい。
bitboard対応してから、何故かあまり速くない。以前にも書いているが、いろいろな場面で速度を調査してみると明らかに遅い。速度的には2~3割遅くなっていた。
その後、結局速度アップが望めそうも無いならbitboardを止めてしまおうかと考えつつ評価関数を修正し始めたのだった。

王手無視の手の生成を止める修正をしているうちに、bitboard対応以前の部分に大きな問題が見つかってしまった。前のプログラムは王手無視の手を生成できるだけの情報を持っていなかったのだ。
どちらを採用するか決めないまま、前のプログラムの修正をしていた。やはりというか当然というか深みにハマってしまった。
その深みで少しもがいてみたものの、やはり長い時間をかけてたどり着いた結論(王手無視付きで生成)を1、2日でなんとかできる訳もなかった。

結局のところ、王手無視を止めさせるにはbitboardを採用するしか無かった訳だ。しかし、ココに隠れていた。
どうも、コンパイルもリンクも出来るのでバグではないかもしれないが、プログラムの書き方の気に入らない部分があって前々から引っ掛かっていたので思い切って修正してみた。
どんな修正かというと、&をつけただけ(w
元々はポインタ渡しをしたかったのだが、理由は忘れたが「&をつけなくても良し」と勝手に思い込んでしまったらしい。
何箇所かあるその&を付けて、コンパイル、リンク、実行!
う~~ん。速っ。
少なくても去年のバージョン程度には速くなった模様。しかも、王手無視対応済み。

これで少しは期待が持てそう。まだまだ、先は長い。

| | コメント (0) | トラックバック (0)

2008年2月 9日 (土)

ここ1週間の開発

かぜ引いてからは劇的な開発してません。
この前のバグ修正したら、探索速度が気になり始めて、速度を上げる修正中です。

まずは評価中に一番時間を使っていそうな駒の評価関数の変更です。
今までは王位置からの距離でテーブル駒の評価倍率を入れていたのですが、ここに評価値をダイレクトに入れるようにしました。(以前から修正しようとして忘れていたんですね(w)

次に線の利きを作成するときに、敵王を無視する。
これは、去年か一昨年の大会後の残念会(当り?)で聞いたのですが、まだ対応していなかったので入れました。
王手無視の局面などで、多少弊害があるのですが、問題ないでしょう。

今、修正し始めたのが王手無視の手を生成しないように変更です。
以前は、当時として速度を上げるのが目的で王手無視の手を生成していました。その後で駒を移動しても王手が消えない場合に駒を戻していたんです。この方法の方が探索速度が高かったんですね。
しかし、この方法は駒の移動を重くした現在の方法にマッチしないだろうということで変更開始です。

今日はこの後続きをします。
これが終わったら水平線対策でも考えます?

| | コメント (0) | トラックバック (0)

2008年2月 4日 (月)

かぜなのに

もう昨日のこと。
かぜなのに、それともカゼだからなのか、だるいと思いながらも棋譜を眺めていると何か変な動きをする場面を発見。
何度見てもおかしいので、評価値を検証してみる。やっぱり何かがおかしい。
本来なら王の評価値が下がるはずなのに下がっていない。というより王の評価値が下がっているのに全体の評価値の変化がおかしい。
よく理解できない頭でパラメータをあれこれいじってみるけども、思ったとおりに評価値が上下しない。
最後の手段としてステップで追いかけてみて、ようやく発見。
なんと、王の評価値は常に後手の評価値として減算されていた。
どういうことかというと、先手王の評価値が上がると、先手側の評価が良くなる。後手王の評価が上がると先手側の評価が上がる。
これじゃ、寄せが下手な訳だ。

去年からあった大きなバグ発見の瞬間だった。

| | コメント (0) | トラックバック (0)

2008年2月 3日 (日)

カゼか?

GA将!さんところでも話題に上ったみたいですが、この1週間殆どカゼでダメダメです。多分インフルエンザだよね。
一日中熱っぽい状態がもう5日位続いている。
早く体調回復しないかなぁ。

| | コメント (7) | トラックバック (0)

2008年1月28日 (月)

bitboard速度

昨日、ブログ書いた後にbitboard版との速度を比較するために、空いているPCで旧バージョンの探索速度を見てみました。
多少速度の遅いPCだからなのか、それとも探索評価処理をbitboard用に書き換えているためかbitboard版のほうが速くなっているようです。
期待したほどではないのが残念。
それも、まだデバッグ版での比較なのでほとんど意味をなさないのも事実です。
近いうちにリリース版比較してみます。

| | コメント (0) | トラックバック (0)

2008年1月27日 (日)

今度こそ

本当に、多分、ようやく、駒の動作からバグがなくなった気がします。
なにしろ1晩放置してもアサートには引っ掛からないし、止まりもしない。良かった良かった。
これで、ようやくBitBoardは完成だろう。かな。

で、放置中に探索速度を眺めてみているとあまり早くなっているような気がする。
デバッグモードだからなのか、それともアサートが多すぎなのか。
もしかして、biitboardの良いところを使いこなせていないのか。ショック!

てな感じで、この後は前々から気に入らない評価関数に手を入れる予定。
評価関数に手を入れる以上、今年の目標は白黒ハッキリさせること!

| | コメント (2) | トラックバック (0)

2008年1月19日 (土)

そーいえばオープン戦

改めて書く事も無いですが、今の状況から考えて参加できないでしょう。
と、いうまでも無く参加しません。

| | コメント (0) | トラックバック (0)

あ~忙しい

どうやら、Bitmapのバグが落ち着いたようだ。ということで、今日から既存のプログラムに移植するのだが。
既存部分とのインターフェースについて全く考えずに作ってしまったため手間がかかりすぎる。
この分だと今日明日ではエラーを取りきれなさそうだ。

| | コメント (0) | トラックバック (0)

2008年1月16日 (水)

やったかも

なかなか、バグが消えなかったが。
昨日、今日と連続テストでは問題が発生していない。
もしかして、大きなバグは消えたのか?
もしそうなら、早速思考ルーチンの改良に取り組みたいところだ。
一応明日まで様子を見ることにする。

| | コメント (0) | トラックバック (0)

2008年1月14日 (月)

昨日1日

昨日1日バグ退治したつもりだった。
ダメだった。

| | コメント (0) | トラックバック (0)

2008年1月13日 (日)

事件?

ここ最近、仕事に追われているせいかあまり開発に力を入れてません。
一応BitBoardはテスト導入したので、デバッグしなければならないのですが、面倒。
しかし、単純なデバッグ作業はPCにやらせているのでボチボチとバグを見つけてくれます。
その中で、最近大きな事件が見つかりました。
なんと、去年のバージョンの部分です!
線の利きの一部(←全てで無いところがポイント)作成されていなかったという事。
内部は差分で計算していたから実情はもっと酷い状況だったに違いない。
どおりでたまに変な手を指すと思った。

BitBoardの本格導入には気が引けるなぁ~

| | コメント (0) | トラックバック (0)

2008年1月 4日 (金)

見落とし発見!

どうやら線の利きを処理する時用のデータが足りない。
慌てて入れるとバグの元なので少し頭を冷やしてからやることにしよう。

| | コメント (0) | トラックバック (0)

2008年1月 3日 (木)

もう3日

今年に入ってもう2日も経ってしまった。
「BitBoardを含む盤面情報のデータ」については主要部分については実装完了。
これで、細かいデータの追加、コンパイルエラー取り、デバッグまで終われば一応予定通りとなるわけだが、予定していた日数は今日までなので、まず間に合わない。
デバッグ残し ならGO!かな。

しかし、実装しながら思うのだがあまり速くなら無い気がするのは気のせいだろうか?
やっぱりコードが手抜きだからいけないんだろうなぁ。
ちゃんと動いたら高速化をしなければいけないんだろうなぁ。

| | コメント (0) | トラックバック (0)

2007年12月31日 (月)

むずい

『長い休みにも入ったので開発を再開しました。』とは中尾氏の言葉。
そういう私もこの休みに勝負をかけてます。
この期間にBitBoardを含む盤面情報のデータを完成させられなければ、参加は見送りか、去年の焼きなましで参加ということで。

しかし、BitBoardにするデータというものは何が良いのだろうか?
思いつく(=コード化)データといったら

1.駒毎の位置
2.駒毎の利き
3.駒毎の移動可能範囲
4.全駒の位置
5.手番毎の駒位置
6.手番毎の移動可能範囲

こんなところだろうか。

| | コメント (1) | トラックバック (0)

2007年12月25日 (火)

久々に将棋

昨日久しぶりにコンピュータ将棋のソースを見た。
実に7ヶ月ぶりという過去には無い位放置していた。
で、早速コンパイルしたら山のようにエラーが発生。
そのエラー行を見てみると、次回の大会用に変更案が日本語で書かれている。しかも、コメントではなく。
さっさとコメントにしてみると素直のコンパイル出来たのだが、変更案が山のように書かれている。
時間的に無理な気がする。
まあ、年末年始の休暇が取れたらそのときにはソース修正できるだろう。
考えるのはその後にしよう。

| | コメント (0) | トラックバック (0)

2007年10月14日 (日)

コンピュータ将棋関連

とうとう遠見さんも開発に復帰されてしまいました。こっち
これでまた開発合戦が激しくなるんだろうなぁ。
もう、コンピュータ将棋の開発に復帰していない人いないんじゃないのかなぁ。

うちは全然開発してませんよ。本当になにもしてませんよ。
こんなんで来年は参加できるのだろうか?今年のプログラムのままという事になってしまうのか!

| | コメント (0) | トラックバック (0)

2007年5月 7日 (月)

結果

 大会終わってしまいました。何か気が抜けたようでまずいです。
 結果は1次予選10位、1次予選通過はなりませんでしたが、総合で28位という今までに無い快挙です。他のチームにしたらたいしたことは無いですがね~。しかも、1敗しかしなかったという全くもって信じられないくらいの出来でした。
 あとで、HPで棋譜などを発表したいと思います。

| | コメント (0) | トラックバック (0)

2007年5月 2日 (水)

さてと

 そろそろ、準備も出来たし出発しよう! なんか、緊張してきたなぁ。

| | コメント (0) | トラックバック (0)

2007年5月 1日 (火)

修正終了?

 皆が皆言っているようにもう時間が無くて修正出来そうも無い。まあ、いつも一回戦下位グループだからそんなに真剣にならなくてもいいのだけどね。
 明日は現地入り、多分18時くらいにはホテルにいるか会場でLANの試験している予定。

| | コメント (0) | トラックバック (0)

2007年4月29日 (日)

ああ~っ

 さすがに時間切れを感じずにはいられないなぁ。もう、今から導入して仕上げるだけの時間は無いだろうし、単純なパラメータ変更は時間がかかる割には変化が少ない。
 困ったなぁ~

| | コメント (0) | トラックバック (0)

2007年4月21日 (土)

後がない!

 前回更新から約3週間。学習についていろいろ実験してみた。評価値の学習、あちこち検索してある程度プログラムしてみたがうまくいかないのでパス。ならば探索速度向上用のパラメータを学習させようとしてみるが、うまく収束しない。パラメータ(評価値)不足なんだろうけど気持ちが焦っているためかとっととあきらめる。最後に静止探索の代わりに学習値を使用できないかと、これはパラメータが収束してきているが、静止探索値との開きが大きい。その辺少し調整すれば使えそうな気がする。しかし、この状態で今日なのでこれを入れるのは無理と判断。今までに作ってきた状態で最終調整で終了する事にした。
 Aspiration、結果的には探索が遅くてダメだった。Aspirationを入れていないものと対戦させても負けの連続なので採用不可。既存の探索ルーチンとの相性が悪いのかも。
 NullMoveは良い方か悪い方かは判断が難しい所だけど少しだけ効果がありそうだ。この場合のNullMoveは拡張NullMove(と名づけた)でNullMoveの探索深さを有る条件の場合に浅くしてしまおうという発想。探索を浅くするのでNullMove探索にかかる時間が減らせるのでその分有効な探索に時間をかけられるのではないかと。実際に入れてみると序中盤には効果がありそうなものの終盤は良い手を見逃す事が多い。ということでこれは採用してみることにする。
 まあ、こんなところで最終的な探索ルーチンの完成とします。後は、手動で変更しているパラメータを最適化していきます。あ~~今回もあまり強くならなかったなぁ。

| | コメント (0) | トラックバック (0)

2007年3月31日 (土)

他に

 単純な探索の高速化は大分煮詰まってきました。ただし、データ構造の変更を除く。ここにはまだ高速化の余地があるのですが今年の大会までにバグが取れなそうなので不可!
 あと、考えられるのはNullMoveとAspirationだけかも。今日はAspirationの比較をしてみるけど無駄っぽい気がします。
 もう、その手の高速化はダメそうなので別のPCを使って学習について考えてみた。…固まったのでまた後で。

| | コメント (0) | トラックバック (0)

2007年3月28日 (水)

PVS

 サクッとコーディングしてみました。最低な結果が・・・。
 バグが有る可能性は否定できないながらも全然弱いです。話にもならないです。「ざけんな」って所です。マジで弱くなってます。読み深さも3手程度少なくなっているので、もうどうにもなりませんね。今作っているプログラムには合わないようです。ということでPVSは止める事に決定しました。

| | コメント (0) | トラックバック (0)

2007年3月27日 (火)

詰め将棋は早くなったので

 今度は通常探索に改良を加えようといろいろ文献を検索中。
 実際はデータ構造をもっと単純化して早くしたいのだが残り約1月で手をつける事ではないと感じたので止めている。
 チェスのそれを調べるとAspirationSearchとかPVSとか、現段階で導入できてさらに探索速度の改善出来そうな方法が残っているのが魅力的だ。けれども、PVSの実装はかなり難しい。理由はorderingしていないためPVSの基本が出来ていない。これはかなりつらい!
 残るはAspirationだ。こちらは有る程度挑戦することにしよう。

 その他に探索中に詰め将棋を呼ぶかどうか、或いは呼ぶだけの時間が取れるかどうかが疑問だ。自己対戦をさせてみると明らかに探索中に詰め将棋を呼べば強くなりそうだ。

| | コメント (0) | トラックバック (0)

2007年3月24日 (土)

早くなりました

 この前に書いたんですけど詰め将棋少しだけ修正してみました。普通の人なら皆やっていると思いますが、全探索を止めて攻め側は王手のみ生成、守り側は王手を避ける手のみ生成するようにしました。
 以前はこの方法を取っていたんですけど、差分計算をしていなかったので結構遅かったのでした。そこで思いついたのが攻め守りとも全探索のまま駒を動かした後に王手の有無をチェックする方式。これが、当時はそこそこな速度を発揮していたんですね。でも、途中差分計算を入れたことによって、逆に遅さが目立ってきたというところなんでしょうか。
 因みに速度比は約5倍って所です。詰め将棋にかかる時間がもう気にならなくなりました(笑

| | コメント (0) | トラックバック (0)

2007年3月18日 (日)

詰め将棋が遅い

 最近はパラメータの最適化を行なうためにずうっと連続対戦させているのですが、詰め将棋の遅さが目立ってきました。現在最大値で5秒。ん~。もっと早くするしかないか。今から修正するのは気が引けるが、詰め将棋部分だけでもデータ構造を変更して、もっと早くすることにしよう。まあ、出来上がった暁には時間の発表を!

| | コメント (0) | トラックバック (0)

2007年3月11日 (日)

結局入れずじまいかも

 探索中の詰め将棋、結局のところ入れなくて済みそうです。あくまでも今のところだけだけど。
 理由は王手延長が働いていなかったためでした。詰め将棋を入れようとして王手延長の関数を弄っていたところ何を行なっても王手延長が働かないので探していたところ王手延長のチェックにバグが。
 そのバグを修正した状態で動作チェックをしたところ詰め将棋を入れる必要はないくらいに詰めを見つけてくれるようになりました。結局、これ以上する必要は無いだろうということで当面は詰め将棋を入れないことにしました。
 じゃ、次はどうやって強くしていけばいいのか?

| | コメント (0) | トラックバック (0)

2007年3月10日 (土)

まだ入れてません

もう入っているはずの詰め将棋呼びチェック。いろいろ有ってまだ入れてません。ダメダメです。
この土日に入れることにしました。
それで、開発していない間いろいろ考察。
1.詰め将棋は3~5手に限定
2.2マス離れた16近傍は移動可能点が小さい事を限定
3.1マス離れた8近傍では上、下、左右、斜めで移動可能点の評価を変えること
まだ、ぼんやりしすぎて何のことやら分かりませんね。

| | コメント (0) | トラックバック (0)

2007年3月 8日 (木)

寄せに関連して

少し前GPSさんだと思うけど、探索中に詰みを読むかどうかの判定するとかなんとかと記述が有った気がする。
う~~~~~~ん。さすがGPS。
少し入れてみたい気がする。それで、寄せに関して強くなりそうな感じもするし(w
よっしゃ、明日はそれを入れるとしよう♪

| | コメント (0) | トラックバック (0)

2007年3月 6日 (火)

弱い部分

何となく先輩方に聞いた覚えがあるのだが、序盤が難しいそうだ。
その通り、序盤で悪くなるともう絶対に立て直す事が出来ない無いのが困りものだ。
しかし、うちのみたく序盤以外にも寄せが弱くてダメなプログラムがあるのは事実(笑
次回は、序盤悪くしたものを立て直す方法でも考えるとしよう。しかし、それよりも寄せをうまくする方法を考えねばならん

| | コメント (0) | トラックバック (0)

2007年3月 5日 (月)

1日おいて

寄せに関していろいろ考えながらプログラムを見直していたらバグがゴロゴロ。
「よくもまあこれで動いていたものだ」と思わんばかりのバグだ。最悪なものはαβのα値を使うべきところをβ値を使っていた。(汗
前々から何か変な動きをしていると思ったらこんな所に居た。それらを修正した後は大分良くなった様に見える。反面弱い部分が見え隠れしてきている。それはまた今度書く事にしよう!

| | コメント (0) | トラックバック (0)

2007年3月 3日 (土)

よせ

もう3月になってしまったというのに、ここ最近コンピュータ将棋の作成が殆ど進まない。やる気が無いのはもちろんだが、寄せにハマってしまったらしい。
終盤までうまくいくような対戦をしていても寄せに入るととたんにダメになってしまう。皆、こういったことに悩んで来たんだろうか?

| | コメント (0) | トラックバック (0)

2007年1月29日 (月)

コンピュータ将棋

ようやく今日になって申し込みを完了
今のところ、出来が今ひとつなので気分が乗らないなぁ
年を追う毎に完成度が低くなっていく気がする。

| | コメント (0) | トラックバック (0)

2007年1月 2日 (火)

PVSについて

PVSって

principal別ウィンドウで表示
[形]((限定)) 1 ((しばしばthe ~))主な, 主要な, 重要な;首位[第一位]の

variation別ウィンドウで表示
[名] 1 [U][C]変化, 変動

searchの事だったんですね。じゃ簡単に言うと何?!

いろいろなHPを見ると”NullWindow探索を先にする”ということみたいだ。

意味分かっていないけど実装済みだったのは内緒である。

しかし、PVSにもいろいろな拡張があるのは興味ありである。

| | コメント (0) | トラックバック (0)

2006年11月 4日 (土)

利き情報更新と高速化

高速性を保ちつつ利き情報の更新がうまくいきません。
駒の移動毎に利き情報を差分で更新しても、良くても処理時間が1.5倍程度に増えます。
線の利きにたいしての処理がどうしても遅くなる原因みたいですね。

| | コメント (0) | トラックバック (0)

2006年10月29日 (日)

やっと

見つけました。線の駒がたまに間違った動きをしていたのですが発生頻度が少なかったのでなかなか原因がつかめなかったんです。でも今日ようやく原因が分かりました。駒の移動の差分計算で間違っていました(笑
 駒の移動も出来上がったことだし、ベースとなる探索ルーチンも出来ているし、これでやっと本格的に探索ルーチンの作成や評価関数の作成に入れそうです。

| | コメント (0) | トラックバック (0)

2006年10月27日 (金)

なんとか

ようやく形になってきたです。。
特に非合法な手を指す事も無くなったしね。といいつつ未だに非合法に近い手を指すのは内緒です。
問題はnpsですね。無理は承知でもマイムーブさんの言っていたあの数値までは行きたいですね。
よ~く考えるとあれだけの局面を探索していれば悪い手を指すはずが無いですよ。

| | コメント (0) | トラックバック (0)

2006年10月22日 (日)

ようやく

 ようやく思考部分が動き始めた。しかし、後遺症が大きい。2歩はするし敵の駒は動かすし不正な手の連続。しかも、GUIにもバグが入ってしまい、もう大変。当面の間バグに付きまとわれそうだ。

| | コメント (0) | トラックバック (0)

2006年10月21日 (土)

たいへん

 1次元配列化。GUIは特に1次元配列化する必要がないのでGUIと思考部分を分離するのだが、これが結構大変だった。何故かといえば作るときは出来るだけ同じ物を使いたくて盤面のクラスとかが全く共通だったのだ。それを2つにして別々コンパイル、GUIと思考部分のインターフェースを変更してと一応コンパイルは通るようになった。しかし、今までと同じように動くレベルになっていない。最低でも今までと同じ程度に動かないと変更もできない。先が思いやられる。

| | コメント (0) | トラックバック (0)

2006年10月16日 (月)

いまさら1次元配列

 岐阜チャレンジが終わってボチボチと修正していたなり金。今回は1次元配列化に挑戦する。去年もやろうと思っていたのだが始めたのが遅かったので結局実現できなかった。でも今年は思考ルーチンを弄る前(ここ重要)に取り掛かっている。そのためか今まで不要かも知れないルーチンが沢山入っていたのだが、バッサバッサと切り捨てている。この調子であと少しで何とかコンパイルが通ると思うが、その後どうなるのだろう?

| | コメント (0) | トラックバック (0)