おまいら最強の将棋プログラムしてみろよ part6
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2007/04/06(金) 15:33:11前スレ
おまいら最強の将棋プログラムしてみろよ part5
http://pc11.2ch.net/test/read.cgi/tech/1109307327/
0002デフォルトの名無しさん
2007/04/06(金) 15:33:54おまいら最強の将棋プログラムしてみろよ part4
http://pc5.2ch.net/test/read.cgi/tech/1086678961/
おまいら最強の将棋プログラムしてみろよ part3
http://pc5.2ch.net/test/read.cgi/tech/1064984089/l50
おまいら最強の将棋プログラムしてみろよ part2
http://pc2.2ch.net/test/read.cgi/tech/1043246252/
おまえら最強の将棋プログラムしてみろよ!!
http://pc2.2ch.net/tech/kako/1004/10043/1004395614.html
0003デフォルトの名無しさん
2007/04/06(金) 15:34:36▲コンピュータ将棋スレッド35▽
コンピューター将棋番外編5・アルゴリズム
http://game12.2ch.net/test/read.cgi/bgame/1175435755/
▲コンピュータ将棋スレッド35▽
http://game12.2ch.net/test/read.cgi/bgame/1170114501/
0004デフォルトの名無しさん
2007/04/06(金) 15:35:08http://www.computer-shogi.org/protocol/
アップローダ (Part3 929氏提供)
http://gm.a-ark.net/~shogi/clip/clip.cgi
CSAサーバ (Part3 773氏作、Part3 783氏提供)
アドレス wdoor.c.u-tokyo.ac.jp 4081
棋譜など http://wdoor.c.u-tokyo.ac.jp/shogi/LATEST/
0005デフォルトの名無しさん
2007/04/06(金) 15:35:39http://www.cs.vu.nl/~aske/mtdf.html
ゲーム木の探索問題
http://tt.sakura.ne.jp/~suzu/search_problem/index.html
反復深化
http://tt.sakura.ne.jp/~suzu/search_problem/i_deepening.html
最良優先探索
http://kyu.pobox.ne.jp/softcomputing/ai/ai3.html
遷移確率、激指
http://www.logos.t.u-tokyo.ac.jp/~gekisashi/algorithm/abstract.html
GNU shogi
http://www.cs.caltech.edu/~mvanier/hacking/gnushogi/gnushogi.html
福将棋
http://touch-mi.hp.infoseek.co.jp/csa2001/prog.htm
0006お前ら奇書、死んだほうがええ。
2007/04/06(金) 16:27:37あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あー面倒くさい。あー面倒くさい。
あ
0007デフォルトの名無しさん
2007/04/06(金) 23:39:31ボナの最適化アルゴリズムが実は「強化学習」なんじゃないかなー?
と思い始める前に
森北出版の『強化学習』R. Sutton・A. Barto著
(原著:Reinforcement Learning: An Introduction)
をネット書店に注文していて、ちょうど今日届いたもんだから
ちょっと舞い上がっちゃっててね。 そうであってくれると嬉しいんだ。
(でも、もしそうなら既に実現されていて、ちょっとくやしいw)
0008デフォルトの名無しさん
2007/04/07(土) 01:07:23バックギャモンのそれは自分との対戦から学習していくという方式
ボナンザのは探索こそしているけれど、環境との相互作用とはいいにくい
だから、強化学習とは違うと思う。
どちらかというと統計的学習じゃないのかな
0009デフォルトの名無しさん
2007/04/08(日) 02:55:56人工知能という単語が目に入った瞬間コーヒーふいた
0010デフォルトの名無しさん
2007/04/08(日) 06:14:230011デフォルトの名無しさん
2007/04/08(日) 12:18:15段階で必ず、もはや人工知能の課題とはみなされなくなって来た。
音声認識も自動翻訳も人間との(簡単な)会話もチェスも将棋も。
どれもまだ全然完全じゃないんだけどね。
(その昔、チェスを機械に指させる事はリッパな人工知能の課題だった)
つまり「人工知能」って言うのは見果てぬ夢に対して付けられる
看板であって具体的な課題、技術、手法の事じゃないんだよ。
0012デフォルトの名無しさん
2007/04/08(日) 12:31:280013デフォルトの名無しさん
2007/04/08(日) 12:46:42別にコンピュータチェスとか将棋とかが人工知能でも違和感ないのだけど
人工知能系の学会ではチェスや囲碁は研究されてないのかな
0014デフォルトの名無しさん
2007/04/08(日) 16:09:08正解
0015デフォルトの名無しさん
2007/04/10(火) 09:30:12ゲームはまだ人工知能に含まれてる
プランニングは十分人工知能だし(ゲームもプランニングの一種)
0016デフォルトの名無しさん
2007/04/10(火) 09:47:19計画を立てること?
0017デフォルトの名無しさん
2007/04/10(火) 15:51:020018デフォルトの名無しさん
2007/04/10(火) 16:44:140019デフォルトの名無しさん
2007/04/10(火) 19:23:22目標状態を得るための行動の組み合わせと順序を探索他で決定するやつ。
0020デフォルトの名無しさん
2007/04/10(火) 23:36:07実用的にはLSIの配線とかにも利用されてるようだが。
研究者から見れば十分にAIの研究かも知らんが、素人目には
これがAI研究ですって言われてもなあ……ジミだ。
0021デフォルトの名無しさん
2007/04/11(水) 11:31:14機械的に手順を踏めば解決しちゃうから。
>>20
それは線形計画法で実用上解決された。
AIとみる人はいないでしょう。
0022デフォルトの名無しさん
2007/04/11(水) 14:56:19道具扱いすれば人工知能じゃなくなる、と考えちゃ駄目?
0023デフォルトの名無しさん
2007/04/11(水) 16:24:42人工知能という物ができたならそれは人間を超えてないとダメ
0024デフォルトの名無しさん
2007/04/12(木) 01:30:55線形なものしか扱えませんが。
人工知能の定義として
人間の知能を構成するために必用な技術の総体
というのでどうでしょう?
問題が与えられた時に、
「人間はどうやって問題を解いているのだろう?」
と、人間と対比して考えるのが、
人工知能分野の特徴だと思いますが。
>人工知能系の学会ではチェスや囲碁は研究されてないのかな
難しいので直接扱う人はいません。
小手先の改良をしただけでは研究にはなりませんので。
0025デフォルトの名無しさん
2007/04/12(木) 10:06:30ゲ作厨が流入しているだけにしか見えんのだが。
0026デフォルトの名無しさん
2007/04/12(木) 21:46:16漏れはROMに近いが一応作ってるよ
先週のオープン戦には参加してきた
0027デフォルトの名無しさん
2007/04/13(金) 11:22:24>人工知能分野の特徴だと思いますが。
素朴な考えだけど実際は違う
人工知能は「知的」な作業を機械化する技術を開発する分野
やり方が人間と似てる必要も無いし人間と対比させる必要もない
ニューロモルフィズムと言うのがあなたの考え方に近いけど少数派
人間がどうやってるかを考えるのは認知科学(とか神経科学)
0028デフォルトの名無しさん
2007/04/13(金) 11:26:32ぉぃぉぃ
もっと複雑なアプリが山ほどある
例えば介護/警備/レスキューロボットの行動計画とか
大規模な組み合わせ最適化問題は今でも十分AIの研究テーマ
連が木スマソ
0029デフォルトの名無しさん
2007/04/13(金) 12:34:040030デフォルトの名無しさん
2007/04/13(金) 15:41:20知的の定義は?
0031デフォルトの名無しさん
2007/04/13(金) 17:14:160032デフォルトの名無しさん
2007/04/13(金) 17:30:440033デフォルトの名無しさん
2007/04/13(金) 18:22:480034デフォルトの名無しさん
2007/04/14(土) 01:10:31循環論法乙。
0035デフォルトの名無しさん
2007/04/14(土) 03:20:50物理の三体問題のこと?
人工知能とは全然違うと思うけど、いまだに、というか永久に厳密解を
得ることは不可能ですよ。
0036デフォルトの名無しさん
2007/04/15(日) 15:04:09お好きなようにどうぞ
だから人工知能の定義も人によって異なる
0037デフォルトの名無しさん
2007/04/20(金) 13:54:43じゃあ、これは妄言だね
0038デフォルトの名無しさん
2007/04/22(日) 06:59:050039デフォルトの名無しさん
2007/04/22(日) 09:37:01今のところアルファベータが主流な感じだが
0040デフォルトの名無しさん
2007/04/22(日) 09:39:200041デフォルトの名無しさん
2007/04/22(日) 09:53:47モンテカルロ法を用いた将棋24でレーティング2000以上のコンピュータ将棋ソフトを
是非教えていただきたい。
0042デフォルトの名無しさん
2007/04/22(日) 09:55:070043デフォルトの名無しさん
2007/04/24(火) 08:23:34これじゃ、一般人が勝てる訳がない・・・
http://news22.2ch.net/test/read.cgi/newsplus/1177353357
0044デフォルトの名無しさん
2007/04/24(火) 08:29:470045デフォルトの名無しさん
2007/04/24(火) 20:21:570046デフォルトの名無しさん
2007/04/30(月) 15:37:14とっかかってくださいよ。
0047デフォルトの名無しさん
2007/04/30(月) 15:40:270048デフォルトの名無しさん
2007/04/30(月) 23:48:000049デフォルトの名無しさん
2007/05/02(水) 19:50:54とりあえず明日逝って来る
0050デフォルトの名無しさん
2007/05/03(木) 15:43:44http://live2.computer-shogi.org/wcsc17/live_s.html
0051デフォルトの名無しさん
2007/05/03(木) 21:17:55強化学習と機械学習の差を強調して書くなら、こんな感じ。
最適(と思われる)行動が教示されるのが機械学習で、Bonanzaはこれ。
将棋で言うと最善手が教示される(実際にはプロが指した手=最善手と見なしているが)。
過去の(≠直前の)行動に対して報酬が与えられるのが強化学習で、実現したソフトは(選手権参加ソフトが公開している情報を見る限りでは)まだ無い。
将棋で言うと勝ったから100点の報酬をあげる、とかそんな感じ。
まぁ、実際には他にも色々差があるわけですが。詳しい事は7氏の買った本に載ってます。
ちなみに私は構想中。来年の選手権はそれで出ます。
0052デフォルトの名無しさん
2007/05/03(木) 23:45:39http://wiki.livedoor.jp/vipshogi/d/FrontPage?wiki_id=48341
将棋の駒を女の子にして将棋が打てるプログラム、是非試してみてください。
http://shogi.vip2ch.com/dl.php?f=koma0360.zip
0053デフォルトの名無しさん
2007/05/04(金) 13:57:440054デフォルトの名無しさん
2007/05/04(金) 22:36:48コンピュータにまともな判定ができるとは思えないんだけど。
0055デフォルトの名無しさん
2007/05/04(金) 23:39:500056デフォルトの名無しさん
2007/05/04(金) 23:45:19過去の最善手を参考にしながら局面のよしあしに点数をつけるんじゃないかな。
で、反意語は教師なし学習で、これはグループ化、クラス分けをしていくことによって条件判断していくものだったと思う
00577
2007/05/05(土) 00:23:33説明してくれてアンガト。
まだ、あの本読み始めてないけど(英語なんでとっかかるのに気合が要る)w。
でもナーンか、挑戦状を叩きつけられたような気がするのは気のせいでしょうか?
相手は私ではなく多分、他の将棋プログラムを開発している方々なんでしょうが。
00587
2007/05/05(土) 00:25:26最近買った別の本と混同しちまったw。
0059デフォルトの名無しさん
2007/05/09(水) 11:19:00http://game12.2ch.net/test/read.cgi/bgame/1165706999/
0060デフォルトの名無しさん
2007/05/12(土) 06:36:370061デフォルトの名無しさん
2007/05/12(土) 14:21:59さすがのジャイアンも・・・
旅人恐るべし。。
0062デフォルトの名無しさん
2007/05/16(水) 11:28:13http://wiredvision.jp/news/200705/2007051121.html
0063デフォルトの名無しさん
2007/05/16(水) 23:01:190064デフォルトの名無しさん
2007/05/19(土) 11:31:46翻訳遅すぎ>Wired
CrazyStoneの最新版は19路でもMoGoより強いかなってとこまで来てる
丁度その秘密を書いた論文が公開されたところ
内容は主にパターン等の自動学習
ttp://remi.coulom.free.fr/Amsterdam2007/
0065デフォルトの名無しさん
2007/05/20(日) 16:07:130066デフォルトの名無しさん
2007/05/21(月) 16:14:030067デフォルトの名無しさん
2007/05/21(月) 18:45:06暇だから将棋の続きやるか。
0068デフォルトの名無しさん
2007/05/21(月) 23:24:53早稲田ですか?
0069デフォルトの名無しさん
2007/05/22(火) 09:24:170070デフォルトの名無しさん
2007/05/22(火) 17:03:14まあ、どうでも良いけどさ。
007151
2007/05/22(火) 20:37:31勉強しなおしてきます。
0072リバーシ1
2007/06/07(木) 18:41:55不詰みを、詰みと間違える事はあっても逆はないはずだよね?
詰みが、判定できたら実際に指し進めて、ループしている部分があったら
その先が詰むかどうか調べればいいんじゃないの?
0073デフォルトの名無しさん
2007/06/08(金) 00:33:24できればC#で作りたいんだけど実行速度遅いんかなあ。
0074デフォルトの名無しさん
2007/06/08(金) 00:43:01元々C#使いだったんだけど速度に不満が出てきてCに移植してみたら3倍違った。
C#は何かあれば例外投げてくれるからバグに気づきやすいんだけどね。特に配列関係とか。
今でも一部のコードではC#でバグが無いように作ってからCに移植ってのは時々やってる。
0075デフォルトの名無しさん
2007/06/08(金) 07:47:200076デフォルトの名無しさん
2007/06/08(金) 23:44:21ふーん、そういうやり方でうまく行くんなら俺もまずJavaで書いておいて
C++に"移植"すると言うやり方でやってみようかな。
うさぴょんの育ての親さんのJavaで作るコンピュータ将棋の本も出てる
事だし。
0077デフォルトの名無しさん
2007/06/09(土) 00:21:50http://homepage2.nifty.com/Fujimaki/download/Comparison/
この結果をそのまんま鵜呑みにするのも怖いけど、実際どうなんだろう。
あと、YSSのページにこんなこと書いてた。
>ban[256] その位置にある駒の駒番号
>C言語では、配列の添字に2のべき乗を使うと、内部計算がビットシフトで表現され高速化されるので、配列はすべて2のべき乗にするとよい。
http://www32.ocn.ne.jp/~yss/book.html
こんなテクニックは全然知らんかったわ。まだまだおれの知らない効率化の技もいっぱいあるんだろうな。
こんなふうに最善を尽くすと、やっぱりC言語との差はかなりあるんだろうか。
教えてエロい人
0078デフォルトの名無しさん
2007/06/09(土) 00:33:30自分で工夫してくれる(べき)ものなんじゃないかと
むしろ、そういう工夫を人がしなきゃいけないというのは
Cの大変な点といっていいのでは
0079デフォルトの名無しさん
2007/06/09(土) 01:35:18真っ白な鷽ですが。
x86系CPUのビットシフトが遅いのは有名な話だし、インデックス計算みたいに頻繁に出てくるコードは
コンパイラとしては腕の見せ所ですから素人が小手先で弄ったCコードよりもよっぽど効果のあるコードを出します。
まぁ、高速化の基本は実測にあるといっても過言ではありません。
0080デフォルトの名無しさん
2007/06/09(土) 01:41:11実行時最適化ができるVM上での動作の方が速くなることも多いよ。
だからLLVM
ttp://llvm.org/
なんかが開発されてる。将棋プログラムのような分岐の多いプログラムなら
Cで書くよりも最終的には速くなるかもしれない。
ただJavaやC#で計算が遅くなるのは配列を使うとき。要素へのアクセス全てが
範囲内かどうかチェックするから行列計算とかが入ると絶対的に遅くなる。
>C言語では、配列の添字に2のべき乗を使うと、内部計算がビットシフトで表現され高速化される
これは多次元配列だけだな。でも本当に効率化をしたいなら行単位でポインタを
指定するからあんまり意味のないテクニックだと思う。
0081デフォルトの名無しさん
2007/06/09(土) 01:43:02デフォルトの名無しさんのいうこととYSSの作者の言うことがちがった場合、普通はYSS作者を信じるだろうから2のべき乗で行くのが懸命だね。
もしそんなことはないっていうのなら嘘ってソースを見せて欲しい。
あと、実測は高速化の手段じゃなくて確認じゃない?
0083デフォルトの名無しさん
2007/06/09(土) 02:00:11ってことはJAVAやC#で書いて、Cで作ったDLLを呼び出すのでFA?
0084デフォルトの名無しさん
2007/06/09(土) 02:10:19>>79は明らかに嘘か無知が入ってるな。
286の時代ならともかく、今手に入るx86 CPUのビットシフトは基本的に1クロックのはず。
例えばAthlonのデータシート
ttp://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/22007.pdf
とかね。
でも配列のサイズを2のべき乗にする意味はあんまりないよ。
キャッシュのヒット率を上げる方が小手先のテクニックより重要だから、うまく
プリフェッチを入れてくれる賢いコンパイラの方が効率の良いコードを履いてくれる。
0085デフォルトの名無しさん
2007/06/09(土) 02:12:36配列のように使う改造をしたことはあるけどCには及ばなかった。
>>83
自分はそうしてる。
GUIはC#で評価関数のDLLはCで作ってる。
008680=84
2007/06/09(土) 02:15:29>>79じゃないけど、簡単に分かるよ
#include <stdio.h>
#define N 63
int main( int argc, char** argv ) {
int A[N][N][64];
int B[N][N][64];
int i, j, k;
int loop;
for ( loop = 0; loop < 1000; loop ++ ) {
for ( i = 0; i < N; i++ ) {
for ( j = 0; j < N; j++ ) {
for ( k = 0; k < 64; k++ ) A[ i ][ j ][ k ] = 1;B[ i ][ j ][ k ] = 2;
}
}
for ( i = 0; i < N; i++ ) {
for ( j = 0; j < N; j++ ) {
for ( k = 0; k < 64; k++ ) B[ i ][ j ][ k ] += A[ j ][ i ][ k ];
}
}
for ( i = 0; i < N; i++ ) {
for ( j = 0; j < N; j++ ) {
for ( k = 0; k < 64; k++ ) B[ j ][ i ][ k ] -= A[ i ][ j ][ k ];
}
}
}
return 0;
}
0087デフォルトの名無しさん
2007/06/09(土) 02:17:00YSSの作者が書いた時点と今では事情も違うだろうからねぇ。
>79を信用できないなら自分で実測してみるといいよ。
コンパイルオプションはgccならgcc -O3 -funroll-loops -msse、iccならicc -fastで。
>79は自分自身も「白い嘘」である「ビットシフトが遅い」を引き合いに出しているけれど。
で、「実測は高速化の手段」とは書いていないね。「高速化の基本は実測にある」と書いているけど。
私もそれには賛成。
今までの経験で高速化されるだろうと思ったコードが実際にはそうでなかったなんてことはざら。
「○○は高速化される」なんて書いてあってもそれを鵜呑みにしちゃダメ。
008880=84=86
2007/06/09(土) 02:17:28昔気質の人の高速化手法は最近はコンパイラやCPUがやってくれちゃうからコードに書く
意味はあまりないよ。
0089デフォルトの名無しさん
2007/06/09(土) 02:23:50>GUIはC#で評価関数のDLLはCで作ってる。
それ超危険。
マネージドコードとアンマネージドコードの切り替えはすごいオーバーヘッドがある。
0090デフォルトの名無しさん
2007/06/09(土) 02:40:20じゃあ切り替え回数をなるべく少なくするように設計するべきか?
こりゃ設計するだけで一苦労だな。
やはり生産性は落ちるが何も考えずVCあたりで作るのが無難ってことか
0091デフォルトの名無しさん
2007/06/09(土) 03:31:21そりゃ探索はC#、葉の評価はCみたいにアホな設計の場合でそ。
0092デフォルトの名無しさん
2007/06/10(日) 11:54:54山下さんの勘違いがあって、全て2のべき乗にする意味はないでしょう。
1次元配列A[x]は*(A+x)で掛け算は出てきませんし。
2次元配列でも一番左側の添字は2のべき乗にする必要はありません。
0093デフォルトの名無しさん
2007/06/10(日) 12:05:05これは失礼ながら全く見当違い。
2のべき乗にするかどうかという議論はあえて余分な領域を取るかどうかという話で、
計算回数が増えるわけではありません。
0094デフォルトの名無しさん
2007/06/10(日) 14:33:56分かってますよ。
1.配列の先頭のアドレスが2^nになるとアドレスの計算が速くなるか
2.ポインタのアドレスがラインにヒットさせることを常に心がけるべきか
ってことが問題で、もう少し複雑にNを64にしても走査する範囲を63にすればいいだけです。
だから「計算回数分だけ」Nが63の方が速いと言っているので、見当違いはそちらでしょう。
009594
2007/06/10(日) 14:42:37もし配列の要素数を2^nにするのがよいのだとしたらNが64の方が計算回数が多くても
それを覆すほどの利点があって速くなるはず、あるいは一つの計算あたりのマシンタイムは
確実に速くなるはず、という前提で言っているので、計算回数あたりの時間が同じであった
という実験の結果から、配列の要素数をどうするかは目に見える違いにはならないという
結論を導いたので、私の意図を>>93には理解してもらえてないのだろうな、ということです。
009692,93
2007/06/10(日) 15:42:44「計算回数あたりの時間が同じであった」というのは元々は書いてありませんでしたが。
あと現在のまともなコンパイラーなら最適化によりあなたのプログラムでは配列へのアクセスに掛け算は発生しないと思います。
つまりA[i][j][k]へのアドレスの計算をいちいち
A+i*N*N+j*64+k
などとしなくてもfor (k=..)のループなら直前のアドレスをインクリメントするだけ、
for (j=..)でも64を足すだけでいいので。
将棋ではもっとランダムなアクセスになるのでこの実験では結局何も分かりません。
009792,93
2007/06/10(日) 15:49:06>>A+i*N*N+j*64+k
はA+i*N*64+j*64+kですね。
86の例では。
0098デフォルトの名無しさん
2007/06/10(日) 20:53:45じゃあたとえばA[i][j][k]みたいな多次元配列なら、j,kは2のべき乗のほうがはやかったりするのですか?
0099デフォルトの名無しさん
2007/06/10(日) 21:05:28>87
010092,93
2007/06/10(日) 23:42:53速いかどうかは環境によりますから実験してみるしかないでしょう。
私が書いたのはA[i][j][k]の場合ならiを2のべき乗にしてもシフトやかけ算と関係ない、というだけです。
まあiについてはわざわざ2のべき乗にしてもサイズが大きくなるだけ損だとは思います。
0101デフォルトの名無しさん
2007/06/26(火) 21:09:070102デフォルトの名無しさん
2007/06/27(水) 00:39:54問題は評価関数だよ
評価関数が悪ければいくら探索が速くても休むに似たりだ
じゃあ、良い評価関数とは何か?
それはプロの手を良いと感じ、ヘボの手を悪いと感じる評価関数
少なくとも、現状で手に入る簡単な指標としてはそうだ
つまりプロの棋譜を教師とする自己学習を本旨としたボナンザで
将棋プログラムは最終形を迎えたわけだ
もう将棋プログラムに費やして得るものは何もないよ
ボナンザで将棋プログラムは終わった
0103デフォルトの名無しさん
2007/06/27(水) 00:41:430104デフォルトの名無しさん
2007/06/27(水) 01:55:09全然終わってないでしょう。
実際ボナンザはすぐ切れ筋に陥ってしまうようなまだまだ弱いプログラムだし。
自己学習というのも大きな誤解。
人間が決めたパラメータを最適化しているだけ。
0105デフォルトの名無しさん
2007/06/27(水) 03:15:52コンピュータ将棋ソフトを作ってる、あるいは作ろうとしている人間は
例え内心ではそういう事を思っていたとしても決して口にできないな。
口に出したら、じゃトッププロに勝てるものを作ってみせろと
言われるに決まっているから。
本気でそう思っていたら何も言わずに黙って手を引くしかないだろうが、
やっぱり本当にその手法で可能かどうか実地にやってみたくなるのが
人情ってもんだろ。
幕を引くのは自分でありたいって事だ。
0106デフォルトの名無しさん
2007/06/28(木) 08:40:450107デフォルトの名無しさん
2007/06/28(木) 10:36:05それは俺も心配。
ただ、シンプルだけどそこそこ正確な評価関数ってなんだろ?とは思うが。
0108デフォルトの名無しさん
2007/06/28(木) 23:02:32敵玉が詰み = +1点
自玉が詰み = -1点
持将棋成立 = 0点
先手千日手 = 0点
後手千日手 = 0点
あとはパワーでw
0109デフォルトの名無しさん
2007/06/29(金) 19:19:40ごめん、俺には無理。
0110デフォルトの名無しさん
2007/07/02(月) 01:32:51ttp://www.fun.ac.jp/~kishi/pdf_file/kishi_mueller_is2004.pdf
# 久々に読んだけど書けるかな?
0111デフォルトの名無しさん
2007/07/07(土) 03:14:18あんまり変わり映えしなさそうだから、Lispで
書いてみようかと思うんだがオマイラどう思う?
Lispプログラミングを勉強がてらたがw。
0112デフォルトの名無しさん
2007/07/07(土) 17:49:430113112
2007/07/07(土) 19:40:36http://lyrical.bugyo.tk/
0114デフォルトの名無しさん
2007/07/08(日) 01:26:42Lispではないけど関数型言語を使っているらしいチームが
5月の選手権には何度か参加登録してる
たしかOCamlだったか…
楽しみにしてると参加取り消しだったりした
実際に出場したことがあるかは不明
0115デフォルトの名無しさん
2007/07/08(日) 22:28:36別に利用するプログラミング言語で変わり映えをつけようとしなくてもいいと思うが。
弱ければ単なる色物で終わってしまう。
0116111
2007/07/08(日) 23:13:18単なる色物にすらならない(ただの弱いソフト)よりはマシだろ?
それにあんまり良く分かってないが、アルゴリズム的にも面白い
事ができるかも知れん。Lispを相当深く理解して使えたらだけど。
0117デフォルトの名無しさん
2007/07/08(日) 23:17:200118デフォルトの名無しさん
2007/07/10(火) 02:47:55http://www.icot.or.jp/ARCHIVE/Museum/IFS/abst/052-J.html
EPSってwikipediaによるとPrologにオブジェクト指向を取り入れたものらしいけど
>弱けりゃ何で作っても一緒
強くないと、何か言っても説得力無いしねw
強い=優れたアルゴリズム
0119デフォルトの名無しさん
2007/07/10(火) 02:59:48>Lispで書いてみようかと思うんだがオマイラどう思う?
LISPでどういうやり方でやるかわからんけど、
探索より知識の積み重ねで指そうと考えてるなら、
ここのHIT将棋が取り組んでいる
http://homepage1.nifty.com/ta_ito/HIT/top.htm
ここの研究室は、プロ棋士がどういう風に手を絞っているからを調べてて、
はじめから2,3手に絞って、その先を確認して指すタイプとか、
10手とかたくさんの手を検討して指すタイプとか、
けっこういろいろなタイプに分かれるらしい。
http://www.webspace-jp.com/~mozu/mozuiro/moromoro/ninchi.html
0120デフォルトの名無しさん
2007/07/10(火) 11:07:03http://yashiromann.sakura.ne.jp/diary/blosxom.cgi/tron/btron/20060831bappl.htm
MPLAYER
MPEG動画プレーヤーです。MPEG-1 および MPEG-2 に対応しています。
レコードエディタ
任意のレコードを編集できる高機能なバイナリエディタです。
SmartPoint
プレゼンテーション用のツールです。
アプリケーション一覧/登録/更新
BTRONアプリケーションの登録作業を柔軟かつ楽に行うためのツール群です。
データボックス編集
データボックスレコードをグラフィカルに編集するためのアプリケーションです。
0121デフォルトの名無しさん
2007/07/10(火) 15:09:08誤爆かあるいはただの宣伝かい?
0122デフォルトの名無しさん
2007/07/15(日) 23:15:411.詰めろアルゴリズムを詰める。
2.必死アルゴリズムを詰める。
3.終盤の速度計算をする。
4.定跡データベースを詰める。
5.乱戦模様に誘導する。
6.NECのSX-8iを借りる。
モデルはタイガーウッズ。序盤即終盤。
0123デフォルトの名無しさん
2007/07/16(月) 00:11:530124デフォルトの名無しさん
2007/07/16(月) 13:11:18SX-8iってベクトル機だよ?
今主流のコンピュータ将棋が高速に動くとは思えないが?
あと、マルチポストうぜぇ。
0125デフォルトの名無しさん
2007/07/16(月) 13:12:22それから、「乱戦模様」の「定跡」を作ろうって言ってる?
がんばってね。
0126デフォルトの名無しさん
2007/07/16(月) 17:45:340127デフォルトの名無しさん
2007/07/16(月) 20:22:02http://c-au.2ch.net/test/-/soc/1152718893/i
0128デフォルトの名無しさん
2007/07/17(火) 12:08:430129デフォルトの名無しさん
2007/07/17(火) 17:46:580130デフォルトの名無しさん
2007/07/17(火) 20:00:070131デフォルトの名無しさん
2007/07/20(金) 09:12:15http://en.wikipedia.org/wiki/Draughts
http://www.nature.com/news/2007/070716/full/070716-13.html
http://www.nikkei.co.jp/news/shakai/20070720STXKE037619072007.html
駒取り合う「チェッカー」を完全解明・カナダの研究チーム
【ワシントン19日共同】市松模様の盤上で黒と赤などの丸い駒を斜めに動かし、
相手の駒を飛び越して取り合うゲーム「チェッカー」を完全解明したと、
カナダ・アルバータ大の研究チームが米科学誌サイエンス(電子版)に19日発表した。
平均50台のコンピューターを18年動かし続けて得た結論は、最善手で差し続ければ必ず引き分けになるというもの。
決して負けない対戦ソフトが可能になったが、より複雑なチェスや将棋の完全解明にはかなり時間がかかりそうだ。
チームはチェッカーの世界チャンピオンに勝つプログラムを作る目的で、1989年にチェッカーの解明に着手。
全部で5兆の1億倍通りもある駒の置き方を踏まえてシミュレーションを繰り返した結果、
お互いにミスをしなければ相手の駒が取れなくなる「引き分け」に終わることを突き止めた。(07:00)
0132デフォルトの名無しさん
2007/07/21(土) 23:39:57自然淘汰を取り入れた自己進化するアルゴリズム同士をスーパーコンピューターで戦わせまくれば人間より強い定石を見つけるんじゃないかな?
0133デフォルトの名無しさん
2007/07/22(日) 01:32:10将棋はチェスやチェッカーと違って終盤でなかなか手の広さが収束しないんだよ。
もちろん取った駒を盤上の好きなところに打てるからだが。
おかげで終了局面からさかのぼって局面をデータベース化するのがとてつもなく難しい。
終盤データベースなしに学習させたところでそれは解全体のほんの一部の実戦例から
学習させる事になるので正しい学習をする(正しい定跡を発見する)かどうか怪しい。
0134デフォルトの名無しさん
2007/07/22(日) 06:38:01そんなのは昔から解明されていた。しかし誰も認めなかっただけの話だよ
その記事も当てにならない、科学的に示すには論理的仮説と多面的な反証
があってこそ科学として認められる、その解明とは単なる思い込みの域
にすぎない。つまり10手先を読んで模擬して解明したのと18年かけて
解明した悟ったという差にしかすぎないわけだ。
0135デフォルトの名無しさん
2007/07/24(火) 15:21:51なにに反応したのか、当たり前のこと並べて楽しいのか?
んな常識的なこといってもつまらんだけ。
コンピュータ将棋が最強なんて考えている乙君が沸いてきそうだ。
0136デフォルトの名無しさん
2007/07/24(火) 18:11:20では三色問題も解かれてないと主張するのですね?
0137デフォルトの名無しさん
2007/07/24(火) 21:17:16あんまりいじめてやるな。134が哀れだろ。
0138デフォルトの名無しさん
2007/07/24(火) 21:23:06中学生さんですか?
0139デフォルトの名無しさん
2007/07/24(火) 22:05:400140デフォルトの名無しさん
2007/07/24(火) 22:40:01誰に対しての発言?
意味がよく分からん。
0141デフォルトの名無しさん
2007/07/25(水) 10:42:220142デフォルトの名無しさん
2007/07/26(木) 01:48:34>自然淘汰を取り入れた自己進化するアルゴリズム同士をスーパーコンピューターで戦わせまくれば
まさにGAで対戦させて強い奴を進化させるって話じゃまいか。
中学生ですか? は言い過ぎだよ。
次みたいに名大の人が昔オセロでやってみてる
http://www.phys.cs.is.nagoya-u.ac.jp/~watanabe/swarm/garev.html
>暫定王者にのみ勝てる弱者が現れ、再び戦国の世に戻ってしまうのだ
なかなか示唆に富んだ結果が得られている。
0143デフォルトの名無しさん
2007/07/26(木) 11:34:51アルゴリズムを進化させるアルゴリズムも作るのも大変そうだ
0144デフォルトの名無しさん
2007/07/26(木) 15:55:38最初は歩だけしか動かせないアルゴリズムや角だけを狂ったように使うアルゴリズムが出てきて面白そうw
でも普通の対局できるレベルになるまで何千万世代もかかるだろうね。
0145デフォルトの名無しさん
2007/07/26(木) 18:56:37それが環境に対してダメな進化(退化)だったら淘汰されるだけか
0146デフォルトの名無しさん
2007/07/26(木) 21:01:08スパコン同士を戦わせたら何百億円もかかるから採算絶対にあわない。
実現困難な"夢"と非現実的な"夢物語"の間には大きな違いがあるよ。
132はリアルに中学生かもorz
0147デフォルトの名無しさん
2007/07/26(木) 21:17:19その結果って公知じゃないのか?
その研究はせいぜい学部生の宿題レポのレベルだし
0148デフォルトの名無しさん
2007/07/26(木) 22:10:33最近はスパコンを無料で貸してくれるところがあるよ、大学で。
地球シミュレータも有償だが借りられるし、そんなに高くはない。
まあ、ベクター計算機をこういう用途には使いづらいだろうが、
超並列スカラー型なら結構使えるんじゃないかな?
何百億円もかけたら自分で好きなタイプを作れてしまうな。
0149デフォルトの名無しさん
2007/07/26(木) 22:56:51これは非現実的の範疇には入らないと思うが。
「採算」の事を考えてる時点で現実的じゃん。
非現実的ってのはもっと、今後どんだけ科学が発展しても無理!ってものの事を言わないか?
0150デフォルトの名無しさん
2007/07/26(木) 23:07:11>>146のでも非現実的といえる
0151デフォルトの名無しさん
2007/07/26(木) 23:22:32理論的な最強を目指しているのか?現時点での暫定的な最強を作りたいのか?
前提が定まっていないような
0152デフォルトの名無しさん
2007/07/26(木) 23:25:03自分は当面目指すのは後者だと思ってる
0153デフォルトの名無しさん
2007/07/27(金) 00:00:00まずはコンピュータの頂点を目指す
0154デフォルトの名無しさん
2007/07/27(金) 02:13:59リンク先を見た。オマオレ、と思った。
俺も中高生の頃こんな感じで大学入ってから忙しくて中断
した口。でもこの人の学習手法はGAに成ってない。
交差と突然変異が無きゃ駄目だし、実際問題として
純粋な弱肉強食だと、変な局所最適にすぐ陥ってしまう
ので、ヘボい遺伝子も少し残さないといけない。
その加減が難しいんだけど。
>>151
上のチェッカーにも有るように「全探索」してしまえば
間違いなく最強だろ。
NP完全問題の全探索は絶望的に大変だが、チェッカーや
6x6オセロくらいまでなら実現してる。ガンガレ。
0155デフォルトの名無しさん
2007/07/27(金) 03:59:16「ガンガレ」って誰に言ってるのか知らんが、将棋の全探索は無理だろう?
いくらなんでも現状では。
量子コンピュータが実現するとか、ものすごい理論でも発明?されない限り。
0156デフォルトの名無しさん
2007/07/27(金) 04:14:32あとはそれにどこまで近付けるか、あるいは到達するか
0157デフォルトの名無しさん
2007/07/27(金) 12:45:10量子コンピュータができれば、将棋の必勝解を一瞬で計算できます。
時間など不要です。
なぜなら量子コンピュータは手順という概念を組み立てる方法では計算しないからです。
将棋というルールを因数分解して必勝という答えを導きだす。
その計算された手順を取り出す(現状は取り出せない)。
量子演算は無限の並列計算ですから無限の計算ができることになります。
みなさんも量子コンピュータを応援しましょう。
0158デフォルトの名無しさん
2007/07/27(金) 12:51:250159デフォルトの名無しさん
2007/07/27(金) 13:28:58量子コンピューターでもNP問題を解くのは難しいって何かで読んだ、
チェスなら>>157に書いてあるように完全解析できるだろうけど将棋はどうなんだろう?
そもそも将棋は全探索できる数学的証明がないと分からん。
0160デフォルトの名無しさん
2007/07/27(金) 13:36:26チェスは無限に続くかもしれんが、将棋は同一局面3回出たら引き分け
0161デフォルトの名無しさん
2007/07/27(金) 13:36:47いやまぁ自分は量子コンピュータのことよくわかってないんだけどね
0162デフォルトの名無しさん
2007/07/27(金) 13:39:56合計40枚だが、それを考慮しないことにして
高々配置可能な種類は15の81乗程度
0163デフォルトの名無しさん
2007/07/27(金) 13:41:40それすべてに、勝ち負けを設定すれば将棋は完全に溶けた
0164デフォルトの名無しさん
2007/07/27(金) 13:46:38次の手番がどっちかとか何回目に出た局面かで勝ち負け引き分け変わるでしょ。
0165デフォルトの名無しさん
2007/07/27(金) 14:11:41素人考えだけど、手番はともかく、何回目に出た局面かは
必要ないんじゃないかな?だって最強のもの同士が闘っているのだから、
その局面が出た瞬間に、これは無限ループ=千日手と解るはずだから。
0166デフォルトの名無しさん
2007/07/27(金) 14:59:130167デフォルトの名無しさん
2007/07/27(金) 15:13:500168デフォルトの名無しさん
2007/07/27(金) 15:20:30そういえばそうだった
0169デフォルトの名無しさん
2007/07/27(金) 15:26:39それだと一秒間に一兆パターン調べても終わらないいんだがw
何で今更そんな議論を
0170デフォルトの名無しさん
2007/07/27(金) 15:27:13そういえばそうだった
0171デフォルトの名無しさん
2007/07/27(金) 17:11:57チェスにも同じルールがあるよ、次に完全解析されるゲームはダイヤモンドゲームじゃ無いかと予想
最後まで解けないのは囲碁。
0172デフォルトの名無しさん
2007/07/27(金) 20:53:10無限に終わらない罠。記録できてこそ3回一致を判定できる罠。
0173デフォルトの名無しさん
2007/07/27(金) 22:07:54囲碁はもう解けてるだろ
先手必勝
0174デフォルトの名無しさん
2007/07/27(金) 22:13:05あれ、囲碁って先手の6目(7目?)勝ちって解明されたんだっけか?
教えてクンですまん。
0175デフォルトの名無しさん
2007/07/27(金) 22:34:40囲碁も将棋同様に解かれてないよ。
囲碁は人間モンテカルロ法で先手有利のような結果が出てるだけで。
ちなみにオセロでも同様な方法だったら後手有利のような結果が出る。
しかしちゃんと最善'候補'のゲーム木を構築したら引き分けの可能性が高いという結果が出る。
0176デフォルトの名無しさん
2007/07/27(金) 22:50:420177デフォルトの名無しさん
2007/07/27(金) 22:54:29オセロ(通常は8x8の事)もまだ解明されてないよ
6x6盤は解かれてるけど
0178デフォルトの名無しさん
2007/07/27(金) 22:58:44そうでしたか
0179デフォルトの名無しさん
2007/07/27(金) 23:11:50ぽえむ君だから仕方が無いんだけど、
0180デフォルトの名無しさん
2007/07/28(土) 00:18:54一目、局面を見ただけで千日手(無限ループ)だと分かる?
今まで何回、同じ局面が出てきたか記憶しないで?
最強の者同士が戦ってるってどこから来た仮定?
例え将棋の神様であっても、これまでに現れた局面を
記憶しない限りループにはまってるかどうかは分からんだろ?
久々に笑わせてもらったよ。
0181デフォルトの名無しさん
2007/07/28(土) 00:25:56おまえ変だ
完全に勝敗が決まっていたら、勝ちか負けか千日手しかない
0182デフォルトの名無しさん
2007/07/28(土) 00:33:30勘違いしてるバカ
0183デフォルトの名無しさん
2007/07/28(土) 00:39:40意味不明!
0184デフォルトの名無しさん
2007/07/28(土) 00:45:26局面・・・駒の配置と手番の情報だけが必要
結果・・・その局面から全探索した結果(勝ち・負け・千日手)だけが必要
0185デフォルトの名無しさん
2007/07/28(土) 01:03:20同じ形の局面でもそれが何回目の出現かを区別しないで
どうやって千日手だと判定するんだ???
もしかして特定の形をした局面が千日手になるか
ならないかはその形から自動的に決まると思ってる?
0186デフォルトの名無しさん
2007/07/28(土) 01:13:35勝ちでも負けでもない局面はあいこだろが
0187デフォルトの名無しさん
2007/07/28(土) 01:15:00だからそれは別の問題なんだって。
そっちの話題に関してはもちろん思ってないよ。
0188デフォルトの名無しさん
2007/07/28(土) 01:35:130189デフォルトの名無しさん
2007/07/28(土) 01:39:39http://game12.2ch.net/test/read.cgi/bgame/1184085334/
解析中と解析後の区別がついてないから始末が悪い。
0190デフォルトの名無しさん
2007/07/28(土) 01:41:50スレは見てるけど最近将棋の開発はしてないなー
ちょっと前は高速化のためにSSE2の勉強やってたけどどんなところに使えるかな
0191デフォルトの名無しさん
2007/07/28(土) 01:45:49正確に判定するためにはその局面に至る手順で
区別して扱わない限りそもそも不可能なんだよ。
言葉だけで説明するのは非常に難しいので、
後は"GHI問題"でググるなどして自分で勉強してくれ。
ちなみに特定の局面から全探索する場合、
そこから先の局面は手順により区別されている。
ところが探索の開始局面にその区別がなかったとすると
情報は蓄えられずにどんどん失われて行く。
0192デフォルトの名無しさん
2007/07/28(土) 01:51:14おめー頭悪いな
0193デフォルトの名無しさん
2007/07/28(土) 01:53:00どんな探索をしていっても、自分が勝った局面に、どちら側がどう工夫しても
持って行けない局面は、探索ツリーの中で閉じたループ状の構造となる。
ループ状の構造であれば、、局面の数は莫大とはいえ有限なので、
それを辿っていくと同じ局面が必ず繰り返されるので、千日手。
言いたかったのは上記のことで、ツリーの構造を議論するのに、
時系列で追う発想はもはや必要はない、ってこと。
0194デフォルトの名無しさん
2007/07/28(土) 01:57:41>ところが探索の開始局面にその区別がなかったとすると
>情報は蓄えられずにどんどん失われて行く。
この部分の解説希望
失われて行く情報とは?
0195デフォルトの名無しさん
2007/07/28(土) 02:02:04191は頭悪いよ
詰め将棋を解く(勝敗を決定)する事と、
すでに決定されている事の区別が出来ていない
0196デフォルトの名無しさん
2007/07/28(土) 02:04:100197デフォルトの名無しさん
2007/07/28(土) 02:07:06>最強のもの同士が闘っているのだから、
>その局面が出た瞬間に、これは無限ループ=千日手と解るはずだから
0198デフォルトの名無しさん
2007/07/28(土) 02:08:261) 探索ツリーを作る段階での議論
2) すでに完成した探索ツリーの構造の議論
がゴッチャになっているのかな?
その点では、>>191 氏にもミスはあるように思うが、
でも「GHI問題」ってのが 1)ではあるんだね
ちょっとググって勉強してみるよ 情報サンクス
0199デフォルトの名無しさん
2007/07/28(土) 02:17:01千日手になるのは単純な見て分かるループだけじゃない。
大きな流れの中で同一の節(局面)を4回通過するだけで起きる。
千日手にならない手順と容易には区別できない。
局面だけで区別するとゲーム木はツリー構造ではなく
メッシュ構造になるので辿りかたが全く決まらない。
そこら中がループしていて、
ループしていないところとの区別は存在しないんだよ。
0200デフォルトの名無しさん
2007/07/28(土) 02:23:21将棋の完全解析は不可能、を主張しているということでOK?
0201デフォルトの名無しさん
2007/07/28(土) 02:23:33手順は関係ない
勝ちと負けと引き分けしか無いのだから、局面が与えられればそれは決定するんだよ
探索によって結果が変わるなら、その探索が間違っているだけだ
0202デフォルトの名無しさん
2007/07/28(土) 02:30:16千日手の局面では、一つに絞られないから、確かにメッシュ構造になるんだろう
でも、ループでもメッシュでも、ノードの数は有限だから、やはり千日手は千日手
確かにループになるって書いたのは間違いだったけど、
最初の議題「何度目の局面の情報は必要か」っていう点では、同じ結論になるんじゃないかな?
0203デフォルトの名無しさん
2007/07/28(土) 02:39:59違う、違う。
その局面に至る手順により区別して(別の物として)
扱わない限り、その局面が勝ち負けか引き分けかを
決定できないと言ってるんだよ。
つまり局面をその現れる順番で展開したゲーム木を作れば良い。
手順に関係なく局面が与えられれば勝ち、負け、引き分けが
決定するはずと言うのが単なる思いこみなんだよ。
0204デフォルトの名無しさん
2007/07/28(土) 02:46:240205not 203
2007/07/28(土) 02:48:18局面pがあって、その子供がc1,c2のみで、ともにXの負けの(一手詰みの)局面とする。
GHIがない場合、後退解析では
c1, c2の局面がXの負けとわかる->c1,c2だけを子供に持つ局面pはXの負けとわかる
だけど、もしGHIがあったら、pに来た時点で経路によっては4回目の同一局面になって、
引き分けになるかもしれない。
連続王手の千日手になってXの勝ちになるかもしれない。
だから、pの局面は結局勝ち負けが一意に定まらないというわけ。
それでも完全解析は理論的には可能で、要するに局面数Nだったのが、
ある局面に至るまでの経由局面を全て考慮しなくてはならないと言う意味で、
最悪の記憶量がO(N!)になるというだけでしょ。
ずいぶん爆発的に増えちゃうとはいえ、どちらの場合にせよ天文学的な局面数なので、
まぁそんなにまじめに考えてもしかたないと思うけど。
0206デフォルトの名無しさん
2007/07/28(土) 02:57:34> その局面に至る手順により区別して(別の物として)
> 扱わない限り、その局面が勝ち負けか引き分けかを
> 決定できないと言ってるんだよ。
「区別が必要」という仮定で、手順により区別して
勝ち負けか引き分けかを決定したとするよね?
そうすると完全解析済みになるよね?
後は完全解析済みの結果を参照するだけでよいよね?
再解析の必要は無いよね?
その局面は参照するだけで、勝ち負けか引き分けか決定してるよね?
これは、あなたの主張する「区別が必要」と矛盾するよね?
この矛盾は、仮定が間違っていいたためであり、「区別の不要」
ということになる。
証明終わり。
これ背理法っていうんだけど、問題ある?
0207デフォルトの名無しさん
2007/07/28(土) 02:59:37よーく言いたいこと解った!!サンクス!!
後退解析だけでは駄目なんだね 経路が必要なんだね
で、結局、局面だけでは判断できない・・・ってことか
ちょい目から鱗が落ちたよ 漏れの勉強不足を痛感した
0208デフォルトの名無しさん
2007/07/28(土) 03:05:35勝つ手順がわかっていたとしても、
既にその局面が3回現れていたとしたらそこへは指せない
と言うことなんだろ???しかし、この場合、1回目で勝っている
0209デフォルトの名無しさん
2007/07/28(土) 03:08:47局面だけ決着しているって
おまえも頭が悪いやつの仲間入りか???
GHI問題というのは、探索の中で現れるだけで実際に指した手ではないんだぞ
一回目で、勝ち負けが決していたら2度目は無いダロが
0210デフォルトの名無しさん
2007/07/28(土) 03:10:21「局面へ至る手順により区別」と「局面による区別」がすり替わっているように思う
その点において、>>203 氏の意見の方が正しそう
O(N!)からO(N)への射影は、一意には決まらないのじゃないか?
>>205 氏は、それをもって「決定できない」と言っているのだと思うよ。
0211デフォルトの名無しさん
2007/07/28(土) 03:10:50問題があります。
なぜなら勝ち、負け、引き分けが決定するのは飽くまでそこに至る手順により
区別された局面であり、その区別を外して形だけで同一視した局面は
一般的には決定不能だからです。
0212デフォルトの名無しさん
2007/07/28(土) 03:14:01勝ち負け引き分けが分かっていたら、同じ局面は2度現れない
よく考えろ!!
0213デフォルトの名無しさん
2007/07/28(土) 03:19:23確認。
完全解析の定義は「すべての局面の勝ち負けか引き分けかを決定すること」。
認識は、あってる?
「局面へ至る手順により区別」して、完全解析する。
完全解析後に、「局面による区別」し、参照する。
問題あるなら何行目か具体的に指摘してくれるか?
0214デフォルトの名無しさん
2007/07/28(土) 03:21:18完全解析の定義は?
で、完全解析はできるのできないの?
0215212
2007/07/28(土) 03:22:260216212
2007/07/28(土) 03:24:29勝ち負けが決している局面は1度しか訪れないし、2度訪れるなら千日手
ただこれだけだ
0217212 これ嫁
2007/07/28(土) 03:28:03ゲーム理論で扱われるゲームの分類のひとつである
チェス・オセロ・石取りゲーム・囲連星・連珠・五目並べ・三目並べなどが該当し、
偶然に左右されない読みの深さを競う。
概要
これに分類されるゲームの特徴は、理論上は完全な先読みが可能であり、
双方のプレーヤーが最善手を打てば、必ず先手必勝か後手必勝か
引き分けかが決まるという点である。
Wikipedia
0218デフォルトの名無しさん
2007/07/28(土) 03:28:37分からないかな?
局面の形だけで区別したのでは答えが複数あるんだよ。
どういう手順によりその局面に至ったかにより異なる答えが。
0219デフォルトの名無しさん
2007/07/28(土) 03:30:01しかし、後退解析を使って「完全解析」するのは、GHI問題があるために不可能
どうやって「完全解析」するかの、方法論、つまりアルゴリズムの問題を除けば、
確かに>>208, >>209 氏の言うことにも一理あるようで、「完全解析」出来るのかも知れない
もし「完全解析」が可能であるとすれば、>>213 氏に漏れは同意 ここまでが漏れの今の認識
少なくとも、後退解析が持つ問題点と、完全解析が可能かどうかは、分けて議論すべき感じだね
0220デフォルトの名無しさん
2007/07/28(土) 03:32:57そんなことは聞いていない。
(1)完全解析の定義はあってるかどうか。
(2)>>206の何行目が間違い。
を
(1)Yes or No
(2)X行目
と簡潔に答えてくれ。
0221デフォルトの名無しさん
2007/07/28(土) 03:33:59千日手を回避して勝ちがあるなら初めからその手にすればいいし
回避しても価値がないならそのまま千日手を狙うのが最善
0222デフォルトの名無しさん
2007/07/28(土) 03:36:21現在の局面がある
この局面からは勝ち筋があるが
勝ち筋の途中である局面Aを通過する
よって、局面Aが「すでに3回登場しているのか」
「そうではないのか」によって違いが生じる
でもその場合局面Aから現在の局面になるのだから
結果は千日手なのだよな
0223デフォルトの名無しさん
2007/07/28(土) 03:36:37千日手になるためには同じ局面が"4回"現れる必要があるぞ。
2回目が現れたらその途端に千日手になるわけじゃない。
0224デフォルトの名無しさん
2007/07/28(土) 03:37:320226デフォルトの名無しさん
2007/07/28(土) 03:43:17イメージ的に、対局で、詰めろが回避できないと諦めた段階で投了するか、
詰まされるまで指し続けるかの違いかな。
0227デフォルトの名無しさん
2007/07/28(土) 03:44:41スマン、「で、結局、局面だけでは判断できない・・・ってことか」は、
後退解析の途中で現れる局面についての話題ってことに読み直してくれ。
しかし完全解析って、後退解析以外にそもそも定義できなそうだから、
正しくは後退解析の実行手順の問題と言い換えるべきか? これで正しい?
0228デフォルトの名無しさん
2007/07/28(土) 03:58:02うん、つまりはそういう事。
すでに以前、局面Aを3回通過してれぱ頑張っても千日手にしかならないが、
そうでなければ(2回あるいは1回通過)勝ち筋があるというわけ。
そして局面Aから現在の局面に来たとしても、必ずしもそこに戻るとは限らない。
0229デフォルトの名無しさん
2007/07/28(土) 03:59:50神同士が対局してるものとして、
同じ局面が現れる(2回目)って事は、仮に千日手ルールが無ければ3、4、5・・・回目も必ず現れるよね?
んで千日手ルールがあった場合、2回目が現れた時点でその局面は千日手(4回目)なのと同じでしょ?
0230デフォルトの名無しさん
2007/07/28(土) 04:21:240231デフォルトの名無しさん
2007/07/28(土) 04:28:20そう。
>>180は、最初こっちでやってて、逃げ出したみたい。
「将棋って数学に似てるの?」
http://game12.2ch.net/test/read.cgi/bgame/1136526660/
こっちでも完全無視。
http://game12.2ch.net/test/read.cgi/bgame/1184085334/
で、ここで叩かれていると。
0232デフォルトの名無しさん
2007/07/28(土) 04:35:39ちょっと待って、整理させてくれ
その「戻らない」場合っていうのを
盤面はもちろんなくていいから例示してくれないか
局面Aから現在の局面に来た過程では、
相手方の協力があったから来たわけだよな
つまりこの千日手含みの手順に入ったからには
相手としても「回避すれば負ける」という事情が
あったわけで、するとやはり千日手が結果の気が
するのだけど
0233デフォルトの名無しさん
2007/07/28(土) 04:38:15皆さんは将棋の神様同士が双方最善を尽くす場合の棋譜を考えてるよね。
だから千日手になるのを避けるために特定の局面を通らない事もあると仮定している。
そう考えるとその時点での局面の形から指し手が一意に定まると(少なくとも結果は同じ)。
私はルール上許される全ての局面に勝ち、負け、引き分けのラベルを貼る事を考えている。
そうすると後退解析するしか方法がなくて、すると>205が書いているように
GHI問題を考慮する必要が出てくる。
0234デフォルトの名無しさん
2007/07/28(土) 04:38:59ここの2ページ目だけ読めば、GHI問題については理解した(つもり)
ttp://www.fun.ac.jp/~kishi/pdf_file/kishimoto_gpw2004_paper.pdf
これって詰め将棋のように、手順に基づいて探索ツリー作製していったとき、
サイクル手順に出てくる局面を、「無闇に」不詰として、ハッシュ表に登録することから生じる問題みたい
この「無闇に」ってところが重要で、ホントは2ページ目の局面Aは詰む局面
したがって「完全解析」の是非や、それに何回目の局面の情報が必要か、といった問題じゃなく、
あくまでも探索アルゴリズムの問題だね。最初の議論と、GHI問題の関係は、微妙だよ?
0235デフォルトの名無しさん
2007/07/28(土) 04:40:34なるほど、横からだが把握した
この板IDないしな
0236デフォルトの名無しさん
2007/07/28(土) 04:44:460237デフォルトの名無しさん
2007/07/28(土) 04:48:01勝ち、負け、引き分けのラベルを貼る=神同士の対局
0238デフォルトの名無しさん
2007/07/28(土) 04:48:10ひとまずその2ページ目は見た
言いたいことはわからないでもないが
それは探索の実装の問題ではないかね
ハッシュが誤作動するとかいう問題と
結論がどうであるかということとは関係ない
もっといいアルゴリズムに替えたらいいだけ
この例でいえばEは「千日手」が結論なわけで
何も不明解さはないだろう
連続王手の千日手はまた別にして。
0239デフォルトの名無しさん
2007/07/28(土) 04:49:470240デフォルトの名無しさん
2007/07/28(土) 04:52:30>>238で俺が言いたかったことは>>234が言ってたな。
0241デフォルトの名無しさん
2007/07/28(土) 04:55:31GHI問題は、必ずしも「後退解析」(←これって勝ち筋から手を逆算していくことですよね?)の問題じゃないみたい
手順を追ってツリーを構築していく際に、ある経路では、千日手のように”みえる”局面が、
別の局面では勝ち筋に必要な局面ということ もちろん探索の途中で、うっかり千日手と
登録してしまったところに問題があるのであって、本当は、当然詰む局面
そもそも局面をハッシュしなければ、こういった問題は生じない
ハッシュするにしても、なんらかの形で辿った経路を情報として残せば、問題ない
また、図1で最初にA→Cと探索すれば、最初からこんな問題は生じない
とりあえずGUI問題について語るには、上のPDFの2ページ目を読もうよ
さっきから漏れも色々考えているのだが この論文の2ページ目以上に、簡単にGHI問題を説明するのは無理ぽ
0242デフォルトの名無しさん
2007/07/28(土) 04:56:16初手からの神同士の対局と任意、それも手順を含めた
任意の局面からのそれをごっちゃにしてない?
0243デフォルトの名無しさん
2007/07/28(土) 05:00:06解析中と解析後はちゃんと区別しろよな
解析後に同一局面が出てくるなら引き分け、そうでなければ同一局面は出てこない
0244デフォルトの名無しさん
2007/07/28(土) 05:03:19してないよ
0245デフォルトの名無しさん
2007/07/28(土) 05:04:58完全なる「次の一手」マシンというのは、どんな局面を与えられても
勝ち筋があればそれを指し、なければ千日手に持ちこめる順を指し、
それもなければ何か指すというようなものだと思う
このようなマシンを作成することと、すべての局面の勝ち負けがわかる
完全な一覧表を作ることは等価だよ
マシン作成→与えられた局面からマシンに一人将棋をさせる→その勝ち負け
一覧表作成→有効手の中から、移行後の局面が「勝ち」であるものを
(なければ「千日手」を)さがす→それが次の一手
0246デフォルトの名無しさん
2007/07/28(土) 05:11:231) 完全な後退解析が出来れば、
局面だけで勝ち・負け・千日手が解る(→完全解析)
2) 現実のアルゴリズム(これは後退解析でない)で
ツリー構造を作るには、ハッシュ表を使うことが多い
3) むやみにループする局面を千日手としてハッシュ表に登録していくと、
本来の勝ち筋を千日手と間違える問題が生じる(GHI問題)
4) 上記問題を回避するには、ハッシュ表に、千日手と判断するに
至った経路を登録して、局面だけでなく経路を区別する必要がある
5) 4)の事情があるために、「局面だけでは勝ち負けは決まらない」という
誤解が生じている
0247デフォルトの名無しさん
2007/07/28(土) 05:17:50今>>246がいいこと言った
0248デフォルトの名無しさん
2007/07/28(土) 05:18:28そこまでどんな局面(経路)を辿って来たかについてどんな仮定を置いて
決めるんだい?
どんな経路を辿って来たとしても同じだと言うんならその根拠は?
0249デフォルトの名無しさん
2007/07/28(土) 05:20:140250デフォルトの名無しさん
2007/07/28(土) 05:21:26まあ、役者不足、ってやつだよね。
0251デフォルトの名無しさん
2007/07/28(土) 05:22:230252デフォルトの名無しさん
2007/07/28(土) 05:22:22次の一手問題なら経緯は調べないだろが
勝ち負けの判定ならその局面へくる前に勝敗か引き分けが決まっている
0253デフォルトの名無しさん
2007/07/28(土) 05:22:54いや別に
その「完全なる次の一手全集」を見ながら
バカみたいに指していくだけでいい
もしその局面からは千日手が最善なのであれば
全集には千日手になる手が書いてある
それを指せば、もし一回目や二回目なら
また同じ局面に戻ってくるわけだし
三回目なら、千日手になる
0254デフォルトの名無しさん
2007/07/28(土) 05:25:26俺、俺より賢い奴、俺と同じくらいの奴、変なことを言う奴
の少なくとも4人はいると俺は思ってる
あと、見てる奴や1レスくらいしかしてない奴が多数
0255デフォルトの名無しさん
2007/07/28(土) 05:26:32不完全な指し手が指したところから、勝敗を判定するなら
千日手は考慮しなければならない
データベースは使えない
0256デフォルトの名無しさん
2007/07/28(土) 05:26:45すでに>>206で、「区別の不要」と証明されているんじゃないの?
否定できるなら、してみれば?
まず、>>220の形式で答えるのかな。
0257デフォルトの名無しさん
2007/07/28(土) 05:32:06横からだけど、ちょっと待って
棋譜は有限だから、「指し手履歴込みの局面」も有限
それらをすべて列挙して勝ち負けを調べればよい
で、「同じ局面でも、指し手履歴の内容によって結論が異なる」
という現象はあるのかないのか
そこが本当の焦点なんじゃないのかと思う
0258デフォルトの名無しさん
2007/07/28(土) 05:36:42>>185-248辺りでどのレスが誰?
自分のレスがどんな奴だと思われてるかちょっと気になる
0259デフォルトの名無しさん
2007/07/28(土) 05:38:36「同じ局面でも、指し手履歴の内容によって結論が異なる」 と「区別の必要」の違いは?
とにかく、他にどんな問題があっても、単純に>>206を否定できなければ
「区別の不要」という結論は覆らないでしょう。
0260248
2007/07/28(土) 05:45:24区別が不要だといったいどこで証明されているんだ?
206の主張はトートロジーだよ。
区別が不要だから不要だと言ってるに過ぎない。
>246の1も未証明な仮定だと思うぞ。
0261デフォルトの名無しさん
2007/07/28(土) 05:46:07えー俺は釣られてるのかな
それとも俺がバカなのか
> その局面は参照するだけで、勝ち負けか引き分けか決定してるよね?
具体的にはここだろう
今は「区別の必要がある」という仮定で話をしているのだろ?
そして、手順を区別した上で勝ち負け表を作ったのだろ?
つまり、同じ局面でも手順が違うものは別物として勝ち負けを
判定したのだろ?
それを整理して、局面だけから勝ち負けがわかるようにするのだろ?
でも、その整理ができるという保証がないよ
「区別の必要がある」という仮定のもとでは
つまり、区別ありの表から区別なしの表を作るときに、
もし区別ありの表において、ひとつの局面が
手順によって勝ちだったり負けだったり結論が異なっていたら、
区別なしの表にまとめることはできないじゃないか
そして、「区別の必要がある」という仮定はまさに
手順によって結論が異なるかもしれないという意味だ
だからこれは「他の問題」なんかじゃなくて本質的な問題だよ
0262デフォルトの名無しさん
2007/07/28(土) 05:48:55あ、先に言われた
同意
0263248
2007/07/28(土) 05:58:140264デフォルトの名無しさん
2007/07/28(土) 06:02:15> つまり、区別ありの表から区別なしの表を作るときに、
「区別ありの表」とか、「区別なしの表」なんていらない。
単に「局面情報と手番と結果」を持つ表が一つあるだけでよい。
完全解析とは、その一つの表を埋めて、完成させること。
解析後は、「局面情報と手番」から「結果」を参照するだけ。
>でも、その整理ができるという保証がないよ
後で整理する作業は発生しない。
全く問題にならない。
よって、>>206の否定にはならない。
反論をお待ちしています。
0265デフォルトの名無しさん
2007/07/28(土) 06:08:05おまいさん釣りだろう
議論ごっこなら付き合わないぞ
> 「区別ありの表」とか、「区別なしの表」なんていらない。
> 単に「局面情報と手番と結果」を持つ表が一つあるだけでよい。
> 完全解析とは、その一つの表を埋めて、完成させること。
> 全く問題にならない。
これらは>>206の論証の結果として得られるものだろう
それを論証の過程で使うのは「結論先取の詭弁」という詭弁
0266デフォルトの名無しさん
2007/07/28(土) 06:09:57>「区別が必要」という仮定で、手順により区別して
>勝ち負けか引き分けかを決定したとするよね?
>「区別ありの表」とか、「区別なしの表」なんていらない。
まず仮定をぶち壊してるけどこれOKなの?
0267デフォルトの名無しさん
2007/07/28(土) 06:10:13おまえが言っているのは、完全解析が不可能、ということじゃないか?
完全解析は「すべての局面の勝ち負けか引き分けかを決定すること」。
つまり、表を正しく完成させるということだぞ?
0268デフォルトの名無しさん
2007/07/28(土) 06:14:36「完全解析とは、そのひとつの表を埋めて、完成させる事」
と言うそれが可能だと言う保証がどこにも無いんだよ。
後で整理する作業が必要ないと言うならそれを作る手順は?
0269デフォルトの名無しさん
2007/07/28(土) 06:15:26> >区別ありの表」とか、「区別なしの表」なんていらない。
> まず仮定をぶち壊してるけどこれOKなの?
言葉が、足りませんでしたか。
完全解析時の作業用の表は、たくさん必要です。
完全解析を行った結果出力として、
>単に「局面情報と手番と結果」を持つ表が一つあるだけでよい。
という表があればよい。
ということです。
完全解析ができるということは、この表を得ることができるということです。
反論をお待ちしています。
0270デフォルトの名無しさん
2007/07/28(土) 06:19:19いや、いま問題になっているのはそうじゃないよ
将棋のルールは、一見、局面(駒の配置と手番)だけでは
勝ち負けが確定しないように見えるじゃんか
同じ手でも千日手になる場合とそうでない場合があるからね
つまり、将棋において状態とは、駒の配置と手番だけではなくて
「局面の出現回数の履歴」も含めたものでなければならない
そう考えられるわけだよ。素朴には。
でも、もちろん感覚的には、そんなことはなくて、履歴などなくても
局面(駒の配置と手番)だけで判断がつくように思える
その感覚が正しいかどうかがいま問題になっているのだよ
将棋というゲームの状態変数として「駒の配置と手番」だけで
十分なのかどうかと
ルールを素朴に読んだだけでは、不十分に思えてしまうわけで
0271デフォルトの名無しさん
2007/07/28(土) 06:20:16>>270
0272デフォルトの名無しさん
2007/07/28(土) 06:23:42「将棋の完全解析は不可能」を主張しているわけだ。
これが不可能なら確かに>>206は成り立たないね。
でも、基本的に>>217にもある通り「可能」が、共通認識なんだけど。
つまり、あなたが「将棋の完全解析は不可能」を証明できなければ、
>>206を否定する必要がある。
がんばってくれ。
0273デフォルトの名無しさん
2007/07/28(土) 06:27:43>>268、>>270、>>271の最善手は、「千日手」に持ち込むことか。
0274デフォルトの名無しさん
2007/07/28(土) 06:28:57横からだけどおまいさんの言う「完全解析」っていうのは
あくまで「駒の配置と手番」だけを状態変数としたものだろう
たとえば、三山崩しにおいて、ルールを読んだだけでは
状態変数として「1の山の個数」「2の山の個数」「3の山の個数」
という3つの状態変数が必要に思える
でも実際にはこんなにいらなくて、それらのXORだけあれば
勝ち負けが判定できる
このように状態変数を減らすことが、将棋でもできるかどうか
それが論点だよ
0275248
2007/07/28(土) 06:29:04完全解析の定義を勝手に自己流に狭く定義しないでくれ。
その定義での完全解析ができるという保証は無いだろ?
実際に可能なのは手順込みの局面にラベルを貼る事。
0276デフォルトの名無しさん
2007/07/28(土) 06:31:29完全解析の定義と、それが可能かどうかを、まず、答えてください。
ここの立場をはっきりしないとお話にならない。
いいですか?
はっきり明記してくださいよ?
0277デフォルトの名無しさん
2007/07/28(土) 06:33:23>二人零和有限確定完全情報ゲーム
「完全情報」ってのは手順の情報も含むんだが
君はこの情報を欠落させても欠落させない場合と等価な事を証明する必要がある
0278デフォルトの名無しさん
2007/07/28(土) 06:33:52レッテル貼りの詭弁
>>272
共通認識というか定理だろう
将棋のルールは駒の配置と手番とそれらの履歴とで
記述されているわけだから、当然「区別ありの表」は
作れるわけだよ
そこから「履歴」を消してもWell-Definedになる、
というのは自明なことではないと思うよ
0279デフォルトの名無しさん
2007/07/28(土) 06:38:49>>206
0280デフォルトの名無しさん
2007/07/28(土) 06:41:11そのアンカじゃループしてるよ
何か別の事言ってよ
0281デフォルトの名無しさん
2007/07/28(土) 06:48:05>>259
0282248
2007/07/28(土) 06:50:04区別は必要ないから区別しなくて良いってずーっと。
0283デフォルトの名無しさん
2007/07/28(土) 06:51:05>>261
0284248
2007/07/28(土) 06:55:40この議論だけで徹夜しちまったよ。
0285デフォルトの名無しさん
2007/07/28(土) 06:56:36何かあればまた今夜にでも参加するよ
みんなお疲れ
0286デフォルトの名無しさん
2007/07/28(土) 06:57:56俺もだ
土曜出勤なのにな
>>276に長レスを書いてたんだけどバカらしくなってきた
ああやって「これにレスできないとバカだ」みたいな言い方をするのは
釣り師が一般人を議論に引きずり込むときの常套手段なんだよなあ
0287デフォルトの名無しさん
2007/07/28(土) 07:00:10>>276
よろしく。
0288デフォルトの名無しさん
2007/07/28(土) 07:00:41可能
0289デフォルトの名無しさん
2007/07/28(土) 07:01:35誰か出してなかったっけ
0290デフォルトの名無しさん
2007/07/28(土) 07:03:19>>269にも回答よろ。
0291248
2007/07/28(土) 07:05:31付き合ってくれてアリガトン。
0292デフォルトの名無しさん
2007/07/28(土) 07:06:060293デフォルトの名無しさん
2007/07/28(土) 07:11:27おやすみ
0294デフォルトの名無しさん
2007/07/28(土) 07:12:230295デフォルトの名無しさん
2007/07/28(土) 07:32:27ゲームの数学は全然わからないからあれだけど
記号や用語などもたぶんでたらめ
状態変数X1、X2、…、Xnはそれぞれ
有限集合A1、A2、…、Anに値をとる変数として
直積A := A1×A2×…×Anの要素 X = (X1, X2, …, Xn) を
このゲームの状態という
Aから、Aの部分集合全体P(A)への写像 M がある(可能な着手)
Aから集合R:={勝ち, 負け, 引き分け, それ以外}への写像Vがある
Aの元X0があり、これを初期状態という
k手からなる手順Fとは、Aのk乗の元 ( X1, X2, …, Xk ) であって
X1 は M(X0) の元
Xi は M(X[i-1]) の元 (i = 1, 2, …)
をみたすもの
Aの元Xが到達可能であるとは、あるkが存在して、Xk=Xとなる
k手からなる手順が存在すること
到達可能な元の全体からなるAの部分集合をA'とする
ゲームが添え数づけ可能とは、A'からN以下の自然数への写像
Sがあって、すべてのA'の元XとすべてのM(X)の元Yとに対して
S(X0) = 0
S(Y) = S(X) + 1
となること
0296デフォルトの名無しさん
2007/07/28(土) 07:33:13将棋は「局面の出現回数の総和」で添え数づけ可能
k手からなる手順が終わる手順であるとはV(Xk)が勝ち、負け、
引き分けのいずれかであること
あるKが存在して、k>Kのときk手からなる手順は存在しない
完全解析WとはA'からRへの写像で次をみたすもの
V(X) が勝ち、負け、引き分けのいずれかのときは
W(X) = V(X)
S(X)が偶数で、かつ、集合M(X)のSによる値域S(M(X))が
勝ち、負け、引き分けだけからなるとき、それが
・勝ちを含むならば、W(X)は勝ち
・勝ちを含まず引き分けを含むならば、W(X)は引き分け
・それ以外はW(X)は負け
S(X)が奇数で、かつ、集合M(X)のSによる値域S(M(X))が
勝ち、負け、引き分けだけからなるとき、それが
・負けを含むならば、W(X)は負け
・負けを含まず引き分けを含むならば、W(X)は引き分け
・それ以外はW(X)は勝ち
次が成り立つとき完全解析が存在する(十分)
A'の元Xについて、Xは次のいずれかを満たす
・M(X)は空ではない
・V(X)は勝ち、負け、引き分けのいずれか
証明はS(X)の有限性による
0297デフォルトの名無しさん
2007/07/28(土) 08:04:52完全解析を「すべての局面の勝ち負けか引き分けかを決定すること」と
手順を含まずに定義したんだから、解析後に手順が関係ないのは、自明。
この定義で、解析後に手順がどうのと文句つけるのがアホ。
>>292のように、
>「局面情報と手番と手順と結果」を持つ表を作れる事が完全解析ができるということ
と定義に、手順を入れれば、解析後も手順も関係するが、こんな定義初めて見たよ。
0298デフォルトの名無しさん
2007/07/28(土) 08:24:01それによると、A'は履歴を含んでいるわけではないのだから、
やっぱり「完全解析」の定義は、局面だけであって、履歴は関係ないんだね
上の議論は、将棋固有のルールを反映したものではないけれど、
将棋もまた上の数学の枠内でのものなのでしょう
「M(X)は空ではない」ってのは、例えば両方ともパスするしかないような
状況はありえないって事だよね?更に勝ち・負け・引き分け以外の
終わり方は、将棋ではあり得ないから、やっぱり将棋は局面だけで、結論がでているんだ
0299デフォルトの名無しさん
2007/07/28(土) 11:21:25千日手があるから・・・
全局面をNとしたとき、その局面が何回現れたかを記録した
0から3までの数字列N個分を保持していなければならない
最終的には4のN乗程度の状態を保持しなければ、途中差しは出来ないって事だ
0300デフォルトの名無しさん
2007/07/28(土) 11:36:00いやいや、>>292などは既存の常識に疑義を言ってるのだから、
「初めて見る」は非難にはならないよ
>>298
数式に惑わされたらだめだろ
>>295-296は何も新しいこと言ってないぞ
そしてさりげに>>295のAは履歴も含んでるよ
Sは手数とか言ってるしな
履歴を持ってないとVが千日手を判定できない
最後の条件は、勝敗未定ならば有効な手がある
ということ
たとえばもしルールでステールメイトを負けにするのを
忘れていたりすると、
M(X)が空(有効な手がない)で、しかも
勝ち負け引き分けのいずれでもない
という状況が発生するね
0301デフォルトの名無しさん
2007/07/28(土) 11:45:39駒の配置に加えて「この局面が何回目か」というパラメータも
ノードの状態変数として加える必要があるということ。
完全な履歴は必要ないが、何回目かは必要となる
これが「局面の出現回数の総和で添え数字づけ可能」の意味と理解した。
だとすると、途中で人間×2からコンピュータ×2に交代するとして、
全ての局面の出現回数を保持していなくても「この局面は何回目です」と
だけ伝えればいいんでないかい?後は事前に完全解析された結果に基づいて、
最強ソフトが「先手の勝ちです」「後手の勝ちです」「引き分けです」
とだけ伝えてオシマイになるはず。少なくとも十分条件としては。
0302デフォルトの名無しさん
2007/07/28(土) 11:47:24勝ち負けの決まっている手順の途中に千日手が現れる可能性有り
0303デフォルトの名無しさん
2007/07/28(土) 11:53:02将棋というゲームの正しいイメージはこうかもしれないな
N個のマスと、それらをつなぐ線があり
マスのうちいくつかは赤か青に塗ってある
二人が交互にマスに石を置いていく
一つのマスには3個まで石を置ける
4個目の石を置いたら引き分けで終了
赤のマスに石を置いたら先手の勝ち
青のマスに石を置いたら後手の勝ち
ただし直前に相手が置いたマスから
線でつながっているいマスにしか置けない
0304デフォルトの名無しさん
2007/07/28(土) 12:11:18だいぶ問題が絞られてきたね。
確かに、Aが履歴を含むのかどうかで、話は全く変わってくる。
Aに出てくるnって何だ?漏れはX1, X2が、例えば各駒の場所の様な変数で、
nが駒やボードに対応するものかと思った。で、その直積であるAは
履歴を含んでいないな、と。それだと千日手の判定が出来ないから、
少なくとも、「この局面が何回目か」という情報をAnとして加えてやれば、
完全解析の対象になる、という意味だと理解したんだが。
そしてある局面が何度でてくるかという情報は、手順から
考えれば何通りでもありそうなものだが、完全解析の対象としてみた場合、
最善の選択をして射影していくのだから、S(X)が決まってくるのかなと
思ったのだけど?
突き詰めると、やっぱり
> 将棋は「局面の出現回数の総和」で添え数づけ可能
のところが漏れには解らない。
うーん、難しいね、Anの意味とS(X)の意味、もし良かったら教えて
0305デフォルトの名無しさん
2007/07/28(土) 12:18:15人間が指す以上、必ずしも最善手の連続ではないから、
それまでの履歴に、「完全解析」では出てこない履歴があって、
以後の手順に千日手をもたらす可能性がある。
そのため事前に用意した「完全解析」のテーブルが必ずしも
使えなくなる、でいい?
だとすると、これって結局、GHIの問題とほとんど同じだね
GHIの場合は、探索アルゴリズムが完全でないことに起因、
人間からコンピュータに替わる場合は、それまでの履歴が最善手でないこと
(勝ち負けを見落として、無駄な経路を辿っている)ことが原因
しかしこれらが、将棋の完全解析の可能性を排除するものではない
って、これでいいのかな?
0306デフォルトの名無しさん
2007/07/28(土) 12:25:55今から出かけるから手早いけどごめん
X1、…、Xnが駒の場所などの変数で、
A1、…、Anがその値集合
たとえばX1は「先手玉の場所」で
A1は{「1一」、「1二」、…、「9九」}
みたいな感じ
それで、「同一局面4回」のルールを記述するために
(立会人に見せて「引き分けですね」と言ってもらうために)
局面の出現回数も、X1、…、Xnの中で持ってなきゃいけない
俺もおまいさんと多分だいたい同じ考えだよ
でも全部の局面の出現回数を持たなきゃいけないと思ってる
問題図までを指すのは神ならぬ人間なのだから、
神様に言わせれば変な手などもあるはず
そこから神様が引き継いだとして
勝つつもりで指してたら、途中で「その局面は4回目ですよ」
といわれて引き分けになっちゃうかもしれない
そんなわけでXnの中にはすべての(膨大な数の)局面に対して
その出現回数をあらわす変数が含まれてる
ことを俺は想定してた
0307デフォルトの名無しさん
2007/07/28(土) 12:29:34S(X)は「今の状況までの初手からの手数」で、
どうせ有限なのだからそんなの持ち出さなくてもいいのだけど
議論を簡単にするために出してみた
千日手がある以上、無限に多くの手数は指せない
だから手数の多いものから逆にさかのぼって
2000手以上は解明済み… 1000手以上は解明済み…
などとすることができる
>>305
たとえば簡単な状況で、自玉は必至、相手玉には
3種類の詰みが見えてるとする
ここで、もしその詰み手順の途中の局面が
3回出現済みだったら、自分は相手玉を詰めれない
だから千日手引き分けになる
もちろんそうでなければ勝ちになる
これは履歴が結論に影響を与えてるんじゃないかな
0308デフォルトの名無しさん
2007/07/28(土) 12:49:16なるほど「局面の出現回数の総和」って「全ての(膨大な数の)局面に対してその出現回数」
っていう意味にも読めるね。確かにこれを全て保持したとしても、局面の数が有限であり、
千日手ルールで頭が押さえられているから、それを状態変数とみたてても、取る値は
高々有限集合になって、>>295 の条件を満たす
人間から神様に交代する場合は、確かに全部保持している必要があるだろうね。
先にも書いたように、勝ちの見落としがあるから、GHI問題と同じ現象が生じる。
で、問題なのは「将棋が完全解析されるには、状態変数として、その局面の出現回数だけで
良いのか、それとも全ての局面についての出現回数が必要なのか?」ってところに絞られてきた。
>>296 氏がさらりと書いた、『将棋は「局面の出現回数の総和」で添え数づけ可能』って
いう命題、この証明を載せた文献とかが解れば、それ見てはっきりするんだが
今から出かけるってことだけど、また暇な時に相手してね、サンクス
0309デフォルトの名無しさん
2007/07/28(土) 13:17:27他に、「何回間違うと状態が変わるか」って情報いらないの?
対局は、必ず「詰み」まで指すものする。
神Aと神Bが対局して、神Aが先手。先手必勝と分かっている場合、神Aは単に「勝ち」を
選んでいけばいいが、「負け」しか選べない神Bはどんな情報を基にたくさんの「負け」の
中から手を選ぶのかな?
また、形勢差がついている局面から「人間vs神」が指し継ぎ、神が神が判断して形勢不利側を持つ。
このとき神は、差を詰めなければいけない訳だが、どんな情報を基に手を選ぶのかな?
0310デフォルトの名無しさん
2007/07/28(土) 13:25:12状態が遷移したとき、次の状態が何回目かなんて解りっこない
したがって、あるノードの千日手判定はできるが、そこから一つ前の手順に
後退解析することすら不可能になってしまう。なぜなら、ノードは
その局面の出現回数しか保持していないため、
局面A(1回目) → 局面B(4回目) → 千日手で引き分け
といったツリー構造があれば、
局面A(1回目) → 局面B(1回目)
局面A(1回目) → 局面B(2回目)
局面A(1回目) → 局面B(3回目)
というツリー構造も必ず存在するわけだから。したがって、全ての局面に
ついての出現回数がないと、そもそも完全解析の際に千日手に至る
手順を落としていくことが全く不可能になってしまう。
結論は「棋譜としての履歴は必要ないが、全ての局面についての
出現回数を保持する必要がある」ってことになりそうだ。
0311デフォルトの名無しさん
2007/07/28(土) 13:25:53でも全ての局面について出現回数を保持するのは、理論的には簡単であっても、
現実的にはまず不可能。で、結局は順番はともかくどういった局面がこれまでに
出てきたか、その回数と共に保持していくことになる(これは実装上の問題であって、
理論的には全ての局面についての出現回数保持と同じ)。
最後の問題は、なぜ全ての局面の出現回数を保持しておけば、
将棋が添え数づけ可能になるかってことだ。>>296 の後半にある
「次が成り立つとき・・・」以下を証明なしに受け入れるとしても、
ここが争点として残る。でないと「以下添え数づけ可能なゲームを考える」
という前提から崩れてしまう
松原先生の本には、この辺の理論は載っているのかな?
0312デフォルトの名無しさん
2007/07/28(土) 13:27:04それを考慮するためには同じ「勝ち」「負け」「引き分け」の結論でも
どんな結果が「勝ち」 or 「負け」側にとってより良いとされる手なのか
その価値基準を事前に定義しておく必要があるよ。
つまり「勝ち」「負け」が既に分かっている局面で、形勢差はどう定義
されるべきなのか?
0313デフォルトの名無しさん
2007/07/28(土) 13:29:43うーん完全解析の立場からいえば、その時は神様が「負けました」って
頭を下げるんだよ。で、ヘボな人間がキョトンとするという。
したがってその問題は、完全解析の枠内では無いと思うぞ
実際のプログラムを作る場合には、非常に重要になるには違いないが
余談だけど、プロ棋士も、負けのときに形を作って投げるよね
0314デフォルトの名無しさん
2007/07/28(土) 13:34:53> うーん完全解析の立場からいえば、その時は神様が「負けました」って
> 頭を下げるんだよ。で、ヘボな人間がキョトンとするという。
これって、笑い話だよね?
結果は分かっているから「いきなり投了」ということで、実際は、指せば指せるよね?
指せないとなると、それはそれで変。
0315デフォルトの名無しさん
2007/07/28(土) 13:35:53囲碁やオセロなどは目数や石数によって勝ち(負け)の価値が決められるけど、将棋は?
0316デフォルトの名無しさん
2007/07/28(土) 13:41:52>囲碁やオセロなどは目数や石数によって勝ち(負け)の価値が決められるけど、将棋は?
相手玉を詰ませば勝ち。
0317312
2007/07/28(土) 13:42:14詰め将棋に準じて考えれば勝つ側はなるべく短い手数で勝つ手を選び
負ける側はなるべく長い手数で負ける手を選ぶべきなのだろうが、
結論が引き分けの時は???
また手数が同じならすべての手順は価値が同じなのか?
私には良く分からない。
0318デフォルトの名無しさん
2007/07/28(土) 13:44:13笑い話かどうかともかく、相手のミスをどれだけ仮定するかは、実際の将棋対極では
非常に重要な要素に思うぞ、プログラム開発に限らず。いわゆるハメ手ってやつね。
相手がヘボなら、ハメ手を使って早々に対極を終わらせるだろうし、相手が上手ければ
ハメ手を見透かされて逆に咎められるだろうから、そんな手は使わないだろう。
ハメ手は、素人相手の、相手のミスを前提とした手法だが、プロでも形勢が悪いときは
それに近いことをするようだ。たとえば米長さんの本に、状況がこちらに不利であると、
ギャンブルっぽい手をあえて選ぶと書いてあった。
0319デフォルトの名無しさん
2007/07/28(土) 13:55:13神が神でいられるのは、初期局面だけなのだろうか・・・
0320デフォルトの名無しさん
2007/07/28(土) 14:02:00でも手順は少なくても簡明な勝ちもあるだろうし・・・
0321デフォルトの名無しさん
2007/07/28(土) 14:14:10この議論は>>162-163に対する>>164のレスから始まってるのか
0322180
2007/07/28(土) 14:27:08そう。そして私が>165の意見に対してキツイ事を書いて
これだけ燃え上がってしまった。
今思えば、彼が考えていた前提(神様同士が初手から対局したと仮定)が
分からなかったとは言え、失礼な書き方をしてしまった。
>165さん
今更ですが済みません。ゴメンナサイ!
0323デフォルトの名無しさん
2007/07/28(土) 14:29:27昔、ちょっとGAをやったとき、生き残り戦略はそんな感じにしてた。
引き分けの時、手数が同じ時は、駒得している手数が長いほうが有利としてた。
0324デフォルトの名無しさん
2007/07/28(土) 16:27:51既存のゲームの理論を用いて、将棋の完全解析可能性を証明するには、
将棋が添え数づけ可能であることを示す必要があるのだろう。そして局面に、
全ての局面についての出現回数を保持すれば、それが添え数づけ可能になるようだ
しかし、それは「将棋が完全解析可能か」という命題には答えても、
我々が議論してきた問題とは微妙にずれているような気がする。
我々は「将棋を完全解析するのに、局面の出現回数(=履歴)を保持する必要があるのか?」
という問題を議論してきたはず。これは「将棋は完全解析可能か?」とは違う。
「局面だけで完全解析が出来るか?」という命題は、>>296の理論にもとづいて
行おうとする限りにおいては、千日手の判定ができないため>>300 氏の言っている理由により
証明出来ない。しかしこれは、他の理論で証明することまでも不可能であると言っている訳ではない。
もし局面だけで完全解析が可能だとすると、少なくとも出現回数付きの完全解析から、
一意に射影できるはず。なぜなら後者は前者に情報を追加したものだから。
もし前者で完全解析が可能であるなら、追加した情報(=局面の出現回数)は
余分な情報であって、後から射影作業によって取り除ける。
0325デフォルトの名無しさん
2007/07/28(土) 16:28:32とりあえず「局面の出現回数つきのノードで考えると、完全解析が可能」を認めるとしようや。
上の「局面の出現回数」は、そのノードの出現回数だけではなくて、全ての局面の出現回数ね。
ここで、次の問題を考えてみる。
(*)出現回数つきの状態で考えて、完全解析した状態ツリーを得たとする
このツリーに含まれる状態のうち、出現回数の項目だけ違っていて駒の配置が
同じものは、同じ結果(勝敗および千日手)がマークされているのか?
ここで、人間の勝ち筋見落としやGHI問題、また「その局面に至る途中で、
千日手の局面を経由した恐れがある」というツッコミは、不要。ミスなしは
前提であるし、「GHI」や「途中の千日手」といった問題は、出現回数つきの
状態ツリーではそもそも存在しえない。なぜなら、今議論の出発点としているのは、
回数まで出現回数まで含んだノードなんだから、「途中で千日手」を経由していないのは、
出現回数の情報から明らか。
0326デフォルトの名無しさん
2007/07/28(土) 16:29:13何が言いたいかというと…
状態図にループ構造があると、数学的に完全解析の存在の証明が非常に難しそうだ。
で、状態変数に、全ての局面についての出現回数を保持するのは、そのループ構造を
千日手に至るまでの手順で展開し(添え数づけ可能にし)、数学で知られている
既存の完全解析の理論に乗っけるための便宜的な手法に過ぎないんじゃないかと。
もし(*)が満たされれば、勝ち負けの情報を一意に保ったまま、折りたたんで、
局面だけの完全解析に移行できるように思うのさ。折りたたむと、当然ツリーから
ネットワーク構造(ループ含む)となる。
この段階で「局面だけだと、途中の千日手を経由しているかも」と議論するのは不要。
なぜなら、もともと出現回数つきのツリーから折りたたんでいるんで、先に述べた
理由から、考える必要がない。そして勝ち負けがつく局面(ノード)以外は、全て千日手の
局面のはず。当然、千日手の局面は千日手の局面で、閉じたネットワークを作る。
勝ち負けが決定したノードが千日手に繋がってないんだから。もはや勝敗・千日手とも
出現回数の差異によって、その間のツリー・ネットワークの交叉が変化しないのは明らか。
これはあくまでも、(*)の前提が満たされた場合の話ね。
でだ、(*)の問題について、誰か解るヤシはおらんか?これが鍵になる気がする。
何らかの簡単な論理で言及できそうにも思うのだが?
0327デフォルトの名無しさん
2007/07/28(土) 16:54:30(*)については「出現回数の項目だけ違っていて駒の配置が同じもので、
結果が異なることはある」でしょ。
それも「しばしば経験する」からこそ、みんな困っていて、
transposition tableにやむを得ず経路を入れなくちゃいけないわけで。
0328デフォルトの名無しさん
2007/07/28(土) 17:04:55きっとプロの方すね、了解しました
これで漏れの中では解決
サンクス!!
0329デフォルトの名無しさん
2007/07/28(土) 17:08:38それGHI問題じゃないの?
0330デフォルトの名無しさん
2007/07/28(土) 17:13:16反例を棋譜で示せる?
0331デフォルトの名無しさん
2007/07/28(土) 17:20:35GHI問題だよ。
GHI問題は「駒の配置が同じなのに、経路によってその局面の
勝ち負けのラベル付けを変えなければならないことがある」ということだよ。
まさに325の(*)の話でしょ。
325が議論していた数え上げ方の言葉で説明するなら、
「aの局面が3回出現している状態でのbの局面は負けだが、
aが2回しか出現していない状態でのbの局面は勝ち」ということがしばしば起きる、
というのがGHI問題。
0332デフォルトの名無しさん
2007/07/28(土) 17:24:45だとすると、GHI問題は、必ずしも探索アルゴリズムの問題とは限らなくて、
完全な探索を行ったとしても、局面から以前の局面の出現回数を取り除いたことに
起因して起こる、より本質的な問題だということになるのですね
上の方に出てきたPDFの説明では、この辺りがハッキリしない
それとも、そういった問題を総称して「GHI問題」っていうのが普通なんですか?
0333デフォルトの名無しさん
2007/07/28(土) 17:28:14>ここで、人間の勝ち筋見落としやGHI問題、また「その局面に至る途中で、
>千日手の局面を経由した恐れがある」というツッコミは、不要。ミスなしは
>前提であるし、「GHI」や「途中の千日手」といった問題は、出現回数つきの
>状態ツリーではそもそも存在しえない。なぜなら、今議論の出発点としているのは、
>回数まで出現回数まで含んだノードなんだから、「途中で千日手」を経由していないのは、
>出現回数の情報から明らか。
ここ読んだ?
ここが間違ってるの?
0334デフォルトの名無しさん
2007/07/28(土) 17:32:26漏れが意図したのは、探索アルゴリズムの問題による、見かけ状のGHI問題
PDFの2ページ目での説明では、こっちがメインだった
>>332 で書いたように、 完全な探索を行った上でもGHIが生じるのであれば
そっちのGHIは>>325 で書いたGHIには含まれないと解釈してくれ。
少なくとも、漏れが書いた意図としてはそう。
0335デフォルトの名無しさん
2007/07/28(土) 17:35:02岸本さんに言えば出てくるかもしれないとは思うけど、自分では持ってないなぁ。
例えば234の論文の図3「続詰むや詰まざるや」42番が、
GHIを考えなければ間違えちゃうわけだから、
その証明木の中のどこかに(*)が満たされない部分があるということでしょ。
>>332
何かの探索アルゴリズムに起因した問題ではないよ。
「同一駒割の局面が必ずしも同じ局面としては扱えない」という問題の総称が
GHI問題、ということでしょう。
0336デフォルトの名無しさん
2007/07/28(土) 17:45:140337デフォルトの名無しさん
2007/07/28(土) 19:40:47不要だっていう意見の人まだ居る?
0338デフォルトの名無しさん
2007/07/28(土) 19:55:14すまん。
命題:「○○は△△△である」
→真 or 偽
の形で整理してくれないか?
問題がいくつあるのか、結論がなんなのか、結論の出ているもの、出ていないものがよく分からん。
0339名無しさん@そうだ選挙に行こう
2007/07/29(日) 08:20:49そもそも「双方が最善を尽くす」という前提があるので、
「引き分け」でない局面の出現が一回目ではない、というのは、
前提条件を崩しているので議論の余地はないのでは?
0340名無しさん@そうだ選挙に行こう
2007/07/29(日) 09:22:22一見すると、千日手のループであっても、入る場所が異なると
千日手と判定を下すタイミングが異なってくる。
したがって、ある手順では千日手のループの一部であっても、
別の手順で別の入り口から入ると、それが勝ち筋に必要な手順の一部となる。
いままでの議論を注意ぶかく読んで、 >>234 のPDFを見たらたぶん
そういう結論に至ると思うぞ。
0341名無しさん@そうだ選挙に行こう
2007/07/29(日) 09:29:58あと、「最善を尽くす」ために、今すべての状態遷移についての
ツリーを作ろうとしていることも忘れないでくれ ツリーの一本一本は
必ずしも「最善」に絞られて作製しなくてはならないわけではない
0342名無しさん@そうだ選挙に行こう
2007/07/29(日) 10:05:36二度同じ局面が出てきた場合に千日手(引き分け)とするルールを考える
まず最初に、すべての局面の出現回数を含めたツリーを考えるとし、
その出現順序をABCDEFGHの順にならべて、カギ括弧の中に書くとする
あるツリーでは、以下の手順で千日手(今は2手だけど)が成立する
手順1) A[10000000]→B[11000000]→E[11001000]→H[11001001]→E[11002001]
H[11001001]はE[11002001]しか行き先がない。E[11002001]は千日手だから、
後退解析によりH[11001001]は千日手だ。しかし以下のツリーを考えると、
手順2) A[10000000]→C[10100000]→F[10100100]→H[10100101]→E[10101101]→G[10101111]
H[10100101]は明らかに勝ち筋に必要な局面だ。
もしカギ括弧をとっぱらったとすると、手順1)では千日手としか結論づけられない局面Hが、
手順2)では勝ち筋の一部。
したがってGHIがある限り、カギ括弧付きのツリーから、カギ括弧なしへのツリーは、
一意に射影できない。重複した写像のなかから、与えられた局面に対する正解
を選び出すには、結局、なんらかの方法でカギ括弧と同じ情報をツリー検索に
加えないと駄目。これがGHI問題の本質だと漏れは理解している。
0344名無しさん@そうだ選挙に行こう
2007/07/29(日) 10:28:24すべてを検索してしまえって話をしているのだから、
区別する必要はないように思うぞ?それとも釣りかな?
0345名無しさん@そうだ選挙に行こう
2007/07/29(日) 10:56:37じゃあ、言い方を変えます。
そもそも「双方が最善を尽くす」という前提があるので、
「引き分け」でない局面の出現が一回しかないのは明らかなので、
完全解析後のテーブルとしては、すべての局面(手番込み)の
「先手勝ち」「後手勝ち」「引き分け」の状態のみ持てばよいのでは?
ということです。
>自分も状態変数には出現回数が必要だと思ってるけど
当然のことながら、完全解析中のテーブルとしては必要です。
あなたの書き方は、「どのテーブルに、状態変数が必要か」が、あいまいです。
0346名無しさん@そうだ選挙に行こう
2007/07/29(日) 10:59:30探索で考える手順と、実際に指される手順を区別しないと、
千日手の発生状況が異なるから、意味がないっていいたいのか?
それは「カギ括弧無しには一意に射影できない」といっているのと同じだぞ
もちろん実際に指される手順は、括弧付き(括弧の情報を含む)なんだよ。
「括弧無しで議論して、手順1)での探索から、手順2)のHまで千日手と結論づけてはいけない」
といっているんだよ。
おまいさんは、カギ括弧無しで考えていて、手順1)を「探索した手」と呼び、
手順2)を「指された手」と言っているように思うんだが?
0347名無しさん@そうだ選挙に行こう
2007/07/29(日) 11:03:510348名無しさん@そうだ選挙に行こう
2007/07/29(日) 11:05:00>>331の
325が議論していた数え上げ方の言葉で説明するなら、
「aの局面が3回出現している状態でのbの局面は負けだが、
aが2回しか出現していない状態でのbの局面は勝ち」ということがしばしば起きる、
というのがGHI問題。
というのがサッパリわからない
ここで言うaとかbとかってそれぞれ同じ局面なんでしょ?
なんで勝ち負けが変わったりするの?
0349名無しさん@そうだ選挙に行こう
2007/07/29(日) 11:06:40>そもそも「双方が最善を尽くす」という前提があるので、
>「引き分け」でない局面の出現が一回しかないのは明らかなので、
この『「引き分け」でない局面』でいうところの、「局面」は、
今までの全ての局面の出現回数を、情報として持っている?持っていない?
漏れの説明もあいまいだったかも知れんが、そちらの質問もまた漏れには
あいまいにうつってる。悪いが、言葉を補ってくれ。
0350名無しさん@そうだ選挙に行こう
2007/07/29(日) 11:13:55完全解析後のテーブルとしては、持っていません。
ただし、対局である以上「棋譜」が生成されているので、
棋譜を見れば、その対局での「局面」の出現回数は分かります。
0351名無しさん@そうだ選挙に行こう
2007/07/29(日) 11:14:08同一局面が4回現れると引き分けで指し直しになる
引き分けにあえて持ち込むか、勝ちを狙うかという違いが出てくる
0352名無しさん@そうだ選挙に行こう
2007/07/29(日) 11:16:29はじめからCPUなら同一局面はあり得ない(単に手を延長するだけでしかないため)
0353名無しさん@そうだ選挙に行こう
2007/07/29(日) 11:16:40>>339
0354名無しさん@そうだ選挙に行こう
2007/07/29(日) 11:18:58>>339
「人間→CPU」は、対局上「双方が最善を尽くす」ではない。
0355名無しさん@そうだ選挙に行こう
2007/07/29(日) 12:36:08何の意味も無い議論をしてるようにしか見えないのだけど。
0356名無しさん@そうだ選挙に行こう
2007/07/29(日) 14:10:13千日手を巧いこと処理して、1万倍の速度で解析したところで
全然意味ないし、始めから机上の空論なわけですよ。
0357名無しさん@そうだ選挙に行こう
2007/07/29(日) 14:15:140358名無しさん@そうだ選挙に行こう
2007/07/29(日) 14:21:59千日手のルールって結構最近出来たものなんだね
0359名無しさん@そうだ選挙に行こう
2007/07/29(日) 14:44:00理論と現実の区別もついてなかったのか・・・
妙に納得
0360名無しさん@そうだ選挙に行こう
2007/07/29(日) 15:07:08全ての局面を記憶することはできないし
かと言って量子コンピューターで将棋ができる時代の遥か以前に
名人は負けてるでしょうし。彼は何が言いたかったんでしょうね
0361名無しさん@そうだ選挙に行こう
2007/07/29(日) 15:11:2824でR2300ていどのヘタレの意見だから的外れかもしれないけど
同一局面が出てきた場合、そこで千日手か打開かの選択が生まれるってのは
対局中よくある話なんで理解できる
ただ、331は引き分け(千日手)or勝ち(打開)じゃなくって
負けor勝ちというふうになってる
そこが理解できない
0362名無しさん@そうだ選挙に行こう
2007/07/29(日) 15:32:27連続王手の千日手なら引き分けじゃなくて負けになるよ。
0363名無しさん@そうだ選挙に行こう
2007/07/29(日) 16:20:51するどいね。ただ>361 の意見にも一理あって、
>351 に、引き分けも加えるべきだろうね
それと「最後の審判」っていう詰め将棋の問題があるようだ
現在の将棋のルールには不備があって、
必ずしも勝ち・負け・千日手で閉じるわけではない
打ち歩詰めのルールは、やや特例的なものだから、
仮に全部探索したところで、このルールを適用すると、
一部の状態ノードの勝ち負けが重複してしまう
現状の詰め将棋のプログラムに「最後の審判」食わせたら、
ただしく「不定です」って答えるのかな?
0364名無しさん@そうだ選挙に行こう
2007/07/29(日) 19:28:20先手がそれを取って王手をすると千日手になってしまい先手は取れない。
しかしその局面は先手が歩を取れないと、先手玉は歩打ちで詰んでる。
0365364
2007/07/29(日) 19:30:41同一局面が2回しか出ていないなら王手を外せるんだから
0366名無しさん@そうだ選挙に行こう
2007/07/29(日) 19:30:46打ち歩詰めで後手の負け
0367名無しさん@そうだ選挙に行こう
2007/07/29(日) 19:33:470368名無しさん@そうだ選挙に行こう
2007/07/29(日) 19:35:59先手の方から、同一局面への王手を外せるんだから
先手が繰り返す方が悪い
0369名無しさん@そうだ選挙に行こう
2007/07/29(日) 19:45:37麻雀でいう形式テンパイを認めるっていうやつと同じだ
盤面をみただけでは打ち歩詰めではないのだからOKにしようぜ!
0370名無しさん@そうだ選挙に行こう
2007/07/29(日) 20:17:17これ嫁
千日手の定義より、打ち歩詰めの定義の方が優先されている
歩で王手する手は、ルールによれば、打ち歩詰めの規定には当てはまらない
しかし、歩を取る4度目の王手は千日手の規定に当てはまる 後手の勝ちだ
「特に決められた禁手事項」
(将棋世界平成5年1月号付録の'93年版 将棋ルールブック)
3.打ち歩詰
持駒の歩を打って王手をした局面で
王手を解除することが不可能な状態になる時、その歩を打つ手
5.連続王手の千日手
一局中同一局面の最初と4回目の局面の間の
一方の指し手が王手の連続であった時、
王手をした側にとって4回目が出現したときの局面。
0371デフォルトの名無しさん
2007/07/29(日) 20:55:460372デフォルトの名無しさん
2007/07/29(日) 22:10:18想定外な状況に対処するために後付けルールを足して複雑になって来ている訳か
まるでこれは
0373デフォルトの名無しさん
2007/07/29(日) 23:46:5300374デフォルトの名無しさん
2007/07/30(月) 00:03:110375デフォルトの名無しさん
2007/07/30(月) 00:05:43⊂⌒( ・ω・) はいはいわろすわろす
`ヽ_っ⌒/⌒c
⌒ ⌒
0376デフォルトの名無しさん
2007/07/30(月) 02:02:41ああ、やっと言いたいことが解った。
お互いが最善手を尽くせば、同一局面は二度あらわれないってのが
間違いだと思うぞ。それだと千日手に陥る局面というのはそもそも存在しない。
実際には、千日手ルールを無視した最善手だと千日手になってしまう局面が、
詰め将棋にあって今それを議論している。そして千日手は避けないといけないから、
それを効率よくコンピュータで処理する方法はどうかって話。
初期局面からの完全解析は当然無理だが、これは詰め将棋の問題を内包するし、
詰め将棋を適切に解く技術は、将棋のプログラム開発に必要
千日手になるタイミング云々の話は、そうしたことは当然わかっているものとして、
答えたんだよ
0377デフォルトの名無しさん
2007/07/30(月) 02:19:16いずれにせよプログラム開発の段階では、各ノードの結論として、
「先手勝ち」「後手勝ち」「千日手」に加え、「先手打ち歩詰め」と
「後手打ち歩詰め」を考慮しないと駄目だろうね。
0378180
2007/07/30(月) 02:34:52私のこの問題に関する(このスレでの)これまでの発言は
>180 >183 >185 >191 >199 >203 >211 >218 >223 >228 >233
>242 >248 >260 >263 >268 >275 >282 >284 >291 >312 >317
>322
言いたい事はこれがほぼ全てなのでそこから判断してください。
ちなみに「例え将棋の神様であっても……分からない」と言う意味は
人間、あるいは何も考えてないプレーヤー(機械を含む)が指した
将棋を途中から将棋の神様が引き継いだとしたら、それまでに
どの局面が何回現われたかと言う情報なしに指し継いだのでは
最善手が何か決められないし、千日手かどうかの判断もできない
と言う事です。
なぜなら、元々の話題が将棋の神様同士が対局した場合に現われる
局面だけではなく、理論上考えられるあらゆる局面に対して「勝ち」
「負け」「引き分け」の結論を出そうと言う話なのでそういうふうに
解釈したと言う事です。
0379デフォルトの名無しさん
2007/07/30(月) 02:41:23その千日手ループにいつ突入したかで替わってくる。千日手判定が下る瞬間が違うんだから。
出現回数を保持していない局面のみの情報では、それが「引き分け」かどうか解らない
だから、
>「引き分け」でない局面の出現が一回しかないのは明らかなので、
> 完全解析後のテーブルとしては、すべての局面(手番込み)の
上記の「『引き分け』ではい局面」の、「局面」には出現回数を含ませる必要があって、
それなしには「引き分け」かどうか解らず、そして出現回数によって結果が違っているから、
出現回数の情報を単純にとっぱらうことは出来ない
おまいさんの言っている「解析中のテーブル」を「括弧付きのテーブル」、
「解析後のテーブル」を「括弧なしのテーブル」と読み替えて、>>340, 342 を見てくれ
それと>350で
1)「完全解析後のテーブルとしては持っていません」
2) 「ただし対局である以上「棋譜」が生成されているので、
棋譜を見れば、その対局での「局面」の出現回数は分かります。 」
棋譜の情報を保持していれば、出現回数が解るので、1)と2)は両立しないよ
もし仮に2)が実際の対局を想定していっているのであっても、
参照先である「完全解析後のテーブル」が、1)によって情報を失っているので、
付き合わせることは出来ない。ないのと一緒だ
0380デフォルトの名無しさん
2007/07/30(月) 02:51:140381デフォルトの名無しさん
2007/07/30(月) 02:54:22あんまし気にしない方がいいと思うよ、ここ2chだし
ちなみに量子コンピュータ関係で言うとね、まるで量子コンピュータが完成すれば
今コンピュータで扱っている問題がすべて並列に瞬間的に解けるとする
言説がまかり通っているけど、それは勉強不足
量子コンピュータでは、解きたい問題ごとにアルゴリズムを考える必要がある
自分の知る限り、Shor, Grover以外に、パッとする実用的な話はないのが現状
量子コンピュータで、例えば3x3オセロでも解くアルゴリムを作ったら
そりゃ後世に名を残す、いい仕事になると思う
だから仮に量子コンピュータデバイスが実現したとしても、
それを使って将棋を解くアルゴリズムが見つからない状況になると思うぞ
将棋は人間が作ったゲームだから、問題設定が非常に複雑だ
0382180
2007/07/30(月) 03:10:50お話しますと局面と指し手の組の集合が3種類あります。
(細かく分けると4種類)
O(1):将棋の神様同士がお互いに最善手を指し合った場合の集合
O(2):将棋の神様が勝てる側(先手必勝なら先手、後手必勝なら後手)を
持って相手があらゆる手を指して来た場合に対応して勝つ手の集合。
結論が引き分けなら相手があらゆる手を指して来た場合に
悪くとも引き分けに持ち込む(相手がミスをすれば勝つ)手の集合。
O(3):ルール上許されるあらゆる手で初期局面からたどり着ける局面
及び指し手の集合(局面は指し手によりメッシュ状に連結される)
明らかにO(2)はO(3)の真部分集合であり、O(1)はO(2)の真部分集合です。
さらに
O(3)':ルール上許されるあらゆる手で初期局面からたどり着ける局面
をそこに至る手順で区別したもの及びそこからの指し手の集合
(局面と指し手は木構造で表現できる)
これまでこのスレで問題となっているのは「勝ち」「負け」「引き分け」の
区別を局面にラベル付けするにはO(3)の中で話しが閉じるのか、あるいは
O(3)'の集合に移行しなければならないのかと言う事ですよね。
私はGHI問題が存在するために局面を探索する途中のみならず、
その結果を保持するためにもO(3)'の集合上で表現しなければならない
(でなければ必要な情報が欠落する)と考えているわけです。
0383デフォルトの名無しさん
2007/07/30(月) 03:26:022のN乗局面調べればいい
0384180
2007/07/30(月) 03:31:22いえ、私はほとんどたった一人の人を相手に話をしているつもりなのです。
それは将棋板の「将棋って数学に似てるの?」スレ
http://game12.2ch.net/test/read.cgi/bgame/1136526660/
で私とずっと議論を戦わせてた人(276)。この人に納得してもらいたい。
ちなみに私はそのスレで281の発言をした者です。
で、>359-360及びこのスレの>206他はその人の発言なんじゃないかな?と
もし違っていたらゴメンナサイ、誤ります。
0385デフォルトの名無しさん
2007/07/30(月) 03:44:29可能な局面(N個とする) ごとに、3回訪れたかどうかの情報を持ち、かつ
局面データがあれば完全にとけているんだ 意味わかるか?
これ以上のことはないだろが どこが不満だ?
道筋は全く関係ない
まずは、初手からならば局面だけ持っていればいいことは判っているのか??
0386デフォルトの名無しさん
2007/07/30(月) 04:08:11私も解析対象の局面に至る手順の情報全てを保持しなければならないとは
思ってません。ある程度(かなり?)、圧縮は効くでしょう。
ただ、実際に解析する際の手順としてはO(3)'上でゲーム木を展開するのが
いちばんシンプルで分かりやすいと思います。探索すべき局面は増えますが。
また初手から神プレーヤー同士が対戦するならば純粋な局面情報のみ保持
すれば良い、即ちO(1)上の結果にGHI問題が発生しないのは分かります。
まだ、いまいち良く分からないのはO(2)上の結果もそうなのか?
こちらの結果も経路により区別する必要は無いのか?と言う事です。
0387デフォルトの名無しさん
2007/07/30(月) 04:15:33ごめんね。
>>359は、>>355-357に対して、>>180をみれば「理論」の
話をしているのは分かるのに、「理論」だからこそ、
みんな付き合っているのに、「実行不可能」とか言い出すから、
いまさらそんなことを言うやつが出てくるのか、といった
意味合いの発言でした。
>>180に言ったわけではないです。
>妙に納得
は、
>>170と同じようなニュアンス。
ちなみに
> 人間、あるいは何も考えてないプレーヤー(機械を含む)が指した
> 将棋を途中から将棋の神様が引き継いだとしたら、それまでに
> どの局面が何回現われたかと言う情報なしに指し継いだのでは
この情報とやらは、棋譜で十分では?
それと、無責任なことはするなよ?
と思わなくもないのですが。
0388378
2007/07/30(月) 04:25:19ああ、そういう意味でしたか。それはこちらこそ失礼致しました。
引き継ぐべき情報はもちろん棋譜で十分ですね。
無責任な行為かも知れませんが、任意の局面に結論を出すためには
そのような仮定が必要になると思います。
0389デフォルトの名無しさん
2007/07/30(月) 04:33:22またまた、ごめん。
>それと、無責任なことはするなよ?
は、>>378に言ったのではなく、話の内容で、対局を引き継ぐのに
「千日手になるかならないかの瀬戸際で交代するなよ。せめて二回目の
局面で交代してやれよ。」と言う意味でした。
他の人もそう思ったかな?
0390デフォルトの名無しさん
2007/07/30(月) 04:52:43ちなみに
> 引き継ぐべき情報はもちろん棋譜で十分ですね。
とのことですので、>>379と意見が異なると言うことですよね?
>>379は、まったく、困ったもんですよね。
0391デフォルトの名無しさん
2007/07/30(月) 12:46:16>>217を、もう一度よく読んでみてください。
よく読むとわかると思うのですが、初期局面の駒配置については、
何の言及もされていないのです。
これは、「初期局面として、任意の局面を指定可能」という事でしょう。
上での議論は、「理論上考えられるあらゆる局面」を十分含んでいるので
心配しないでください。
0392デフォルトの名無しさん
2007/07/30(月) 13:04:15当然そんなことは出来ないし意味が無いから勝敗に関係の有る部分だけ解析すればいいだけであって、
人間相手に最強を目指すなら同じ局面が何度来ようがその時に可能なベストの手を打ち続ければいいはず、
結果的にそれが千日手になっても将棋のルールに不備がある部分に達しても負けはしない。
0393デフォルトの名無しさん
2007/07/30(月) 13:09:16それが何か?
0394デフォルトの名無しさん
2007/07/30(月) 18:44:34その通りで、量子コンピュータが実現すれば既存のコンピュータで難しい問題が
なんでも一瞬で解けるようになると思っている人間がいるから困る。
量子アルゴリズムがあって初めて高速な計算が可能になる。
ゲーム木の探索なんて量子アルゴリズムとは相容れないだろう。
0395デフォルトの名無しさん
2007/07/30(月) 23:41:16あなたは、>>345、>>350の内容を全然理解していないことがわかりました。
基本的に、話の発端である>>165と同じことを言っているんですよ?
あと、詰め将棋のルールと、指し将棋のルールが違うことを知っていますか?
ルールが違えば、検索方針も違うんですけど?
>>180の方は、
>引き継ぐべき情報はもちろん棋譜で十分ですね。
と納得したようですが、あなたは理解できましたか?
0396デフォルトの名無しさん
2007/08/02(木) 14:41:33>量子アルゴリズムがあって初めて高速な計算が可能になる。
高速な計算とは言わないだろ、手順を経て組み立てる計算なら高速であるが
局所的な超同時な仕組みでは計算しているというより状態の合成をしている
に過ぎないよな。
そもそも計算は「計って」、「数を算する」ことであて量子コンでは
計ってもないし、数も扱っていない。
量子コンピュータで致命的なものはソフトウエア、つまりプログラムの
仕組みが存在しないことだよな。
超同時演算にソフトウエアが存在したら、それが足を引っ張り
早いどころか亀速度になるw
量子コンピュータが学者の間で注目されないのは、ハードウエアとして
存在しなければいけないという前提があるからだろ。
電子回路な計算機で、ソフトウエアなしの計算機では利用価値などない。
「ソフトウエア」がどれだけ重要な発明であるか理解しておいたほうがいい。
0397デフォルトの名無しさん
2007/08/02(木) 14:48:22>将棋の完全解析って言うのは初手から終局までのすべての手筋を網羅した地図を作ることだろ?
「巡廻セールスマン問題」で完全解析を行ったというような話と同じだよな。
最適解だと証明したようなことを言う奴はいるが、結局は抜けが発生する。
類似問題を全数を判断せずに証明したと言い張るDQNがいるが、
科学では仮説と実証だけでは、科学ではない。
仮説→実証→複数の反証で多面的に検証できなければ証明したことにはならない。
原理を解明したとか信じるヴァカも多いよな。まさしく宗教の域。
0398デフォルトの名無しさん
2007/08/02(木) 20:57:04禿げしく胴衣
0399デフォルトの名無しさん
2007/08/03(金) 00:24:09別にソフトウエア無でも超高速なデータベースとして機能すれば十分だろ
大体、計算機という翻訳語が変で、コンピューターは演算する機械だよ
つまり状態の合成をしているだけなんだがw
0400デフォルトの名無しさん
2007/08/03(金) 00:50:10量子コンピューターに対してどんだけ無学なんだよ、中学生か?
0401デフォルトの名無しさん
2007/08/03(金) 00:54:270402デフォルトの名無しさん
2007/08/03(金) 02:25:22即ちチューリングマシンが構成できるし、メモリーだって作れるので
原理的に現代のノイマン型コンピュータで可能な事はなんでもできる。
ただ量子エンタングルメントを利用した長いキュービットによる
超並列演算をしないと、現代のコンピュータより圧倒的には
速くならないと言うだけで。
長いエンタングルメントしたキュービットの列で
特殊用途の専用アキュムレータ(と専用アルゴリズム用特殊ハードウェア)を
構成して今のノイマン型コンビュータアーキテクチャの一部として
埋め込む事も出来るんじゃないかな?
周りのノイマン型の部分は既存のデバイスでも量子デバイスでも良いだろうし。
いずれにしろ、まだろくに存在していないものを
あれが出来てこれが出来ないと言うのは早計じゃないか?
アルゴリズムが無ければキュービットアキュムレータが働かない
(超並列演算が出来ない)のはその通りだろうが。
0403デフォルトの名無しさん
2007/08/05(日) 02:01:57それではチューリングマシンであって、量子コンピュータではないだろ
頭変になったのか?
0404デフォルトの名無しさん
2007/08/05(日) 02:24:090405デフォルトの名無しさん
2007/08/07(火) 00:34:50あたま悪そうだな。チューリングマシンの手順式手法に戻るのなら
従来技術に激しく勝てず、量子の意味すらなくなる。
手順式は手順を超える演算はできないんだよ。
量子チューリングマシンでは量子コンピュータが得意とする因数分解が
出来なくなるw
これでは古典的コンピュータの因数分解専用の演算回路に下った
たんなる量子トランジスタレベルだろう。
仕組みを手順通り行うという概念の壁が越えられないからこそ
古典的コンピュータには性能の限界があることすら知らないようだなw
0406デフォルトの名無しさん
2007/08/07(火) 04:20:58量子チューリングマシンは古典的(決定論的)チューリングマシンとは
その動作原理自体が異なる。
決定論的チューリングマシンのアルゴリズムは量子チューリングマシン上では
(そのままでは)使えないだろうが、むしろ使う必要が無いとも言える。
参考:
http://results.atr.jp/atrj/ATRJ_25/08/main.html
0407デフォルトの名無しさん
2007/08/07(火) 17:57:47あたま悪いな。論理手順が存在する限る原理が異なろうが
手順を省略できないわけだ。手順が省略できなければ順番に実行する
以外ありえないわけ。勉強になった?
0408デフォルトの名無しさん
2007/08/07(火) 18:00:07そもそもチューリングマシンは命令語を受け取りそれを手順どおり実行する
タイプだろ。電送時間が存在しれば遅延する。
これでは古典的コンピュータが速度を上げられない理由と同じで
電送経路があるかぎり従来技術にはコスト的についてこれない。
つまり永久に開発されない。
0409デフォルトの名無しさん
2007/08/07(火) 19:36:23全て保持しながら、なおかつ量子コンピュータ固有の機能も持っている。
量子ゲートに与えるデータ次第でどちらの働き方もできる。
量子チューリングマシンは計算可能性と言う点で
古典的チューリングマシンと全く同等であるが、
問題によっては(まさに)桁違いの計算能力を発揮する。
0410デフォルトの名無しさん
2007/08/07(火) 19:46:16振れるようなネタはないのだけど。
0411デフォルトの名無しさん
2007/08/07(火) 20:07:00Lispで将棋ブログラミングしたいと思っててまだ始めてないし。
と言うか、Schemeで書くべきかCommon Lispで
始めるべきかで早くも悩んでるしw。
0412デフォルトの名無しさん
2007/08/07(火) 22:14:26これが量子チューリングマシンで実現できればメチャ嬉しいのだが
0413デフォルトの名無しさん
2007/08/07(火) 23:54:060414デフォルトの名無しさん
2007/08/08(水) 17:16:07激しく達し得ないというのでFA。
まあマヌケ君はできないことを誇張するのが得意だから、またデンパするんだろう
0415宮本
2007/08/08(水) 17:37:03URLに「宮本定跡が激指5に使われている」とありますが、本当でしょうか。
事実なら「激指6」ではどうなっているのでしょうか。
なるべく詳しい事情を知りたく思います。
0416デフォルトの名無しさん
2007/08/08(水) 19:39:38誰が正しいかでは無くて真実は何なのかを知ろうとする方が有益だぞ。
0417デフォルトの名無しさん
2007/08/09(木) 07:09:580418デフォルトの名無しさん
2007/08/09(木) 12:43:22まるで縦割行政が好きな役人か自分の専門分野にコモッテル蛸壷学者だ。
そういう考え方からは学際領域にある分野が発展する事は決してあり得ない。
0419デフォルトの名無しさん
2007/08/09(木) 14:02:16光コンピュータなどに関するスレを新たに立てた方が
良いかとも思ったが、どの板に立てたら良いのか良く分からん。
それとも既にどこかにあるのかな?
0420デフォルトの名無しさん
2007/08/09(木) 14:27:17http://science6.2ch.net/test/read.cgi/sci/1171629018/
過疎ってるな
0421デフォルトの名無しさん
2007/08/09(木) 18:16:55お前がスレ違いだろ。別に学問を発展させようなんて思ってない
0422デフォルトの名無しさん
2007/08/09(木) 18:37:44お前こそ将棋のプログラマじゃないだろ
0423デフォルトの名無しさん
2007/08/09(木) 22:19:33物理板か。
しかも寂れていると言うか荒れているようだな。
計算理論やアルゴリズム論、計算量理論から見た
量子コンピュータ スレがあっても良い気もするな。
0424デフォルトの名無しさん
2007/08/09(木) 22:41:47いないだろ。
0425デフォルトの名無しさん
2007/08/09(木) 23:54:00どちらにしても量子コンピューターシュミレーターってあるらしいけど一般公開して無いだろ、動かすのにたぶんスパコン必須?
0426デフォルトの名無しさん
2007/08/11(土) 08:39:18激指 定跡道場
商品紹介
2005年世界コンピュータ将棋選手権で全勝優勝を飾った「激指」のシリーズ最新作。
序盤戦術を体系立てて学習できるモードを搭載、最強の思考エンジンに加えて学習補助機能が充実しました。
定跡講座は所司和晴七段が全面協力、プロ将棋の最先端を無理なく身につけることが出来ます。
0427デフォルトの名無しさん
2007/08/11(土) 23:40:570428デフォルトの名無しさん
2007/08/12(日) 13:28:160429デフォルトの名無しさん
2007/08/12(日) 22:26:06傘も差さずにレンガの階段にもたれていると
遠い町明かりがいくつも輝いては滲んで行きます。
あの人はガードレールをのりこえて空の向こうに何を見たかったのでしょうか。
あの人が星になったなんて嘘ですよね?
0430デフォルトの名無しさん
2007/08/13(月) 00:30:190431デフォルトの名無しさん
2007/08/13(月) 17:17:58我々は重要な事を見逃していたようだ、
このポエムの中に封印された古代の将棋の英知が詰まっているのだよ!!(AA略)
0432デフォルトの名無しさん
2007/08/14(火) 12:04:06スレ違いだよ、キミのような量子ウンコは
0433デフォルトの名無しさん
2007/08/14(火) 12:40:05リョウコ信者w
最近の厨はググって出てこないと何も調べられないのか
0434デフォルトの名無しさん
2007/08/14(火) 22:09:550435デフォルトの名無しさん
2007/08/14(火) 22:38:580436デフォルトの名無しさん
2007/08/15(水) 10:35:390437デフォルトの名無しさん
2007/09/10(月) 08:35:420438デフォルトの名無しさん
2007/09/14(金) 10:29:21強引にすると思考レベル最低でも強引に攻め込んでくる。
ずっとこういうの待ってたんだよな。重みのさじ加減弄るだけで
技術的にはなんも難しくないのになぜ今までなかったのかが不思議なくらいだ。
全AIにこのオプションをつけてくれ。
0439デフォルトの名無しさん
2007/09/14(金) 17:19:50B-TRONの体験版・・・(超漢字のご先祖)
1B/V3体験版のご案内
http://www.personal-media.co.jp/tron/1bv3_taiken.html
ftp://ftp.personal-media.co.jp/pub/1b/p971212.exe
1BV3体験版
http://tat.soga.in/btron/modules/bwiki/index.php?OS%2F1BV3%C2%CE%B8%B3%C8%C7
「超漢字」を体験させてほしい
http://homepage1.nifty.com/isdknit/_tqFOnLE.html
オープンギャラリー:1B/V3の環境
http://www.ne.jp/asahi/open/gallery/1bv3/1bv3.htm
オープンギャラリー:プラットフォームコーナ
http://www.ne.jp/asahi/open/gallery/platform.htm
0440デフォルトの名無しさん
2007/09/18(火) 10:52:040441デフォルトの名無しさん
2007/09/18(火) 18:49:110442デフォルトの名無しさん
2007/09/19(水) 10:05:020443デフォルトの名無しさん
2007/09/19(水) 17:25:23評価関数における評価項目のつけ方まとめてもらえませんか
0444デフォルトの名無しさん
2007/09/19(水) 19:32:30・駒割
・王将8近傍の敵・味方の利きの数
・王将との相対位置による評価
って感じの情報でいいのか?
0445デフォルトの名無しさん
2007/09/19(水) 19:56:23終盤は駒得より完全に玉の安全度だね。
0447デフォルトの名無しさん
2007/09/19(水) 20:58:55序盤は駒得や囲いが重要だけど、終盤は王将の安全度の方が重要だろうし・・・
大雑把な方針としては、試行錯誤して最適な重み・設定を見つけるか、学習で何とかするかの二択じゃないかな。
自分の棋力とかコンピュータ将棋にかけれる時間と相談しながら決めてくれい。
0448デフォルトの名無しさん
2007/09/19(水) 21:34:35分かりました!がんばります!!
0449デフォルトの名無しさん
2007/09/25(火) 12:35:310450デフォルトの名無しさん
2007/09/26(水) 03:26:240451デフォルトの名無しさん
2007/09/26(水) 04:25:070452デフォルトの名無しさん
2007/09/26(水) 15:40:340453デフォルトの名無しさん
2007/09/26(水) 15:53:490454デフォルトの名無しさん
2007/09/27(木) 10:12:060455デフォルトの名無しさん
2007/10/01(月) 11:07:000456デフォルトの名無しさん
2007/10/01(月) 19:46:050457デフォルトの名無しさん
2007/10/02(火) 20:38:46http://game12.2ch.net/test/read.cgi/gamestones/1191324848/
[人工知能]"Crazy Stone"@モンテカルロ法
http://game12.2ch.net/test/read.cgi/bgame/1190942764/
0458デフォルトの名無しさん
2007/10/03(水) 01:23:13> 非常に簡単に並行処理ができるので、
> 新世代プロセッサーのマルチコア構造を活用できる。
0459デフォルトの名無しさん
2007/10/03(水) 09:36:05それとともに使われて成果を上げているUCT(だっけ?)
とか言う探索アルゴリズムは並列化しにくいらしいよ。
0460おおおおおおおおおおお
2007/10/03(水) 11:17:540461デフォルトの名無しさん
2007/10/03(水) 19:13:43チェッカーや6x6オセロで言う「全探索」や「完全解明」は
ゲーム開始時の局面から始めた場合の話だよね。
合法な任意の局面からというのは解かれていない。
でも、このスレを見てきたところ、
将棋では任意の局面からの場合を考える人が結構いる。
任意の局面から始められるものとして詰将棋があるからかな。
何だか文化の違いのようなものを感じたので感想を書いた。
チラ裏ですまん。
0462デフォルトの名無しさん
2007/10/03(水) 20:59:46見直してその有効範囲を確認する必要がある。
0463デフォルトの名無しさん
2007/10/03(水) 22:49:49バカですか?
0464デフォルトの名無しさん
2007/10/03(水) 22:55:12触れるな
0465デフォルトの名無しさん
2007/10/08(月) 12:44:080466デフォルトの名無しさん
2007/10/10(水) 22:04:460467デフォルトの名無しさん
2007/10/11(木) 10:13:580468デフォルトの名無しさん
2007/10/12(金) 01:14:43俺もツンデレとは違うとおもた。
0469デフォルトの名無しさん
2007/10/12(金) 21:41:58誰か出る?
0470デフォルトの名無しさん
2007/10/13(土) 01:27:58準備期間短すぎ
0471デフォルトの名無しさん
2007/10/13(土) 08:55:01あれどうなったんだろう?
0472デフォルトの名無しさん
2007/10/13(土) 11:31:33http://www.geocities.co.jp/Playtown-Spade/8662/
電通大ではまったく無視しているようだけど。
http://minerva.cs.uec.ac.jp/~uec55/
0473デフォルトの名無しさん
2007/10/13(土) 14:03:05無視してるのか、一応話しは通してあるのか見ただけじゃ分からんだろ?
0474デフォルトの名無しさん
2007/10/13(土) 14:28:20普通話を通すと言うことは、断り書きを入れる方向で落ち着くもんだ。
断り書きもなしに無条件に許可するようならば、森田将棋に噛み付く筈も無かろう。
0475デフォルトの名無しさん
2007/10/13(土) 14:31:10ルールの記述文をぱくらない限り問題ないよ
0476デフォルトの名無しさん
2007/10/13(土) 14:49:03ttp://524.teacup.com/yss/bbs?M=ORM&CID=1088&BD=3&CH=5
マジですか?!って感じだねえ、ほんとならやばくて手が出せないっつうか出したくないw
ココはひとつチャネラーで新しいミニ将棋ルールー作ろうぜ
0477デフォルトの名無しさん
2007/10/13(土) 15:45:27駒の種類も本将棋と変わんない。けどちょっと大きいかな。
7 6 5 4 3 2 1
┌──┬──┬──┬──┬──┬──┬──┐
│▽桂│▽飛│▽銀│▽玉│▽金│▽角│▽香│一
├──┼──┼──┼──┼──┼──┼──┤
│▽歩│▽歩│▽歩│▽歩│▽歩│▽歩│▽歩│二
├──┼──┼──┼──┼──┼──┼──┤
│__│__│__│__│__│__│__│三
├──┼──┼──┼──┼──┼──┼──┤
│__│__│__│__│__│__│__│四
├──┼──┼──┼──┼──┼──┼──┤
│__│__│__│__│__│__│__│五
├──┼──┼──┼──┼──┼──┼──┤
│▲歩│▲歩│▲歩│▲歩│▲歩│▲歩│▲歩│六
├──┼──┼──┼──┼──┼──┼──┤
│▲香│▲角│▲金│▲玉│▲銀│▲飛│▲桂│七
└──┴──┴──┴──┴──┴──┴──┘
0478477
2007/10/13(土) 17:51:08で7七将棋のルール案を。
1.相手陣は「三段分」
※桂馬の成・不成の選択を残したい
2.味方玉が相手陣の一段目に到達すれば、相手玉を詰まさなくても「勝ち」
※参考:トライルール
3.千日手はどんな場合でも4回目の同一局面を出現させたほうが「負け」にしたいけど、
棋譜をきちんと取らないと判断しづらいから難しいかな
0479デフォルトの名無しさん
2007/10/13(土) 20:52:27┌──┬──┬──┬──┐
│▽香│▽桂│▽王│▽銀│一
├──┼──┼──┼──┤
│▽歩│▽歩│▽歩│▽銀│二
├──┼──┼──┼──┤
│__│__│__│▽歩│三
├──┼──┼──┼──┤
│▲歩│__│__│__│四
├──┼──┼──┼──┤
│▲銀│▲歩│▲歩│▲歩│五
├──┼──┼──┼──┤
│▲銀│▲玉│▲桂│▲香│六
└──┴──┴──┴──┘
これどうよ、評価よろしく
0480デフォルトの名無しさん
2007/10/13(土) 21:05:40大駒がないのと、銀があって金がないのが気になった。
0481デフォルトの名無しさん
2007/10/13(土) 21:10:20大ゴマは盤面が狭いのでこの際無くていいだろうという判断
金は、ほしけりゃ敵陣に乗り込んでひとはた揚げて帰って来いということでゲーム性を面白くするためわざと無くしました
0482デフォルトの名無しさん
2007/10/13(土) 21:57:470483デフォルトの名無しさん
2007/10/13(土) 22:00:19たぶんすぐ解明されそう。
0484デフォルトの名無しさん
2007/10/13(土) 22:01:480485デフォルトの名無しさん
2007/10/13(土) 22:09:27解明されたら告ぎ考えるから是非解明してくれ
0486デフォルトの名無しさん
2007/10/14(日) 00:54:30将棋板から拾ってきた
あっちにはこいつの対局スレがあるぞ
6 5 4 3 2 1
┌──┬──┬──┬──┬──┬──┐
│▽飛│▽桂│▽銀│▽王│▽金│▽角│ 一
├──┼──┼──┼──┼──┼──┤
│▽歩│▽歩│▽歩│▽歩│▽歩│▽歩│ 二
├──┼──┼──┼──┼──┼──┤
│__│__│__│__│__│__│ 三
├──┼──┼──┼──┼──┼──┤
│__│__│__│__│__│__| 四
├──┼──┼──┼──┼──┼──┤
│▲歩│▲歩│▲歩│▲歩│▲歩│▲歩│ 五
├──┼──┼──┼──┼──┼──┤
│▲角│▲金│▲玉│▲銀│▲桂│▲飛│ 六
└──┴──┴──┴──┴──┴──┘
0487デフォルトの名無しさん
2007/10/15(月) 13:57:040488デフォルトの名無しさん
2007/10/15(月) 15:25:050489デフォルトの名無しさん
2007/10/16(火) 23:25:27香車がいないのはさびしいな。
0490デフォルトの名無しさん
2007/10/17(水) 00:09:51どうせ盤面は狭いんだし
代わりに酔象を入れようや
裏は太子で
6 5 4 3 2 1
┌──┬──┬──┬──┬──┬──┐
│▽銀│▽金│▽象│▽王│▽金│▽銀│ 一
├──┼──┼──┼──┼──┼──┤
│▽歩│▽歩│▽歩│▽歩│▽歩│▽歩│ 二
├──┼──┼──┼──┼──┼──┤
│__│__│__│__│__│__│ 三
├──┼──┼──┼──┼──┼──┤
│__│__│__│__│__│__| 四
├──┼──┼──┼──┼──┼──┤
│▲歩│▲歩│▲歩│▲歩│▲歩│▲歩│ 五
├──┼──┼──┼──┼──┼──┤
│▲銀│▲金│▲玉│▲象│▲金│▲銀│ 六
└──┴──┴──┴──┴──┴──┘
0491デフォルトの名無しさん
2007/10/21(日) 23:05:060492デフォルトの名無しさん
2007/10/21(日) 23:25:440493デフォルトの名無しさん
2007/10/22(月) 08:48:58勝負というのは先の読み合いで、決定されたものではないだろ。
つまり先が読めないからこそ勝負なわけであって、
相手の行動を予測し、相手に勝つのではなく相手に負けてもらうのが筋ってものさ。
眼力の無いやつは空気読めないから計算、つまり理屈だけで勝とうとする
理屈だけな奴ほど勝つのは楽なことを知っていた方がいい。
理屈な行動は、相手からは完全に予測される行動だからだ。
勝ち手を譲れば、100%の確率で勝ち手を奪うのが理屈というもの。
それがフェイクだと気がつかなければ相手の負けは決まる。
0494デフォルトの名無しさん
2007/10/22(月) 13:52:070495デフォルトの名無しさん
2007/10/22(月) 14:20:17とっくの昔から糞スレだボケ。
0496デフォルトの名無しさん
2007/10/22(月) 17:20:260497デフォルトの名無しさん
2007/10/22(月) 18:19:15いや、言ってる事はよくわからんがとにかく麻雀やポーカーのスレじゃないからここ
0498デフォルトの名無しさん
2007/10/22(月) 19:34:121、放置すれば相手王に必死を掛けられる。
相手が詰みに気付かなければ勝ち。
2、受けると長引くがジリ貧。
こういう場合コンピューターだと2を選んだり、
持ち駒使い果たすまで王手掛けたりすることが多いわな。
com同士だと意味ないだろうけど、人間同士だと1が有効なことが有る。
0499デフォルトの名無しさん
2007/10/22(月) 22:31:43それを実現するには自分の読みと相手の読み及び評価関数を区別して扱う
「相手モデル探索」が必須だな。
で相手が人間かコンピューターか、どれくらいの棋力かに応じて使い分ける。
0500デフォルトの名無しさん
2007/10/22(月) 22:38:020501デフォルトの名無しさん
2007/10/22(月) 22:47:56結局、相手の思考を予測するってのは、自分の思考に自信が無い時の小手先の対策なんじゃね?
0502デフォルトの名無しさん
2007/10/22(月) 23:21:25相手のアルゴリズムを読んだとしても、その相手はこっちを騙すためにわざと気付かないふりをして
弱く見せかけているのかもしれないぞ
相手を見て判断するのは対人戦での面白さを出すには重要なとこではあるけどさ
0503デフォルトの名無しさん
2007/10/23(火) 00:00:10人間のトッププロにはなかなか勝てない(全体的な実力では上回れない)
からこそ、そういう戦略に価値があるのでは?
例えばコンピュータ将棋は詰みのある局面でそれを発見するのが
やたら速いが、相手(人間)もそうだと仮定していたらその利点は
あまりうまく生かせずに>498の挙げたような状況に陥るかも知れない。
詰みを正確に速く見つける能力がむしろ弱みになってしまう。
>502
特定の相手の指し方を事前にじっくり研究していたらどうかな?
たとえば対渡辺竜王を想定して。
ディープブルーも実はカスパロフの指し手を事前にたっぷり研究して
相手の指し方のモデルを持ってたと言う話だし。
0504デフォルトの名無しさん
2007/10/23(火) 00:08:06個人的には、そういう方向性が好きなのだが、
こと「プロに勝つ」という目的においては、>>500が正しいと思う。
というか>>503の方法でプロに勝つには、とてつもないプログラム技術と
ハードウエア能力が必要になって現実的でない。
プロに勝つというのは、ほっといても100年後には達成できるけど、
楽しめる、指導してくれる、というコンピュータ将棋が今後の課題やね。
0505デフォルトの名無しさん
2007/10/23(火) 00:25:15その考えが甘いとしたら。
つまりコンピュータが人間のトッププロより圧倒的に強くなると言う事は
相手がどんな指し手で来てもそれに対して正しく応手できると言う事だが
将棋と言うゲームがそう御しやすいもので無いとしたら厄介だぞ。
その可能性は多いにある……と俺は思う。
それよりは対戦相手のモデルを持っておいて相手の思考の癖(隙)を突いて
序盤からジワジワ優位を築いて行く方がまだ望みがありそうに思える。
確かにセコイ方法だけどなw。
0506デフォルトの名無しさん
2007/10/23(火) 00:57:32確かに俺の考えが絶対に正しいとは言えないが、
相手モデルとかでプロに勝てるなどというのは
とんでもなく甘い考えだと思う。
>>505がセコイ方法だとは全く思わない。
実現できたら本当に素晴らしいが、実現が難しすぎる。
0507デフォルトの名無しさん
2007/10/23(火) 02:07:42これらを効率よくメモリに記録するにはどうしたらいいですか?
0508デフォルトの名無しさん
2007/10/23(火) 02:08:360509デフォルトの名無しさん
2007/10/23(火) 03:07:52短時間の勝負ほどコンピュータ有利であることを考えて
時間攻めがいいんじゃないかな?
極端な例だと、80台パソコンを連結して並列に先読みさせる。
可能な相手の指し手が80ある局面なら、人間の思考時間に全部考えて、
ほぼノータイムで指すこともできるはず。
そうされると持ち時間2時間でも、正味1時間位に感じるんじゃないかと。
あるいは、"少しよくなるけど局面を単純化する手"より
"よくもわるくもならないけど局面を複雑化する手"を優先する方針にする。
そうすると選択肢が多くなり、人間側の読み筋から外れる率が高くなる。
人間の場合かなり前から現在の局面のことを考えているので、
先読みを空振りさせた場合の負担は、コンピュータよりずっと重いはず。
一から考え直すことになって、かなり苦しくなるじゃないかな。
0510デフォルトの名無しさん
2007/10/23(火) 10:16:44また、ボナンザは人間なら早期に枝刈りしてしまう手を指すこともあったので
読みを空振りさせるという点でもそれなりにできていた。
80台のパソコンというリソースがあるなら、普通にやらせても強くなるから
下手な小細工では意味がないということになると思う。
いや、、アイデアを否定してばかりであれだが、
実際そういうアイデア自体は貴重だし、生かしていくべきだと思う。
ただ、それはすごく難しい(だからこそ素晴らしい)と言いたかった。
0511デフォルトの名無しさん
2007/10/23(火) 10:27:47個人に限定してもよい
0512デフォルトの名無しさん
2007/10/23(火) 19:25:07持ち時間1時間として
コンピューターが3回に1回ノータイムでも、1時間つかいきれば
人間側の思考時間は、自分の持ち時間と合わせて2時間ある
コンピューターが全部ノータイムの超早指すると
人間側の思考時間は、自分の持ち時間の1時間しかない
読みを空振りさせる回数が3回位増えると
1回あたり数分位とられるから10分くらい損する
ぜんぜん違うと思うんですが‥
結局、80台を良い手を捜すためにつかっても、2割位しか
最前手が変わらないなら、時間攻めで人間が間違うのに
かけた方がお得なように思うわけで
実際、複数台での並列先読みや、局面の複雑度を測ったりするのは、
相手の指し手の傾向をつかむより遥かに容易じゃない?
自分のプログラムはまだ弱いのでそんな段階ではないけど。
誰か人柱にならないかなあ。
0513デフォルトの名無しさん
2007/10/23(火) 20:42:31つまり、思考時間:1分、強さ:1台9分相当を選択するか、
思考時間:0分、強さ:1台1分相当を選択するかという問題になる。
(人間が常に同じ時間を消費するという前提)
コンピュータよりも人間の方が持ち時間の価値が高いことを利用するわけだ。
悪い手は切り捨てて愚直に80手読まないようにするなどの工夫もできる。
そうなると普通の予測読みとの境界がぼやけてくる。
俺は、通常の予測読みがいいと思う。俺も実測してないのでこれしか言えない。
0514デフォルトの名無しさん
2007/11/01(木) 23:44:59バレてないと思ってるのは自分だけだぞw
0515デフォルトの名無しさん
2007/11/15(木) 01:22:320516デフォルトの名無しさん
2007/11/18(日) 00:48:45http://www.amazon.co.jp/dp/4047101079/
0517デフォルトの名無しさん
2007/12/04(火) 04:01:56VC6++っていうのは古いでしょうか?
0518デフォルトの名無しさん
2007/12/04(火) 08:18:42VC2005EEがある今、VC6を使う理由がない。
0519デフォルトの名無しさん
2007/12/04(火) 08:33:000520デフォルトの名無しさん
2007/12/04(火) 09:39:100521デフォルトの名無しさん
2007/12/04(火) 19:52:330522デフォルトの名無しさん
2007/12/04(火) 23:33:57みなさんどうもありがとうございます。
VC++6でもよさそうですね。
0523デフォルトの名無しさん
2007/12/05(水) 01:05:570524デフォルトの名無しさん
2007/12/05(水) 11:00:20まぁ、VS6の正規ユーザで尚且つ時代遅れのPCを使っているというなら止めないが。
0525デフォルトの名無しさん
2007/12/07(金) 00:45:10新しいVistaつかうより、バージョンアップされたXPの方がいいということもある
0526デフォルトの名無しさん
2007/12/07(金) 10:48:370527デフォルトの名無しさん
2007/12/07(金) 12:17:57特に付属のSTLかなりバグがあってひどかった。
0528デフォルトの名無しさん
2007/12/08(土) 00:17:48テンプレートのサポートが微妙だったりするけど
自分の使い方では2003よりもよかったよ
インストール早いし、起動軽いし
STLはSTLPORTいれて使うもんだと思ってる。
そんな私も2005に移行しましたが。
0529デフォルトの名無しさん
2007/12/14(金) 14:21:23一見するとコンパイル通って正常に動作しているようでも
トンデモな解釈をコンパイラがしている箇所があったはず。
std::cout << typeid(1.0F==1.0F).name() << std::endl;
std::cout << typeid(1==1).name() << std::endl;
仕事だからVC6とかいう発想は
無責任もいいとこ。
まともなコンパイラの機能テストをしていれば
Noob以外はそのような発想はしないでしょう。
0530デフォルトの名無しさん
2007/12/16(日) 18:57:570531デフォルトの名無しさん
2007/12/22(土) 11:59:41MC+UCTだと info string ばっかになりそう。
もうちょっと融通利かせないとUSIプロトコル使う意味なす…
0532デフォルトの名無しさん
2007/12/23(日) 11:08:28setifnomenuコマンドなんてのが必要かもね。
0533デフォルトの名無しさん
2007/12/23(日) 11:12:160534デフォルトの名無しさん
2007/12/23(日) 23:38:23GUIがちゃんと対応出来るかどうかは知らん。
0535デフォルトの名無しさん
2008/01/08(火) 01:29:440536デフォルトの名無しさん
2008/01/08(火) 19:45:25ところで大局将棋ってナニ?
0537デフォルトの名無しさん
2008/01/08(火) 20:11:060538デフォルトの名無しさん
2008/01/08(火) 21:05:25やる気しねえw
0539デフォルトの名無しさん
2008/01/08(火) 22:32:19てか、駒の動かし方全部把握してるヤツ居るのか、これ?
0540デフォルトの名無しさん
2008/01/09(水) 00:20:090541デフォルトの名無しさん
2008/01/09(水) 03:23:18>>537のサイトに駒の説明があるけど
ページなげえw
0542デフォルトの名無しさん
2008/01/09(水) 03:50:51最長テンプレだと聞いた。
0543デフォルトの名無しさん
2008/01/09(水) 05:23:40最長の地位を保つための儀式なのか…
0544デフォルトの名無しさん
2008/01/09(水) 07:43:190545デフォルトの名無しさん
2008/01/09(水) 14:41:350546デフォルトの名無しさん
2008/01/12(土) 19:35:410547デフォルトの名無しさん
2008/01/13(日) 11:05:39テレビ番組で、プロ棋士同士が対局してたな
駒の動かし方は本を見ながら確認してたw
1日では勝負がつかず、3日くらいかけていたと思った
0548デフォルトの名無しさん
2008/01/13(日) 11:27:290549デフォルトの名無しさん
2008/01/13(日) 12:28:250550デフォルトの名無しさん
2008/01/13(日) 13:31:070551デフォルトの名無しさん
2008/01/13(日) 17:43:310552デフォルトの名無しさん
2008/01/13(日) 18:23:590553デフォルトの名無しさん
2008/01/13(日) 21:01:550554デフォルトの名無しさん
2008/01/17(木) 07:02:170555デフォルトの名無しさん
2008/01/19(土) 02:12:54http://mamono.2ch.net/test/read.cgi/newsplus/1200665136/
0556デフォルトの名無しさん
2008/01/20(日) 14:49:16C++の方がいいのかな?
0557デフォルトの名無しさん
2008/01/20(日) 14:56:43部分的にC言語やアセンブラも使える
0558デフォルトの名無しさん
2008/01/27(日) 14:07:140559デフォルトの名無しさん
2008/01/28(月) 16:28:290560デフォルトの名無しさん
2008/01/28(月) 17:11:160561デフォルトの名無しさん
2008/01/28(月) 18:20:440562デフォルトの名無しさん
2008/01/28(月) 19:46:330563デフォルトの名無しさん
2008/01/28(月) 20:34:230564デフォルトの名無しさん
2008/01/28(月) 20:45:550566564
2008/01/28(月) 21:16:24なんだよ、マイナスってw
以下、マジレス。
おとといのUSIエンジンの登場でモチベーションがかなり上昇した。
弱くても、勝てなくても、笑われても、それでもいいからとにかく形にすることに決めたよ。
0567デフォルトの名無しさん
2008/01/28(月) 22:13:56ランダムざしに負けるのがマイナスじゃね?
0568デフォルトの名無しさん
2008/01/28(月) 23:16:28俺よりは強いんだが・・・
0569563
2008/01/28(月) 23:20:41あと、部屋が汚くてどこに本があるか分からないから掃除するところから。
>>567
負けそうだから怖い。
0570デフォルトの名無しさん
2008/01/28(月) 23:21:31出現頻度の低いパラメータって学習が遅くね?
なんか対策考えないとなぁ。
0571デフォルトの名無しさん
2008/01/28(月) 23:32:52自分は出現頻度が低いパラメータは保持したまま
別のパラメータが変わるような局面に分岐させたりしてる
ちなみに効果の程は測ってないけど
0572デフォルトの名無しさん
2008/01/28(月) 23:45:180573デフォルトの名無しさん
2008/01/29(火) 19:40:24なるほど、賢いなぁ。
俺は猿だから対局数でごまかそうかなっと。
0574デフォルトの名無しさん
2008/02/05(火) 20:51:110575デフォルトの名無しさん
2008/02/07(木) 15:10:400576デフォルトの名無しさん
2008/02/07(木) 16:07:460577デフォルトの名無しさん
2008/02/07(木) 16:13:510578デフォルトの名無しさん
2008/02/07(木) 16:16:260579デフォルトの名無しさん
2008/02/09(土) 21:48:350580デフォルトの名無しさん
2008/02/10(日) 18:10:11すごく初歩的な話なんですがrootでsplit(分割)する/しないってのは
どういう意味だったんでしょうか?
最初の深さ1だけは読んで、そのそれぞれの(1手読みの)手を並列化するのが
「rootでsplitする」でいいのかな?
しない、ってのはどういうことなんでしょう?
0581デフォルトの名無しさん
2008/02/10(日) 22:43:520582デフォルトの名無しさん
2008/02/11(月) 09:44:180583デフォルトの名無しさん
2008/02/11(月) 11:46:160584デフォルトの名無しさん
2008/02/11(月) 11:48:45そっちでもいい alternative だったか,開発者用のスレがある
0585デフォルトの名無しさん
2008/02/11(月) 13:40:49メモリの節約にはなるが速度は遅くなるのですか?
0586デフォルトの名無しさん
2008/02/11(月) 13:45:01要は、一概には言えないのでテストケースを充分絞って実験してみることです。
0587デフォルトの名無しさん
2008/02/11(月) 14:21:17キャッストに時間がかかるというのはデマ
0588デフォルトの名無しさん
2008/02/11(月) 14:22:39一概に言えないのですか。へぇ〜
0589デフォルトの名無しさん
2008/02/11(月) 15:06:51charじゃないとswapしまくりで遅くてしゃぁない。
0590デフォルトの名無しさん
2008/02/11(月) 15:18:39ところでYSSの人は配列は2のべき乗にすると速くなると言ってますが
みなさんそうしてるのですか?
0591デフォルトの名無しさん
2008/02/11(月) 15:22:570592デフォルトの名無しさん
2008/02/11(月) 16:05:18今のパソコンと将棋ソフトでスワップはないと思いますが。
でもそう言うには相応の理由があると思いますが、
実際に実験してないけど理論的には速いはず、というところでしょうか。
0593デフォルトの名無しさん
2008/02/11(月) 16:07:36OS、ほかのプログラムが動いているとハッシュテーブルがメモリ外に出ることがある
するととても弱くなる
たとえばボナンザで実験するとわかる
0594デフォルトの名無しさん
2008/02/11(月) 18:13:57rootでA,B,Cと候補手があるとして
BやCの評価値の評価値を並列に探索して求める場合はrootでsplit。
Bの評価値が確定してからCを探索する場合はrootではsplitしていない。
0595デフォルトの名無しさん
2008/02/11(月) 20:56:25デマというか、ハードウェアとかコンパイラに依存するので時代によって……
0596デフォルトの名無しさん
2008/02/11(月) 22:41:19ありがとうございます
>BやCの評価値の評価値を並列に探索して求める場合はrootでsplit。
というのは直観的に理解できそうです
rootでとりあえず指し手を列挙してみて
おらこれとこれとこれがあるから行ってこいやぁ、みたいなw
でも
>Bの評価値が確定してからCを探索する場合はrootではsplitしていない。
というのがよくわかりません
この場合、どこで並列処理(並列化)をしているのでしょうか?
0597デフォルトの名無しさん
2008/02/11(月) 23:35:350598デフォルトの名無しさん
2008/02/11(月) 23:46:07深さ0(? 現局面のこと)で指し手を列挙して
おのおのの指し手について並列するのがrootでsplit
深さ0で指し手を列挙したあとその指し手の1つをまず取り出して
そこからの指し手(深さ1以下の指し手)について並列するのがrootでないsplit
ってことですか?
実際の方法論としては
たとえば候補手が50個並んでいて
CPU1が候補手aを、CPU2が候補手bを読んでいって
先に終わったほうが候補手cを読む……という「仕組み」自体はいっしょで
それをrootでやるかそうでないかだけが違う(というかYSS議論では違ってた)
ということでしょうか?
0599デフォルトの名無しさん
2008/02/12(火) 02:48:08深さ0で指し手がA0、B0、C0と3つあるとすると、今のプログラムは
A0の手を調べるのに全体の50%の時間を使ってしまいます。
そこで、A0の探索が終わった後に、B0、C0の2つの手を並列に探索します。
その方がA0の探索の結果を使えるので効率がいいためです。
A0の手の下にはA01、A02、A03の3つの手があるとすると、
A01の手を調べるのにこれまた50%の時間がかかります。
そこで、A01の探索が終わった後にA02、A03の探索を並列に行います。
こうやって延々続いていきます。
深さ0でも並列に探索するのが「rootでsplit」で
深さ0でのみ並列に探索しないのが「rootでsplitしない」です。
「rootでsplitしない」場合でも深さ1、深さ2、、、、ではsplitします。
0600デフォルトの名無しさん
2008/02/12(火) 10:33:34Aspiration searchの真ん中の値で二分すれば
単純に二倍速くなりそうという感じは受ける。
ちょっと試せないので分からないけど。
ボナンザも歩の交換値2つぶんでAspiration searchをやってるらしいので。。
やっぱり問題はその次からの一回の探索を分ける方法だねえ。
0601デフォルトの名無しさん
2008/02/12(火) 11:08:15なるほど・・・
ありがとうございました
0602デフォルトの名無しさん
2008/02/12(火) 12:38:42お前コンピュータ将棋もど素人だろ。
ウィンドウを2分割すれば探索ノードもキレイに2分割できると思ってる?
0603デフォルトの名無しさん
2008/02/12(火) 14:47:260604デフォルトの名無しさん
2008/02/12(火) 16:43:40ついでに書くと、MTD(f)の探索木みれば600がいかに効率悪いかわかる。
まぁ、俺は選手権の対局より強化学習の方を高速化したいから、並列探索は手抜きだがな。
0605デフォルトの名無しさん
2008/02/12(火) 18:49:220606デフォルトの名無しさん
2008/02/12(火) 19:30:13600をやって他もできると思ってたら、できないねえ。
ノード数が二分できないのではなく、ノードが二分できないのか。
同じ局面を二回作ってるから二で割って一と。
0607デフォルトの名無しさん
2008/02/12(火) 19:44:070608デフォルトの名無しさん
2008/02/12(火) 19:48:54「rootでsplitしない」場合だと、B0の子ノードOR孫ノードORもっと先のノードで並列化するので、B0の評価値は「rootでsplitする」場合より速くも止まる。
んで、仮にA0の評価値<B0の評価値だと、B0の探索終了時に「B0は(最善手ではないかもしれないが)少なくともA0よりは良い」と分かる。
なんで、「rootでsplitしない」場合は、「仮の最善手」が速く決まる可能性が高い(YSSの掲示板だと「見切り発車」とか表現してた)から、思考時間に制限がある場合にちょっとお得、と。
0609デフォルトの名無しさん
2008/02/12(火) 19:49:53死んできます。
0610デフォルトの名無しさん
2008/02/12(火) 19:58:06でも並列化ってイメージしにくいような気がする。
頭を両手で同時に洗うのは並列化?
0611デフォルトの名無しさん
2008/02/13(水) 00:31:480612デフォルトの名無しさん
2008/02/13(水) 19:04:11そういうのが並列処理。
0613デフォルトの名無しさん
2008/02/13(水) 19:19:450614デフォルトの名無しさん
2008/02/13(水) 19:52:42それはCPUのパイプラインだ。
並列処理なら、フライパンを二つ用意しなきゃ。
もっとも、将棋の場合は揚げなくてもいいものがあるから、
二つ用意しても倍は速くならないのだ。
0615デフォルトの名無しさん
2008/02/13(水) 19:54:02どういう点が…と聞いてみようと考えたら分かった。
>612の例えは「並列処理」と言うより「パイプライン処理」だ。
0616615
2008/02/13(水) 19:54:540617デフォルトの名無しさん
2008/02/14(木) 02:06:09依存関係があっても適用できるわけだし
そういう細粒度の並列処理を
ソフトウェアでうまく書く方法ってある?
手の生成→並べ替え→手を打つ
手の生成→並べ替え→手を打つ
手の生成→並べ替え→手を打つ
手を打たないと、次の手の生成ができないから無理か orz
0618デフォルトの名無しさん
2008/02/14(木) 02:22:52ぷぎゃー
0619デフォルトの名無しさん
2008/02/14(木) 02:41:250620デフォルトの名無しさん
2008/02/14(木) 16:51:24普通のPCハードウェア(CPU)じゃ無理だね。
パイプライン処理(それも将棋専用の)が可能なCPUじゃないと。
だから「A級リーグ指し手1号」と言う名前で専用プロセッサを
FPGA使って開発してる人が居るわけで。
0621デフォルトの名無しさん
2008/02/14(木) 18:28:270622デフォルトの名無しさん
2008/02/14(木) 18:31:21例えばPS3/Cellにはそういう形(パイプライン)の並列処理の枠組みが用意されてる
もちろんアルゴリズムは自分で考えるのだが
0623デフォルトの名無しさん
2008/02/14(木) 19:07:21へー、CellB.E.(SPU?)にそんな仕組みがあるの?
単なるSIMD演算器がさらに8個並列で存在するだけかと思ってた。
個々のSPU内の演算器を自分好みのパイプラインに仕立てられるのか?
0624623
2008/02/14(木) 19:37:44もしそういう機能が本当にあれば非常に興味深い(使ってみたい)ので
どのドキュメントに載っていてどんな名前で呼ばれている機能か教えてくれ。
「Cell Broadband Engine アーキテクチャ」Ver1.01 (by ソニー)
をざっと眺めてみたが見つけられなかった。
0625623
2008/02/14(木) 20:06:15もしかしてSIMD演算機能あるいはSPUを仮想化してマルチスレッド
ソフトウェアを走らせる機能を(ハードウェア)パイプライン機能と
混同してない?
普通の(IntelやAMDのx86)CPUもある種のパイプライン(スーパースカラー)
機能はあるけどプログラマが意識的(明示的)に操れるわけじゃないし。
0626デフォルトの名無しさん
2008/02/14(木) 21:11:56PS3のCellで囲碁をパイプラインってこんなの?
http://www.geocities.jp/hideki_katoh/publications/gpw2007/gpw07-private.pdf
αβ探索じゃなくて、モンテカルロならパイプライン可能かもな
要はスレッド間の同期をとるだけじゃん
0627デフォルトの名無しさん
2008/02/14(木) 21:20:01フェッチ→デコード→演算→レジスタ書き出し
フェッチ→デコード→演算→レジスタ書き出し
フェッチ→デコード→演算→レジスタ書き出し
フェッチ→デコード→演算→レジスタ書き出し
こういうのがパイプライン。
スーパースカラは複数の命令を同時に実行できる機能
0628623
2008/02/14(木) 21:20:170629623
2008/02/14(木) 21:27:37スーパースカラー=パイプラインじゃないけど、現在主流のCPUで言う
「スーパースカラー」はパイプライン処理が前提なんだけど。
すなわち複数命令を(同時実行できるものは)同時発行しておいて
さらにそれらをパイプライン化された処理装置に叩き込む。
詳細はWiki等を参照してくれ。
0630デフォルトの名無しさん
2008/02/14(木) 21:30:020631623
2008/02/14(木) 21:34:30??? 何が言いたいの?
コンパイラに並列化を任せて明示的に(機械語レベルで)複数命令を
並列実行するならVLIWアーキテクチャだね。Itaniumみたいな。
0632デフォルトの名無しさん
2008/02/14(木) 23:59:56命令を見つけたとしてもそれをマシン(CPU)に伝える手段が無い。
0633デフォルトの名無しさん
2008/02/15(金) 00:37:59演算処理(たいていは積和算)そのものを複数のステージに細切れに
分けてパイプライン処理する。したがって同じタイプの演算命令が
次々と間を空けずに来る事が前提。
なのでベクター(行列)の処理に向くと言うか、それにしか向かない。
0634622
2008/02/15(金) 02:16:07>マルチコア環境ではハードでなきゃ無理ということはないと思う
と書いた時点でソフトの枠組みの話をしてることが分かると思ったのだが
分かり難くてスマソ
0635デフォルトの名無しさん
2008/02/15(金) 15:11:57いいたいことは分かった。
スレッド同士のバケツリレー的なことを API でサポートしてるってことね。きっとイベントキューとかメッセージボックスとか使うんでしょ。
って >622の文脈であの書き方じゃわかるわけねーよ!
0636デフォルトの名無しさん
2008/02/15(金) 19:54:51フレームワークが提供されていると聞いている
>じゃわかるわけねーよ!
読み直してみると確かに分かり難い.改めてすまんかった
0637623
2008/02/15(金) 22:45:43処理をサポートする枠組みがあると言う事だったのか。
>634を読んでしばらく考えてようやく意味が分かったよ。
確かにCellのSPUならマルチスレッド(マルチコア処理)で
パイプライン(的)処理をする仕組みを作りやすいかも知れないな。
キャッシュなしのローカルストレージのみで動くから
インストラクションの実行時間を確実に見積もれる。
そういう話を聞くと>617が書いてるようなパイプライン処理を
Cell(PS3)上で実現できないか、ちょっと考えてみたくなるな。
タスクをそれぞれ均等な実行時間を持つステージに分割できるか、
通信オーバーヘッドがどれくらいあるかが問題だけど。
0638デフォルトの名無しさん
2008/02/16(土) 02:00:36ttp://research.cesa.or.jp/pdf/shiryo6-2-2.pdf
にCellの並列化のPipelineモデルとかStreamingモデル等の話が載ってる
(日本IBMの東京基礎研の人の講演)
0639デフォルトの名無しさん
2008/02/19(火) 21:43:39>>626 のPDFを見ても、cellってMBOXでSPUが通信できる仕組みみたいだねえ
ハードのパイプラインはクロック同期と思うが、
ソフトでも負荷の無い同期方法ってないもんか?
Stramingモデルってのが面白かった
0640デフォルトの名無しさん
2008/02/20(水) 00:16:34ってどういう意味?
libspe2 には mbox と signal しか用意されてないけど
自分で作るのもあり
0641デフォルトの名無しさん
2008/02/20(水) 11:30:35ハードウェアのクロック同期だって負荷があるだろ。
1クロックよりずっと短い処理だってクロック同期を待たなければならないんだから。
それでもCISCの頃よりは計算資源のアクティブ率は上がった。
ソフト側も同様にプロセッサの稼働率を上げていけばよい。
0642デフォルトの名無しさん
2008/03/18(火) 10:22:070643デフォルトの名無しさん
2008/03/19(水) 00:05:55しかしソフトはまだ全然出来ていない。
将棋を指す骨組みと通信部分だけくらいは何とかその日までに
完成させて一回は通信対戦テストをしておきたいのだが。
このままじゃ、ぶっつけ本番になってしまいそうだ。
0644デフォルトの名無しさん
2008/03/22(土) 01:46:00wdoorでテストしておけば?
CSAの対局サーバーとは細かい違いはあるようだが……
がんばれ
0645デフォルトの名無しさん
2008/03/23(日) 13:05:200646デフォルトの名無しさん
2008/03/23(日) 13:05:400647デフォルトの名無しさん
2008/03/23(日) 15:10:420648デフォルトの名無しさん
2008/03/23(日) 15:55:11作者のサイトの GPW 2006 発表資料 には目を通した?
あの説明で何かわからないことある?
0650デフォルトの名無しさん
2008/04/10(木) 23:56:08あれ読んでも具体的に何と何を入力パラメータとして
選んだのか今一良く分からないんだよね。
各駒種に対してその位置(升目)ごとに重み付けしていって、
それを2個以上の駒の位置関係にまで広げていったら、
あっと言う間にパラメータは1万個どころか百万個以上に
なりそうだし、学習を進めると結局、棋譜に現れたもしくは
探索済みの特定の局面に評価値を与えるだけになりそうな気が。
つまり一般化能力なんか全く無さそうな気がするんだが、
私が何か勘違いしてるのかね?
コンピュータ将棋に詳しくないために。
0651デフォルトの名無しさん
2008/04/11(金) 00:38:13その論文読んでないけど、テレビでやってたやつ見た限りだと
その発想そのままだと思う。
ボナンザの初期バージョンでは数手先まで読むように拡張してみたところ
うまく読み取れない局面があることがわかった。
そこで、ある程度(?)評価の悪い枝についても読むようにしたところ
かなりよくなった。
完全に総当りじゃなくて、ある程度評価がいい手の中でも
多少悪いぐらいでは枝狩をしない
また、相手の手版のときに、多少悪いぐらいの手をさしてくることを
考慮して読んでおくことで、時間を有効に使う
一般的にどうこうするっていうのではなくて
特定の場合に愚直な実装して、枝狩りの閾値さげたら
割とうまくいきました っていう感じだと思う。
他の検索系のやつもそうだけど
この手の総当りが必要そうなものについて、愚直に実装して
動かしてみたら案外うまくったってのが、最近の傾向じゃないかな
人間があーだこーだ考えるよりPCに考えさせたほうが
早いっていう。
だから一般化というより、ある特定のルールのときに
CPU時間を有効に使えるように変えてみたら
アルゴリズムは今までとほとんど同じだけど
勝率があがりました って思ってるけどこれも違うかな?
あくまで素人の意見なんですが。
0652デフォルトの名無しさん
2008/04/11(金) 01:16:23> それを2個以上の駒の位置関係にまで広げていったら、
広げない。
将棋は、自玉、敵玉に対する位置関係は重要だが、それ以外の2駒の相対的な位置関係は
あまり重要なゲームではないからだ。
例えば以下の記事が参考になるだろう。
http://d.hatena.ne.jp/yaneurao/20080406
ただし、銀の退路が歩で遮られていないかだとか、歩越しになっていないかだとかは重要なので、
Bonanzaでもそこは考慮に入れていたはず。
0653650
2008/04/11(金) 01:30:39全ての組み合わせにそれぞれ点数を付与して
行ったとしても、二駒のペアは自由に選べるわけだから
特定の局面に対して点数を付けて行くのとは違うな。
汎化能力はあるか、俺が勘違いしてたわ。
それにしてもパラメータ数が膨れ上がると言う謎は残るな。
愚直にやると駒のペア×位置(マス目)×位置(マス目)で
40×39÷2×83×83で500万以上にもなるか?
0654デフォルトの名無しさん
2008/04/11(金) 01:38:22なるほど、サンクス!
もうちょっと考えてみよう。
0655デフォルトの名無しさん
2008/04/11(金) 01:39:580656654
2008/04/11(金) 01:52:32いえ、違います。
ただ単にコンピュータ将棋に関心があって
(できれば自分でも作りたいと思ってる)
ボナンザメソッドに興味を持った
一介のアマチュアです。
0657デフォルトの名無しさん
2008/04/11(金) 05:57:50反復進化で求めると思うんだけど、その時未知の局面が現れた場合、引き分けの値との関係が難しい。
負け<引き分け<未知<勝ちという図式になると思うんだけど、未知の局面の値は相手から見ても引き分けより
大きくなければならないので、単純に符号を変えるという普通の方法が使えないわけですが
何か一般的な手法があるのかなと思って聞いて見た次第です。
0658デフォルトの名無しさん
2008/04/11(金) 06:05:36未知の局面て何よ?
未探索で評価値がわからないなら探索して決めればいいじゃん。
終端ノードなら、静止評価すればいいじゃん。
そんなの反復深化とも引き分けともなんも関係ないよ。
0659デフォルトの名無しさん
2008/04/11(金) 06:26:40未探索の局面を全て調べる必要がないわけですが、深さを制限しないで調べるのが一般的でしょうかね。
0660デフォルトの名無しさん
2008/04/11(金) 07:03:41> えっと、負け<引き分け<未知<勝ちから分かる通り
何が言いたいのかさっぱりわからんよ。
基本的なことを確認するが、あんたは普通のαβや反復深化は理解していて
自分でそのプログラムぐらいはすぐに書けるんだろな?
あんたの言う「未知」って何よ?置換表に登録されていないの意味か?
そしてその「引き分け」っていうのは、なによ?
評価したい局面で引き分けにする指し手が見つかっているのか、
それとも「引き分け」というのが存在する将棋みたいなゲームでの
一般的な探索メソッドについて話しているのかどっちなのよ。
0661デフォルトの名無しさん
2008/04/11(金) 12:48:08例えば相対位置を使ったり
0662デフォルトの名無しさん
2008/04/12(土) 01:16:320663デフォルトの名無しさん
2008/04/12(土) 10:38:110664デフォルトの名無しさん
2008/04/12(土) 11:23:06このスレでは >>234 の論文以上の進展はないと俺は理解している。
0665デフォルトの名無しさん
2008/04/12(土) 13:18:03結論は既に出てると思うが?
GHI問題と言うのは証明アルゴリズムの不完全性などに起因するのではなくて、
千日手などのそこまでの指し手に依存して勝ち負け(引き分け含む)が決まる
タイプのルールを持つゲーム(将棋、チェスなど)には必然的に生じる問題。
即ち、ある局面からの勝ち、負け、引き分けを厳密に判定するにはその局面に
至るまでの経路(指し手の履歴)も考慮する必要があると言う良く考えれば
ごく当たり前の話に過ぎない。
0666デフォルトの名無しさん
2008/04/12(土) 13:19:360667デフォルトの名無しさん
2008/04/12(土) 14:33:23完全な履歴は残してないので厳密に考えると「千日手になるかどうか不明」
になると言う話なのかな?
しかし「相手から見ても引き分けより大きくなければならない」と言うのが
良く分からんな。不明な局面の場合「悪くても引分け(千日手)」に持ち込める
と言う保証なんか無いわけだから。不利な状況から千日手に持ち込もうとしても
出来ないかも知れない。
0668デフォルトの名無しさん
2008/04/13(日) 13:27:01もう少しいい方法があるらしいことが書いてあるのだが、誰か情報求む。
与えられた数列集合の要素同士のxorを何回かとるときに
なるべく衝突しないような数列を数学的に決定する方法があるのか、
それとも衝突しにくい組み合わせを事前にrandomで選んだ数列集合のうち
良いものを探してみましょう、程度の話なのかどちらなのだ?
0669デフォルトの名無しさん
2008/04/13(日) 15:46:14個々の乱数を生成したら立ってるビットの数はチェックしていたな。
うろ覚えだけど16±5くらいの範囲に収まってるかってのだったかなぁ。
この範囲に無ければ再生成。
0670デフォルトの名無しさん
2008/04/13(日) 16:32:31・静的評価関数はminimax探索で利用されるんだよな?
・最適化の数値的手法1のスライドの関数f(p,ν)って何?
人工知能は学部で多少勉強した程度で将棋プログラムの経験もないんでとんちんかんなこと
聞いてるかもしれないけど,教えてください
0671デフォルトの名無しさん
2008/04/13(日) 17:52:30ああ、なるほど。1のビットの数はチェックしたほうが良さそうだね。
0672デフォルトの名無しさん
2008/04/14(月) 12:13:14というのもあった(時間掛かるけど最初だけだからOK)
0673デフォルトの名無しさん
2008/04/14(月) 12:42:55ああ、それもいいね。
0674デフォルトの名無しさん
2008/04/14(月) 23:07:55良く嫁。同じスライドの下に式があるだろう>f()
0675デフォルトの名無しさん
2008/04/17(木) 20:19:5250手で終盤の事もあるし、200手で中盤の事もあるので手数とは関係ないと思います
考えられるのは、玉の危険度で測るのがいいと思いますが定番のやり方ってありますか?
0676デフォルトの名無しさん
2008/04/17(木) 20:23:10数学的な方法って無いと思いますよ
自分でやってみた方法は、プロの 棋譜を読み込んで衝突が起こりにくい乱数を決めておくって方法です
実際に起こりえない局面で衝突が起こらなくても意味がないので
0677675
2008/04/17(木) 20:27:400678デフォルトの名無しさん
2008/04/17(木) 21:04:04> 玉が詰みそうかどうかを判定
これを読みって定義するんじゃないか?
0679675
2008/04/17(木) 21:31:52詰みそうならば詰め将棋を読んで、詰まないことが局面だけから判断できるなら詰め将棋をしなくて済みます
玉の逃げ道の多さが危険度に関係ありそうですけど、穴熊だとうごける所は0なのに堅いです
どのように危険度を判定するといいですか
0680デフォルトの名無しさん
2008/04/17(木) 22:10:47まずは定番の「コンピュータ将棋の進歩」シリーズを読む.
続いてゲームプログラミングワークショップの予稿集を読む.
CSA に入ってトーナメントに参加し,他の開発者から色々教わる.
本格的な議論は将棋板のコンピュータ将棋関係のスレッドで
0681デフォルトの名無しさん
2008/04/17(木) 22:19:200682デフォルトの名無しさん
2008/04/17(木) 22:40:25成駒の数とか敵陣にいる駒の数、あとは王将と攻め駒の距離とかかな。
適当に考えただけだから、実装して上手くいくかどうかはわからんが。
0683デフォルトの名無しさん
2008/04/17(木) 22:42:44この辺で聞くと役に立つアドバイスがもらえるかも知れないよ。
GA将!!!さん運営の「コンピュータ将棋等の掲示板@入門編」
http://www4.rocketbbs.com/741/comsyogi.html
あるいは超有名なYSSの山下さんところの
「コンピュータ将棋や囲碁の掲示板」
http://524.teacup.com/yss/bbs
最近、掲示板@入門偏は話題が無くて止まってるからちょうど良いかも。
ちなみにダブルポストすると注意されるから気を付けてね。
0684デフォルトの名無しさん
2008/04/17(木) 23:05:520685デフォルトの名無しさん
2008/04/17(木) 23:22:10ちなみに「うさぴょん本」にちょっとだけ書いてあるのを紹介すると
・玉の危険度
「玉の周囲に敵の利きがどの程度あるか、敵の駒がどの程度の距離に迫っているか」
結局、自陣(自玉周囲)にどの程度敵方の駒が利いているかが判定のキモだと思うな。
自陣に利いていても、玉ではない味方の駒で敵の駒の利きを受け止めているんなら
まだ固いと判断できるし、何にも無い空間にバシバシ利いているんなら(裸玉)、
もう詰められる寸前だろうし。
固さと玉の逃げ道の広さは当然、矛盾するところがあるので難しいところだけど。
0686デフォルトの名無しさん
2008/04/18(金) 00:04:17統合した評価関数が出来れば一番良いのですが
0687デフォルトの名無しさん
2008/04/18(金) 00:49:07これを基準にして評価関数を調整するといいと思うのですが…
しかし、問題があり、2手以上出てくる中盤までしか調整が出来ません。
プロが指した手が最も得点が高くなるように調整すれば全局面に対応出来ますが
例えば、10手読みを入れた結果だとすると、評価値の値を間違えることになります。
しかし、何手読んだのか知ることは出来ず、常に一手読みとして学習したら駄目でしょうか?
0688デフォルトの名無しさん
2008/04/18(金) 00:53:31??? そりゃ、両方をひとつの評価関数として統合しないと。
と言うか、玉の危険度も通常は評価関数の一部だよ。
いろんなパラメータを重み付けして足して行くわけだ。
だから手動で調整するとバランスを取るのに四苦八苦するわけだが。
0689デフォルトの名無しさん
2008/04/18(金) 01:06:48序盤か、終盤か、は通常の評価関数では知ることは出来ないと思います。
互角であっても終盤である事があります。
終盤であることを知るにはどちらかの玉が危険であると知ることが必要と思います。
そのため、玉の危険度と通常の評価関数がないと終盤がわかりません。
0690689
2008/04/18(金) 01:20:20MAX(A,B)の値によって終盤判定が行えると思います。
0691デフォルトの名無しさん
2008/04/18(金) 01:45:16(通常の評価関数の一部としての)玉の危険度と
局面の進行度(終盤度)を計るための玉の危険度の話が
ゴッチャになっているね。(私が誤解したのかも知れない)
後者は例えば
序盤度×パラメータA+中盤度×パラメータB+終盤度×パラメータC
と言うような重み付け係数として組み込む事になると思う。
玉の危険度は終盤度(進行度)と通常の(有利不利を見る)
評価関数の一部としての両方に表れて良いと思うけど、
進行度の方はあまり凝った評価はしなくて良いんじゃ無いかな?
お互いの陣地に成り込んだ駒の数とか持ち駒の数くらいで。
飽くまで私見ですが。
0692デフォルトの名無しさん
2008/04/18(金) 01:51:46ボナンザはその前後で評価値が変わらないとして学習しているって事ですか。
何手先の局面と評価が一致するのかが重要ですが。
0693デフォルトの名無しさん
2008/04/18(金) 02:15:05玉の危険度を正確に評価することは重要と思います。
正確に判定できれば、終盤用の指し手がさせますし、詰め将棋を調べず高速に危険度が求まります。
>>692の続きですが、評価値が保たれている局面を把握する方法は、既に知られているんですか?
ネットで見る限りでは、駒交換だけ進める様な感じと思いますが…
しかし、それでは飛車・角・香の利きが良く利いているなどの情報は失われます。
0694693
2008/04/18(金) 02:26:04桂は取られるけど、飛車がいい位置に移動できて互角になったりすると思います。
あとお互いに飛・角がいい位置に移動して互角になることもあります。
静止探索では、飛車が好位置に移動することも考慮しますか?
0695デフォルトの名無しさん
2008/04/18(金) 10:59:14> 正確に判定できれば、終盤用の指し手がさせますし、
> 詰め将棋を調べず高速に危険度が求まります。
あんた、ほんとに将棋弱いんだな。
少しでも将棋が指せるなら、持ち歩の一歩の違いだけで
詰む/詰まないが変わることなんてしょっちゅうあることは
わかりそうなものなのに。
結局、ここからもわかるように
単純な関数で正確に評価することは出来ない。
詰め将棋なんて、静止評価に比べれば終端ノードの評価に
計算量を要しないので、詰む可能性が高そうな局面は全部調べればいいじゃん。
0696デフォルトの名無しさん
2008/04/18(金) 11:03:09> 静止探索では、飛車が好位置に移動することも考慮しますか?
したければすればいいし、したくなければしなければいい。
その手の評価関数を副作用なしに書くことは非常に難しいので
シンプルな評価関数にして先読みできる量を増やしたほうが
棋力は向上すると思うがな。
0697デフォルトの名無しさん
2008/04/18(金) 11:05:35先手と後手の指し手が20通りずつあって、そのうち正解手は一手だけとして
その400通りの全てで詰め将棋を0.5秒つかったらそれだけで3分以上かかります。
静止探索でググると「 関連検索: bonanza 静止探索 」というのが出てきます。
みなさん bonanzaの 静止探索に注目してるんですね…
0698デフォルトの名無しさん
2008/04/18(金) 11:25:43評価関数を書くのではなく、評価関数を自動で調整する為に静止探索をつかうんです。
プロの指し手は最善だとすると、静止の局面から、次の静止の局面への評価値に変化はないと仮定できると思います。
2つの局面で評価値が変化しないようにパラメータを決めるんです。
そのため静止局面が正しく判定出来ないと弱くなります。
0699デフォルトの名無しさん
2008/04/18(金) 12:04:29>その400通りの全てで詰め将棋を0.5秒つかったらそれだけで3分以上かかります
0.5秒は遅すぎです。正確な時間は分からないけど1ミリ秒でも
遅いと思います。
0700デフォルトの名無しさん
2008/04/18(金) 13:20:03> 例えば、三手後に詰みそうな局面が出てきたとします。
だから「三手後に詰みそう」だとどうやって正確に判定すんの?
言っとくけど王の近傍だけでは判定できないし、敵王の近傍に
自駒がたくさん利いていても、その利きによって打歩詰めになるかも
知れない。利いてりゃいいってもんでもない。
正確に判定したければ、実際に3手読むほうがよっぽど速い。
> 先手と後手の指し手が20通りずつあって、そのうち正解手は一手だけとして
即詰に関しては平均合法手は20もない。6,7ぐらい。
> その400通りの全てで詰め将棋を0.5秒つかったらそれだけで3分以上かかります。
日本語が意味不明なんだが、3手読むのに要する時間は1ms以下だと思うのだが。
一体、何の話をしてるんだ?
0701デフォルトの名無しさん
2008/04/18(金) 13:26:14> 評価関数を書くのではなく、評価関数を自動で調整する為に静止探索をつかうんです。
「評価関数を自動で調整する為に静止探索をつかう」なら
その「静止探索」で使うための評価関数がいるだろ。
> プロの指し手は最善だとすると、静止の局面から、
> 次の静止の局面への評価値に変化はないと仮定できると思います。
できない。少なくとも投了の数手前には形勢はどちらかに大きく傾いてる。
あんた本当にプログラム1行でも書けるのか?
プログラムの書けないキチガイの戯言ならこれ以上付き合わないぞ。
0702デフォルトの名無しさん
2008/04/18(金) 13:40:38> あんた本当にプログラム1行でも書けるのか?
今頃気づくなよw
どう考えても最初から素人の妄言だろ
0703デフォルトの名無しさん
2008/04/18(金) 13:42:36中・終盤で2対8でもいいんです。
双方が最善を指したならば数手以内なら2対8が保たれるはずです。
例えば、いったん飛車がとられるけど、金と桂を取り返せて
初めの静止局面から、次の静止局面の評価はほぼ等しくなるはずです。
プロがミスをしないものとします。
0704デフォルトの名無しさん
2008/04/18(金) 13:46:39ルートでは詰みはないけれど、探索中の3手後に詰みそうな局面が現れたとします。
このとき、全てに対して詰め将棋を計算するのは効率は悪いって事ですよ。
だから、局面から危険度が求まれば、詰め将棋をしなくて良い場合がでてくるかもしれないってことです。
0705703
2008/04/18(金) 13:48:520706デフォルトの名無しさん
2008/04/18(金) 15:01:02あんたがプログラムが一行も書けない
掲示板をsageることすら知らない
日本語がままならないキチガイだって
ことはよくわかった。
プログラムが書けないなら、プログラムの勉強から先にやりなよ。
あんたが小・中学生ならいまからでも遅くはないだろう。
0707デフォルトの名無しさん
2008/04/18(金) 16:44:04いつからだって間に合うでしょう。。
0708デフォルトの名無しさん
2008/04/18(金) 19:50:23もちろんその通りなのだが、703の場合は日本語の勉強とかインターネットを使う勉強とか
たくさん他に勉強しないといけないことがあるように思ったんでな。
0709デフォルトの名無しさん
2008/04/18(金) 20:57:180710デフォルトの名無しさん
2008/04/21(月) 00:30:250711デフォルトの名無しさん
2008/04/21(月) 00:56:48一種の芸術技能だと考えると確かに30越えはきつそうだが…
0712デフォルトの名無しさん
2008/04/28(月) 07:07:00無駄合いの判断でつまっています。なにかいい考え方はありますでしょうか?
0713デフォルトの名無しさん
2008/04/28(月) 10:06:31「コンピュータ将棋の進歩」の1を読んだらどうだ?
0714デフォルトの名無しさん
2008/04/28(月) 13:04:34うさ親さんの「コンピュータ将棋のアルゴリズム」にも解決法が
示されているよ。「王手を掛けた駒で合い駒を取り、その合い駒を
玉方にすぐに返した時にそれでも詰むならばそれは無駄合いである」
と言う考え方らしい。
「柿木のアルゴリズム」と呼ばれるのだそうな。
0715デフォルトの名無しさん
2008/04/28(月) 13:24:07まとめると、引きつけておいて、その駒が取れて逃れられるケース以外は無駄合いらしいということ。
0716デフォルトの名無しさん
2008/05/03(土) 14:34:100717デフォルトの名無しさん
2008/05/06(火) 16:50:000718デフォルトの名無しさん
2008/05/11(日) 19:14:300719デフォルトの名無しさん
2008/05/11(日) 23:19:58GUIに「CSA将棋」を使うか「将棋所」を使ったほうがいいか考えています。
他に何か良さそうな物が有れば教えてください。
行く行くはコンピュータ将棋選手権に出たいと考えています。
0720デフォルトの名無しさん
2008/05/11(日) 23:35:190721デフォルトの名無しさん
2008/05/11(日) 23:39:100722デフォルトの名無しさん
2008/05/12(月) 01:22:35俺も将棋プログラムしてみようかな…
0723デフォルトの名無しさん
2008/05/12(月) 18:07:38こいつ?
2回目以降の探索の確率は 投稿者:初心者 投稿日:2008年 5月 7日(水)03時15分22秒 編集済
2回目以降の探索の確率は、どうやって決めますか?
1回目の探索で、たとえば、王手やそれをかわす手、飛車取りやそれをかわす手などは
高い確率にするのは当然と思いますが、2回目は得点に応じて確率を割り振りますか?
しかし、得点比率で割り振ると飛車が逃げる手が10通りあってどれもがほぼ同点だと
重要な手なのに、割り振る値は小さくなってしまいます。
かわす場合は特別で、一手であるかの様に扱うとかわしてすぐに取られてしまう手にも
高確率を与えてしまう事になります。
あと初期の確率は、完全に無視して、得点だけにするかどうかもはっきりしません。
かわす手はその時点で、一番高い一手のみを採用して、あとは無いものとして扱って
確率を分配すれば良さそうですね。その手を使って不利にならなければそのままで良いし
無視したほかの手より得点が下がればそちらを採用すればいいので。
0724デフォルトの名無しさん
2008/05/17(土) 18:46:41そのくせ駒がぶつかると強くなる 将棋の勉強にちっともならない
0725デフォルトの名無しさん
2008/05/17(土) 19:26:590726デフォルトの名無しさん
2008/05/18(日) 01:06:52序盤なんてどうでもいいんだと
0727デフォルトの名無しさん
2008/05/20(火) 13:34:56http://www.pressblog.jp/static/pressblog.aspx
yaneuraoのブログを訪問したり、コメントしたりすると、原稿料がアップする仕組みです。
0728デフォルトの名無しさん
2008/05/20(火) 14:16:250729デフォルトの名無しさん
2008/05/20(火) 14:30:15キチガイ帰れ
0730デフォルトの名無しさん
2008/05/20(火) 14:31:21http://d.hatena.ne.jp/yaneurao/20080510
弓月とか言うキチガイの模様。
0731デフォルトの名無しさん
2008/05/20(火) 14:46:030732デフォルトの名無しさん
2008/05/20(火) 14:53:37http://d.hatena.ne.jp/yaneurao/20080509
0733デフォルトの名無しさん
2008/05/20(火) 14:57:350734デフォルトの名無しさん
2008/05/20(火) 14:59:450735デフォルトの名無しさん
2008/05/20(火) 15:02:560736デフォルトの名無しさん
2008/05/20(火) 15:04:16お前はお前用のキチガイスレに帰れ
http://love6.2ch.net/test/read.cgi/sf/1177547691/
0737デフォルトの名無しさん
2008/05/20(火) 15:05:50この弓月とか言う精神障害者用のスレは、こっちじゃね?
http://science6.2ch.net/test/read.cgi/sci/1165122111/
0738デフォルトの名無しさん
2008/05/20(火) 17:54:450739デフォルトの名無しさん
2008/05/20(火) 18:30:36お前は、半角入力すら出来ない知能障害者
0740デフォルトの名無しさん
2008/05/20(火) 18:34:00--
727 名前:デフォルトの名無しさん[SAGE] 投稿日:2008/05/20(火) 13:34:56
yaneuraoの宣伝ブログの裏側はこうなっています。
http://www.pressblog.jp/static/pressblog.aspx
yaneuraoのブログを訪問したり、コメントしたりすると、原稿料がアップする仕組みです。
731 名前:デフォルトの名無しさん[SAGE] 投稿日:2008/05/20(火) 14:46:03
集客力のあるブロガーほど報酬が高いのは当たり前
733 名前:デフォルトの名無しさん[SAGE] 投稿日:2008/05/20(火) 14:57:35
ここのところ屋根裏は毎朝宣伝こいてるな
734 名前:デフォルトの名無しさん[SAGE] 投稿日:2008/05/20(火) 14:59:45
集団ストーカー激指&やねうらおはもはや有名
738 名前:デフォルトの名無しさん[SAGE] 投稿日:2008/05/20(火) 17:54:45
以上、集団ストーカーの実演でした。
--
判りやすいと言うかなんと言うか……
0741デフォルトの名無しさん
2008/05/20(火) 19:11:120742デフォルトの名無しさん
2008/05/20(火) 19:26:300743デフォルトの名無しさん
2008/05/20(火) 20:23:39お前激しくスレ違いだから以下の精神病患者スレに移動願う。。
http://love6.2ch.net/test/read.cgi/sf/1177547691/
http://science6.2ch.net/test/read.cgi/sci/1165122111/
0744デフォルトの名無しさん
2008/05/20(火) 20:27:460745デフォルトの名無しさん
2008/05/22(木) 14:35:45あとチェスでいうオープニングの研究もしたほうがいいと思うよー
0746デフォルトの名無しさん
2008/05/22(木) 14:43:470747デフォルトの名無しさん
2008/05/22(木) 15:13:43▲7六歩 △3四歩 ▲2六歩 △4四歩 ▲2五歩 △3三角
▲4八銀 △4二飛 ▲6八玉 △3二銀 ▲7八玉 △7二銀
▲5六歩 △4三銀 ▲5八金右 △9四歩 ▲9六歩 △6二玉
▲5七銀 △6四歩 ▲3六歩 △7一玉 ▲8六歩 △5二金左
▲8七玉 △7四歩 ▲7八銀 △8四歩 ▲3八飛 △3二飛
▲6六歩 △5四歩 ▲6七金 △6三金 ▲6八銀 △8二玉
▲7七銀右 △4五歩 ▲7九角 △5五歩 ▲3七桂 △5四銀
▲5五歩 △同 角 ▲5六金 △4四角 ▲5八飛 △2六角
▲4五金 △5三歩 ▲5四金 △同 歩 ▲4三銀 △3三飛
▲5四銀成 △同 金 ▲同 飛 △3七角成 ▲4六角 △3六馬
▲4四飛 △4三歩 ▲6四角 △7三銀打 ▲4六飛 △6三馬
▲4二角成 △5二金打 ▲3三馬 △同 桂 ▲3一飛 △2五桂
▲3四飛成 △3七角 ▲5四金 △6二馬 ▲2五龍 △5三歩
▲5五金 △1九角成 ▲6五桂 △4六馬 ▲同 歩 △5七飛
▲5八歩 △1七飛成 ▲3三角 △6七香 ▲5九金 △6八歩
▲1八歩 △3七龍 ▲1五角成 △3九龍 ▲4八馬 △1九龍
▲3七馬 △3九龍 ▲4八馬 △同 龍 ▲同 金 △6九歩成
▲6七銀 △7九と ▲2九龍 △8九と ▲同 龍 △5四歩
▲7三桂成 △同 馬 ▲6五金 △5三桂 ▲5四金 △5五桂
▲7八銀 △2七角 ▲5三金 △同 金 ▲6五桂 △5四角成
▲5七金 △6四馬上 ▲5六香 △6三金 ▲8八玉 △7三桂打
▲2一飛 △6五桂 ▲同 歩 △同馬右 ▲6六銀打 △6四桂
この棋譜において最後の行の△同馬右です。これは△同馬直と書くのが正しいと思うのですが。
柿崎将棋では正しく処理されています。何故なのでしょう?
右と書いて右に無ければすぐ下を探すというのが正しいのですか?
ちなみに直と書き直しても正しく処理されました。
0748747
2008/05/22(木) 16:01:100749デフォルトの名無しさん
2008/05/22(木) 16:06:45色々考えた結果、最強はデータベースっぽいアプローチなのかなと思った。
0750デフォルトの名無しさん
2008/05/24(土) 11:12:38将棋は中盤に入ると毎回、一度も過去に出ていない局面が毎回大量に出てくるので、
100TBぐらいでは全然歯が立たないみたいなんだよな
データベースに全部収まるとカッコイイんだが
要は、ある局面を評価できればいいだけなので、
データベースとしてデータを持っておくことに意味があるわけではない……
0751デフォルトの名無しさん
2008/05/24(土) 11:24:13普通のコンピュータで完全に読みきることは出来ないくらい難しい。
データベースがあると終盤をかなり上手く指すようになるけど
思考力は人間の半分以下
0752デフォルトの名無しさん
2008/05/26(月) 03:00:37*:先手の勝ち数:後手の勝ち数:*:*:戦型
1:739:626:0:0:その他の戦型
2:1282:1131:0:0:横歩取り
3:1994:1785:0:0:中飛車
4:4975:4259:0:0:矢倉
5:4208:3825:0:0:四間飛車
6:1647:1608:0:0:相掛かり
7:516:378:0:0:角交換腰掛銀
8:37:33:0:0:袖飛車
9:928:749:0:0:向飛車
10:1699:1679:0:0:三間飛車
11:646:617:0:0:相振飛車
12:114:121:0:0:右四間飛車
13:847:754:0:0:角換わり
14:737:822:0:0:ひねり飛車
15:40:43:0:0:筋違角
16:123:81:0:0:右玉
17:297:227:0:0:陽動振飛車
18:56:38:0:0:5筋位取り
19:139:144:0:0:角交換その他
20:50:60:0:0:角換わり棒銀
21:34:17:0:0:角換わり拒否
22:18:13:0:0:風車
23:38:20:0:0:棒銀
24:29:23:0:0:タテ歩取り
25:93:98:0:0:雁木
0753デフォルトの名無しさん
2008/05/26(月) 03:04:331:968:881:0:0:王位戦
2:5715:5183:0:0:順位戦
3:837:764:0:0:NHK杯
4:1525:1229:0:0:竜王戦
5:146:128:0:0:日本シリーズ
6:228:196:0:0:朝日オープン
7:1438:1385:0:0:その他の棋戦
8:788:680:0:0:棋王戦
9:71:65:0:0:達人戦
10:1503:1308:0:0:棋聖戦
11:741:745:0:0:銀河戦
12:133:107:0:0:レディースオープン
13:865:820:0:0:王座戦
14:653:540:0:0:新人王戦
15:269:212:0:0:名人戦
16:40:43:0:0:朝日アマ名人戦
17:249:230:0:0:勝ち抜き戦
18:127:125:0:0:女流王将戦
19:102:99:0:0:倉敷藤花
20:490:434:0:0:早指戦
21:1122:943:0:0:王将戦
22:116:108:0:0:女流王位戦
23:212:203:0:0:女流名人戦
24:73:80:0:0:近将カップ
25:130:96:0:0:三段リーグ
26:101:104:0:0:早指新鋭戦
27:10:9:0:0:中学生名人戦
28:20:28:0:0:アマ王将戦
29:10:21:0:0:赤旗名人戦
30:59:53:0:0:全日アマ名人戦
0754デフォルトの名無しさん
2008/05/26(月) 03:06:1531:13:22:0:0:平成最強戦
32:31:25:0:0:グランドチャンピオン
33:55:63:0:0:鹿島杯
34:25:30:0:0:アマ竜王戦
35:604:538:0:0:全日プロ
36:28:22:0:0:レーティング選手権
37:2:4:0:0:学生王将戦
38:12:20:0:0:小学生名人戦
39:19:15:0:0:学生名人戦
40:11:13:0:0:女流アマ名人戦
41:13:25:0:0:IBM杯
42:177:170:0:0:天王戦
43:95:84:0:0:若獅子戦
44:411:333:0:0:名将戦
45:430:309:0:0:十段戦
46:48:41:0:0:若駒戦
47:76:94:0:0:連盟杯戦
48:19:16:0:0:名棋戦
49:100:100:0:0:奨励会
50:43:53:0:0:最強者決定戦
51:27:16:0:0:古豪新鋭戦
52:82:87:0:0:九段戦
53:19:44:0:0:東京新聞杯
54:36:40:0:0:支部対抗戦
55:4:1:0:0:学生女流名人戦
0755デフォルトの名無しさん
2008/05/26(月) 03:07:2457:1:0:0:0:細:九段設定戦
58:8:10:0:0:アマ女王戦
59:10:7:0:0:育成会
60:47:61:0:0:都名人戦
61:8:4:0:0:高校竜王戦
62:1:3:0:0:その他の棋戦
63:28:18:0:0:大和証券杯
64:1:0:0:0:NHK杯
65:0:2:0:0:順位戦
66:38:30:0:0:朝日杯
67:22:31:0:0:マイナビ
68:0:1:0:0:倉敷藤花戦
0756デフォルトの名無しさん
2008/05/26(月) 03:09:331:585:178:491:253:羽生善治
2:644:304:539:378:谷川浩司
3:187:180:155:208:島 朗
4:119:87:122:108:三浦弘行
5:105:88:83:95:畠山成幸
6:258:130:229:176:郷田真隆
7:216:163:203:206:南 芳一
8:90:62:82:77:真田圭一
9:128:92:132:105:中田宏樹
10:341:156:272:202:森内俊之
11:260:103:237:180:丸山忠久
12:208:125:180:150:藤井 猛
13:533:332:468:370:中原 誠
14:363:173:307:224:佐藤康光
15:57:41:62:44:松尾 歩
16:102:83:93:105:日浦市郎
17:97:96:98:69:畠山 鎮
18:179:121:150:143:阿部 隆
19:108:57:115:56:渡辺 明
20:155:104:155:115:中川大輔
21:39:57:29:59:伊藤博文
22:226:205:189:243:桐山清澄
23:169:110:153:130:先崎 学
24:84:58:69:82:北浜健介
25:94:44:96:55:山崎隆之
26:67:85:56:100:前田祐司
27:184:206:145:204:青野照市
28:68:52:58:61:石橋幸緒
29:49:52:53:55:矢内理絵子
30:59:39:53:46:近藤正和
以下省略
0757デフォルトの名無しさん
2008/05/28(水) 02:43:54四間飛車だけだと先後どちらが振ったか分からないし、角換わりだけやたらと分類されてたり
もっとスマートに記述する方法はないの?
0758デフォルトの名無しさん
2008/05/28(水) 23:12:530759デフォルトの名無しさん
2008/05/31(土) 03:58:58実現しようっていうのがあったとおもうけど
それと似たように分散している計算力をあつめて全ての局面を評価するってできない?
0760デフォルトの名無しさん
2008/05/31(土) 04:53:190761デフォルトの名無しさん
2008/05/31(土) 23:53:06だから色んな人工頭脳をもった将棋プログラムを作ればいいと思う
俺には無理だけど
0762デフォルトの名無しさん
2008/05/31(土) 23:57:37そういう輩が時々現れるよね
0763デフォルトの名無しさん
2008/06/01(日) 04:05:5381**(8*2+1) で、ルールの制約があるからこれよりもっと少ないと思う
http://www.google.co.jp/search?hl=ja&rlz=1T4GFRD_ja___JP238&q=81**%288*2%2B1%29&btnG=%E6%A4%9C%E7%B4%A2&lr=
それまでの手がどうであってもルール上許される配置のどれかになる
でルール上許される全ての局面に評価値をつける
勝敗が微妙な局面もあるけど、そこから
自分の勝ちの局面に少ない手で到達できるとか
相手の打ち方によらず確実に勝ち局面に到達できる手とか
があるほど評価値を高くするって案はどう?
0764デフォルトの名無しさん
2008/06/01(日) 04:24:12成りがあるから81**29か
http://www.google.co.jp/search?hl=ja&rlz=1T4GFRD_ja___JP238&q=81**29&lr=
で特定局面から持ち駒も含めて別の局面へ遷移する手を考える
つまり各局面間の遷移に分割して解析する
0765デフォルトの名無しさん
2008/06/01(日) 04:43:55ちがうわ 29**81かw
81C40 * 29**40 でもいいか?
0766デフォルトの名無しさん
2008/06/01(日) 04:47:39http://www.google.co.jp/search?hl=ja&q=%2881+choose+40%29*29%5E40&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
0767デフォルトの名無しさん
2008/06/01(日) 10:47:51又は、持っている方UPお願いいたします。
0768デフォルトの名無しさん
2008/06/01(日) 12:29:250769デフォルトの名無しさん
2008/06/01(日) 15:21:190770デフォルトの名無しさん
2008/06/01(日) 15:27:020771デフォルトの名無しさん
2008/06/01(日) 19:14:07開始局面に向かって戻っていくだけだから、連続的な評価値なんて不要
0772デフォルトの名無しさん
2008/06/01(日) 19:16:13戻して行く?
どこで手駒を使ったかまで遡れるのか?
0773デフォルトの名無しさん
2008/06/01(日) 19:24:15(現在の)局面状態だけを見て各局面への遷移を分類するのは難しい。
あちこちにループが発生する。詳しくはこのスレを頭から良く読んでね。
0774デフォルトの名無しさん
2008/06/01(日) 19:31:23つまり、その局面に至る経路情報を含めて分類してるのか、
経路情報は捨てているのか?
0775デフォルトの名無しさん
2008/06/01(日) 19:57:50http://www9.atwiki.jp/othello/pages/27.html
0776デフォルトの名無しさん
2008/06/01(日) 20:11:20居ないんじゃないかな?
オセロや囲碁と違って将棋は終盤がなかなか収束しない。
終局図が何通りあるのかも良く分からんし。
0777デフォルトの名無しさん
2008/06/01(日) 20:26:01投了局面から「詰めろ?」を遡ることで
投了局面より前の局面の勝敗を決定できるのは確かだと思う
だけど更に遡ると、遡ったのとは違う経路で将棋が進んで
違う結果の局面になることがあると思う
一手で形勢逆転するような手があると思う
>>773
ループは枝刈りするとか対策は考えられるんじゃないかな
目標の中間局面に到達するまでの手の経路は
手数が多くても少なくても勝敗には関係ないよね
最短でなくて遠回りしてもいい
さしてるうちに、最初目標としていた中間局面じゃなくて
自分に有利な別の中間局面に変えてもいいし
0778デフォルトの名無しさん
2008/06/01(日) 20:36:36・局面のサブセットにだけ勝敗の評価が決まっているものがある
・局面の遷移がかなり限定されていれば(詰めろみたいに)勝敗の評価を決められる
・そのほかの局面は手によって評価が変わる
って感じのイメージを持ってる
0779デフォルトの名無しさん
2008/06/01(日) 21:47:41将棋の「局面」を見て形勢を判断するためには
単なる盤上や駒台の様子だけではなく
その局面に至るまでの経緯も必要
極端な話、たとえば指しかけを引き継いだとして
「この盤面は敵玉に詰みがあるぞ!」と思っても
それは千日手の4回目かもしれないとかそういうこと
0780デフォルトの名無しさん
2008/06/01(日) 21:49:46末端局面から遡って勝ち、負け、引き分け(千日手)で
確定的にラベル付けするだけじゃなく、
途中局面に中間的な評価値を付けようって事?
おもしろい考え方だが、一体どうやって?
0781デフォルトの名無しさん
2008/06/01(日) 21:54:38「勝ち」か「負け」か「引き分け」になるだろうって
0782デフォルトの名無しさん
2008/06/01(日) 22:01:06> それは千日手の4回目かもしれないとかそういうこと
(現在の技術で可能かどうかは知らんが)データベースを引くのだから、現在の局面に
至るまでに詰みがある局面を逃しているはずはないと仮定できるだろう。
だから、連続王手の千日手のことは考慮しなくて良いと思う。
0783デフォルトの名無しさん
2008/06/01(日) 22:03:41ソフトが「この盤面は敵玉に詰みがあるぞ!」と思って指したら。
システムから千日手で引き分けと言われるだけで。その事にソフトは何の関係が無いわけ。
それを操作した人間が、あちゃ〜〜前に勝ってたのか、と思うだけ。
それに何の問題があるのか?
0784デフォルトの名無しさん
2008/06/01(日) 22:05:150785デフォルトの名無しさん
2008/06/01(日) 22:05:59もちろん、そうなんだが >777-778が何か面白いアイデア持ってないかな?と。
例えば勝ちに至る経路の広さや近さで評価値を付けるとか。
0786デフォルトの名無しさん
2008/06/01(日) 22:06:550787デフォルトの名無しさん
2008/06/01(日) 22:16:22いや、「神ならぬ人間がその盤面を引き継いだとして
どれほど勝ちやすいか」っていう評価値じゃね?
0788デフォルトの名無しさん
2008/06/01(日) 22:21:04自分についてはそういう仮定を置くのもアリかもしれないけど
少なくとも相手のことについてはまずいだろう
「うむ、俺が勝つにはこの手しかない!
でも相手にこう王手されるとまずいな…
しかたない。勝ちはあきらめて千日手に持ち込むか…」
というようなケースってあるじゃんか
ところがこの相手の王手が千日手の4回目かもしれない
0789デフォルトの名無しさん
2008/06/01(日) 22:27:28与えられた局面が勝ちか負けかを判定するデータベースを構築する話をしているんだろ?
相手がポカして相手が勝てる局面を(その勝ちのための指し手を連続王手の千日手で)負けの状態に
してようが、それはデータベース構築には何の関係もないことだろ。
0790デフォルトの名無しさん
2008/06/01(日) 22:27:50もし考慮して欲しいなら、その旨のインターフェースを作るべき。
しかしその人間の目的を読み取る機能は、最強の将棋ソフト作るより遥かに
困難な人工知能が必要。
0791デフォルトの名無しさん
2008/06/01(日) 22:34:58ひとまず>>165-395あたりは読んでくれ
0792デフォルトの名無しさん
2008/06/01(日) 22:37:17実はそのデータベースを構築する事そのものが、その局面に至る経路を考慮する事を要請する。
さもないと探索あるいは末端局面からの遡りが止まらなくなる。
良く考えてみないと分かりにくい事だが、なぜ千日手のルールがあるのかを考えてみよう。
0793デフォルトの名無しさん
2008/06/01(日) 22:37:36「それは関係ないことだから関係ないのである。」
では説明になってないぽ
0794デフォルトの名無しさん
2008/06/01(日) 22:38:320795デフォルトの名無しさん
2008/06/01(日) 22:44:140796デフォルトの名無しさん
2008/06/01(日) 22:48:070797デフォルトの名無しさん
2008/06/01(日) 22:55:09「流れ」と言うのはある局面から別の局面に至る経路の事だよ、多分。
>794じゃないけど。
で、違う経路から見かけ上同一の局面に至る事は
それこそ幾らでもあるし、ループする事もある。
0798デフォルトの名無しさん
2008/06/01(日) 23:03:43勝ち、負け、千日手、勝ちか千日手、負けか千日手
を定義すれば局面評価DBを作る点では問題無くない?
0799デフォルトの名無しさん
2008/06/01(日) 23:11:41問題ないかどうかは、どういう目的で作るのかによるけど
そもそもそのような評価が、駒配置だけを見て可能か
ということに対して懐疑的なんだと思うよ
0800デフォルトの名無しさん
2008/06/01(日) 23:14:47盤面を評価してるように見えるから >789のように勘違いする人も居るんだよね。
ところがその評価はかなり荒い近似に過ぎないから通用するのであって、
厳密に確定局面から遡って評価しようとするとそこに至る経路情報が必須になる。
詰め将棋プログラムは確実に経路情報を考慮してるし、しないと答えを間違う。
いわゆるGHI問題。
0801デフォルトの名無しさん
2008/06/01(日) 23:29:54勝ち負けの決まる局面は確かに存在する
これらの情報で中間局面をどう評価するかだけど
相手の手が何であっても勝ち局面に遷移できる局面は勝ちたが
相手の手によって勝ち千日手負けのいずれも有りうる局面もあると思う
そんな局面は勝ちやすさで評価する
勝ちやすさは例えば勝ち評価値の局面への距離とかで決める
そんな単純じゃないと思うけどね
0802デフォルトの名無しさん
2008/06/02(月) 00:19:51俺はコンピュータ将棋の開発者で、GHI問題はもちろん知っている。
GHI問題を正しく理解していないのはお前のほうだろ。
詰みのあるすべての局面の集合から逆算してんだぜ?
GHI問題なんか起こるわけないだろ。
ただしそこに至るまでに同一局面が3回以上出てきていないという条件が必要だが。
(連続王手の千日手を発生させないため)
0803デフォルトの名無しさん
2008/06/02(月) 00:21:54>ただしそこに至るまでに同一局面が3回以上出てきていないという条件が必要だが。
おいおいw
0804デフォルトの名無しさん
2008/06/02(月) 00:24:48お前、頭おかしいんじゃねーの?
0805デフォルトの名無しさん
2008/06/02(月) 00:28:27権威づけか
0806デフォルトの名無しさん
2008/06/02(月) 00:29:35実際に作ってもない/作れない/作ったことがない奴に言われたくないね。
0807デフォルトの名無しさん
2008/06/02(月) 00:32:17そっちの方がよっぽど問題のような…
そんなに俺様の言うことを聞けって言いたいなら
コードの断片でもうpしてからにしろよ
できないならおとなしく名無しに戻っとけ
0808デフォルトの名無しさん
2008/06/02(月) 00:35:10理屈がわかってないのはお前。
お前はGHI問題が何故発生するのかわかっていない。
0809デフォルトの名無しさん
2008/06/02(月) 00:37:14イタイ奴が来たなwww
頭おかしんじゃね?
0810デフォルトの名無しさん
2008/06/02(月) 00:38:47詰め将棋解法プログラムのような答えが
厳密に求められる問題に取り組まないと
開発者と言えども勘違いする可能性はあるな。
0811デフォルトの名無しさん
2008/06/02(月) 00:39:57お前もGHI問題が何故発生するのか理解できていない。
0812807
2008/06/02(月) 00:40:44いや俺は横から茶々を入れてるだけで
何も言ってないんだけどな
自分以外(正確には自分に異論をいう奴)を全部
一人の人間だと思っちゃうっていうのは
ありがちなことなんだけどかっこよくはないよ
GHI問題については>>191あたりから始まって
>>234とかの議論でさんざんがいしゅつなんだけど
もちろんそのへんはログ読んだ上でのレスだよな?
しかも「お前はわかっていない」とかじゃなくてさ、
だったらちょっと簡単にでいいから説明してみろよ
ほら
0813デフォルトの名無しさん
2008/06/02(月) 00:43:390814789
2008/06/02(月) 00:44:07詰み局面から逆算するんだぜ。GHI問題なんか起こらないよ。
GHI問題が起きるのは、探索中の循環を即、不詰めと判定するからだ。
GHI問題でよく話題になる図を勝ちの局面であるIから逆算して行くとわかる。
0815デフォルトの名無しさん
2008/06/02(月) 00:45:06みんな液晶の仕組みを理解してるだなんて思ってないだろ?
そういうことだよ
0816デフォルトの名無しさん
2008/06/02(月) 00:48:23どのように逆算するの?
つまりその逆算する時に経路情報を考慮するの?しないの?
0817デフォルトの名無しさん
2008/06/02(月) 00:49:31あー詰み局面から逆算していく話が続いてたのか
その場合で、局面というのは駒配置だけじゃなくて
局面の出現回数も持たなきゃいけないよな
そうしないと、千日手になるはずの手順は
永遠に「勝ち」とも「負け」とも塗られないことになる
ような気がするんだが
0818デフォルトの名無しさん
2008/06/02(月) 00:52:52↑ ↓
○←○←○
こういうループだけじゃなくて
○→○→○→○→○
↑ ↓
○←○←○
こういうループもあるよな
0819789
2008/06/02(月) 00:53:08経路情報を考慮しないし、する必要はない。
ただし循環は検出する必要がある。
具体的に書くと
Iが勝ちとわかっている局面。よって、直前のGも勝ち。その直前のEも勝ち。
Eに至る手順はB,K。Bは相手の手番なのでDを選択されて負け。よってBは負け。(勝ち局面の集合にBは含めない。)
Kは勝ち。たどって、Jも勝ち。Hも勝ち。Hに至るのはE,F。
Eは自分の手番だし、勝ちだとわかっている局面。よって、Eのほうの探索はここで打ち切り。
残るはF。Fは勝ち。その直前のCも勝ち。その直前のAの局面は自分の手番なのでCを選んで勝ち。
よってAは勝ちの局面。GHI問題なんか発生していないし正しくAの局面の勝ちを判定できている。
0820デフォルトの名無しさん
2008/06/02(月) 00:55:09>>234のPDFを参照な
0821デフォルトの名無しさん
2008/06/02(月) 00:56:26./ニYニヽ
r、r.rヽ. / (0)(0)ヽ
r |_,|_,|_,|/ ⌒`´⌒ \ で?っていう
|_,|_,|_,|_,| , -) (-、.|
|_,|_,|_人 (^ iヽ__ ノ l |
| ) ヽノ | `ー'´ /
| `".`´ ノ
入_ノ
\_/
/
/
0822789
2008/06/02(月) 00:56:33> あー詰み局面から逆算していく話が続いてたのか
続いているも何も、最初から最後まで、詰み局面をデータベース化しよう、という話なのだが。
具体的には、これだ。
http://d.hatena.ne.jp/KZR/20080531/p1
0824789
2008/06/02(月) 01:02:58> その場合で、局面というのは駒配置だけじゃなくて
> 局面の出現回数も持たなきゃいけないよな
「局面の出現回数」は持たなくてもいい。
>802で書いたが
「ただしそこ(判定したい局面)に至るまでに同一局面が3回以上出てきていないという条件が必要」だが、
これを前提条件とできるなら「局面の出現回数」のデータベースへの記録は不要。
ただし、勝ち/負け/引き分けとラベリングされた局面はすべて記録(データベース上に保持)していることが前提。
0825デフォルトの名無しさん
2008/06/02(月) 01:03:49あれ、与えられた局面が勝ちか負けかを判定するデータベース
つまり必勝定跡を構築する話をしているんだと思ってたんだが
そして、その「局面」というのが駒配置だけでよいのか、それとも
駒配置の出現回数も持っていなきゃならないのかだと思ったが
経路という言い方をするからGHI問題と絡んでいるように見えて
いろいろみんな混乱したるんじゃないかな
それで、仮に、駒配置だけで勝ち負けが決まるのだとしたら
もちろん「この局面は千日手」というラベルを貼られる
局面(駒配置)もあると思うのだけど、
詰み局面(駒配置)からたどっていったとき
千日手のラベルを貼る機会というのはどういうとき?
0826789
2008/06/02(月) 01:04:53http://d.hatena.ne.jp/mkomiya/20080601/1212289142
http://d.hatena.ne.jp/yaneurao/20080602
このへんも参考にしてくれ。
0827789
2008/06/02(月) 01:06:49> あれ、与えられた局面が勝ちか負けかを判定するデータベース
> つまり必勝定跡を構築する話をしているんだと思ってたんだが
その過程で引き分けデータベースも出来るだろ。
> そして、その「局面」というのが駒配置だけでよいのか、それとも
> 駒配置の出現回数も持っていなきゃならないのかだと思ったが
俺の言う 局面 とは 盤上の駒配置・手番。その局面の出現回数は関係ない。
0828デフォルトの名無しさん
2008/06/02(月) 01:17:58あー、その条件があればたぶんそうだよな
でも前に進むなら、ループしたら「千日手」、でいいと思うけど
後ろに戻っているのだから難しい気が
まあ、どうせ局面(駒配置)の数は有限なのだから
全部調べて「勝ち」にも「負け」にもならなかったものは千日手
でいいのかもしれないけど
0829789
2008/06/02(月) 01:20:12> 詰み局面(駒配置)からたどっていったとき
> 千日手のラベルを貼る機会というのはどういうとき?
いま、 A,Bが未ラベルとする。Aは自分の手番、Bは相手の手番とする。
このとき A→B→A のような循環を発見した。
AからB以外に行く手は負けとする。
BからA以外に行く手は勝ち(=相手の負け)とする。
このとき自分にとっても相手にとっても千日手を選択するのが最善だからA,Bの局面の最善は引き分け。
このように未ラベルの局面同士の循環を発見して、この循環がお互いの最善であるときこれらの局面を
引き分けのリストに追加する。
825はどうも勘違いしているようだが、このA,Bの局面の「出現回数」を記録しておいてもこの循環の検出の役には立たない。
0830デフォルトの名無しさん
2008/06/02(月) 01:21:27下の図は「双方最善を尽くしたら出現しないはずの詰み形」かな
つまりループからしか到達できない詰み形
でもそれを排除してしまったら次の一手解答マシンとは言えないよ
0831デフォルトの名無しさん
2008/06/02(月) 01:27:55あー、うんそれならいいよ
ようするに>>828の後半と同じことだな
神ならぬ人間から盤面を引き継ぐことはない、という前提なら
たぶんそれでいいんじゃないかと思う
「勝ち筋があるけど、引継ぎ元が棋譜汚しをしてくれたせいで
千日手になるからそれは指せない」とかは考慮しないということで
0832789
2008/06/02(月) 01:28:14引き分けの検出のために、局面の循環を発見する方法は別の方法が必要だ。
例えば、次の例を考える。
A,B,Cが未ラベルで、Aは自分の手番、B,Cは相手の手番とする。
・AからB,Cに遷移でき、それ以外は負け
・B,CからAに遷移でき、それ以外は勝ち(=相手の負け)
この場合も双方、千日手にするのが最善である。
この循環を検出するためには、AはポインタでありB,Cをポイントしており、
B,CもそれぞれAをポイントしていると考え、JavaVMなどで見られる
garbage collectorのようなものを実装する必要がある。(この説明でわかってもらえるだろうか?)
0833789
2008/06/02(月) 01:31:04garbageが起きて回収されるなら、それは循環参照がされていたということだ。
garbage collectorの実装はいろいろあるから、詳しくはその手の本を見てくれ。
0834デフォルトの名無しさん
2008/06/02(月) 01:31:38あー、GCが循環参照を発見する方法か
でも、現実的な時間にリアルタイムで計算するのではなくて
巨大な次の一手解答集を用意するイメージなのであれば
勝ちでも負けでもないものは引き分け、でいいような
0836デフォルトの名無しさん
2008/06/02(月) 01:36:56ゲームの数学は全然わからない素人だからあれだが
寝るぽ
乙
0837デフォルトの名無しさん
2008/06/02(月) 01:39:22そうだよな。
>829の話は尤もらしいのでつい信用しそうになったが、
先手後手双方、最善を尽くした場合の局面だけでなく、
任意の局面にラベリングしようと思ったら
扱えない局面が出て来そうな気がする。
詰み局面から逆算してデータベース化するだけであって、
そんなもの知らないってんなら、それはそれで良いけど。
0838デフォルトの名無しさん
2008/06/02(月) 01:41:33>>834の方法はそのままでは駄目だな
0839789
2008/06/02(月) 01:45:11> 任意の局面にラベリングしようと思ったら
「1手詰みの局面」のすべてを表す集合から逆算するって話なんだぜ?
任意の局面にラベリングできるよ。
将棋の初期陣形とは何の関係もない。
詰みに至ることが出来る局面の解は(無限のメモリと無限の計算時間があれば)
すべて求めるに決まってるじゃないか。
0840デフォルトの名無しさん
2008/06/02(月) 01:47:590841デフォルトの名無しさん
2008/06/02(月) 01:52:000842789
2008/06/02(月) 01:52:19それはその通り。
検出された循環(DCG)内で、連続王手にならないループが一つもなければないほうの負け。
双方が王手しあうループしかない場合、互いに逆王手を繰り返すことになるのだが、これは
よく知らないが、将棋のルールでは引き分けなんじゃないかと思う。
0844デフォルトの名無しさん
2008/06/02(月) 01:56:21その4回目に登場する局面を指す方が負けか
すると、「どの地点からループに合流したか」が
重要になってくるような気も…。
0846789
2008/06/02(月) 01:58:32いま検討していたのだが、双方連続王手は普通の将棋の駒では実現できないようだ。
0847デフォルトの名無しさん
2008/06/02(月) 02:02:19A は自分の手番、B は相手の手番だとして
C → B → A → B → A → B → A
と進めば次で B を指せないからこれは自分の負け
D → A → B → A → B → A → B
と進めば次で A を指せないからこれは自分の勝ち
だったら A とか B は自分の勝ちなのか負けなのか
0848デフォルトの名無しさん
2008/06/02(月) 02:05:39んーそれはほんとなのかな
0850デフォルトの名無しさん
2008/06/02(月) 02:21:39出来る気がする。考えてみよう
0852デフォルトの名無しさん
2008/06/02(月) 02:29:56スマートでなくてもいいから証明してくれ
0853789
2008/06/02(月) 02:46:56王手の種類を
(A) 王の移動による王手
(B)駒を打つ・移動させることによる王手とにわける。
Aは、大駒の利きが王によって遮断されて敵玉をにらんでいる状態でなければならない。
しかし、…(中略)で、そのように配置することは不可能である。
Bは、その駒を打つ・移動させることが直前の王手を防ぐ手になっていなければならない。
しかし、直前の王手を、(A)、(B)それぞれの場合について場合分けして考えると
…(中略)でこれまた不可能である。
よって、双方連続王手は不可能である。
0854789
2008/06/02(月) 02:57:31> しかし、…(中略)で、そのように配置することは不可能である。
この部分は、王の影になっていたのが直進できる駒かそうでないかで場合分けするんだ。
もっとスマートに証明出来るかどうかは知らん。
0855デフォルトの名無しさん
2008/06/02(月) 03:02:13一手目の局面もラベルがつくのかな?
0856デフォルトの名無しさん
2008/06/02(月) 03:14:04最近ブックを実装したんだけどブックにはどんな情報を保持すればいい?
今のところ自分はハッシュ値と評価値とそれを算出した読みの深さと勝ち負けなんかのフラグ。
0858デフォルトの名無しさん
2008/06/02(月) 03:18:48お休み
0859789
2008/06/02(月) 03:24:02> 一手目の局面もラベルがつくのかな?
839の話をしていて、「一手目の局面」が初期陣形のことを指しているなら、
初期陣形にも勝ち/負け/引き分けのいずれかのラベルが付く。
0860デフォルトの名無しさん
2008/06/02(月) 03:26:260861デフォルトの名無しさん
2008/06/02(月) 03:39:08おまいら最強のシストレFXプログラムをしてみろよ
http://pc11.2ch.net/test/read.cgi/tech/1211790540/
0862デフォルトの名無しさん
2008/06/02(月) 10:06:32理詰めゲームとサイコロ賭博は全く違う話ですから食いつかないかと
0863デフォルトの名無しさん
2008/06/02(月) 22:53:424回取った方が勝ちというゲームですが何か
0864デフォルトの名無しさん
2008/06/03(火) 00:28:090865デフォルトの名無しさん
2008/06/03(火) 00:55:47リアルタイムだろどれもこれも。
0866デフォルトの名無しさん
2008/06/03(火) 02:26:47そうすると次に遷移可能な局面の集合が変わる
局面の履歴か持駒のバリエーションを考慮する必要がある
0867デフォルトの名無しさん
2008/06/03(火) 21:16:32>>819
データベースを作ったとして、実際に使う時には経路があるにこしたことはないよね。
例えば、データベースには負けと書いてあっても、実際に指し続けて、もし証
明木のどこかで今までに3回あらわれた局面を通過すれば引き分けになるから。
反対意見ではなくて、経路の活用の余地について関連コメント。
0868デフォルトの名無しさん
2008/06/03(火) 22:22:40そんなデータベースは現実的に作れる規模ではないというのはおいとくとして・・・
一体、おまいは何の経路をデータベースに保存しとこうと思うんだ?
与えられた局面から勝ちまでの手順か?勝ちまでの手順は木になってるわけで、
そんなものは全部保存しておけるわけないだろ。
しかし、仮にストレージが無限にあって保存できるとしよう。
では、初期局面から勝ちまでの手順をデータベースから取得しようと思うと、
それこそ終局までのありとあらゆる変化を含んだ木が得られるわけだよな。
これがメモリに入るか?宇宙に存在する原子の数より多いんだぞ。
0869デフォルトの名無しさん
2008/06/03(火) 22:25:47でも、仮に、無限にデータの入る秘密の箱があって、メモリに読み込まなくてもいいとしよう。
この木のなかに、その局面に至るまでに3回現れた局面があるかどうか調べるのに
どれだけのコストが必要になる?仮に現れていることがわかったとして、ではその局面を
回避して勝ちに行く経路があるかどうかをどうやって調べるんだ?
それってこのAND/OR木を探索しているのと同じだけコストがかからないか?
うまくすれば探索しなくてすむとは思うが、1つの局面に対して莫大なindexを貼る必要があるだろ。
宇宙に存在する原子の数の2乗や3乗で済まないと思うぞ。
0870デフォルトの名無しさん
2008/06/03(火) 22:36:23人間みたいな間違いだらけの棋力の低い将棋を神様に指継いでもらうということ自体が失礼ってもんだ。
でも、もうちょっと建設的な意見を。
勝ち/負け/引き分けをラベリングするときに、勝ち/負けなら「何手で詰む」というのを記録しておけば、
与えられた局面から終局への距離がわかるから、与えられた局面から終局に近くなるほうに向かって、
「3回あらわれた局面を通過」しないように勝ちを探して探索すればいい。
そうすれば、その探索の深さの範囲内では「3回あらわれた局面を通過」しない勝ちを探すことは出来るだろ。
このときの「探索の深さ」が深ければ深いほど正解に近くなる。この手法のほうが経路なんかをデータベースに
保存するよりよっぽどいい。
0871デフォルトの名無しさん
2008/06/03(火) 23:41:19チェスのエンディングデータベースですな
3回あらわれた局面を通過しないように、なんて考える必要はないですよ
0872デフォルトの名無しさん
2008/06/04(水) 03:15:23例えば桂馬を持っているとか香車が5マス勧めるとか
0873デフォルトの名無しさん
2008/06/04(水) 06:23:31俺も「3回あらわれた局面を通過しないように、なんて考える必要はない」派だが、
867が考えたそうだったので、考えてみた。
0874デフォルトの名無しさん
2008/06/04(水) 20:37:53そんな状況を考える必要はないという立場ならそれでいいよ。
現実的には局面だけのデータベースもストレージに載らないので初めから架空
の議論だと思っていたが、俺が何か前提を見逃しているのかな。
気分を害したなら謝るよ。
0875デフォルトの名無しさん
2008/06/04(水) 22:46:21分散格納して連携するとか解決策は考えられる
利用するときはデータベースそのものじゃなくて
それを使って調べた結果が判ればいいので
通信手段があれば良い
分析も分割して調べた結果を統合するとか方法はいろいろあるんじゃね?
0876デフォルトの名無しさん
2008/06/04(水) 22:55:40867は、データベース上に詰みまでの経路を保存する話に見えたので
868-870のような反応になったのではないかな。
どのみち「経路」(勝ち/負け/引き分けを調べたい局面にいたるまでに3回出現した局面のリスト?)
情報があったとしても、それを用いて引き分けに持ち込むにはデータベース上のラベリングされた節点に
対して、AND/OR木を探索するような処理は必要になるけど。
>>875
分散格納しようにも、格納すべきデータ量が宇宙に存在する原子の数を超えるので、
1つの原子に1bitのデータを書き込めるとしても宇宙すべての物質にデータを書き込んでも足りない
という状況になるのだけど。1つの原子に、もっとたくさんの情報を記録できるような技術があれば
また違ってくるのかも知れないけど。
0877デフォルトの名無しさん
2008/06/04(水) 23:36:29いろいろ工夫する余地はあると思うけどな
全局面がむりなら必要度の高い局面とそれに関係する局面を抽出するとか
0878デフォルトの名無しさん
2008/06/05(木) 00:01:17筋違い角とか角換り腰掛け銀とか変化が狭い戦法/すぐに終盤になる戦法は
詰みまで調べてデータベース化する価値は十分あるだろうね。
詰みまで調べられないとしても事前に十分時間をかけて探索して、懸案の局面付近の
最善手(だと思われる手)だけでも持っていればずいぶん違うだろうね。
20年後ぐらいには角換り腰掛け銀なんかはコンピュータによって結論が出てるんじゃないかな。
0879デフォルトの名無しさん
2008/06/05(木) 00:16:28将棋データベースの問題を考える時は
(特に断らなくても)記憶容量と計算量が
実用的限界に納まらない事は当然の前提
として良いと思う。
それでも将棋の局面データベースを
(特に現在の局面状態だけに基づいて
最善手を与えるデータベースを)
本当に作れるのか?
と言うのは理論的に面白い問題だと思う。
0880デフォルトの名無しさん
2008/06/05(木) 01:55:46主成分分析/判別分析の固有ベクトルが分かったら評価関数に使えるし
0881デフォルトの名無しさん
2008/06/05(木) 22:51:27主成分分析か、大学の時にちょっとだけやったなぁ。
将棋の評価に必要な次元がそんなに落とせるのかどうか?
0882デフォルトの名無しさん
2008/06/06(金) 00:17:05今は完全に試行錯誤だから,それよりはマシになるかな,と
0883デフォルトの名無しさん
2008/06/06(金) 01:02:06実現できないのは分かりきっててモチベーションが下がるので
まずは5x5将棋辺りからできないかなって考察するのが良いのかも。
もしできたら、それの性質を見ながら本将棋への類推と応用を考えると。
0884デフォルトの名無しさん
2008/06/06(金) 01:47:09将棋なんてまだまだ遙か彼方だな
0885デフォルトの名無しさん
2008/06/12(木) 21:05:59将棋は駒減らんからな。5五将棋ですら無理じゃね?
0886デフォルトの名無しさん
2008/06/13(金) 08:28:00谷川九段を光速でやっつけることができそうな気がするのですが。
0887デフォルトの名無しさん
2008/06/13(金) 08:44:46それが出来るのはスーパーコンピュータの性能のおかげではなくて
最近の谷川の性能のおかげなんじゃないだろうか
0888デフォルトの名無しさん
2008/06/13(金) 08:45:210889デフォルトの名無しさん
2008/06/13(金) 09:03:051台辺りの性能で言えば、高々補助単位一個分の違いでしかないのだが。
# それが充分大きいのは事実だとしても。
手の数の爆発はそんな規模ではないからね。
0890デフォルトの名無しさん
2008/06/13(金) 16:24:12処理速度が上げられる事実。
0891デフォルトの名無しさん
2008/06/15(日) 23:45:31今時、スパコンはスカラー型でもベクトル型でも大抵クラスターだぞ。
0892デフォルトの名無しさん
2008/06/17(火) 01:09:40ベクトル演算がどんなに速くても将棋じゃ使わない。
COM将棋で必要な整数演算で比較したらSXシリーズは、
個人で買えるCore2Duo3GHzより遅い
ちなみにクラスタ構成にしても将棋は速くならない
(選手権にクラスタで参加しているチームはない)
0893デフォルトの名無しさん
2008/06/17(火) 03:29:42将棋の完全解析プログラム検証向けの「最小セット」を考えてみた。
駒種全部再現のために自陣、敵陣の概念と全駒種を用意。
桂馬成らずや、角、飛、香の全種類の動きを再現するために横3列*縦5行は必要。
両者に玉がないといけない。
打ち歩詰めと二歩の再現のために盤上に歩が2個以上ないといけない。
するとこうなった。
┌──┬──┬──┐
│▽香│▽王│▽角│
├──┼──┼──┤
│▽金│▽歩│__│
├──┼──┼──┤
│__│__│__│
├──┼──┼──┤
│▲銀│▲歩│__│
├──┼──┼──┤
│▲飛│▲玉│▲桂│
└──┴──┴──┘
自陣、敵陣が3行づつだから中央は自陣でもあり敵陣でもある。
ただし、歩は敵陣の2段目まで入り込まないと成ることはできないものとする。
駒割りが異なるが飛側が先手、角側が後手とする。
これが先手必勝、後手必勝、引き分けのどれなのか完全解析頼む。
先手必勝か後手必勝になった場合は、あえて最善手より少しだけ悪い手を指したときに陥る引き分けのパターンの解析もよろ。
*千日手手順のアルゴリズム入れる必要があるので重要*
これで将棋の完全解析のためのアルゴリズムは全部入れられると思う。
やりにくかったら駒の配置は適当に並べ替えても可。
俺ど素人なんで変なこと言ってたら咎めておくれ。
0894デフォルトの名無しさん
2008/06/17(火) 03:50:41それに乗じて3三から玉頭を攻めて後手勝ち
のような気がする
0895デフォルトの名無しさん
2008/06/17(火) 05:50:44「おまいら最強の将棋解析理論提案してみろよ」
スレとなりました。
0896デフォルトの名無しさん
2008/06/19(木) 02:30:48局面を識別する番号とかと、その評価値が判ればいいので
同じ評価値のものをまとめて記録すればいい
例えば、先手勝ちは、100,000番〜4290,000番って感じ
上手く識別番号を付けることが必要になるかも知れないけど
あと仮に評価値が(先手勝ち、引き分け、先手負け)の場合
一番頻度の高いものは記録せずに、見つからなかった場合の規定値にするとかで容量を減らせると思う
0897デフォルトの名無しさん
2008/06/19(木) 02:48:08無理
0898デフォルトの名無しさん
2008/06/19(木) 15:33:040899デフォルトの名無しさん
2008/06/19(木) 20:14:10つかさ、先手勝ち・引き分け・先手負けの3つの領域を作って、評価値に応じた領域に保存すりゃよくね?
まぁ、そーゆー事して多少容量減らしても焼石に水なんだが。
0900デフォルトの名無しさん
2008/06/19(木) 20:18:27これを行う関数は評価関数と等価
0901デフォルトの名無しさん
2008/06/19(木) 21:23:35なんで?
0902デフォルトの名無しさん
2008/06/20(金) 07:00:02たとえば定跡手はボナンザに考えさせなくていいし、 一手目の候補手だけは
ボナンザより良い生成が出来るなら、一手進めた局面をボナンザに考えさせる。
0903デフォルトの名無しさん
2008/06/20(金) 07:08:11それらの思考ルーチンを乗っ取って、定跡ならそのまま指し手を返すように出来ない?
0904デフォルトの名無しさん
2008/06/20(金) 08:39:06コンバートまたはSikou.dllに対応させる部分を作ってもらえないですかね?
0905デフォルトの名無しさん
2008/06/20(金) 08:53:33既存のDLLをソースもないのにどうやって修正するんだ。
直接patchを当てるのか?誰がそんなことすると思うんだ?
902-904は本当にプログラムが一行でも書けるのか?
俺には902の意味自体よくわからないのだがボナンザにしても定跡DBにあるものは
思考していないが、それと何が違うんだ?
0906デフォルトの名無しさん
2008/06/20(金) 08:57:03定跡フォーマットが公開されていなくて、個人が追加することが難しい。
あと、共通の定跡ファイルが使えるようにすること。
Sikou.dllの仕様は決まっているので、
定跡用のSikou.dll → (リネームなどして)思考用のSikou.dll
と呼び出せば、様々な思考に対応出来る
0907デフォルトの名無しさん
2008/06/20(金) 09:07:07>>905
0908デフォルトの名無しさん
2008/06/20(金) 09:11:01ああ、そういう意味か。
定跡を別途用意するんだな?
そしてそれは「柿木将棋」の定跡形式か何かと考えていいんだな?
定跡の指し手を返す部分は、>904によると用意してくれるんたな?
定跡手なら、それをそのまま指して、そうでないならボナンザのSikou.dllを呼び出せばいいんだな?
904のプログラム(定跡だけ指すプログラム)が書けるのに、これの何が難しいんだ?20行ぐらい書くだけじゃないか。
本当に、904のプログラムを用意してもらえるのか。そこんとこどうなの。
0909デフォルトの名無しさん
2008/06/20(金) 09:16:32製品版の思考の乗っ取り(仲介) (あとbonanza.exeの制御も)
製品版の定跡ファイルへのコンバート
GUIインターフェースで棋譜などを追加するツール作成
0910デフォルトの名無しさん
2008/06/20(金) 09:21:06指し手確率のある定跡ファイルフォーマットを定めて、
それに将棋倶楽部24 、将棋祭り、2ちゃんなどネットのプロ棋譜
を登録すること。
0911905
2008/06/20(金) 09:22:28>>909
> 製品版の思考の乗っ取り(仲介) (あとbonanza.exeの制御も)
これは製品版でもボナンザは、Sikou.dllを用いていて、このインターフェース自体は
CSAで標準化(?)されているものと同じだろうから、自前でSikou.dllを用意すればいいということなのでは。
> 製品版の定跡ファイルへのコンバート
それはしないでいいのだろう。
> GUIインターフェースで棋譜などを追加するツール作成
902は、たぶん、柿木将棋か何かでやるのだろう。
柿木将棋用の定跡フォーマットなら優秀な定跡を公開している人は結構いるのでそれをそのまま使うのかは知らないが。
0912デフォルトの名無しさん
2008/06/20(金) 09:24:550913905
2008/06/20(金) 09:34:58定跡部分なんだから、序盤はほとんど重複してるし、将棋倶楽部24のも
ボナンザより弱い人が指してるようなの入力しても仕方でしょうに。
せいぜい入力するのは5万局ぐらいでしょ。それなら柿木で十分処理できるよ。
そもそも、1局処理するのに1分としても1日8時間かけて480局しか処理できないよ。
そんなペースで100日やり続けても48000局。これ、誰がやるの?自動で処理するプログラム書くの?
0914デフォルトの名無しさん
2008/06/21(土) 07:12:120915デフォルトの名無しさん
2008/06/21(土) 17:42:26適当に定跡ファイルを作成していますが、それだとどうしても優劣のつく局面まで
登録されてしまいますが、プロの実践譜をコンピュータで形勢判断させて
コンピュータが互角と評価できるところまで自動抽出できるようにすれば、
形勢互角と思われる定跡ファイルを作れるのではないでしょうか?
ソフトによって形勢判断に違いがあるので個性が出そう
0916デフォルトの名無しさん
2008/06/21(土) 19:22:50開発者が怒りそうな分だなw
0917デフォルトの名無しさん
2008/06/21(土) 20:30:18あなたは激指や東大さらにボナの定跡ファイルを見て何も思わないですか?
これは1局じゃないだろ?って思わないですか?
0918デフォルトの名無しさん
2008/06/21(土) 22:21:180919デフォルトの名無しさん
2008/06/22(日) 02:44:04XMLを特定領域のデータを記述できるようにスキーマを作ることが多いと思う
こんな感じ
http://ja.wikipedia.org/wiki/Office_Open_XML
http://ja.wikipedia.org/wiki/OpenDocument
これの棋譜版を定義できれば、各アプリ等でデータ交換が容易になると思う
0921デフォルトの名無しさん
2008/06/22(日) 07:22:57何か、誰が何を言ってるのかいまいち良く分からんのでアレだが
フリー版で公開されてるボナンザVer2.1ならsikou.dllのソースも
定跡のフォーマットも公開されてるじゃマイか?
sikou.dllは思考部本体ではなくCSA将棋から呼び出されて
本体(bonanza.exe)を呼び出すだけの中継用DLLだけど
bonanza.exeを呼び出す際のインターフェースも公開されて
いるのでかなり好き勝手に操れるはず。
(CSA将棋->sikou.dll:CSA将棋がインターフェースを定義、DLL呼び出し)
(sikou.dll->bonanza.exe:Bonanzaの独自定義、anonymous pipe経由)
実際にbonanza.exeを自在に操るソフト(GUI?)を書いて
みたわけでは無いけれどhackフォルダー以下を見るとそう思える。
商用版(Ver2.1や3.0)では呼び出し方など仕様がちがうのかね?
ボナンザ以外(激指やAIなど)と言うか何にでも共通に使える
定跡ファイルの仕様を定めようとか言うんなら、それぞれの
仕様がどこまで公開されてるのか知らないので良く分からん。
0922デフォルトの名無しさん
2008/06/22(日) 08:12:05parserは既存のを使えばいい
データ属性の変更や他のXMLベースのユーティリティを使えない
0923デフォルトの名無しさん
2008/06/22(日) 09:33:26C++から使えてportableでfreeで商用利用可能で省メモリでファイルをシステムメモリに丸読みしないような
xml parserの実装があるなら是非教えて欲しい。
0924デフォルトの名無しさん
2008/06/22(日) 09:44:510925デフォルトの名無しさん
2008/06/22(日) 13:04:43無理に使用したところで思考部分が弱くなるだけで意味が無い。
0926デフォルトの名無しさん
2008/06/22(日) 18:53:51DOMとかない?
0927デフォルトの名無しさん
2008/06/24(火) 09:33:47DOMなら、通常DOMツリーとして扱うだろ。あれはファイル全体をメモリ上に丸読みする必要がある。
そもそも、923で書いたような軽量なXML parserの実装はこの世に存在しないんだよ。
XMLは大きなデータを扱うのに適していない。
将棋の定跡なんてたいしたデータ構造ではないし拡張するわけでもないし、
parseが難しいわけでもないから、そんなところにXMLを採用するのは
XMLのことを知らない馬鹿のすることだとしか言いようがない。
0928デフォルトの名無しさん
2008/06/24(火) 21:56:410929デフォルトの名無しさん
2008/06/24(火) 22:36:46もうちょっとハッキリさせてもらわないと賛成も反対も
協力もできそうにないわ。
0930デフォルトの名無しさん
2008/06/25(水) 02:13:04SAXは?
0931デフォルトの名無しさん
2008/06/25(水) 02:19:09parserを作るとか、データ交換の仕組みを作るとかそういうのが目的なら
自分で作ってもいいけど
目的は違うんじゃないの?
だったら目的と違う部分は既存のものを使ってもいいんじゃないかな
他の用途で作られた機能を利用することもできるんだし
それで足りなくて必要になったらその部分を作ればいいだけ
全て自分で作ることにこだわる必要はないと思うけど?
0932デフォルトの名無しさん
2008/06/25(水) 05:49:19SAXはinterfaceの規定だけ。どの実装のことを言ってるんだ?
923で書いたような実装があるなら是非教えて欲しい。
あと文字コードもUnicodeとShift_JISが扱えるやつな。
だいたいな、部分的に読んで行こうが、10MBぐらいで済むはずの定跡ファイルが
XMLで書くと200MBぐらいになるんだよ。それでいてparserが書きやすいわけでもない。
読み込み時間も書き出し時間も長くなる。
自分の作る将棋ソフトからそんなファイルを実行時に読み込むわけにもいかず、
別途自分のソフト用の定跡フォーマットを用意しなければならない。
これではメリットがどこにもない。
最初から標準化された小柄な定跡データフォーマットがあれば、自分のソフト用の
定跡フォーマットもそれを使えばいい。parserを二つも書く必要がなくなる。
0933デフォルトの名無しさん
2008/06/25(水) 12:52:09使いたくなければそれでいいと思う
時代に取り残されるかも知れないけど
0934デフォルトの名無しさん
2008/06/25(水) 12:56:52本当にあんた、一行でもプログラムが書けるのか?寝言はいい加減にしてくれ。
0935デフォルトの名無しさん
2008/06/25(水) 18:54:040936デフォルトの名無しさん
2008/06/25(水) 18:58:030937デフォルトの名無しさん
2008/06/25(水) 20:47:39いっさい使ってなくても別にこまらんのだが。
0938デフォルトの名無しさん
2008/06/25(水) 23:08:19一般に強いとされるゲーム用AIは相当数の棋譜を記憶しているもんだが
0939デフォルトの名無しさん
2008/06/25(水) 23:16:33どんな状況でも、自動的に定跡を導いちゃうアルゴリズムは凄い
是非公開してくれ
0940デフォルトの名無しさん
2008/06/25(水) 23:49:22新しい定跡ラインが登場したりもする。
0941デフォルトの名無しさん
2008/06/26(木) 00:02:330942デフォルトの名無しさん
2008/06/26(木) 01:11:43囲碁は10^365な
オセロは6x6までなら完全に解明されている
チェスを完全に解明したという論文があったけど、続報を聞かないし嘘かいな
0943デフォルトの名無しさん
2008/06/26(木) 01:14:47チェスは聞いたことない。
0944デフォルトの名無しさん
2008/06/26(木) 07:00:25プログラムが一行も書けなくて自分で検証する能力もないくせに
わけもわからず検索して貼り付けなくていいよ。
0945デフォルトの名無しさん
2008/06/26(木) 21:18:53マイボナの作者がu2bというUSIとBonanzaのsikou.dllの橋渡しをする
プログラムのソースを公開している
そのソースを改造すれば、オリジナルの定跡を指させたり、
Bonaがやってないルートで詰め将棋ルーチンを呼ぶといった改造はできる。
0946デフォルトの名無しさん
2008/06/30(月) 12:53:46だれか本気で詰め将棋を研究すれば人間では勝てなくなるようなプログラムが作れるはず。
0947デフォルトの名無しさん
2008/06/30(月) 13:21:32それよりも一般的に効率よくゲームが強くなる方法があればいい。
まぁ「唯一の確かな基準である勝敗」が調べやすい局面を研究するというのは分かるが。
0948デフォルトの名無しさん
2008/07/01(火) 01:50:36詰め将棋は既に本気で研究されてますよ
dfpnでググってみて
0949デフォルトの名無しさん
2008/07/01(火) 20:56:29序盤で劣勢になったらプロレベルは挽回不可能
0950デフォルトの名無しさん
2008/07/04(金) 03:52:200951デフォルトの名無しさん
2008/07/05(土) 10:35:14> だから将棋はなぜ詰めるのかを数学的に解ければ
二人零和有限確定完全情報ゲームだから?
0952デフォルトの名無しさん
2008/07/05(土) 12:15:200953デフォルトの名無しさん
2008/07/05(土) 13:25:33千日手は攻めてる側が手をかえなきゃならない....と思ってたんだが、
念のためwikipediaを見てみたら
>手番が全く同じ状態が1局中に4回現れると千日手になる。
>千日手になった場合はその勝負をなかったことにする。
ってなってた。そうか、ノーゲームにできるのか。
0954デフォルトの名無しさん
2008/07/05(土) 13:41:510955デフォルトの名無しさん
2008/07/05(土) 14:54:290956デフォルトの名無しさん
2008/07/05(土) 15:38:280957デフォルトの名無しさん
2008/07/05(土) 16:12:09http://d.hatena.ne.jp/yaneurao/20080405
> 私 「将棋の公式ルールを明文化したものはどこかにありますか?」
> 神吉「将棋のルールは、日本将棋連盟発行の将棋ガイドブックにあります。」
0958デフォルトの名無しさん
2008/07/05(土) 16:25:41将棋における日本のローカルルールは 日本将棋連盟が明文化しているらしい。
0959デフォルトの名無しさん
2008/07/05(土) 16:30:53明文化しているけれど非公開らしいね
ガイドブックのやつは一般向けのルールってことで
穴を指摘されても修正しません、ということらしい。実際穴はたくさんある。
0960デフォルトの名無しさん
2008/07/05(土) 16:43:37って言う方ですね?
0961デフォルトの名無しさん
2008/07/06(日) 12:01:49ルールにはっきりした穴があると思うなら日本将棋連盟にメールか何かで指摘してあげたら?
俺が認識してるルールの多少なりとも曖昧な点は双方入玉時の持将棋宣言くらいだが。
0962デフォルトの名無しさん
2008/07/06(日) 17:52:26http://kofu.cool.ne.jp/mozuyama/mozuiro/moromoro/
禁手の定義も不備があるね。
詰め将棋くらいにしか影響が無いとはいえ、
言葉で修正がきく部分なんだから弁護士でも入れて修正すればいいのに。
0963デフォルトの名無しさん
2008/07/06(日) 22:09:31ゲームのルールを改訂すると、過去の棋符に影響するんじゃないの?
その辺どうなのかな?
まあ、過去は過去ってルールーにしちゃえばいいんだけどねw
0964デフォルトの名無しさん
2008/07/07(月) 14:54:480965デフォルトの名無しさん
2008/07/07(月) 17:19:21他のルールはスレチ
0966デフォルトの名無しさん
2008/07/27(日) 08:48:060967デフォルトの名無しさん
2008/08/07(木) 22:26:540968デフォルトの名無しさん
2008/08/11(月) 02:17:340969デフォルトの名無しさん
2008/08/11(月) 08:24:36!!!
「まるで機械のようだった」(そらそーや)とはどんな打ちまわしだったのでしょうか?
0970デフォルトの名無しさん
2008/08/11(月) 08:31:55http://files.gokgs.com/games/2008/8/7/MyungWan-MoGoTiTan-4.sgf
チャットのログも付いてた
0971デフォルトの名無しさん
2008/08/11(月) 17:38:02一旦優勢になると多少の損は気にせず勝ちを最優先する打ち方
実際一目半という微差だったわけで(アマ有段でもこれは難しい)
人間は最善手=最も得する打ち方をするから
0972デフォルトの名無しさん
2008/08/11(月) 17:52:41>人間は最善手=最も得する打ち方をするから
ダウト
0973デフォルトの名無しさん
2008/08/11(月) 21:16:310974デフォルトの名無しさん
2008/08/11(月) 21:25:320975デフォルトの名無しさん
2008/08/12(火) 09:06:100976デフォルトの名無しさん
2008/08/12(火) 11:41:27「自称」天才クンは放置した方が賢明だぞ。
0977デフォルトの名無しさん
2008/08/12(火) 12:53:040978デフォルトの名無しさん
2008/08/15(金) 22:28:09例えば、盤上の駒価値と持ち駒価値を学習したとき
駒価値の値の幅に対して持ち駒の値が極端に大きくなってしまうような
0979デフォルトの名無しさん
2008/08/15(金) 22:44:59バグの可能性やデータがオカシイ可能性もあるが
0980デフォルトの名無しさん
2008/08/16(土) 10:19:38ありがとうございます
なんだかんだで結局バグな気がするんですよね・・・
乱数はとりあえず外してるんで、問題にはならないはずなんです
学習途中までは盤上駒価値もそれなりの値で、持ち駒価値もそれなりの値なんですけど
持ち駒価値間の比率が正しいながらも、盤上の駒価値とくらべて極端に大きくなっちゃうため
盤上駒価値まで影響を受けてしまっておかしな値を返してしまっているんです
駒価値は、総和で制御しているんですが持ち駒価値のほうも何か制御が必要なのかなぁと。。。
0981デフォルトの名無しさん
2008/08/16(土) 21:00:36相対的に持ち駒価値も抑えられるはずだよねぇ
全体がまともに動いてれば
最終的な評価値にするところが可変重みになってたりしない?
0982デフォルトの名無しさん
2008/08/16(土) 23:09:10駒の価値の総和が一定値で抑えられてたとしても盤上の駒の価値と
持ち駒の価値のバランスが崩れて行くって話じゃないの?
>980
学習を試した事が無いので当てずっぽうな意見で申し訳ないが、
そういうのを制御するのがペナルティーとか拘束条件とか言う奴じゃ?
0983デフォルトの名無しさん
2008/08/17(日) 14:40:53可変重みって言うのは、学習途中の重みってことですか
学習時に行う探索によって得られる末端局面の評価は学習途中の重みでやっています
なので学習途中では、探索も得られる評価値も精度が低い(まったく正しくない)評価関数で評価しています
学習途中評価関数の精度が低いのは、まぁ仕方ない話なんですよね。。。
>>982
バランスが崩れていくって話で正しいです
とりあえず拘束条件としては駒の価値の総和が一定になるように制御してます
0984デフォルトの名無しさん
2008/08/17(日) 17:22:03拘束条件だけじゃなくペナルティも入れれ。(M2(v)のとこ)
スライドの「ペナルティーの導入」のページにあるとおり、
これが正に駒割の割合を高く保つためのもの。
0985デフォルトの名無しさん
2008/08/17(日) 23:53:32駒の価値だけ固定しても別解や極小点が出るんだろう。
例えば、位置評価とかで、頻繁に該当するところの点数が全体的に高ければ、
駒の価値が高いのと似た状態になる。
理論上はサンプルを多くすれば解消されるんだろうけど、
Bonanzaのように6万局でもまだ足りないんだろうな。
0986デフォルトの名無しさん
2008/08/18(月) 00:02:16やっぱりペナルティ必要ですよね。。。
ペナルティをかけると、その対象の値の絶対値が抑えられるって言うのは理論から分かっているつもりなんですが
・持ち駒価値にペナルティをかけることによって、持ち駒価値が必要以上に値が小さい値になる
・結局駒価値とのバランスが崩れる(持ち駒が小さくなりすぎる)
ような気がして敬遠していました。
スライドの式通りにペナルティを入れれば、バランスが取れた状態で上手くいくのかもしれませんね。
ちょっと理屈は横に置いておいて試してみたいと思います。
色々ご指摘ありがとうございます。
0987デフォルトの名無しさん
2008/08/18(月) 00:17:580988デフォルトの名無しさん
2008/08/18(月) 14:51:400989デフォルトの名無しさん
2008/08/18(月) 15:01:410990デフォルトの名無しさん
2008/08/19(火) 07:16:44途中で「まけました。」で終わるだけ
0991デフォルトの名無しさん
2008/08/19(火) 13:26:180992デフォルトの名無しさん
2008/08/19(火) 13:57:15そこそこ強い棋譜なら大抵のパラメータはそれなりの値になるはず。
飛車しか使えないようなヘボの棋譜とかでもない限り。
0993デフォルトの名無しさん
2008/08/19(火) 15:02:21しかし、プロ棋士の棋譜を6万局も入手可能な現状でそれでもデータが不足する部分を
アマチュアやコンピュータ将棋の棋譜で補う事が果たして有益なのかどうか?
下手に学習するとかえって弱くなる可能性が高いだろう。
既存の棋譜がほとんど無い状況ならコンピュータ将棋の自己対戦棋譜も有用らしい。
柿木さんの行った5五将棋における学習がその例。
0994デフォルトの名無しさん
2008/08/19(火) 21:51:520995デフォルトの名無しさん
2008/08/20(水) 15:16:000996デフォルトの名無しさん
2008/08/20(水) 15:34:59誰か次スレ立ててくれ
0997デフォルトの名無しさん
2008/08/21(木) 13:18:160998デフォルトの名無しさん
2008/08/21(木) 14:10:490999デフォルトの名無しさん
2008/08/21(木) 14:11:351000小倉優子 ◆YUKOH0W58Q
2008/08/21(木) 14:12:2110011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。