おまいら最強の将棋プログラムしてみろよ part5
1 :
デフォルトの名無しさん :
05/02/25 13:55:27
4 :
デフォルトの名無しさん :05/02/25 14:02:26
4様
7 :
デフォルトの名無しさん :05/02/25 14:15:55
復活おめ
10 :
デフォルトの名無しさん :05/02/26 11:29:52
うめ
コンピュータ将棋のスレが盛りあがってるね
今まで盤面や指し手のデータを、 char(1バイト)で済むものも int (4バイト) で保存してたけど、 素直にcharにしたら、15%ぐらい速くなった... キャッシュの関係もあるし、 CPUも3年ぐらい前のだから、 なんとも言えないけど、チト驚いた。
13 :
デフォルトの名無しさん :05/02/27 10:37:40
更なる高速化をめざせ!! 一般にグローバル変数を参照するとやや時間がかかるらしい int i; void f(){for(i=0;i<=500000000;i++);} void g(){int n;for(n=0;n<=500000000;n++);} 1149.901 51.4% f(void) 1087.510 48.6% g(void) main(){f();g();}
そりゃレジスタに割り当てられるとか 最適化でそもそもスキップされてるとか そういう問題を吟味してから家
前々から気になってたけどdf-pnって何の略称? pnはproof numberだと思うんだけど・・・。
>>15 depth first(深さ優先)
調べりゃすぐ出てくるけど、、、
17 :
デフォルトの名無しさん :05/02/28 22:51:05
遅れ馳せながら
>>1 さん、お疲れさまです。
来世に期待。
19 :
デフォルトの名無しさん :05/03/01 13:10:48
来世かぁ ( ´ー`)y- ながっっ!!
来世はあるよ ここにあるよ ずっとデバッグさせてあげるよ
21 :
デフォルトの名無しさん :05/03/02 09:31:10
説明のないリンクはブラクラである
最強の○×ゲームとかって出来る?
中身読んでないけどproof-number searchとMTD(f)かな
2手同時着手。これ最強
最強に作れないほうが難しい
27 :
デフォルトの名無しさん :05/03/03 19:07:41
craftyのソース見てるんだけど、 探索(の順番)や生成(の順番)とか真似しても問題ないの? 真似したからって自分のが強くなることは無いだろうけど...
>>28 そういうのは強くなってから心配しても間に合うと思われ(w
>>26 月月火水木金金の状態では作る時間を作るほうが難しい。
31 :
デフォルトの名無しさん :05/03/06 02:21:04
df-pnより効率の良いとおもうアルゴリズム思いついた 詰みを示すのにかかるコストの少ない順に読んでいくんだけど 再帰は使わずにコストがかかることがわかったとたん読む位置を変更する GHI問題は親ルートを記憶しておけば無問題
33 :
デフォルトの名無しさん :05/03/06 06:26:39
>>32 よくしらんがそれとおなじっぽいのか?
数理科学のコンピュータの数理しかしらないが
>>33 よく知らんがそれと同じっぽい。
ルートはしょっちゅう変わるのでたくさんのルートを蓄えておくためにたくさんのメモリが必要っぽい(わたしのまともに動いてないプログラムはこのレベル)。
で、少ないメモリで同じ効果を得るのがMTD(f)っぽい。
んで、pnが最良優先でそれの小メモリ版がdf-pnっぽい。
よく知らんっぽい。
ぽい。
>>31 なぜそれがdf-pnより効率良いと思う?
はやくなーい
この沈黙は一体・・・!
ぬるぽ
最近書き込めないんだけど?
40 :
デフォルトの名無しさん :2005/03/30(水) 15:37:36
3月も終わりだね
最強の将棋プログラムできたよ
>>41 いいな、暇のある人は。
サクサクっと最強の将棋プログラムができて。
41 デフォルトの名無しさん sage 皇紀2665/04/01(金) 04:27:33
最強の将棋プログラムできたよ
42 まともに動いてない ◆/8LpUMqVAk sage 皇紀2665/04/01(金) 07:54:30
>>41 いいな、暇のある人は。
サクサクっと最強の将棋プログラムができて。
--
何このメール欄。
44 :
43 :皇紀2665/04/01(金) 09:17:11
うーむ、日付けがネタになってたのか… 失礼。
自分も何か思考ルーチンをもったゲームを作ってみたいのですが いきなり将棋だと辛いのでなるべくシンプルで 初手からすべてを読み切れない程度に複雑なルールの ゲームを紹介しているようなサイトってないですか?
五目並べやってみれば? 純粋に5個並べば勝ちってことで。 三三とか考えずに
オセロでいいじゃん。
オセロなら「鶯教」。ってまだあるんかなそのサイト。
49 :
45 :2005/04/22(金) 23:01:57
先にいろいろなゲームを知っておきたいので 二人零和〜なゲームのルールをたくさん紹介している サイトがあったら見てみたいのです。 聞き方が悪くてすいません・・・
単純にパズルでも良いと思ふ
最近将棋プログラミングに興味を持ったものです。 今Javaで作っているのですが、独自に駒クラスを作って管理するのと 駒をintなりで管理するのではやはりAIの思考速度に差が出るものなんでしょうか? 当方オブジェクト指向という言葉を洗脳のように聴かされて来ましたので、 駒という物体もオブジェクト化するべきだと思ってきたのですが、 他の方のソースを見ましてもオブジェクトの概念がある言語を用いる際でも駒をint等で扱ってる場合が多いので、疑問に思った次第です。
>>51 簡単にテストプログラムを作って比較してみたほうが納得がいくと思いますよ
つーか、(実用的な)速度を確保しつつ開発するか、速度度外視で開発するかって選択?
クラスをつかってロジカルな部分を固めて、速度に不満があったらチューニングすればいいと思う。 その結果がint等で管理するものになるかもしれない。 最初から速いプログラムってなかなか組めないんじゃないかなあ。
回答ありがとうございます。 まだ掛け出しなのでとりあえずは自分の方法でやってみることにします。 というか速度云々よりもAI部をちゃんと作れるかが先ですよね。 思考部を形成できて、その上で速度が気になったときに考えたいと思います。
>>55 大体の形が物になったときにはかなり精神的に消耗しているので
なかなか焼きなおしする気にはならないかもですよ〜
はじめからとことんこだわっていくのがいいかもよ〜ん
57 :
デフォルトの名無しさん :2005/04/27(水) 23:59:28
58 :
45 :2005/04/28(木) 00:57:50
OOマンセーにしても駒のオブジェクト化は普通にやりすぎ。
えー、一度はオブジェクト化やってみるでしょ。 うちの基本クラスは3代目くらいだけど、一代目作ってからは どこが不満になるかがわかるから割と楽に作り直せるよ。 一つ確実に動くものがあるとデバッグもしやすいし。
60 :
デフォルトの名無しさん :2005/04/28(木) 09:48:05
switchって遅いよね
>>56 そんなこんなで、かなり精神的に消耗してしまいました。
開発はほとんど止まっている状態です(稀に例の将棋サーバーで対戦テストをしてるくらい)。
まだまだ焼きなおしする気はないですが。
Java初心者である私の場合、初めからとことん自分にとっての分かりやすさに拘ってます。
62 :
デフォルトの名無しさん :2005/05/05(木) 15:57:50
げきさし優勝。朝鮮民主2位か。
おー、選手権あったのすっかり忘れてたw うさぴょん 1次予選トップ通過!! するも、2次予選で残念ながら18位。 GPS 1次予選、2次予選ともに2位で本戦出場!! 結果は8位。 GPS 凄いな…。関係者の皆さん、おつかれさまー。
64 :
奈々美 :2005/05/07(土) 22:42:09
>>63 ,64
ありがとうございます
サーバ,GPSの強化に大いに活用させていただきました.
今回の結果でまた対局が増えて活気が出ると良いなと期待しています.
またksbp2.class の件直しました.ご指摘ありがとうございます.
66 :
デフォルトの名無しさん :2005/05/15(日) 22:41:46
最近アマ有段者レベルに達していて、油断すると負けてしまう。 機械に負けると腹が立つんだよなあ・・・。
そこが機械の思う壺。腹を立てた人間は更にへまをやる。
68 :
sage :2005/05/16(月) 00:17:49
2二角不成でいきなり立腹w
69 :
デフォルトの名無しさん :2005/05/20(金) 19:09:33
ちょっと思うことがあるのですが うさぴょんのalphabeta.cpp(でしたっけ?)を見ると、いろいろな条件可での形について、 点数をプラスマイナスしてるじゃないですか。 これは、このソースみたくズラズラ書いていくしかないんでしょうか? もし、おのおのの条件を、 データベースのような形にして、そのデータを参照していく……みたいな形が取れるのだとしたら、 定跡データベースを共有できるように、手筋データベースも共有できるのではないかと思うのですが。 「ソフトによって盤駒の型定義方が違うからムリ」というのであれば、 とりあえず1つのソフト、例えばうさぴょんでそういうことが可能かどうか、でもいいです。 もし可能なのであれば、 将棋板のヒマ人どもwにデータベースをいろいろ作ってもらうこともできるかもしれません。 イメージ的には、エディタ画面に盤が出てきて、 ・ある駒をマス目に置くと「そこに駒がある場合」という条件、 ・複数の駒を同じマス目に置くと「それらの駒がある場合」という条件、 ・定義用に、「開きマス」駒、「利きがある」駒、「利きがない」駒、「全種類のどれか」駒も用意する みたいな感じです。 これで ・2一に相手の桂を置く ・2二に「利きがない」駒を置く ・自分の持駒に歩を置く と、「桂頭の弱点を突く手筋」が表せる、みたいな。
いいんでない? 書式を決めておけば変化するのは簡単だと思う
>>69 カリカリに速度最適化をするとああなるんでしょうかね?
いや、知らんけど。
将棋アルゴリズムの本がどこにも売ってない!!!
amazon.co.jpにないかなあ
74 :
デフォルトの名無しさん :2005/05/27(金) 00:31:52
将棋の入門書でも勝って嫁。 それをどう訳すかは気味の腕次第だ。
76 :
デフォルトの名無しさん :2005/05/27(金) 01:34:42
うさぴょんの育ての親さんの本はまだ絶版じゃないよね?
確か、工学社から将棋のアルゴリズムの本が出版されていたような希ガス。
オセロは人間に勝ってたっけ。 チェスはDBのことを言うまでも無いけど。
>>78 > オセロは人間に勝ってたっけ。
余裕過ぎ。
>>79 そうか、道理で600円のソフトに
どうがんばっても勝てないわけだ。
それは藻前様があ(ry
最強のリバーシソフトはソース公開されているんだがね。
俺のは公開してないからそれは間違いだ。
>>83 2chに来るような奴が作ったものは最強ではないから、それは偽。
うさぴょん21手読みに勝てない orz 序盤に食い込めるけど なんだかんだでかわされる。
21手読みっていったいどれだけの局面を読むんだろう?? ひとつの局面で100手打てるとすると100の21乗だよ。ありえないな。 候補数を絞り込むようなことをしてるんだろうけど。
それ探してるんだけど地元の本屋にまるっきりない。
>>77
>>89 こまの数じゃなくて打てる手の数っしょ、持ちごまがあれば一曲面に軽く100以上になる
そう。そういうこと。持ち駒が打てる場所って多いからな。
きのあ将棋のレベル高いやつで、1手打つのに100万局面弱ぐらい読んでた 1つの局面で100手打てるとすると、100の3乗で100万。3手まで読んでるのかな
1つの局面で100手指せるとすると、平均的に10手調べたところで結論が出る。100万局面を読む力があるなら、6手先まで読める。
>>93 平均10手というので、一瞬「?」だったが、アルファベータ法か。
Min-Maxで総当りすると3手先しか読めないけど 枝葉切りとかいうので絞り込めばいいのか
アルファベータは総当たりだよ コードも2行くらい増えるだけだし わざわざミニマックスにする必要は全くないと言っていい
正しくは総当りせずに総当りしたことにする方法
アルゴリズム論の初歩はもういいよ。 それより定跡周りについてのアルゴリズム教えてくれ。
製作日誌希望。
定石の自動学習のことかな?
原理は簡単だけど将棋の場合評価関数の精度と 規模の大きさから今やってもまともな定跡は作れないんじゃない?
将棋(もしくは他のボードゲーム)の探索に遺伝的アルゴリズムを使われた例ってありますか?
ゲーム木探索に使った例はないと思う 評価関数の改善絡みならちらほらと試みられてるけど
自動学習アルゴリズムなんて作れるの?
>>107 勝負がついたとこから逆にさかのぼって敗着手を見つけそれを指しにくくするように評価関数を修正ってのが一般的なんじゃない?
GA(GP)だと処理時間がかかり過ぎないか?
>>109 遺伝子をうまく設計すれば効率良く探索できるようになった、ということがあるから、どうなるかはなんとも言えない。
結局は遺伝子設計によるんだけど。
パズルの探索と違ってmin-max木の探索では効用関数の設計の方が難しいのでは。
( ´,_ゝ`)プッ
114 :
デフォルトの名無しさん :2005/06/02(木) 22:47:55
ttp://www.geocities.jp/bonanza_shogi/ 2004年頃から本業の合間に一人でコツコツと作った
↑この条件だけなら似たような人が多数いるかもしれない
しかし、それでできたソフトが↓
24 でのレートは約 2400 です(Pentium4 2GHz,1手 18秒)
20Mbyte 以下の使用メモリで軽快に動作.一昔前のコンピュータでも十分なパフォーマンス
詰みのみでなく,必死の概念も理解
Bonanza 同士の激しい戦いを観戦可能
読み筋,優劣評価点を表示可能
コンピュータの割に,攻守バランスの取れた自然な棋風.人間指しの疑いをかけられた時もありました...
序盤定跡 20 万手登録
現在の家庭用 PC における思考の速さ約 30 万局面/1秒
市販のトップレベルソフトといい勝負するようです
こんな人もいるんですか?
今、将棋板コンピュータスレで話題のソフトだね
強いねえ
鬼みたいな攻撃をしてくる。ぜんぜん勝てねぇ!
日記に書きましたが bonanza v.s. gps@wdoor はパスワードをgps-1500-0にす ると自動で対戦できるのでよろしければ
> 20Mbyte 以下の使用メモリで軽快に動作.一昔前のコンピュータでも十分なパフォーマンス これは他のソフトも見習ってほしい(どのソフトも(?)そんなにメモリ喰わなくてもと思ってたよ)
社内泊徹夜中に久しぶりに来て初めてBonanzaを知った。 興味はあるが、疲れ果ててやる気も起こらない…胃が痛い。
121 :
デフォルトの名無しさん :2005/06/04(土) 09:37:42
ところで証明数を用いた詰め将棋って何だ?
ボナンザブラザーズか
定跡って手作業で何万手も登録してくの?
sikou.dllがたったの84kbて。これで最強思考ルーチンができちゃうなんて。
ケータイにも入りそう
128 :
デフォルトの名無しさん :2005/06/05(日) 02:49:27
>114 わかった! 「本業の合間」ってのは「対局の合い間」って意味に違いない。 プロの将棋指しってたくさんのタイトル戦にでも出ていない限り、結構暇らしいし。
129 :
デフォルトの名無しさん :2005/06/05(日) 02:56:30
保木邦仁って本名?
130 :
デフォルトの名無しさん :2005/06/05(日) 09:12:31
検索するとヒットする。 東北大学大学院卒? エリートだな。 ドラムもたたくの? へえ、なんか面白い。
サンプル動画より容量すくないな
458:名無し名人:2005/06/03(金) 21:53:56 ID:X6Qopzre しかしsikou.dll たったの84KBか.. すごいな。 気付いてもしらばらくROMって、誰かが書き込めばそれに便乗する それが2chクオリティ
逆あせんぶるっ ・・・
>>114 磯部将棋もそんな感じじゃない?
そもそも激指の作者たちも本業はみんな別のはずだし。
136 :
132 :2005/06/05(日) 16:15:28
まぁ、
>>126 は
>>132 の人がsikou.dllが思考ルーチンだと思って勘違いしたのをネタにしたってことですよ
フォローの必要なレスほど悲しいものはないな・・・
どこをどう読めば予知になるんだ?
おまいらは主語と述語と目的語を省略するのが得意ですね
もうわけわかんね。
高度なギャグについていけません
ボナンザ、使いにく過ぎ。 CSA-LANの上位互換で、盤反転・棋譜表示・Kif対応・棋譜のコピー・貼り付けとか改造してくれたら ・・・竹島、あげます。
CSAのせいなんだよね。あれ、オープンソースじゃないじゃん。 有志がどんどん改造できるようにしてホスィな。
ボナンザ、使いにく過ぎ。 CSA-LANの上位互換で、盤反転・棋譜表示・Kif対応・棋譜のコピー・貼り付けとか改造してくれたら ・・・ホカイドー、もあげます。
>>145 一応、ソースは公開されてるね。
サイトトップからリンクされてない「秘密の部屋」だけど、掲示板の過去ログを少し見ればわかる。
改造して商用利用も可、とか書いてある。
なんで隠すんだろう。ったく。
149 :
デフォルトの名無しさん :2005/06/11(土) 02:27:10
ルート局面から20手先までに出現するユニーク局面数すら算出しないこんな世の中じゃ〜♪
151 :
デフォルトの名無しさん :2005/06/11(土) 07:07:40
4手先までで体力の限界です
152 :
デフォルトの名無しさん :2005/06/11(土) 07:47:10
まいど。 とうとうJava版拡張モードで対局可能なチャットプログラムが挫折しました。 今はCSAモードのコンソールアプリを1から書き始めたところです。 皆様は何回くらい書き直していますか?
モードて何。そもそも
モード (フランスmode)流行の服飾。「トップモード」
方式、様式ていう意味もあるらしい。
>>154 >>5 のCSAサーバ (Part3 773氏作、Part3 783氏提供)にTCP/IP通信プロトコル1.0(コンピュータ将棋協会)のフルセットが動いている。
これに普通でない方法でログインすると拡張モードになる。
拡張モードで何が出来るかは
>>5 をみてほしい。
こんなんで如何?
158 :
rei :2005/06/14(火) 01:03:12
>>153 作り直しはしていませんでも付け足し付け足しで拡張してごちゃごちゃ
でも動けば正義なのです、うひょひょ
いきなり欲張らずにボトムアップでモジュールごとにデバッグ済ませながら作るととりあえず動くものはできますよん
てかどのへんで挫折したのかをさらしてくれると後から続く人の参考になるかも〜
>>158 実は数日前から.jarとソースをさらしてあります。
UPのやり方ほか、まともに出来ていませんけど。
挫折原因は本業多忙のせいか体調を崩しっぱなしでソースに注釈・メモ書きもなく何ヵ月もほったらかしにしていたら、輪を掛けて訳分からんようになりました。
とりあえずまともに動くシンプルなのを目指してみます。
胃がキリキリ痛んでます。
160 :
rei :2005/06/14(火) 02:02:18
>>159 たくわえがあるならしばらく静養したほうがいいね
死ぬなよ
161 :
rei :2005/06/14(火) 02:09:06
あ、アップローダー結構使われてるようで(汗汗 ほったらかしで気がついてなかった エロ画像貼ってるやつ居るし・・・・消してやる、ポチットナ
>>160 蓄え余りない。
借金完済までは死ねない。
羽生に勝てるプログラム作ったら賞金一億くらいで対極してテレビ放送してついでにニュースやバラエティに出演しまくりでウハウハ
IBMのディープブルーみたいなスパコン作らなくちゃいけないから、 コストが数十億。1億もらっても大損。
>>159 スクリーンショットとか、なんかないの?
いったい何をどこまで作ったの? 状況がまったくワカラナイ
ぜんぜん状況ワカンネ。 共同開発してんの? 進渉はどんなもんなの? まとめサイトないの?
おはようございます。朝から胃が悪いです。
>>165 スクリーンショットはないです。
>>166 共同開発してません。
まとめサイトもないです。
このスレの書き込みが唯一の記録です。
>>167 そうなんですが、晒し方が酷くて欝…実際、社内でも二番目に鬱病に近い困った人らしいです。
本業がデスマーチ化していて趣味のプログラミングどころではないというのがずーっと続いてます。
会社に行きたくないなぁ…。
169 :
デフォルトの名無しさん :2005/06/15(水) 20:08:09
Bonanzaまじつえー
170 :
デフォルトの名無しさん :2005/06/15(水) 20:13:58
地球シミュレータでbonanza動かしたら NHK杯で優勝できるんじゃないかな。
プロ棋士が混乱するような局面に導く手を高く評価するとかって研究はしてたりするの?
>>172 序盤で充分単純な局面で長考したり、無闇と残り時間を聞いたり?
#それじゃ123シミュレータか。
泥沼流はCOM同士の予選大会で敗退しますた
175 :
素人大学生 :2005/06/16(木) 16:57:15
プログラムに関してはほとんど素人の者で、なおかつ皆さんが目指されている正式な将棋の話ではないので誠に恐縮なのですが、 私オリジナルの対戦将棋を作りたいと考えている者です。 普通の将棋と違うのは駒の名称と動かし方ぐらいで、あとは9×9の盤も同じで王将を取れば勝ちです。 コンピュータ対戦によりCOM思考回路は私には絶対に無理だと思うので、ネット対戦ができるようにしたいと思っております。
176 :
素人大学生 :2005/06/16(木) 16:57:53
熟練者の直感的思考を組み込んだ将棋プログラム-HIT将棋 情報処理学会6月号絶賛発売中
うさぴょんの作者に聞けばいいのに。
180 :
素人大学生 :2005/06/17(金) 18:54:32
>>オセロゲームは作った事ある? ご返答有難うございます。そういった経験は全くないですね・・・。 アルゴリズムを何に打ち込めばいいのか(BASIC?)といったレベルですから。 ちなみに某国立大学文学部です。 >>うさぴょんの作者 そうですね。試験が終了したら聞いてみようと思います。
>>175 えーと、駒の動かし方の違う将棋を考案したくて、
それを動かすプログラムを作りたいってことかな?
誰か協力者を巻き込んで作ってもらうのがいいと思うよ。
>>180 コンソール版人対人対戦専用オセロをまず作ってテスト。
できたらネットワーク機能を付ければよい。
人のライブラリを使いこなすだけの能力があるならGUIでもいいけど、
GUI部分のコードは主要部分のコードの何倍もあるというのが普通で、
プログラミングになれていない人にはややこしく感じると思う。
まず動くものを作るためにもGUIは後回しにした方が良いよ。
184 :
素人大学生 :2005/06/17(金) 20:22:52
>>182 ご親切に教えてくださるのは大変嬉しいのですが、
もう少し噛み砕いてご教授くださいませんか。ど素人相手にご迷惑でしょうが・・・。
>>181 全くその通りです。確かに自分の様な素人が手を出すより、どなたかと仲良くなってお願いしたほうがいいかもしれませんね。
>>183 オセロの方が簡単だから、プログラミングに慣れていない人にとって、将棋よりも先にしておくと楽だと思ったから。
>>184 まず手始めにネットワークを介さずに文字表示だけで人間同士で対戦する形式のオセロのプログラムを作ってください。
プログラミングになれていない人が、初めて作ったプログラムという物は、ひどいもので、
あまりのひどさに作っている本人も、今、自分が何を作っているのか、ということが分からなくなることがあるでしょう。
まずは、作りたい物とよく似ていて、それよりもシンプルな仕組みの物を作ってみて、概観を知ることが、
プログラミングに挫けないための秘訣だと思いますよ。
いくらはじめはやる気満々でも、分からないことが出てくると、途端にやる気が削がれるものですから、
とりあえずの成果が出るような手順を踏むのが一番です。
GUIというのはGraphical User Interfaceの略で、Windowsでいう「ウインドウ」上でボタンやメニュー、絵などで
人間に意志を伝え、マウスやジョイスティックなどでコンピュータに意志を伝える仕組みです。
人間(ユーザ)とコンピュータをつなぐものですから、ユーザインターフェースと呼ばれます。
たとえば、人間がマウスでIEのアイコンをクリックするとIEというブラウザが立ち上がりますね。
ところで、現在のWindowsやLinuxではすっかりGUIが一般的になっていますが、それ以前はもっぱらCUI(Character User Interface)
というユーザインターフェースが使われていました。
これは文字だけで人間とコンピュータの意思疎通を図るものです。
さて、現実的な事を話さなくてはいけませんが、単刀直入に言うとGUIのプログラミングはメンドクサイわりに本質的ではない、
つまり、貴方がしたいような事を実現するコアとなるべき部分ではない、という事です。
プログラムの60〜80%はGUIに関係する記述になるでしょう。
よりシンプルな物を作り、それを発展させていった方がやる気が出るものです。これは経験的な事実です。
もちろん、人間が使うことを考慮すれば、使いやすい方が良いということは、私も納得していますが、
まずはシンプルな物を作ってください。
挟み将棋って手もあるな。
CUIのCってCharacterだったのか。 ずっとConsoleだと思ってた。(全然関係ないけど。) でもいいこと言うね。
GUIのコードが多いって? そんなわけないだろ GUI部分は自動生成するのが 大半じゃないか
理系学科に入りなおしたほうが速いんじゃないの?w
191 :
素人大学生 :2005/06/18(土) 13:49:24
>>186 ご丁寧にありがとうございます。
それで何度も同じような質問をして誠に恐縮なのですが、オセロゲームを作るにはどうすればいいのでしょうか。
参考になるサイトなどがあればご教授ください。
>>190 数学できないんですよ。数学のせいで京大落ちましたから。
というより一浪しているのに、仮面なんて今更出来ません・・・。
プログラムもこの将棋ゲームさえ作れれば、それで十分ですから。
192 :
素人大学生 :2005/06/18(土) 13:54:11
何かを始めるにあたって書籍の購入を渋る奴は何やっても駄目
196 :
素人大学生 :2005/06/18(土) 16:03:27
ありがとうございます。目が痛いですが、がんばって解読します。
>>196 CUI将棋がこのスレの過去ログにあるからそれを使うのも手かも。
#アップローダかも知れず。
・・・いえ・・・友人の話なんですけれどね。 3目並べ(マルバツ・チックタックトー)のプログラム見せられたんですわ。 int a, b, c, d, e, f, g, h, i; /* 各マスの状態 */ char aa, bb, cc, dd, ee, ff, gg, hh, ii; /* 各マスの描画キャラクタ */ ホントは、コメントも無かったんですわ・・・
tic-tac-toeなら普通にハードコーディングするだろ。
オセロなんかアセンブラで目瞑ってても書けるだろ
>>200 お前の能力の事なんかどうでもいい。誰が興味を持つと思う?スレ住人がお前の事を知りたがると思う?
>>200 そもそも上級者でアセンブラ以外使う人なんかいるか?
ずいぶん可愛らしい煽りだなw
アセンブラ使い=絶滅危険種
206 :
素人大学生 :2005/06/21(火) 19:08:49
207 :
デフォルトの名無しさん :2005/06/24(金) 20:06:42
age
209 :
デフォルトの名無しさん :2005/06/25(土) 13:20:21
強いなあ
ボナンザこそ最強だろ。ぷ
CSAにmen_hを編集することや駒落ちの盤面を読み込むことで 駒落ちにはなるんだが、思考側が平手だと仮定してるから サーバ側(CSA側)のデータと食い違うね。 初期局面はサーバからロードする仕様だったら可能ぽかったのだが... 何かあるのかな?
sikou.dllに渡ってくる棋譜情報に 8800KA のようなありえない手を冒頭に挟み込めたらあるいは…sikou.dll側では特殊な手として手数に数えないとか… いや、すまん、くだらない思い付きだ。
PS3って将棋作りづらそうだな。 MEM+VRAMが256MBずつ(VRAMにもアクセス可)。 劣化PowerPCコア一個に256kbしか持たないDSP的なサブコア7個。 作るだけならベタ移植できるだろうけど全部使いこなしてってなると死にそうだ。
一般向け将棋ソフトなら、今のPS2用でも充分に強い。 これ以上強くしてどうする? と、一般人が申しております。
一般向けゲーム機の将棋は強さより色々なサービス機能の充実が欲しい。 ・詰め将棋の充実。(申し訳程度しか入ってない。5000ぐらい入れて。 ・強さ別より攻撃防御のバリエーション。(各戦略を数十種類欲しい。 (強さの違いだけなら直ぐに飽きる。 ・通信対戦。(入っているの出て来たけどね。 ・アドバイスも戦略に沿ったアドバイスを指定できる。(例えば四間飛車で攻めたい等 等々、またまた、一般人が申しております。
奨励会から体験できる将棋ゲームきぼう 同じ年のライバルが年々強くなってきたりして
多少の有利不利を無視して圧倒的な棋力で棒銀とかで突っ込んでくるような性格付けとかも欲しいよな。 未だに攻めがヘタクソだし。
219 :
デフォルトの名無しさん :2005/06/29(水) 20:56:55
,
220 :
212 :2005/06/29(水) 21:44:02
>>213 thx.
sikou.dllがいじれるなら可能ですよね。
でも、ないとつらそう...
csa棋譜形式の駒別単独表現で説明されている P+00KIOOFU のOOって何を指しているでしょうか?
223 :
221 :2005/06/30(木) 13:42:48
>>222 どうも、僕もそうじゃないかなと思ったのですが、
2002年11月15日版でもまだ残ってたので...そう解釈しておきます。
コメントとマルチステートメントの扱いで
「"'"(アポストロフィー)で始まる行はコメントとする。文の途中からのコメントは、記述できない。 」
「","(コンマ)を用いて、複数の行を1行にまとめることができる。 」
とありますが、
行:=^[\n,]*[\n,]
と解釈していいのでしょうか?
「文の途中からのコメントは、記述できない。」の意味がいまいち分からない...
(case1)コメントが先行し、途中でコンマを使った場合
'comment,+7776FU
(case2)コンマで先行し、 途中でアポストロフィーを使った場合
+7776FU,'is this comment
> 'comment,+7776FU > +7776FU,'is this comment どちらも許されないと信じてたけど他の方はどうなんでしょう
>>223 > 文の途中からのコメントは、記述できない。
これは、プログラミング言語(例えば Java)のコメントで
1 + 1; // 行の途中からコメント
このようにする事を禁止していると思います。
なので、コンマを改行と同じとすれば、case2 はいいと思います。
case1はコメントなのか、キーワードなのか区別が付かないので、仕様しだい。
226 :
221 :2005/07/01(金) 17:32:30
>>224 ,225
意見を参考にもう一度考え直してみた。
(A)コメント内のコンマを許可した方がいい派(保守派)
「コメントにコンマを許可しない」という記述がないのも
コメントにコンマが記述できなくなると困る言語もあるからじゃないかな。
参照実体のような仕組みも提供されていないし、そうに決まってる。
(B)コメント内のコンマは許可しない方がいい派(過激派)
Parseしやすいし、CSV互換の方が便利じゃない?
(A-B)一般的優先度は(A)>(B)でかと思われる -> case1はコメント
(A')通常のコンマの後のコメントは許可しない方がいい派(だめ派)
一般的には行:=^[^\n]*\nだが、コンマが先行した場合は、それが行になるとは書いていない。
(B')通常のコンマの後のコメントは許可した方がいい派(いいよね派)
たしかに行:=^[\n]*\nだが、いつ複数行をまとめるのを使えばよいの?
コンマが先行しているので、その直後のコメントは上記の文の途中にはあたらない。
(A'-B')規格>一般的な行の定義 -> case2は 指し手,コメント
練習がてらCマガのオセロに挑戦しよーかと・・・・思ったら、結構敷居がたかく、 環境を整えるので10時間くらいかかってしまった。 締め切りに間に合うだろーか。
228 :
うさぴょんの育ての親 :2005/07/10(日) 23:20:34
ボナンザはどんなアルゴリズムなんだろう
攻撃ばかりじゃなくて守備もしっかりしてるんだよな
233 :
デフォルトの名無しさん :2005/07/24(日) 10:50:09
ガッ そろそろ誰か戻ってこようぜ・・・orz
234 :
233 :2005/07/24(日) 10:53:22
いつのまにかスレ進んでたように見えてまた止まってるのね・・・
>>38 以降読み込めてなかったorz
スマソ
「コンピュータが将棋を制する日」, 情報処理学会会誌, pp.809-822
数理科学とかいう専門誌に将棋ネタが載ってるらしいけど そんな本どこにも売ってねー
239 :
デフォルトの名無しさん :2005/07/25(月) 07:42:23
>>217 いいね。パワプロのサクセスみたいで。
主人公は、居飛車系定跡を覚える、さばきの感覚を鍛える、
詰め将棋の勉強、研究会に行くなどの修行を、1週間に1種類出来る。
修行をするとパラメータが上がり、次の1手機能が強くなる。
また、何週かに1回、奨励会の手合い日があり、
そこで良い成績を上げると、昇段していく。
手は、プレイヤーが考えてさしてもいいし、さっきの次の1手機能を使ってもいい。
特殊能力には、振り駒○(先手になりやすい)、駒音○(駒音がでかい)、
チャンス○(昇段が掛かった一番で次の1手が強くなる)、などがある。
ボナンザ専用スレでかっこいい駒が作られてるね
かっこいいって、高級駒をスキャンしただけだろ 誰にでもできるしそんなの
というよりCSAの元の駒がへぼすぎ。小学生の書いた字みたいにヘナヘナ。
>>241 スキャンじゃなくてトレースです…。あのサイズに詰め込むと
元のままだとバランスが乱れるので、結構修正は入れてます。
手始めに錦旗をやったのですが、斜め線がかすれる部分は
筆運びを抑えて比較的楷書に近い感じにアレンジしました。
>>243 お、ここも見てる人なのか。おつかれー。
そーいえば、このあいだちょっとした用途に小さな駒の画が必要だったんだけ
ど、
>>5 のアップローダ辿ったらまだ残ってた。
作者(旧921)さんサーンキュ、使わせてもらったよー。
俺なんかドット絵で描きましたよ
>>245 重要なのは「できる・できない」ではなく「やる・やらない」だからさ
変な煽りは気にしないでいきまっしょい
PNGのアルファチャンネルの一体何が難しいの? わからんな
>>248 難しくはないです。というかFireworks使ってる自分には一番楽ですね。
ただ、このフォーマットで作成しても、今のところ使い道がなさそうで。
今作ってるCSA将棋用の画像リソースは、bmpと1bitマスクの組み合わせで
駒を生成するので、そこが表現力の限界になっててちょっと残念です。
いずれCSA将棋のオープンソース改良版で、もうちょっと大きな盤面と
32bitPNG画像に対応したものが出てきたらよいなー、と思ってます。
あれ?
……(探す)
……(暫し考える)
……(ダウンロードしてみる)
あ、漏れが作ったのだv
>>244 と言うわけで、本人も忘れてた挙句にオリジナルを保存してなかったらしい
駒のご利用ありがとうございますw
こと将棋プログラムそのものは「全くやってない」だけに、
こんなものでもお役に立てて何よりです。
>>245 お褒めに預かり恐縮です。ちなみにこの駒絵、表は視認性重視の完全オリジナル、
裏は手元の安駒を見ながら手打ちした代物です。
流石に小さすぎて色々凄いことになってますな。
#最早成香なんて再現できない(ぉぃ
>>247 「やる」のあとは「やりたい・暇がない」のは私だけかな。
たまの休みは偏頭痛で寝込んでま。
夏至からずーっと夏バテ。
>>250 え、この駒絵ドット打ちだったんですか! しかもオリジナルとは…。
ドット絵師になれますよ。「龍」の字とか「角行」「桂馬」のバランスの
良さが印象的です。自分でやってみてわかりましたが、特に「角行」は
錦旗でも菱湖でもリアル駒をそのまま画像に起こすと見た目のバランスが
悪くなりがちですね。
>>252 ちみっちゃいフォントは幾つも作ってますけど所謂ドット絵師なんてとてもとても。
ちなみに、PDA用四川省の駒(要は雀牌)として12x12の牌もデザインしてます。
スレ違いに過ぎるのでリンクは張りませんが、Palm使いなら簡単に見つけられるはずですw
謙遜
みんな、エントリーしたかー? 俺は1年前に作った思考ルーチンがでてきたが……エントリーしようかどうか迷ってる。
いくらかかるんだ?
タダじゃなかったっけ
タダなんだが・・・メールアカウント、住所、氏名の登録が必要。<オープン戦 ランダムプレーヤーを参加させるには、ちっとばっかし敷居が高い(^^;;
まぁ、大会開いたはいいがどこの誰が優勝したのか判らんじゃ格好つかないし、 ある程度はしゃーあんめーよ。
>>255 思考ルーチンソフトの名前教えてください。
出来る事なら公開してくれませんか?
ボナのsikou.dllで十分。
ボナは参戦できないらしい 残念
>>259 実在確認までしてないのなら適当な名前と住所で登録しちゃえばいいじゃん
試合開始〜
え、なに? 今日なの? どっかで見れるんだっけ? 探しに行こ。
オープン戦お疲れ様です。 CSAのプロトコルは、クライアント作る側はツライかなと思う。 クライアント側から見て、合法手の送信後、千日手か否かで受信する行数が違うし。 思考中も受信チェックしなくちゃいけないし。 同期通信にしてしまうのも手ではなかろーか。ダメなら強制切断とか。
>思考中も受信チェックしなくちゃいけないし。 ああ、しまった。 思考中の受信チェックしてなかった…_| ̄|〇
標準プロトコルならチャットは飛んで来ないので、思考中は受信しなくても良 いと思うよ。普通は1行受信なのに、試合が終わると2行受信なのは確かに不思議。 拡張プロトコルでも、とりあえずは対局プログラムは思考中は受信しなくても 良いんじゃないかな。原理的には大長考中に大量のチャットがあった場合に、 サーバに接続を切られてしまうリスクはあるけど。
>>271 標準プロトコルでも相手側の回線断や自分の手番でないのに指し手を
送るなどで中断とか禁じ手メッセージが送られると思うよ。
前に拡張プロトコルで作って挫折した奴は受信用のスレッドからチャット・デ
ータとそれ以外に振り分けて二つの先手・後手スレッドを交互に実行再
開するようにしていた。
標準プロトコルでも受信用と思考用のスレッドが要りそう…めんどい。
・・・思考ルーチンに中断処理を入れるとして・・・ まあ、判断やら持ち時間チェックはコールバックにさせればいいか・・・・ ってことまでは妄想できるんだが。 1)詰め将棋 2)必死探索 3)ゲーム探索 とか多段構成になってる場合は、コールバックとか中断処理の設計がむつかしそ。
詰め将棋でも必死でも、ゲーム木探索することには変わりない
例外投げろ
今の将棋の一番のボトルネックってどこなんですか? CPU、メモリ、ソフトウェア(アルゴリズムorデータベース)等々で。
民度の低さ
将棋の認知度の低さ
結局、スポンサーだよなぁ あと日本の場合、第五世代コンピュータの研究の成果があるのかもしれない 全裸で
モンゴルとかハワイから将棋プログラマを呼んできて育てる。
281 :
デフォルトの名無しさん :2005/09/05(月) 11:37:54
fail-soft alpha-betaが良く分かりません。 出現した最大値を返せばいいんですよね?でもそうすると fail-low が起こらないと思うのですが。。。
282 :
デフォルトの名無しさん :2005/09/05(月) 18:11:10
>>281 ある局面の子ノードの最大値が(もともとの)αを越えるとは限らないので、
(子ノードの最大値) <= (もともとのα)
の場合fail-lowになる。
という説明ではだめ?
ん?最大値=αの時は fail-low ですか? それなら fail-low してますが、その値と真の値を区別するにはどうすればいいのでしょうか?
284 :
デフォルトの名無しさん :2005/09/05(月) 19:34:15
>>283 > ん?最大値=αの時は fail-low ですか?
自分はそう解釈してます。
そもそも「failでない」場合とは、評価値xがα<x<βの範囲にあることなので、x = αならばfailであると。
真の値がx = αである場合は、「既に見つかっている値と同じ」ということを意味するので、無視して構わない。「既に見つかっている値よりよい」値にしか興味がないから。
> その値と真の値を区別するにはどうすればいいのでしょうか?
「その値」→「子ノードの最大値」
ということですか?とすると、「その値 = α」だった場合には真の値もαだということがわかるけど、
上にも述べたとおり、普通はそういう場合には興味がないので、捨てる値として扱うということで
いいと思いますが。ということで普通は「区別しない」んじゃないかと。
すみません、かなり勘違いしていました。↑のは忘れて下さい。 実はMTD(f)でつまづいていて、null window search で返ってくる値とαが 同じならそれが真の値ということですよね?よく分かってません。。。
参考にしてる本やURLを出すと良いかもです。
>>284 分かりやすい解説ありがとございます。今まで見たどの説明よりも分かりやすかったです。
英語はスラスラ読めないので、日本語の中でです。
最初は fail-soft のやり方が間違えていると思っていたのですが、null window search の動作を
勘違いしている事に気づきました。
ここのテンプレのMTD(F)のWebページを参考に作ったら、うまくいったように思えます。
まだ、どこか理解していない部分がないか怪しいですけど。。。
ありがとうございました。
ちなみに、
>>285 はそれを読む前に書き込んだものです。
289 :
デフォルトの名無しさん :2005/09/08(木) 10:04:12
数年ぶりに最新の将棋ソフトを購入して対戦したら、 最強レベルの相手についに勝てなくなりますた(泣)。 かつては「コンピューターで将棋が出来る」こと自体ですごいと 思ったくらいなのに。将棋連盟から認定受けているアマ初段の免状が 泣いています・・・。
序盤定石20万手登録と書いてありますが どのデータを登録しているのですかね?
292 :
デフォルトの名無しさん :2005/09/27(火) 20:53:29 0
将棋プログラムを作りたいのですが。 ハッシュと定跡ファイルのフォーマットはどうしたら良いですか? 効率の良い、標準的なのってありますか? だれか教えてください!!
293 :
デフォルトの名無しさん :2005/09/27(火) 21:13:33 0
適当にやってもたいしてスピードかわらん>ハッシュ
>>292 うさぴょんの育ての親さんの本にハッシュはあったよ。
定跡はどうだったか忘れたけれど。
定跡データは20年前の本に1手のフォーマットは載ってたかな。
>>292 Bonanza用GUI改造してて学習データと戦法選択定跡を作るにあたりハッシュ使えばいいという話があったので適当にネットで検索して
ころがっていた文字列のハッシュ登録サンプルコードを参考にして作ったよ。ハッシュ関数自体はなるべく同じハッシュに多くの局面が
一致することがないように工夫はしたけど。効率がいいかどうかわからない。
今のところ速度で問題はでてないね。まぁ将棋の思考ルーチンで使うとなるとまた別かもしれないけど。
ハッシュドビーフ食べたい
俺はハッシュドポテト
300 :
292 :2005/09/28(水) 22:00:51
ありがとうございました
作ってる人の近況報告とかないのかな。
302 :
デフォルトの名無しさん :2005/10/01(土) 12:44:57
さんきゅでつ。 私もやってみやうかな・・・。
10月2日(日)晴れ。 将棋のプログラムを書こうと決意した。 思考ルーチンの定義からはじめる。 思考ルーチンとは、与えられた盤面から最善手を発見するルーチンであると定義する。 この定義で組むとしたら問題は、 欠点は盤面からは千日手がチェックできないこと。 時間の制限のチェックができないことだ。 1行もプログラムを書かずに終わる。
306 :
デフォルトの名無しさん :2005/10/03(月) 14:01:01
>>302 のサイトの管理人です。
評判がちょっとアレなのでデザイン変えてみました。
>>305 さん
千日手とか時間配分は後回しにして、とりあえず動くものを作ってみるのも一つの手だと思います。
あれだ、屁理屈だけ述べて一行もプログラム書かないタイプwwww
文章ばっかりで写真がちっともない。地味すぎてつまんねーブログだな。
と、プログラムどころか文章すら書かないエセプログラマが申しております。
10月3日(月)雨 盤面を表現することを考える。 9x9のマスに何が置かれているか。 先手、後手(上手、下手)の駒台にどの駒が何個あるか。 手番。 駒は14種類ある(歩、香、桂、銀、金、角、飛、王、と、成香、成桂、成銀、馬、龍)。 駒台には前の7つだけ。 1マスの駒の情報は16種類(駒のいずれか、または置かれていない)。 駒があるときには、さらに先手、後手どちらにに所属するかが分かる必要がある。 必要な情報のリストアップが終わったので、具体的なデータ表現を考える。 駒の種類は番号で表すことにする。 歩を1、香車を2・・・玉を8、成り駒は生駒に8を足した値にする。 1マスの情報は駒番号、手番のペアにする。 9x9のマスを表現するのに二次元配列を使うと面倒くさそうなので、1次元配列を使う。 配列のレイアウトは後日決めることにする。 たくさん考えてバテてしまったので、今日も1行もプログラムを書かずに終わる。
あの女の子良かったのにな
314 :
デフォルトの名無しさん :2005/10/04(火) 09:39:49
Javaで作った将棋ってどっかに落ちてたような
うさぴょんの本読めば設計なんて速攻で終わるだろふつう
316 :
デフォルトの名無しさん :2005/10/04(火) 20:22:05
317 :
デフォルトの名無しさん :2005/10/04(火) 20:25:50
>>315 それじゃぁうさぴょんと同じになって面白くない気がします。
>311 1マスの駒の情報は16種類 っていうのが間違っているけど。それは置いておいて。 10月4日(火) 雨 先走っているが、指せる手を生成するとき、あったら便利そうなものを列挙する。 玉の位置(王手やその応手)、その筋に生歩があるか(2歩対策)、王手がかかっているか、 盤上の駒を順順にたどるためのリスト。 ・・・めんどくさそうだ。 簡易操作用の盤面データ構造と、高速に指し手を生成/実行するためのデータ構造とは 区別したほうがいいのかもしれない。 使用言語とか、ユーザインタフェイスも考えなければ。 そろそろ資料をあたってみる必要がありそう。 ということで、今日も1行も書かずに終える。
ここらで将棋を作るのに特化した言語を作ってやろうじゃないかと言うやつが出てきてもよさそうな悪寒
将棋に関係ないところのコーディングに手間取ってるうちにモチベーションが下がっちまうんだよな
>将棋に関係ないところのコーディングに手間取ってるうちにモチベーションが下がっちまうんだよな 漏れもそー、9x9を縦にスキャンするか横にスキャンするかで速度違うのかとか 5一から5九までで41手目に5五を通る騎士巡歴って何通りあるのかとか調べたり
ソフトは相変わらず定石から外れると弱いですか? 人間も似たようなところがあるけど。
激指がまさに定石はずし食らってアマトップに負けたよね
10月5日(水)雨 道路が河のようだった。この前浸水してたけど、大丈夫かよ。というのは置いといて。 言語の選択 C・・・うーん・・・たぶん、でっかいソースになるけど・・・名前空間が無くて大丈夫か? C++・・・うーん・・・慣れてないし・・・トラップだらけの気が・・・。 Java・・・うーん・・・ぜんぜんわからんし・・・でも、スレッドとグラフィックが標準であるのはいいなー。 VB,でるふぁい・・・お金掛けたくないので論外。 LISPで組んだとか、rubyで組んだって人もいるなぁ・・・どうしよ。 悩んで、今日もプログラムを1行も書かずに終える。 オススメの言語はなんですか?
325 :
デフォルトの名無しさん :2005/10/05(水) 20:42:24
私はJavaで組んでますが、コンピュータ将棋選手権の出場者ではCやC++が圧倒的に多いですね。 ただ、スレッドが標準で使えるJavaはお勧めです。
じゃさ、土台作るからAIの部分だけDLLで作ってよ。
327 :
325 :2005/10/05(水) 21:22:55
Javaも個人的には好きだけどさ、AI部分がダイナミックに変更できるDLLのほうが いろいろ便利だと思うよ。
329 :
325 :2005/10/05(水) 21:30:51
確かにそうですね。 CSA将棋 + osl-for-csaとかなら、柔軟性が上がりそう。 かと言って今から作りなおす根性も無い自分…
インターネットってどうやるんですか?
perlはどう?
合法手の生成なんてどうでもいい。合法手のうちの最善手をどう評価するかだろ。
>>321 >5一から5九までで41手目に5五を通る騎士巡歴って何通りあるのかとか調べたり
調べて何に使うのだw
>>328 Javaでもdynamic class loadingできるし という話ではないのかな
334 :
デフォルトの名無しさん :2005/10/06(木) 12:38:34
データ構造に依存しないライブラリでないとソースレベルで 再利用できないのですが...
データ構造に依存しないライブラリって速度でないっぽいし 結局こういうソースって参考(肴?)にするぐらいしか意味無いよね
これから作る人にとっては 1週間くらいは時間が短縮できるんじゃない?
337 :
321 :2005/10/06(木) 13:43:13
>>333 >>5一から5九までで41手目に5五を通る騎士巡歴って何通りあるのかとか調べたり
>調べて何に使うのだw
最初は、「ヒルベルト曲線とか使うとなんかの効率あがらね?」とか思っているうちに
9x9の騎士巡歴は閉路がないって見つけてきて、それならこっち端からこっち端って
できなくね?できる?じゃ、ど真ん中で5五通れる?とか調べはじめて…
…何かに使えるかって?…少なくともこの順番に駒を見ても無意味だということがわかってきた
誰かの参考になればw
338 :
334 :2005/10/06(木) 14:20:41
>>335 だから、それを吸収するlayerを作成して
そこからライブラリを作ってといってるわけ。
そうでないと参考にはなるが、移植性が困難。
>>337 斬新だw
飛車や角が桂馬の動きで長距離移動するゲームだと効果的なのか?
>>338 そのlayerの設計段階で挫けそう...
速度でないって言われてるのにそれを無視する334萌え
layerかますと速度ガクっとこない?
343 :
デフォルトの名無しさん :2005/10/06(木) 16:18:47
コンピュータ将棋に限定すると、「合法手の生成」「局面の静的評価」「探索」は分離して作成できそう。 それ以上の抽象化(例えば、将棋・囲碁・チェス全対応の駒の評価とか)は速度に影響しそう。
344 :
デフォルトの名無しさん :2005/10/06(木) 16:36:56
>>332 最善手の評価をするのが楽しいんじゃん。
それを人に作ってもらってどうするよ。
むしろ、誰でも出来る合法手の生成を人任せにしたほうが楽。
345 :
321 :2005/10/06(木) 17:29:50
>>339 ケイマトビ ケイマトビ
漏れの場合、「将棋のソフト作っている」ふりして、精神安定を図っているだけだからな〜
完成しないようにいろいろアイディアを出して工夫するわけよ。
>>343 完全情報2人ゼロ和ゲームなら、フレームワークできそうだけどな。
ゲーム木の探索方法はゲームに依存しない。
ゲームごとに局面の状態・指し手の表現という2つの型、
合法手の生成、指し手の実行、局面の評価という3つの手続きがありゃいいわけで。
>>344 むしろ、誰でも出来る合法手の生成を人任せにしたほうが楽。
ところがなー、人がわかりやすくインタフェース作っても、それが気に入らんってなることが多い。
「自分独自の」評価関数で勝負したい人は特にそうだろうな。
guest:male 16
348 :
デフォルトの名無しさん :2005/10/06(木) 21:11:50
>>346 あ、そのフレームワーク面白そう。
時間が出来たら作ってみようかな。
自分独自の評価関数は確かに。
「この局面は○○だから××という手を生成」とかって、俺には将棋の知識が無いから出来んし。
局面評価関数を作ればいいんだよ。局面を渡すと-1000から1000点の間で 数値を返す。先手勝利で1000、後手有利で-1000だ。
じゅうがつななにち(きん) くもり なやみになやんだすえ、しーぷらすぷらすでかくことにした。 namespaceをつかおうっと。
漏れは、棋譜ファイルのパーサ部分をキボンティアヌス
>>351 Cで直書きしてあるコードよくみるけど変更しずらいからやだなあれは...
自分は:
->保存されてるencodingをUnicodeに変換。
->Unicode対応の名前付き正規表現で必要なところをつまみ食い
->つまみ食いをネイティブ型に変換
てな感じでやってる...
本質的じゃないところは汚くても気にしないとか
乙であります! さて・・・1行もプログラム書かない日記のネタ考えよう・・・。
356 :
デフォルトの名無しさん :2005/10/14(金) 22:03:15
C++とかJavaから利用できるPrologの処理系があれば便利そう。 詰み判定とかに使えないかな? 知ってる人いたら情報キボンヌ。
358 :
デフォルトの名無しさん :2005/10/14(金) 22:31:37
>>357 うをおぉぉ、英語だ!
がんばって読もっと…
うをおぉぉ、英語だ! 却下
>>359 よしこの場で訳していこう。
とか言ったら俺がやらないといけないか・・・
日本将棋連盟は14日、プロ棋士と女流タイトル保持者がコンピューター将棋ソフトと公の場で対局するのを禁止したと発表した。 だとさ、さみしいじゃねえかおい プロ棋士のみなさん覆面してこっそりやってくださいおねげえしますだ
>>362 これって、ソフトとプロの対局は金になるから主導権は将棋連盟がもつ!勝手にするな!
ってことだよな?
>>363 米長邦雄・同連盟会長は「プロの世界は対局棋譜が財産。
将棋ソフトの発展には協力したいが、ソフトと人間がきちんとした場で対局する環境が出来るまでは安易に指さないでほしい」と話している
ということだそうだ
プロが草将棋さしてんじゃねえばかも〜んって感じ?
棋譜がちゃんと残る環境を整えてあげればよろしいのでしょうか?
関係者のかた居ましたらよろしくw
そんなことしったことか。 計算機屋は将棋のゲーム性だけにしか興味がないんだよ。
366 :
デフォルトの名無しさん :2005/10/15(土) 16:12:23
あーでも、コンピュータ将棋の参加出来るイベントが増えるなら嬉しいかも。 年一回のコンピュータ将棋選手権だけじゃ寂しいし。
>>364 ヒューマンインターフェースの問題だろ?
ゲームとは関係ない。
平たく言うと、 「今後はプロ棋士 vs COM対局をやりたければ、連盟に金を払え」 という事だね。
ど、どういう意味なんだ?
別に公開の場でなければやってもいいんでそ。だったら、 「対COM戦は金になりそうだから連盟に上納しないで儲けるんじゃねぇぞ」ってことじゃね? ある意味、最早羽生の神通力も金儲けの道具にならなくなったから必死なのかと。
どうやって連盟とコンピュータ将棋製作者両方に金が入ってくるようにするかが問題だなぁ。
つか、「ソフトだろうがアマだろうが素人だろうが、プロは金を取るからプロなんだぞ」と言ってくれれば わかりやすいのにねぇ。 そのうち、有料の将棋ソフトは連盟登録制になって、棋譜の無料公開を禁止したりしてな。
フリーでやろうぜ。プロなんか死んじまえ。
そうは言うがな、大佐。 このスレに居る住人の約28.3%は、ボナンザにもし勝てるようになって毎日コミュニケーションズから オファーが来たらどうしようっていつも悩んでいる。いつもだ!
フリーで公開してる人は、ドキュメントに >このソフトを利用して日本将棋連盟が金を儲ける事を禁止します と書いといた方がいいね。
376 :
デフォルトの名無しさん :2005/10/15(土) 21:39:18
そう言えばそうですね。 次のバージョンから「無許可での商業使用禁止」とか書いといた方が良いかも。 # そんな事は強くなってから言えよ > 自分
つうかプロのソフト棋士っつうのが誕生するという枝はないのか
ソフトの振りして、無線LANで操縦(?)する香具師とか出てきそうだな
激指って毎日コミュニケーションが発売してるんだっけ。 新聞社から見れば連盟より将棋ソフトのほうが魅力的だろうな。 開発費用たって連盟に払ってるほどかかるわけじゃないし。
金の無いケーブルテレビが、ソフト対ソフトの画面を延々と流すとか
381 :
デフォルトの名無しさん :2005/10/17(月) 15:11:46
それはそれで面白そうだな。
家庭では手に入らないような最強マシンでソフト動かすなら見る価値もありそう
383 :
デフォルトの名無しさん :2005/10/17(月) 18:14:32
けど、ソフトによって動作環境違うから厳しくない? 「コンピュータ将棋リーグ必須環境」とかつくるならOKか。
いやいや、マシン込みででしょう。メーカーとかショップ協賛でワークスマシンとか作って。 待ち時間には、そのマシンを写すの。天井カメラで。 ただ、座布団に載る大きさ制限とか面白いかもね
面白そうやな
386 :
デフォルトの名無しさん :2005/10/17(月) 22:40:40
「マシンの体積と持ち時間が反比例する」ってルールはどう?
やはりここは一つ、発熱量と持ち時間が反比例すると言うことで。
CPUクーラーの重量と反比例でどうだ
389 :
デフォルトの名無しさん :2005/10/18(火) 01:46:17
ちょ、ヒートシンクすら要らないCPUだと0除算エラーが!
マニピュレータで駒を自分で運ぶ条件をつければ、ロボットコンテストに混ぜてもらえるかも
バッテリとか総消費電力に制限があって、使いきると負けとか。
消費電力縛りは新しいね
393 :
デフォルトの名無しさん :2005/10/18(火) 21:46:12
そうすると、OpteronやAthlon64よりもVLIWプロセッサ有利かも。 コンピュータ将棋に新しい風が吹くかも。
そうなると、人間有利だな。なんせバナナ食ったりしているんだから。
396 :
デフォルトの名無しさん :2005/10/19(水) 00:22:34
人間にはトイレという厳しい制約があったり
エコ将棋とか新しいジャンルが生まれそうだな
将棋にかかわらず、PCそのもののエコ化が進みそう。 二酸化炭素排出量が減らせるので、政府も後押しするだろう。 すると、連盟の偉いさんもそれに追従するはず。 結果、コンピュータ将棋を認めざるを得なくなる。
>>398 すまんが、論理展開がまったくわからない。
PC使わなければもっともエコな訳だが。
>>399 そんなこといったら人間がいなくなるのがもっともエコだよ
本末転倒なことをいうな。 人間あってこそのエコという概念だ。
シャアの逆襲ネタなの?この流れ
エコエコアザラク
404 :
デフォルトの名無しさん :2005/10/20(木) 11:44:50
ネタ古いよ
将棋専用のスパコン作って、とっととプロ棋士を打ち負かせばいいんだよ。 そうすれば自由に対局できるようになる。
専用ハード作れ。そのへんのコンピュータより速いから。
408 :
デフォルトの名無しさん :2005/10/21(金) 22:10:03
専用ハードに必要な機能なんだが ・ 盤面をひと纏まりのデータとして扱える ・ 局面の遷移が高速 ・ 駒の効きをハードで判定してくれる とかあれば嬉しいかな。 んで、どうやって作ろう…
ALTERAのFPGAで良いんじゃない?
411 :
デフォルトの名無しさん :2005/10/23(日) 17:32:03
>>411 コンピュータの性能もたいしたものが無く、情報の入手方法が著しく制限されていて
自己満足や自己表現やレクリエーションとしてのプログラミングなど考えられない環境で
…とかだよねぇ、たぶん。
君主制共産主義に基づいた軍事ドクトリンとかあったりしてw
でも市場的には日本限定の将棋でなくチェスとかにするべきだと思うんだけど、まさか駒をキャプチャして
再利用するのが前提の戦術だったらどーしよー。
>>412 プログラマの数は少ないが、
>>412 より優秀な奴にプログラミングを覚えさせて使ってそうだな。
414 :
デフォルトの名無しさん :2005/10/23(日) 20:36:19
> まさか駒をキャプチャして 再利用するのが前提の戦術だったらどーしよー。 いやそれ、かなり凄いと思いますよ。 棋譜から学習するって事なら、それを実装した強いプログラムはあまり無いと思うので。
415 :
412 :2005/10/23(日) 21:07:31
>>414 ごめん、駒をキャプチャしてってのは、「捕獲して」って意味です。
416 :
デフォルトの名無しさん :2005/10/23(日) 23:05:34
拉(ry って事ですね (汗 ありえそうなだけに怖いです。
ほえ? 同一マシンで戦うとYSSが強いのか・・・。 オセロといい、すごいなぁ・・・。
>>418 5月の大会はYSSが1番マシンスペック高かった。
>>354 そのうちサーバのダウンロードしよ。
そのうち…
>>422 あの頃の熱狂ぶりが嘘のよう。
なんか私のリンクがとても恥ずかしくなってきた。
>>422 ども、修正しました。
>>423 , みなさま
適当に指示いただければリンク修正/削除などいたしますので。
1年前行き当たりばったりで作ったソースを発掘。 ・・・ダメだこりゃ・・・ データ構造がオソマツ。 将棋プログラマ諸氏はデータ構造の書き換えってとうぜん何度か行うと思うんですが・・・。 ワシには気力ないっす。
426 :
デフォルトの名無しさん :2005/11/10(木) 04:23:23
それ、すごく分かります。 結構複雑なライブラリがあるのですが、どうしても手を入れる気にならないという。 手を入れれば速くなるの分かってるんですけどね。
逆に私は、手を入れても速くなるか判らなくても手を入れたくなるが。
428 :
デフォルトの名無しさん :2005/11/11(金) 00:36:10
ライブラリって、下手に手を入れると壊してしまいそうで怖くないですか?
とりあえず漏れの教訓だと、「テストプログラムは何のテスト用なのかを記述しておけ」だな ファイル名が全部、test1.exe〜test10.exeとかじゃわからねーって>漏れ あと、古いソースも日付でフォルダ作ってとりあえず取っておくこと。 こんなことじゃボナに勝つどころか、棋譜どおりにすらまともに動かせないぞ(泣
何十万回だか何百万回だか計算しまくるのをわかっていながら、速度が遅くなるような 設計をするやつは阿呆
> 何十万回だか何百万回だか この見積もりは門外漢さんですな
「コンピュータ将棋の進歩5」のISBNは4320121546みたいやね。 まだamazonでもcbook24でも予約できないけど。 つか、来月発売の本の詳細くらい置いておけ>共立出版
下手の横好きでどうにかMTD(f)が動き始めたっぽい。 あっちこっちでよく落ちるけど…まともに動くのはいつの日か。
435 :
デフォルトの名無しさん :2005/11/16(水) 21:19:31
お。新刊出るのか。
436 :
デフォルトの名無しさん :2005/11/17(木) 01:57:17
並列で処理すればプロは確実に負ける
437 :
デフォルトの名無しさん :2005/11/17(木) 03:47:45
>>433 をぉ、予約しに行かねば。
>>436 どの位の並列処理を言ってるのか分かりませんが、今のトップクラスのソフトもしてると思いますよ。
選手権でも、Opteron800シリーズを使ってたチームもありましたし。
438 :
デフォルトの名無しさん :2005/11/17(木) 19:37:38
「プログラマーのソフト」って当り前 と思ったら、大学関連ではないって意味だった
440 :
デフォルトの名無しさん :2005/11/17(木) 23:04:32
森内との対戦の棋譜みたけど、はっきりいって寄せ下手だねw 終盤強いといわれるソフトでも、こんなものかとおもった。 距離感わかってない気がする。
441 :
デフォルトの名無しさん :2005/11/17(木) 23:32:11
おそらく 専用チップをFPGAで作成すればへぼプロは負けるだろう 今の次点で
442 :
デフォルトの名無しさん :2005/11/18(金) 12:21:12
FPGA程度ではたいしたことはできなさそうだが
今のソフトのアルゴリズムはFPGA化には向いてないから駄目
GPU使えないかな
444ならP2Pの技術と嫌がるお前らのPCを無理矢理使って 150手先まで全手検索するソフトをこいつ↓が作る!!
446 :
デフォルトの名無しさん :2005/11/19(土) 12:48:00
>>445 _
,.'´ ヽ ))
l ノメノハ)〉 ペコリ
! (!l - -ノ| )) ゴメンナサイ
ノノ( JJ)リ!
` `i_j_j
448 :
デフォルトの名無しさん :2005/12/03(土) 01:28:50
今コンピュータ将棋を作ってるんですが、終盤の速度って概念がよく分かりません。 出来れば教えて頂けないでしょうか。
450 :
デフォルトの名無しさん :2005/12/03(土) 13:55:42
誘導ありがとうございます。 さっそく聞いてみます。
終盤の速度なんて簡単だ。駒得よりも詰みを重視するだけ。 いくら捨て駒しても、相手玉を詰めばいいんだから。
玉を取る事が最大の駒得
453 :
448 :2005/12/04(日) 14:21:46
“相手より一手でも先に王を取る”ことが“速度が速い”という事だと教えてもらいました。 ただ、単純に局面遷移させて計算しようとすると、せいぜい数手先までしか読めないので、実装するには工夫が必要でしょうね。
454 :
449 :2005/12/04(日) 15:16:36
気持ちはわかるけど、終盤の速度計算は有段者になってはじめて身につくものとも言えます 速度計算がわかれば有段者、といった方がいいかな? なんで、そんな単純にはいかないですよ 気長に頑張ってください まだ半年ありますからw
申し込み時点で動いていないとダメみたい。よってあと2ヶ月。 >>申込時にプログラムは動作可能となっていること。 >>申し込み期限 2006年1月31日(火)
457 :
453 :2005/12/06(火) 12:00:03
>>454 そうですね。
とりあえず、詰み・必死をきちんと理解して、その後速度計算ですよね。
>>455 とりあえず動くのは出来てるんですよ。
なので、申し込みした後に強くしようと思います。
>>456 各駒ごとに性格を持たせたオートマトンて面白いかもね。
戦局をトップダウン評価するののアンチテーゼみたいで。
459 :
デフォルトの名無しさん :2005/12/07(水) 00:35:02
駒ごとに「俺はこう動きたい」「こいつをこう動かしたい」って言わせて、話し合って方針を決めるとか?
そういえば弾よけSTGのCOMプレーヤで、 いろんな性格の議員が会議して決めるっていうのあったな ABAさんだったか
あーshinichiro.hさんだったか。
でも将棋で考えてみればこれは 「こまどく」「玉のかたさ」とかが 各議員にあたるわけで、 それらの発言力を状況によって変えることで 適切な判断をする、っていうのは すでに将棋では昔からされてることだね 逆に言えば、将棋とかで使われてた手法を STGのCOMプレーヤのAIに導入したのが 彼の着眼というか
464 :
458 :2005/12/07(水) 14:15:02
>>459 最近はやりの「自己組織化」みたいなかんじで、見たことも無い矢倉とかできたら楽しいかなと。
急ですみませんが、土日に停電があるようで wdoor を金曜夕方から落とします。 月曜に復活の予定です。
もう発売?
>>467 amazonは予約できた。21日に聖闘士星矢EPISODE・G 8と発送の予定。
角成り流星拳!
470 :
デフォルトの名無しさん :2005/12/21(水) 04:08:59
もう書店には並んでるの?
471 :
デフォルトの名無しさん :2005/12/21(水) 15:28:58
近所の本屋にはありませんでした(当たり前かも)。 取り寄せをお願いしたら、年明け入荷だそうです。
しおんの王と一緒に買ってやれ。
漏れんとこも、市内(いちおう、県庁所在地)の主要書店を巡ったがなかった。<将棋の進歩 ・・・漫画といっしょに7−11に頼むかね。
アマゾンで売ってたよ PC技術書は結局ネット通販で買うしかないな
大阪ユーゴー書店にて『コンピュータ将棋の進歩(5)』早速入手! 年末年始は読み倒しだ。
>>465 :wdoor事務所さん
いつもお世話になっています。
年末年始は wdoor を落としますか?
477 :
デフォルトの名無しさん :2005/12/25(日) 19:09:49
1月末までの申し込みの大会に出たいのですが コンピュータは貸してもらえますか。 ショポイのしかないんですが。 まだ作れてないですが。
同じく私も参加したいと思っている。初歩の初歩だけど。 CSA将棋のsikou.dll形式にはなってる。 参加費、1万円。千葉までの交通費……ちと荷が重いな。 仕事が暇てか、無い状態なので、逃避に将棋プログラムの勉強と実装をしそう。 ……まあ、最強じゃなくて最弱だろーけど。
もしかして「連盟監修」でプロ棋士本人も参加させてソフト作れば (ってすでにあるか?)プロ棋士との対局もやりやすくなるのかな?
480 :
477 :2005/12/26(月) 11:03:32
パソコンは貸してもらえるのでしょうか
TACOSがあるだろ
多分貸してもらえない みんな自分の持ってってるよ
483 :
デフォルトの名無しさん :2005/12/26(月) 13:34:11
へぼしかないんですが。セレロン466と2400メガヘルツなんですが。 10万くらいのパソコン貸してもらえないでしょうか 8. 参加資格 自作のプログラム1つ。機種は問わない(原則として持ち込み)。 思考部にはオリジナリティがあること。
>>483 オリックスとかから借りたらいいじゃん。
#いくら掛かるかは知らん。
>>484 回答有難うございます。時々利用します。
487 :
デフォルトの名無しさん :2005/12/29(木) 17:41:49
>>477 ご希望のマシンを中古で買ってレンタル日数で割って切り上げ。そのレンタル料で得た金だけで最強マシン買う予定。
レンタル料の予算は一日幾らまで?
489 :
デフォルトの名無しさん :2006/02/05(日) 22:00:57
今見てます。 出たかったんだけど、調整が間に合わなくて・・・ 悔しいです。
490 :
デフォルトの名無しさん :2006/02/25(土) 11:43:43
kifu for Javaみたいに、ネット上に公開されている棋譜を携帯で表示させるには どういうふうにすればいいんでしょうか? HTML中にJavaアプレットを入れてしまえばいいのか 携帯用Javaでアプリを作ってネットからkifをダウソすればいいのか・・・ 前者は携帯でJavaアプレットが読めるのかどうかという問題がありそうだし 後者は携帯がkifダウソを許可してなさそう(Vなんかは許可したデータ以外のダウソは不可能のはず)だし・・・
kifu for java を使えばいいんじゃね 終了〜
携帯で見られんの?>Kifu for Java
>>490 携帯アプリにはネットからの通信APIがある
記憶場所もあるから問題なし
へー
495 :
デフォルトの名無しさん :2006/03/21(火) 07:41:23
思ったんだが、Zobrist法の乱数って毎回選ぶわけじゃないよな。 作者の方で適当に乱数テーブルを予め発行しておくんだよな。
496 :
デフォルトの名無しさん :2006/03/23(木) 03:35:19
497 :
デフォルトの名無しさん :2006/03/23(木) 11:28:32
↑ばーか
499 :
デフォルトの名無しさん :2006/03/24(金) 02:08:25
過疎?
今日は3月32日
>>100 凝ったことがやりたいのなら, castle map というものもあるですよ.
#*定跡の* アルゴリズムではないけれども
ブログの宣伝すんなカス
wdoorが発展すれば、将棋プログラム開発者にとって 多少なりとも利益になるんだから良いジャマイカ
505 :
デフォルトの名無しさん :2006/04/25(火) 19:25:57
すいません
▲コンピュータ将棋スレッド28▽
http://game9.2ch.net/test/read.cgi/bgame/1145604190/ で、話題になりこのスレならわかるんじゃないかと聞いてやってきました
棋譜を遡って行き、実際に指された手を除いて
候補手とその評価値を計算し実際に指された手の評価値と比べて
高いほうを符号を逆にして上に伝搬していく。
その際、実際に指された手の評価値は対局中に計算された評価値ではなく
下から戻されるオルタナティブと比較されて良かったほうの評価値を順に使っていく。
という手法がオセロでは実際使われていて、次局により良い手を指せるようになるらしいんですが
この手法は何故将棋では使われてないんでしょうか?
ゲーム木空間が巨大なのに、どこのデータをどうやって伝播 していくって? 複雑なやり方をすればするほど計算に時間がかかる
それ激指で既に採用されてるって
508 :
デフォルトの名無しさん :2006/04/27(木) 13:07:29
それで、激指は指せば指すほど強くなるの?
将棋のルールを知ってる時点で尊敬する。
麻雀の役覚えるより1000倍簡単だ
511 :
デフォルトの名無しさん :2006/05/03(水) 09:00:00
ほしゅだお
512 :
デフォルトの名無しさん :2006/05/03(水) 11:24:35
>>512 うさぴょんの今日の10:10の対局、終盤まるで人が指すかのように落ち着いて寄せていくうさぴょんに対して
相手はまるで安将棋ソフトの如く苦し紛れの手を指す様が微笑ましい。
その次の奈良将棋の対戦相手、反則負けってなんだ?
>>514 LAN通信トラブルでRS-232Cで対戦中だってさ
ボナンザは決勝進出ですね
517 :
デフォルトの名無しさん :2006/05/05(金) 17:57:48
をい、おまいら、ボナンザ優勝だぞ。
だがエキシビジョンで負けた。 まあ、奨励会程度とは互角にやれる可能性は見えてはいるが、 A級プロと互角にやれる日はまだまだ遠そうだ。
早指しなら、3〜4年程度でA級にもかてるようになると思う。
早指しって言っても秒読み60秒じゃないとキツいと思うが。
それじゃまだまだ名人位に就けないってことじゃん 現役名人を倒さないことには、ディープブルーになれない
作者自身は将棋の駒を動かせる程度の棋力なのに強いってのがすごいよね。
そこまでヘボくないだろ 24でレート500だからまぁまぁ指せるんじゃないの
524 :
デフォルトの名無しさん :2006/05/24(水) 09:56:50
ホームページ上で、将棋盤を表示させて、駒を自由に動かすにはどうすればいいんですか? どなたか親切な人、教えてください。
>>524 「駒を自由に」が何を意味するかによるけど
JavaScriptかJava、FLASH等で実装された将棋盤のスクリプト
と画像を用意すればいいんじゃないの。
526 :
♀ :2006/05/24(水) 21:18:46
素人童貞ばっかりだからかな
529 :
デフォルトの名無しさん :2006/06/04(日) 17:28:38
素人ばかりで玄人さんたちにはうっとうしいだろうが、俺も526さんのように知りたいなあ。
>>529 WebProg板へどうぞ。
まぁ、JavaScriptとレイヤ機能を使えばできるわけだが。
#一頃流行ったマウスポインタを追っかける画像の類とほぼ同等。
531 :
デフォルトの名無しさん :2006/07/28(金) 22:05:09
>>501 さんの書いてたcastle mapって何ですか?
ぐぐってみたけど分かりませんでした。
532 :
デフォルトの名無しさん :2006/08/02(水) 12:53:56
質問よろしいでしょうか? 国立大学法人での力関係(人脈を除く)を教えてください。 人事(採用、解雇)についてです。 学長→人事課長→副学長→学部長→学科長でしょうか?
533 :
デフォルトの名無しさん :2006/08/02(水) 20:48:21
学長の上に学長の嫁がいます。
534 :
デフォルトの名無しさん :2006/08/02(水) 20:54:07
学長の嫁→学長→ 人事課長の嫁→人事課長→ 副学長の嫁→副学長→ 学部長の嫁→学部長→ 学科長の嫁→学科長 でいいでつか? 左側に手土産持参するといいんでつか?
535 :
デフォルトの名無しさん :2006/08/02(水) 21:13:34
知るか! スレ違いだ。
学長の娘→学長の嫁→学長の嫁の父→学長→ 学長の娘と結婚しろ
537 :
デフォルトの名無しさん :2006/08/02(水) 21:26:40
いやだが、学長を説得しないと結婚出来ないぞ。 つまり、学長の娘→学長の嫁→学長の嫁の父→学長。
538 :
デフォルトの名無しさん :2006/08/02(水) 21:27:12
間違えた 学長→学長の娘→学長の嫁→学長の嫁の父→学長
学長の娘の子→学長→学長の娘→学長の嫁→学長の嫁の父→学長 子を作れ 話はそれからだ
大学の規模にもよるが学長が人事トップなのはまれなのでは? 研究科長で行き止まりじゃね? なんにせよスレ違い。
>>534 うちの大学の学部長は独身おばあちゃんなんだけど
$ make -f makefile.gcc gcc -D_GCC_ -c KomaMoves.cpp gcc -D_GCC_ -c kyokumen.cpp kyokumen.cpp:2293: warning: integer constant is too large for "long" type kyokumen.cpp:2294: warning: integer constant is too large for "long" type kyokumen.cpp:2295: warning: integer constant is too large for "long" type kyokumen.cpp:2296: warning: integer constant is too large for "long" type kyokumen.cpp:2301: warning: integer constant is too large for "long" type kyokumen.cpp:2302: warning: integer constant is too large for "long" type kyokumen.cpp:2307: warning: integer constant is too large for "long" type kyokumen.cpp:2308: warning: integer constant is too large for "long" type gcc -D_GCC_ -c main.cpp gcc -D_GCC_ -c Te.cpp gcc -D_GCC_ -c Joseki.cpp g++ -o shogi KomaMoves.o kyokumen.o main.o Te.o Joseki.o ld: kyokumen.o relocation overflow for relocation entry 0 in section (__TEXT,__textcoal_nt) (displacement too large) ld: kyokumen.o relocation overflow for relocation entry 1 in section (__TEXT,__textcoal_nt) (displacement too large) ld: kyokumen.o relocation overflow for relocation entry 2 in section (__TEXT,__textcoal_nt) (displacement too large) ld: kyokumen.o relocation overflow for relocation entry 7 in section (__TEXT,__textcoal_nt) (displacement too large) ld: kyokumen.o relocation overflow for relocation entry 8 in section (__TEXT,__textcoal_nt) (displacement too large) ld: kyokumen.o relocation overflow for relocation entry 9 in section (__TEXT,__textcoal_nt) (displacement too large) ld: kyokumen.o relocation overflow for relocation entry 1 in section (__TEXT,__StaticInit) (displacement too large) make: *** [shogi] Error 1 ---ここまで---
gcc -D_GCC_ -Wall -Oにしたら↓の結果でした gcc -D_GCC_ -Wall -O -c kyokumen.cpp kyokumen.cpp: In constructor `Kyokumen::Kyokumen(int, KomaInf (*)[9], int*)': kyokumen.cpp:46: warning: too few arguments for format kyokumen.cpp: At global scope: kyokumen.cpp:2293: warning: integer constant is too large for "long" type kyokumen.cpp:2294: warning: integer constant is too large for "long" type kyokumen.cpp:2295: warning: integer constant is too large for "long" type kyokumen.cpp:2296: warning: integer constant is too large for "long" type kyokumen.cpp:2301: warning: integer constant is too large for "long" type kyokumen.cpp:2302: warning: integer constant is too large for "long" type kyokumen.cpp:2307: warning: integer constant is too large for "long" type kyokumen.cpp:2308: warning: integer constant is too large for "long" type kyokumen.cpp: In member function `int Kyokumen::Mate(int, int, Te&)': kyokumen.cpp:2450: warning: suggest parentheses around assignment used as truth value kyokumen.cpp:2448: warning: `int ret' might be used uninitialized in this function gcc -D_GCC_ -Wall -O -c main.cpp main.cpp: In member function `int Sikou::ITDeep(int, KyokumenKomagumi&, int, int, int, int)': main.cpp:232: warning: `int retval' might be used uninitialized in this function main.cpp: In function `int main()': main.cpp:384: warning: char format, different type arg (arg 5) main.cpp:324: warning: unused variable `KomaInf TestBan[9][9]' main.cpp:335: warning: unused variable `int Motigoma[40]' gcc -D_GCC_ -Wall -O -c Te.cpp gcc -D_GCC_ -Wall -O -c Joseki.cpp g++ -o shogi KomaMoves.o kyokumen.o main.o Te.o Joseki.o ld: kyokumen.o relocation overflow for relocation entry 1 in section (__TEXT,__StaticInit) (displacement too large) make: *** [shogi] Error 1
64bitマシンじゃないならMakefileの-D_GCC_はずせばいいと思います。 Macはよくわからん。
変数に入りきらない数字が原因だってメッセージが出てるのに それすら読めないの?
小学生かも知れないよ
おまいらなにもそこまで言わんでも
549 :
助けてくん :2006/08/09(水) 19:56:06
>>549 「プロジェクトのプロパティがUNICODEを使用するようになっている」に一票。
それはさておき、こんなエラーメッセージが出たとか何とか書きなさいよ。
552 :
助けてくん :2006/08/10(木) 17:13:01
失礼しました。Microsoft Visual C++ 2005 Express Edition では6.0の時と書き方が変わっているようです。 コンパイルすると1errors,80warningsと出るけど、 コンパイラのメッセージ通り、main.cppの361行の long tempをtime_t tempにするとコンパイルできる。 あとはshogi.exeをクリックするとCUIで対局できる(7776等と入力する) のだそうです。こんどはうさぴょんがビルド出来ません。お知恵下さい。
たったひとつのエラーじゃないかよ・・・・・
554 :
助けてくん :2006/08/11(金) 05:53:05
うさぴょんでは20以上のエラーが出ます。およよ
その他の重要な警告: ・このコードの大部分を利用して、CSAの大会に出る事は多分できません。参加条件に、「自作のプログラムであること」という条件があるからです。ばれたら、二度と出場できないんじゃないかと思います。 ・このコードの一部分を改変し、改変したコードを作者に無断で配布する事はできません。 ・このコードの大部分を利用してプログラムを作成し、作者に無断で配布することは、商用・Freeを問わずできません。 とか作者が配布してるページには書いてあるけど、うさぴょんをコンパイルして どうしようっての?バイナリ配布してるし。
お勉強
…勉強だったらコンパイル通さなくてもソース読めばいいような気がするんだけど…。
558 :
助けてくん :2006/08/13(日) 02:56:54
勉強ってのもあるけれど色々いじって確かめたいのよね。 特に評価関数のところ、変更して試してみたいのよ。
プログラムに限らず読むだけで身につくなら苦労はないよなあW
なーんか、スケベ心が見え隠れするんだよねぇ。
>>545 32bitマシンですが-D_GCC_はずしたらエラー一杯でコンパイル通りません
>>546 これはどう対処したらいいのでしょうか?
ググっても良く分らんorz
kyokumen.cpp: At global scope:
kyokumen.cpp:2293: warning: integer constant is too large for "long" type
この警告は↓の辺りなんですが...
uint64 TsumeHash::GI_BIT_TBL[5]={
0x0000000000000000,
0x0000000010000000,
0x0000000030000000,
0x0000000070000000,
0x00000000f0000000,
};
コンパイルオプション付ければ通るとかっていう問題ではないのでしょうか?
サルな質問で面目ない。誰かお願いします。
>>561 エラーメッセージをよく読め。long型に定数が入りきらないと書いてあるだろ。
uint64は64ビット符号無し整数の意味だろうからどこかで typedef しているはず。
それが64ビットじゃなくて単なるlongになってしまっている。
#ifdef あたりでプリミティブな型を使い分けている処理が
環境にうまく適合していないのだろう。
kyokumen.hで #ifdef _GCC_ typedef long long int64; typedef unsigned long long int uint64; #else typedef __int64 int64; typedef unsigned __int64 uint64; #endif です。これで問題ないように見えますが... Darwin(Macのカーネル)特有の問題ではなさそうなのですが、 ↓みたいにサフィックスをつけるとwarning: integer constant is too large for "long" typeは出なくなりました。 uint64 TsumeHash::GI_BIT_TBL[5]={ 0x0000000000000000ULL, 0x0000000010000000ULL, 0x0000000030000000ULL, 0x0000000070000000ULL, 0x00000000f0000000ULL, }; が、他のエラーは残ったまま。 ld: kyokumen.o relocation overflow for relocation entry 1 in section (__TEXT,__StaticInit) (displacement too large) 先は長そうだorz 初心者スレに戻った方がいいのだろうか。
sizeof ( uint64 ) == 8 になってるか確かめてみたら?
sizeof ( uint64 ) == 8 になってました $ cat sizeof_uint64.cpp #include "kyokumen.h" #include <stdlib.h> int main(){ printf("%ld\n",sizeof ( uint64 )); } $ gcc -D_GCC_ -Wall sizeof_uint64.cpp $ ./a.out 8
>>565 ソース見てないのでアレだけど、Te.cppかJoseki.cpp辺りに巨大な固定配列があったりしない?
エラーメッセージからの類推で気になったのだけれど。
もしそうなら、単純なプログラムを書いてどの辺でそのエラーが出るか試してみるとよさそうだ。
Ex.
#include <stdio.h>
static char array[1024 * 1024 * 1024]; // これで1GB。適宜調整してみるよろし
// char array[1024 * 1024 * 1024]; // staticで再現しないならこんな風に外してもいいかもしれない
int main()
{
printf("%d\n", sizeof(array));
return 0;
}
567 :
デフォルトの名無しさん :2006/08/13(日) 23:47:28
ボーラントC使えよ。標準で動作可能だったはず
568 :
デフォルトの名無しさん :2006/08/13(日) 23:48:53
569 :
568 :2006/08/13(日) 23:54:56
すまん。実行できた。
>>567 Macには、ぼーらんとCなんてものがあるのですか?
571 :
566 :2006/08/14(月) 00:02:18
>>568 漏れの今の仕事では、速度追求のために1.5GBの静的領域を使っているもんでw
#会社で使っている0.5GBPCだとスワップし捲くりながら、それでもなんとか動く。
>>566 巨大な固定配列はなさそうな気がしますけど、
1Gではstaticに関係なく再現しませんでした。
$ cat hugearray.cpp
#include <stdio.h>
char array[1024 * 1024 * 1024];
int main(){
printf("%ld\n", sizeof(array));
return 0;
}
$ gcc -Wall hugearray.cpp
$ ./a.out
1073741824
それじゃ巨大関数とか?案外kyokumen.cppを分割したら消えたりして。
574 :
晒し :2006/08/14(月) 02:21:25
ハンゲは配牌とツモが完全操作されている
ttp://money4.2ch.net/test/read.cgi/mj/1153429545/l50 45 :焼き鳥名無しさん :2006/07/27(木) 16:05:11 ID:M6NCuLv0
プログラマーやSEやってる俺に言わせれば操作はやってないと思う。
その理由は簡単でわざわざ変な波を作るほうが難しいから。
たとえば誰かが2−5p待ちでテンパイしてリーチをかけたとする。
そいつに一発であがらせたいから山に上手い具合に2−5pを仕込むっていうのが難しい。
場に何枚2−5pが切れてるかや、誰の手牌に2−5pがあるかを瞬時に計算させるのは難しい。
よって、操作はないはず。
操作されてるとか言ってるのは下手糞な人だけじゃないの?
リアルでも「操作されてたから負けた」とか言いそうwwwww
マカーって程度低いね
577 :
デフォルトの名無しさん :2006/08/16(水) 03:16:22
>>576 そう言ってやるな。KFEndのソースはパクれないんだしうさぴょんでやるしか・・な。
>>576 マカー全般が程度低いんじゃない。自分の環境についての知識も将棋ソフトの知識もプログラミングの知識も
どれもろくにないのに他人を頼る>575が低いだけなんだ。
579 :
まともに動いてない :2006/08/18(金) 08:55:19
トリップ忘れた(´・ω・`)ショボーン
偽者か・・・ sageてないし。
582 :
デフォルトの名無しさん :2006/08/22(火) 20:10:04
(´・ω・`)ショボーン
(´ー`)マターリ
584 :
デフォルトの名無しさん :2006/08/26(土) 03:12:26
途中でもいいので、プログラム出来たところまでup希望します。 できればソースもお願いします。 何人作ってるのかな?
>>584 #include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
// ここまでできた。
第1手は、9+(1*2)+(2*2)+(3*2)+3+6=30通り。 で、大体、平均100手以内で決着が付くと想定すると、 約30^100通りのパターンを考えれば、ほとんどの棋譜をカバーできそう。 具体的には、3次元配列 kihu(x, y, t) (1≦x,y≦9 ,0≦t≦100) で、t手目の盤面状態を管理する。 更に、持ち駒置き場の状態を管理する為に、x,yの値を拡張して、xは=10、の値まで取れるようにする。 kihu(x, y, t) は、駒の種類(8種+空白:4ビット)+駒の状態(成・不成:1ビット)、が格納されるので、せいぜい1バイト在れば良い。 なので、1手あたりに消費するデータサイズは、(9×9×100)バイト≒8[KB] で、100手だと、30^100*8[KB] ≒ 3.9*10^139[TB](!?) 20年もすれば、100[TB]HDDの量産なんて、実現しそうな勢いだ。 でも、実際には、千日手や、同じ局面への統合、鏡面対象、2歩禁則、打ち歩詰め禁則、王手フラグ、 などで、飛躍的に、データサイズは減るから、HDDが、1[TB]も在れば、 ほとんど完全に、まともな棋譜の全てを網羅できそうな気がする。 作った所で、喜ぶのは、将棋ソフト会社だけ? 棋士は、職業として成立しなくなるし、そうなると、将棋ソフト会社も結局、割に合わないね。 既出の話だったら御免。
>>586 >20年もすれば、100[TB]HDDの量産なんて
間違った。
39000000000000000000000000000...0000000000[TB]か。
自分で計算しててなんだけど、こんなに必要な訳ないね。
宇宙に存在する原子の数は10^80といわれているのに・・・
原子にはスピンというものがあるから、実際には原子の数以上の情報を保存することは可能だね。
核スピンを利用しただけでは
>>588 の乗数部分をちょっと上乗せする程度で
終わってしまうのでは?
まあ、もしかしたら、遠い遠い遠い将来に 人類の残した総棋譜数が、10^80通り以上になる可能性はあるかもね。 それだけ時間という次元が偉大かもしれない、ということで。 ・・・宇宙の寿命については考えないものとする。
592 :
◆/8LpUMqVAk :2006/09/03(日) 04:53:02
いつか見た議論再び…
保守
594 :
デフォルトの名無しさん :2006/09/09(土) 23:46:51
今から将棋プログラムつくろうと思うけど・・・ まず手始めに、 ・駒のの動き、打ち歩詰め等のルール定義 ・手の選択(乱数による)(ルールに収まるように) ・それから・・・・ 配列とかも分からない漏れ。cは半年ほどのブランク。 ・・・・
配列分からないってCのブランクというよりC知らんのと同じ
596 :
デフォルトの名無しさん :2006/09/09(土) 23:57:57
0からはじまる奴だったはず・・・・[] 5個の場合、0,1,2,3,4だったような・・・ 宇津だ死のう
それcのブランクって言わないよ cやったことないって言うんだよ
Cじゃなくてオブジェクト指向のJavaをやりな
私は一度Javaで作った奴をC++に移植中。 なんだかんだでJavaって遅いです。
腕がないと難しいよね
Javaが遅いんじゃなくておまいのポンコツPCが遅い
はいはい。所詮X2 3800+ですよ。
ただ書くと遅くてチューニングには腕が必要なJavaと、 ただ書いただけでチューニングしなくても十分速い、 けどバグ出すと平気で落ちるC++。
正確じゃないなあ 腕のない人が書いた場合 Java:遅い C++:遅い上に落ちる
ちなみにどんなに腕があってもC++とJavaには越えられない壁がある。 おまけに、腕がない人はJavaのスタックトレースすら読めないわけだが。
開発速度と動作速度は反比例する
例えば「開発速度100で動作速度100」と「開発工数1で動作速度10000」を比較するなら、後者の方がコンピュータ将棋無機のような気がするが。 前者をチューニングして動作速度100000を狙うのは難しいだろうし。
>>607 それは当然でしょう(笑)
工数少なくて速度が速ければ言う事はありません
>>605 えっと・・・おにいちゃん、スタートレックって古い映画の話だよね・・?
>>607 ってネタだよね?
それともまさかマジボケ?
>>608 よく読め。そんな事は言っていない。工数と動作速度のどちらを取るのがコンピュータ将棋の開発に向いてるかと言う話をしている。
>>610 607だが、どの辺がネタ?
>>610 マジボケのようです。
速度の値が大きくなればなるほど速度が遅くなるという、
われわれの言語とは互換性のない拡張日本語を使用する
新人類の襲来っぽいです。
未来人なのかもしれません。その場合は、彼の言語は
現代日本語からの乖離が軽いようですから、そんなに
遠くない未来だと思われます。
せっかくの未来からの助言でも、大して遠くない未来の
ものでは、あまり新しい見地ではなさそうですね。残念です。
「開発速度100で動作速度100」と「開発工数1で動作速度10000」 ~~~~~ ~~~~~ どうでもいいけどな
614 :
・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 :2006/09/16(土) 18:46:41
使途マジワラエルが降臨したスレはここですか?
はいはい。どうせ俺はアホですよ。 揚げ足取るしか能の無いやつらもアホだがな。
プログラム下手なわりに挙げ足取りだけ上手だな
まあ揚げ足とるのとバグを見つけるのはよくにてるからな バグの大量生産してから必死につぶしまくってるやつは揚げ足取るのもうまいはずだわ
ダンゴリオンって、将棋ファンだったのか。 マ板にお帰り。
620 :
デフォルトの名無しさん :2006/09/19(火) 08:10:33
脊尾のアルゴリズムってどんなものですか?
>>620 詰め将棋の探索アルゴリズム。
非常に簡単に説明すると、
通常の詰め将棋探索アルゴリズムは、王手をできる手をすべて試して、
次に王側は、逃げる手をすべて試して、さらに王手する手をすべて試す
というのを繰り返すことで、最短で何手で詰むかを探しているんだけれども、
それだと遅いので、
共謀数というのを導入して、
王手したときに逃げられる手の数を共謀数から引きながら探索すると、
王が逃げる道が狭くなる方向を優先して探索するようになります。
すると、高速に詰めを見つけられるって感じです。
迷路で鬼ごっこをイメージしてもらうとわかり易いかも。
敵を逃げ場の少ない方に追い詰めていくと、詰めが見つかりやすいって感じ
詰めは速く見つかるけど、必ずしも最短の詰めが見つかるかどうかは解らない。
実際は、王が逃げる手数だけじゃなくて、王手できる手数の方向からの両方からも調整していて、
けっこう難しいです
参照:コンピュータ将棋の進歩2(共立出版)
逃げ道とゆうのは玉のまわり8マスについて何個逃げ場があるかってことですか? それか玉の受け方が少なくなる攻めをするってことですか? それと共謀数って何ですか?
ググれ
>620ですが特にこの辺が間違ってると思われる。 >仮に王手できる手数が4個あれば、それぞれを「証明する」必要がある=証明数 具体的には王手できる手が4個あれば詰みを証明するにはそのうち1個で十分 4個すべて詰めばもはや詰将棋じゃなく詰む将棋かと。。。
>>625 >証明するにはそのうち1個で十分
それはその通り。詰みが見つかれば、そこで探索は終了。
ただし、最悪の場合は4つを調べる必要がありますよね?
たとえば、さらに上の木で、証明数が5の手と証明数が4の手があれば
4の方が有望でしょう? そういう考え方(のはず)
ところで証明数と反証数は読む深さによって違ってくる。 実際は何手読みますか?
>>627 実際は敷居値による反復深化により見つかるまで何手でも読みます。
○×ゲームすらつくれない私はc入門書を読みます
アップローダーの内容がスパムに押し流されていたので対策してみました(かなり原始的) って、最近過疎ってるし、もうういらないかな?
631 :
デフォルトの名無しさん :2006/10/23(月) 16:46:16
かつての勢いはどこへやら
こんなとこで宣伝するのはやめてくださいね
hosh
良スレ発見とおもったらすげー過疎だな
お 人いる 現在進行形で将棋プログラム作ってる香具師はいるのだろうか
いないだろ。ボナに勝てるもの作れるわけないし。
あきらめたら、そこで終了だよ
>>640 >>641 まずは先制攻撃。君たちによる奇襲だ。
ボナに感染して、アホな手を指させるプログラムを作ればよい。
643 :
デフォルトの名無しさん :2006/11/17(金) 02:04:51
保守
644 :
637 :2006/11/18(土) 20:45:41
まーやれるとこまでやってみるか
645 :
デフォルトの名無しさん :2006/11/18(土) 23:48:11
やっと完成した自作ソフト。 初手▲1八飛・・・。 もう、泣きそう。
自作したソフト公開してw>645 ジャバスクリプトで将棋対局のソースどっかにないかな?w
>>645 ワロタ。
いや、すまん。がんがれ。応援してるぞ。
相変わらず過疎だな
おまいの脳みそみたいにな
保守
652 :
デフォルトの名無しさん :2006/12/03(日) 05:10:48
ちょっとボナンザ強すぎるよ。コレに勝つソフトとなるとプログラムに自信持てない。 しばらく誰か完成させるの待つよ。
653 :
デフォルトの名無しさん :2006/12/03(日) 05:36:29
頑張ってロジック組むのも楽しいだろうけど、定石知らなかったら結局役に立たないよな。 定石とは字のとおり、第一手に対し勝ちまでの石(駒)を置いていく決まりパターンのこと。 囲碁でも将棋でも初級者は定石を頭にたたき込むのが基本。 定石をすべてデータで持ち、相手の手に合わせ次々定石どおり出していくことが出来て初めて初段。 定石にない手や定石を覆す手を考えるのはその後だよ。
654 :
デフォルトの名無しさん :2006/12/03(日) 05:57:28
せっかく 石(駒) って書いてるんだから、 定石(定跡) って最初ぐらい書こうぜ。 っていうか、将棋の話題だから、順序逆か。
>>645 かわいいプログラムだなwひさびさに萌えた
656 :
デフォルトの名無しさん :2006/12/03(日) 10:57:31
なんで定石が必要かっつと、20手先まで読めないからだろ? 深く高速に読むプログラムなら、読みきれるんじゃないの?? 序盤は20手先に有利な局面になるように指せばいい そうするといわゆる「新手」がソフトから生まれてくるかもしれない
20手じゃまだ中盤の入り口だろ? 囲いは終盤に近づいてからの玉の堅さにも影響するから やっぱり定跡は必要だよ。 だが、「新手」がソフトから生まれる可能性については 俺もかなり楽しみにしている(時間はかかるだろうが)。
>>645 萌えたw
ルールをおぼえた初心者と戦わせるのに、
ちょうど良いかもしれない。
659 :
デフォルトの名無しさん :2006/12/09(土) 09:58:09
日本の、これから
「ネット社会の安全 どう守りますか」
12/09(土) 午後7:30〜8:45 (第1部)、午後9:00〜10:29 (第2部)
http://www3.nhk.or.jp/omoban/main1209.html#20061209021 市民が立花隆・石田衣良・トロンの坂村健・竹花警察庁局長とナマ激論
▽ある日突然狙われるネット社会に潜む悪意
▽どうよ?匿名掲示板
▽夢も友達も生きがいもネットの中にある?
▽子どものネット利用あなたは放任?制限?
▽韓国匿名排除で逮捕者続出
▽監視は必要か
今や国内8000万人が利用するインターネット。
私たちは好むと好まざるとに関わらず巨大化する「ネット社会」に組み込まれ、
ネットなしには成立しない世界に生きている。
時間と空間を飛び越えるネット社会がもたらすメリットは計り知れない。
ネットは瞬時に膨大な情報をもたらし、知的創造の大きな武器となる。
市民同士が連携するチャンスも増えた。ネットを利用したビジネスは、様々な利便性をもたらし、
経済を活性化させていく。
一方で、ネット社会には数多の“顔の見えない悪意”が潜み、様々な犯罪の温床となっている。
無防備な子どもが親や学校の目の届きにくいネット社会で、犯罪に巻き込まれるケースも
急増している。わたしたちはネットを有効に利用し、同時に悪意からどう身を守ればよいのか。
そのためには企業や政府に規制や監視をさせるべきなのか、
それともネットの自由を守るべきなのか・・・・・・。
国内の最新事情、一歩先を行く韓国の選択などを紹介しながら、
市民が専門家とともに徹底討論する。
>一歩先を行く韓国
囲碁も将棋もその時させる手って何パターンかしかないじゃん。 その選択肢すべてから派生するそのまたすべての選択肢を潰していけばいいんでしょ? 何億パターンあるかしらないけど。一手に何年かかるかしらないけどさ。
一緒にがかぶってた
664 :
デフォルトの名無しさん :2006/12/20(水) 06:02:33
また作り直そうっと
ウンコ
>>5 のサーバーを使っていい?
ダウンロードしてローカルで動かしたほうがいい?
わけわからん > ruby -v ruby 1.8.5 (2006-08-25) [i386-mswin32] > ruby shogi-server.1.60.rb test 4081 Fri Dec 22 09:22:52 +0900 2006 message: server started shogi-server.1.60.rb:131:in `search': undefined method `each' for nil:NilClass (NoMethodError) from c:/ruby/lib/ruby/1.8/pstore.rb:319:in `transaction' from c:/ruby/lib/ruby/1.8/pstore.rb:318:in `catch' from c:/ruby/lib/ruby/1.8/pstore.rb:318:in `transaction' from shogi-server.1.60.rb:130:in `search' from shogi-server.1.60.rb:118:in `load' from shogi-server.1.60.rb:97:in `add' from shogi-server.1.60.rb:2048:in `main' shogi-server.1.60.rb:2023:in `accept': Interrupt from shogi-server.1.60.rb:2023:in `main' from shogi-server.1.60.rb:2089 >
668 :
デフォルトの名無しさん :2006/12/22(金) 11:48:19
とりあえずshogi-server.1.38.rbを動かせました。
とりあえずCSAサーバープロトコルに基づいた思考部のないクライアントを書いています。
ボナンザの評価関数を知ると一気に作る気をなくしますなw
メゲるな。ボナンザも最初は弱かった(はず)。
俺はどっちかというとYSSのほうが作る気なくす なんか強くなるには十数年努力しろみたいな感じで
オセロ畑の自分から見ればボナンザの評価関数は 過去の棋譜の再現って点でとっつきやすく感じる。
とりあえずこんな感じですすめています。 CSAサーバー⇔CSAクライアント⇔思考サーバー CSAサーバー⇔CSA将棋+sikou.dll⇔思考サーバー 平日定時後と土日の休みを利用してやるので来年1月末には間に合わないと思う。
1月末に何かあるのか?
コンピュータの大会の締め切りかな?
そうそう、CSAの大会参加締切
せっかくだかられさぴょんでも使って出ようかと思ったら れさぴょん時間管理ないのねorz CSA将棋だとれさぴょん使えないし・・・諦めるか・・・orz
参加締切1月末なのか 俺のはまだ動くだけって感じだが、少しがんばってみようかな
とりあえず、歩の最低限の動きは実装した(つもり)。 まだこんなんですわ。
れさぴょんコンパイルしたら・・・ Assertion failed: Config, file C:\src\ilink\import.cpp, line 311 なんだよそれ・・・orz
王、歩、角、飛、香、とで#ILLEGAL_MOVEが出なくなったけどまだなんか抜けがありそう
>>684 ありがとうございます。
やってみたんですがダメでした。
結局そこでも現象は解決しなかったみたいですし、なんなんだろう・・・orz
そもそもimport.cppなんてどこにあんだよ・・・
>>686 それはIDEの内部エラーでしょう。
IDEのソースにそれがあってassert(0)が呼び出されたていう、、、
688 :
デフォルトの名無しさん :2006/12/29(金) 00:28:29
ところで、だ。 プログラムが最強かどうかの判定はどうするんだおまえら
大会で優勝すればいいんじゃね?
ボナがオープンソースだったらなぁ・・・・
オープンソースでなくても評価関数まわりはけっこう情報でてなかったっけ?
695 :
デフォルトの名無しさん :2006/12/29(金) 12:35:40
面倒臭くて読む気になんねwww 簡単にパクれるようにオープンソースにしろよな ホント使えねーな
自分もボナンザ風の評価関数を作ってみようかなと思ってるんだけど 大量の良質な棋譜ってどこかでゲットできる?
あ、ありがとう。見てみる。
いえいえ、どういたしまして^^
701 :
◆z0MWdctOjE :2006/12/30(土) 08:44:58
yowai_gpsに負けた(´・ω・`)ショボーン
ご愁傷様
703 :
◆z0MWdctOjE :2006/12/30(土) 09:29:04
無駄とは感じていたが次のようなコスト最小でやった。 コスト[0]=子局面のコスト[1]の最小 コスト[1]=子局面のコスト[0]の和 未展開局面 コスト[0]=コスト[1]=1 子局面がない局面 コスト[0]=∞ コスト[1]=0 局面の比較にはコスト[0]を用いる。 書き下してみてなんか変。 局面の比較にはコスト[1]を用いるべきかorz
コンピュータ将棋関係のblogを見た感想を一言。 高速化なんて後回しでいいから。
FPGAで将棋AI専用計算機作ってください
高速化が要らないなら、全探索
709 :
◆z0MWdctOjE :2007/01/02(火) 22:50:33
大会は持ち時間1500秒ですよ。
そのものズバリの FPGAで将棋プログラムを作ってみるブログ なんてのもある
持ち時間短いなー 会場での対局は二次予選からにすれば、 持ち時間も増やせて参加の敷居も下がってウマーなのにね。
決定性アルゴリズムでやろうとするから遅くなるんだよ。
(正式名称:「囲碁のプログラムは何であんなに弱いんだ! 俺がサクっとFPGAでハードウエア化して 2年以内に9路盤で圍棋文化研究會の岡崎正博(39)に勝つシステムを作ってやるぜ、 焼酎を50升賭けるぞ!」と大口を叩いてみるブログ) (別称:太陽光発電でFPGAを動かしてみるブログ) なんか笑った(将棋のはどこだ・・・)
で、おまいら大会登録しますか?
>>701 俺はうさぴょんに負けた(´・ω・`)
yowai_gpsはインストール方法調べるのが面倒で戦ってません
>>716 次回の大会は出ないつもり。
ってかしばらく将棋からは離れてオセロをやってくるよ。
評価関数の自動チューニングの術を身に着けてくる。
>>719 yowai_gpsってインストール方法あるの?
私は
>>5 のCSAサーバーに常時接続しているyowai_gpsと対戦させてる
>>5 につなぐのですか
なるほど
もしうさぴょんに勝てたらやってみることにするよ
係数の自動調整をする改造を始めてしまった。 またしばらくyowai_gpsと対戦させられなくなる(´・ω・`)ショボーン
5年後はポケモンとかは一切廃れて子供達の間で将棋や囲碁のプログラムが流行り、 ネット上は対戦でにぎわっている という夢を見た
将棋はともかく囲碁はなさそう・・・
ヒカルの碁の影響はでかいかもよ
ヒカルの碁世代の5年後は子供じゃないんじゃ…
K-Shogi v2.1には負けたが K-Shogi v1.9には勝てた 少しだけやる気出てきた。
CSA鯖に 「途中経過の局面(とその指し手)」をこちらからの指示で吐かせることってできます? ローカルテストだとなんか心配で・・・
>>729 なにが心配なのかよく判ってないけど、サーバにマニュアルで指示を出せるク
ライアントと普通のクライアントを継いで、そいつらで対局させればいいんじゃ
ない?
対局させるっつーか、一つは自分でやるってことだけど。
>>729 >>5 のサーバーの拡張プロトコルにだけそういう感じの機能がある。
>>730 選手権のとき、トラブル等による途中中断から復帰対局の場合
鯖から途中までの棋譜が送られてくるのかな・・・と
でも
第3条 参加プログラムは、次の各号に掲げる機能を持たなければならない。
一 任意の局面・手番・残り時間からの将棋の対局の開始と継続。
これ読むと、ソフトが途中経過の局面の棋譜ファイル読めりゃそれでいいって気もしてきたなw
探索延長が理解できない。 自分が指した局面と、相手が指した局面を比較できるの?
736 :
デフォルトの名無しさん :2007/01/23(火) 21:00:36
評価値ってあくまでもその局面の優劣の値なんじゃないの?
>>737 それだけなら優劣の値はたとえば+1,0,-1で十分。
ある手順や別の手順で先の局面を見に行って、それぞれで評価値を算出して 元の局面に戻ってきて自分に都合のいい手を判断する。 自分の局面と相手の局面でも評価値で比較できるよ。 ある局面が自分にとって+0.5の局面とすれば相手にとって-0.5となる評価値の算出法を使うとか。 手を進めて局面が変わっても形勢が変わらなければ評価値が変わらない算出法とか。
740 :
デフォルトの名無しさん :2007/01/24(水) 08:01:12
評価値が自分にとってどれだけ良いかを表すのではなくて、 中立の立場でどちらの手番が優勢かを表すようにすればよい。
同じ局面でも次の手がどちらかによって優劣が変わると思うけど、そこまで込みで評価関数を作ったりするもの?
コンピュータ将棋スレで質問したんですが より適しているこちらのスレを見つけましたので。 「パチッ」っていう着手音のファイルはどこかでフリーで 配布されてたりするのでしょうか?
そんな有り触れた音にするから駄目なんだよ 「ペコッ」とかにすれば、不二家も喜ぶだろうよ。
>>742 みんなスタジオに行ってレコーディングしてるよ。
そういう所にこそ力入れなきゃ。
もちろんモノにもこだわらないと意味がない 日向産榧の六寸盤に御蔵島黄楊の駒を打つ音を是非録音して配布して欲しい
ツンデレ将棋はまだですか?
>>745 それと、フローリングの床に1000円のプラ駒を打ち付けた音を
果たして何人が区別できるものやら。
>>742 加藤ひふみんに相談するといいよ
気合い入れて、いい音出してくれるよ
謝礼はうな重ね。
聖書だな
ぷにゅんっていう音がいい
プログラム板なのに、将棋マニアな話ですぎw
加藤1239段ならきっと、そのくらいしないと認めてくれない希ガス。
754 :
742 :2007/01/27(土) 22:10:03
もういいよ MIDIで作るよ ・゚・(つД`)・゚・
つ[サウンドレコーダ]
かわいそうなんでマジレスすると ボナスレに行ってみ 確かマイボナとかいろいろやってる時、定規で叩いてw駒音作ってる人がいたはず そこで「ください」って言えば使わせてくれると思うよ
757 :
744 :2007/01/28(日) 15:00:21
>>754 わからなかったけど何か言いたくて冗談言った
ごめんね
教えてください。 よく、開発者の書いたものを読むと、 「K-shogiと対戦させて10-8」とか「柿木将棋と連続対戦で勝率4割」とか書いてあるんですが、 自作のソフトとどうやって連続対戦させてるんでしょうか? 木偶の坊が自作ソフトに対応してるとは思えないですし・・・
>>758 木偶の坊はCSA将棋に対応していなかったっけ?
・・・てことはCSA将棋に載るようにしないといけないってことか・・・orz
>>758 木偶の坊ならシリアルケーブルでつなぐ。
将棋プログラム自体が通信手段に何も対応してなければ
(木偶の坊も駄目なら)手入力。
どんなやつでも、人間が間に入れば対戦できる
763 :
758 :2007/01/31(水) 10:11:05
いちおう、大会規定に則ってLAN通信はできるようにしてあります。
なので、木偶の坊のLAN対戦で柿木vs柿木などはできます。
>>761-762 を読むと、やっぱり手入力しかないんですね。
自動で連続対戦とかしたかったのにorz
764 :
デフォルトの名無しさん :2007/02/03(土) 08:01:25
過疎
リバーシと対照的だ
しかしあんなの相手にしたいと思うか?
おちょくるに限る
置換表は普通ハッシュテーブルを使うけど、局面をビットボードで表している場合は ビットボードをキーにソートされた配列で実装しても、ハッシュのややこしさも含めて比べると 同様の効果が得られると思う。
772 :
Windows厨&rlo;wwwね死はCAM。すでXUNILチンアやや :2007/02/03(土) 16:21:06
将棋のプログラムに モデリング言語(最適化ソルバー)は使えますか
>>772 多分まだ試した人いないと思うから
自分で試して結果報告ヨロ
774 :
デフォルトの名無しさん :2007/02/03(土) 22:35:36
C/C++やVBなどからも読み出し出きるモデリング言語(のモジュールやバイナリファイル)もあるお
ただひたすら過去の棋譜に基づいて打っていくのが強そう。
すぐに棋譜の指し手から外れるじゃん
人間みたいにゲームの知識(将棋で言うと第一感とかここではこうするべきとか)を蓄えるって事でしょ。
ああ、そのイベントの後は地面に落ちてるオリハルコンを拾ってね
自分vs自分で自動対局しながら評価関数を調整すればいいんじゃ ないのか
それって強化学習の事?
自分vs自分は全然ダメ
自己対戦は危険だとYSSの中の人も書いてる。(『コンピュータ将棋の進歩5』) でも簡単にデータがとれるので参考には使っているみたいだ
両方とも学習させようとするからまずいのでは?
自己対戦は単純に、思考が偏ると思うんだが。 同様に、弱い将棋ソフト相手でも思考が偏りそうだ。
チェスである程度成功してるんだよね 将棋もできるかも
Bonanzaの評価値にできるだけ一致するような評価関数を作れば強いの作れる?
内部でBonanzaに入力して出力を受け取ればいいんじゃね?
うん、それやろうと思ってる うまくいくかな
角切り特攻しないパッチきぼんぬ
792 :
788 :2007/02/07(水) 23:51:15
あ、うまく伝わってない気がする 自分で評価関数作って、パラメータの最適化をbonanzaの評価値を使って行うことです
それ難しくてまだちゃんと読んでないです・・・ でも漏れの理解では1手読み+静止探索での先読みの手が 強い人の手を再現するようにしてるんじゃないですか それであれば探索ルーチンは関係ないように思うのですが
795 :
793 :2007/02/09(金) 01:09:49
>794 兎に角話は読んでから
俺も読んでみようと思ったけど、よく理解できなかった 評価関数を調整するとき、1手読みの手と棋譜の手を一致させるのか 何手か読んで選ばれた手とを一致させるのか
1手読みで一致させようとする。 しかし棋譜と一致する確率が高くなるようにパラメータを調整するだけで 全ての手が棋譜と一致するような評価関数ができるわけではない。
で、話は戻って792はどうなのかということなんです 評価関数の値を回帰分析でBonanzaにできるだけ近づければ、ある程度強いプログラムが楽にできるのかなと
Bonanzaの何手か先読みした値に 自分の評価関数の1手読みを近づけるんだよね? できる。
とりあえず時間見つけて試してみます まだ1行もコード書いてないんで
がんばれ。 経過や成果・発見などがあればなんでも聞かせてくれ。
803 :
793 :2007/02/10(土) 01:44:26
>探索アルゴリズムの性質が評価関数 この評価関数って静的評価関数の意味で使ってる? じゃなくて静的評価関数や探索関数も含めた 指し手の決定に関係する関数全体を指してるのかな。
>探索アルゴリズムの性質が評価関数 あ、この探索アルゴリズムってのは静止探索のこと?
コンピュータ将棋の世界では人によって言葉の使い方が違うよね
807 :
793 :2007/02/10(土) 13:40:52
>>804 ,805
gpw2006.pdfを読めばすぐ分かる事を訊くなや
>>806 評価関数を
>指し手の決定に関係する関数全体
の意味で使っているなんてのは見たことも聞いた事もないが
「最適制御法に基づき,棋譜の指し手とminimax探索が良く一致する特徴ベクトルνを求める」
この一言に全部書かれてるんだが,これまでのものと発想が違うから理解し難いのもしょうがないのかな.キーワードは「運動制御」
ある局面から数十手先まで探索して最適手(棋譜の手)に至る過程を
ロボットアームの手先を目的位置まで移動させる過程と同様に考える
制御過程の離散的な1単位時間に探索の1レベルが対応する
言い換えると(静的)評価関数は探索過程を制御する(導く)ものでしかなく
これまでの局面の良し悪しを評価するものとは役割り/意味合いが異なる
(ま,結果的には似た様なものになるんだけど)
なので,きちんと知りたければ運動制御(最適制御)を勉強汁 長文スマソ
808 :
793 :2007/02/10(土) 13:41:56
行が乱れてるが勘弁
ありがとう いや、長文のほうがキーワードがいっぱいあって 自分が知らない事に気づきやすい 勉強になるよ
810 :
793 :2007/02/10(土) 15:18:51
2chでそんなまともにお礼言われると恥dioaeahf;eah
厨房スメルが漂ってる
それお前のにおい
GPS将棋をコンパイルしてるんだが、デバッグの方はコンパイルできるんだけど リリース用の方をコンパイルすると大量のundefined reference が出てきて失敗するんだが どうすればいい?
>>814 GPS将棋をリリース用の方でコンパイルすると出てくる最初のundefined referenceをコピペすればよい。
undefined reference 程度の単語がわからないやつって
>>815 おながいします
>>816 意味ぐらいわかるって。
/osl/release で make してlibosl_board.a libosl_search.a が既にできてます
$make gpsshogi RELEASE=t
g++ -L../../osl/release -L../lib -Wl,-rpath,../lib gpsshogi.o ../../osl/release/libosl_search.a ../../osl/release/libosl_board.a ../../osl/lib/third_party/tcmalloc-0.8/libtcmalloc.a
-lboost_thread -lboost_program_options -lpthread -lboost_filesystem -lpthread -o gpsshogi
../../osl/release/libosl_search.a(category-standardMoveGenerator.o): In function `osl::move_generator::AllMoves<osl::effect::NumSimpleEffect<osl::state::PawnMaskState>,
osl::move_action::Store>::generateMoves(osl::Player, osl::effect::NumSimpleEffect<osl::state::PawnMaskState> const&, osl::move_action::Store&)':
/home/masato/Desktop/osl/release/../include/osl/move_generator/allMoves.h:58: undefined reference to `void osl::move_generator::AllMoves<osl::effect::NumSimpleEffect<osl::state::PawnMaskState>,
osl::move_action::Store>::generateMoves<(osl::Player)0>(osl::effect::NumSimpleEffect<osl::state::PawnMaskState> const&, osl::move_action::Store&)'
/home/masato/Desktop/osl/release/../include/osl/move_generator/allMoves.h:60: undefined reference to `void osl::move_generator::AllMoves<osl::effect::NumSimpleEffect<osl::state::PawnMaskState>,
osl::move_action::Store>::generateMoves<(osl::Player)-1>(osl::effect::NumSimpleEffect<osl::state::PawnMaskState> const&, osl::move_action::Store&)'
(以下略)
あ、名前が入ってしまったな 気にしないでくれ
プラットフォームやgccのバージョンを希望。amd64、gcc 4.1.2ではコンパイル/リンクできているのだが。
Pentium3、FedoraCore6、gcc 4.1.1です。 そっちではできますか。。。 make gpsshogi と make gpsshogi RELEASE=t の差ってosl/releaseを使うかosl/libを使うかの差だけですよね make gpsshogiの方では通るってことは osl/releaseの方のコンパイルが何かダメなんだろうか 何か設定がいるのかなぁ
821 :
820 :2007/02/12(月) 21:17:42
>>819 osl/release 内でmakeしたときのg++のオプションをコピペしてもらえないでしょうか
スマソ。再現した
>>817 。
osl/releaseでビルドする際、warningが出たので、それと関係するのかも。(-Werrorを外さないと先にすすめない)
823 :
820 :2007/02/13(火) 00:38:39
>>822 確認してくれてサンクスです
やはりダメですか
こちらでもコンパイル時に-Werror外してやってました
gcc初心者なのでもっと調べてみます
>>817 OSLのHEADでfixされた模様。
それから、makefile.localのCPUOPTIONで、-fno-strict-aliasing -DNEED_EXTRA_TEMPLATE_INSTANTIATION を加えるとよいらしい。
826 :
デフォルトの名無しさん :2007/02/14(水) 13:42:44
ハッシュの勉強を1からしたいんですけどなんかいい本ってありませんか? うさぴょんのソースとか『コンピュータ将棋のアルゴリズム』見ただけじゃよくわからなくて・・・
>>829 局面表(transposition_table or hash_table)の役割が理解できれば、
れさぴょん(コンピュータ将棋のアルゴリズム)で十分だと思うけど。
どの辺りが解らないの?
※自分は、れさぴょん本を持ってないので、何頁が・・・といわれるのは勘弁だけど。
なんというか、実際のハッシュの作成の仕方とか れさぴょんの方法だけじゃなくて、いろいろあると思うんですよ 乱数を使わないでどーたらとかw なので、その辺りのことを1から勉強したいなーと思って 「コンピュータ将棋のアルゴリズム」では、本書の範囲を超えるので・・・と書いてあったので 別の本があればなぁ・・・と
アリガトー!
英語が読めない奴は帰れ! ってことか・・・・ 横から掻っ攫おうと思ってたのに・・・・OTZ
おまいが自分で思ってるよりは読める気がするから、少し頑張ってみてはどうか。
839 :
デフォルトの名無しさん :2007/02/19(月) 18:31:56
盤面を1次元配列にして作りなおそうっと
うさぴょん本のJava版が出るらしいね
I/Oの連載をまとめたやつ? ツマンネ
842 :
デフォルトの名無しさん :2007/02/20(火) 22:37:12
中の人を落ち込ませるなよ
並列処理が載るらしいからいいんじゃないの? 今月号の最終回はちょっと期待してる
将棋プログラムとか組める人、尊敬しちゃうぜよ c入門書わかる程度なのにうさぴょん本買って撃沈。(形からはいるタイプ) 今はデータ構造とアルゴリズムの本読んで反省している。
それですよ
作り始めたけど、飛車先の歩をきちんと取ってくれないw ▲2四歩は△同歩じゃなくて△2二銀で有利だ、と読んじゃうみたい まぁ、▲2三歩成△同銀▲2四歩△1四銀▲2三角△3三金▲1四角成△同歩▲2三歩成と ここまで指さないとモロ不利にならないからしょうがないんだろうけど、なんとかならんもんかorz
作り始めたけど、飛車先の歩をきちんと取ってくれないw ~~~~~~~~~~~~~~~~ 無茶を言うなw
作り始めたmy revolution〜明日を乱すことさ
854 :
58 :2007/02/27(火) 17:15:02
おまえら、将棋の駒とかどうしてる?なかなか旨くかけないんだけど、どっかに.gifファイルでも 落ちてないかな〜?
857 :
854 :2007/02/27(火) 18:03:48
浅い読みを行った結果の上位数手に対して深い読みを行うようにしたいんだけど こういうテクニックって既に名前付いてたりする? てか誰か既にやってそうなんだけど閾の決め方とかで参考になるサイトとかある?
859 :
デフォルトの名無しさん :2007/02/28(水) 02:28:37
ありがとう。 浅い探索の評価値で制限するのか。 考えてたのとちょっと違うな。
ちなみに自分が考えてたのは単純に手の個数を制限する方法。 例えば浅読みが1手なら90%、2手なら80%、 3手なら70%という風に閾値を求めておく。 そして手が10個ある局面で、浅読みが1手なら上位9個を、 2手なら上位8個を、3手読みなら上位7個を深読みするという風に。
そう言えばここ用のUp板って死んでる? もっと小さい駒画像Upした記憶があるのだが。
>>862 実は最近オセロやってるからそっちで実験するわ。
評価関数の精度がある程度良くないと役に立たなそうだな。
駒の動きを判別するのに 48*24*8の配列を作ろうと思うんだけど、やっぱ大きすぎるかな? それとも、このくらいは普通? 「駒の動きを判別するだけなのになぜにそんなデカくする?」という話は置いといて・・・
>>865 数字だけ書かれても、さっぱりなんですが...
できれば、[32種類][16方向]程度の情報は欲しい。
激指の方法では閾値はどうやって決めてるの?
869 :
デフォルトの名無しさん :2007/03/01(木) 03:09:42
iterative deepning使えば時間で自然に決まってしまうんじゃね?
スマン下げ忘れた
>>866 失礼しました。
全部intで、整数2桁です。サイズだけの話なので。
デカいサイズの配列って、普通に取るものなのかな・・・とちょっと疑問に思ったんです。
>>871 高々1万件でしょ。別にいいんでない?
intで取っても40KBだし。ローカル変数としてスタックに取ると若干効率が落ちるかも知れないけど、
気になるなら実測してみて有意差があるなら静的に配置すればいい。
整数二桁って保証があるならshortなりcharなりにしてしまうのも手だね。
#お勧めしないが。
873 :
デフォルトの名無しさん :2007/03/01(木) 09:26:43
>>871 フラグ付き最大8方向*駒種分しか取ってない
>>863 私が用意したアップ板のことかな?
大量のスパム書き込みで押し流されて消失しました
一応対策しましたのでスパムなくなったようですが
中身もないままですが利用可能ですよ
スパム爆弾落とされても消えないやつに入れ替えたほうがいいかな
時間配分を効率よく決める方法ってある?
エスパー刷れ行ってくれ
25分のうち1手にどれだけかけるかって意味か?
Iterative Deepeningでの話? うさぴょんでは一手当たりの最低思考時間と最大思考時間を設定できるらしいが。 その辺は載せたことが無いからよくわからん。
そうそう 一手掛ける時間のいい決め方が既に確立されてたりする?
よく知らんが確立されてないんじゃないか? 他の人のソースとか読んでみては?
そうなんだ とりあえず他人のソース読んで勉強するよ ありがとう。
PVSとNegaScoutって同じもの?違うもの? 同じものだと書いてるサイトや違いがあると言ってるサイトがあるんだけど。 コードを見てもNegaScoutとして紹介してる物が別のサイトではPVSとなってたり。
単なる宣伝 将棋世界に渡辺竜王と保木さんの対談がのってます
推測だが保木さんの発言からして戦法はランダムっぽいので残念。 振り穴固定にすれば序盤は無難に進行する可能性が高いし 凶暴な棋風もいかせるはず。薄い玉形の戦型選んだら 大局観要求されるからアマ強豪と指した時みたいに無残なことになる 序盤を乗り切れないと最新pc用意する意味がなくなる
確かにbonanzaの自滅なんか見てもしょうがないな
去年のデュアルコアの3倍速いということは8コアかな。
888 :
デフォルトの名無しさん :2007/03/11(日) 20:27:50
最近誰も最強の将棋プログラムしてなさそうな件
889 :
デフォルトの名無しさん :2007/03/11(日) 20:33:43
まだ全然最強じゃないけどそれを目指してやってるよ。
最強を目指すどころか思考部なしの人vs人のプログラムもまだできない。
ROMってる人は結構多いのね
893 :
デフォルトの名無しさん :2007/03/12(月) 07:59:02
リバーシスレの
>>1 の無敗アルゴリズムがあればなぁ
そんなものはない
あれは似非科学者だから。
似非数学者だろ。 それとも○○○信者? 真理とか言ってる時点で終わってる。
唯我論者
脳内お花畑の妄想が現実と区別できない典型例。 実力以上の事を机上論以前の論理だけで出来ると思い込んだ挙句にそれを言いふらし、 結局大破綻して自分は何も果たせなかったと実証している辺りが何とも。 あのbuggyでスパゲッティなコードで一体何が動いたんだ?
本スレに帰れ
wdoorって何度も試してるとランキングされるんだな 知らずに何度もデバッグ用につないで負けを増やしちゃったよ
おまいら大和証券杯みてるか?
開始日時:2007/03/21 13:30:00 持ち時間:各2時間(チェスクロック使用) 棋戦:大和証券杯特別対局 場所:品川クラブeX 手合割:平手 先手:ボナンザ 後手:渡辺明竜王 開始時間:2007/03/21 13:30:00 ▲7六歩 △8四歩 ▲6六歩 △3四歩 ▲6八飛 △6二銀 ▲4八玉 △5四歩 ▲3八玉 △4二玉 ▲2八玉 △3二玉 ▲7八銀 △5二金右 ▲1八香 △5三銀 ▲1九玉 △3三角 ▲6七銀 △2二玉 ▲2八銀 △3二金 ▲5六銀 △4四銀 ▲4六歩 △8五歩 ▲7七角 △4二金右 ▲3九金 △1二香 ▲4五歩 △5三銀 ▲4七銀 △1一玉 ▲3六銀 △2四歩 ▲2六歩 △2二銀 ▲5八金 △2三銀 ▲4八金寄 △1四歩 ▲2七銀引 △2二金 ▲3八金寄 △3二金右 ▲6五歩 △7七角成 ▲同 桂 △4二金 ▲6六角 △3二金右 ▲7五角 △4二角 ▲5六歩 △7四歩 ▲5七角 △3三角 ▲4六角 △8三飛 ▲6七飛 △8六歩 ▲同 歩 △同 飛 ▲9一角成 △8九飛成 ▲4四歩 △同 銀 ▲4七飛 △9九龍 ▲6四歩 △3五銀 ▲3六歩 △4六香 ▲3七飛 △2六銀 ▲同 銀 △4九香成 ▲6三歩成 △3九成香 ▲同 金 △2五歩 ▲同 銀 △2七歩 ▲同 飛 △2六歩 ▲同 飛 △1五金 ▲2四歩 △2六金 ▲2三歩成 △同金右 ▲2四歩 △2七歩 ▲2三歩成 △3九龍 ▲2二と △同 角 ▲3九銀 △2八金 ▲同 銀 △同歩成 ▲同 馬 △2七歩 ▲同 馬 △同 金 ▲3九銀 △3八銀 ▲2八金 △同 金 ▲同 銀 △2七歩 まで112手で後手の勝ち
あれだけガチガチに囲って112手じゃ物足りないな 200手以上の激戦すべき
905 :
デフォルトの名無しさん :2007/03/22(木) 01:47:13
碁棋
908 :
デフォルトの名無しさん :2007/03/23(金) 15:50:19
Perlで書いている人いる? 自分、Perlくらいしか書けないから threadを駆使してがんばろうと思うんだけど。
909 :
デフォルトの名無しさん :2007/03/23(金) 17:55:04
チェスと将棋の違いはアレフの階層が一つ違うだけだから簡単だな
>>909 階層同じじゃないんか?
違う理由を書いてほしい。
どうせアレフって言ってみたかっただけだろ
つか将棋は有限だよな チェスは詳しくないけど可算なん?
あーそうだよチェスも有限じゃね 50手ルールだっけ、なんかそんなのがあるから
将棋は有限なのかな? 証明されてるの? 持ち駒をうてば、永遠に続けられそうに思うが
局面の種類が有限なのと千日手ルールから有限です
盤上の駒の配置、持ち駒、手番が同じ局面 たとえ何万手離れていようが、いつかは同じ組み合わせが出る筈で、必ず千日手になるという事か? しかし、それを記録してチェックする事が物理的に不可能なら?
>>916 そういうことだな
今の規定では、同じ局面が4回出たら千日手
ここは、実装できるかどうかとかじゃなくて
ルール的にどうかという話をしているところだろう
918 :
デフォルトの名無しさん :2007/03/24(土) 00:17:41
bonanzaのプログラムをわかりやすく説明してくれ
見敵必殺
921 :
デフォルトの名無しさん :2007/03/24(土) 07:37:28
将棋界最高位を保持する渡辺明竜王(22)とコンピューター将棋ソフト「ボナンザ」の公開対局が21日、東京都内のホテルで行われた。
タイトル保持者が公の場でソフトとハンデなしで対局するのは初。1手争いの際どい勝負になったが、渡辺竜王が112手で辛勝し、プロ
の面目を保った。
本局は、来月開幕する「大和証券杯ネット将棋・最強戦」のイベントとして実現した。ボナンザは、東北大大学院で化学を専攻する保木邦
仁さん(31)が趣味で開発したソフトで、昨年5月に行われた第16回世界コンピュータ将棋選手権に初出場で優勝している。
今回使ったコンピューターでは1秒間に400万局面を先読みすることができる。
ttp://headlines.yahoo.co.jp/hl?a=20070321-00000011-yom-soci
922 :
デフォルトの名無しさん :2007/03/26(月) 01:06:58
>>920 ありがとん。
でも工房の漏れには難しいぞ(;´Д`)
まとめると
ボナには2種類の技が搭載されてて
1つ目は
探索(全幅探索+静止探索)
2つ目は
局面評価の学習
だけど、探索は普通で、局面評価の学習がすごいわけか。
でも、探索とか普通にわかんねーよwwww
まあ、学習もわかんねーけどwwww
強い人の棋譜と同じ手をボナが指すような
局面評価を作ろうとしていて、
そのためには
J=
Σl(p,v)
+
λ[M(v)-M]
+
wM(v)
を0にすれば学習完了なのかな。うにゅ。
それぞれの意味がわからん。
923 :
デフォルトの名無しさん :2007/03/26(月) 01:16:19
Σl(p,v) のl()はー minimax探索の評価値の差? まずminimax探索がよくわからないwww ネットで調べたけど、minimax探索の評価値ってのは minimax探索をしていって、だいたいこの手の評価はいくつですって 評価値のことか。 ってことは Σ[S(p,v)-S(p,v)] の前のS(p,v)は、その他の手の予測評価値で、 後ろのS(p,v)が強いであろう手の予測評価値だから Σ[S(p,v)-S(p,v)]はなるべく小さい方がいいのか。 ふむふむ。
924 :
デフォルトの名無しさん :2007/03/26(月) 01:21:26
ぐえーーー ΣT[S(p,v)-S(p,v)] Tがついてたーーー Tってなに? グラフを見ると、0から1の間に抑える関数か。 ってことは、やっぱり 強い人の棋譜の評価値が高くなるようにしたいから、 ΣT[S(p,v)-S(p,v)] が小さい方がいいのか。 分解能とかわかんね。 で、どうやってT決めるの? 拘束条件?
925 :
デフォルトの名無しさん :2007/03/26(月) 01:30:15
拘束条件は2つ目の項っぽいねー J= Σl(p,v) + λ[M(v)-M] + wM(v) 駒割りの意味がわかりません(ノ´∀`*) 今日はもう寝る(・∀・)
PDF読まずに ΣT[S(p,v)-S(p,v)] = 0 じゃないの? と言ってみる
Bonanzaの保木さんの招待講演は,局面評価用の静的評価関数の設計を,
最適制御理論の枠組みで行なったという話.
学習に用いる棋譜データは6万局ぶんで,特徴空間は1万次元以上,
計算時間はPCで3ヶ月とのこと.
minimax探索の結果の勾配(評価関数のパラメタ空間に対する勾配)は,
その探索における最善応手列(特徴空間の十分狭い範囲で一定と仮定)の
末端局面に対する静的評価値の勾配と等しいことを利用して,
「棋譜データを再現するための静的評価関数の学習」を
「minimax探索の結果と棋譜データとの一致度(+安定化項)の最小化問題」に置き換える.
特徴ベクトル更新の幅の調整は手動で,
じょじょに小さくする.…という感じだったように思うが,
理解できているか自信がない.
次元の大きさが驚きだった.
なお,収束していない特徴への対応や次元圧縮のために
補間を用いることを提案されていた.
Bonanzaのサイトにて発表スライドが公開されている.
http://ebiomiya.exblog.jp/6025019/
ボナンザ、激指、東大将棋にそれぞれ他ソフトの上位候補手も同時に読ませるように したら最強のソフトが出来るかも
囚人のジレンマで相手の動作がわかっていれば最強なのみたいでなんかいやですね いやそんなことないか・・?
932 :
デフォルトの名無しさん :2007/03/26(月) 17:17:09
なんか違うよな・・結局自分で考えてないような気がするんだよな・・
>>928 そういう手法(minimax探索とか最小化問題とか)を解説している本しりませんか?
934 :
・∀・)っ-○◎● :2007/03/28(水) 18:26:06
>>930 CPU時間が減るから読みも浅くなって性能劣化と
結局トントンかもね。