久しぶりのブログがこんな出だしで申し訳ないです。
現状についてメカジョさんたちと話したのですが、
僕の経済的状況がままならず(これはコンスタントに仕事をできない僕が悪いです)
趣味は余裕があって初めて成立するものですよね、と言うアドバイスも
頂きましてまずはメカ女子将棋、ひとまず休止
と言うステータスに変更することになりました。
応援してくださっている皆様すみません。。。
将来の復帰はまたメカきむりん(43)が経済的に潤ってきて、
趣味に専念できる状態になったらまた、と考えています。
ただメカジョさんたちが例えばやねうら王なんかにjoinすることを
disturbする意図はありません。行きたいメカジョさんたちは行っていただいても
とばかりにお送りする次第です。
メカきむりんのTwitterについても「あんな訳の分からないツイートを
するツイッターはもうお辞めになったら」と言うアドバイスももっともかなー
と思い、ひとまずbot以外の更新をしないように方針変更しました。
実際今日二日目ですが早くもこの空虚な漢字はなに?w みたいな虚無が
押し寄せていますが、余った時間を仕事に使ったり、もっとproductiveな
活動に回せたらと思います。と言ってカフェバーいっちった。テヘッ。
時間計測ソフトで時間を計測するとPCの前に座って何かができる結構
貴重な時間をTwitterに一日数時間(!)費やしていることが分かり
考え方が変わりました。ひどい時は1日5時間とかツイッターやってて、
「俺、ツイッターやってて疲れないのかなぁw」とか呆れましたw
今後はなんかブログを書くとか、洋書を読書するとか、仕事(これがメイン)
するとかしたいと思います。
また以前から酷い睡眠障害と気分障害についても医師とコンタクトを取りながら
少しずつ改善していけたらなと思います。
Mecha Lady Shogi (GPGPU/NonGPGPU based japanese chess playing program), and the twitter bot @mechawooser
2018年5月14日月曜日
2016年4月9日土曜日
引き角くんシート2016年版を4月2日まで更新しました!!( #shogi #将棋 #コンピュータ将棋 )
floodgateの棋譜の戦型別分類Excelシートであるところの「引き角くんシート」2016年版を更新致しました。4/2までのデータが新しく更新されています!!
使い方としては2016年の棋譜をダウンロードして、
7zファイルを解凍(7zip managerなどで)し、
HikikakuKun2016.xlsxファイルをwdoor2016/2016フォルダに追加した上でHikikakuKun2016.xlsxファイルを開きます〜。
※2016年のfloodgateの7zip棋譜ファイルはリンクがありませんが、
2015年の棋譜ファイルの名前から推測して直接URLを叩けば取得できます
※なおfloodgate棋譜取得サイトが混雑したときのため、
Google Cloud Storageに暫定的に2013年から
2016年4/9までの棋譜ファイル(7zip)を僕のGoogle Cloud Storageに
置きました。こちらもご利用下さい。
wdoor2013.7z 2013年棋譜ファイル(通年)
wdoor2014.7z 2014年棋譜ファイル(通年)
wdoor2015.7z 2015年棋譜ファイル(通年)
wdoor2016.7z 2016年棋譜ファイル(1/1-4/9)
詳しくはCOCOさんのページ:
を参考になさってくださいなー。
ではでは、HAVE FUN!!
2015年11月25日水曜日
メカ女子将棋ソースコード再公開
メカ女子将棋を応援してくださってありがとうございます。
対コブラ戦は結構話題になったみたいですね(^^)
ソースコード公開しますー。githubにありまする〜。
まずはcloneするか、右下のzipのダウンロードでダウンロードして
いただき、bonanzaさんのfv.binをJuliaディレクトリと同列に入れてください(直下ってことですー)。
Juliaの0.4系最新を入れて頂いて、メカ女子将棋のJulia\run.batをご自分の環境に合わせてください。
run.batをcommand shellで実行したのちに、将棋所・将棋GUIでmechajyo.exeをエンジンとして登録してください。
対戦するときはまずrun.batを実行して、それから対戦を始めてください。
今回の修正は主に、0.4系への対応となります。
ではでは、Have Fun!!
(文責:kimrin)
2015年11月15日日曜日
メカ女子将棋最新ソースコードについて
どうも、メカ女子将棋のメカきむりん(41)です。
残念なおっさんです♡
すいません、メカ女子将棋のソースコード、散逸していて失敬失敬です。
https://github.com/kimrin/MechajyoForWindows
が最新なのですが、Julia言語の開発速度が速すぎて現行のJulia0.4系では動かない
感じになっておりまする。Julia0.3系でもちょっと怪しい感じです。
大会が終わったあとにJulia0.4系で動くソースコードを公開する予定です。
今しばらくお待ちください。
では〜
文責:kimrin
残念なおっさんです♡
すいません、メカ女子将棋のソースコード、散逸していて失敬失敬です。
https://github.com/kimrin/MechajyoForWindows
が最新なのですが、Julia言語の開発速度が速すぎて現行のJulia0.4系では動かない
感じになっておりまする。Julia0.3系でもちょっと怪しい感じです。
大会が終わったあとにJulia0.4系で動くソースコードを公開する予定です。
今しばらくお待ちください。
では〜
文責:kimrin
2015年7月12日日曜日
JuliaTokyo #4 いってきましたー(^^) ( #JuliaTokyo )
久しぶりの更新になりまする。きむりん(40)ニートです(40歳以上は本当はただの無職でニートと言わないらしいですがw)。
今日はJulia言語(ハッシュタグ #Julialang)のミートアップ、#JuliaTokyo に行ってきました〜。
今回はJuliaConの後のミートアップということで、JuliaCon関係の発表があったのが目玉ですね。 あと、chezou @chezouさんがハンズオンということで、DataFrameのおさらいと、SVM.jl の使い方のレクチャーを発表前にしてくれました。勉強になりましたー(^^)
発表は会場紹介、自己紹介のあと、 Sorami Hisamoto @soramiさんのJuliaConについての話から始まりました。 soramiさんの卓越した情報収集能力により(^^) テキストにはなっていない あんな話、こんな話が聞けましたー。 あとsoramiさんはJuliaCon(MITで6月に開催されましたー)で日本のコミュニティについて 発表をされたそうで、その資料も上がっていますので、参考にしてくだしあ。
次の発表は厚切り(「・ω・)「ガオー @bicycle1885さんによる、JSoC(Julia Summer of Camp)の発表がありました。かなり短期間でMoore財団の関連団体が母体となっているファウンデーションにサマーキャンプとして日本人では唯一Acceptされた話となっています。
BioJulia関連のタスクを担当されるそうです。
その他Julia言語で最初に何をみたらよいのか(夜道 @yomichi_137さん)や
binaryデータをzerosで確保してread!すると速いよ的お話(Andre Pemmelaar @QuantixResearchさん)からの系列データについてのお話がありましたー。
LTで実は僕もしゃべっちゃいました。いつものメカジョさん(メカ女子将棋)の電王戦
(去年)スライドを軽くおさらいしましたー(^^)
今年は懇親会のあと二次会がありました。
まんぞくさん, Ph.D @mrknさんが色々すごく詳しくてさすがと思いましたー(^^)
おそらく#5もそのうちw開かられる運びとなるかと思いますので、
みなさんその折にはお越しくださいませー。
soramiさんはじめ運営の方、ご尽力ありがとうございました。
わーい、いつもの仲間に会えたーという1日でした(^^)
今日はJulia言語(ハッシュタグ #Julialang)のミートアップ、#JuliaTokyo に行ってきました〜。
今回はJuliaConの後のミートアップということで、JuliaCon関係の発表があったのが目玉ですね。 あと、chezou @chezouさんがハンズオンということで、DataFrameのおさらいと、SVM.jl の使い方のレクチャーを発表前にしてくれました。勉強になりましたー(^^)
発表は会場紹介、自己紹介のあと、 Sorami Hisamoto @soramiさんのJuliaConについての話から始まりました。 soramiさんの卓越した情報収集能力により(^^) テキストにはなっていない あんな話、こんな話が聞けましたー。 あとsoramiさんはJuliaCon(MITで6月に開催されましたー)で日本のコミュニティについて 発表をされたそうで、その資料も上がっていますので、参考にしてくだしあ。
次の発表は厚切り(「・ω・)「ガオー @bicycle1885さんによる、JSoC(Julia Summer of Camp)の発表がありました。かなり短期間でMoore財団の関連団体が母体となっているファウンデーションにサマーキャンプとして日本人では唯一Acceptされた話となっています。
BioJulia関連のタスクを担当されるそうです。
その他Julia言語で最初に何をみたらよいのか(夜道 @yomichi_137さん)や
binaryデータをzerosで確保してread!すると速いよ的お話(Andre Pemmelaar @QuantixResearchさん)からの系列データについてのお話がありましたー。
LTで実は僕もしゃべっちゃいました。いつものメカジョさん(メカ女子将棋)の電王戦
(去年)スライドを軽くおさらいしましたー(^^)
今年は懇親会のあと二次会がありました。
まんぞくさん, Ph.D @mrknさんが色々すごく詳しくてさすがと思いましたー(^^)
おそらく#5もそのうちw開かられる運びとなるかと思いますので、
みなさんその折にはお越しくださいませー。
soramiさんはじめ運営の方、ご尽力ありがとうございました。
わーい、いつもの仲間に会えたーという1日でした(^^)
2015年4月6日月曜日
コンピュータ将棋と将棋棋士について(COCO氏との対話)
コンピュータ将棋と棋士の方の未来について、COCOさんと対話しました。
その記録です。
色々自分の中でコンピュータ将棋と棋士の方の関係についてモヤモヤしているのだけど、コンピュータ将棋開発者にとっては勝って得るものしかなく、棋士の方にとっては負けて失うものしかない、という立場の違いがあるのでは、と思い始めている。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
コンピュータ将棋のソフトが負けても、おそらくその作者は辛いけどコンピュータ将棋コミュニティが危機に晒されることはない。それに対して棋士の方が勝てば棋士の尊厳を守ることにつながる。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
反対にソフトが勝てば作者は嬉しいがコミュニティ全体が応援していて嬉しいということにはならないんじゃないか。棋士が負ければ自分の負けではなく棋士の尊厳を守れなかったという烙印を押されてしまうのではないか。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
コンピュータ側はどう見ても有利で、年々ソフトの質とコンピュータハードウェアの性能を上げるだけで勝ち上がることが容易(とまでは言わないけど)な立場にある一方、棋士の方は本当に職を失うことまで考えている方もおられるのではないかというくらい深刻な問題だと思う。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
本当に勝ちたいという気持ちはソフト作者も棋士の方も同様だけど、背負っているものが違いすぎるのではないかと思う。いま上位ソフト陣でソフトが勝てないと食べていけない人がいるだろうか。それに対して、棋士の方たちは本当に真剣に得体のしれないコンピュータという敵と戦っているのではないか。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
そういうことが混ざり合って、結果としてコンピュータがこれ以上強くなって誰が幸せになるのか、という問いに、その結果が出る前に答えを出さなければいけない時期に来ているのではなかろうか。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
だから、僕はコンピュータ将棋勢でありながら、本当に真剣に生活の掛かっている戦いをしている棋士の方を、応援したくなるのです。その背中を見て、「僕にも何か、できないだろうか」と思ってしまうのです。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
何故棋士の方達はその不利な戦いにあえて挑んでいるか、それは棋理の追求というもっと大きなものに突き動かされているからなのではないかと思う。それはきっと生活とかよりももっと大きなもので、抗えない運命を伴う崇高なものなのではないかと僕は感じている。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin もう答えは出てますよ。
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook えっ、そうなの〜/(^o^)\
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin 今日も答えの一つですよ。
いままで土かぶって埋もれてたマンホールあけたんですから。
将棋の子はしばらくこのマンホールの下探検して遊べます。
それが幸せと感じる子たちなんです。
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook 棋理の追求、ということでしょうか。。。?
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin コンピュータ将棋がでる以前に、昔の棋士はあえて深い研究はしなかったんです。無限のような有限であることは知っていたからです。
でも根がそういう子たちなので、結局自分たちで扉あけちゃったんです。
それは自らの食い扶持を粒しかねないとわかっていたけどしちゃったんです。
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook なるほど。。。もっと大きなものに動かされているわけですね。。。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin 知る喜びが人間の根源で、その先を進んで、いまはもう手詰まり感すらでてきていました。でも人間にとって脅威とも思えるコンピュータが、そこ子たちの遊び場を広げてくれたんです。世界はもっと広いんだと教えてくれています。
食える食えないは「あり方」でしかないんです。
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook いまコンピュータによって将棋は新しい局面を迎えた、ということですね。食える食えないは在り方という考え方、残酷ではありますが将棋の子が選んだ道なのですね。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin 残酷なようですが、他の世界ではあたりまえの事です。
数百年同じ形態で産業として残ってる業種の方が少ないのですから。
だから、ある人達は「伝統文化」にしたがりました。それで守られるからです。
だからコンピュータが敵である必要がありました。
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook 僕は物事の表面しか見ていなかったような気がしてきました。ありがとう。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin SFチックな話になりますけど、コンピュータが自らを生産する社会になれば、そのうち開発者も同じ境遇になるでしょう。その時コンピュータのせいで人間は要らないとはならないですよ。むしろ人間らしい人間をはじめますよ。
忘れるから覚える人が凄いとかね。それが人間らしさです。
— COCO (@ranging_rook) 2015, 4月 4
@kimrin もうちょっと、将棋もそうなってきてます。
コンピュータもすごいけど、人間やっぱすごいって。
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook いままさにコンピュータ将棋というものが強くなってきて「人間にできる本当の将棋という技芸は何なのか」が問われ直されているってことですね。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin そう、下ネタらしい下ネタってなんなのかってね。
答えは、
「ツイッターのきむりんさん、やっぱむりです…」
です。
これが人間らしさ。
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook そうですね、棋士の方がコンピュータの新手を取り入れたり、のことですね!
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@ranging_rook やっぱ無理w やっぱ無理w
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
なんか自分の中でコンピュータ将棋と将棋棋士の方の在り方について、だいぶスッキリとしてきた!
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin 私はもとから総合芸術が好きなので、メカ女子さんみたいな新たな将棋の形はすきですよ。これも答えでしょう。強さとは関係ないけど…
でも、将棋って人間にとって何ですか?っていう問いをコンピュータの登場でつきつけられたのなら、メカ女子みたいな形の楽しみ方も答えの一つです。
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook メカ女子、ただのへぼ(失礼w)ではなくて、アートの新しいカタチなんですね、大切にしたいです(^^) メカ女子的な楽しみ方を提案していけたらいいですね。強さではない、明後日方向への進化w
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@ranging_rook ところで、いまのやりとりを元にブログ記事とかにまとめて取っておきたいのですが、発言の引用はOKですかー? なんか不躾なお願いですんません。。。
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
@kimrin ツイッターのきむりんさん、やっぱ無理です。
まで含めておkです
浅い事しかしゃべってないですけど
— COCO (@ranging_rook) 2015, 4月 4
@ranging_rook やっぱ無理ですはちょっとw 今日1日寝かしてみて、あした文章に起こしてみようかなと思ってまーす。キチョハナカンシャwです!!!(いい意味で)
— きむりん(遺伝子組み換えのきむきむ) (@kimrin) 2015, 4月 4
2014年7月12日土曜日
メカ女子将棋forWin1.0.0 リリース致しましたー
やっぴー☆ きむりんだょ。
今日は嬉しいお知らせです。メカジョさんことメカ女子将棋のWindows 64bit版を
リリース致しましたー。いぇーい、ぴーすぴーすw
http://www.mechajyo.org/
実際にソフトを動かすまで長々としていますが、ぜひご自分のPCで、あのファンシーなメカジョさんを堪能してくださいませ!
技術的には、Julia言語でエンジン部を動かし、loopbackアドレスの4091ポートをlistenします。そして4091ポートを、登録したexeが見に行くようになっています。Mechajyo.exeというのは実際のところ、無駄なメッセージを出さないtelnetクライアントです。
このやり方を使うとリモートのエンジンを動かすことも技術的には可能です。
本当はEXE内からsystem関数でメカジョさんを呼び出したかったのですが、どうやら入出力が関連付けられず、無理みたいでした。そのためDOS窓を開いて、エンジンを実行してから対局、といういささか冗長な感じになってます。。。
何か気がついたこと、ありましたらwww.mechajyo.orgかこのブログまでお願い致します。可能な限り改善させていただきます。
まだまだ拙いソフトですが、宜しくお願い致します。(_ _)
(文責 kimrin)
今日は嬉しいお知らせです。メカジョさんことメカ女子将棋のWindows 64bit版を
リリース致しましたー。いぇーい、ぴーすぴーすw
http://www.mechajyo.org/
実際にソフトを動かすまで長々としていますが、ぜひご自分のPCで、あのファンシーなメカジョさんを堪能してくださいませ!
技術的には、Julia言語でエンジン部を動かし、loopbackアドレスの4091ポートをlistenします。そして4091ポートを、登録したexeが見に行くようになっています。Mechajyo.exeというのは実際のところ、無駄なメッセージを出さないtelnetクライアントです。
このやり方を使うとリモートのエンジンを動かすことも技術的には可能です。
本当はEXE内からsystem関数でメカジョさんを呼び出したかったのですが、どうやら入出力が関連付けられず、無理みたいでした。そのためDOS窓を開いて、エンジンを実行してから対局、といういささか冗長な感じになってます。。。
何か気がついたこと、ありましたらwww.mechajyo.orgかこのブログまでお願い致します。可能な限り改善させていただきます。
まだまだ拙いソフトですが、宜しくお願い致します。(_ _)
(文責 kimrin)
2014年7月6日日曜日
#JuliaTokyo いってきましたー
メカ女子将棋Julia tokyo#1 from Takeshi Kimura
#JuliaTokyo #1で発表してきました。タイトルは「メカ女子将棋」!!
@sorami さん始め企画運営の方、有り難うございましたー。
僕の発表自体はどちらかというとビット演算中心の、ややJulia言語
本来の使われ方からは離れた使用例の解説がほとんどで、いささか
皆さん「わからん!」って感じだったので、すいません、こんど
発表するときはもうちょっとlightな内容にしますです。
最後に実際に将棋を指していることろを皆さんに見て頂けたので、
これはこれで有意義だったかな、と思っておりまする。
やはり終わってみて、懇親会含め、よい集いだったなぁと。
データ分析や可視化、様々な最適化などで使われている例が多いので、
僕もそういう勉強していこうかな、と思う一日でした。
そして、#JuliaLang というまだ日本語のcomprehensiveな解説の
無いマイナー言語について、これだけのエキスパート達がもう既に
日本にいるとは、と驚きました。
「なぜRやPythonじゃなくてJuliaを使うんですか」ってよく言われると
思います。もちろんスピードの面で有利だったり、洗練された型システムを
挙げること、できると思います。ただ、ライブラリの面では発展途上感
否めないと思います。それなのに、何故、と問われればやはり、
#JuliaLang 日本でも流行るといいな♡
ありがとうございましたー
(文責kimrin)
#JuliaTokyo #1で発表してきました。タイトルは「メカ女子将棋」!!
@sorami さん始め企画運営の方、有り難うございましたー。
僕の発表自体はどちらかというとビット演算中心の、ややJulia言語
本来の使われ方からは離れた使用例の解説がほとんどで、いささか
皆さん「わからん!」って感じだったので、すいません、こんど
発表するときはもうちょっとlightな内容にしますです。
最後に実際に将棋を指していることろを皆さんに見て頂けたので、
これはこれで有意義だったかな、と思っておりまする。
やはり終わってみて、懇親会含め、よい集いだったなぁと。
データ分析や可視化、様々な最適化などで使われている例が多いので、
僕もそういう勉強していこうかな、と思う一日でした。
そして、#JuliaLang というまだ日本語のcomprehensiveな解説の
無いマイナー言語について、これだけのエキスパート達がもう既に
日本にいるとは、と驚きました。
「なぜRやPythonじゃなくてJuliaを使うんですか」ってよく言われると
思います。もちろんスピードの面で有利だったり、洗練された型システムを
挙げること、できると思います。ただ、ライブラリの面では発展途上感
否めないと思います。それなのに、何故、と問われればやはり、
この言語に未来を感じるから
なんじゃないかな、と思いました。#JuliaLang 日本でも流行るといいな♡
ありがとうございましたー
(文責kimrin)
2014年1月29日水曜日
世界コンピュータ将棋選手権、参加費を納めていざ出陣!
先日郵便局にいってきまして、例の
考えていますが、そうはうまくいかないですよねー
(そうだそうだーw)
まぁあの、電王戦や去年の選手権に出したバージョンをちょこっと変えてだすだけかもしれず、いずれにしろ、生暖かいご支援を宜しくお願い致します。てへっ。
あ、あと英語でMechajyoさんの説明を書いた資料作ったら、Julialangな人達にRTや言及をされて、いい感じだったので英語ですが、恥ずかしいですが、リンク貼っときます。
http://www.slideshare.net/kimrinjp/mechajyo
以上現場からkimrinがお伝えしました。
ではねちゃお〜
第24回世界コンピュータ将棋選手権
の申し込みをして参りましたー。
メカジョさん(メカ女子将棋、@mechajyo)、ことしもGWに華麗に参戦の
予定です。皆様宜しくお願い致します。
ことしはかずさアークということで、まだ未知なる領域に興味津々なのですが、
今年も水面下で色々な動きが少しづつ始まっている模様ですね。
今年はNextGenMechajyoという新しいメカジョさんプログラム(Julia言語)を
投入できたらな〜と思っています。Stockfishさんを参考にして、chessプログラムを
まずは作って、そこから一気に将棋にもっていきたいな、と。
Stockfish(chess,C++) ->
MechajyoChess(chess,Julia) ->
MechajyoShogi(Shogi,Julia)
(そうだそうだーw)
まぁあの、電王戦や去年の選手権に出したバージョンをちょこっと変えてだすだけかもしれず、いずれにしろ、生暖かいご支援を宜しくお願い致します。てへっ。
あ、あと英語でMechajyoさんの説明を書いた資料作ったら、Julialangな人達にRTや言及をされて、いい感じだったので英語ですが、恥ずかしいですが、リンク貼っときます。
http://www.slideshare.net/kimrinjp/mechajyo
以上現場からkimrinがお伝えしました。
ではねちゃお〜
ラベル:
Julia Language,
shogi,
ジュリア言語,
メカ女子将棋,
将棋
2014年1月4日土曜日
メカ女子将棋ソースコードとインストール方法について(捕捉)
メカ女子将棋のソースコードをGitHubに公開したのですが、実際に将棋を指させるまでには幾つか準備が必要です。本日はドキュメント不足だったメカ女子将棋のリポジトリについて、さらには将棋が指せるようになるまでの準備について、ブログエントリに纏めさせて頂きます。
まず、アカウントkimrinのGitHubにJapaneseChessとWCSC23という二つのリポジトリがありますが、通常はWCSC23の方を使ってください。JapaneseChessの方はバグがあるのと、WCSC23よりも弱いこともあり、お勧めできません。。。
基本的にコンピュータ将棋エンジン(プログラム)を将棋所というソフトに登録して使うのですが、いまのところLinuxとMac+Linuxの環境でしか動作実績がありません。
まずはLinuxで動かしてみることをお勧めします。Windowsでも是非動かしたいので、その辺今後対応していきたいと思います。まずは64bit Ubuntuでの動作について説明したいと思います。
Linuxでの将棋所の動作のために、まずmonoというフレームワークをインストールします。これはwindowsの.NETフレームワークに相当するもので、将棋所のLinuxでの動作をサポートするものです。Ubuntuならapt-getなどで入れてください。
さて、将棋所はインストール出来たでしょうか。mono Shogidokoro.exeとターミナルに入れて起動してみてください。
ここからが本番です。将棋所にメカ女子将棋をエンジン登録して使うのですが、登録方法が2種類あります。一つはエンジンの一部をコメントアウトして登録し、実際の対戦ではそのコメントアウトを再び復活させて動かす方法が一つです。
二番目の方法はsocketというコマンドを使う方法です。この方法はクラウドサーバーを使うために新たに開発しました。今日はこの二番目、socketプログラムを使うやり方をご説明します。
まずLinuxマシンにJuliaをインストールします。最新のUbuntuならapt-getできますが、Juliaのリポジトリの更新スピードはかつてないほど早いので、1ヶ月でもう過去のものになります。今後のために、JuliaはGitHubから落とした最新コードでビルドすることをお勧めします。
基本的にgit cloneしてソースコードを落としてきて、直下でmakeします。
configureはありません。なおビルドに際してgfortranなどが必要になります。makeが中断したら何が必要か確認してapt-get、再びmakeの繰り返しで進んでください。なお一部最新CPUではMakefileの修正が必要になる場合があります。あとAVXインストラクションを持たないアーキテクチャではワーニングが出るようになります。
makeして直下にjuliaファイルができたら、$ ./julia してみてください。プロンプトが出ればJuliaのインストールは完了です。早速WCSC23リポジトリをcloneして動かしてみましょう。
WCSC23/Juliaディレクトリで、$ ./Main.jl してみます。何も出なければ多分動いています。エラーが出る場合は何らかの修正が必要です。
なおBonanzaさんのfv.binをWCSC23ディレクトリ直下に置きます。
ここで、ERROR: type: typeassert: expected Array{(Any...,),2}, got Array{(Int64,Int64),2}
が出る場合、BitBoard.jl:39
を、次のように修正してください。
修正前(BitBoard.jl:39)
]::Array{(Any...,),2}
修正後(BitBoard.jl:39)
]::Array{(Int64,Int64),2}
おそらくJulia0.2以降でこのエラーのでる可能性があります。
./Main.jl して10秒以上待っても何も出なくなったら、
次を実行してみてください。
cat inputgame | ./Main.jl
ずらずらと文字が出て、bestmove 9g9fのような表示がでれば
エンジン自体は動作しています。
次にエンジンの登録方法です。
Juliaディレクトリに、4091.sh と 4091.regist.sh という二のシェルスクリプトがあると思います。4091.sh を4091.sh.hozonとしてコピーし(名前は何でもいいです)、4091.regist.shを4091.shにコピーして、将棋所に登録します。
登録できたら万々歳です。
次にsocketというプログラムをインストールします。apt-getでインストールしてください。
登録できたら、4091.sh.hozonを4091.shに上書きします。まだこの時点ではエンジンは動きません。
このsocket(1)プログラムは標準入出力をsocketにつなぐソフトです。サーバー、クライアント両方の動作をすることが可能で、まず登録エンジン側にクライアントを、それとは別にサーバーを立てて、サーバーにMain.jlを接続して登録エンジンの入出力をMain.jlの入出力につなぎます。
具体的にはWCSC23/Julia ディレクトリで下記コマンドを実行します。
$ socket -sqv -p ./Main.jl 4091
すると4091ポートをlistenし始めます。ここではサーバークライアント接続のために4091ポートを使うことにします。
その上で先ほど登録したエンジンを動かしてみてください。おそらく将棋が指せるようになると思います。
サーバーの接続は1戦ごとに切れます。まずサーバーを再び起動してから、将棋所でゲームを起動してみてください。
Macにsocketをインストールすれば、Macでも将棋所を使って対戦できます。また4091.shのlocalhostのところを書き換えれば、将棋所を動かしているマシンとは別のマシンでエンジンを動作させることができます。これがクラウドサーバー対応となります。
色々不備のある状態でソースコードを公開してしまったこと、反省しております。
申し訳ありませんでした。
引き続きこのブログエントリで質問して頂ければ、可能な限り質問にお答えして行きたいと思います。
以上です。
まず、アカウントkimrinのGitHubにJapaneseChessとWCSC23という二つのリポジトリがありますが、通常はWCSC23の方を使ってください。JapaneseChessの方はバグがあるのと、WCSC23よりも弱いこともあり、お勧めできません。。。
基本的にコンピュータ将棋エンジン(プログラム)を将棋所というソフトに登録して使うのですが、いまのところLinuxとMac+Linuxの環境でしか動作実績がありません。
まずはLinuxで動かしてみることをお勧めします。Windowsでも是非動かしたいので、その辺今後対応していきたいと思います。まずは64bit Ubuntuでの動作について説明したいと思います。
Linuxでの将棋所の動作のために、まずmonoというフレームワークをインストールします。これはwindowsの.NETフレームワークに相当するもので、将棋所のLinuxでの動作をサポートするものです。Ubuntuならapt-getなどで入れてください。
さて、将棋所はインストール出来たでしょうか。mono Shogidokoro.exeとターミナルに入れて起動してみてください。
ここからが本番です。将棋所にメカ女子将棋をエンジン登録して使うのですが、登録方法が2種類あります。一つはエンジンの一部をコメントアウトして登録し、実際の対戦ではそのコメントアウトを再び復活させて動かす方法が一つです。
二番目の方法はsocketというコマンドを使う方法です。この方法はクラウドサーバーを使うために新たに開発しました。今日はこの二番目、socketプログラムを使うやり方をご説明します。
まずLinuxマシンにJuliaをインストールします。最新のUbuntuならapt-getできますが、Juliaのリポジトリの更新スピードはかつてないほど早いので、1ヶ月でもう過去のものになります。今後のために、JuliaはGitHubから落とした最新コードでビルドすることをお勧めします。
基本的にgit cloneしてソースコードを落としてきて、直下でmakeします。
configureはありません。なおビルドに際してgfortranなどが必要になります。makeが中断したら何が必要か確認してapt-get、再びmakeの繰り返しで進んでください。なお一部最新CPUではMakefileの修正が必要になる場合があります。あとAVXインストラクションを持たないアーキテクチャではワーニングが出るようになります。
makeして直下にjuliaファイルができたら、$ ./julia してみてください。プロンプトが出ればJuliaのインストールは完了です。早速WCSC23リポジトリをcloneして動かしてみましょう。
WCSC23/Juliaディレクトリで、$ ./Main.jl してみます。何も出なければ多分動いています。エラーが出る場合は何らかの修正が必要です。
なおBonanzaさんのfv.binをWCSC23ディレクトリ直下に置きます。
ここで、ERROR: type: typeassert: expected Array{(Any...,),2}, got Array{(Int64,Int64),2}
が出る場合、BitBoard.jl:39
を、次のように修正してください。
修正前(BitBoard.jl:39)
]::Array{(Any...,),2}
修正後(BitBoard.jl:39)
]::Array{(Int64,Int64),2}
おそらくJulia0.2以降でこのエラーのでる可能性があります。
./Main.jl して10秒以上待っても何も出なくなったら、
次を実行してみてください。
cat inputgame | ./Main.jl
ずらずらと文字が出て、bestmove 9g9fのような表示がでれば
エンジン自体は動作しています。
次にエンジンの登録方法です。
Juliaディレクトリに、4091.sh と 4091.regist.sh という二のシェルスクリプトがあると思います。4091.sh を4091.sh.hozonとしてコピーし(名前は何でもいいです)、4091.regist.shを4091.shにコピーして、将棋所に登録します。
登録できたら万々歳です。
次にsocketというプログラムをインストールします。apt-getでインストールしてください。
登録できたら、4091.sh.hozonを4091.shに上書きします。まだこの時点ではエンジンは動きません。
このsocket(1)プログラムは標準入出力をsocketにつなぐソフトです。サーバー、クライアント両方の動作をすることが可能で、まず登録エンジン側にクライアントを、それとは別にサーバーを立てて、サーバーにMain.jlを接続して登録エンジンの入出力をMain.jlの入出力につなぎます。
具体的にはWCSC23/Julia ディレクトリで下記コマンドを実行します。
$ socket -sqv -p ./Main.jl 4091
すると4091ポートをlistenし始めます。ここではサーバークライアント接続のために4091ポートを使うことにします。
その上で先ほど登録したエンジンを動かしてみてください。おそらく将棋が指せるようになると思います。
サーバーの接続は1戦ごとに切れます。まずサーバーを再び起動してから、将棋所でゲームを起動してみてください。
Macにsocketをインストールすれば、Macでも将棋所を使って対戦できます。また4091.shのlocalhostのところを書き換えれば、将棋所を動かしているマシンとは別のマシンでエンジンを動作させることができます。これがクラウドサーバー対応となります。
色々不備のある状態でソースコードを公開してしまったこと、反省しております。
申し訳ありませんでした。
引き続きこのブログエントリで質問して頂ければ、可能な限り質問にお答えして行きたいと思います。
以上です。
2013年11月9日土曜日
将棋電王トーナメント、メカ女子将棋応援ありがとうございました
皆様ご存知の通り、11/2の電王トーナメント予選にメカ女子将棋が参加いたしました。
結果は2勝(且つその二勝は相手の投了と相手の反則で得た勝利w)6敗
でした。
対戦の模様はニコ生でも放送され、「ファンシー」な棋風とか、
「メカジョの呪い」などのコメントが流れ、ニコ生を明後日の方向に
盛り上げましたw
Twitterでも様々なコメントを頂戴いたしました
色々な形で生暖かい声援をたくさん頂きました。
この場を借りてお礼申し上げます。ありがとうございます。
ファンシーな棋風なのですが、間違いなくalpha-beta法のバグと
評価関数のバグによるものです(他のチームの方から助言頂きました)
次回電王トーナメント、世界コンピュータ将棋選手権の目標は、
まずはバグを潰すところから、でしょうか。
重ねてありがとうございました。
今後もメカ女子将棋を宜しくお願い致します。
(文責kimrin)
結果は2勝(且つその二勝は相手の投了と相手の反則で得た勝利w)6敗
でした。
対戦の模様はニコ生でも放送され、「ファンシー」な棋風とか、
「メカジョの呪い」などのコメントが流れ、ニコ生を明後日の方向に
盛り上げましたw
Twitterでも様々なコメントを頂戴いたしました
色々な形で生暖かい声援をたくさん頂きました。
この場を借りてお礼申し上げます。ありがとうございます。
ファンシーな棋風なのですが、間違いなくalpha-beta法のバグと
評価関数のバグによるものです(他のチームの方から助言頂きました)
次回電王トーナメント、世界コンピュータ将棋選手権の目標は、
まずはバグを潰すところから、でしょうか。
重ねてありがとうございました。
今後もメカ女子将棋を宜しくお願い致します。
(文責kimrin)
2013年10月20日日曜日
メカ女子将棋のソースを公開しました!
オッすオラきむりん。オラにみんなの知恵を分けてくれ!
って訳ではないのですが、メカ女子将棋のソースコードを公開しましたー。
ライセンスは緩いMITライセンスとなっておりますー!
まぁあの、弱いソフトのソースなんて誰も見ないわ、とかその通りなのですが、
電王戦もありますし、ネット上にソースあると便利でしょ、みたいな感じですです。
もしかしたら間違えてJulia Language関係の人がpull requestしてくれるかもしれ
ないし、しないと思いますがはい、しないです(T_T)
https://github.com/kimrin/JapaneseChess
一応、プログラムのためのホームページもありますが、上記README.mdからの自動生成だったりしますです。
http://kimrin.github.io/JapaneseChess/
ではね、ちゃお☆
って訳ではないのですが、メカ女子将棋のソースコードを公開しましたー。
ライセンスは緩いMITライセンスとなっておりますー!
まぁあの、弱いソフトのソースなんて誰も見ないわ、とかその通りなのですが、
電王戦もありますし、ネット上にソースあると便利でしょ、みたいな感じですです。
もしかしたら間違えてJulia Language関係の人がpull requestしてくれるかもしれ
ないし、しないと思いますがはい、しないです(T_T)
https://github.com/kimrin/JapaneseChess
一応、プログラムのためのホームページもありますが、上記README.mdからの自動生成だったりしますです。
http://kimrin.github.io/JapaneseChess/
ではね、ちゃお☆
登録:
投稿 (Atom)