目指せ、第27回世界コンピュータ将棋選手権☆ ポナンザ・チェイナーを倒そうぜ☆(^~^)<その9>

2017-04-27 07:53

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「I9I8 じゃなくて 1I1H だよな☆符号をSFENに対応させないと☆」


08:12

KIFUWARABE_80x100x8_01_Futu

「おとん、l (小文字のエル)なんて駒は無いぜ☆」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「待てだぜ☆ 今見る☆」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「画面に表示させるために USIモードを抜けたら 香車じゃなくて いのしし じゃないと認識しなくなるのかだぜ☆」


08:16

KIFUWARABE_80x100x8_01_Futu

「お父ん、平手初期局面に並べたぜ☆」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「待てだぜ☆ 今見る☆」


08:30

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「< 3 が埋まってたぜ☆

定数が まだまだ 埋まってるのな☆」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「USIの position の moves の後ろに並んでる符号

読めるようにしないとな……☆」


12:54

kitashirakawa_chiyuri_80x100x8_05_hehe

「棋譜を読めるようにしたぜ☆」

kifuwarabe_80x100x8_10_yattaze

「やったな☆!」

OKAZAKI_Yumemi_80x80x8_01_Damaru

「やったわね!」

kitashirakawa_chiyuri_80x100x8_05_hehe

「やったぜ☆!」


14:31

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「駒割り評価値って 差分計算してたっけ☆?

ずれるんだけど☆」

KIFUWARABE_80x100x8_01_Futu

「駒を増やしたのに対応してないんじゃないか☆?

あるいは 角成 で角の点数が増えたのを勘定できているのかだぜ☆?」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「調べてみようぜ☆?」


16:21

                    Option_Application.Optionlist.SetSikoJikan_KonkaiNoTansaku(); // ループに入ると探索開始時にセットするんだが、最初の1回はループに入るために、何か設定しておく必要があるぜ☆(*^~^*)
                    for (Util_Tansaku.NekkoKaranoFukasa = 1;
                        Util_Tansaku.NekkoKaranoFukasa <= Option_Application.Optionlist.SaidaiFukasa && !Option_Application.TimeManager.IsTimeOver_IterationDeeping()//思考の時間切れ
                        ; Util_Tansaku.NekkoKaranoFukasa++)
                    {

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「なんか初手で投了するな、と思ったんだが

初手の持ち時間 0秒だったんで修正したぜ☆」

kifuwarabe_80x100x8_07_uwaaaa

「うわーっ☆」


16:58

            // 254文字までしか入力できない。(Console.DefaultConsoleBufferSize = 256 引く CRLF 2文字)
            // そこで文字数を拡張する。400手の棋譜を読めるようにしておけば大丈夫か☆(^~^)
            // 参照: 「C# Console.ReadLine で長い文字列を入力したい場合」https://teratail.com/questions/19398
            Console.SetIn(new StreamReader(Console.OpenStandardInput(4096)));

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「254文字より長い position 文、切れてたんだけど☆ 伸ばしておくぜ☆」

kifuwarabe_80x100x8_07_uwaaaa

「うわーっ☆」


17:38

            // 持ち駒
            hyokati[(int)Taikyokusya.T1] +=
                (int)Hyokati.Hyokati_SeiNoSu_Zou * ky.MotiKomas.Get(MotiKoma.Z)
                + (int)Hyokati.Hyokati_SeiNoSu_Kirin * ky.MotiKomas.Get(MotiKoma.K)
                + (int)Hyokati.Hyokati_SeiNoSu_Hiyoko * ky.MotiKomas.Get(MotiKoma.H);
            hyokati[(int)Taikyokusya.T2] +=
                (int)Hyokati.Hyokati_SeiNoSu_Zou * ky.MotiKomas.Get(MotiKoma.z)
                + (int)Hyokati.Hyokati_SeiNoSu_Kirin * ky.MotiKomas.Get(MotiKoma.k)
                + (int)Hyokati.Hyokati_SeiNoSu_Hiyoko * ky.MotiKomas.Get(MotiKoma.h);

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「持ち駒が動いたときに駒割計算が合わんなあ、と思ったら

どうぶつしょうぎのハードコーディングのままだったぜ☆」

kifuwarabe_80x100x8_07_uwaaaa

「うわーっ☆」


17:52

            // 持ち駒
            hash ^= Util_ZobristHashing.GetMotiKey(ky.Sindan, MotiKoma.Z);
            hash ^= Util_ZobristHashing.GetMotiKey(ky.Sindan, MotiKoma.K);
            hash ^= Util_ZobristHashing.GetMotiKey(ky.Sindan, MotiKoma.H);
            hash ^= Util_ZobristHashing.GetMotiKey(ky.Sindan, MotiKoma.z);
            hash ^= Util_ZobristHashing.GetMotiKey(ky.Sindan, MotiKoma.k);
            hash ^= Util_ZobristHashing.GetMotiKey(ky.Sindan, MotiKoma.h);

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「局面ハッシュも どうぶつしょうぎの埋め込みが残ってたぜ☆」

kifuwarabe_80x100x8_07_uwaaaa

「うわーっ☆」


18:16

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「ねこ 取ったんだけど、ねこ どこいったの?」

KIFUWARABE_80x100x8_01_Futu

「お父ん、最近 腹が減ったと言わなくなったな☆」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「昨日の残り 食べたんで……☆」


18:46

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「内部データには ねこ はずっといて、

画面には表示されないし、もっとステップしたらいいのかだぜ☆?」


18:51

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「ねこ 2匹持ってるのに、 ねこ 持ってないって出てくるのな☆」


18:55

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「Sはシルバーだろ、ねこ取ってるのにな☆

えっ☆? ねこは Neko☆? Sはしし☆?」


20:15

        public static MotiKomasyurui Parse(string fen)
        {
            switch (fen)
            {
                case "Z": return MotiKomasyurui.Z;
                case "K": return MotiKomasyurui.K;
                case "H": return MotiKomasyurui.H;
                case "I": return MotiKomasyurui.I;
                case "N": return MotiKomasyurui.Neko;
                case "U": return MotiKomasyurui.U;
                case "S": return MotiKomasyurui.S;
                default: return MotiKomasyurui.Yososu;
            }
        }

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「あった、あった、どうぶつしょうぎに対応していて、

SFENに対応していない部分☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu

「ぽろぽろ出てくるじゃない。

なんとかなんないの?」


20:48

 

        static MotiKoma[,] m_MotiKomasyuruiAndTaikyokusyaToMotiKoma_ =
        {
            // ぞう
            { MotiKoma.Z, MotiKoma.z },

            // きりん
            { MotiKoma.K, MotiKoma.k },

            // ひよこ
            { MotiKoma.H, MotiKoma.h },

            // いぬ
            { MotiKoma.I, MotiKoma.i },

            // ねこ
            { MotiKoma.Neko, MotiKoma.Neko },

            // うさぎ
            { MotiKoma.U, MotiKoma.u },

            // いのしし
            { MotiKoma.S, MotiKoma.s },

            // 要素の個数になるぜ☆(^▽^)
            // どの駒の種類にも当てはまらない場合に、Yososu と書くことがある☆(^▽^)www
            { MotiKoma.Yososu, MotiKoma.Yososu },
        };

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「Neko に大文字、小文字のミスがあるんだが、

気を付けろ、ぐらいしか 方法は無いのかだぜ☆?

人間のタイポを タイピングで防ぐことは 矛盾だからな☆」

OKAZAKI_Yumemi_80x80x8_02_Syaberu

「火薬庫が爆発しないように ボンバーマン警備員を10倍に増やしましょう!」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「タイポって どうやって防ぐんだろうな☆?」


21:33

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「利きの差分更新なんだが、初期配置の利きを入れてないから

0 ばっかだぜ☆」

KIFUWARABE_80x100x8_01_Futu

「局面を設定したときに 利き表を 作り直しているはずじゃないか☆?」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「調べてみるぜ☆」


22:36

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「ループん中で 配列 new してたんで、空っぽになってた☆」

KIFUWARABE_80x100x8_01_Futu

「直せだぜ☆」

KITASHIRAKAWA_Chiyuri_80x100x8_01_Futu

「二次元配列を生成しなきゃ、というのと

駒をイテレーションして一重ループにしよ、というのを合わせると

ダメなのか☆」


2017-04-28 00:56

KITASHIRAKAWA_Chiyuri_80x100x8_02_Hidosu

「Conv_MotiKomasyurui.SETS_LENGTH 変数には 8 が入ってるはずなんだが

1 のときがあるので調べるぜ☆」

KIFUWARABE_80x100x8_01_Futu

「お父んがへろへろだぜ☆」

KITASHIRAKAWA_Chiyuri_80x100x8_02_Hidosu

「コピペのつもりが カットになって 列挙型が空っぽになってたぜ☆」

 

はてなブックマーク - 目指せ、第27回世界コンピュータ将棋選手権☆ ポナンザ・チェイナーを倒そうぜ☆(^~^)<その9>
Bookmark this on Yahoo Bookmark
Buzz This
Bookmark this on Google Bookmarks
Bookmark this on Digg
Share on Facebook
Share on reddit
Share on LinkedIn
Share on StumbleUpon
Share on GREE
email this
LINEで送る
Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です