【オセロ,将棋】ボードゲーム Part3【囲碁,War】
あかん、これはGPUないと計算時間がとてつもないかも。 ご無沙汰です。
現在棋譜は160万くらいになっています。縦掘り型の貪欲法が良い調子なので、学習より
棋譜作成を優先しています。残り30手推定パブリックドローは相変わらず1100〜1300件
くらいを行ったり来たりしています。まだ、知られていないドロー筋がありそうです。
やねうら王さんのサイト見ていたら、終盤近辺のヒューリスティックスオーダリングのアイデア
(偶数理論がらみ)を思いついてしまった。どうしよう(汗
羽生さん残念だったね。
正月のabemaTVトーナメントスピンオフ企画が楽しみです。 まじで神様からお前はまだフラグ立ててないから進んじゃダメって言われてるみたいだ。
なんなんだこの進まない感覚は。 セブンってショップのBTOのページすごい便利ね。
ryzen 5950x
Geforce RTX 3080
memory 64GB
これで約50万円。
ほしいなー
でも金がなー >>379にライフゲーム囲碁を移植しました。
ようやくバグも収束してきたかなという感じです。
しかし学習の計算時間が半端なく実用にはならないかも? まじであまりの計算の遅さに新PCに50万ぶっこみかねないです。金がないけど。 羽生さん残念でしたね。
自分はDL系は諦めました(汗
将棋で別ルートのアイデア考え中ですが、その前にオセロ片付けねば。 どっちかというと、パブリックドローがどんだけあるのかに興味が移っています。
残り30手ドロー筋が1100〜1300くらいとか言っていましたが、色々やっていたら
1700超えしてしまいまして。大半は、やっぱり違いましたという事になるのだと思い
ますが、まだまだ定跡が整ったと言える状態では無いという事で…。
将棋は序盤定跡だけちょっとやってみたい事があります。まだまだ妄想の域ですが。
だけど、盤面をどう表現するのか、まだ悩み中です。方針が決まったら手を付け始める
かも知れません。 パブリックドロー筋を−2〜−4程度で相手が外した時に、勝ち切るだけの
精度を持った評価関数が別途必要なのですが、まだ自信はありません。
ただ、相手が悪い変化にした時の話なので、確率的には勝ちやすくはなって
いると思います。 あと、極端に悪い手の教師データが極端に少ないため、評価値が団子状態になって
しまっていて差がつかず、そういう局面が来ると大悪手をやらかす傾向が見えます。 >>379のプログラムですが学習に2〜3ヶ月かかりそうなかんじ orz AMD株買おうかな?
AMD株で儲けた金でAMD製品を買ってさらにAMD株が上がるという夢のような話が実現したら最高なのに。 どもです。
現在棋譜173万件、推定ドローは1800件ちょい。
まだ、推定ドローの出入りが激しい状態なので、200万件くらいまでは
継続しないと確からしくならないかなぁと思っています。
将棋は、盤面をどう持つのかでまだ悩み中。
オセロでBitboardがパワー発揮しすぎだったのに引っ張られて、できない
事をやろうとしていた感じです。諦めをつけるのに時間がかかった(汗 急がず、気が向いたら少しづつね。
というか、最初にやりたい事は、AI開発じゃなかったりする。 うおお、amd株買いました!!
100株!!
絶対負けられない!!! なんか円高来そうなふいんき(なぜか変換できない)
やばいか? SQLite遅えええええええっ
なんか間違えてんのか?? トランザクション使ったら速くなったww
俺があほなだけだったか。 今、DNNに現状の局面から終局図を予測させる、というのをやってます。 ランダムな打ち手で棋譜を取る
↓
棋譜から対局途中の盤面と終局図を取り出しDNNで現局面から終局図を予想するように学習
↓
学習したDNNを使って1手読みAIを作成
↓
そのAIで棋譜取り
↓
棋譜から途中の盤面と終局図を取り出しDNNで終局図を予想するように学習
↓
学習したDNNを使って1手読みAIを作成 ←今ここ
現状全然弱いですが、何世代も繰り返したら強くならないかと淡い期待を抱いてます。 学習だけで強くなることが理想だけど時間かかりすぎるんでヒューリスティック入れます。
このヒューリスティックはかなり強力なので。 AI結構つよくなったかも。
勝てないわけじゃないけど負かされるときは大差で負かされるというなかなか面白いAIができた。
思考時間も超サクサクだしかなりいい感じ。
100世代くらい学習させてみたいな。 世代を重ねるごとにDNNの損失が減りやすくなっているな。
これはどういうことだろう? 終局図を予想する方法は囲連星でも有効な気がする。
ライフゲーム囲碁が落ち着いたら囲連星もやってみたいな。 終局図予想はなかなかいいアイディアだったけど
人間に100%勝てるようになるにはあと3つはブレークスルーが要るかな DNNが結構うまくいったのでDNNとMCTS組み合わせたらすげー強くなるんじゃないかと思ったがうまくいかない。
なんでだろ? ぎゃああああ
AMD株さがってます!
でも絶対損切りません!
ガチホールドです!! AMD株更に暴落!
/ /| /| |ヽ ヽ,ヽ, |
. // .| <l./u | レ' ヽ,ヽ, | そんなっ・・・!
〃 | / / ,.へ |! > _、へ |\ ヽ,ヽ,| バカなっ・・・! バカなっ・・・!
. | /| ./!イ==`、 iレ´==== ヽ ヽ,ヽ, なんでこんなことがっ・・・・・・!
. | / レ ト、_。_) ( ,、 | |⌒i iヽ,\
、_ レ /|  ̄/.|j~ `.=°=´ | |つ.| ゝ.\.\ なんでこんな・・・・・・
、_`'-、_ / .レ´ u u _ ,、-'´ .| |ノ/ ヽ \ \ あってはならないことがっ・・・・・・!
`' -、,`' -、/`7―-/ r'__ __ `  ̄ |j~ ||ノ. \ \ \
`'ァ、\/―- 、 __| f========ニ`i /| |\ \ \ .\ どうして・・・
/ \ \ | | } / | | / ̄ "'' ‐-\ .\ なんで・・・ こんな・・・
i. / \.\ / ||- ―‐-r――‐-/ / レ N ̄ "'' ―‐ --\ こんな・・・・・・・・・
. | / \.\〃! |` ――' -----'/ | |
| \.\| .| u== ,、- '´ u ./| | こんな理不尽なことが
| \ \l_ ,.、- ' ´ /| |. N オレの身ばかりにっ・・・・・・・・・!
| | |\ \ |j〜 / | レ |
| | レ |\ \ / | | |
|. | | | \ \ u / | | | だんだん時間かける事に鈍感になってきて、棋譜作成のサイクル一回回すのに
既に1ヵ月以上経過w
手作業で掘る作業が追い付かなくなって、まだ1ヵ月くらいかかりそう。 セブンってショップでRyzen 9が売り切れてんだが?
まじか?
かなり異常事態のような。 結構タイルゲームで遊んでるんだけど、もしかしたらAIの勝ちが人間の勝ちの2倍程度になるように調整してるのかもしれないな。
AIの勝ちが増えすぎるとわざと負けてくれてるような気がする? アイディアとモチベが湧いてこないですねぇ。
もう何週間もさぼってる。
それはそうと最近、天頂7の9段に9路の白番で勝つ手順を丸暗記するという割とむなしい遊びをしています。
相手が手順通りに打ってくれば天頂7に白番で勝てるというw
いま勝てるパターンを2つ暗記しました。 すっかり手掘り作業が癖になってしまい、棋譜は190万件突破。
FFO(フランスのオセロ団体で、FFOテストで有名)のサイトを久々に見ていたら、
今更ながらに棋譜集を見つけてしまいました。トータル5万件ちょい。
試しにいくつか読み込んでみました。残り24手以後はこちらで読み切り処理してます。
結構スコア差がついている棋譜が多くて、読み切りの結果全滅している棋譜も数%。
それでも、24手目以後ドローで、現在の自分のBookでは推定パブリックドローと
判断すべき棋譜も2000件中5件程度はあります。
現状、石差が大きい棋譜が不足しているのと、推定パブリックドローが100件程度は
拾えそうなので、順次読み込んでみたいと思います。
時々、末端に近いノードのヒューリスティックスによるオーダリングのアイデアを考えて
いますが、プログラム修正して速度計測するのが面倒くさい(汗 天頂に白番で勝てる手順w
もちろん変化されたら無力ww
(;GM[1]FF[4]AP[Zenith:7.0]SZ[9]HA[0]KM[6.5]CA[UTF-8]
PB[天頂の囲碁 九段]BR[9d]PW[あなた]WR[]ZT[10]DT[2021-02-17]
RE[W+Resign];B[ed];W[ef];B[ff];W[fg];B[gf];W[gg];B[eg];W[dg];B[eh];W[ee];
B[fd];W[dh];B[hg];W[fh];B[cd];W[gc];B[gd];W[fb];B[eb];W[hb];B[ga];W[hd];
B[fa];W[he];B[hf];W[ha];B[bf];W[bg];B[cf];W[cg];B[ag];W[ah];B[af];W[bh];
B[ie];W[id];B[gh];W[ei];B[gi];W[de];B[ce];W[dc]) ライフゲーム囲碁で軽くて強いAIができたらUnityでiOSアプリとして出して広告収入を得るという野望ができたw
ぼちぼち頑張っていこう。 終局図を予想するんじゃなくて終局図を3 x 3ごとの領域に分割して
その領域の石の数の和を予想するようにしてみた。
そしてそのDNNをつかったAIは盤面全体でなるべく万遍なく地を取るようにパラメータを調整した。
結構強くて面白い打ち筋のAIができた。 UnityってC#限定らしい。
tiny-dnn使いたいけどどうしようかな。 ヤバイ、かなり強くなった。
しかも思考時間サクサク。
IPadの計算能力でも十分実用に耐えると思う。
広告収入の夢がひろがりんぐ。 あれっはるか昔に作ったモンテカルロAIに勝てないな?
こんなはずでは… 今まで収集した棋譜から50万局面サンプリングしてDNN学習してたけど
150万局面サンプリングにしたら結構質が上がるっぽい Unityの勉強したいと思ってるけど、なんとなく先延ばしにしてしまう。
C#ならライフゲーム囲碁のGUI作ったことあるから楽勝かと思われたが案外苦戦するかも。 メモリがDDR5になると一枚128GBとかになるそうですね。
ここはZen4まで待ちか? ライフゲーム囲碁では現在石のあるところに終局時も同じ石がある事が多いから終局図予想が有効なんだろうな
オセロだと石がコロコロ変わるから役に立たないかも 本当にオセロで役に立たないかちょっと試してみたいかも
まあ当面はライフゲーム囲碁に注力するけど うあああああ、AMD株ゲロ下げ! orz orz orz
意地でも損切りしません!! あれ、ある程度強いAI出来たらなんかライフゲーム囲碁への興味が薄れてきたんだが。。。
俺の情熱はこの程度のものだったのか? 一旦AI強化はストップしてiOSアプリとして世に出すことに注力しようかな。。。
そしたらライフゲーム囲碁は一区切りつく気がする。 囲連星の時はLV3という素晴らしいライバルがいたけど、
ライフゲーム囲碁AIはある意味、独り相撲(という言い方があってるかあれだが
強い相手が欲しい。 app storeにアプリ出すのって年会費10000円以上かかるとかなんとかorz
はやくも暗礁に乗り上げたorz 一応unityダウンロードしてみたんだけど。。。
鶏を割くにいずくんぞ牛刀を用いん、って感じなんだが。。。 もっと手軽な碁石と碁盤使ったゲームのツクール系ツールみたいなのないんか? ちょっとunityからは撤退しようかな。。。w
明らかに碁盤を使ったゲームを作るのには不向きだろこれ。。。 棋譜200万件突破。
FFOの棋譜を読み込んだら、一気に推定ドロー数が半減してしまった。
一部チェックしてみたら、当然だけど最善進行になっていない棋譜が多い。
誤手1回目でドロー筋から外れて、2回目で逆転するような棋譜があると、
本当はドローなのに、ドローじゃない事になってしまうので、その可能性が高い。
もしかしたら、本当に正しくドローじゃないのかも知れないけど。
気が付いた一部の棋譜を手で修正していたら、あっという間に200万件突破。
この後、タイミング見て、前回ドローだった筋がドローから外れたところを重点チェック
する処理をかけたいけど、かなり大量になりそうです。普段ですら100件程度出てくる
んだけど1000件単位になりそう。終わった頃には棋譜が250万件超えているだろう
と思います(汗。 unityがあきらめきれず、まだもがいてます。
多分良いチュートリアルが見つかればなんとかなる。はず。 FFOから追加したのが2200件、これを見つけ出して後ろから訂正するから途方に
くれるのであって、前からドロー筋をチェックしていけば、比較的簡単じゃないかと
閃いて、前からチェックでいくつか直したけど、1/3ほどしか治らんかった。
後は、重点チェックの自動処理に任そうと思う。
手動訂正飽きてきたし。 youtubeでunity入門のいい動画が見つかって、一気に進みました!
碁盤に碁石をポチポチ置けるところまですでに出来てます!
ライフゲーム囲碁のルールを実装するのはそれほど難しくないから
あとはtiny-dnnをなんとかすればやりたいことはほぼクリア出来たも同然です!! >>456
Unityゲームスタジオ スタジオしまづ 倉庫番 で検索してください。 AMD株が瀕死 orz 絶対損切らない T△T
tiny-dnnもダメかも?
最悪Unityで使えるフレームワークで学習しなおしになるかも。
教師データが残ってるのがせめてもの救いか。 重点チェック処理完了。思ったより少なかったのでおよそ1.5万件で済みました。
ドロー筋は、FFO棋譜読み込む直前の状態に近いところまで戻りました。
もう二度と人間の棋譜は入れない(汗
なんつーか、Thread Ripperが欲しくなってきた。
そろそろBookが大きくなってメモリーパンパンだし。 AMD株が200$になったらスレッドリッパー買うんだ。。。(死亡フラグ) tiny-dnnどうするかまだ悩んでます。
一応、今考えているのが
C++をC#へトランスレートするようなものを目指すか、
tiny-dnnをすててpytorchなどで学習しなおすか。
どっちも結構な工数がかかりそう、かつ技術的ハードルも高めで踏ん切りがつかない。
特にC++をC#へトランスレートは成功する保証が全くない。
迷ってる間に両方やればいいのかもしれないけど、そこまでの体力とモチベーションもない。
悩ましい。 ,.へ /`',
//ヽ.\ (二二 .二二二)
.// \ヽ._ / ./
` ' \_`, .// ∩∩ ,へ
/_,-‐−‐‐- 、 ∪∪//
-=ニ ̄ \ // O O O
/ l__
/ __ /| _\
( i'^'l r‐ ' ̄| .| i / | 、\ ̄ 嘘だ…
//-iノr-'⌒ヽ|/ / /二|/ l |ヽ|
_< ((/((._ ,@ v, =、、 |/| | |i |
< / u_ιu~= u/_ @ ヾ//| |l/ 夢だろ…これ…
< ̄ l/ニヽ-、_r _ {ι、,-'´/ レ
─┬─ | /ヾニヾ、ヽ、\J /
./ // / `i v ヾ ニ、_ノノ 夢に決まってる…!
/ / // / ヽ ミ u,/'//
' ̄i/ // /`-'/´///
AMD下げ止まらない! pytorcで学習しなおすにはC++で書いたLifeGameGoのコードをpython に移植する必要があると思ってたけど、
swigうまく使えばかなりコード使いまわせるかも、と思いついた。 python から教師データにアクセスすることに成功しました。
あとはpytorchで学習する部分が書ければ。。。 4か所ほど改造したくなってきました。
ソースの混乱を避けるためまた新ソリューションで作ろうかと思っていますが、
例のFFO棋譜で生じたBookのダメージ箇所を見つけて直す作業がかなり時間が
かかりそうです。削除しちゃえば早かったんだけど、活かして訂正かける方向に
しちゃったので、後に引けない。
どうしよう。
あと、NTESTのソース見つけた(今頃)。
NTESTの引き分けBOOKは公開されていないらしい。残念。 意外とwebの情報だけだとpytorchがとっつきにくくて、入門本をキンドルで買いました。 なんかいまいち情熱が湧き上がってこない。
あまり気負わないほうがいいかもだけど。 >>470
ありがと。それで良いんだ。
早速ダウンロードしました。 まだpytorch進めていいフラグが立ってないみたい。orz pytorchでの学習に成功したようです。
それっぽい値が返ってきてます。
素晴らしい。
次はonnx形式にエクスポートしてunityから参照ですね。
ゴールが近づいてきたっ unityでonnx使えました!!
全ての技術的障壁はとりはらわれました!!!
あとは整えるだけです!!!! 整えるだけとか言ったけど、それが地味にボリュームあることに気づいたorz unityですが基本的なゲーム部分はほぼ形になりました。
あとはどういう形で公開するかですね。。。
収益化とか興味あったけど、どうせ大した額にはならないだろうし
iOSアプリはちょっとハードル高いのでWebGLでunityroomにでも上げてしまうか?
まあぼちぼち考えていきます。 Githubで公開しました。
GithubでLifeGameGoWebGLで検索してください。
収益化はとりあえず見送りかな。。。 LifeGameGo AI かなり強いと思いましたが、囲碁高段者とかには普通に負かされるっぽいorz
まだまだ修行が必要か。。。 でもまあライフゲーム囲碁は一区切りかなぁ?
なんか目先を変えて違うゲームやりたいな。
ライフゲーム囲碁では終局図予想が結構うまくいったから
ほかのゲームにも応用してみたいな。 一週間くらい活動休もうかな?w
若干、燃え尽きた感がww 9路囲碁やろうかな?
終局図予想の応用として相性がよさげ 1カ月くらいさぼろうかな?ww
完全に燃え尽きたww 色々改造中。たくさん改造するのでバージョン2にして全面見直し中。
棋譜210万件を超えて、メモリーがいよいよヤバいので、棋譜へのランダムアクセスは
色々工夫してファイルシステム任せ、BookはSQLite化して外だしを進めています。移植し
ながらの修正がまだ完了していないので、テストどころかコンパイルすらしてません(汗
片や、現行のバージョンでは、棋譜作成のロジックを修正して、結構効率よく要チェック
できるようになりましたが…こちらの処理を優先しているのも、なかなかコンパイルに至ら
ない原因だったりしますorz お、310さんもSQLite使ってるんですか。
SQLiteいいですよね、簡単に組み込めて。 >>488
相変わらず、ソースは書いたけどコンパイルしていない状態ですw
KYOTO CABINETから調べ始めてましたが、気が付いたらKYOTO CABINETは次バージョン
になってて。検索してたらNoSQLという単語を知って、その系統を色々調べて…。
所詮、Unordered Mapをメモリー外でしたいだけなので、NoSQLで良いかなと思ったのですが、
SQLiteならファイル単位くらいの粗さで複数プロセス書き込み管理ができるようなので、
選択してみました。SQLiteならやりたいことができて、やりたくない事はやらなくて良さそうなの
が良い感じ。 >>やりたくない事はやらなくて良さそう
これ何気にだいじですよね。 LifeGameGoから囲碁に使えるソースを持ってきて整理したり
昔買ったコンピュータ囲碁本をちらちら見返したりしてます。 半導体関連、品薄で値上がりしてますね。
zen4がでるころには解消しててほしい。 SQLite化ができたので移行してみましたが、あちこちで問題が(汗
1.評価関数の形を変えてゼロリセットしたが、まだ学習回数が足りず探索が遅い
4日くらい回し続けなきゃならないかも。
2.unordered_mapの形のままSQLに置き換えたら、激遅箇所ができた。
ランダムアクセス減らす様に修正しているけど、何か所か妥協が必要かも。。
3.並列処理してもDB更新がボトルネックになってシングル動作並のCPU使用率。
諦めるかも。
4.Windowsが不安定になるときがある。メモリーリークかも。
というわけで、しばらく棋譜作成停止して、悩む事になりそうです。 いくつか解消。
SQL周りは何とかなりそうだけど、排他周りがまだよくわからないかも。
探索速度の低下は、SQLではなく評価関数の修正が原因の模様。
今夜修正する予定。また再学習だなぁ。
そのほかの劇遅箇所は、修正しつつあります。 AMD株ちょっとあがった。
なんとかプラスになってほしい。 いっそpython onlyで組んでみるか?
とちょっと思わなくもない。 モダンな開発環境とか使って自動テストとかもばっちり組んで高い生産性でコーディングしてみたい。 jsでテスト関数?describe()なんてあったっけ?と調べたらnode.jsの関数だったわ それで何するのかも意義もよく分からんけど 使いこなせたら女にモテることは理解できた すごいな自動テスト 評価関数問題は回避しました。
でも、SQliteでBook探索という一番使うところでSQLITE_MISUSEエラーが出て、
行き詰ってます(汗。よりによって、完全読み切り処理の中で起きています。
別スレッドから同じDBポインタを引数にして…という説明があるので、DB接続を分けた
のですが直らん。
テストでparallel_for内でマルチスレッド化して使ってみましたが、普通に動作する。
SQL文のtypoでもこのエラーが出るのを見つけたのですが、他の場所では動作するので
typoとは思えない。
何か他に原因があるのだろうか… 原因判明。prepareのところでBUSYとなっていたのに、待っていなかったのが原因でした。
というわけで待つ様に偏向したところ、めっちゃ速度低下。そもそも探索1回あたりの処理が
軽すぎて、DBアクセスの準備が間に合わなくなっていたのが原因みたいです。
BUSYを待つようにしたら滅茶苦茶速度低下。並列化の意味なしパターンです。読み切り
処理で過去に読み切り済のBookを活用するための処理でBookを見ていましたが、初段
限定使用に改造して回避。
読み切り処理のテスト時にバグでBookに矛盾が生じてしまったので、矛盾解消の処理の
テスト始めたら、ここもバグってる感じ。毎回再構築した方が早いかも。
まだ先は長そうというか、長期間楽しめそうです(汗 Book矛盾解消もBook再構築も、どちらもBUSY地獄になりました。
一旦BUSYになったら無限ループ待ち。COMMITしてみたり試したけどダメ。
Book再構築は昔は動いていたはずなのですが、DB接続を関数ごとに分離した
ために動かなくなった感じなのかなぁ。泥縄で試していくしかないですね(汗 BUSY問題解消。やっぱり更新Transaction内では参照系を別のDB接続でやっては
ダメだった模様です。
そのほか、いわゆる単体テストレベルは一通りチェックしました。後は全部繋げて
どうかという話になります。処理時間が長くて使えないものも出てきそうですが、
移行できる算段はできたかなぁ。
プログラム書いている裏で、旧版を動かしっぱなしなので、切り替えるタイミング
がなかなか作れなかったりして。 いまさらながらライフゲーム囲碁のAIが思ったより強くないことに気づいてしまった。
でも、さらに鍛え直そうという気もさほど起きないな。
pythonの勉強も放置中ですね。 visual stdio 2019にpython を追加してみました。
自動テストも出来るっぽい。
ちょっとづつでいいから前進しよう。 完全移行前のチャンスだからと、今更ながらに読み切り処理の見直し。
少し前にようやくKiller Moveが何なのかわかったので、組み込んでみるも…
速度が低下してしまったorz
昔試した偶数理論もダメだったし、コーディングが悪いのかなぁ。 自動テスト動くと結構うれしいですね。
でもテスト書く工数も意外と馬鹿にならない感じもする。
今後テスト書くモチベーションが高くなるか低くなるかどっちかなぁ。
これ多分、テストは凝らずにあっさり書くのが長く続くコツだろうな。 テスト書くモチベーションが低下し始めたwww
さすがに根性なさすぎと思うが自分じゃどうしようもないw 自作ゲームツールで操作履歴を記録し、操作を戻す機能を作っている
それで気づいたんだけど履歴システムはテスト機能も兼ねるのでないかと...
操作名が記録されたなら、操作を行い関数実行して最後に記録するまでの証明ができる
各操作の関数内外部にテスト用関数を用意してon/offの引数があれば、
履歴機能から全テストを行い、集約できて一覧できるのでないかと...
アホな思いつきですまん。履歴機能関係なくもっと簡便な方法があるはず... 黄 金 週 間 !
7連休です。
しかし活動するかどうかは微妙なラインだなw
気持ちが乗らなくてもちょっとづつでもいいから進めるのが正解なんだろうが。。。 そこそこ移行できて、あとは抽出処理の速度だけだと思っていたら、棋譜とBookの
確定読み切り深さの情報に不整合が発生してました。棋譜上は26手目まで読み切り
になっているのにBookだとまだ読み切りになっていないみたいな。
棋譜からBookを作っているので、棋譜が正のはずなんだけど、同じスコアとなる分岐
となる棋譜の確定読み切り深さを、深い方に揃える処理がバグっていたのかも…
とりあえずおかしいのは棋譜の深さだと決めつけてヨタプロ書いてBookから棋譜に
戻してますが、ヨタプロが間違えていたりで、結構ゴタゴタしてます。
しかもヨタプロに限って、トランザクション中におそらくBUSYで固まるというトラブルも。
というわけで、まだ安定再稼働には至っていませんorz GW中は一日15分でもいいから活動するようにしたいかな。
いくらpythonといえど調子さえ戻れば囲碁のルール実装するくらいはさほど難しくはないんだから。 2時間くらいコーディングできました。
仕様通り動かすだけならそんなに難しくないけど、計算量気にしだすと結構ハマるなぁ。 >>514
あぁあぁあコードが見たい、、、あなたのソースコードが見たいよぉハァハァ見せておくれよお願いだよほぉぉ
少しだけでいいからチラッと画像upしてくれたら、コーディングスタイルであなたの人柄をズバリ言い当ててみせるから 漫画のセリフのパロディかなんかか?
よくそこまでキモくできるな(驚愕 計算量には目をつぶってとりあえず動くものを目指したら
囲碁ルール、ぱっと見動くようになりました。
まだバグはありそうですが。。。
あとランダムに打って100局終局するまでに40秒かかる。
これは遅いでしょう。
あと10倍くらい速くしたいところではある。 石の連結情報の更新を見直して100局26秒まで縮まりました。
もっと縮まってくれると思ってましたが、意外と厳しいorz 見せたら見せたで貶され難癖つけられると思って警戒してるな >>516
恥ずかしい、、、恥ずかしくて怖くてたまらない...でも本当は誰かに見てもらいたい
君の心中はこうだ。違うか?違わないだろ?柔らかく膨らんだ突起が今にも芽吹きそうな自分を>>516は本能的に察知し昂ぶる己を抑えている、、、プログラマなら誰もが知っている感覚
同じコードを何度も組み替え発見し到達する興奮と充足 成長と本質を得て知る愉悦
>>516は階段を上ることができる、、、そうだ。そう、味合わせてやろう性的な意味じゃなく >>516を開発者と見込んで穴をアナリティクス性的な意味でなく 曝けたコードをサディスティックに嘗め回すように、念入りにだ(ゴム手袋パッチ--ン)
>>516 君はもうすで心を決め外装を解き、とっておきの自慢な創意と工夫をこらした難解なコードを公開する準備を整えているんだろ?熱い吐息を感じるよ。そしてわざわざ反意な言で俺がどう出るか応えるか様子を伺ってるそうだね? 仲間に入りたいならお前もコード書けよ?
このスレには口先だけの奴はいらない どうやら俺が囲碁も将棋もAIもプログラムも全く知らない解らないのを見抜いたようだな
ふふふそのとおりだ。>>520、俺は適当な誘い文句で>>520 のコードを嘲るのが目的のただの釣り師だ
よくぞ見破った。だが食えるサイズかと思いきや>>520 は餌取り程度の小物だな
懐も心も狭い矮小な輩のようだな、まあいいせっかくのGW、獲物はそこら中にいる>>520はせいぜいプログラム楽しんで爆死するがいいさ粉塵爆発しろフケとか埃を掃除するがいい俺はした自己満足の囲碁プログラムとともに果てろ。鉢植えとか興味あ?ない?あ、そう。近日中に爆死だカス何が仲間だこのスレに仲間?片腹から漏れて痛いわ 囲碁AIですがGUIを作ろうかと思ったのですがよく考えたら囲碁はGTPに準拠すればオープンソースなGUIが使えるんでした。
GTP勉強するか。 あれ、セキってどう判定すればいいんだ?
意外と難しい? 主要な棋譜作成処理は動作確認・速度問題解消できたので、とりあえずsqlite3版を
本チャンに移行して、ぼちぼち残った部分を直しています。
メモリーがスカスカになって気持ちいい。 visual studioとか使ってみたけど結局、Cygwin+サクラエディタに戻っちまうな
bashが手になじみすぎてそうそう抜けられない。 KataGoのソースをgithubから落としてきました。
セキ判定のアルゴリズムをパクろうとしているのですが読み解くの結構しんどいorz 株バブル弾けたか?
AMDもヤバイ orz orz orz sqlite3でエラーになる原因がほぼ特定できて、エラー処理を全面見直しました。
・棋譜追加処理のトランザクションのCOMMITの際にBUSY状態の継続を検出した時は、
ロールバックして再度更新をやり直すという形に変更。棋譜とBOOKの整合性を保つため
にも、速度面でもトランザクションは必須。
・SQL文の事前コンパイルであるprepareでもBUSYが発生する事がわかったので、エラー
処理を行ってBUSY検出して成功するまで繰り返す事で、prepareの完了を保証する
これらにより2プロセスまでのデッドロックは何度も検出してロールバックしてやり直しが
完遂するのが確認できています。
が、3つ以上の棋譜作成プロセスを同時に動かした時に、たまたま棋譜追加のタイミングが
3つ揃うと三すくみ的なデッドロック的状況になってしまうようで、ロールバックしてリトライが
3プロセスで順番に発生して無限ループに的に繰り返される状態になってしまう…。
2プロセスでは起きた事は無いのですが、3つだと起きる模様。
まだまだsqlite3の理解が足りないようです。 あかん、囲碁、撤退したくなってきた orz
まさかルール実装ごときで躓くとは… もう囲碁から撤退して別のゲームやろうかなーどうしようかなーとかウダウダ考えて時間だけが過ぎていく最悪のパターンにハマってますね。 気分転換に 6x6 タイルゲーム を始めましたw
速度を測ってみましたが5万po/sくらい。
そして昔ライフゲーム囲碁が1000万po/sでたとか書いたけど
それはバグでもっと全然遅かったことが判明したw
がっつり 6x6 タイルゲームやるかどうかはまだ分からん
気分次第ではこれもやめるかも よびのりたくみ先生のYoutubeに、谷合四段が出演して、自作将棋AIでよびのり先生
(おそらく有段レベル)と対局した顛末がアップされていました。
ライブラリ活用して2日で作ったそうです(驚)が、見事に快勝されていました。
独自部分はDLで自然言語処理向けのネットワークを使ってみたとの事で、探索部は
MCTSで動作しているようです。おそらく、ポリシーネットに使用しているのかと思います。
流石、東大大学院で自動運転技術の研究している異色の棋士ですね。
で、今更ながらにライブラリの存在に思い至りました(汗。盤面とか指し手生成とか、その手
の処理を今から作っても車輪の再発明にしかならないし、自分が考えていた独自性に至る
手前の障害物となっていたので、時間ができたら調べてみようかなぁと思います。
また、自然言語処理は今まで関心がわかなかったのですが、ポリシーネットに使うという
アイデアに惹かれています。多分、手筋の学習に強いのかなと。
当分オセロにかかりきりですが、少しづつ勉強してみようかなと思います。
とかいって、また途中で放置しちゃうのかなぁ。
オセロのAIだって、いつかやろうと思ってから25年放置していたし(笑) 色々悩んだ挙句、ライフゲーム囲碁AIの強化の続きをやってみようと思ってます。
これが今一番、頑張らなくても成果がでそうなやつなので。 ライフゲーム囲碁AI強化は割とすんなり活動できてます。
リハビリしないとな。 ちょっと充電期間を頂こうと思います
気持ちばっかり急いてしまうので だらだらと棋譜を作り続けています。
250万件突破したけど、チェック対象の局面が大量に残っていて、また偽引き分け筋を
発見するために棋譜を作成する処理も組んでいて、まだまだ棋譜がスカスカな感じです。
500万件までやるとまだ何年かかかるのかなぁ(笑えない)
sqlite化して重くて使えなくなったいくつかの処理(棋譜内の矛盾チェックなど)については、
まったく進展せず、使用頻度を下げる事で逃げています。
上記の様に、引き分け筋の正当性チェックやら、引き分けから除外された局面が本当に
引き分けじゃないかのチェック対象がたくさんあって、30手目以後確定引き分け筋の
件数は1600〜2400件の間を行ったり来たりで、現在は2000件くらいです。 ご無沙汰です。535さんが書き込んだ日に書こうとしたら巻き添え規制でした
棋譜数276万件超えました。
ドロー筋は結構入り繰りありますが2200〜2400件くらいで推移しています。
久々に学習しようとしたら連続領域確保できないと怒られて、慌てて速度低下
覚悟の中間vector廃止しました。最後の手段はファイル掃き出しですが、その
ためにはオンファイルのソートユーティリティが必要です。
そのうち探します。
将棋については、頭の中で新機軸の方向性を思い描いていますが、未だに
盤面のデータ構造を決められずにいます。既存の奴を見て真似すれば良いの
ですが、やはり他人のソースを見るのに耐えられない状態ですorz こっちも巻き添え規制食らってます
スマホから書き込み
AMDが200$いったら50万円くらいのパソコン買いたいですね 久々です。棋譜297万件。あと少しで300万件。
そろそろドロー筋も出尽くしたかなと思って、既知のドロー筋が本当にドローなのか
重点チェックする処理を動かしていますが、凄く時間がかかるのと…。
ドローの可能性がある筋が更に1000件くらい増えてしまいました。
多分かなりの数が脱落していくと思いますが、予想外でした。
そろそろ終活始めないといつまで経っても終われないというのにorz うお、書き込めた。
ずーっと何か月も規制くらってました。 棋譜305万件。まだまだ落ち着いてくれません。
久々に評価関数の学習しようとしたらまたしても連続領域確保できませんエラー。
仕方無いので教師データをバイナリファイルに外だしして準備をすることにしましたが、
並び順のshuffleでスワップ発生しまくって進まないorz
シャッフルしないと過学習が起きやすくなるので、とりあえずバイナリファイル上で
シャッフルしてみるつもり。ダメなら2分割とか考えないと。
今夜はBookの再構築までにしておきます。
メモリーが倍あれば、まだしばらく大丈夫なんだけどなぁ。 すいません、教えてください。
勝率5割のAI同士(A,Bと呼ぶ)で並列に対戦を行うとき(並列数は有限)、
Aが勝つ場合は試合時間が1分でAが負ける場合は試合時間が10分のとき
短期的な勝率は5割から動くでしょうか?
また長期的な勝率は5割になるでしょうか? 無限時間を相手にした時に本来の確率通りになるのは自明ですね。
短い時間での試行だと、階段状になるので解析は難しいかも知れません。直観ではAが
勝った時には追加時間が入るようなものなのでAが有利になりそうではありますよね。
面倒なので勝手に問題を書き換えてみます。
「糞粘りするソフトAが有利にならず真の強弱を判定するためには、どのくらいの時間を
かけて対戦させ計測すればよいのか。」
時間を考慮に入れずに試行回数を決めて計測すれば解決する問題な気がします(汗
また、真の強弱を調べる場合に必要な試行回数は、母集団の推定ってやつなので、どこか
探せば出てくると思います。時間で区切る場合は、その試行回数を実行した時の「経過時間
の分布」ととらえる事もできますので、ここで問題を分割して、どのくらい試行時間を掛ければ
十分な試行回数が得られるのか問題ととらえなおすことができると思います。
実際の計算は…
この定理に関して、私は真に驚くべき証明を見つけたが、この余白はそれを書くには狭すぎる(笑) >無限時間を相手にした時に本来の確率通りになるのは自明ですね。
ありがとうございます。
ここ結構悩んでしまいました。自明なんですね。
数学的直感力が衰えてるのかなー 実をいうと囲連星のAI作成をまたやっていて、
LV3に開幕19連勝というとんでもない数字をたたき出したのですが
100戦もすると勝率5割ほどに落ちてきてしまい、
なぜこんなことが起こるのだろうと不思議に思っていたのです。
どうやら糞粘りのせいみたいですね。 囲碁AIの最強の一角であるKataGoを改造して囲連星やライフゲーム囲碁、タイルゲームのAIをつくるのチャレンジしてみようか悩み中 自明というほどの証明は僕にはありません(汗
開幕19連勝しちゃうとかなり期待しますよね。
やはり強さを確定するためにはそれなりの試行回数が必要という事なんでしょう。
開幕29連勝したお方は凄い事になってますし。
タイルゲームまたやってみようかな。
MCTSと親和性高そうだし。
min-Max系は自分の力では、これ以上高速化できない気がしています。 オセロの方は、評価関数は自己対局用にそこそこの奴ができればいいやと、Book構築
の方に力を入れています。ロジックで間違っていそうな筋を分岐させてみたり、ドローっ
ぽい棋譜はかなり厳しめに分岐させてチェックしてみたり、目視で怪しいところ見つけたら
手動で分岐させてみたり。でも、なんか賽の河原状態に陥っています。どこかで安定しだ
すと期待していたら逆で、どんどん宿題が積み上がっていく感じです。
気分転換に、以前一回諦めた、読み切り処理で正解分岐が複数あって、既に確定済の
筋以外の手を選ぶロジックを見直していました。半年〜1年くらい放置していた奴です。
今見たら何を悩んでいたのかというくらい、当時の問題があっさり解決しました。まあ、
読み切り速度が20〜30%遅くなってしまうのですが、分岐を作れるので教師データに
は良いかなと。
評価関数の学習は、またパンクしてしまったので、バイナリファイル上でシャッフルする
処理を書きましたが、処理時間が怖くてまだ試していません。いっそ、もう一度評価関数
をステージ分割してしまった方が良いのではないかと思い始めています。
やればやるほどZebraの評価関数の正確さに頭が下がる思いです。 ルールを理解して、盤面の内部表現と勝敗判定を考え始めたところで
うっちゃってますので、まだ何もしていません(汗 AMDの株がかなり上がったのでパソコン買っちゃいました!
https://imgur.com/a/5UZPyiN パソコンうらやましす。
メモリー128Gで32スレッドくらい欲しいなぁ。
評価関数は結局ステージ分割にしています。が、学習途中でEigenがコケる。
なんとなくステージ単位での件数オーバーっぽいので、更にステージ分割を
細かくしてみていますが、今日1日の作業がパーで、また丸1日くらいかかる
のかなと。
まだ原因特定できた訳ではないし、件数が大丈夫かも判然としないので、また
こけないか心配ではあります。 Katagoですが、Katagoで使われてるpythonスクリプトはTensorflow 1.15を想定していて
Tensorflow 1.15はCUDA 10.0を想定していて、
RTX 3070 TiはCUDA 10.0をサポートしてない
ということらしい。
詰んだかも orz orz orz orz orz 藤井先生、竜王までいってしまうか。
7冠当選確実ですねー GPUにはそんな相性問題があるのですか…
色々調べてやらないとダメですね。
コケる原因と思われるところを見つけました。
色々やった挙句、矛盾した盤面がありそうだという事になって、調べたらビンゴ。
これからヨタプロ書いて、問題の棋譜を見つけて削除するつもり。
デバッグ中にさらに色々評価関数のを見つけてしまいました。
評価関数って多少バグってても、それっぽく学習しちゃうんだよねorz。 多分解決。
棋譜の問題じゃなくてBook構築時の問題でした。
40手目までBook登録しているのですが、40手目以前に全滅した時の
終局判定が漏れていて、無いはずの矛盾した後続の盤面を作ってました。
普段は全く影響でないのですが、Bookまとめて読みだして処理をかける時
だけ出てくる奴です。
昨夜学習開始しましたが、まだ問題箇所を全部通過したわけではありません。
が、たぶん大丈夫だと思う。昼過ぎにはわかるはず。
Book再構築に1時間と、学習に丸1日以上かな。
明日の朝までには第一陣の学習が終わるかな?
まだ学習回数不足で評価値が安定していなので、バグが快勝していても、
しばらくは時間がかかりそうです。 NVIDIA製のDocker使うとRTX 3070 ti でも Tensorflow 1.15 使えるという記事がちらほらある。
ゴールは遠いなぁ。 とりあえず問題箇所全クリアは確認できました。
エポック10回で1日半かかるのが面倒。
せめて50エポックくらいしたい。
今週は学習週刊になりそう。 Dockerにがっぷり4つで取り組むのちょっとしんどいなぁ
ペースを落としてのんびり行くか。 なんかwindows insider programとかいうのに入らないといけないらしくかなり敷居が高い。
いったん退却するか? 将棋は最高7冠じゃなくて8冠なんですねー
叡王忘れてた 心の迷いから、途中まで学習して止めて、ちょこっと修正してを繰り返してますのでまったく
学習が進んでいません。Bookチェック用コンソールでの浅い探索がびっくりするほど遅く
なってしまい、原因を探したりなんやかんややっていたのが迷いの原因です。
最終的にステージ分割を止めて、8対称を4対称に落として教師データを半分にしたりして
学習再開しました。1エポック1時間半でとりあえず30回学習させてみるという事で仕上がり
は日曜日の夕方〜夜の予定。まるまる1週間パーになりました。
もともと件数オーバーでメモリ溢れ始めたのは、4対称だったのを8対称に変えてからだった
ような気がしてきました。また、ステージ分割も、昔1回トライして、速度低下が酷くてやめ
ちゃった事があったような記憶もうっすら残っています。なんつーか、こういう類の手戻りが多いorz
ただ、探索がステージ分割だけで遅くなるとも思えないです。浅い探索は単純なαβで、
オーダリングはヒューリスティックスオンリーだし、ProbCutもしていないです。分割により
評価値ゼロとなる末端が多くてβカットが減っているのかなと思っています。間違っていて
も値が入っていればβカットはされますから。
棋譜作成にランダム要素加えて、悪手変化後の局面もたくさん学習させないといかんのかな。 NVIDIAのドライバ色々入れたらなんかパソコンの調子悪くなったorz
もーやめてくれー なんか評価値がおかしかったのでチェックしていたら、末端ノードでの評価値の差分計算
がおかしくなっていた。もともとちゃんと動いていた箇所なので、何故変わっていたのか謎。
これも激遅の原因の一つではあると思うけど、まだ遅いんだよなぁ。 藤井先生はAIだと思うようになりました(汗
新人王とった伊藤匠4段もかなり強いね。これから期待です。
評価関数学習し始めたら、オプティマイザーでSMORMS3は学習開始直後の集束は
滅茶苦茶早いんだけど、汎化が上手く行かないので、momentumと併用していたのを
思い出して、今はmomentumで毎晩6エポックづつ学習させてます。結構よくなって
きたけど、まだまだかなぁ。このまま続けたら速さは戻りそうですが…
それならステージ分割してまた学習やり直しても良いのではないかと思ってみても
良いのかなという気がし始めています(汗
途中、棋譜をほぼ全部飛ばしそうなバグ出してました。
たまたま戻せましたが、危ない危ない。 中盤探索劇遅の原因わかりました。
static constな関数をstatic constexprに変更していたのが原因のようです。
色々原因探して、最後の最後にまさかと思って、戻してもたら速度問題解消。
constexprにしたらコンパイル時定数扱いになると思っていたのですが何故? 6x6オセロて完全解析されてるんですよね?
6x6タイルゲーム完全解析出来ないかなあ タイルゲームですが、現局面の勝率をモンテカルロでしらべて4割以上6割以下ならノードを展開し以下再帰的に繰り返す、というのを考えたのですが、あんまり枝刈りの効率が良くなくてガッカリしてます。 ヤフーオセロの鰻ちゃんとネバーさんは、元気にしているよ
共に、すごい人になりそうな人だよ どちらも能力あったね
かれはさんは、どこかですごい成功を収めると思う ヤフーオセロ、今はチャットはできないが、あ、この人だ!ってのはあるよ AMD株下がってきたT△T
まだ利確してませんorz KataGoを改造して囲連星のルールを適用することに成功しました。
まだ弱いですが自己学習を繰り返すことでとんでもなく強くなる可能性を秘めています。
一応、レベル0から1勝あげるとこまでは既にきています。
囲碁最強AIは囲連星でも最強になれるのか?!
おらワクワクしてきたぞ! deepmindのalphacodeは競技プログラミングレベルのコードを自動生成するらしいな
まじ恐ろしいな、、、 レベル3に勝ちました!
katagoは本物中の本物の様です!
これがシンギュラリティか。。。 長かった私の旅路もいよいよ終わる時が来たのかもしれませんね。。。しんみり https://www.youtube.com/watch?v=MK1Pixuhr5A
すみません!こういう動画みたいにアニメの顔を実写の人物の顔に合成するやり方誰かわかる方いませんか!faceswapを使ってみたらうまくいきません。 すでに俺が打っても横綱相撲の電車道で押し切られるんだが?
katagoヤバすぎる。。。 katagoを使った囲連星AIですがもうこれ以上つよくさせないでいいかな?って思い始めてます。
完全解析するまで強くさせる欲求は止まらないと思ってましたがわからんものですね。
あまりの強さにウンザリしかけてるw
ライフゲーム囲碁やタイルゲームにも応用出来るとは思いますが、なんか毒気を抜かれてしまいました。
ボードゲームAIはやはりアルファ碁が全てを終わらせてしまったのだと思います。 カタ碁を改造した囲連星AI 名付けてカタ囲連星ですが黒番でlv3と100戦対戦させて見ました
結果はカタ囲連星の100勝0敗でした
まさにアルファ碁級の強さですね カタ碁を改造した囲連星AI 名付けてカタ囲連星ですが黒番でlv3と100戦対戦させて見ました
結果はカタ囲連星の100勝0敗でした
まさにアルファ碁級の強さですね 白番でも100戦して見ました
結果はカタ囲連星の97勝3敗でした
lv3が意地を見せましたね、と言いたいところですがこれはルールの違いによるもので
具体的には7連ができる時の自殺手をカタ囲連星は禁手にしてるために起こった3敗でした
ルールを合わせれば100勝したと思います 白番でも100戦して見ました
結果はカタ囲連星の97勝3敗でした
lv3が意地を見せましたね、と言いたいところですがこれはルールの違いによるもので
具体的には7連ができる時の自殺手をカタ囲連星は禁手にしてるために起こった3敗でした
ルールを合わせれば100勝したと思います やっちまった…
うっかりBookのtableを壊してしまって、焦って削除したら棋譜まで全滅させてしまった。
棋譜だけでも吸いだせたらBook再構築できたのに…
バックアップが去年の11月で、およそ40万件分を喪失orz
手作業でいろいろ修正かけていたのに…
めげずに棋譜作成ロジックを色々いじって手修正の作業部分も自動化しましたが、
かなりテンション下がっています。
削除寸前の状態で356万棋譜に対して、30手読み切りドロー筋が3500件くらいに
なっていまして、まだ増えそうな雰囲気だったのに。 あっけないラスト ですが いれんせいは、 かいけつしました どうか かいはつをやめろと めいれいしてください。 ボス? カタ碁を使って6x6タイルゲームの必勝AI作成やってみようか悩み中
この際、宿題を全部片付けたい 今、katago改造してポン抜き碁のAI作ってます。 いまだにちょくちょくタイルゲーム遊んでるんだけど、こっちがこの作戦で勝てるなって繰り返してると
AIがその作戦の裏をかくような手を打ってくるようになるんだよな。
単純に完全解析の最善手を返すAIよりずっと長く楽しく遊べるんだな。
ボードゲームAIは完全解析だけが能じゃないってことだな。
深いわ。 データベース化だね。Q学習と言った方が良いのかな。
今、小学生の子供が任天堂Switchの世界のアソビ大全51やってるんだけど、その中
に、タイルゲームとかコネクト4があって懐かしい。それらゲームを見ながら、これなら
min-Maxでとか、これはモンテカルロかなとか、つい考えちゃいます。
子供がオセロの「つよい」に勝てなくて「やばい」のレベルができないと言っていたので、
自分のAIでソフト指しして勝ってあげましたが、驚きも尊敬もしてくれませんorz ここで聞いてもいいのか分からんけど、KGSで動く囲碁botの作り方を
初心者向けに解説してくれている場所ってありませんかね? AMD株まだ売ってなかったのですが、いまもうめちゃくちゃ値下がりしてます。
円安ドル高と相殺してもマイナスです。orz
利益が乗ってるうちに売ればよかったorz orz orz ryzen 7000シリーズ発売ですね。
買わないけど気になる。 大変ご無沙汰です。
先々週ノートPCが不調になり、タッチパッドと画面タッチが効かなくなりました。
マウスつなげるとそれなりに使えるという状態です。
で、ゲーミング用のノートPCを新規でポチってましたが、初期不良にて現在交換待ち。
暇なんで久々にネットを徘徊して情報収集しています。
引き分け手順数の定義も見つかりました。世間一般は最終盤面(リーフ)の数でした。
自分は30手目までの手順数(合流含む)でしたので、桁が違っていたのは当然かな。
自分のBookはリーフまでもっていないので比較できないですが。
新品PCが来たら色々はかどると良いなあと思いつつ、全く別の事をやりたい気分でもあります。 羽生さんタイトル100期くるか?
頑張れ!超がんばれ! 羽生さん来ましたね。
正直厳しいとは思いますが、最近の復調ぶりはすごいですね。
#とはいえドイツ戦みたいな事があるかもとちょっと期待
新品PCは液晶破損の初期トラブルでの交換ありましたが、一応導入完了。
Edgeと相性が悪いのかタブにマウスを持っていくとノイズが入って数秒固まるorz
プログラムについてはDB周りをかなりいじりました。現在大体移植終わって本番
テスト待ちですが、旧PCが気温の低下とともに復活してしまって(完全ではない)、
キリの良いところまで旧PCで棋譜づくり継続しようと思ったまま1ヵ月経過して
しまいました(汗。
あとスレッドのスケジューリングがいまいちわからない。ターボブーストみたいな
機能がない分、PCのスレッド数を抑えて加熱対策しているような動作にも見える。
CPUがAVX512対応なので、count leading zeroのSIMD版が使えるんじゃないかと
期待していたけど、残念ながらこの命令には対応していませんでした。
そろそろ時間があるときにDB含めて移行しないと。 Rustという言語を勉強してみようか思案中
ちょっとかじった感じでは結構難しそう
C/C++と同じくらい高速な言語らしい Rustの勉強、なかなか進まないけど可能性はすごい感じる。
モダンな雰囲気?が感じられるというか
cargoもなかなかよさげ 将棋のアプリ作ろうと思うのですが
駒の動きを再現するフレームワークや
駒の配置を入力すると、ここに詰みがあるかとかその詰め手順を出力するようなフレームワークもありますか? 羽生さんも切れ味がなくなったなあ。
オレでも勝てそう。
しかも居玉で負けてるでしょ。
オレでも居玉で戦うという超初歩的なミスはしないよ。 羽生せんせえええぇええええぇえええ
うおおおおおぉお 羽生さんがタイトルとるためには先手番で負けずに後手番で勝つ必要があるわけで
やっぱ道のりは険しいですねー 負けても次は勝って追い付く。
それが2回も続く。
これは追われてるほうはプレッシャーを強く感じる。
次は後手番が勝ちそうな雰囲気になってきたな。
流れは完全に森内。 第7局までもつれたら再振りごまですか。。。
あんまり振り駒で勝ったほうが勝つみたいにはなってほしくないですが。。。 Rustの勉強全然進んでなくて放置してたんですが、最近 Rust by ExampleというインタラクティブにRustの勉強できるサイト見つけて勉強やり直してます。 Rustで6x6タイルゲームのルール書きました。
あんまり情熱を注いでやり込むという感じではないですが細々続けてます。 藤井先生、決めましたね。
将棋というゲームのエンドロールが流れてますね。。。 藤井先生、決めましたね。
将棋というゲームのエンドロールが流れてますね。。。 藤井先生、決めたぽ。
将棋というゲームのエンドロールが流れてるぽ。 藤井先生、決めたぽ。
将棋というゲームのエンドロールが流れてるぽっぽ。