Deep Thoughtの学習
| 固定リンク | コメント (5) | トラックバック (0)
まず業務連絡から。RTLソースのパーマネントな置き場所ですが、ブログ画面の左上に「資料館」というコーナーを設けてそこに置きました。ソースの他、各種発表資料も置いてあります。なおソースですが、細かい修正が数回入りまして今v1.13になってます。といってもRTL自体は変更なくてドキュメントの細かい修正ですんで、「RTL読むだけ」ならDLしなおすこともないと思いますが。
* * *
さて最近の開発状況ですが、まずプライオリティNo.1はクラスタ並列。正確にはメッセージパッシングと言うべきかな。でも慣習でクラスタと言ってます。仕様を鋭意検討中ですが、動きだすまでにはまだ2、3か月はかかりそう。これは長期戦を覚悟。
それと並行して進めてるのがボードの検討。究極の絵としてはASICによる超並列化になるわけですが、まずは(コスト的にもリソース的にも)手の届く範囲内で簡易版でいいからアイデアを具体化していきたい。feasibility studyの目的でも、実績作りという意味でも。で、最初に作るプロジェクトの具体的詳細を詰めているところ。
ASICがもちろんいちばんコストかかるわけですが、つい最近Alteraからの宣伝メールで Cyclone III LS発表、というのが来ました。今まで普及品であるCycloneシリーズの最大規模のは120K LUTだったんですが、150K、200Kのが出ました。今のAリーグは120Kには入らず150Kぎりぎりなので、Cyc3では無理、Stratixが要るなと思ってたんですが、テクノロジの進歩を考えてなかったのは我ながら超迂闊でした。高級品のStratixは150Kクラスのは1個数十万するので手が出ないですが、Cycloneが使えるなら5個10個程度なら個人でもまあ何とかなるレベル。LS150はまだ価格出てませんでしたが、従来のCyc3の120KはAltera Online Storeで$387/個。ちなみにXilinxの方も最近普及品の方の最新シリーズであるSpartan 6を発表しまして、これも150K LUTのがあります。こちらは$~200/個。こっちの方が安いのは、45nmだからでしょうか。Cycloneの方もたぶんもうすぐ40nmのシリーズが出て、もう少し安くなると思います。
まあとにかく、1個数万くらいのFPGAが使えるならば、まずはASICよりもこちらでやるべきでしょう。FPGA 3~4個のボードをまず作りたい。これだと将棋的な強さの方はあまり期待できません。Cycloneにしたら速度半分になるので、4個並列にしてもStratixの単体とあまり変わらない。なので目的は専らfeasibility検証用になります。
次、基板の設計と実装について。こんな↓絵をVDECフォーラムで出してましたが、
これをどう作るのか、もっと具体的に詰めてみます。
まずコストから。私はボードは直接自分で開発したことがなく、この辺の詳細が実はさっぱりわかっておりません。コストも見当つかなかったので、VDECフォーラム及びその前後にいろいろ聞きまわりました。3人の方から話聞いたのですが、
Aさん:うちで作ってるのは2000万円くらい。1000万はするんじゃないかな。
Bさん:200-300万くらいするよ
Cさん:1万くらいでできました
…??どうなってるんじゃ一体?どうも前提が大幅に違うような気がします。で更にいろいろ調べてみたところ、基板とひとくちに言ってもピンキリで、動作周波数、層数、部品点数、ピン数、実装形態、等によって全然異なるようです。GHzで動かしたり1000ピンオーダの部品が複数載せたりするような板だとめちゃくちゃかかりますが、そうでなければ最近はネット通販の基板製作屋というのがあって、数万からで試作できるらしいです。
上述のCさんから聞いたのはP板.com。ここは回路図CADとアートワークCADをフリーでDLできて、それらを使って作った設計データを送ると製造してくれます。将棋では周波数もピン数もそう高い要求がないので、基板だけなら数万でたしかにできそう。部品の実装(基板への取り付け)は、サービスとしてはP板.comでもあるようですが、価格はまだ不明。部品実装はひきつづき調査です。なお、いろいろぐぐって調べたところ、回路図を渡せばアートワークをこれも数万で請け負う、という会社もあるようです。というわけで、部品実装がまだあれですけど、なんか雰囲気的には基板も何とかなりそう。
マイコンの候補選定。これも調べてるとPICとかAVRとかpSoCとかいろいろあります。どれがどういう特徴あるのか、を調べるのでひと苦労。マイコンは価格はたいしたことはないので、選ぶ要因としては、ホストとASIC/FPGAとの通信がメインであることから、以下のような感じ。
・I/F。イーサやUSBのついてるものの方がボード設計が楽。
・メモリ容量(フラッシュ+RAM)。そう大きくなくてもよいが、ある程度はほしい
・性能。8bitよりは32bitの方が転送に必要なサイクル数は少ないだろう
・GPIOの数。複数チップとできるだけ広いバス幅で通信したいので。
・ソフト環境。とにかく楽したいので^^;
今まで探したところだと、Coldfireがけっこうよさそうかな、という感触。100Mイーサで32bit。GPIO 50+本。TOWERキット$99というのがあるので、買って使ってみようかなー、などと思っております。まあまた調べてくともっといいの出てくるかもしれませんが。
なお上に出した絵では、マイコンとASICを1枚のボードに載せてますが、マイコンにはほぼ必ず評価ボードというのがあるので、最初はそれをそのまま使う方が楽かもなどと更に日和りつつあります。それならマイコン制御のソフトやドライバ等が付属のをそのまま使えばよいので気にしなくていいし。自作のボードに載せるのはほとんどASIC(/FPGA)だけなのでボード設計が多少楽になるし。つまり、自分の苦手な分野のウェイトを少しでも減らしたいわけです^^;
マイコン以外の部品。おそらく慣れた人にとってはほとんど気にもしないところなのかもしれませんが、素人にとっては何をどうすればいいのかわからないところです。
FPGAのボードやマイコンのボードの回路図を勉強のためにいろいろ眺めてます。たとえばこんなの。これは、CQ出版から出してるColdFireブレッドボードの回路図だったかな。少なくとも以下のようなものは(本命のFPGAやCPUの他に)必ずついてます:
・電源コネクタ
・電源スイッチ
・水晶
・コンデンサ
・抵抗
・I/O用コネクタ
最初見たときは、コネクタやスイッチはともかく、水晶、コンデンサ、抵抗は、容量や抵抗値をどうやって決めればよいのかさっぱりわからない。でまたいろいろ調べたわけですが、まず水晶およびそのまわりのコンデンサ・抵抗については、マイコンなりのマニュアルに推奨(いやだじゃれじゃなくて)の接続が書いてあるようで、どうもそれに従えばよい模様。その他は、コンデンサは主にいわゆるパスコン、抵抗はプルアップ抵抗の模様。といっても パスコンやプルアップの容量・抵抗はどうやって決めるのかいまいちわからないのですが、もう最初は他のボードのを真似して、あとは実際にボード作ってカット&トライしようかな、などと開き直ってます。容量値・抵抗値以外にも、サイズがいろいろあったりとか、コンデンサはいろんなタイプがあるみたいでどれ選べばいいのよとか、ほんとわからないことだらけ。まあこの辺も探せば情報あるようなのでおいおい調べていきます。
あそうそう、あとAlteraやXilinxのFPGAを使うとなると、コンフィギュレーションファイルのロード方法を用意する必要があります。まだちらっとしかマニュアル見てないですが、FPGAがマスターになって専用のフラッシュメモリにアクセスするよう。てことはフラッシュもボードに載るのか。接続はたぶんマニュアルに書いてあるんだろうな。I2Cでいいのかな。あれでもパワーオンリセットの回路とかいるのかな。フラッシュメモリへの書き込みは…この辺もこれから調査。
大規模FPGAだとパッケージも限定されます。Cyc3 120Kだと484FBGAに。手ではんだづけ、というオプションはありえなくなります。これで実装コストはね上がったりするのかな。あと、プローブ当てることもできません。観測用コネクタまで線引くしかないですかね。ちなみに万一に備えて、オシロスコープは20MHzくらいなら10万ちょいくらいで買えるようです。あまりオシロ使いたくはないんですが。
CPUとFPGAつなげたボードだとバウンダリスキャンとかした方がいいのか、とも思いましたが、マイコン評価ボードを使うなら部品はほとんどFPGAのみなので、そこまでしなくてもいいような気がします。バウンダリスキャンのツールもちょっと調べてみましたが、目についた範囲だと数百万のオーダ。こりゃあ無理ですが、今のところ後まわしです。ちなみにBSDLのファイルはマイコンもFPGAもだいたいネットでDLできるようです。
しかしこんな調子で、ほんとに物できるんでしょうかね。我ながら甚だ不安ではありますが、まあ実行あるのみです。どうしてもできなさそうだったら、お金の許すかぎりはプロを頼るつもり。
…てなことを考えてたところへ、当ブログがSim's blogで紹介されていました。電子工作のブログで、この中の記事やリンクからたどるとボード関連でかなりいろんな情報があり、非常に参考になります。今まで電子工作系のネット情報はあまりまじめに探したことなかったんですが、しばらくここをベースにしていろいろ知識を仕入れさせてもらおうと思っております。
うーんしかし、とてもコンピュータ将棋のブログとは思えない記事ですね^^; 完全に、選挙でいうところの「独自の戦い」というやつになってます。
| 固定リンク | コメント (5) | トラックバック (0)
昨年末くらいに勤め先の会社のけっこう偉い人で将棋好きの人とコン将の話をする機会がありまして。その時その方から「いちどうち(会社)の将棋部にも来てよ」と言われてまして、大会やフォーラムの準備でずっと忙しかったのですが一段落したので、お邪魔しに行ってみました。
昔はまあ私自身も将棋指しましたが、コン将を始めてからは専らコンピュータを強くする方が重要で、自分が指そうという気はあまりしません。なので、FPGAボードを持っていってAリーグと対戦してもらってきました。Aリーグが人間とやるのは、私が2、3回お遊びでやったことがあるのと、floodgateで人間の参加者とあたったこともありましたが、それ以外はほぼはじめて。リアルの対戦初挑戦です。
4局やりました。相手は1局ごとに別の方。最初は人間と同じく将棋盤で私が指し、相手の指し手を私がPCに入れてました。時間は15分、切れたら1手30秒。ところが手入力にけっこう時間がかかり、あっという間に秒読みになり、ちょっと長考したら切れて負けてしまいました。ただこれではつまらないので参考ということで指し継いでもらい、その参考結果ではいちおう勝ち。序盤は大駒を押さえこまれてと金を作られ、必敗の形勢でしたが、コン将得意の終盤でじりじり追い上げて逆転してました。相手の方は24で1300~1400くらいだそう。
あと3局は1勝2敗。2局めからは対局時計はなしで、相手に直接PCを操作してもらいました。ローカルでshogi-serverを動かして、KShogiでTCPIP対あなた、で動作。2敗の相手のうち1人は24で2千何百くらい(<-よく聞き取れなかったが、たしか2400と言ったような…)、もう1人はその2千何百の人と互角以上とのこと。1勝の相手は、「道場で免状は四段もらったけど、実力は初段あるかないかくらい」とのこと。けんそんもあるのかもしれませんがいちおう信じるとすると、Aリーグがfloodgateの診断で24で1800くらい、二段相当、というのはけっこう合ってるかもしれません。
生で人間と対戦を見てて思ったのは、普通の人間の将棋指しから見るとまだまだ変なところいっぱいあるなぁ、ということ。私は見慣れてるので、コン将らしい変な手を見ても「あ、またやってるよ…えーと、評価関数がああなってるから、こっちよりこっちの方が優勢と思ってるんだろうなぁ。しょーがないなぁ…」くらいですぐ納得してしまうんですが、人間の人(?)ってめちゃくちゃ驚いたりするんですよね。「え!?何で!?」みたいな反応をされて、「いや、えーと、コンピュータ将棋の特徴で…」とかしどろもどろで説明したりしてました。幸い2敗の相手は2人ともきれいに詰ませてくれましたが、これで必至かけられて王手ラッシュなんかやられた日には、弁明が大変なところでした^^; 人間と対戦するだけなら24とかでできるわけですが(やったことないけど)、やっぱ目の前にいるのとネットとではちょっと違います。
「前コンピュータ将棋がアマ竜王戦とか出てましたよね。最近は出ないんですか?」とか聞かれましたが、私もわかりません。最近は出ないんですか?教えて、さわやかなエロい人。
ちなみに、もしかしてハード設計やってる人が将棋部にいたりして、引きずりこめないかなぁ、などとちらっと思ってたんですが、残念ながらデジタルの回路設計者は将棋部にいらっしゃいませんでした。
しかし、久しぶりに生の対局してるのを見ると、ちょっと指してみたくなったりもしますね。でも自分が対局してる暇があったら設計なりコーディングなりしなきゃ、とか思ってしまうんですが。定跡とかもほとんど忘れてるんで勉強してる暇ないし。
| 固定リンク | コメント (0) | トラックバック (0)
A級リーグ指し手1号のRTLソースを公開します。使用法、注意事項等については中のREADME.txtをお読みください。
ここに置いといたんじゃそのうち記事に埋もれてしまいそうですが、あとでパーマネントな置き場所は考えてみます。
これで来年の大会は手の内を全部晒して戦うという、オープンリーチ・ハードウェアとなりました。なお大会の規約で、オープンリーチをかけた場合はソルコフの点数が倍になると規定されています。 (…なわけないです。嘘です)
それでは、May the Source be with you!
| 固定リンク | コメント (2) | トラックバック (0)
6/6(土)、7(日)、東大本郷でのVDECデザイナーズフォーラムに出てきました。ポスターセッションのポスターをここ↓に置きます。一部過激な表現等あるかと思いますが、まあ「宣伝コピー」なので深く気にしないでください。
「vdec09posterFrame_A0final.pdf」をダウンロード
6/6 PMから出て、招待講演の後、夜ポスターセッション&懇親会。誰一人知り合いいないのでどうなるのかと思ってましたが、予想外に興味持ってくださる方がいて、いろいろ議論できて楽しかったです。参加者80名くらいで、5,6人くらいの方と話ができたので、まあまあよかったかなと思ってます。
他のポスターを見てると、デバイスとかアナログとかの回路系が多いようで、デジタルである程度大きなシステムを作るというのは少数派だったようです。いわゆるコンピュータアーキテクチャ系の人もVDECでけっこう試作してるはずですが、こっち系の人はこのフォーラムにはあまり来ないのかな?
事前にいろんな大学のwebをチェックして、将棋ASICの作れそうなところがないか探していたのですが、なかなかないですね^^; 回路でなくシステム、コンピュータアーキ除く、実際にLSI作るとこ、とこのくらいのフィルターかけただけで、全国でも片手に入るくらいかも。画像認識、音声認識、通信系(OFDMとか)、とかかな。そういうところへ、将棋をどう理屈つけてねじこむか^^;;; まあアーキ系でもひっかかるとこあるかもしれませんが。
今回いろいろ話していて、このプロジェクト、「面白そう」とは思ってもらえてるようです。ただ、「最近は大学でも成果を求められる。このチップを作って『それが何につながるのか』が示せないと、研究費をとるのが難しいのでは」というコメントを複数の方からいただきました。コンピュータ将棋のコミュニティで話していると「名人に勝つ」は自明の目標なんですが、コミュニティの外へ出るとまずここでひっかかるわけですね。ここは何とか考えないと。まだぱっといい解は思い浮かばないですが、まあぼちぼち対応策を考えてまいりましょう。
翌6/7はPMのショート講演から参加。最後が自分の講演。1人15分なんで内容はかなり駆け足になってしまいました。いちおうまた動画にとってたり。
最後表彰式のとき、何とベストポスターアワードてのをもらっちゃいました。いやーまったく予想外でしたが、大変光栄です。賞金ももらえるんですね。びっくりです。こういう賞があること自体知らなかった。知ってたらもっとポスターも講演も気合入れたのに^^; もしかしてGPWでももらえるんですかね。金額は…って、書いていいのかな。まあオーダー的には O(定額給付金) くらいでした。
課題もありますが、LSI設計のコミュニティに将棋ASICの存在をアピールできたという面ではまあまあ成功だったかな、という印象です。もちろんこれからまた実現に向けていろいろ行動してかんとならんわけですが、まずは第一歩は踏み出したかな、と。
| 固定リンク | コメント (4) | トラックバック (2)
大会中はニュースも新聞も見てなかったですが、キヨシロー先生逝ってしまわれたんですか。うーん…
俺は愛し合ってるぜ、ベィベェ!
<いや普通に悼んでるつもりなのだが、こう書くと単にあぶないのはなぜだ
大会のことをつらつら書いてみますか。といっても、実は対局はあまり見てなかったんですよね^^; いろんな人とあいさつしてたり話してたりするうちに時間過ぎちゃいまして。それに最近はfloodgateでも、よほど気合入れて「悪手見つけて、改善点探すぞ!」と思ってないかぎりは観戦はしてません。ずっと見てるの疲れるし^^;;; というわけで、将棋の内容はパス。まあ私が見てても既にあんまりわからんし。
去年からの変更は、ブログで書いたとおりボナメソの真似事をしたのと連続対戦やったのの他、Bonanzaソースを見てまたパクれるとこないか探しました。でfutility pruningを改良したり、LMRを入れたり、延長深さを多少変えたり。recaptureで同じ駒なら少し深さを増やす、というのもあったのでやってみたんですが、これはうちでは勝率下がってしまい、入れたんですけど後でまた外す、なんてこともありました。
あとハードもCyclone III 120 からStratix III 150 に変わってます。去年は15.6MHzで、デバイス変更で1.5倍程度速いはずですが、学習で評価関数が重くなったぶん速度が落ち、結局今年は20MHz。10Mnpsです。この「nps」は、手を指した回数。静止探索もぜんぶ入れてます。評価関数を呼んだかは関係なし。ソフト的に言うなら MakeMove() を呼んだ回数、と言えばいいでしょうか。ボードは例によって 協賛:立野電脳(株)、です。
大会後しばらく大会バージョンでfloodgateやってましたが、80数局やってR1800ちょい。24でいうとアマ二段てことですか。強ぇじゃん俺より。マイムーブにはかなり追いついたような気になってましたが、まだけっこう負け越してますね。本番で勝てたのはラッキーでした。R300差のKShogiに勝てたのは、私が言うのも何ですがはっきり言って不思議。やっぱ「KShogiシフト」になってたんですかねぇ。といってもやったことは、設定可能なパラメタをいろいろ変えて組み合わせを試して(各組み合わせ 6-10 戦くらい)、対KShogi中級でいちばん勝率よかったものを選んだ、というだけのはずですが。別のソフトとやってたらまた組み合わせ変わるんでしょうか。
印象に残ったのは、若い人の新規参入が多かったことかな。小幡さん、akiさん、tohskeさん、isseiさんら。頼もしいかぎりです。しかし最近の学生さんはしっかりした人が多いですね。学生だった私はもっと世間知らずでもっと無礼だったような記憶がありますが。
大会前夜は池袋サンシャインに泊まってました。高そうなイメージありましたが、早割で9000円とまあまあ。いや別に目の前が乙女ロードだからとかそんなんで選んだとかそういうわけじゃないんですよ決して?会場の関係で都電が便利なのでその沿線、ということで探しました。
3日めは懇親会というものに初めて出ました。今までは1日めなり2日めなりが終わるとすぐ帰ってたんですが、早稲田なら1回帰ってまた来れるので、出てみました。皆さんといろいろ話せて&話が聞けて、ほんと楽しかったです。近場で1000円なら来年も出たいですね。私もなぜかしゃべらされて、また風呂敷広げてました。高田馬場駅は発メロがアトムでしたね。何かゆかりあるのかな?駅で女子大生らしき集団が別れのあいさつで「ぐゎし!」とやってたのが謎。今千九百何年だっけ?
大槻さん自戦記でも触れられてまして、いやー恐縮です。ほんと今回は朝いちのエレベータでしかお話しできませんでしたね。「Bonaの評価関数そのままハードにできないの?」は保木さんからも聞かれたんですが、大量のメモリを読むのは1サイクルに1つずつしかできないので、ハードのメリットが出ないんですよ。GPSのように細々とした特徴を積み重ねてく方が、(メモリでなく)ゲートで作れる部分が大きいのでハードには向いてると思っています。そうそう、gps_lの評価のソースも研究しないと。
* * *
大会はこのくらいで。大会後の例会で、金子さん講演に行ってきました。棚瀬さん山下さんも来ていて、注目度高かったですね。参考になることは多かったですが、学習の細部のノウハウがいちばん自分の無知を痛感してましたか。神は細部に宿る。50ステップでPVを決める探索は最初の1回だけ、にはびっくり。いいの、それで!?学習の「歩幅」も、ものすごい小さな値でスタートしてました。私は学習始めたのが遅くて、短期間に収束させなきゃとあせっていたこともあって、歩幅けっこう大きめにとってたんですが、めちゃくちゃ大きすぎだったようです。今のAリーグの学習はほんとにでたらめなことばかりやってて、とても「学習」と呼ぶのがおこがましいような状態なので(某ブログには「仰天もの」とか書かれてましたが^^;)、この辺は改善余地大きいと思います。
さて大会終わってしばらくのんびりしたかったんですが。大学・研究機関向けにLSI試作サービスを行うVDECという組織があり、そこのフォーラムというのが6月初めにある。で締め切りが5/13で、それへの参加を検討して、結局出ることにして準備始めて、という状況で、大会直後からまた忙しくて全然のんびりできておりません。どうしてくれるんだ一体(>誰?)。
ショート講演とポスターセッションとありまして、図々しく両方申し込んでます。上記リンクにタイトル載ってます。いやー何かもしかして浮きまくるんじゃないかと心配^^;;; ちなみにこのフォーラム、知り合いは恐らく一人もいないです。そういうとこへ一人で宣伝しに乗り込むという、いわゆる落下傘営業。まあ押しかけて説明しにいき、ほとんど相手にされず邪慳にされて帰ってくるというのは実は仕事でよくあるのでまあいいんですが。日本とかフィリピンとかに行って布教してたイエズス会の宣教師とかの気分?
ただポスター作るのだけはやったことない。パワポのプレゼンはよく作るんですが。でググると、大学院生向けらしきでポスターの作り方指南してるページてのがけっこうありまして、それらを参考に作ってるところ。A0印刷について新宿の出力センターを探して店に行って相談しに行ったり、とかしてます。
| 固定リンク | コメント (4) | トラックバック (1)
選手権参加してきました。
例によって今は疲れ果ててて何も書く気しないですが、結果だけ書くと4勝5敗、2次予選13位でした。星は去年(3勝4敗2分)と勝ち点的には同じ、順位も2つ違いですが、内容的には今回の方がかなりよかったです。何よりKShogiに勝てたのはすごく嬉しかったですね。
また気力が戻ったらもう少し詳しく書いてみたいと思います。いろんな方面から声援いただきまして、みなさまどうもありがとうございました。
「floodgateより大会の方が強いんじゃない?」と何人かの方から言われました。大会直前(ほんとに1、2週間前)にけっこうするするっと強くなったはずなので、たぶんそうなんだと思いますが、私も実はよくわかりません。なので今後しばらく、大会版でfloodgateで流してみます。これでRどうなるか、私も興味あるところ。
GPS将棋、大槻将棋、文殊の各チームの皆さん、おめでとうございます。KCCチームの方は声を聞けてないのでコメントし難いですが、生の声を聞きたいところですね。次回は事情が許すならぜひ日本にいらしてください。
일본에 오세요!
あと、ひとことだけ。文殊に関していろいろ書かれてるのを見ましたが、私はオリジナリティに関しては問題ないと考えています。合議で強くなるならそれはそれで成果でしょう。「労力が少ない割に順位が上に来てずるい」という感情があるのかもしれませんが、みんなそこは理解したうえで評価しますよね。合議のアルゴリズムも公表して、Bonaを流用してることをきちんと説明してるわけですし。フェアだと思っています。なので、シード辞退されてましたけど、それがもしこの辺の批判を受けてのことなのだったら、「そんな外野の意見気にしないで」と言いたい。今からでも辞退を撤回して、来年また出ていただいてもぜんぜんかまいませんので、ご検討ください。ただ、「やっぱりBonaじゃなくて千分之一里眼ベースで作りなおして出るぞ!」という積極的な意味なのであれば大歓迎です。来年二次予選で待ってますよ:)
なお私個人の考えとしては(オリジナリティの問題とは別に、技術的に)合議がベストの選択か?というと正直ちょっとそうは思えません。だって、24コアあるなら普通に24並列にした方が強いんじゃないの?と誰でも思いますよね。こっちの議論が盛り上がらないのは、誰も並列化がCrafty流ばかりで、密結合プロセサ(メモリ共有)を前提としているため、24並列をできない、だから評価できない、ということだと思います。私はどのみちハードではクラスタ並列しかないので、クラスタ並列に踏み込まざるを得ない。別に文殊の話がきっかけではないんですが、大会後まずはクラスタ並列にトライしようと思っています。
| 固定リンク | コメント (8) | トラックバック (3)
か、柿木さんに勝ってる…
信じれん…あの弱小プログラムがよくぞここまで…
これでもう俺は何も思い残すことはないよ
しかしサルすげー
| 固定リンク | コメント (0) | トラックバック (0)
configRegをいろいろ変えてKShogi中級と対戦させてみた。
cfg win lose
e614 5 3
e634 2 6
e654 2 6
e694 3 5
e61c 2 6
e615 4 4
e414 0 5 (途中でやめた)
e604 2 6
shogi-serverを入れてからこっち、単なるオペレータと化してる。てかほとんどサル。全く頭使ってない。
昨日はこれで1日つぶれた。まあ30~40分に一度ちょこちょこっと操作するだけで、あとは遊んでるんだけど。
しかしこうなると、config変えながら対戦させてくところまで自動化したくなるのだが、それはさすがに難しいか…あ、待てよ?できるかな?
| 固定リンク | コメント (0) | トラックバック (0)
決めゼリフ風にしてみました。
ハードな私はボード2枚ないと自己対戦ができないため、今までやってませんでした。ですがやはり対戦での検証は必須なため、何とかやりたいな、と。で自己対戦がだめならKShogiなりBonaなりとやらせられないかと考え、以前から考えてはいたshogi-serverのインストールにトライしてみました。
まず、ほんとに連続対戦できるよね、というので、wdoorをちょっと拝借してKShogiとれさぴょんを接続してトライ。適当なGamenameを入れると無事対戦できたようです。連続もOK。そのときクライアント一覧を見てたら、monjuもwdoorで対戦させてたみたいでした。
sourceforgeからパッケージをとってきまして、ドキュメントを読み、まずrubyがいるというのでrubyをインストール。Vistaで動かすので、Cygwinのバイナリ版というのをとってきました。これは解凍してパス貼るだけなので簡単。次shogi-serverを解凍して動かすと…「webrickのhttpauthの何ちゃらのsha1がない」とかほざいてコケます。対局だけできればよいので、どうせsha1なんて(何だかよく知らないけど)いらねーだろ、というわけでrubyのライブラリのhttpauthのあたりのそれっぽいrequire文を問答無用でコメントアウト。超強引ですが、私はフリーソフトとかとってきて動かすときはだいたいいつもこんな感じでやってますが何か。ちなみに最初はshogi-server本体の'require webrick'をコメントアウトしてみたんですが、これはダメでした^^; 私はrubyは文法等まったく知らなくて、適当に勘でやってます。まあこれで無事起動。
次対戦ですが、まずKShogiとやってみたところ問題なくできました。それからBonaともできないかと思ってちょっと調べてみました。オリジナルのBonaにはないようですが、プチ将棋を使うと連続対戦できるらしい。でとってきて、あとBonaは3.0以前が必要というのでこれもとってきて。これも無事できました。ただBonaは相当弱くしないとスパーリング相手にならないので--; プチ将棋のサイトを見て、1手1秒、先読みなし、でやらせてみましたがそれでも20戦で1勝17敗2分^^; もっと弱くする方法もあるみたいですが、また今度やってみませう。
今は主にKShogi中級とやらせていて、お互い1手2,3秒くらいで2勝3敗くらいのペース。1局5分くらいなので、20局くらいならかなり気軽にできるようになりました。今までは手で2,3局やらせて、ほとんど見た感じだけで判断してパラメタ決めてたので、かなり精度上がったんじゃないかと思います。
ただ、連続対戦でのチューンもやっぱ多少問題あるような気が。いくつかパラメタの組み合わせをKShogi中級相手に試して、いちばん勝率よかった(10戦で4勝6敗)組み合わせでfloodgateに入れてみました。きのうですが、いきなり初戦Spear_testに勝利!これは強くなったか、と一瞬思ったのですが、その後は上位陣(R1900以上)にはまったく勝てず。棋譜を見ると、対MyMove戦やBlunder戦ではやたら景気よく大駒を切ったりしてて、むしろ弱くなってるような印象すら受けます。
ところが、ゆうべ一晩は25分版の時間設定を決めようと思ってKShogi v2.6.1 25分切れ負け版とAリーグの上記のと同じ版、ただし時間のみ25分設定版、を一晩対戦させてたのですが(これもshogi-serverではじめて可能になった)、これで何と5勝5敗!…KShogiと互角なんてありえない。よくわかりませんが、KShogi向けにいわゆるひとつのオーバーフィッティングになってるんでしょうか。KShogiにはけっこう勝てても、MyMoveやBlunderにはさっぱり勝てそうにない。でもSpearにはそこそこ勝てる?何がどうなってるのやら。まったく謎です。…で結局パラメタはどうすりゃいいんだよ…
shogi-serverは、changelog見たところ、ほとんどもりわきさん一人でメンテされてるのですかね。どうもありがとうございます、お世話になります。これ、ものすご便利です。
* * * *
話変わって、先日ボードのスポンサーの立野電脳(株)の社長さんと別件で話した折、「今使ってるボードが物量あふれちゃったんですよー もっと大きいFPGAの載ったボード余ったりしてないですかねぇ?^^;;;」という感じでだめもとで聞いてみたら、「あ、ありますよ。明日送ります」という感じであっさり言われ、翌々日届きました。ひぇー!どうもありがとうございます。TerasicのDE3-340というボードで、FPGAはStratixIIIのEP3SL340。今使ってるのの2倍強のゲートが入ります。いや実はこれけっこう高いボードのはずなんですけどね。誠にかたじけないです。ちょっと立ち上げに手間どりましたが、昨日やっと動きました。これだと2コアは間違いなく入るし、今のボードと合わせて2枚になるのでUSB(イーサはない)でつなげて並列化にトライ、もやってみたくなりますね。大会後のA.I. ナンバー1です。
* * * *
さて、大会も間近に迫ってきました。まだいろいろやるべきことは残ってるけど、そろそろ時間切れっぽいですね。頭の中で秒読みの声が響いております。「伊藤四段、残りあと8日です」
…考慮時間使ってもいいですか?^^;;;
でもまあ、今から大きな変更を入れたりしてもどうせバグを仕込むだけなので、あとはPCを走らせて学習させたり対戦させたりしてパラメタをチューンするくらいでしょうか。私はもうあまり手出ししないほうがよいかも。
♪ ハイホー ハイホー おいらの仲間
みんなで7コア ハイホー ハイホー …
| 固定リンク | コメント (5) | トラックバック (0)
最近のコメント