おまいら最強の将棋プログラムしてみろよ part2
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG前スレ
http://pc3.2ch.net/test/read.cgi/tech/1004395614/
0002デフォルトの名無しさん
NGNG00031
NGNG0004デフォルトの名無しさん
NGNGということで>>1は削除依頼しる
0005デフォルトの名無しさん
NGNG次スレよろ
0006デフォルトの名無しさん
NGNGもう次スレは立てるなよ。
0007デフォルトの名無しさん
NGNG前スレだけじゃなくてさぁ、、、
0008デフォルトの名無しさん
NGNGこれからはプログラミング言語FAQでやって行く予定です。
0009にんにん
NGNGノノヽヽヽ /| | | |ヽ
从0^〜^) .(ノ~\\ ノ ノノ人ヽ ノノノノヽヽ |( ゚〜゚ 川
@ノハ@. ( ). ( `.∀´) 〃ノハヽ (●´ー`●)从^▽^从 |( )|oノハヽo∈
. ( ‘д‘) | i | ( ) 从 ^◇^) ( ) ( ) | i ,| (´�D` )
. ( ). | | .| | | | ( ) | | | | .| | |. | | ( )
. (_)_) (_)_) (_)__) (_)_) (_(__) (__(_) (_(_) (__.(_)
加護 吉澤 保田 矢口 安倍 石川 飯田 辻
▓▓▓▓ ▓▓▓▓ ノノノノヽヽ ノノハヽ ノノノハヽ ノノハヽ ▓▓▓▓
▓▓▓▓ ▓▓▓▓ ∬ ´▽`∬ 川o・-・) 川�Vv�V从 川 ’ー’川 §ノヽ§ ▓▓▓▓
( ) ( ) ( ) ( ) ( ) ( ) (・e・ ) ( )
| | | | | | | | | | | | | | | | | | ( ) | | |
(_)_) (__(_) (_)__). (_)__) (__ (_) (__(_) (__(_) (__(_)
田中 道重 小川 紺野 藤本 高橋 新垣 亀井
0010にんにん
NGNGノノヽヽヽ /| | | |ヽ
从0^〜^) .(ノ~\\ ノ ノノ人ヽ ノノノノヽヽ |( ゚〜゚ 川
@ノハ@. ( ). ( `.∀´) 〃ノハヽ (●´ー`●)从^▽^从 |( )|oノハヽo∈
. ( ‘д‘) | i | ( ) 从 ^◇^) ( ) ( ) | i ,| (´�D` )
. ( ). | | .| | | | ( ) | | | | .| | |. | | ( )
. (_)_) (_)_) (_)__) (_)_) (_(__) (__(_) (_(_) (__.(_)
加護 吉澤 保田 矢口 安倍 石川 飯田 辻
▓▓▓▓ ▓▓▓▓ ノノノノヽヽ ノノハヽ ノノノハヽ ノノハヽ ▓▓▓▓
▓▓▓▓ ▓▓▓▓ ∬ ´▽`∬ 川o・-・) 川�Vv�V从 川 ’ー’川 §ノヽ§ ▓▓▓▓
( ) ( ) ( ) ( ) ( ) ( ) (・e・ ) ( )
| | | | | | | | | | | | | | | | | | ( ) | | |
(_)_) (__(_) (_)__). (_)__) (__ (_) (__(_) (__(_) (__(_)
田中 道重 小川 紺野 藤本 高橋 新垣 亀井
0011デフォルトの名無しさん
NGNG目標から逆算して次の手段を考えるよね。たとえば、「敵玉は金をはがさないと
寄せにくい」→「大ゴマ成りこむよりト金攻めがいい」→「ト金を作るには
この辺を薄くさせないといけない」→「よし、そこに戦力結集だ」→「ただし、
こちらからいくと自玉が薄くなる」→「とするとこっちからだ」というように。
そういう発想は将棋プログラム開発にすでに入ってるの?
0012山崎渉
NGNG0013デフォルトの名無しさん
NGNG入っていると言えば言える。
11の例で言うなら「と金攻めがいい」あたりまでは評価関数に入っている。
それ以後は探索アルゴリズムが例示されたような流れを勝手に選び出してくれるので、
特に考える必要もない。
もし、ルールベースのような考え方を期待してるんだとしたら、
それはコンピュータが生まれたころにすでに試されて、破綻した考え方だ。
0014デフォルトの名無しさん
NGNG今回はいかにもウケようとして外してる感じ。
0015デフォルトの名無しさん
NGNG東大将棋とかの将棋ソフトはそのうち何手くらい抽出してるんでしょうか?
全部読んでいたらとてつもない手になってしまいそうです
0016デフォルトの名無しさん
NGNG0017デフォルトの名無しさん
NGNG何でもいい
>>15
自分の駒の数*1.5くらいでしょ。
抽出はしてないかも。
>>14
11が言ってることは目的指向みたいなものだと思うけど。
>>11
そういう意味では入っていない。
ただし、定石という形で実装されているので、序盤、中盤あたりは
そんな感じにさせると思う。
ただ、「敵玉は金をはがさないと寄せにくい」
こんなのを盤面から認識するのは、今のところ無理。
0018デフォルトの名無しさん
NGNG定石とか書き込んでいる段階でおまえのレベルがバレバレ。
知ったかするなよ。
0019デフォルトの名無しさん
NGNG確かに囲碁を意識して書き分ける奴が多いけど、別に間違いではないらしいよ。
0020デフォルトの名無しさん
NGNG002113
NGNGゲーム木探索って「現在局面から、次に可能な手をどんどん探していく」っていう「手続き」を行なうから、
それをその言葉のまま受けとると11のような質問が出ちゃうと思うんだけど、
よーく考えてみると探索で求められているのは11の言う「目的」への経路になってるわけ。
だから、目的指向という考え方は「あると言えば言える」と答えてみた。
一般に探索にはトップダウンとボトムアップの方向性があって、ゲームでやられているのは普通トップダウン。
11が書いた手続きをそのまま実現すればボトムアップ手法になるけど、概念的には求めているものが大きく変わるわけではないよ。
もちろん、トップダウンとボトムアップには利点欠点があって、実際のプログラムでは解けるものが変わってきちゃうけどね。
ゲームで言うなら、ボトムアップにやるのは探索に必要な時間もメモリも爆発するので普通はできない。
例では、「敵玉は金をはがさないと」という目的は、「金が敵玉の周りにいないほうが良い局面である」という評価で与えられている。
「と金攻め」もまあ評価関数に入ってるでしょ。
で、それより前に起きること(こっちから攻め合う)とかは探索でカバーしている範囲だ、ということ。
0022デフォルトの名無しさん
NGNGいいたい事はわかるけど、プラニングとは違う。
評価関数とはなんなのか?
評価関数:V(s(t))
t手目の局面:s(t)
t手目を打ったときの利得:r(t)
V(s(t))=V(s(t+1))+r(t)
となる事はわかるだろうか。
言葉で書けば、
局面s(t)の評価は
自分と相手が最善手を打った時、次の局面s(t+1)の評価を
s(t)の時に打った着手の評価で修正したもの。
要するに、評価関数が決まると、どういう風に攻めるかも
どういう風に守るかも、どのタイミングで守るかも決まっている。
プラニングとは何かというと、
現在棒銀で攻めているとすれば、おのずと次に打つ手は限定されてくる。
つまり、探索の効率をあげる役割を果たす。
守っている時に、攻める手を考える事も必要だが
まずは重点的にどうすれば守れるかを考えると思う。
プラニングは着手決定ではなく、候補手生成の方の概念で
探索空間を小さくする。
ただし、具体的なアルゴリズムは今のところ提案されていない。
0023デフォルトの名無しさん
NGNGらなかったんだけど、上に書いたような事かな?
もう少し書けば、
現在の将棋は、探索とデータベースに頼っている面が大きい。
裏を返せば、評価関数はかなり使い物にならない。
評価関数だけでまともに将棋をさせるプログラムが作れたら
それはすごい事だよ。
そういうわけで、評価関数に目的が・・・
というのはそういう意味でも、非現実的かも。
0024デフォルトの名無しさん
NGNG補足しておけば
プラニングは直交する概念だから
実装すればそのまま性能アップにつながる。
もちろん、評価関数+探索が
結果的にそういう意図を持つ事は確かだし、
評価関数が理想とする盤面を目指すという意味では
目的があるわけだ。
でも、プラニングという概念がある事を主張してるわけですわ。
異論があれば、是非聞かせて。
002513
NGNGで、プランニングという考えがあるという話ですが、それは了解。
この考え方は、将棋ソフトには「部分的には」入っていて効果を出している。
手筋という考え方を取り入れて、ある意図に従った手だけを深く読む、という手法はこの例に当たるかな。
また、やや無理を承知で言えば、局面の遷移確率に従って深く読む、という手法もこのカテゴリをカバーしていると言えると思われ(以前の手の選択が現在局面の候補手に影響を与える)
ただし、「部分的には」と言ったのは、これらの手法はあくまで探索アルゴリズムの中で、ごくごく簡単な「目的」、
例えばこのこまを攻めるから「歩でたたいてたたいて打って」だな、とかいう小さな目的を与えているにすぎず、
より大局的な目的感覚はきれいに体系化されていないと思う。
002613
NGNG戦略レベルのプランニングはまだまだという感じだろうか。
感覚としては、「棒銀だからこの手」とか「金をはがさなくちゃ」とかいうあたりはすでに「戦術レベル」のプランニングで既に事足りてる気がするな。
もちろん、戦略レベルのプランニングはそれぞれの将棋ソフトが必死こいて実現しようと努力してると思うよ。
002713
NGNG探索と評価関数が命だと思うなあ。
本当の序盤、例えば第一手に26歩を探索によって指させることはまず無理だから、
その辺だけはデータベースに頼るけど。
市販ソフトの100万手定跡とかは飾りです。偉い人にはそれがわからんのです。
0028デフォルトの名無しさん
NGNG本当か?
序盤戦は定跡がある程度記憶されてるんじゃないの?
その方が効率が良い。
0029デフォルトの名無しさん
NGNG評価関数にはちゃんと意味があるよ。
http://www.google.co.jp/search?hl=ja&inlang=ja&ie=Shift_JIS&q=%8B%AD%89%BB%8Aw%8FK%81@%95%FB%8D%F4%81@%8F%F3%91%D4%89%BF%92l%8A%D6%90%94&btnG=Google+%8C%9F%8D%F5&lr=
一番上のPDFの解説はよさげ。
別になんも難しくないよ。
>手筋という考え方を取り入れて、ある意図に従った手だけを深く読む、という手法はこの例に当たるかな
こんなのが実装された例を、俺はよく知らないんだけど
>また、やや無理を承知で言えば、局面の遷移確率に従って深く読む、という手法もこのカテゴリをカバーしていると言える
これはHMMでやったのかな?
明らかに無理だと思うけど、実装して効果を実証した論文があれば
教えてください。
>まとめて言うなら、戦術レベルのプランニングはある程度入っているが、
ある程度入っているプラニングとは、具体的になんですか?
>27
コンパクトな評価関数だけで、定石を再現すること自体が難しいので。
if(局面=A)then...
if(局面=B)then...
という評価関数は全部データベースと等価です。
003013
NGNGもちろん効率の問題から序盤は定跡データベースに頼る。だけど、
たとえ100万手入れようが、1000万手入れようが、序盤の10数手で簡単に定跡から外れるよ。
そういう意味で、あまり定跡なんて信用してないと思うなぁ。
あと、将棋の世界では、今の定跡には「26歩、84歩」というシーケンスは入っているけれど、
いきなり角頭の歩をついたとき、それをとがめる手は入れてない。
(あ、これはあくまでわかりやすい説明で、実際のソフトでは角頭歩はいれてあるかも。
要は「すべての可能な手」の中にある「悪手」に対して「とがめる手」が入ってないってこと。)
チェスなんかで序盤データベースを整備してコンピュータが強くなった、
というのはこういったとがめる手も含めた序盤の研究なんだよね。
それをきちんと整備して強くする、というアプローチはありなんだけど、
まだ「将棋に関しては」やってない、という現状だと思われ。
003113
NGNG評価関数の意味を29が言うようにとらえるのは、あくまで機械学習の枠組みでゲームのシーケンスを捉えるとすると、という話なんだよね。
で、そのように評価関数を定義すると、TD(lambda)が使える。
そのことにはべつに文句はないのよ。ただ、その捉え方だけがゲーム研究の立場ではないのよ。
どのようにゲームを定式化するか、これが評価関数と探索手法を決める。
評価関数も探索手法もそれ単体では意味をもてないよ。
有名どころでは、そうだなぁ、bayesian approachなんかはまた違った評価値の定義をするよ。
あと、具体名はあまり出したくなかったんだけど…
「手筋」は東大将棋、「遷移確率」は激指だね。HMMではありません。
論文は情報処理学会とか「コンピュータ将棋の進歩」シリーズあたりでしょ。
ちょっとぐぐったけどWebで取れる形では落ちてないみたい。
003213
NGNG> if(局面=A)then...
> if(局面=B)then...
> という評価関数
こいつはまた豪儀だなぁ。さすがにそんな評価関数は使ってないでしょ。
もう少し局面を抽象化した形でifを使ってる。
そういう意味を意図してたんならスマソ。
0033デフォルトの名無しさん
NGNG定石を使わないプロはいないんです。
つまり、強いから定石なわけ。
相手が定石を使ってこない場合は、
定石を使ってきたときに比べて弱いのはわかるよね?
定石に対して、評価関数で攻めたり守ったりしていては
歯が立たないという事を理解してくれればいいかと。
>で、そのように評価関数を定義すると、TD(lambda)が使える。
違うって。
TD学習を数学的に解析するときに
状態価値関数(評価関数)が何かを考えると、
そうなるだけだよ。
強化学習の枠組みに限った話ではないよ。
>評価関数も探索手法もそれ単体では意味をもてないよ。
意味って何だろう?
探索手法はゲームと切り離して考えられるし、
評価関数も状態価値関数という一般的な考え方でいいのでは?
ゲームの評価関数は
V(わかっている情報)=その局面における勝率or得点
という風に一般化しても問題ないと思うけど。
0034デフォルトの名無しさん
NGNGベイジアンネット?ベイズ推定?
>「手筋」は東大将棋、「遷移確率」は激指だね。HMMではありません。
なるほど、HMMじゃないんだ。
具体的にどんなアルゴリズムなのか知ってたら教えてください。
序盤、中盤、終盤という概念を
盤面遷移から決定するという話なら知ってるけど。
それは確率じゃあないよなぁ。
>もう少し局面を抽象化した形でifを使ってる。
まあ、俺はゲーム専門じゃないので、どういう評価関数を作ってるかは
知らないけど
局面を抽象化してるのではなくて、
局面の特徴を抽出して評価してるんじゃなくて?
パターンマッチングで評価を決めてる部分はデータベースと
たいしてかわらないよといいたかったわけ。
たとえば、一手目なんかは評価関数を使って探索する必要なんか
ないんだから。
評価(盤面、着手)=if(初期盤面 && 着手)return 5
みたいになるわけだ。
これはデータベースだよね。
0035デフォルトの名無しさん
NGNGhttp://www.logos.t.u-tokyo.ac.jp/~gekisashi/algorithm/abstract.html
なかなか面白いね。
>実現確率打ち切りによる探索アルゴリズム
って書いてくれた方がよかったな
003613
NGNG> 定石に対して、評価関数で攻めたり守ったりしていては
> 歯が立たないという事を理解してくれればいいかと。
そうかなぁ。それはいまだに定跡は新たに見つかっているっていう事実に反するよね。
最近定跡になった「かまぼこ囲い」とかね。
なんとなく見えにくくなってるみたいだからまとめておくけど、
序盤の定跡データベースは現在の将棋ソフトの評価関数よりは有効なことが多くて、
実際に将棋ソフトの序盤で便利に使われてます。
ただ、それを将棋ソフトが重視しているか、というとそれは違うのではないかと。
重視しない理由は、ごく単純に「定跡が使える局面がゲーム全体に占める割合が小さすぎる」から。
でも、もっと究極的な話をするなら、定跡は所詮人間というモデルプレイヤーが作ったものであって、
それは決して「神が指す手」ではない、ということもあるかな。
人間よりはるかに強いプレイヤにとっては現在の定跡は誤りかもしれない。
だから今の知識を必死になって教えるのは、ソフトの正しい発展を妨げるかもしれない、と。
…まあ神の手云々を追求できるのは30年後くらいだとは思うけどね。
あと、ごくごく短期的な見地からは定跡の選択をチューニングするのは非常に効果があります。
今年のコンピュータ選手権にぜひ勝ちたい、とかいう時ね。
そういうときに限っては定跡が重視されまつ。
003713
NGNG例えば「評価関数をその局面からの勝率」であると位置づける、というモデル化のことね。
これだけでも(漏れにはまともに見えるけど)議論の余地はあると思う。
で、そもそも勝率とは何なのか、どんなプレイヤが、どんなプレイヤを相手にしたときの勝率なのか、
というあたりでもまたさまざまな立場が取り得る。
で、勝率ベースの評価値と定義すると、探索は「勝率を最大にする手を選択する手法」とモデル化される。
そのあたりの話がしたかったわけ。
TD学習に従った評価値にしようと思うと、
・(最終局面で)この局面では先手勝ちだった。
・その前の局面では、先手勝ちに移行できる手(利得xxx)がある、yyyという評価値。
・(これを繰り返して…)
・最初の局面では、評価値ゼロ
という立場だと思うのよ。これは必ずしも前に挙げたような
「この局面からこういうプレイや達で戦ったときの勝率」という評価値を求めようとはしてないよね。
そゆうことが伝えたかった。
003813
NGNG"bayesian approach game"くらいで英語でぐぐってみて。
0039デフォルトの名無しさん
NGNGコンピューターがある局面の最善手を高確率で見つけ出すようになってからであれば、
あるいは、ある局面の最善手を高確率で見つけ出せる評価関数ができあがれば
定石データベースはいりません。
今のところ人間>コンピューターなので
ある局面に関して、人間が研究分析した結果としての最善手を保存しておく事には
大きな意味があるわけです。
そうじゃなければ、棋士は定石の研究をしないわけです。
序盤から定石破りをする人は、序盤に関しては弱いんです。
序盤が弱い人に対して、定石データベースが使えない事は、
序盤が強い人に対して、定石データベースが使えない事より、
はるかに問題にならないのです。
もう一つ視点を挙げておくと
(将棋プログラムの人間が作りこむ)評価関数というのには2つの方向性があって
一つは
プログラマーがある局面に対してつけた得点をなるべく反映するように作るもの。
理想的には、ある局面が提示された時、評価関数が算出する得点と
プログラマーが算出する得点が等しい。
もう一つは、ある局面からの特徴量(持ち駒の数など)を抽出し
それをプログラマーの観点である計算式を作り
それを評価関数とする。
プログラマーが想像していた得点と、評価関数が算出する得点が
違う事がある。
もし、前者の評価関数を目指しているなら
全ての局面に関して、羽生名人の評価を入力したデータベースこそが
最高のものになる。
0040デフォルトの名無しさん
NGNG勝率は強化学習で言えば、方策が確率的に着手を選択するときだね。
ある局面に対して、毎回同じ手を指すものであれば勝率はあてにならないね。
>で、勝率ベースの評価値と定義すると、探索は「勝率を最大にする手を選択する手法」とモデル化される。
ミニマックスでの探索なら、常に評価関数の値を最大にする・・・
なんだけどね。
TD学習の解釈は間違ってると思うよ。
状態価値関数(将棋で言えば評価関数)Vがあったとき、
強化学習というVの推定方法の一つにTD学習があるわけだ。
V(ある局面)=V(ある局面の次の局面)+利得
という関係は常に成り立つので、この関係式を利用して学習をすすめるし
この関係式を満たせば学習が終了。
つまり、正答率100%の評価関数ができあがる。
確かに、将棋の場合
評価関数は、相手がどんな手を打ってくるかという事を仮定して
成り立っている。
最高の評価関数を作るのが目的であれば
最善手を打たれたと仮定している。
強化学習でも同じ。
学習する時、誰かの作った将棋プログラムで学習させれば
そのプログラムに対する評価関数ができあがる。
でも、学習者どうしで学習させれば
収束する方向は、両者が真の意味で最善手を打つという方向になる。
もちろん、学習時間がすさまじいので使えないけど。
0041デフォルトの名無しさん
NGNGまた今度調べとくよ。
でも、ベイズ推定なの?
まったく予想できない。
評価関数に関しては
V(s(t))=V(s(t+1))+r(s(t),s(t+1))
V(s(t))=Σp(s(t),s(t+1))*V(s(t+1))+r(s(t),s(t+1))
という風に一般化できるよね?
言葉で書けば
自分の着手と相手の着手の確率によって
s(t)からs(t+1)へある確立で変化する。
(s(t+1)の状態の価値+s(t+1)へ遷移した時の利得)をその確率で平均した
物が状態s(t)の価値となる。
強化学習の本を読んでみるとわかりやすいかも。
評価関数自体はそれ程複雑ではないし、
議論の余地はあまりないと思う。
004213
NGNG定跡に関して。
とにかく現在の将棋プログラムは定跡データベースを使ってます。それは確か。
で、それにどれくらい力点を置いているかというと、それは本質的な強さを求めると言う点ではほとんど効果を発揮していない。
短期的視点に立った強さを求めるために使われている、というまとめでいいかな。
これはまぁ現役でその辺りに居るやつの感覚ということで。
004313
NGNG「勝率を最大化する」というシンプルな目的と、ある対戦モデルに従った強化学習手法との「目的」との間に、
どうしても大きな隔たりを感じてしまうわけ。
その間をつなぐようなモデルが欲しいわけ。
だいたい、
> V(s(t))=Σp(s(t),s(t+1))*V(s(t+1))+r(s(t),s(t+1))
のp(x)は相手の指し手モデルを考慮しているよね。で、そのモデルって一体何よ?あるいは自分の指し手モデルって?
と考えていくとそんなに簡単な話じゃないと思うわけ。
それにはそれぞれの研究者の立場があると思う。
両者が真の意味で最善手を選択するなんてのは、ごく限られた見方でしかないよ。
もちろん現状ではそれくらいしかきれいに解析できないんだけど。
学習という枠組みで一般化するのは確かに魅力的だけど、
その一般化にたどり着くまでの考察がいい加減だととたんに説得力を失いまつ。
004413
NGNGパーフェクトプレイヤは初期局面から評価値も指し手も一意に定まっているんだよね。
それを、あるモデルに従ったパーフェクトでないプレイヤが戦ったときの勝率、という対戦のモデル化を行うからさまざまな立場が出てくる。
どうしても「どういうプレイヤと対戦するときにこのソフトは強い」という視点が入ってくるからね。
一般的な学習の枠組みに落とし込むのは可能だけど、そのあたりの仮定が常に付きまとう、ってのは確かでしょ。
で、今のところどんな仮定がより「もっともらしい」かを議論してるわけ。
それを評価する方法も難しくて、まぁ今は「対戦してみてより強いほう」を「よいモデル化」としてるけど、
それだって(まあ納得はできるけど)微妙な話だよね…。
0045
NGNGの違いは評価関数の違いかな。
0046デフォルトの名無しさん
NGNG定石とか将棋を打つとか羽生名人とか書くのやめれ、初心者どもめ
0047デフォルトの名無しさん
NGNG0048デフォルトの名無しさん
NGNG羽生の強さは、研究に裏打ちされた卓越した定跡の選択(+研究力)と
手を評価して決定する能力(構想、読み、終盤力、勝負術)の
尋常でない正確さと強さ
だと俺は思ってる。
先まで局面を進めてみないと評価を得られない評価関数は
(どんなに局面を正確に数値化できたとしても)
時間内ではすべて探索できないので
局所的な真の解の可能性はなくせない。
つーことで
いい加減な評価関数でも勝てるぐらい、
強い定跡(+補完)のデータベース作ればいいということになる。
(定跡を選択する上で結論(定説)(独自の判断)がかなり重要)
(定跡外でも十分対応できるものは必要だと思うが...)
(( 羽生名人は -> 現在の名人は森内だ。
定石は -> 定跡。))
0049デフォルトの名無しさん
NGNG完全な読みがあれば評価関数は必要ないですよね。
実際はこのどちらも実現不可能なわけだけど
どっちを強化するのが効果的なんですかね。
0050デフォルトの名無しさん
NGNG大局的な手([例]:逆王手ゼットとか、詰めろ逃れの詰めろ)を高速に探すことが
できるとかなり強いと思う。
完全な読みと完全な評価は本質的には同じだと思うが、
負けにくい手を選び、
読んで負ける手、直感的に負ける手は絶対に指さないことかな。
(持久戦で玉を固められて、ジリ貧とかはもっての他、
負けても勝負に行くべし)
評価は駒を進めていく過程での、道しるべみたいなものじゃないかな?
0051デフォルトの名無しさん
NGNG定跡=定石だよ。
局所的な手筋=プロの手筋の統計的なデータだよ。
0052デフォルトの名無しさん
NGNG0053デフォルトの名無しさん
NGNGその局面が勝ちか負けか引き分けかを返してくるもの
完全な読みとはゲーム木を終局まで読み進めること
の意味で書いたんですけど
0054デフォルトの名無しさん
NGNG>>19
0055デフォルトの名無しさん
NGNG>卓越した定跡の選択(+研究力)
プログラムで実現するのは無理。選択するためのいい評価関数があればいいけど、数学的に考えてなさそう。結局、一つ一つのパターンを
プロも覚えてってんだから関連性がなく、プログラムにするのは無理。そのまま入れればいいんですけど、それじゃプロ以上に勉強しなくちゃいけない。
>手を評価して決定する能力
結局これって先を読んで決めることだから読みの力に帰結されると思うんですが。
そう考えると、結局プログラミングで実現できるのは読みの速さとそこそこまともな局面の評価関数。
この2つしかできないような気がする。で、特に重要なのは、読みの速さ。これに、そこそこまともな局面の評価関数が入ってくればそれがコンピュータで実現できる最強の強さ
になるような気がして、プログラミングよりハードウェアの性能が重要になってきて、プログラミングをある程度やってその両者がほぼ限界まで達成できてしまったらプログラミング的な面白さはないような気がする。
結局Deepblueみたいな方法じゃないと無理だと思うんですがどうでしょう?
ところで、アルゴリズム的にはここ数年「明らかに」強くなってるんですか?同じハードウエア条件で対戦させた時の本質的な強さって意味で。つまり、いろいろなチューニングを除いたって意味で。
005655
NGNG>「明らかに」強くなってるんですか?
なってませんよね?
0057デフォルトの名無しさん
NGNG「明らかに」強くなってます。
例えば、「激指」の開発チームの論文では、
「実現確率打ち切りによる探索アルゴリズム」は「固定深さ打ち切りによる探索アルゴリズム」に
対して、1/5程度の思考時間で同等の棋力となるとのことです。
同じハードウェア条件なら「明らかに」強くなってますよね?
それとも、こういうのも含めて「チューニング」って呼ぶんですか?
それから、DeepBlueがハードウェア的にすごいのは良く知られてますけど、
アルゴリズム的にも、SingularExtensionなどの手法を編み出していることも
知っておいて欲しいな。
ハードだけじゃ勝てないのです。
0058デフォルトの名無しさん
NGNGいいよ。
ただ、現時点では、定石データベース無しで上手くやれる
将棋のプログラムはないので。
>のp(x)は相手の指し手モデルを考慮しているよね。で、そのモデルって一体何よ?あるいは自分の指し手モデルって?
一般的な形で書けるという事は
任意のモデルで評価関数が作れる事。
将棋の評価関数を作るなら、自分相手ともに最善手を打つモデルを
目指せばいい。
強化学習では、εグリーディーと呼ばれる方策(数回に一回ランダムな行動をとり、あとは最適行動)
を使ったりするから、普通はそれを考慮する。
方策(pの確率構造)は学習とともに変化していくってのもわかるよね?
言いたい事を推測すると、距離が定義できないといいたいんだと思う。
つまり、評価関数の良さを測る尺度がないという意味だと思う。
例えば、あるプログラムの強さとの比較だと
a<b,b<c→a<c
が成り立たない。
でも、それは人間の強さを測るにしても、同じ問題が起こるわけだ。
それは往々にして「相性」という単語で片付けられているけど。
だからといって、目指す評価関数がなんなのかがわからなくなる
というわけではない。
もちろん、ある評価関数がどのくらいかを厳密に評価する基準は
今のところないと思う。
>「勝率を最大化する」というシンプルな目的と、
勝率ではなくて、利得を最大化する・・・
利得の設定の仕方は、開発者によって様々。
一番シンプルなのは、勝ったら1、負けたら-1
こう設定すれば勝率になる。
0059デフォルトの名無しさん
NGNG卓越した定石の選択がなんなのかはよくわからないけど、
数学的に考えてって何を考えたんだろう・・・
>この2つしかできないような気がする。で、特に重要なのは、読みの速さ。
探索空間とハードウェアの性能の比較を数学的にしてみるといいと思うんだけど。
オーダーが全然違うよ。
>ところで、アルゴリズム的にはここ数年「明らかに」強くなってるんですか?
ここ30年間はゲームプログラミング=チェスプログラミング
であって
チェスプログラミング=探索アルゴリズムだった。
大方、片付いたと思われるので
探索アルゴリズム研究は終焉を向かえ
ゲームプログラミング=将棋、囲碁
の時代に入ってきた。
・・・らしい。
006055
NGNG>固定深さ打ち切りによる探索アルゴリズム
これだと、時間が余ったらほんとにありえないような(たとえば関係ないところでいきなり18香とか)そういったのも読むから、そういったのは読まない
実現確率打ち切りによる探索アルゴリズムのほうが明らかに強いでしょう。でも、このアルゴリズムって最近出てきたんですか?
実現確率打ち切りによる探索アルゴリズムもやりすぎると、指されるんだけど読めないような手が出てきて、結局読みの深さと幅のバランスをより最適にすると言うアルゴリズムであってそのアルゴリズム内ではたくさん読んだほうが強い。
あたりまえか?
>それから、DeepBlueがハードウェア的にすごいのは良く知られてますけど、
>アルゴリズム的にも、SingularExtensionなどの手法を編み出していることも
>知っておいて欲しいな。
>ハードだけじゃ勝てないのです。
そりゃそうですけど、ソフトのほうでやれることはそんなに多くないと思うのです。Deepblueのころはまだ研究段階としては始めのほうだったからその多くないアルゴリズムを編み出すことが出来ましたが
どんどんなくなってきて、そのうち尽きてくると思うのです。まあ、ある意味あたりまえですが。
006155
NGNG将棋をですね、思いっきり簡単なモデルにするんですよ。金1枚と王のみで5*5マスとかね。そうすると、その時の定石の選択って結局あらかじめ知ってるか
先を読むかによってしか正しい選択は出来ないでしょ?そのゲーム木は、それ以外の要素ではランダムです。そのランダムなゲーム木の中でこちょこちょパラメータをいじってるようにしか見えないんですよね。
>探索空間とハードウェアの性能の比較を数学的にしてみるといいと思うんだけど。
オーダーが全然違うよ。
そういえばそうですね。となると、評価関数もかなり大事ですね。そうすると58さんたちの議論とかぶってくるんですが、評価関数で評価した値だって、先を読んでみないとほんとにそうかはわからない。ゲーム木の分岐はランダムなんだからね。
だから、58さんは、もちろん、ある評価関数がどのくらいかを厳密に評価する基準は 今のところないと思う。 といってるけど、これからもないと思う。
>>58
>ただ、現時点では、定石データベース無しで上手くやれる
>将棋のプログラムはないので。
人間だって、定石の知識なしでうまくさせる人はいませんよね?そういった意味では人間もコンピュータも同じです。
006255
NGNG今のプログラムというかたぶん、これからのプログラムも↑こう思うってことね。
006355
NGNG駒の可能な動き以外ではランダムってことです。
で、その駒の動きから判断するのが、先を読むってことです。つまり、先を読むということによるか、あらかじめこの局面はこう指す(それだって、先を読んで得られた結論)と教えること、
あとは、たくさん指してきた経験から得られる評価関数(それは絶対的なものではない)、はさみうちにするとかいう簡単な構想(それも経験)それぐらいしか強くする方法はないと思う。
あとは、それぞれの分野の中でのアイディアとバランスかな?
ある局面から読まずに評価する評価関数には限界がある、その限界に少しでも近いパラメータをこちょこちょ探すっていうのがプログラムなんだと思う。
0064デフォルトの名無しさん
NGNGここ数年は探索アルゴリズムの進化も止まったね。
チェスに特化した探索アルゴリズムは
どうなってるのか知らないけど。
でも、ハードウェアでどうにかなる事は何もないと思うんだけど。
BLUEからJuniorになって何が変わったのかをチェックしてみては?
まあ、汎用的な計算に使える量子コンピューターを作るというなら
話は別なんだけど
今のコンピューターを一生懸命改良していっても
性能はあがらないというのが、一般的な見解。
深さ20で平均分岐が10の探索木を作れているとして
その木の深さを一段深くするには
10^20のノードに対して10個の展開を行う必要がある。
許容時間をT秒、比例定数(ノードの展開時間)をKとすれば
K*(10*(10^20)/T)Hz分だけCPUが速くならなくてはならない。
もっとわかりやすく書けば
一手深く読むには1GHzのCPUを10GHzにする必要がある。
これはちょっとゲームを複雑にすれば
10GHzのCPUも1GHz程度の価値に簡単にできる事を意味する。
(探索における話)
0065デフォルトの名無しさん
NGNG約3倍で済むんじゃないの?
0066デフォルトの名無しさん
NGNG平均分岐数をAとおけば
n段の深さまで探索を行うのに必要な時間は
(A^(n+1)-1)/(A-1)
で
さらに一段掘り進めるには
A^(n+1)展開しなくてはいけない。
A^(n+1)-1をA^(n+1)とみなせば
1段深く探索するには
CPUの能力をA倍しなくてはいけないという風に計算する。
Aが10だとすると
10倍か・・・値はあってるね
2段深く探索するには100倍
3段深くするには1000倍となる。
パーソナルなコンピューターが3段深く探索するようになると
ハードディスクの容量は50Tとかになるのか。
0067デフォルトの名無しさん
NGNG実現確率の計算ってどうやるの?
もしかして、着手統計による遷移確率の計算とやら?
>先を読むかによってしか正しい選択は出来ないでしょ?
>そのゲーム木は、それ以外の要素ではランダムです。そのランダムなゲーム木の中でこちょこちょパラメータをいじってるようにしか見えないんですよね。
言いたい事が全然わからないんだけど。
正しい選択って何?
>だから、58さんは、もちろん、ある評価関数がどのくらいかを厳密に評価する基準は
>今のところないと思う。 といってるけど、これからもないと思う。
ないと思うことの根拠は何?
一側面だけ見て比較する事自体に意味がないことはわかるよね?
最高の評価関数とどのくらい離れているか(距離の定義を満たす)が
定義できて、その近似計算法が確立すればいいだけなんだけどね。
もし、強化学習の進化版がでてきて
最適な評価関数が作れてしまえば簡単かも、と俺は思うけど。
0068デフォルトの名無しさん
NGNG定石がなくてもプロは強いんだけどね。
というか、5*5の将棋もどきを想定する理由は何?
>そのランダムなゲーム木の中でこちょこちょパラメータをいじってるようにしか見えないんですよね。
パラメータって何のパラメータ?
>強くする方法はないと思う。
そう思う理由は?
>ある局面から読まずに評価する評価関数には限界がある、
なぜ?
ちょっと自分用語が多くないですか?
あと、自分の考えを主張するだけじゃなくて、
理由を付け加えてくれるといいかも。
多数決じゃないので。
改善よろしく。
0070デフォルトの名無しさん
NGNG計算機>>人
だと思うんですよ。
あと限界があるのもコッチなんですよ。多分。
既存のアルゴリズムで精度をある程度保った場合の探査速度
って、O(k・n・log(jn)) とかでしょ?多分。
今後いくら研究進んでも定数のjとかkが変るだけなんだと思うんですよ。
後は計算機の性能が上がるのを待つだけ。それと並列化なのかな?
というわけで、面白みがあるのは、評価関数(?)なような気がするんですが。
どうでそうか。
探索の斬捨てとかだって、評価関数次第だし。
0071デフォルトの名無しさん
NGNGここは人がイッパイ集まる2chだし。
探査アルゴリズムはその道の人には中々勝てないと思いますよ。
勝ったとしても既存のものとソウは変らないと思うし。
0072デフォルトの名無しさん
NGNGオーダーの中に定数入れませんね普通。(´Д` ;
まあ、言いたいのはどんなに頑張ってもO(n)にはなんねーだろ?
ということです。そんなのつまんねーじゃんみたいな。
0073デフォルトの名無しさん
NGNG0074デフォルトの名無しさん
NGNG0075デフォルトの名無しさん
NGNGだから、平均分岐数をAでおいて計算式立ててみたんだけど、
間違ってるところがあったらおしえて。
>計算機>>人
チェスの事例から、それは明らかかもね。
>既存のアルゴリズムで精度をある程度保った場合の探査速度
>って、O(k・n・log(jn)) とかでしょ?多分。
違うと思うよ。根拠があれば教えて。
「ある程度の精度」の定義にもよると思うけど
精度をあげれば計算量は上がるね。
で、俺はそれを平均分岐数としてみたんだけど
それがO(A^n)
この計算式から、探索幅を絞る事はそれなりに効果があるけれど
絞った分だけ深く読めるという事にはならない
という風に解釈できる。
探索幅と探索深度を解釈すると何になるんだろう?
k・n・l
顔文字っぽいね
>というわけで、面白みがあるのは、評価関数(?)なような気がするんですが。
探索アルゴリズムをこれ以上研究しても、あまり面白くない事は確か。
ただ、人間はO(n)の探索を試みているような気がする。
つまり、一直線に降下していって、ある程度行ったら戻ってくるという事を
数回行う。
一直線に降下していくのは、おそらく人間が一つの事しか考えられないからだと思うけど。
なんであんなに探索の幅が狭いんだろうか。
0076デフォルトの名無しさん
NGNG0077デフォルトの名無しさん
NGNG0078デフォルトの名無しさん
NGNGO(√(A^n))です
alpha beta game tree search
こんな感じので検索してみてください
0079デフォルトの名無しさん
NGNGアルファベータプルーニングの計算量はモデルを仮定した上で
計算機実験をして求めるんだっけな。
で、(A^n)^(1/2)ってのは
A^(n/2)と同じですか?
008055
NGNG>ハードウェアでどうにかなる事は何もないと思うんだけど
そうですね。ハードウエアが早くなってもほとんど変わらないですね。
>>67
>着手統計による遷移確率の計算とやら?
そんな感じなんじゃないでしょうか?
正しい選択とは厳密に言えば将棋を、初手からすべて探索した場合、先手必勝か、後手必勝か、引き分けになるっていうのは知ってますよね?
そのときの、必勝法への経路を取る手ですね。
>一側面だけ見て比較する事自体に意味がないことはわかるよね?
ある局面の時に、この評価関数が正しいかどうかですか?それはわかります。
そもそも、評価関数とはその後の手が自分に不利になるか有利になるかを判断する関数なんで、結局後を読んでみないとほんとに正しいかはわからない。
すべての場合を考えて、とりあえずは最適な評価関数と言うのは存在することは認めますが、それが、局面によっては最適じゃなかったりするのです。
で、すべての局面に対して最適な評価関数があるのかと考えた時変化の仕方がランダムなんだからないと言うことです。
言ってみれば、じゃんけんで、何を出すのが最適か?というのに答えがないようなものです。
たとえば、グーを良く出す人に対しては最適な評価関数はあります。しかし、将棋で、すべての場合に対して最適な評価関数はないと言うことです。
008155
NGNG>定石がなくてもプロは強いんだけどね。
そうですね。プロは読みが圧倒的に早いですからね。だから、定石をはずすことによって不利になった分を読み合いで圧勝することでカバーできる。
>5*5の将棋もどきを想定する理由は何?
まあ、考えてることをモデル化によって単純にして本質的なことを考えやすくしてるのです。
>パラメータって何のパラメータ?
評価関数のパラメータ、どの定石をどうやって選ぶかのパラメータ。
>そう思う理由は?
>>強くする方法はないと思う。
ここだけ抜かれちゃうとごへいがあるのですが、画期的に強くする方法があるはずだって考えてる人がいるじゃないですか?自分もそうでしたけど。
でもよく考えたら、そういう方法はないって言う結論に達してしまったのです。
>
>ある局面から読まずに評価する評価関数には限界がある、
なぜ?
67への回答を読んでください。
最近将棋プログラム作ろう、プロに勝つのを作ろう、って意気込んでやってたんですが、よくよくかんがえたら、ハードウエアによるか(けた違いに早くなる)、プロと同じぐらい勉強して、それ以上の手間をかけて
コンピュータに覚えこませるって言う方法しかないって言う結論になってしまったんです。そうすると、なんか急に面白みがなくなってきてしまって・・・。
>>76
激指らしいですよ。
0082デフォルトの名無しさん
NGNG依存するといっても大抵は1番目の手でカットオフが起きると思いますよ
それと同じかどうかって違うんですか?
008355
NGNGコンピュータに覚えこませるって言う方法しかないって言う結論になってしまったんです。そうすると、なんか急に面白みがなくなってきてしまって・・・。
あ、デモさらによく考えたら、プロだって将棋の神様じゃないんだから、プロよりたくさん読めるようになって(もうなってるか)、評価関数がプロより良ければかてますね。
たとえプロが定石を研究してても、その研究はプロよりいい評価関数のコンピュータに自動でやらせればいいんですから。
今まで言ってたのは、将棋のあらゆる局面を初手からよんだ場合に勝つことができる評価関数はないってことです。よく考えたらあたりまえでした。
008455
NGNGよっしゃ、作るやる気が出てきたぞ。
0085デフォルトの名無しさん
NGNG0086デフォルトの名無しさん
NGNG過去の統計データを活かす事はできるけど。
定石ってのは統計データの集大成でしょ。
いい定石が残り、悪い定石は使われなくなる。
逆にいえば、定石として残ったものは勝率が高い。
そして、そういうものは出現確率が高い。
0087デフォルトの名無しさん
NGNG例えば、オセロなんかはどうかな?
どんな局面からも、自分のコマの数を最大にする手は存在するよね?
将棋だと、こんなのはどう?
任意の局面を与えると、相手がどんな着手をとっても勝てる場合は1
引き分けに持ち込める場合は0
勝てない場合は-1を返す評価関数。
この評価関数があれば、最強の将棋が作れるよ。
そして、最適な手とは
次の局面において評価関数が1を返す着手全部。
もしなければ0を返す着手全部。
それでも無ければ-1を返す着手全部。
言いたい事を推測してみると、
相手がミスして、こっちが勝つかもしれない。
だとすれば勝てる見込みがなくても、相手がミスしやすい着手を打てばいい。
という事かな?
相手がミスしやすいとは、どういうことか?
相手とは何?
ここまできた時初めてモデル化という概念がでてくる。
対人間であれば、対人間のモデルを作らないと意味が無いし
対コンピューターならば対コンピューターのモデルを作らなくてはいけない。
そうなると、ここでの強さの定義は**に対して強いという意味になり
純粋な強さじゃなくなる。
そのアルゴリズムは
対戦相手のデータがある時、そのデータをどう使うかのアルゴリズムなわけで
評価関数とは直交していると思う。
方法が見つからないから、方法がないと結論付けるのはどうかと。
0088デフォルトの名無しさん
NGNG微妙すぎてわからん。
評価関数はおおよそ正しいけど、
とんでもないところで抜けてたりするから
探索が必要なんじゃない?
>先手必勝か、後手必勝か、引き分けになるっていうのは知ってますよね?
自分でこう書いてるのに・・・・
任意の局面をこの3つに結びつける写像が存在してるんだから
将棋のあらゆる局面を初手からよんだ場合に勝ちか、負けか、引き分けかを
判定する評価関数は作れるじゃん。
0089デフォルトの名無しさん
NGNG0090デフォルトの名無しさん
NGNG0091デフォルトの名無しさん
NGNG0092デフォルトの名無しさん
NGNG終盤や定跡形以外でもプロが強いことはPC将棋的にはどう捉えているのですか?
0093デフォルトの名無しさん
NGNG0094デフォルトの名無しさん
NGNG+2手で相手の玉にぶつけられる駒の数×8
+3手で相手の玉にぶつけられる駒の数×7
+・・・
ポイント計算で形勢判断できれば簡単なんだが
0095デフォルトの名無しさん
NGNG従来の将棋ソフトに比べて明らかにおかしな手を指す。
形勢が有利な場面なのに、相手の無意味な手に反応して、
前に出られたら下がるみたいな…。
また、SOFT側の定跡が整う前に、
こちらから定跡を崩して攻めだすと、
数手、わけのわからない手を指した挙句に、
こちらが攻めるまで行ったり来たり、
さらにPC側は何も布陣が変わらないわけだけど、
こちらは徐々に前に押していくので明らかにこちらが有利になる。
そこになってようやく反撃しようとするけれど、
余裕でこちらが勝てる。
わけわからん。これが現時点で最強のソフトなのか?
時間だけは確かに早かったです。序盤は数秒もいらない感じ。
中盤も十数秒で返してくる。何度か制限時間まで使ったくらいで、
基本的には一手10秒が守られていた。
0096デフォルトの名無しさん
NGNG「抽象化されたデータベース」=格言?
「金底の歩」「玉の腹に銀」「金銀形」
駒組みの基本を守れば、各駒の動きを最大限に引き出すことができる・・・みたいな
0097デフォルトの名無しさん
NGNG(1)囲碁・将棋で、ある局面において双方にとって最善とされる一定の打ち方・指し方。長年の研究によって確立されたもので、
それに双方が従えばある局面の結果は互角になる場合が多い。〔囲碁では「定石」、将棋では「定跡」と書く
0098デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNG(2)はないの?
0100デフォルトの名無しさん
NGNGそんなのはわかってるんだよね。
オセロの場合
データベースを使った結果序盤が
全探索を使った結果終盤が
人間を超えている。
コンピューターオセロと戦う時は、中盤の10数手の間に
コンピューターを凌駕する着手をしなくてはいけない。
チェスも同じ。
終盤はデータベースといっているが、
全探索の結果をデータベースにして持っているだけで
終盤にデータベースが存在するのは、全探索を行った結果として
人間と同じか、それ以上の能力を獲得した。
それなのに、クソ弱いのは
中盤とかデータベース、全探索が使えない時の
優れたアルゴリズムがないから。
0101デフォルトの名無しさん
NGNG問題は将棋だよ
0102デフォルトの名無しさん
NGNG分岐数が増えただけでは?
0103デフォルトの名無しさん
NGNG駒使えるからね
0104デフォルトの名無しさん
NGNG0105デフォルトの名無しさん
NGNG「分岐が広い」だけならPCのスペック次第で何とでもなりそうだが
とりあえずプログラム的には終盤がデータベース化できないのが最大の違いかと
0106デフォルトの名無しさん
NGNGttp://live2.2ch.net/test/read.cgi/news/1044014955/l50
0107デフォルトの名無しさん
NGNGやりたい手順に駒が足りるかどうか。
0108デフォルトの名無しさん
NGNG将棋では人間が勝てないのに対し、麻雀ではCOMが人間に勝てないのが現状
0109デフォルトの名無しさん
NGNGイカサマしてりゃCOMが勝つに決まってるだろ。
0110デフォルトの名無しさん
NGNG0111デフォルトの名無しさん
NGNG0112デフォルトの名無しさん
NGNG「将棋では人間が勝てない」
逆でしょう。
人間に及ばないから将棋のプログラムは魅力がある。
0113デフォルトの名無しさん
NGNG勝敗がランダムって、麻雀知らない奴の発言だろう
麻雀って、配牌からただ普通に打っても勝てないの
好牌先打だのベタ降りだの、山読みとかなんとかって色々あってだな(ry
状況判断(特に点数)の面でCOMが人間より明らかに劣っていると感じた
俺は毎回コンピュータ麻雀最強とか謳ってるAI麻雀シリーズとか沢山やってきた
でも、自分じゃそんな難しいプログラムできましぇ〜〜ん
>>112
それもそうだね。あなたは正しい
0114デフォルトの名無しさん
NGNG将棋は馬鹿な頭じゃ難しいからコンピュータに勝てなくて
麻雀は運次第で勝てるから勘違いしているのかい?(w
0115デフォルトの名無しさん
NGNG> 麻雀って、配牌からただ普通に打っても勝てないの
> 好牌先打だのベタ降りだの、山読みとかなんとかって色々あってだな(ry
> 状況判断(特に点数)の面でCOMが人間より明らかに劣っていると感じた
所詮全部確立だけで決まる問題だよ。相手の牌も次の牌も確率以外じゃわからないしね。
0116現代の一般世間的なニーズ
NGNG0117デフォルトの名無しさん
NGNGたとえば、ドラポンされた相手に対して、どう向かっていくか
自分が安上がりで、相手の高い手を消すか、当たったら危険なので守りに徹するか
こういう微妙な判断が上級者と違う
しかも、麻雀は捨て牌からある程度、相手の手の情報が読み取れる
初心者は何も考えずに突っ込んでくるだけ
0118デフォルトの名無しさん
NGNG将棋や囲碁みたいに最善手があるわけじゃない。
その手がいいかどうかは運しだい。
0119デフォルトの名無しさん
NGNG麻雀のトッププロは、殆ど確率だけでやってない。
これはデジタル的な考えがオカルト的な考えに負けてしまっていることを意味する。
おまえらは、ありえないと思うだろう?
このスレには牌を握ったことも無い人が多いようなので麻雀のことは無かったことに・・・
0120デフォルトの名無しさん
NGNGどれを切れば、最終的にあがりやすい形に持っていけるかとか
毎回14枚の牌で同じ価値のものは一個も無いからね
つーか、将棋しか知らんだろ?麻雀もやって味噌
0121デフォルトの名無しさん
NGNG確立だけでやってないって証拠を示して無いのに熱く語られてもなぁ。
ようは勘って言いたいんだろ。確立とランダムを合わせた言葉ね。
麻雀のトッププロとそれなりに考えているコンピュータと勝負させて
トッププロが必ず勝つなら、運や確立で決まるもんじゃないと認めてあげるよ。
0122デフォルトの名無しさん
NGNG> 期待値的な最善手はあるよ。
だから今までの流れから確立が高い奴を選べって事でしょ。
あとは面白くするためにハッタリの要素を入れるくらい。
それだけで麻雀は簡単に作れるよ。
0123デフォルトの名無しさん
NGNGおまえは次の局で14000点以上で上がれるのかと問い詰めたいって感じでな
詰まらないんだよ、馬鹿すぎて。
だから、将来有望な君たちに麻雀のAIプログラムを薦めてみた訳だが
これじゃ、麻雀のAIプログラムが強くならないな。
しかもプログラマーは麻雀をやらないらしい(w
いま、若い奴(オヤジ含む)の間で、麻雀流行りかけてるしね(時代を先取り)
0124デフォルトの名無しさん
NGNG2ch とはいえ。
0125デフォルトの名無しさん
NGNG運の要素が全く無く、一発で差が出る将棋じゃないんだからな・・・
でも、麻雀も試合数が多ければ多いほど差が見えてくる。
ネット麻雀の東風荘なら他人との差が数値で分かる
0126デフォルトの名無しさん
NGNG0127デフォルトの名無しさん
NGNG> 今の最強のコンピュータは3位と15000点差で、しかもあと1局で終わるのに1000点で上がるような馬鹿だから困ったもんだ
それはそのコンピュータがそういう情報を考慮してないだけ。
考慮するだけで改善される。AIなんて高度なもんじゃない。
まだ分からないかなぁ。将棋や囲碁は必ず勝利するという手がある。
ただ、その量が半端じゃないからデータベースに出来ず短い時間で
もっともよい手を検索しなければならない。
対して麻雀には必ず勝利する手というものは無い。すべては運しだい。
分かりやすく言えば○×ゲーム(囲碁・将棋)とじゃんけん(麻雀)みたいなもの。
じゃんけんでいくらAIを良くしようがやれることといったら相手の出す手の
特徴を分析するくらい。それでやっと互角。そして限界。
0128デフォルトの名無しさん
NGNG100%の正解が必ずどこかにある
それを必死で探す
プログラマ受けがいいのも無理ないな
最強の将棋プログラム「全部の手を最後まで読めるプログラム」は、
バーゲン会場にあるお買い得品のようなもんだから、
急がないと先こされちゃうよ
0129デフォルトの名無しさん
NGNG全てが運って、それは1回切りだったらな
何百試合もやれば、差が出るんだってば
たとえば、今、俺とおまえさんが打ったら100試合中80試合はおれが勝てる自身はある
じゃんけんは一切情報が無いから、何百試合やっても同じ
0130デフォルトの名無しさん
NGNGなにをあたりまえのことを言っているんだ?
将棋は人間より強いものを作れる。そしてまだ実現できない。
麻雀は人間より強いものは作れない。そしてその程度のものは実現できる。
そういう話だろ。
>>129
> たとえば、今、俺とおまえさんが打ったら100試合中80試合はおれが勝てる自身はある
その根拠は? なぜ俺が負ける? 説明してみ。
0131デフォルトの名無しさん
NGNG俺は勝つルールを知らない。だから負ける。
だから勝つルールを片方が知っていれば十分のじゃんけんとは違うな。
例が不適切だったのは認める。
じゃんけんよりも、どこでも好きなルートを選べるすごろくと言った方が適切だな。
勝つルールを知っていれば最短ルートを選ぶ。だから勝つ確率も高くなる。
もし勝つルールを知らなければ最短ルートを選ばないだから負ける確率が高くなる。
麻雀で俺が負ける理由と同じだ。
そして双方が同じルールを知っていれば、勝つ確率は同じになる。
麻雀もそういうことだ。それでやっと互角。そして限界。
0132デフォルトの名無しさん
NGNG麻雀のルールが難しすぎて君のイタイ頭では理解できてないだけでしょうね
麻雀の方が膨大ですよ
たとえば、牌は一種類に付き4枚、自分の手に2枚あるってことは、他のひとはこの2枚を持ってない
この2枚を持って無いってことは、あの役は作れない、あの待ちはない
場の捨て牌にあの牌が何枚出ているから、あの形が相手の手に入っていることは無い
あの牌が、あの牌が、あの牌があの牌があのあさいんhがおあいdさg
しかも、毎回、自分に何の牌が来るかも分からない
(将棋だと、盤面じっくり見たら、分かるよね?)
これらを毎回全部考えることがどれだけ大変なことか・・・
ま、これらを抜いて考えるAIを作るのが簡単だって言ってんなら、程度の知れたプログラマだわ
0133モウコネェヨ!ウワァン(顔文字省略)
NGNG高い手を作っているような捨て牌をしておいて、流局すると実は手の中はバラバラという技術です
AIはそのブラフの捨て牌を見てあの上がりをされたら危ないなと思って自分の上がりを放棄してでも危ないのは出さずにその局を終えようとしたりする(間違いではない)
ところが、AIにはブラフの概念が無い、第一打から上がりを放棄するようなことは意味の無いことだから
AIは素直に確率に基づく方法でしか打たない。それだけ分かってるだけでも人間が随分有利になってしまう
見て考えれば分かる将棋には無い、見えない駆け引きってのが麻雀の魅力であり難しさ
デリケートな部分を含む麻雀は将棋好きには理解されないのは分かってました
将棋だと人間(常人)相手に一度も負けないCOMになれるけど、麻雀ではそれが出来ない
全部の牌の情報を逐一把握していけば人間に対して(人間よりも)どこまで勝率が高いCOMを作ることができるかということに興味がありました
0134デフォルトの名無しさん
NGNGそれって本当にAIか?
それだったら挌闘ゲームのAIの方がよっぽど優秀だぞ。w
#なんせあっちは無意味な挑発してくる。
麻雀に関しては、極力負けないAIを作るのは比較的簡単だろうけど、
それが対戦相手として詰まらないと言う点には同意。
張ったりや引っ掛けもしてくるAIなら、キャラが立っていれば対戦してて
面白いんでないかい?
#そしてそれは実現不可能ではない。
0135デフォルトの名無しさん
NGNG独自にスレを作る事をお勧めします。
0136デフォルトの名無しさん
NGNG対戦相手として面白い将棋AIってどんなんだと思う?
0137デフォルトの名無しさん
NGNG0138デフォルトの名無しさん
NGNG相手のモデルを考慮したソフトを作るってことが必要になってくる気がする。
最後まで読みきっちゃうと相手もくそもないから、その前の段階、限られたCPU資源でどこまでいけるかって話ね。
将棋では人間が「勝負手」を指すけど、それって「相手が受け間違ったら大変な局面、間違いそうな局面」に誘導してるわけだよね。
今のコンピュータは自分が読みが鬼強だから、相手も同じくらい読めると思って探索してる。
だから終盤で「30手詰めです。私が負けました」って平気で言っちゃうわけね。
麻雀は不確定性が高いから、読みよりは「相手がこう読んで、こう打ってくるに違いない」というモデルを推察することのほうが効果が高いんだと思うよ。
あるいは、「自分はこんな高い手を狙ってるんだぞ」と相手に誤ったモデルを植えつけるようなはったりとかが重要になるんだろうね。
0139デフォルトの名無しさん
NGNGおもしろくない。
対人だからおもしろいんだよ。
>>138
>だから終盤で「30手詰めです。私が負けました」って平気で言っちゃうわけね。
それの何が問題なの?
普通じゃない??
0140デフォルトの名無しさん
NGNG不完全情報で、複雑な確立のゲームだからね。
それに将棋みたいに明確な強さが現れてこないから、
作りづらい事は確か。
でも、やろうと思えば将棋よりは簡単という印象がある。
0141デフォルトの名無しさん
NGNG将棋に比べればって言うならわかるけどね♪
0142デフォルトの名無しさん
NGNG138で、その「コンピュータの麻雀は面白くない」理由を明確にしたつもりだったんだがなぁ。
将棋でも麻雀でも、コンピュータが苦手にしているところが「相手モデル」の考慮。
で、将棋はゲームの面白さの中で比較的その要素が小さく、麻雀はその要素が大きいというだけの違いしかないのではないかと。
だから、「より面白く」するためには、将棋でも麻雀でも避けて通れない問題だよね、と伝えたかったのだが…。
30手詰めの話は、相手が「常にパーフェクトに指してくる」と思っていることのわかりやすい例を出しただけだよ。
別にそれが悪いとは言ってない。
あと、将棋よりは麻雀のほうがずっと難しいでしょ。
不完全情報である点、長期的な戦略が必要な点(半荘単位で勝てばよい)、4人ゲームである点(3人に結託されるかも)等々、難しいよ。
ただ、誰かが言いたがってた「人間には勘があるからコンピュータより強い」っつーのには反対だが。
人間なんて頭ん中でたいした事してないって。もちろんコンピュータもたいした事してないけど。
お互いにたいしたことしてないからゲームが面白い。
0143デフォルトの名無しさん
NGNG将棋は不完全情報ゲームだよね。とすると、人間に勝つには
相手モデルに基づく方略は必須だろうね。
0144デフォルトの名無しさん
NGNGしたがって、人間でも見落とすし、コンピュータも読みきれない。。
そこが難しいよね。
ちなみに麻雀は最善手を見つけやすい
0145デフォルトの名無しさん
NGNG麻雀は切る牌は14枚の手の内から選ぶし、
進むごとに牌が減って行くので、
手はかなり限定されてる。
行ったり来たりできる将棋は駒の交換をしたりもできるので
変化が爆発的に増加する。
だから、変化を減らす努力が必要にあるが、ただミスをしないプログラム
になって、創造性を欠如したものは
やってておもしろくないと思う。
0146デフォルトの名無しさん
NGNG創造性をだすにはどーするかがこのスレの目的の一つ
0147デフォルトの名無しさん
NGNGディープブルー状態だね。
必勝手が存在するゲームでは遅かれ早かれそうなるよ。
でもそんなのはどうでもいい。必勝手が存在していながらそれを
見つけるのが困難な問題でいかに早く最善手を見つけるかというのが面白い。
そういう必勝手があるゲームじゃ人間は勝てない。今は無理でも。
そういうゲームで人間を楽しませるためにわざとミスをしたり最善手
じゃない手を指すようにプログラムをすることはあるだろうな。
本気のコンピュータ相手に人間がゲームを楽しみたいという目的なら
必勝手がないゲームをやるしかない。
麻雀なんかは最善手が必勝手じゃないからいいんじゃない。
0148デフォルトの名無しさん
NGNGコンピュータにとっては麻雀のほうが難しいよ。
いわゆる読み切りをやるとして、麻雀はたとえ最後になっても相手3人×13枚+山に14枚の計53枚が伏せられた状態だよね。
ってことはオーダーとしては53!くらい牌の配置の可能性がありうるわけで、
しかもそのすべての可能性の、どんな場合でも失敗しない手を読み切りで選ぶ、なんてのはまず不可能でしょ。
人間が「最善手」と思ってるのは、相手はきっとこの辺を持ってるって、ごくあいまいに読んでるだけの「最善手」だろうよ。
ちなみに、現状のコンピュータは詰め将棋は解けるけどブリッジ(麻雀みたいに伏せられたカードがあるトランプゲーム)の問題は解けない。
まあ麻雀でもパズルみたいにきちんと解ける局面も作れるとは思うけどね。
だけど、くれぐれもゲームの優劣とかの話題に持っていかないように!
コンピュータにとって解きやすい、解きにくいという違いとゲームの面白さは全然関係ないよね。
0149デフォルトの名無しさん
NGNG0150デフォルトの名無しさん
NGNG最強にするんだろ?
0151デフォルトの名無しさん
NGNG人間が絶対勝てないゲームになっちまうし。
将棋の存在意義が薄くなってしまいそうだ。
0152デフォルトの名無しさん
NGNGネタですか? どこから53!なんてのが出てきたんだか。
最後にやれる行動の数を考えてみろよ。
お前、テストで適当な数値に!マークをつけて答えにしてたろ。
> しかもそのすべての可能性の、どんな場合でも失敗しない手を読み切りで選ぶ、なんてのはまず不可能でしょ。
麻雀にはどんな場合でも失敗しない手なんて存在しない。いくらCPUが速くなっても
存在しない物が読みきれないのは当たり前。
いい加減、最善手が決まる問題と決まらない問題を
ごっちゃにするのはやめてほしいね。
0153デフォルトの名無しさん
NGNGoが現在の最高のコンピュータの性能
*が現在の最高の人間の性能
オセロ
|-------*-o| ←最善手(必ず勝つ)
チェス
|--------*o-----| ←最善手(必ず勝つ)
将棋
|---------o----*---------| ←最善手(必ず勝つ)
囲碁
|---------o----*--------------------| ←最善手(必ず勝つ)
麻雀
|--------*o| ←最善手(必ず勝つとは限らない・必ず勝つ手は存在しない)
0154デフォルトの名無しさん
NGNG0155デフォルトの名無しさん
NGNG一回で決める必要は無い
0156デフォルトの名無しさん
NGNG|-------*-o| ←最善手(必ず勝つ)
チェス
|--------*o-----| ←最善手(必ず勝つ)
将棋
|---------o----*---------| ←最善手(必ず勝つ)
囲碁(19路盤)
|--o-------*----------------------------------------------------------------------| ←最善手(必ず勝つ)
囲碁(9路盤)
|-----o--*-------|←最善手(必ず勝つ)
麻雀
|----------| ←不可能(運による要素が大きすぎるため)
て感じだと思うけど?
やっぱり盤の広さが一番大きいと思う
囲碁(9路盤)と将棋では囲碁の方が簡単だと思うけど
19路のほうの開発が主流で9路はあまり盛んじゃなかったから
9路と将棋だと人間がコンピューターに負けるのは将棋のほうが早いと思う
これは開発にかかわる人間の多さの違いであると思っている
19路は無理だと思う
0157デフォルトの名無しさん
NGNG見当違いも甚だしいぞ
一番、分かりやすいルールで馬鹿でも分かる将棋だけ極めればよろしい
また、このスレはそういうスレだ
0158デフォルトの名無しさん
NGNG実際には、与えられた情報からブラフかどうかを判断する事は不可能。
(確率しか計算できなくて、決定は無理という事)
相手モデルが決定していれば、確率が計算でき期待値が得られる。
つまり、捨て牌の順番と、自分の配牌が同じシーンでは
期待値の高い作戦を常に取りつづける。
実は駆け引きがあるようで、駆け引きとは相手モデルの推測であって
相手モデルの推測が終わった時点では、期待値を最大にする作戦を
選択するのが最善手である事は、簡単にわかる。
相手モデルの違いは大きく影響するかというと
明確な計算方法はよくわからないけど、
それほど多くないと思う。
ただ、将棋と違って相手モデルの考慮が重要なのは、
麻雀が確率に大きく支配されるから。
将棋では最適戦略をとれば必ず勝てる。
麻雀は最適戦略でも負けるときもある。
つまり、麻雀では相手から搾り取れるときには、たくさん搾り取らなくてはいけない。
ただし、相手モデルの影響はそれほど大きくないと思う事は前に書いた。
麻雀で考えると難しいから、ほとんど同じゲームの
ブラックジャックで考えればいいんじゃ?
相手の戦略に合わせて、自分の戦略を変えるというのが
この種のゲームのキーポイントになりそうだね。
0159人生金次第
NGNG麻雀ってのは情報戦なんだよ、単なる運合戦では無いぞ。
囲碁・将棋ソフトより麻雀ソフトの方が売れてるんだし(ファミコンなどの家庭用ゲーム・ゲーセンのゲーム・パソコンソフト全て合わせると発売自体に差がありすぎ)
金にならない将棋プログラムなんて糞
最善手だけを打てるAIを搭載なんて、結局は最初の興味だけ引いてお仕舞い
簡単だと思う奴は、最強のプログラム組んで金にしてみたらどうだ?
0160人生金次第
NGNG麻雀における最強は、1000回やって他人よりよりよい平均順位を叩き出すこと。
将棋は毎手最善手を見つけることが最強。
麻雀は毎巡最善手になりうる手を見つければ最終的な平均順位で勝てる。
だけど、麻雀の最善手は自分が上がる確率が高いのを選ぶだけじゃない(これが分かってない奴多いと思う)。
1局1局単位で考えるんじゃなくて最後にトップに近いところにいる可能性が高い1打を選ばなければならない。
たとえば、今、8000点の上がりを見逃して、少し苦労して12000に仕上げたほうが最後にトップにいる確率が高いだとかね
相手のとの点差も毎局変わってくるし、その場その場の期待値計算なら簡単だろうけど、それじゃ最強とは言えないんだよな
0161人生金次第
NGNG将棋は小学校のころにやったことがあるやつがいても麻雀はゲーセンのイカサマAIで遊んだことあるか無いかくらいだろうな。
たしかに、麻雀より将棋の方が触れたことのある人口が多いだろうしね。
ちなみに今は麻雀で人間の方が明らかに強いと思う。AI麻雀の最強面子とか弱すぎるし
インターネット麻雀で上級者相手の方が5000試合(局数にすれば40000局以上)以上での平均順位は悪くなった。
AI麻雀の最強という宣伝は誇大広告だったのか。人間にも勝てないなんて、絶対プログラムが甘すぎる。
シリーズ前作と強さ変わってない。ダマサレタ・・・。
そもそも、企業側がこのジャンルに力を入れてないような気がする。
というのも、稼げそうな理由。
ちなみに、平均順位は試合数が多いほど精度が増すからね。麻雀の場合500試合でも十分な数字です。
0162デフォルトの名無しさん
NGNG相手の手が隠されてるから
0163デフォルトの名無しさん
NGNG同じ力同士だと最後に勝負を決めるのは運だよ。
えっ、麻雀ソフトが弱いって。高々数万円のコンピュータ上の数千円の
ソフトで言われてもなぁ。それなら将棋だってチェスだって弱いよ。
あれ、稼げる余地があるから麻雀の方が難しいとか思ってる奴いるの?
0164デフォルトの名無しさん
NGNGチェスは数万円のPC上でフリーのソフトに
勝てる人間はほとんどいないんじゃないの?
0165デフォルトの名無しさん
NGNG麻雀の最善手すら見つけるには性能不足って訳だ。
もう少しコンピュータの性能が上がれば最強になるんじゃない?
もっともそのときでも将棋・囲碁にとってはまだ性能不足だが。
0166デフォルトの名無しさん
NGNGあぁ。チェス省いて。囲碁にしといて。
0167デフォルトの名無しさん
NGNGアホですか?
確率構造の推定ができてるなら、
順位の期待値だって計算できるよ。
運の要素って何?
確率の複雑差?
0168デフォルトの名無しさん
NGNG>ネタですか? どこから53!なんてのが出てきたんだか。
>お前、テストで適当な数値に!マークをつけて答えにしてたろ。
ワラタ。まあでもちょっとは考えようや。
53枚の異なる牌を3人の手(13枚ずつ)+山の4つに分けるとき、その分け方の数は
53!/{13!13!13!14!}だね。実際は同じ牌があるから同じ牌の並べ替えの分2!や3!や4!で割ってやる必要があるけど、
オーダーとしては圧倒的に53!の方が効いてくるでしょ。
>最後にやれる行動の数を考えてみろよ。
これで誤解してることがわかるけど、53!ってのは「隠れている牌がどのようになっているか、その可能な世界の数」のこと。
で、牌がある配置になっているときという「ある世界」において、
自分が可能な行動、つまり手の14枚から1枚捨てるという1手の中で一番いい手を選ぶのが、将棋と同じように「読む」ということなわけ。
>麻雀にはどんな場合でも失敗しない手なんて存在しない。
これはその通り。「すべての世界を考慮して手を最適化する」って書くとさっぱりわからないと思ったから、
わかりやすく書いてみたつもりだったけど、間違った表現になっちゃったね。スマソ。
まあでもやりたいことはそういうことよ。
0169デフォルトの名無しさん
NGNGそういえばドラ表示牌は見えてるな。というわけで最後に残るのは52枚ですか(w
0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNG悪くはないかもね。
今度作ろうかな。
0172デフォルトの名無しさん
NGNG> これで誤解してることがわかるけど、53!ってのは「隠れている牌がどのようになっているか、その可能な世界の数」のこと。
> で、牌がある配置になっているときという「ある世界」において、
> 自分が可能な行動、つまり手の14枚から1枚捨てるという1手の中で一番いい手を選ぶのが、将棋と同じように「読む」ということなわけ。
完全に間違ってるじゃん。全部の牌の数は? 牌の種類は? 捨て牌は? 全部省略して何がわかる?
53なんてでかい数で考えるから間違いに気づかないんだよ。
一人1枚・計4枚の可能な世界の数は4!=24ですか? どういう組み合わせか知りたいですね。
> オーダーとしては圧倒的に53!の方が効いてくるでしょ。
オーダー? 「ある世界」の数じゃなかったのか?
だいたいオーダーって分かってるか?
> その分け方の数は53!/{13!13!13!14!}だね。
これと勝手に省略した53!ではそうとう開きがあるぞ。
確率得意そうですから将棋の場合の駒がある配置になっているときの
「ある世界」の数でも計算して見たら? 驚くこと間違いなし(w
0173デフォルトの名無しさん
NGNG0174172
NGNG一人が持っている牌の順番が入れ変わっただけでも違うものと数えてるね。
まぁ全体的に間違った計算の一部の間違いを指摘してもしょうがないんだけど。
つーか、相手の隠れた牌をいちいち全部考えてもしょうがないんだけどね。
重要なのは捨て牌。それに相手の持ち牌もある程度分かるし。
0175デフォルトの名無しさん
NGNG0176デフォルトの名無しさん
NGNGだいたい
Σ{36Cn * 64Cn*n!}
36は駒の数
64はマス目の数
まず駒を盤上の駒と、手駒に分けて
手駒を盤上に配置
あとは、手駒を2つに分けるんだけど
この計算はそれ程大きな値じゃないので、しなかった。
手持ちの本では
チェス100^120
将棋100^220
囲碁100^300
らしい。
誰か麻雀を計算してよ。
俺がやろうかな・・・
0177デフォルトの名無しさん
NGNG駒の数を
9*4*4=144とする。
面倒なのでダブりがないと仮定して、ちょっと複雑にする。
まず、確立構造の複雑さを計算すると
自分の牌13と捨てられた駒n*4
n回目の確立の複雑さは
(144-13-n)!=(131-n)!
これは、あるプレイヤーが目にできない牌が
今後どのような順番で出現するかのパターンの数
これは、ゲームの最後には
(13*3)!=39!まで減少する。
他のプレイヤーの牌=13*3
(全部牌を配ってしまうと仮定してます
配られない牌が存在すれば存在するほど、確立に支配される部分が
指数オーダーで大きくなります)
0178デフォルトの名無しさん
NGNG誰かわかる人計算してください
0179デフォルトの名無しさん
NGNG>一人1枚・計4枚の可能な世界の数は4!=24ですか? どういう組み合わせか知りたいですね。
(abcd)(abdc)(acbd)(acdb)(adbc)(adcb)
(bacd)(badc)(bcad)(bcda)(bdac)(bdca)
(cabd)(cadb)(cbad)(cbda)(cdab)(cdba)
(dabc)(dacb)(dbac)(dbca)(dcab)(dcba)
24通り
0180デフォルトの名無しさん
NGNG>一人が持っている牌の順番が入れ変わっただけでも違うものと数えてるね。
いいえ。
0181デフォルトの名無しさん
NGNGこれ以上麻雀の話ししたきゃ新しくスレ建ててくれ
0182暫定 ◆EATzkCF5Wg
NGNG↓詳しくはここ
http://jbbs.shitaraba.com/game/bbs/read.cgi?BBS=3804&KEY=1044353350&LAST=100
が、本スレに人が来なくて未だに実験出来ず。果たしてほんとに対局出来るのか!?
0183デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/997150743/l50
プログラミングの為の数学と算数
を借りることにします。
0184デフォルトの名無しさん
NGNG賭けるとかなり燃えます。
人間味が出て面白いし。
心のない奴とやっても面白くない。
なんら技術とは関係ないっす。スマソ。
01851
NGNG「おまいら最強の麻雀プログラムしてみろよ」
になります。
0186デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/1044446158/
0187デフォルトの名無しさん
NGNG>麻雀をちょっと単純化して
>駒の数を
>9*4*4=144とする。
>面倒なのでダブりがないと仮定して、ちょっと複雑にする。
もっと詳しく書いて下さい。意味が全くわかりません。
駒って何ですか?
0188デフォルトの名無しさん
NGNG>>186
0189デフォルトの名無しさん
NGNG0190デフォルトの名無しさん
NGNG0191デフォルトの名無しさん
NGNG0192デフォルトの名無しさん
NGNG0193デフォルトの名無しさん
NGNG駒が不足しているのならそれを稼げるか、という考え方に基づいたアルゴリズム。
0194デフォルトの名無しさん
NGNG>効果的だと思われる攻める・守る戦略を選択して
どーやって判定するの?
0195デフォルトの名無しさん
NGNG差し手作成の順番がキーとなるわけかな。
よくあるのは前回探索での最善手をまず最初に生成するってやつ
0196デフォルトの名無しさん
NGNG0197デフォルトの名無しさん
NGNG書きたいだけ書いて何もできないヘタレ多すぎない?
0198デフォルトの名無しさん
NGNGまだ君らできてないみたいだから見せてあげるのはやめとこう
0199デフォルトの名無しさん
NGNG本当にできたのなら2ちゃんねるで発言してないで、
ソフトを販売したら、大会で東大や激指に余裕で勝ったら、
ユーザーも流れるだろうし。がんがれ。
0200デフォルトの名無しさん
NGNG釣られんなよ。
まあそういう俺も
最強将棋プログラムもう組んだんだが。
0201デフォルトの名無しさん
NGNG本当にできたのなら2ちゃんねるで発言してないで、
ソフトを販売したら、大会で東大や激指に余裕で勝ったら、
ユーザーも流れるだろうし。がんがれ。
0202デフォルトの名無しさん
NGNG釣られんなよ。
まあそういう俺も
最強将棋プログラムもう組んだんだが。
0203デフォルトの名無しさん
NGNG本当にできたのなら2ちゃんねるで発言してないで、
ソフトを販売したら、大会で東大や激指に余裕で勝ったら、
ユーザーも流れるだろうし。がんがれ。
0204デフォルトの名無しさん
NGNG0205デフォルトの名無しさん
NGNGおいおいおい>>202は激指の作者さまであらせられるぞ。
0206デフォルトの名無しさん
NGNG最善手をお互いが指し続ければ先手必勝・引き分け・後手必勝が決まっている
チェス、オセロ、将棋、囲碁等と比べて麻雀は違うゲームなんだが。
0207デフォルトの名無しさん
NGNGこれが2ちゃんねる。
0208デフォルトの名無しさん
NGNG準物理的不可算理論
「状態数が全宇宙に存在する素粒子の個数を超えたとき、
そのゲームは事実上決定不能になる」
0209デフォルトの名無しさん
NGNG同じ最強が勝負するポイントは先手か後手かのみ
0210デフォルトの名無しさん
NGNG将棋のどこに運が入り込む余地があるのか教えてほしい。
常に最善手を指す者同士が戦えば、何度やっても先手必勝・引き分け・後手必勝の
どれかが続くことになる。例えば、6*6オセロでは白の4石勝ち、という風に。
0211デフォルトの名無しさん
NGNGそれは勝つか負けるかの確率(運)が2分の1であることを意味する
0212デフォルトの名無しさん
NGNGそれはもはや、オセロや将棋やチェスではない。
さいころでも振って勝負を決めろや!
0213デフォルトの名無しさん
NGNG0214デフォルトの名無しさん
NGNG参りましたと言って投了したっていう話あったな。タモリが
言ってたんだったかな。
0215デフォルトの名無しさん
NGNG読みすぎ!!
0216デフォルトの名無しさん
NGNG完全情報、不完全情報という言葉で区別される。
興味がある人は調べてください。
>現実時間内で理論上の最善手が読めない(PCも)ということは実質的に
>将棋は不完全情報ゲームだよね。とすると、人間に勝つには
>相手モデルに基づく方略は必須だろうね。
この言葉の使い方は間違ってます。
0218デフォルトの名無しさん
NGNGま、ここでも見て勉強しろ
http://www.google.com/search?q=%E6%BA%96%E7%89%A9%E7%90%86%E7%9A%84%E4%B8%8D%E5%8F%AF%E7%AE%97%E7%90%86%E8%AB%96&ie=UTF-8&oe=UTF-8&hl=ja&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
0219216
NGNG> そのゲームは事実上決定不能になる」
まず、決定不能という言葉の意味と
事実上という言葉の意味がよくわからない。
例えば、
任意の自然数Nに関して
N+1は自然数である
という定理は直感的に正しい事はわかると思う。
で、当然証明は数学の公理を使った、帰納法で行われる。
自然数の数は、当然宇宙に存在する粒子よりも多い。
しかし、計算(決定?)できる。
そういうわけで、素粒子の数が
特別な値だとは思わないし
その数を超えた何かが特別だとも思わない。
0220デフォルトの名無しさん
NGNG0221デフォルトの名無しさん
NGNG自分で話を振らないと。
高度な話になると、結局は数学の話になってしまうのは
仕方ない。
0222デフォルトの名無しさん
NGNGよう分からんけど>>208は
N+1(Nは素粒子の数)の話ではなく
M^N+1(Nは素粒子の数・Mは1つの素粒子が表せる状態の数)なのでは?
まぁ、将棋が、それを超える事はないと思うが…
0223デフォルトの名無しさん
NGNG探索木の爆発にどう対処するのか、人間はそれをどう実現してるのか、
人間についての研究を取り入れるのが近道か、あるいはコンピュータ
的な別の方略が人間にかつための近道か。
そういったところ、よくわかってる人の議論が聞きたい。
0224デフォルトの名無しさん
NGNG演繹的に計算できればワンステップという意味だと思うが。
帰納法は加算無限集合なら計算できるのだから、
加算無限集合よりも規模の小さい、素粒子の数個の状態という集合が
計算できても何も不思議ではない。
0225桃花
NGNG「探し物とくとくページ」が http://sagatoku.fc2web.com/ に移転しました
探し物・欲しい物あったら開いて見てください 何でもあります
今探し物なくても取りあえず、お気に入りに入れておいて下さい 役にたちます
[yahoo] [infoseek] [google]などの検索サイトにて「探し物 とくとく」で検索
タイトル【探し物とくとくページ】を探してね あなたの探し物見つけて下さい
以前のURLにアクセスしても自動で新URLに移動します。
--------------------------------------------------------------------------
【イベント情報】
[ハッピーバレンタインコーナー] http://sagatoku.fc2web.com/101event-01.htm
[花粉症対策グッズコーナー] http://sagatoku.fc2web.com/101event-02.htm
[開業支援] http://sagatoku.fc2web.com/101event-91.htm
------------------------------------------------------------------------
http://sagatoku.fc2web.com/030softwar-01.htm ソフト・周辺機器
デジカメ Fuji FinePixF401 \64,800⇒¥44,800
Fuji FinePix F402 \50,000⇒¥37,800
------------------------------------------------------------------------
http://sagatoku.fc2web.com/012denwa.tsushin-01.htm
光ファイバーを使った超高速インターネット
最速100M!NTTBフレッツ ニューファミリータイプ ¥0
------------------------------------------------------------------------
http://sagatoku.fc2web.com/005kyoiku.school-01.htm
インターネット実務検定 IT人材紹介育成スクールなど
0226デフォルトの名無しさん
NGNGサイコロを全て計算し、0.1mmでも欠けていれば全部の目が同じ確率では無いんだろう
0227デフォルトの名無しさん
NGNG0228208
NGNGまず>>222ありがと。つまり次のようなこと
先手必勝・後手必勝・引き分けを見極めるためには、
可能な状態を列挙してそれに対する結果をすべて判定しなければならない
ということは可能な状態の個数だけ結果を記憶する必要がある
さて、その“結果”を書き込むスペースを考えたとき、
どんなに多く見積もっても、素粒子一個につき一つが限界だろう。
ということは、利用可能な記憶スペースは高々全宇宙の素粒子個しかない。
したがって何らかのゲームの状態数がそれを超えたとき、
全部の結末を同時に記憶するのは不可能になるので
先手必勝・後手必勝・引き分けといったゲームの“結論”を導くことが
「物理的に」不可能になる、ということ
(物理的に非実用的というよりもだいぶ複雑度が高い)
0229名無し募集中。。。
NGNG読み切るために必要なスペースは読みの長さに比例する分だけで十分ですよ。
その考えを当てはめるなら読み切るのに必要な手の列の長さが
記憶のためのスペースを越えたときのみ読み切れなくなると思います。
0230229
NGNG0231デフォルトの名無しさん
NGNG(・∀・)ニヤニヤ
0232208
NGNGえーとオセロとか囲碁とか「収束型」ならそうだけど
将棋はループすることがあるから状態数かと思ってた
でもそういわれると何か自信がなくなってきました…
0233名無し募集中。。。
NGNG0234名無し募集中。。。
NGNG0235デフォルトの名無しさん
NGNGループしているか(同一局面か)をチェックすればイイだけでしょ。
0236デフォルトの名無しさん
NGNGどうやってチェックするの?
スペースを使わずにできること?
0237デフォルトの名無しさん
NGNGループしてるかをチェックするために、過去の手を全部記憶しないといけない。
同じ局面にならずに手が進行していく長さの最大数は、状態数のオーダーであ
る可能性はある。
0238デフォルトの名無しさん
NGNG初手から現在のカレント局面までにおいてループしているかをチェックするだけで十分。
0239名無し募集中。。。
NGNG0240デフォルトの名無しさん
NGNG0241デフォルトの名無しさん
NGNG>可能な状態を列挙してそれに対する結果をすべて判定しなければならない
まあ、ここは偏見かな。
ループに関しては、そういう可能性もあるし、
幅優先探索や反復進化といった方法で
解が見つかってしまう事もある。
つまり、健全性が保証されていないと。
0242デフォルトの名無しさん
NGNGそれはきみの胃袋の広さの間違いだろ
0243デフォルトの名無しさん
NGNG★もうすぐ春ですよ★
0244デフォルトの名無しさん
NGNG毎日、2ちゃんをやってるクズだけど可愛い僕の想像物なんです
0245デフォルトの名無しさん
NGNG大きく捉えすぎてないか?
0246デフォルトの名無しさん
NGNG探索するには記憶領域が必要だ。
将棋の探索空間を全て記憶させるという場合には、例えば原子1個に1ビット記憶できたと仮定しても、
宇宙の原子の数よりも探索空間が大きければ、物理的に記憶できないことになる。
0247デフォルトの名無しさん
NGNG0248774予測
NGNG将棋も実質的には収束型であるといえるでしょ。
0249デフォルトの名無しさん
NGNGそして、ありうる局面数は宇宙の素粒子を越えると。
んだから、時間がいくらあっても将棋の結論をPCでは計算できないと。
つーことやね、。
0250249
NGNG現実上考慮しなくていい分岐を削減する方法があれば、悲観することもなかろうと。
0251デフォルトの名無しさん
NGNG0252249
NGNGやっぱしそうかね。
76歩−84歩−44角−同歩
でも先手必敗であることの証明はできんわな。で実際予想つかんわな。
0253デフォルトの名無しさん
NGNG神の領域を侵すことになるやもしれん
0254デフォルトの名無しさん
NGNG形式だけみてれば全検索しかありえないけど
意味的に枝刈りできないことが証明されたわけではない。
とか抗弁してみたり。
0255249
NGNG(=全探索しか方法がない)という証明があって、
ある条件を満たすゲームはその定理が成り立つ、って話が
あったな。ちゃんと知ってる人いない?
0256デフォルトの名無しさん
NGNG終了
0257デフォルトの名無しさん
NGNG話が理解できてないみたいだから失せてていいよ。
0258デフォルトの名無しさん
NGNG皮肉のつもりだろうけど、その局面だって人間は経験的に負けだって知っているだけ。
つまりその局面の先を人間が探索した結果負けだって知ったということ。
多少局面が異なれば、その手順では負けの局面だってある。
将棋では、駒の配置が一カ所違うだけとか、持ち駒が一枚違うだけとかで、勝ちと負けが分かれる局面なんて珍しくもない。
その例でいうと、人間による知識の蓄積をデータベースとして登録しておくってことになるだろうが、
気が遠くなるような探索空間において、そんなことを行っても焼け石に水で無意味だろう。
0259デフォルトの名無しさん
NGNG↓
多少局面が異なれば、その手順では勝ちの局面だってある。
0260デフォルトの名無しさん
NGNGとりあえずオセロ調べて次は5x5将棋にしとけ。
0261デフォルトの名無しさん
NGNG誰も作っちゃいないんだから無理にきまってる。
ここは口だけスレですから。
0262デフォルトの名無しさん
NGNG何も考えずに発言できるから。
0263デフォルトの名無しさん
NGNG0264デフォルトの名無しさん
NGNG#include <stdio.h>
int e=5,t,m,r,b[2],a[]={7,56,73,84,146,273,292,448};w(int b){for(r=t=0;t<8;
t++)r+=(b&a[t])==a[t];return r;}s(int l,int p){int i=1,c=0,n=-1;for(;i<512;
i*=2)if(!(i&(*b|b[1]))){c=1;if((w(b[p]|i)?r:(b[p]|=i,r=-s(1,!p),b[p]^=i,r))
>n){m=l?m:i;n=r;}}return c*n;}main(){while(!r){s(0,1);b[1]|=m;for(t=0;t<9;t
++)putchar(*b&1<<t?'X':b[1]&1<<t?'O':'-'),t%3&2?puts(""):0;if(!(r=w(b[1])?4
:--e?0:9)){scanf("%d",&t);*b|=1<<t;}}puts("win\0lose\0draw"+r);return 0;}
七行スレのを少し変えたも
0265デフォルトの名無しさん
NGNG終了
0266デフォルトの名無しさん
NGNGまあ、それを証明しないと事実はわからない。
>詰め碁だったか、数学的には解くことができない
>(=全探索しか方法がない)という証明があって、
そんなのはなかったと思うけど。
ヨセは数学的にやる方法が確立してるみたいだけど。
無条件生きのアルゴリズムなんかもあるみたいだしね。
一番簡単なのは2眼のチェックだけどさ。
将棋でも、それが必勝なのかどうかを探索しなくても
必勝であると言える局面が存在する。
それは次の手で王を取ることができる局面。
この局面に持っていけば、必勝である。
次に、相手がどんな手をとってもこの局面に移行するのであれば
それも必勝局面である。
まあ、探索を反対からたどっているわけだけどさ。
あとは、確率的に必勝戦略を発見するアルゴリズムがあると仮定すると
必勝戦略と思われるものがあったとき、それを必勝かどうか
判定するアルゴリズムがあれば、必勝か必負けかを判定できる。
もちろん、引き分けは無理だけど
ループを禁止すれば引き分けは起こらない。
従って、先手必勝か後手必勝になる。
よって、全探索をしなくても必勝戦略は見つかる。
0267デフォルトの名無しさん
NGNG将棋で先が読める=PCオンチ
バリバリのプログラマーが、アマチュアの有段者である例は少ないと思う。
仮にそういう人がいても、優秀なアルゴリズムを発案できるかどうか。
0268デフォルトの名無しさん
NGNG0269デフォルトの名無しさん
NGNGまあ必勝戦略を発見するアルゴリズムの存在を仮定しちゃったんだから
必勝戦略が見つからないと困るわな
0270デフォルトの名無しさん
NGNGいや、初手から現在までの局面というが、状態数の数だけ同じ局面にならず
に手が進行する可能性がないとはいえないでしょ?ってこと。
深さ優先で読むとしても、深さの最大値が状態数でしか制限できないから。
がんばれば数学的に証明できるのかもしれないけど。
まあ、どうでもいい話。
0271デフォルトの名無しさん
NGNG0272デフォルトの名無しさん
NGNG8bitで、256通りあらわせるよ。
0273デフォルトの名無しさん
NGNG0274デフォルトの名無しさん
NGNG0275デフォルトの名無しさん
NGNG0276デフォルトの名無しさん
NGNG0277デフォルトの名無しさん
NGNG0278デフォルトの名無しさん
NGNG先手が避けようとする
0279デフォルトの名無しさん
NGNG0280デフォルトの名無しさん
NGNG何手詰めですか?
0281デフォルトの名無しさん
NGNG0282デフォルトの名無しさん
NGNG>>228
8bitで、256通りあらわせるよ。
そういえば、そうだったな。
この事実に誰も気づかなかった・・・
>まあ必勝戦略を発見するアルゴリズムの存在を仮定しちゃったんだから
確率的な発見でしょ。
要するにヒューリスティックな評価関数に従って
探索をしてみると、どうも必勝戦略っぽい
という事。
0283デフォルトの名無しさん
NGNG272==282なのか?
新手の釣りなのか?
まぁ取り敢えず>>222読め
0284デフォルトの名無しさん
NGNG0285デフォルトの名無しさん
NGNG0286デフォルトの名無しさん
NGNG素粒子の数がとか言ってるけど、
関数にしてしまえばいいだけでしょ。
平たく言えば、圧縮して保存。
(局面、{-1,0,1})
というデータがあったとき
(局面、1)となっている
局面に関して特長を抽出して保存するでしょ?
あとは動的プログラミングすればいいだけ。
0287デフォルトの名無しさん
NGNG持将棋または千日手
>>286
プログラム実行中に、out of memory
0288デフォルトの名無しさん
NGNG千日手は引き分けって言うのか??
0289デフォルトの名無しさん
NGNGきみはルールも知らないでここに参加しているのか
0290デフォルトの名無しさん
NGNG何でメモリが関係あるんだ?
必要なメモリスペースはスイープする時と
関数近似のみだけど。
0291デフォルトの名無しさん
NGNG先手と後手が入れ替わるんだろ?
0292デフォルトの名無しさん
NGNGプロの公式戦では、持将棋、千日手両方とも指し直しだろが。アフォ。
0293デフォルトの名無しさん
NGNG指し直しなんだろ?
将棋の勝敗で2勝3敗1引き分けってあり得るの??
0294デフォルトの名無しさん
NGNGお子様はここでも読んで勉強しなさい。
http://www.shogidojo.com/dojo/faq/draw.htm
0295デフォルトの名無しさん
NGNGおまえこの前の竜王戦も知らないのか。馬鹿すぎ。
0296デフォルトの名無しさん
NGNGこの前の竜王戦って15期でしょ?
ネットで調べたら4-3で羽生って書いてたよ!
まぁ、千日手は2回(だっけ?)あったらしいけど…。
0297デフォルトの名無しさん
NGNG0298デフォルトの名無しさん
NGNGこれに異論がある香具師はいるかい。
0299デフォルトの名無しさん
NGNG千日手は直感的に引き分けと言うのも納得出来ますが
持将棋は何で引き分けなんでしょうか?
互いに入玉しても、詰むまで続ければ良いと思うのですが
何か合理的な理由でもあるのでしょうか?
このルールが決まった詳細キボンヌ
0300デフォルトの名無しさん
NGNGと金とかで、だらだら長くなるからだろ。
0301デフォルトの名無しさん
NGNG7番勝負で最初に2連続持将棋なら3勝でタイトルゲット?
0302デフォルトの名無しさん
NGNG0303デフォルトの名無しさん
NGNG0304デフォルトの名無しさん
NGNG0305デフォルトの名無しさん
NGNG君の直感は正しい。
持将棋も残った持ち駒の種類によって勝敗は決まる。
龍と馬を4枚持っているならば特定の手順を繰り返し、敵のと金を作る
空間を減らして最終的に制圧することが出来る。
将棋のルールは変わるよ。
0306デフォルトの名無しさん
NGNGあああああああああああああほ。
大駒4枚持っているってことは、それだけで20点だぞ。
0307デフォルトの名無しさん
NGNG0308デフォルトの名無しさん
NGNG引き分けの可能性もあるというてるやろ。
0309デフォルトの名無しさん
NGNG0310デフォルトの名無しさん
NGNGhttp://www.shogi.or.jp/kisenhyo/ryuuou.html
をご覧下さい。
持将棋の際には、勝敗に4(1持)3と表記されていますが、
千日手が起きた場合にはそのような表記はございません。
つまりこれは、千日手は引き分け扱いされていないことを意味します。
要するに、
持将棋→次の対局へ(指し直しではない)
千日手→先手と後手を入れ替えて指し直し。
ということです。
0312デフォルトの名無しさん
NGNGム板に来る資格がないと思うよ。
確立的っていうのは、高卒には無理ぽ
0313デフォルトの名無しさん
NGNG8bitで256通り表せても、8bitで256個の状態を表せるわけじゃないでしょ?
0314デフォルトの名無しさん
NGNG意味不明。
言葉遊びはやめよう。
0315デフォルトの名無しさん
NGNG>>272が>>228に対してのレスだってこと踏まえれば意味はわかると思うが。
だからさ、8bitで256通り表すことはできる。
でもさ、8bitで256個の局面について勝ちか負けかってことを記憶できる
わけではないってこと。引き分けないとしても、2^256の場合があるわけ
だから256bit必要だよね。
0316311
NGNGさすがにそれはわかりますヨ!
あと2ch用語だったら自分の方が恥ずかしいけど「確率」だと思います。
>>313 >>315
おお!一つ解決。bit の意味を誤解していただけか…
真面目に考えて損しました。ありがとさん。
ということは >>266=282 は…
0317デフォルトの名無しさん
NGNG勝ち局面だけ記憶すると、かなり減りそうだね。
0318デフォルトの名無しさん
NGNGなるほどね、そういう意味で書いたのなら了解。ただ定義が微妙だが・・・
たとえば進行する各局面(フェーズ)を勝ち負けの1ビットで表現するなら、
負け以降を表記する必要があるのか?無ければ積み上げ(カウント)で
いいことにならないか? その場合、256順目までを8ビットでカウントできる。
意味があるかは別として。
0319デフォルトの名無しさん
NGNG局面の勝ち負けではなくて、その局面のバウンドとどの手まで読んだか
を記憶しておく必要があると思うのだけど。
0320デフォルトの名無しさん
NGNG>意味があるかは別として。
俺も一瞬そう思ったけど、
それは情報圧縮をした時、そういう意味に近づいていく。
>バウンドとどの手まで読んだか
バウンドって何?
どこの用語?
0321デフォルトの名無しさん
NGNGαとβの値のことだけど。
0322320
NGNGあんがと。
でも、なぜにバウンドなんだろ。
0323デフォルトの名無しさん
NGNG0324デフォルトの名無しさん
NGNG0325デフォルトの名無しさん
NGNGこれが標準なのかなと思ってた。
0326デフォルトの名無しさん
NGNG数学の世界ではよく使うよ。
0327デフォルトの名無しさん
NGNG「最強である」ことを証明するにはどうすれば良いのか?
0328デフォルトの名無しさん
NGNG全ての対局に勝てば良い。
とりあえずは現行のソフトと対戦して全勝し、
プロと対戦して全勝することでしょうね。
0329デフォルトの名無しさん
NGNG馬鹿は氏になさい。
0330デフォルトの名無しさん
NGNG読み終えたらここで報告しなさい。
http://www.shogi.or.jp/osirase/qa.html
質問
連続王手の千日手というのは反則なのですか?
お答え
連続王手で同一局面が三回生じた場合は、王手をかけているほうが、手を変えなくてはなりません。
王手をかけつづけて、同一局面が四回生じた場合は、王手をかけ続けたほうの負けとなります。
全部の手が王手でない場合は、
通常の千日手と同様に引き分け
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
となります。
0331デフォルトの名無しさん
NGNG0332デフォルトの名無しさん
NGNGhttp://www.zdnet.co.jp/news/0302/08/nebt_16.html
0333デフォルトの名無しさん
NGNG「プロ棋戦では、千日手は引き分け指し直し、持将棋は一局と見なす。」
となっていますが、これはあくまでプロの都合による一種のローカルルールです。
記録の上だけ見れば、実際には千日手と持将棋は殆ど扱いは代わりません。
先後を入れ替えて指し直すだけです。
ただし、タイトル戦等で旅館・ホテルで行われている場合は深夜に即日指し直しは
難しいため、「仕方なく」持将棋を一局と見なす訳です。
つまり千日手だと序盤の数十手で引き分け、となる場合もあるのに対し、
持将棋は200手を超える事もざらで、これだけ指せば棋戦の主要スポンサーである
新聞社が棋譜を紙面に掲載するに足る、と考えられるからです。
ちなみにアマの大会の場合は千日手は指し直すが2連続千日手は抽選(つまりクジ)、
持将棋は27点法を使って必ず決着を付けるようになっている事が多いと思います。
さらに蛇足ですが持将棋ルールって本当は必要ありませんよね。
将棋の盤面は有限なのでお互いの玉が詰まないまま指し続ければ必ずいつか
千日手ルールに引っかかりますw
要は人間の体力や時間を無駄にしないための便宜ルールで、
遠い未来ののコンピュータ将棋選手権においては持将棋ルールはきっと不要でしょう。
0334デフォルトの名無しさん
NGNGつまり「抽籤」だろ?
0335デフォルトの名無しさん
NGNG簡単だろ。
0336デフォルトの名無しさん
NGNG非常にうまく枝かってpow(10、100)か。
けっこう大変ぽい。
0337デフォルトの名無しさん
NGNG持将棋より良さそうだけど、どうだろう…
0338デフォルトの名無しさん
NGNG0339デフォルトの名無しさん
NGNG0340デフォルトの名無しさん
NGNGそれは相当頭悪いからだろ。
共謀数の意味をちゃんと理解しているのか。
0341デフォルトの名無しさん
NGNG実際に使ってる人っているのかね?
初期値が正確ならばかなり有効っぽいけど、
再探索しまくるので、手の生成に時間がかかるプログラムだと
逆効果の気がしないでもない。
http://www.cs.vu.nl/~aske/mtdf.html
0342デフォルトの名無しさん
NGNGなかなかいいページだと思うので、今度じっくり読んでみます。
>>341
グッジョブ
0343デフォルトの名無しさん
NGNG良い資料とかページUPするかい
【共謀数】
・「コンピュータ将棋の進歩2」
【MTD(f)】
・http://www.cs.vu.nl/~aske/mtdf.html
0344デフォルトの名無しさん
NGNG共謀数は基本的に詰め将棋用に使われてる。
証明数と反証数とかいう名前で使われてるけど。
http://www.ipsj.or.jp/members/SIGNotes/Jpn/16/2000/075/article002.html
会員にならないと読めないのがけち臭い情報処理学会。図書館で探してくれ。
MTD(f)は、NULLウィンドウサーチをかけて、最終的に返ってくる評価値が、
そのウィンドウ値より上か下かを判断するっていう手法だね。
基本的に将棋プログラムで使われた例はないはず。
0345デフォルトの名無しさん
NGNG上か下かで絞り込んで、どんどん正解の評価値を絞り込んでいく。
で、ぴったりとあたっていたNULLウィンドウサーチ(幅1の窓での探索)をかけた
ときの最善手が、最善手だという手法。多分。
0346デフォルトの名無しさん
NGNGこのページはMTDを説明する予定みたい(日本語)
0347デフォルトの名無しさん
NGNG通常の探索では使えないもんかね?
0348デフォルトの名無しさん
NGNG最良優先探索と反復深化の良いところを組み合わせた探索とある
ってことで、
最良優先探索と
反復深化が分かってれば実装できそうな気がするなー。
反復深化
http://tt.sakura.ne.jp/~suzu/search_problem/i_deepening.html
最良優先探索
http://kyu.pobox.ne.jp/softcomputing/ai/ai3.html
ってとこかな。
最良優先探索はメモリ使いまくりそうだねー
0349デフォルトの名無しさん
NGNG速くなると思います。
前回探索した局面の最善手を覚えておかないと
反復深化のメリットの半分が失われてしまいそうですからね。
0350デフォルトの名無しさん
NGNG結局のところハッシュテーブルの登録&検索方法が肝になってきそうっすね。
0351デフォルトの名無しさん
NGNGということを示した数字で、簡単なイメージでは1手だけ突出した手が存在する
場合に、それをどんどん深く読んでいく、という感じになると思う。
もっと簡単に言うと「変化の少ない手を深く読む」といえるのかな?
それが詰将棋探索の場合には「王が逃げる手の数」を評価値に使っているので、
結果的にAND/OR木の「証明数」という概念と同じになっているんじゃないかな。
実際は合駒処理などで逃げる手の数を誤魔化して処理しているのでまったく等価
とは思えないけど。
0352デフォルトの名無しさん
NGNG詰め将棋は「詰む」「詰まない」「詰むか詰まないかわからない」の3種類しか
状態が考えられないから共謀数的な発想でも上手くいくけど。評価値は離散的だし。
共謀数で、ABC searchっていう共謀深さっていう概念使った手法あったと思うけど
この論文真面目に読んで理解した人っている?
今ひとつ、よさがわからなかった。
0353デフォルトの名無しさん
NGNGこれって評価値に直すと
0,1,2,3, ... +∞
「詰む」=0,「詰むか詰まないかわからない」,1〜,「詰まない」+∞
になるわけで「詰む」「分からない」の間が0,1,2で表されるに対して
「分からない」「詰まない」の間はいきなり+∞になるのでいびつな気もするね。
んーそれを補正するために「王手の数」を利用したPDSが有効なのかも。
0354デフォルトの名無しさん
NGNGいびつになるとかいう事にはならないわけで。
「詰む」=+∞ ,「詰むか詰まないかわからない」0,「詰まない」-∞
と考えてる事になる。
0355デフォルトの名無しさん
NGNGおまえら、ここでうだうだ言う暇あったら、コンピュータ将棋の進歩の全巻ちゃんと嫁よ。
そして正確に理解すれ。
でないとレベルが低すぎて話にならん。
0356デフォルトの名無しさん
NGNG解説してくれー
情報処理学会に入れば、オンラインで論文読めるんだっけ?
電気電子情報学会じゃだめなんだっけ?
0357デフォルトの名無しさん
NGNG私も解説してほしっす
どうやったらあの何百手もある詰め将棋が解けるのが
分からんです。
0358デフォルトの名無しさん
NGNGhttp://sagisou.sakura.ne.jp/~deai2/cgi/rank.cgi?fdeai
0359デフォルトの名無しさん
NGNGこの電話番号にかけるとどこへつながるのやら
0360デフォルトの名無しさん
NGNG60戦40敗とかでて「勝率上がった」ってよく聞くんですけど、
同じ局面の場合同じ手打ちそうな気がするんですけど、
どうやってランダム的に打たせるんですかね?
0361デフォルトの名無しさん
NGNG人間の対戦の棋譜ひっぱってきて、15手くらいから対戦開始とか。
評価値に乱数いれてもあんまり打つ手変わらないし。
0362デフォルトの名無しさん
NGNG0363デフォルトの名無しさん
NGNGごめんなさい。定石とかいったらやっぱダメですか。
0364デフォルトの名無しさん
NGNG0365Y3 ◆ncKvmqq0Bs
NGNG解説でける家具師はいるのかよ。
えらそうなこと書いてきた君はどうなんだね。
おれか、おれはもちろんそんなの簡単さ。
0366デフォルトの名無しさん
NGNG詰め将棋で共謀数を使ったときは、「この局面を詰みだと証明するにはあと、最低でも何局面を詰みだと証明しなければいけない」っていう数(証明数)になるのね。
攻めて手番の局面のときは、可能な手の中で一番証明数が小さい局面を証明すればいいんだから、子ノードの一番少ない証明数が証明数になる(日本語ムズイ)
玉方の手番の局面のときは、可能な手すべてを詰みだと証明しなければいけないから、子ノードの証明数の和になる。
で、結局何してるかっていうと、詰むと証明できそうなところから順に読んでいってる。深さ優先で最良優先探索ができるようになるのね。
だから長手数の詰め将棋もとける。
#図を使わないで説明するのは無謀だと思った。
0367デフォルトの名無しさん
NGNG攻め方の手番において、どれを先に読んでいくかを考えたいとする。
このとき、証明数が一番小さいものから読んでいく。
子ノードの探索を続けると証明数が増えることがある。
で、増えた結果親ノードの兄弟ノードの方が証明数が小さくなることがある。
こういう場合は、そこまで戻るわけ。
で、このときに重要なのは深さ優先で探索を続けているときに、「今探索しているノードの証明数が
何以上になったら親のノードの証明数が兄弟ノードより大きくなるか」っていうのがわかってるのね。
だから、その数を超えるまで深さ優先っぽく探索を続けていけるというわけ。
で、「詰まないと証明するために、詰まないと示さなければいけない局面の数」っていうのが反証数って
いうんだけど、これは玉方の手番のときにどれを先に読むかを決定するのに同じように使う。
何か誤解してるところあったらフォローよろ。
0368Y3 ◆ncKvmqq0Bs
NGNGは書籍・論文の要約の域を出ておらんな。
もちっと庶民でも理解できるように、要点を的確に述べることができる家具師はおらんのかな。
一般市民町民は>>366-367の説明で理解でけたか?
0369デフォルトの名無しさん
NGNG強いて要約すれば、
この場合共謀数っていうのは、「ある局面を詰みだと証明するために、詰みだと証明しなければいけない局面の数」になる。
で、攻めるときにどの手から読むのかを決めたいってときに共謀数が少ない手から読んでいく。
で、どれくらい頑張って諦めるかっていうのも、探索した結果、上の方の共謀数がどれくらいになったかで判断。
説明になってないな(笑)。
0370デフォルトの名無しさん
NGNGめちゃくちゃわかりやすかったよ。
まあ、将棋に関してはあまりよく知らないから
証明数とか反証数とか知らなかったけど、
読んだらわかったよ。
かなり感謝。
要するに、詰みを証明するには
証明しなきゃいけない手筋が減っていかなきゃならない。
なのに、収束せずに発散に向かっていくならば
それは証明できない。
従って、他の手筋を考えなくてはいけない。
って事だね。
もっと直感的に書けば
勝っている将棋で難しい局面に自分から持っていかないという事
でいいかな?
将棋は素人なのでよくわからんけど。
0371デフォルトの名無しさん
NGNGもし、探索して詰める手順が見つからなかったとき
どうするんですか?
評価関数に基づく探索?
そもそも、どういう局面で詰めの探索を行うのかな?
判定を行うアルゴリズムがあるのかな・・・
現実的なアルゴリズムがあれば教えてください。
妄想のアルゴリズムを紹介してくれる人がいれば
妄想だという事を事前に教えてね。
0372Y3 ◆ncKvmqq0Bs
NGNG残念だが、まったく違っている。
0373Y3 ◆ncKvmqq0Bs
NGNG0374デフォルトの名無しさん
NGNG一番分かりやすかったっす。
私的にはかなり感謝っす
0375デフォルトの名無しさん
NGNGどこが違うのか指摘しないと、説得力ないですよ
0376デフォルトの名無しさん
NGNG0377デフォルトの名無しさん
NGNG評価関数による探索が基本。
でも、王手がかかる場合は詰むか詰まないかで大違いだから。
読んでいる局面において王手がかかれば詰み探索をかける。
でも、実際問題として全部詰みを読みきれないので、簡単に読めなければ諦めることも多々。
0378Y3 ◆ncKvmqq0Bs
NGNGではおいらが説明をすることにしよう。
その1
詰め将棋ってのは、王手をし、その王手を回避しての繰り返しだ。
攻め方は、複数の王手可能な手から有力そうな手を選択して王手する。
玉方は、一番詰められなさそうな回避手を選択する。
ある局面において、詰むことを証明するには、
攻め方は、詰みになる1手を示せばよい。
例えばその局面で、5手の王手可能な手があったとしても、他の4通りの王手が詰みであるか不詰み
であるかを示す必要はない。
そして、玉方の可能手全てにおいて、詰みであることを示さなければならない。
従って、玉方の手生成は、基本的に全検索となり工夫の余地がない。
つまり、詰め将棋を速く効率良く解くためには、攻め方がいかにしてより詰みそうな手から検索するか
に依るということができる。
効率的な、詰みの可能性の高い手を先に生成する関数を作ることができれば、共謀数による検索よりも
ずっと優れたプログラムとなる。
0379Y3 ◆ncKvmqq0Bs
NGNGしかしながら、詰将棋において、どの王手が詰み易いのかをどのようにして判断するのであろうか。
そう、判断のしようが無いのである。
別の言い方をすれば、どの手で詰むかわからないから、コンピュータで詰手順を探索しているのである。
悪いが、もう寝ないと起きられなくなるので、
この続きは明日って・・もう今日か、・・・の夜に書き込むからね。
もう3時だったのね。やば!
0380デフォルトの名無しさん
NGNG>そして、玉方の可能手全てにおいて、詰みであることを示さなければならない。
>従って、玉方の手生成は、基本的に全検索となり工夫の余地がない。
それでも、詰まないってことが早めにわかる価値はあります。
だから、玉方でも、反証数を使って詰まない可能性が高いところから読んでいきます。
実際に反証数使うことでパフォーマンス向上することは確かめられてます。
>効率的な、詰みの可能性の高い手を先に生成する関数を作ることができれば、共謀数による検索よりも
>ずっと優れたプログラムとなる。
詰みの可能性が高いってだけじゃ十分じゃないかと。
詰む確率は高い。でもたくさん計算しないと詰むと証明できない、ってこともありえる。
共謀数のいいところは、この詰むと証明するのにかかるコストっていうのを評価している点。
0381デフォルトの名無しさん
NGNG将棋ソフトによっては、「詰み易い」っていうヒューリスティックを使って共謀数を使った
探索を効率化することもしてます。「玉頭に利きがあって金を打つのはいい手だとか」。
結局ヒューリスティックに頼ることになるのですが、それなりに効果はあるようです。
0382デフォルトの名無しさん
NGNG判断のしようがないと言う事はありませんよ。
例えば「玉方の選択肢が少ない王手は詰みやすい」なんてのがあります。
言い換えると、玉を狭い方に追いつめる変化は詰む可能性が高く、
玉が大海に逃げ出す場合は詰ましにくい。
人間が詰め将棋を解くときの方法と近い手法ですね。「この王手は
玉の逃げ方がたくさんあるから読むのは後回しにしよう」というヤツです。
もちろん、これの裏をかいた詰め将棋もある訳ですが。
0383デフォルトの名無しさん
NGNGhttp://game.2ch.net/test/read.cgi/bgame/1044848739/
0384デフォルトの名無しさん
NGNG>だから、玉方でも、反証数を使って詰まない可能性が高いところから読んでいきます。
>実際に反証数使うことでパフォーマンス向上することは確かめられてます。
たしか、ちょっと前に『df-pnアルゴリズム』の解説で見た気がするなぁ。
有名な『脊尾詰』より高速に殆どの問題を解いたとか書いてあった。
今は、みんな反証数を使ってるのかな?
玉の8近傍における相手の利きを調べる事で、「詰みの難易度」は
多少解ると思われ。
0385デフォルトの名無しさん
NGNGまだ君らできてないみたいだから見せてあげるのはやめとこう
0386デフォルトの名無しさん
NGNG先手と後手で戦わせてまだ決着ついてないから見せられない
今のところ先手が優勢っぽいけど何ともいえない
0387デフォルトの名無しさん
NGNG結局どこが違うのかわからないままだなw
>そう、判断のしようが無いのである。
あるけど、わからないだけだね。
探索をする理由は、
関数が100%の精度で答えを出さないからでしょ。
詰むなら1、詰まないなら0を返す、評価関数があれば
その通りに打てば詰む。
つーか、偉そうにその1その2とか言って書いてるけどさ、
その程度の事はみんな知ってるんでない?
あるいは、ちょっと考えれば素人でもわかりそうだけど。
というか、逃げた??
0388デフォルトの名無しさん
NGNG0389デフォルトの名無しさん
NGNG見せなくて良いから(見せられてもどうせわからんしw)、
さっさとソフトを開発してるところに持ってくなり、
自分で発表するなりしてくれ。買うから。
0390デフォルトの名無しさん
NGNGつられんなよ。
そういう俺も最強将棋プログラム、もうつくったわけだが。
0391デフォルトの名無しさん
NGNG(2ちゃんで人気のばんかなを読み上げに使ったところから)
つまり2ちゃん出身の最強将棋プログラムはもうできている。
よって1は北朝鮮を激指の作者にあげること。
0392デフォルトの名無しさん
NGNGネット人口の9割以上が2ちゃんねらーと思われ。
0393デフォルトの名無しさん
NGNG0394デフォルトの名無しさん
NGNG0395デフォルトの名無しさん
NGNG人間にも勝てないと最強ではないだろ
0396デフォルトの名無しさん
NGNG379 名前:Y3 ◆ncKvmqq0Bs 投稿日:03/02/13 02:58
その2
しかしながら、詰将棋において、どの王手が詰み易いのかをどのようにして判断するのであろうか。
そう、判断のしようが無いのである。
別の言い方をすれば、どの手で詰むかわからないから、コンピュータで詰手順を探索しているのである。
悪いが、もう寝ないと起きられなくなるので、
この続きは明日って・・もう今日か、・・・の夜に書き込むからね。
もう3時だったのね。やば!
0397デフォルトの名無しさん
NGNGって事で、厨房が来ちゃったのか。
0398デフォルトの名無しさん
NGNGよほど頭にきたみたいだね
まー、ちょっと落ちつきな
0399デフォルトの名無しさん
NGNG0400デフォルトの名無しさん
NGNG避けようとすると、先手が負けるから、千日手になるんじゃねーの?最後まで読んでるんだろ?
0401272
NGNGわたしは、282ではありません。
で、
>>228は、
>どんなに多く見積もっても、素粒子一個につき一つが限界だろう。
といってるけど、ここが間違ってるんだね。つまり、わかってないってこと。そのくせして222にありがととかいってる。222は、わかってるね。
0402272
NGNGでもだね、bitが増えてきたら1bitで、一つの局面をあらわせるようになるよ。
たとえば、はじめから8bitまでが、駒の種類をあらわし、次の8bitがその駒の場所を表し、つぎの8bitが別の駒の種類をあらわし、さらにその次の8bitが、その駒の場所を表しってね。
1000bitもあれば全部の局面あらわせるんじゃないの?つまり、宇宙の素粒子のかずも要らないってこと。
0403デフォルトの名無しさん
NGNG素粒子どうこうは全ての将棋の局面を同時に
保存できるかという話。
しかし、そもそもそんな必要はないのだが。
0404272
NGNGすまん、これは、1つの局面を表すときの話で、この局面の数自体が、爆発するんだから、315は、あってるね。
228もわかってたね。ちゃんと、結果ってところを強調してるから、わかってるって事がわかった。わかってないのは俺だった。すまん。
0405272
NGNGなんで、そんな必要はないんですか?すべての場合を探索しないと、絶対負けない最強なプログラムって作れないじゃないですか。
まあ、必勝の法則を見つけてしまえば、確かにその必要はないですが。でも、それはなさそうですよ。
ありえないような局面を省いたってこと?それでも、相当な数になると思うけど。
0406デフォルトの名無しさん
NGNGなるべく速く終局に向かうように読みを進めれば
何億手とかそれ以上読み進める必要はないんじゃないかということ。
最悪の場合には局面の数だけ手が続く可能性があるかも知れないけど。
0407272
NGNGすでに、チェスの、スーパーコンピュータ(Deep juniorとか)は、1秒間に、数億手読んでますけど、それでもそれ以外の局面が出てきます。
将棋も同じです。なるべく速く終局に向かうように読み進めても、その通りに進むように期待できるためには相当な数読まなくてはだめです。数億とかそういう次元じゃなく、10^30とかね。
0408デフォルトの名無しさん
NGNG何手読んだかではなく直線的に何手続くかということ。
これ以上は答えません。
自分で書くなり調べるなりここのログを読むなりしてください。
0409デフォルトの名無しさん
NGNGかわいそうだと思ったので漏れからもキーワードだけ。
「深さ優先探索」
0410デフォルトの名無しさん
NGNGまず、「勝ちか負けか判定する」だけなら深さ優先でいい。
この場合必要な記憶量は、最大深さのオーダー。
でも、この最大深さが素粒子の数を超えないって保障はない。
次に、「最強のプログラムを作る」ためには、最善の手を覚えないといけない。
これに関しては>>272の言ってる話になる。
0411デフォルトの名無しさん
NGNGあ、わかった。「最強のプログラム」ってのは、
何か適当な局面が与えられた時に必ず最善手を指せるようなプログラムってことね?
そういうプログラムを「超巨大なデータベース」として実現するには確かに将棋のすべて(のオーダー)の局面を保存する必要があるね。
ただ、その超巨大なデータベースが作れる、ってことは、
実用的な時間の間で初手から読み切りができる、ってことだよね。
ということはどのような与えられた局面からでも実用的な時間の間で最後まで読み切れるってことで、
データベースをわざわざ作る必要はないってことにならない?
まあどちらにせよ夢物語的な計算空間or計算時間なのであまり実のある議論にはならんが…
0412デフォルトの名無しさん
NGNG0413デフォルトの名無しさん
NGNG0414デフォルトの名無しさん
NGNG盤面の大きさ。
0415デフォルトの名無しさん
NGNG囲碁やオセロは「収束型」であり手が進むほど選択肢が限られてきます
また基本的にはオセロは最大60手、囲碁は最大400手(たぶんもっと少ない)
で終局するので深さ優先検索にしても長さの保証ができています
対して将棋はそうでなく(駒の数も減らないし盤面も狭くならない)
手を戻すことでループのような状態に陥ることもあり
また何手で終局するかの予測が全くつかないわけで
結果として幅優先検索と比べてスペース的な節約できるという保証がありません
そういう意味で「状態数」的オーダーみたいな考え方をしなければならない
(かもしれない)という話だと思います
まあ既に過去ログで話題にのぼっていますけどね
そして>>411の言うように実はない話だけどね
0416デフォルトの名無しさん
NGNG囲碁は400手なんかじゃ終わらないよ。
石を全部取られて、その跡地にまた石を打って、今度は反対側が全部取られて
とかやれば1万手とかは軽く超える。
0417デフォルトの名無しさん
NGNG素粒子の数の半分の量であっても、探索なんてできないよ。
探索には限界がある事はあきらかなんで、
そんな事をいちいち主張するな。
で、最強かどうかを示す方法は探索だけじゃない。
N以下の素数の個数を示すのに、Nまでの数字を全部チェックする
バカはいないだろ。
(ルートNまでという意味ではない)
>そういうプログラムを「超巨大なデータベース」として実現するには確かに将棋のすべて(のオーダー)の局面を保存する必要があるね。
これもあやまり。
関数化すればいい。
関数化の意味がわからない奴は、大学で勉強してくれ。
0418デフォルトの名無しさん
NGNGまともに打てば収束すると思うが。取られない形になれば取られないし。
0419デフォルトの名無しさん
NGNGバカなのでさっぱりわかりまつぇん。
N以下の素数の個数はエラトステネスのふるいで求めるくらいしか思いつかないし、
その例がどう「最強かどうかを示す方法は探索だけじゃない」に結びつくのかがわかりまへん。
具体的には何を示して最強かどうかを判断しようと?
関数化もわからんなぁ。λ計算の話だよね?
ゲーム木そのものを関数化するのは探索となんら変わらんし。
411の人は「データベースとして実現するには局面全部を保存する必要あり。
ただし、探索するのならその必要なし」
って言ってるんじゃないの?
0420デフォルトの名無しさん
NGNG完全探索をしようとしてるときに「まともに打てば」はないんじゃないかなぁ。
勝ち負けの完全探索の時にはゲーム木はAND-OR-Treeになるけど、そのANDノードでまともに打たないのも含めて探索しなくちゃいけないわけで。
ところで、素朴な質問だけど、碁石がなくなっちゃったら対局ではどうしてるの?
0421デフォルトの名無しさん
NGNG>>そういうプログラムを「超巨大なデータベース」として実現するには確かに将棋のすべて(のオーダー)の局面を保存する必要があるね。
>これもあやまり。
データベース化するなら、あやまりでないんでない?
そりゃ、例えば回転して一緒になるものとかそういったものを同一とみなすようなハッシュ関数
考えるっていうのはありだろうけど。
そういった事をいろいろしていったとしてもオーダーは変わらないと思う。
必勝手打てるプログラム書くためにはデータベース化は必須ではないのは確かだろうけど。
いずれいしろ現実的な話でないというのは同意。
0422デフォルトの名無しさん
NGNGそれは君の知識不足
>具体的には何を示して最強かどうかを判断しようと?
ある局面において、相手がどんな戦略をとっても
勝てるかどうかがわかれば、最強
>関数化もわからんなぁ。λ計算の話だよね?
違う
>データベース化するなら、あやまりでないんでない?
1,2,4,8,16....
という数列をデータベースにして記憶する意味はありますか?
という事。
y=2^x
という関数で書けばいい。
未知の関数はどう書けばいいか
という研究分野があるんで、もっと知りたい人は自分でどうぞ。
0423419
NGNGあーなるほど、そういう関数化なら納得。
もっとも、具体的に将棋の盤面を関数化するにはやはり実用的な定数で押さえられた関数の複雑さでは表現できないような気もするが。
完全な判定器を作る話につながっているとすると、難しそうだなぁ。
あと、「ある局面において、相手がどんな戦略をとっても勝てるかどうかがわかる」ためには、その局面から探索してるんじゃないの?
途中まで作った「完全勝ち負け判定器」を使うかどうかはどうでも良くて、
概念的には探索してるんだよね?
素数が知識不足なのはすまんかった。
0424デフォルトの名無しさん
NGNG荒削りでいいんじゃないかな?
荒削りな物と、探索を組み合わせればいい。
>探索してるんじゃないの?
それは、Nまでの値を素数かどうか判定しているのでは?
といってるのと同じ。
素数に関しては、違う。
将棋に関しては、有効なアルゴリズムが今のところ
見つかっていない。
0425デフォルトの名無しさん
NGNG>バカはいないだろ。
>(ルートNまでという意味ではない)
自然数Nが素数であるかチェックするのに
Nまでの自然数を全部チェックする香具師はバカであるが
N以下の素数の個数を示すのに、√N未満の素数を使って
N以下の自然数を全部チェックするのは基本でありバカではない
つーか、素数列挙の話はこっちで
http://pc2.2ch.net/test/read.cgi/tech/1018657457/
0426デフォルトの名無しさん
NGNGバカではないけど、N以下の自然数の個数を調べるだけなら
もっといいアルゴリズムがあるんで。
http://www.mcc.pref.miyagi.jp/people/ikuro/koramu/prime.htm
まあ、まだ証明がまだないから
絶対にそうだとはいえないけどね。
まあ、違うというなら反例をあげてください、って事で。
ただ、書いてて思ったのは
なぜ準最適解を求める話をしないで
最適解を求める話をしてるんだろう?
準最適解を求めてから、最適解を求める話をしてみては?
0427421
NGNGいや、いいたいことはわかる。
しかし、それをデータベースというかという話。
0428421
NGNGそういった関数を作るっていうのは、データベースを作るんじゃなくて、一種のアルゴリズムを
見つける問題と同値な話でしょ、っていうか、そんな感じ
0429デフォルトの名無しさん
NGNGなぜ?
ここを説明してくれないと、俺にはよくわからないかも。
>一種のアルゴリズムを ,見つける問題と同値な話でし
将棋を数式で表し、
可能な限りのあらゆる式変形を行い
もっとも計算量の少ない物を利用する
というのが理想だね。
0430デフォルトの名無しさん
NGNG0431デフォルトの名無しさん
NGNGで、その関数が正しいかどうかはどうやって判断するんでしょうか?
0432デフォルトの名無しさん
NGNG間違いだろ
将棋を「打つ」みたいなもんだ
0433いま一から読み出したんで亀レスでスマソ
NGNG現時点での「定跡」をはずすと不利になる、という前提自体が間違ってるぞ。
先手優勢とされてた局面に新手が出て後手優勢に評価が変わる、なんてことはしょっちゅう起こっている。
この「創造性」の部分があるからこそプロは尊敬されるわけで。
0434位置から読んでるので亀レススマソ
NGNG持将棋、というのもありまつが・・・
0435デフォルトの名無しさん
NGNG0436デフォルトの名無しさん
NGNG関数が正しい事を、証明する必要はあるんでしょうか?
証明できない物は使えないという考えは間違いでは?
>現時点での「定跡」をはずすと不利になる、という前提自体が間違ってるぞ。
定跡をはずすと不利になる確率が高いと思うのですが。
そう思わないのであれば、定跡を使うメリットはないと思うのですが。
0437デフォルトの名無しさん
NGNG最後の一手まで定跡通り指せば良いってものではないのですから。
だからまずその定跡が正しいという証明を(ry
まじれすすると、最近の市販将棋ソフトが定跡沢山詰め込んでいるのは、
営業的な意味が大きいかと。
あ、もちろん「矢倉囲いの組み方」みたいなレベルの定跡はまた別ね。
0438デフォルトの名無しさん
NGNG不利にならないなら、これからは定石を使うのをやめるのがいいと思う。
>最後の一手まで定跡通り指せば良いってものではないのですから。
どこにもそんな事は書いてないけどな。
>まじれすすると、最近の市販将棋ソフトが定跡沢山詰め込んでいるのは、
>営業的な意味が大きいかと。
過去ログを読んでみて。
あなたが定石を勉強する事で勝率が上がると思えるなら
定石には意味があります。
あながた定石を勉強しても勝率が上がると思えないなら
定石には意味がありません。(認めます)
ただ、将棋の世界では定石の本が売られていることから
定石には意味があると一般的には認知されています。
定石が正しいと思われるのは、統計的にですね。
0439デフォルトの名無しさん
NGNG定跡を知らない人はもっと弱い
0440デフォルトの名無しさん
NGNG0441デフォルトの名無しさん
NGNGこのレベルだと選手権だとどれくらいのところまで
行けそうですか?
0442デフォルトの名無しさん
NGNG「定石」とかいってると説得力ゼロ。
0443デフォルトの名無しさん
NGNG0444デフォルトの名無しさん
NGNG0445デフォルトの名無しさん
NGNG探索もせずに、しかも項数も指数でないなら証明は必須でしょ。
NP完全の問題に対しても、”使える”プログラムはあっても、
”解ける”とは言わない。
0446デフォルトの名無しさん
NGNG多分、一次予選で4勝3敗で勝ち越しできるぐらい。
一次予選突破できるかどうかは難しい。
0448デフォルトの名無しさん
NGNGこれってどうよ?
http://www.cs.caltech.edu/~mvanier/hacking/gnushogi/gnushogi.html
0449441
NGNGころっと負けたから
ハッシュ関数おかしいところ直したら
勝てたよ。
どう?一次予選ぐらいできそう?
次はレベル6の挑戦です
0450441
NGNG組み込んでないんですけど、
どれくらいの効果ありますかね・
0451446
NGNGレベル5に5割以上勝てるなら、一次予選突破できるレベルと思う。
多分、来年の一次予選突破レベルは、
Athlon 2000+くらいのCPU(Pentium4なら2.6GHzくらい)で、
・「うさぴょん」に一手40秒考えさせても勝てる
・「礒部将棋」の最強レベルに勝てる
くらいで、8割〜9割突破できるレベルでしょう。
0453441
NGNG向こうは穴熊
こっちはすでに入王。
なんだか勝てそうな雰囲気
0454デフォルトの名無しさん
NGNGhttp://dx1.kakiko.com/heart/2ko/2ko657ih/index.html
0457453
NGNG駄目だーつめが甘すぎる。
鬱だ。。。期待させてスマソ
逝ってくる。。
0459デフォルトの名無しさん
NGNG0460デフォルトの名無しさん
NGNG0461デフォルトの名無しさん
NGNG0462デフォルトの名無しさん
NGNG0463デフォルトの名無しさん
NGNG★いらっしゃいませ!!ようこそココへ★
0464デフォルトの名無しさん
NGNG0465デフォルトの名無しさん
NGNG日本なら欲しいけど、北とブタキムなんていらないからな
0466デフォルトの名無しさん
NGNG0467デフォルトの名無しさん
NGNG誰かこの将棋のプログラム作ってくれる方いますか?
私の力じゃ出来ないです・・・
0468デフォルトの名無しさん
NGNGそれは完全解を見つけて欲しい、ということ?
盤面が小さいから解けそうだけど。
解けたら逆に面白くないかもよ。
0469デフォルトの名無しさん
NGNGはい、完全解を知りたいという意味です
リンク先に貼り付けたら感じ悪いかもしれませんけど、
私は知りたいです
0470デフォルトの名無しさん
NGNGルールを考える方は簡単だけど作るのは面倒だわ。ごめん。
0471デフォルトの名無しさん
NGNG0472デフォルトの名無しさん
NGNGプログラムのソースきぼんぬ
0473デフォルトの名無しさん
NGNG300行あるけど書いてもいいの?
0474デフォルトの名無しさん
NGNGここに書くのはまずいですね・・・
テキスト形式でどこかにupしてくれるとうれしいです
0475デフォルトの名無しさん
NGNGアップローダ、ここなんてどうでしょうか?
まあ、どこでもいいんですが・・・
0476デフォルトの名無しさん
NGNGたった今バグ見付けたからなぁ。
0477デフォルトの名無しさん
NGNG0478デフォルトの名無しさん
NGNG上げたやつは少なくともgen_moveが間違えてます。
0479デフォルトの名無しさん
NGNG明日読む、と言う事で今日は寝ます。
0480デフォルトの名無しさん
NGNG勉強になりまふ。
選手権の常連さんと見た。
0481デフォルトの名無しさん
NGNGいえ、今まで将棋のプログラムを書いたことはなかったです。
そのためか終局判定の部分がでたらめだったので、
直したものをアップロードしておきました。
プログラムを動かすとまずコンピュータが先手で読み始めるので、
(ペンティアム3の1GHzで25秒かかります。)
後手の番になったら、2 5 0 のように手を入力してください。
多分まだ間違いはあると思います。
0482デフォルトの名無しさん
NGNG乙でした。
将棋のプログラム初めてで、さくっと作れるのはすごいっす。
結果は21手で解けた、ということでいいのかな。
手順を適当に作ってみました。
▲22銀△12玉▲32玉△13銀▲同銀△同玉▲22銀△12玉▲23歩△13銀
▲21銀成△11歩▲同銀△11玉▲21成銀△12玉▲22歩△同銀▲同成銀△13玉▲23成銀
だと21手で先手の勝ち。
0483467
NGNG見てみましたが、私の力では読むのに大分時間が掛かりそうです・・・
時間かけてじっくり読んでみます。
私の勘違いでなければ
▲2二銀△1二玉▲3ニ玉△2三銀▲3一玉△3ニ歩▲1三歩
となって、打ち歩詰に成ってしまうみたいです。
0484デフォルトの名無しさん
NGNGありがとうございます。自分では見付けられなかったと思います。
check_tumiの最初のif文を削除して
int ew = kiki[ktype][ksq];
for (i = 0; i < 5; i++)
if ((km = km_list[o][i]) && km->sq >= 0 && ((1 << km->sq) & ew))
ew ^= (1 << km->sq);
をそこに追加すればこれは直ったかもしれません。
ただこれで動かすと25手読んでも終らないので
ハッシュテーブルと繰り返しチェックを入れないと解けないかも知れません。
0485デフォルトの名無しさん
NGNGif ((mk & ew) == ew) {
今27手で先手勝ちになりましたけど
時間があればまたチェックお願いします。
自分はあまり将棋読めないので。
15分弱かかりました。
0486デフォルトの名無しさん
NGNGそれとハッシュテーブルを組み込んだら初手から数秒で解けました。
0487デフォルトの名無しさん
NGNG0488467
NGNG先手勝てそうにないですね
0489467
NGNG× 先手
〇 後手
0490デフォルトの名無しさん
NGNGところでこれは一段目の銀が戻るときにも成れるようにしてありますけど
これでいいんでしょうか?
もしそうでないのならプログラムにある2箇所のコメント部分を有効にして
それぞれ下2行をコメントアウトするとそうできます。
しかし今回このプログラムを書いてみて
本当の将棋プログラムを書くのはかなり大変そうだと思いました。
0491467
NGNG>一段目の銀が戻るときにも成れるようにしてありますけど
>これでいいんでしょうか?
はい、OKです。
相手の陣地内にいて、そこから外に出るときも成る事が出来ます。
本当の将棋のプログラムはソース見るだけでも発狂しそうですね・・・
0492デフォルトの名無しさん
NGNG0493デフォルトの名無しさん
NGNG外国の人がプログラムとウェブページを作ってくれてますよ。
みてくれはチェス風だけどルールはまぎれもなく今議論になっている
超ミニ将棋。
左からabc列、下から123行(左下がa1, 右上がc3)
K玉、S銀、G成銀、 F歩、Tと金、大文字は下手、小文字は上手
またwinning in 14というのは将棋流にいうと14x2-1=27手詰
losing in 13というのは将棋流にいうと13x2=26手目に詰まされるという意味。
Sb2(2二銀) kc3 - c2(1二玉) Ka1 - a2(3二玉)sb1(2三銀)
Ka2 - a3(3一玉) fa2(3二歩) Sb2 - b3(2一銀) kc2 - c1(1三玉)
Sb3 x a2G(玉3二銀成) sb1 x a2(同銀、成っても同じ) Ka3 x a2 (同玉)までが
必然でその後後手のsb2(2二銀)、sb1(2三銀)のどちらの応手でもそのあと15手で詰み。
また" the longest direct mate position"からは双方最善手で25x2-1=49手で詰む配置からの
あらゆる手を追うことができる。正直これを解くのは羽生、谷川でも無理じゃないか。
0494デフォルトの名無しさん
NGNG0495デフォルトの名無しさん
NGNGsuper-mini-shogi
もそのまんまの名称だし。
0496デフォルトの名無しさん
NGNG0497デフォルトの名無しさん
NGNGついて解が得られているし、ポーンを除く6駒もすべて分かっている。
A tablebase is a file containing the perfect result information about all positions of a particular
material setup, such as King and Rook versus King and Pawn. Tablebases for all material situations
up to five men (including the Kings) have been generated, and some simple 6-men tablebases are
also available.
http://scid.sourceforge.net/help/TB.html
最長は500手をこえる。人間が解くことは絶対無理。
http://www.xs4all.nl/~timkr/chess2/diary_3.htm
0498デフォルトの名無しさん
NGNG今気がついたけど2歩のチェック忘れてた。
結果は変わらなかったけど。
0499山崎渉
NGNG0500デフォルトの名無しさん
NGNG0501デフォルトの名無しさん
NGNGうち歩詰め禁止がものすごく痛かった。
そんだけ。
0502デフォルトの名無しさん
NGNG0503デフォルトの名無しさん
NGNG0504デフォルトの名無しさん
NGNG┣━╋━╋━╋━╋━╋━╋━╋━┫
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃
┣━╋━╋━╋━╋━╋━╋━╋━┫
0505デフォルトの名無しさん
NGNG金沢将棋、柿木将棋予選落ち
0506デフォルトの名無しさん
NGNGそんなに狭いものに限定されるものじゃない。
将棋という世界と相性のいい数学概念を
探すなり見つけるなりすれば、大きな
ブレイクスルーになると思いますよ。
なにもどこにもない誰も到達していないものを
いちから作り上げるほどの数学の天才は必要ないです。
直観の形でプロの一部が持っているものを
数学的概念におろしてきてやればいいだけですから、
少し気の利いた数学者が何人かいればできると思います。
0507デフォルトの名無しさん
NGNG要するに人工知能をコンピュータで作ればいいって言っているんだろ?
言うは易く行なうは難しって知ってる?
0508デフォルトの名無しさん
NGNG数学について何も知らないみたいですねw
0509デフォルトの名無しさん
NGNG> 数学的概念におろしてきてやればいいだけですから、
それが難しいんじゃないの?
どんなに素晴らしく下ろしてこれたとしても、その計算コストが大きければダメ。
良い数学的概念を下ろしてこれた上に、計算コストと正確性のトレードオフを
うまく達成するってのは、そんなに簡単に出来ることなの?
0510デフォルトの名無しさん
NGNGそんな汎用的なだいそれたものは必要ありません。
将棋というものの認識を、我々の脳に頼らず
外部に抽出して整頓しましょうと言いたいだけです。
現在の将棋のように人間の結論をあらかじめ得て、
それを形の上だけでなぞるような手法は、そろそろ
限界が近いように思います。
>>508
数学ってなんでしょう?
0511bloom
NGNG0512デフォルトの名無しさん
NGNGいずれ誰かがやることですから、コストは別にして
考える準備はしておいてください>プログラマの皆さん
では逆に聞いてみたいのですが、そもそも一体何の
ために将棋のプログラム研究はなされているのでしょうか。
0513デフォルトの名無しさん
NGNGかつて、フェルマーの最終定理を数学者たちは解こうと躍起になった。
それと同じ理由でそ。
では逆に聞いてみたいのですが、マでも無ければ、数学者でもない。ましてや、将棋の研究してるわけでは
決して無い>>512はナンなんだ?
0514デフォルトの名無しさん
NGNGのかわかりませんが、かなり難しいことには間違いありません。
直感をコンピュータに持たせるとして期待されていたのが、ニューラルネット
とかですが、なかなか十分な成果は出ていません。
将棋等のゲームにおいては、入力が多くなりすぎてしまいます。
しかし、囲碁のプログラムにおいては、将棋のように単純に全幅探索でやって
られないので、まだまだコンピュータは弱いです。そのためニューラルネットを主
に使ったソフトが世界選手権で上位に食い込んできたりもしてます。
ですからニューラルネットによるアプローチも否定されたものではないでしょう。
で、何のために将棋のプログラム研究がされてるかって話しですが、基本的には
コンピュータをもっと頭よくしたいってことだと思います。
もともとチェスなどのゲーム思考用に考案されたアルゴリズムは他の分野でも応
用がされています。人間の方が得意な分野っていうのは、そこに新たな発見がある
と思われるので、研究する価値があると考えられます。
逆にいえば、将棋の秘密を解き明かすことが、研究の主な目的というわけではない
でしょう。将棋でしか使えないようなアルゴリズムっていうのは、相対的に研究として
の価値は低いと思います。
0515デフォルトの名無しさん
NGNG直観と数学とは別です。
数学とコンピュータも別です。
でも関係があるでしょ。
直観といっても人間の持つ直観をそのまま実現するのは無理です。
人間は合理的な存在ではありませんからまま真似してはいけません。
あるものを対象にして発揮される場合の人間の直観のごく一部を
都合良く数学概念に仕立て上げればいいんじゃないですか。
駒というものの多様性にとおりのいい解釈がつけば、囲碁より早く
ブレイクスルーを迎えられるかも知れませんね。
にらみ合い
角筋を活かして・・
濃淡
制圧
そういうものをコンピュータに理解させるのではなくて
もとからそれ(ら)を含んだ概念を用意しておけばいいんです。
概念化するまでもなければそのまま載せればいいんですが、
無理なら遠回りでも概念化を試みるべきだと思います。
プログラマさんは数学が得意でしょうから、将棋を見て
自分の頭の中を掘り下げて、数学の概念として外に出してから、
それをアルゴリズムなりなんなりの形で取り崩して載せていけば
強さは別にして、相当おもしろいものができると思うんですが。
0516デフォルトの名無しさん
NGNG0517デフォルトの名無しさん
NGNGだから、直感をモデル化したものが、ニューラルネットだと
0518デフォルトの名無しさん
NGNG内容無いくせに長い、堕レスの手本だな。
0519デフォルトの名無しさん
NGNG時間はかかるだろうが。
0520デフォルトの名無しさん
NGNG>将棋でしか使えないようなアルゴリズムっていうのは、相対的に研究として
の価値は低いと思います。
そうは思いません。
将棋は駒と配置とルールだけが所与の条件ととらえられがちですが、実はそれらと人間の関係が将棋というものの実体です。
所与の条件のみで解明できたゲームはゲームの一部です。(これを「閉じたゲーム」と呼びたいです)
多くのゲームは人間の認知を条件に入れないと、アプローチすらできないものが多いです。(これは「開いたゲーム」と呼びます)
開いたゲームに解明は存在しません。
しかし、高度に訓練された人間が関わる開いたゲームには解明はなくとも解釈が存在します。
その解釈を(別の形で)実現することがゲームプログラムの研究の使命です。
ところが、プログラマの勘と一足飛びの実装にたよる手法では、限界が近づきつつあると見受けられますので、
勘の部分を対象化してきっちり概念化したほうがいいのではないかと考えました。
将棋の強さに特化されたプロの脳の中で起きていることは、その一部でも概念として外に出せれば、価値は高いと思います。
プロの脳内に個人的に死蔵されるか、一部のプロのあいだでだけ共有されてきた「なにか」を、
別の形になってしまうとはいえ数学的に共有し様々な操作や展開ができるようになるのですから。
そのなかには初歩的な数学として記述できるものもあるでしょうし、(それはすでにオセロ、チェスなどでも実現されていると思いますが、)
まったくあたらしい概念を準備されるべきものもあるのではないかとおもいます。
そしてそれこそがゲームプログラムの目指してきた目標だったはずです。
いち将棋プログラムファンとしては、勝ち負けや報酬だけではなくそういう理念が研究者を突き動かす衝動だと信じています。
小手先の調整で勝ちを拾うのは便宜的な手法だと信じてますので、
海外の研究者にこういったプランを整理した形で示される前に、
国内のプログラマさんたちで考えてみて欲しいところです。
0521デフォルトの名無しさん
NGNGハードよりの部分を人間の脳に近づけて、その上に研究を積み上げれば直観が実現できるなら苦労しません。
0522デフォルトの名無しさん
NGNG直感を数学的に表現できるならば苦労しません。
できないから、こういった人間の脳の構造にヒントを求めた手法が研究されているのです。
0523デフォルトの名無しさん
NGNG例えば、将棋の探索アルゴリズムであるミニマックス探索。
これなんかは、人間の頭の中の思考をモデル化(数学として記述というより、モデル化といったほう
が誤解がないかと思いますが)したものです。
その上あるα-β探索などは、探索の効率化の手法ですが、ゲーム以外の分野においても指針を
与えたといえるでしょう。
人間の頭でやってる「何か」をモデル化する事は価値があることとは思います。しかも、それはでき
るだけ、汎用性があるモデル化が好ましいということです。
激指で採用している、プロの棋譜情報を使って深く読む手を決定しているという手法というのは、い
い例でしょう。確かに、将棋特有の知識を使って、手というものを分類してはいます。しかし、逆にいえ
ば手さえ分類できれば、あとは汎用的に他の同種のゲームに応用できます。
あくまで、汎用性がある綺麗なモデル化を、っていうのはプログラマにとっては、理想かと思います。
0524デフォルトの名無しさん
NGNGなるほど。
モデル化しやすいものは既にモデル化できてるんですね。
早く将棋プログラム研究から、効果的なモデルが生まれるといいですね。
チェスの流用だけじゃなくて。
0525デフォルトの名無しさん
NGNG数式に落とせても、コンピューターで解けない問題はたくさんある。
「NP問題」でググレ
0526デフォルトの名無しさん
NGNG数式だって(プ
アフォか?
0527デフォルトの名無しさん
NGNG0528デフォルトの名無しさん
NGNG1.神の一手を打ってくる敵と対戦できる
2.敵はすべてランダムで駒を動かす
3.将棋崩しができる
4.将棋ドミノができる
5.ネットプレイ可
6.150手まで詰め将棋を収録
7.囲碁、オセロもできる
ここまでできれば、世界一の
将棋プログラム
0529デフォルトの名無しさん
NGNG流石に7はいらんだろw
0530デフォルトの名無しさん
NGNG数式化という言葉にしたんだけど、
さらに低いレベルの人がいるとはw
0531デフォルトの名無しさん
NGNGピンクローター190円から〜
オリジナル商品や新商品をどこの店よりも早く発売いたします!!
イスラエル軍も使用している本物ガスマスク!!
バイブ、ローター何でも大安売り!! 下着やコスプレなども大安売り!!
個人データも秘密厳守!!偽名で購入OK!
郵便局止め、営業所止めOK!
http://www.king-one.com/
0532527
NGNGしかし、処理(グラフを描くなど)によって、
必要な時もある。
中学生でも、プログラミングができますから。
0533デフォルトの名無しさん
NGNGいや、nand演算で十分。
nandなら幼稚園でもできますから。
0534デフォルトの名無しさん
NGNG0535528
NGNGそれは、囲碁だろ。
多分、将棋は加賀を召喚。
0536デフォルトの名無しさん
NGNG貧困なイメージだね。
数学ってもっと広いよ。
0537デフォルトの名無しさん
NGNG口だけは達者ですなw
0538デフォルトの名無しさん
NGNG数学者のなり損ないにはいわれたかないな。
0539デフォルトの名無しさん
NGNG0540デフォルトの名無しさん
NGNG自分のよく使うプログラミング言語を
ぺラぺーラにする方が先。
Cが一番読み易...
いや、TTSかひまわりかのどっちかだな。日本語だし。
0541デフォルトの名無しさん
NGNGしかもひまわり?
わけわからんな。
0542デフォルトの名無しさん
NGNG文脈嫁
0543デフォルトの名無しさん
NGNG0544デフォルトの名無しさん
NGNGもちろん、漏れもそうだが(w
0545デフォルトの名無しさん
NGNG将棋ではそれが無理ってことの理由をもう少し深く考えて
みませんか?
そりゃ、コマの再利用ができるとかいうのはわかるんですけど
それ以外の部分でなにかあるのなら、そこに何かヒントが
隠されているかもしれないと思いまして。
0546デフォルトの名無しさん
NGNGコマの再利用ができる
それに尽きる。
0547デフォルトの名無しさん
NGNG0548デフォルトの名無しさん
NGNG駒の数自体も将棋の方が多いと思うけど
0549デフォルトの名無しさん
NGNGそうか、コマが多くて盤面も広いか。すまぬ。
まあ、本質はコマの再利用ができるために、可能な手が多い。ってとこだよね。
0550デフォルトの名無しさん
NGNGチェスの方が、どう複雑なの?
もちろん、人間にとってではなく、コンピュータにとってね。
0551デフォルトの名無しさん
NGNGコマの動きが
0552デフォルトの名無しさん
NGNGチェス=
盤が狭くて駒が強力で王が死んだら終わりのゲーム。
コンピュータには将棋よりは楽。
将棋=
相対的にチェスより戦略や感覚の比重が高い。
分析=
ひとつのものをいろいろな見方で見ること。
プログラマー=>546,551
金魚鉢馬鹿。センスゼロ。
結論=
プログラマーだけでプロより強い将棋プログラムをつくるのは無理。
0553デフォルトの名無しさん
NGNG0554デフォルトの名無しさん
NGNG??
とりあえず、将棋も王が死んだら終わりだけど・・・
それにコマが強力な方が、コンピュータにとっては扱いにくいよ。
盤が狭いのはコンピュータにとってはいいことだね。
あと、結論への論理的飛躍がみられます。
0555デフォルトの名無しさん
NGNG将棋というもののとらえ方が浅すぎる。
プログラマーというのは代筆屋のことか?
自分で考え、自分で問題を設定して解け。
チェス=
盤が狭くて駒が強力で、王が死んだら終わりのゲーム。
将棋=
盤が広くて駒が弱くて、王が死んだら終わりのゲーム。
0556デフォルトの名無しさん
NGNG現在のプログラム戦略は局面に対する評価値を基本としている。
だから手数(=分岐の局面数)の広がりが難しさに直結する。
駒が強力なら次に動かせる選択肢が増えるので問題が難しくなるが、
将棋の手数は駒の再利用が可能なことで決定的に増える。
そういうお話です。
0557デフォルトの名無しさん
NGNGまず聞きたいが、君は将棋指し?
で、チェスについても熟知してるの?
0558デフォルトの名無しさん
NGNGチェスにおいても同じことは言えるけど、チェスは可能な手が少ない分、力押しでなんとかなってる。
でも、将棋においては現状においてはそうはいってない。
計算能力が更に増したら、どうなるかはわからないけど。
●その1 盤面のパット見の判断
手を深く読んでいって、読んだ先が「あー、先手悪いな」と思えばその手は避ける。
こういったことをするため、評価関数というものを作るのね。
これは、盤面をぱっと見て形勢判断するもの。
現在は、コマ得とか相手玉への相対位置等で判断してる。
でも、やっぱこれがプロと比べて全然ダメ。
●その2 読む手の取捨選択
プロは、無駄な手は深くよまない。
でも、将棋ソフトだと深く読んでしまう。
この辺の対策は色々考えられているけど、やっぱり無駄は多い。
ここが、プロだと数十手読めるのに、ソフトだと10手程度しか読めなかったりする理由。
終盤の詰むか詰まないかの判断は話は別ね。
終盤は、近い将来プロを超えるんじゃないかな。
0559デフォルトの名無しさん
NGNGそんなに単純かな。
駒が強力ということは終盤が早いということ。
チェスで再利用ありだった場合、必勝法がある可能性が高く
たとえ必勝法がなくともコンピュータの絶対的圧勝になるのでは?
将棋が複雑なのは、駒に異なった機能があり、それがまた場と状況で
同一機能の駒であっても役割が異なることによると思う。
これはチェスでも同じだ。しかし、将棋の場合は再利用があり
再利用ありで必勝法なしのゲームが成り立つようにバランスが
取られている。この再利用ありを前提につくられたことが
将棋の複雑さに寄与している。
いいかえれば将棋は、相対的に広い盤で弱い駒という、
再利用ありを前提としたゲーム設定だからこそ複雑になる。
0560デフォルトの名無しさん
NGNGあのさー「プログラム」を「プロ」って略しちゃいけないよ
誤解を生むから。いや、わかるけどね。
0561デフォルトの名無しさん
NGNGにその2が効いてくるわけ。
ついでに囲碁なんかだと、盤面評価も難しいし、可能な手も圧倒的に多いから、コンピュータは
今のところ全然ダメ。
0562560
NGNG0563デフォルトの名無しさん
NGNGまてまて、プログラムをプロとは略してない。
プロって書いてあるのは、人間の将棋のプロね。
0564デフォルトの名無しさん
NGNGとんでもない書き間違いすまぬです
0565556
NGNG将棋系ゲームの難しさは次の2点にあると思う。
(1) 局面判断
(2) 分岐数の多さ
で、ゲーム設定は主として(1)に効くと考えられるが、
実用的な処理時間に落とすときには(2)の作用が決定的に問題になる。
チェスと将棋の優劣を論じるつもりはないけど、
特にプログラム化するときの難しさは(2)なのではないだろうか、
と思っての書き込みです。
(2)の枝を切るためには>>558のように、
結局は局面判断と組み合わせる必要があるのかもしれないけど……。
0566デフォルトの名無しさん
NGNGというのが大きい。オセロなんかもそうだけど。
もっとも、将棋の終盤にも大抵の場合「解」はあるはずなので、
ソフトがプロを超えるのは不可能ではないと思うけどね・・。
ちょっと関係ない豆知識だけど、チェスの駒が強力なのは引き分けを回避するため。
大昔のチェスはクイーンもビショップも一歩ずつしか動けない、小将棋のような
まったりしたゲームだったそうな。
ところが引き分けがあまりに多いので動きを強力にしたらすぃ。
0567デフォルトの名無しさん
NGNGだから擬似的な直観を実装してください。
万能な人工知能は必要ありません。
特定状況下で発揮される直観を近似するだけ、でいいです。
●その1 盤面のパット見の判断
同一局面でも有利不利が常に決定されるわけではない。
どのようなタイプがどういう構想をもってみるかによる
相対的な形勢判断によるしかない局面も多い。
●その2 読む手の取捨選択
それを直観という。指しては「手が見える」という。
これには、明らかにだめそうな手を排除するという消極的選択と
なんだかわからんが光って見えるというような直観でわかるという
積極的選択という二重の意味がある。
論理とは、論理的で逐次的で自覚的なフィードバックや分解が可能な処理。
直観とは、論理的でプロセスを圧縮高効率化した無自覚な処理。
直観もまた論理的なんだよ。どういう構造をとっていて、
何が省略されてなにが組み替えられているのか
それが少しでもつかめれば、と将棋プログラムに期待してみる。
将棋プログラム開発に社会的意義があるとするなら、
それは直観の近似だろう。
いまのままでは無理だが。
0568デフォルトの名無しさん
NGNGどっちが勝ちか予め調べておいて、それを記憶しておくなんてことしているみたい。
将棋は再利用が出来る分、そういったことをするのは難しい。
0569デフォルトの名無しさん
NGNG実装して下さいっていって、実装できたら苦労せんて。
色々考えられてはいますよ。
0570デフォルトの名無しさん
NGNGプロは過去に色々将棋を打ってきて、そこから、何か直感的なものを取得したんだろうな、という考え方。
単純に統計を使う場合もあれば、ニューラルネットに放り込んで処理する場合もある。
直感を論理的に説明できるのなら、、プロに説明して欲しいなと思います。
プロが自分の直感を論理的に説明してくれれば、将棋ソフトへのフィードバックは可能でしょう。
でも、そういったことができるプロは・・・
0571デフォルトの名無しさん
NGNG従来のボードゲーム・プログラムの延長で解決しようとすると、
処理時間の増大度合いからしてプロには勝てないのでしょ?
その増大度合いには処理速度の向上は追いつかないんでしょ?
1000年後に期待、とかではなんのためのゲームプログラム開発
なんですか。
だったら、なんでもいいから新しい方法を考えないと打開できない。
プロでも各分野の数学者でも誰でもいいからつれてきて相談しないと、
プログラマーだけではもう限界が近いんじゃないですか?
ここは謙虚かつ貪欲になって、片っ端から使えそうなのを
持ってきてやってみるべきだと思います。
0572デフォルトの名無しさん
NGNG「盤面ぱっと見」の判断には異議あり。
人間がそんな1局面だけを見て局面の優劣を判断することはないよ。
駒の損得バランスが大きく崩れてるならともかく。
人間の高段者が「ぱっと見」という言葉を使うときは少なくとも具体的に数手先、
場合によっては直線で10数手以上読んでる。
それに本当に難解な局面ならプロでも意見が分かれたり、間違えたりする。
0573デフォルトの名無しさん
NGNG例えいたとしても全盛期のトッププロ。
そんな暇ないだろう・・・
とはいっても、最近のプロは自分の能力について
昔の棋士よりは自覚的であろうとはしてるから、
暇と金さえつくってあげれるなら期待できるかも。
難しいのは、彼らのように直観を持ちながら、それに
自覚的であろうとするプロであっても、自覚的でない
もの(直観)を別のたとえ話で表現するだろうということ。
そのままでは役に立たない・・・
それを分析して実現可能な形に置き換えれるような
他の分野の人々の連携体制が必要だと思う。
0574デフォルトの名無しさん
NGNGチェスの場合なら、今盤上にあるコマの数と、それぞれのコマが動ける場所のマス数
でのシグマ計算になるけど、
将棋の場合は、取った駒を再利用できるから、全ての駒と、それぞれの・・・
の計算が膨大になりますね(取りごまがかぶってる場合は短縮できますが)
なります・・って行って思い出したけど、将棋は成れるからさらに複雑ですね。
やっぱりそんなことにつきてしまうんですかね。ちなみに、チェスは引き分け
があって、負けそうなら引き分けに持ち込もうとするし、逆に向こうが引き分けに
持ち込もうとしてるときに果たして自分の勝利は確定してるのか、それとも
実は分が悪いのか(だったら引き分けさせちゃおう)なんてことを考える
から、そこは将棋より複雑ですね。ただ、そんときはもう駒がほとんどなく
なってるから、実は簡単なアルゴリズムかもしれないですけど。
なんか他に決定的な違いってやっぱりないですかね。
0575デフォルトの名無しさん
NGNG例えば、プロ棋士VS(プロ棋士+コンピュータ)というのは
どうなるんでしょうか。
持ち時間などの全てのルールは通常と同じで
隣にコンピュータをおいて、好きなときにそれを見れる。
そのコンピュータには今までの全ての棋譜のDBが置いてある。
コンピュータ技術者は、その閲覧ソフトを使うプロ棋士にとって
いかに使いやすくするかということにのみ注力する。
これを導入した棋士は今までより強くなるのか、それとも変わらない
のか、むしろ弱くなるのか。
これって興味ありませんか?
0576デフォルトの名無しさん
NGNG将棋にも引き分けはある訳だが。
しかも千日手引き分けの他、持将棋引き分けまである。
0577デフォルトの名無しさん
NGNG終盤はソフトに頼った方が強いという説があります。
しかも現状のルールでは禁止されてません。
でも、みんなプライドがあるらしく、実際にプロで実行に移した人はいないようです。
0578デフォルトの名無しさん
NGNG量子コンピュータが実用化されれば革命的に変わるかも
0579デフォルトの名無しさん
NGNGコメントになってなかった。
統計は、プロセスは置いて、結果そのものからたどるという発想で
すよね。それはそれで優れていると思います。
読む手を絞り込むという手法としては充分ありです。
プロも、膨大な経験から着手候補の感覚を築くという面もあるでしょうから。
そんな発想がもっともっと欲しいですね。
0580デフォルトの名無しさん
NGNG直観か読みかはともかく
ある局面で、
解がひとつある
解が複数ある
解が特定できない
このどれかである。
そういう考えについてはどう?
0581デフォルトの名無しさん
NGNG解は複数ある
んだけど、実際に常に最善の手なんか打てるわけはないわけであって。
いかに、相手が間違いやすい局面に持ち込むかという
事を考えると、解は特定できないというか、ないわな。
0582デフォルトの名無しさん
NGNGチェスではすでにそういうルールがadvanced chessという名前で確立してるな。
で、人間+コンピュータの方が強くなるそうな。普通に考えれば将棋も同じだろ。
0583デフォルトの名無しさん
NGNG再利用による分岐数の増大にだけ目がいってるようですが、
再利用によってゲーム性がまったくことなるという点については
スルーですか。
分岐数の増大を何とか工夫して実現可能な分岐数におさえる。
そういうアプローチは当然だと思いますが、そちらの方向から
だけでは限界が見えてくるんじゃないですか。
囲碁は盤の大きさで、将棋は再利用ありによって
ゲームの構造が複層かつ多重になっているという
考えをしてみたらどうですか。
0584デフォルトの名無しさん
NGNGチェスだって駒が取られなければ・・・多重になるわけでして
ただ、終盤に行けばいくほど可能な手が増えてくるっていうのは将棋の特徴になるかと。
その点、>>568のような手法は使えない。
ただ、終盤よりも、中盤が現状では問題。
0585デフォルトの名無しさん
NGNGチェスでは既にやってる。
結果は強くなる。
将棋はそこまでプログラムが強くないから、
あまり効果はないでしょうが、詰手順の解析だけでも
有用ではあるから強くはなるでしょう。
棋譜DBは、意味づけが重要だからあまり効果ないと思う。
>>577
終盤は全体的にはまだ弱い。
必死もいまいちで、速度計算はおかしい。
詰手順の解析だけは異常に速く正確。
>>576
引き分けを減らすために、
チェスでは駒を強力に
将棋では駒の再使用をありに
した。
昔の将棋は、盤の大型化と駒の強力化を試みているが、
結局それらは捨てている。平行して、再利用ありを採用して、
それからかなりかけてゲームバランスを取った。
0586デフォルトの名無しさん
NGNG「ゲーム構造が複層かつ多重」というのの意図がつかみにくいが…
再利用がゲームにもたらすのは、「駒得より形勢重視」という視点じゃないか?
チェスの場合、駒損は取り返しがつかないから。
で、これがゲーム性の違いとして人間には感じられて、
コンピュータにとっては「評価関数を作るときの難しさ」の違いになると。
実際、チェスの場合は評価値はほぼ駒の価値によって決まってるが、
将棋だともう少し凝ったことを考えないと今のパワーでは強くならない。
0587デフォルトの名無しさん
NGNG>>565も言ってるけど局面判断の難しさより分岐の多さの方が効くと思われ。
「囲碁は盤の大きさで、将棋は再利用ありによって」
って結局は手数が多くなるということが最大の問題だと思うし。
思考時間=(1局の判断時間)×(考える局面)
だから。
1局の判断時間がゲーム性によって100倍になったとしても、
全体の思考時間は100倍にしかならない。
しかし1手ごとの可能な選択肢が2倍になると10手読みするだけで、
全体の思考時間は約1000倍になる。
0588デフォルトの名無しさん
NGNG別に将棋と張り合うつもりはないし、たぶん将棋の方が難しいけど、
それでもチェスは駒得だけじゃないよ。
むしろクイーンなどに成れるという意味合いなどからポーンの配置が重要。
「ポーンを制するものはチェスを制する」とか言うらしい。
0589デフォルトの名無しさん
NGNGそもそも、最善の手が存在しない場合がある。
それは俺の考えだが、あなたは対人間を想定しているようだ。
対人用にチューンされた将棋プログラムはまだ存在していない。
例えば、詰んでいる局面で、もっともまぎれの多いところへ
玉を逃がすという機能はまだもっていない。
詰みが判明すると投了したり、自滅したり、短手数の詰へ
わざわざ誘導したりする。
41手詰を短時間で読み切る人間がいるのか?
0590デフォルトの名無しさん
NGNGボーンのフォーメーションなどはチェスの評価関数に組み込むのは
一般的ですよね。そういったゲームごとの特徴を評価関数に落とし込んで
しまおうっていう発想はあります。
その考え方を変えろっていうのは一理あって、読む手の絞込みにも利用
すべきでしょうが、なかなか効果的な方法が編み出せないでいるようです。
0591デフォルトの名無しさん
NGNG>例えば、詰んでいる局面で、もっともまぎれの多いところへ
>玉を逃がすという機能はまだもっていない。
現状のアルゴリズムでもこういう機能は実装可能です。
勝敗の評価値の他に“紛らわしさ”を評価しておくとか、
必敗が決定したら少しでも“生き”の可能性がある枝を選んだり……
例えば、今では人間よりも遙かに強いチェッカーのソフトは、
できるだけ人間が混乱しそうな手を選ぶそうです。
0593デフォルトの名無しさん
NGNGあ、いやこちらもわりと極端に言っているだけ。
あくまで「傾向として」という話で読んで。
tactical play vs positional playの話として、チェスの方がtactical playの占める比率が大きいと思う、ということ。
0594デフォルトの名無しさん
NGNG知識のすり合わせを行ってるだけで、議論になってないじゃん。
0595デフォルトの名無しさん
NGNG「ゲーム構造が複層かつ多重」
○複層
俺もひとに説明できるほどにはわかっていない。
単純なゲームに戦略は必要ない。
複雑なゲームには戦略が必要だ。
それはゲームそのものに戦略が存在するのではない。
そのゲームに効率よく勝つために、戦略という
認識の層を人間がつくっただけだ。
だとしたら、プログラムもルールとは別の認識層を
人間の認識とは違った形であってもひとつもしくは
複数もつ必要がある。
○多重
同じ局面でも、異なった戦略下では違う評価と候補手を持つ。
局面自体に解はない(場合が多い)。
その局面でこれからなにをどうしたいのかによって、
その局面は初めて意味を持ち、候補手があげられ、
結果としての着手が決められる。
○役割
駒は動き方が決められている。
しかし、それだけでは駒を知ったことにはならない。
駒は存在する場所によって働きが異なる。
駒は状況によって期待される役割が異なる。
これらに従って、同一の駒であっても重要度が異なる。
0596デフォルトの名無しさん
NGNGやはり先人達の考えを紹介する必要があるわけで
0597デフォルトの名無しさん
NGNG認識に関しては評価関数で頑張ろうしています。
戦略って面では定跡の利用。
解がないという話は、評価関数をどう設計するかに正解がない
って話になると思う。
役割は、駒がどの位置にあるかで評価関数を変えてるけど、
人間の手で直感的にふっているので結構いい加減。その分
先読みすることでまかなってはいる。
0598デフォルトの名無しさん
NGNGそういう視点を入れてみたらうまくいくかもしれない、という意見には「どんどんやったらいい」という感想だが、
そういう視点を入れなきゃダメだ、と言い切っちゃうのには反対。
認識の層はあくまで人間の脳みそと言うハードウェアが全体を一度に処理できないから生み出してるもので、
コンピュータにとってはそんなこと必要ないかもしれない。
ただ、人間がソフトを作るうえで、人間がわかりやすい形をとったほうがプログラムを適切に作りやすい、
という観点はありえる。
また、多層化は限られたリソースでやりくりするための方法だから、
それをコンピュータでもうまく使えるようになると強くなるかもしれない。
どうやってそれをやったらいいかはまだ知られてないけど。
0599デフォルトの名無しさん
NGNG0600デフォルトの名無しさん
NGNG評価関数
ひとくちに評価関数と言ってもその構造は様々では?
どのような評価値を設定するかだけではなく、評価関数の
構造そのものによって、駒の役割や複層的認識を
近似できる可能性はある。
定跡
定跡は、日本の将棋プロ棋士の怠慢によって、定跡体系
の整理が出来ていない。ところが、突き詰めて考えると
定跡体系は個人的なものである可能性が高い。
なぜならその人間の棋風が定跡体系における各手の
価値や選択頻度を変えているからだ。そして、整頓されていない
のは確かだが、究極の定跡体系は存在しないともいえる。
しかし、それならそれで将棋プログラムにはそれにあった
定跡体系が用意されるべきだともいえる。これには個別の
プログラムの癖に対応するという意味と、プログラム総体の
特性を加味するという二つの意味がある。
そういう考えをとるかとらないかは別にして、それが問題に
なるほどには定跡が整理されていないことが現在の問題だ。
まずは定跡のデータベースをきちんとつくること。
そのためにきちんとしたフォーマットを決めて、閲覧性・操作性を
向上させ、定跡DBの実現には誰をどう利用すればいいか考えること。
0601デフォルトの名無しさん
NGNG局面そのものに絶対的な解がないとしても、プログラムの
全体的特性と固有的癖を加味すれば相対的な解は存在する。
駒の役割
役割は数年前からある程度意識されているようですね。
ポジションやシチュエーションで価値と機能を変えて評価する。
ポジションとは盤上の絶対位置と駒の種類のことで
シチュエーションとは他の駒との配置のことです。
うまく整理されればこれだけでまだかなり強くなる。
0602デフォルトの名無しさん
NGNG直観にはローカルな側面と汎用的な側面の両面がある。
人間の脳という処理機構の事情からとりあえずそうなっているだけで
コンピュータでは実現できないか実現する必要がないものもある。
しかし実現できてかつ有用なものもあると思う。
そういう視点を入れなきゃダメだ、と言い切っちゃうのは言い過ぎかも
しれない。しかし、ボードゲームのチェスから将棋にかけてのどこかで
直観的認識の取り込みを必要とするような分水嶺があると思うから
言い切った。
複層化については、その層の扱い方が肝だと思う。
0603デフォルトの名無しさん
NGNGこういうことを将棋で考えるにはここ2〜3年が勝負じゃないかなぁ。
5年もしたら、計算機の高速化と今の技術の延長的な地道な改良で十分プロレベルだったりしない?
で、難しいことを考えなくても力押しで何とかなったりして。
そういう意味で、>>602の言う「分水嶺」はすごい勢いで動いてると思うんだな。
で、結局何が言いたいかと言うと、今すぐがんばろうということで。
0604山崎渉
NGNGピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
0605デフォルトの名無しさん
NGNG将棋はおいといて、囲碁に流れとか。
0606デフォルトの名無しさん
NGNG探索部分は簡単に書くと下のプログラムみたいになると思いますが、
読んだ中で双方の最善手順はどのように得られるのでしょうか?
Move AlphaBetaPlayer::GetNextMove()
{
m_MaxDepth = 3;
AlphaBetaSearch(-1000000, +1000000, 0, m_teban);
return m_BestMove;
}
int AlphaBetaPlayer::AlphaBetaSearch(int alpha, int beta, int depth, int teban)
{
if (depth == m_MaxDepth)
return m_pBoard->Evaluation(teban);
vector< Move > movelist;
m_pBoard->GetMoves(&movelist);
int best_score = alpha;
for(int i=0; i < movelist.size(); i++){
m_pBoard->ApplyMove(movelist[i]);
int score = - AlphaBetaSearch( -beta, -best_score, depth + 1, teban^1);
if (score > best_score){
best_score = score;
if (depth == 0) m_BestMove = movelist[i];
}
m_pBoard->UndoMove(movelist[i]);
if (best_score >= beta) break;
}
return best_score;
}
0607デフォルトの名無しさん
NGNG評価値と一緒に最善手もリターンするか、
参照渡しの引数で最善手を得るかすれば良いよ。
0608607
NGNG各ノードでそこから下の最善手順のリストを
末端まで記憶するようにすれば良いんだけど、ちょっとめんどくさいかも。
0609デフォルトの名無しさん
NGNG末端の深さがバラバラになるだろうから、手順が入る配列だけでなく、
手順の長さ、を示す変数が余計にいります。
こことか見るといいかも。
http://www.seanet.com/~brucemo/topics/pv.htm
0610デフォルトの名無しさん
NGNGんなもんlist<Move>を使って、下から返ってきたbest_move_listにpush_front()して上に返しゃいいでしょ。
ちょっとは考えた?さすがに甘えすぎじゃない?
と少し厳しめに言ってみる。
0611デフォルトの名無しさん
NGNG盤面をぱっと見て優勢だと思えば無難な手でいくだろうし劣勢だと思えば無理筋でも指す。
絵画だっていくらコンピュータで構図を分析しても最後の良し悪しは人間が判断する。
こういう視覚的なものを組み込むのは難しいんだろうけどサ。
0612デフォルトの名無しさん
NGNGそんな処理が今のコンピュータに出来てたら、変な手法を使わなくても勝てるレベルに
技術が進歩してるに決まってる。
その程度の判断もできないのか? 理系じゃない?
0613直リン
NGNG0614デフォルトの名無しさん
NGNG新しいアルゴリズムが発明されるのとでは
どっちがさきに人間に勝つのだろう
いくらがんがって先読みしても
勝てないだろうから、後者の方が速そう
0616デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/tech/kako/1004/10043/1004395614.html
0617デフォルトの名無しさん
NGNG実はそういうわけでもなく、あまり変わっていないみたいなことを
読んだことありますね。本当なのでしょうか。
0618デフォルトの名無しさん
NGNG「実力」の定義は難しいですが、定跡の研究により将棋は明らかに進歩しています。
江戸時代のベスト10 vs 現代のベスト10で対抗戦をやれば、現代の圧勝がほぼ定説。
天野宗歩や大山や羽生が、それぞれの最盛期で戦ったら? だとちょっと謎。
トップの中終盤力は、時代にはよらないでしょう。
将棋板にこの手のスレが定期的に立つんだが、今はちょっと見当たらなかった。
0619デフォルトの名無しさん
NGNG知識がものを言う世界だから、ノウハウの蓄積がある現代の方が
格段に強いのは間違いない。
ただ、それを純粋な実力かと言うと・・・
才能で言えば、昔の強い人の方が上かもな。
0620デフォルトの名無しさん
NGNGかなり高いらしい。
この場合の評価とは、「知識が無いにしては強い」
とか、そういう類の評価だろうが。
0621デフォルトの名無しさん
NGNG>升田9段も「天野君は13段」と、その飛び抜けた実力を認めている。
>ある現役一流棋士は、自身の修行時代は「宗歩は今でも通用しそう」、
>4〜5段時代は「5〜6段かな」、タイトルを取ったころは「A級8段は
>固い」と評価が変わり、「オレが宗歩を測っているようで、
>実はオレが宗歩に測られている」と気味悪がった。
0622デフォルトの名無しさん
NGNG2行目以降にあるように、宗歩は「常に一段上に思える」と言われていた。
そこで升田が13段と言った。つまり、自分は12段だと。
本当に、升田が13段と評価していたわけではない。
0623デフォルトの名無しさん
NGNG本当に13段だと評価したのだろう。
0624デフォルトの名無しさん
NGNG今の方が断然上なんだろうけど、
頂点だけを見ると、
どこが勝つかわからなくなるよな。
0625デフォルトの名無しさん
NGNGでもそれは単純に勝ち負けで見た場合の話であって、
13段とかA級だとかの評価は、単なる勝ち負け至上主義の
評価じゃないだろう。
素質での評価とか、今の定跡を覚えたならという条件での
評価だろ。
0626618
NGNG江戸時代の名人てどのくらい強いの?
http://game.2ch.net/bgame/kako/1014/10148/1014892893.html
0627デフォルトの名無しさん
NGNG一部の棋士が知識に頼りすぎ。
0628デフォルトの名無しさん
NGNG知識とノウハウ以外の、感覚とか地力の評価でしょ。
0629デフォルトの名無しさん
NGNG「現代の定石を学んだ……」
0630デフォルトの名無しさん
NGNG0631デフォルトの名無しさん
NGNG0633デフォルトの名無しさん
NGNGこの場合効率は考えるところじゃないと思うよ。
最初はいかにわかりやすく正しいプログラムを書くかに注意した方がいい。
その後でプロファイルとって最適化して頂戴。
ま、実行時間はどうせEvaluationとGetMovesがほとんどでしょ。
だから最善手の返し方なんかは誤差みたいな違いしか出さないと思う。
んじゃがんがれ。
0634デフォルトの名無しさん
NGNG終盤が進歩したからこそ、序盤で差を付けようとして研究しているのだから。
0635デフォルトの名無しさん
NGNG終盤はパターンが多すぎて、いくら進歩しても序盤が変われば
すぐ役立たずになるからね。
0636デフォルトの名無しさん
NGNG逆に終盤は時間があればなんとでもなりかけてる。
詰みから逆に辿りデータを残せば良いのだから。
対局中にはプログラムで詰みを探して、
データに該当すれば良し、しなくても経験はどんどん生きる。
短期間では進まないけど、
今のPCの性能と、専用プログラムを組めば、
難しくはないし。
序盤は、時間をかければ確実に上にあがると言うわけではないが、
終盤は確実にあがっていく。
もっとも、ソフト会社はそれは好まないだろうけど。
0637デフォルトの名無しさん
NGNGアマのレベルは超えてる。
0638ハブ夫
NGNG記念カキコ。
0639デフォルトの名無しさん
NGNGttp://d.hatena.ne.jp/mozuyama/
6月7日の日記に「将棋と認知科学」のレポートあります。
(羽生善治4冠と松原仁氏の対談)
0640ハブ夫
NGNGもう、このスレ終わっちゃったのかな?
0641デフォルトの名無しさん
NGNG0642デフォルトの名無しさん
NGNGうさぴょんというフリーソフトが公開してる。
名前がアレだけど結構強い。
0643うさぴょんの育ての親
NGNGソースが汚くて読みにくい(^^;;
いつか直そうと思ってもう3年…(;_;)
0644デフォルトの名無しさん
NGNGデーモン将棋とWinShogiも公開されてるみたい。
0645デフォルトの名無しさん
NGNGhttp://news2.2ch.net/test/read.cgi/newsplus/1055307421/l50
0646ハブ夫
NGNG0647デフォルトの名無しさん
NGNG0648デフォルトの名無しさん
NGNG0650名無し@沢村
NGNGプログラミングは上級者でも将棋が初級者では、強い将棋ソフトはつくれないし、
将棋は上級者でもプログラミングが初級者では、強い将棋ソフトはつくれない。
ま、どちらかといえば、プログラミングよりも将棋のほうが上級者になるのは難しいので、
プログラミングの上級者すらほとんどいない2chのスレでは、将棋の上級者なんて一人もいない。
よっておまいらに、将棋ソフトを語る資格なし。
0651ハ
NGNG0652ハブ夫
NGNG0653デフォルトの名無しさん
NGNG> プログラミングの上級者すらほとんどいない2chのスレでは、
> 将棋の上級者なんて一人もいない。
なかなか暴走した論理展開ですね。
0654デフォルトの名無しさん
NGNG論理展開にも飛躍があるが、そもそも前提が「偽」だからなぁ。
最近の将棋プログラムは作者たちよりずっと強いんだろ?
まぁどこまでを「上級者」と呼ぶかにもよるが…。
必要なのは、将棋を一般的な枠組みで捉える力だろ。
本当の意味で一流なプログラマにはそういう力が必須だから、「一流プログラマ」であることは十分条件になるが必要条件じゃないな。
0655うさぴょんの育ての親
NGNG吉村さんは相当将棋が弱いらしい。
もしも初段程度で良いのであれば、「うさぴょん」の作者は今、24で13級でつ。
もしかすると、将棋プログラマの中で一番将棋が弱いんじゃないかと…(泣)
0656デフォルトの名無しさん
NGNG0657デフォルトの名無しさん
NGNG将棋弱くても最適解出せると思うけど。
0658デフォルトの名無しさん
NGNG局面を収束させられるかねぇ。
損得のウエイトが駒の損得から寄せの速さにシフトしていく
過程は非常に難しいと思うよ…
0659デフォルトの名無しさん
NGNGもっとも大切な資質が抜けてる。
天才と客観性。
>>654
自分の棋力がそのままソフトの壁ではないだろうが、
自分より強いソフトを作れても、自分の棋力を基点として
そのやや上にソフトの強さの壁がある。
そしてそれは思ったより低い。
つまりプログラマーだけではソフトは羽生に勝てない。
>>657
最終盤ならな。
>>658
シフトしたり戻ったり混ざったり。
どうしろとw
0660アボーン
NGNG| ( ゚Д゚) | < 逝ってよし!!
| |つ¶つ¶| \_____
(二二二二)
.| ◎ ◎|
ヽ____/
||
|| ____
゚.・∴ー=≡三.∴・.゚| アボーン >
0661デフォルトの名無しさん
NGNGhttp://jbbs.shitaraba.com/otaku/bbs/read.cgi?BBS=776&KEY=1058069482&END=100
0662山崎 渉
NGNG__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0663デフォルトの名無しさん
NGNG0664デフォルトの名無しさん
NGNGある程度採算を持って定跡、駒組みを選択しないとね。
後、読み切れないような先の予測に対する危機回避、感知も行わないとだめだろうね。
0665デフォルトの名無しさん
NGNG本物???
0666うさぴょんの育ての親
NGNGうん。
今は12級に復帰したけどね(^^;;
0667デフォルトの名無しさん
NGNGそれだけ弱くてあれだけ強いソフトを作れることは
ある意味称賛に値する。
ところで、週刊将棋でコンピュータ将棋の特集が始まってますね。
今週の車輪はいただけませんが。
その程度は車輪とは呼ばないだろうと。
あくまで方向の話なんでしょうけど。
06681000GET
NGNGいたらソースを公開してやってください。
0669デフォルトの名無しさん
NGNGうさぴょんを移植すればいいんじゃないの?
最強じゃないけど……
0670デフォルトの名無しさん
NGNGexec()で東大5呼び出せば簡単
0671デフォルトの名無しさん
NGNGボランティアみたいでむなしいな。自己満足程度にしかならん。
0672デフォルトの名無しさん
NGNG0673デフォルトの名無しさん
NGNG昔どっかに書いてあったが。
0674デフォルトの名無しさん
NGNG何故負けたかを計算させて学習させる様に汁
その局面の評価関数を出し直してプレイ再開、
んでソコの局面から始めてまた負けたら繰り返して、
勝つまで評価関数を変えるか、もうイッチョづつ局面を戻る、勝ったら確定
まぁ、感想戦だな
0675デフォルトの名無しさん
NGNG0676デフォルトの名無しさん
NGNG多分売上げと間違えてるぞ。
>>674
"TD learning 将棋"くらいでググッてみろ。
0677デフォルトの名無しさん
NGNG別にそれくらいいくでしょう。
個人ベースで開発されているのに、メジャーなソフトだとどこの店でも
置いてあるんだから。
0678デフォルトの名無しさん
NGNG5行のプログラムだけど
10段のコンピュータにも勝ったよ
0679デフォルトの名無しさん
NGNG0680デフォルトの名無しさん
NGNG残り四行が改行が無しと。
0681デフォルトの名無しさん
NGNG改行がないのに何で四行になるんですか?
0682_
NGNG0683デフォルトの名無しさん
NGNG0684デフォルトの名無しさん
NGNG先手ながら40手台で【うさぴょん】に負けてしまう
0685デフォルトの名無しさん
NGNGうーん、パソコンのゲーム市場ってかなり狭いんだよな。
割と売れてるエロゲーと同じくらいだと思うと、まぁ数千本だよな。
一本一万円のソフトは卸値が5000円だから、売上げが数千万ならわかる。
0686デフォルトの名無しさん
NGNG0687デフォルトの名無しさん
NGNG読売に東大将棋は通算25万本売れたと書いてあったから、もっと売れてるんでしょ。
まだ出てから5年くらいだし。
0688デフォルトの名無しさん
NGNGそいつはすごいな。プレステ入れずに?
パソコンだけで年間5万本なら割といい商売だな。
あ、だけど東大って廉価版いろいろ出してるのか…平均卸し単価1500円くらいか?
その計算だと収入は1〜2000万ってとこか?
プレステ入れてなら5万本はまぁそんなもんか、って気もする。
プレステはロイヤリティもあるし、単価が低いんだよな…
0689デフォルトの名無しさん
NGNGってか根本的にしてみろよって??
日本語勉強しようね(;´Д`)
0690デフォルトの名無しさん
NGNG0691デフォルトの名無しさん
NGNG0692デフォルトの名無しさん
NGNG廉価版といってもLight版が確か定価3800円ですね。
Light版よりもメインの12800円のソフトの方がたくさん置いてある感じです。
年収数千万円というのは妥当なところでしょう。
そもそも収入に差がつくタイプの職業では、ホストでも保険のおばちゃんでも、
トップクラスは普通のサラリーマンよりもかなり稼ぐものですし、専業の
将棋プログラマーが何人もいる中でのトップクラスがそれくらい稼ぐのは
ごく当たり前だと思います。
0693デフォルトの名無しさん
NGNGおかしいなぁ、確か将棋プログラマで将棋だけで食ってける人はいない、
とかいうのをどこかで読んだ気がするんだが。
どこだったかなぁ。
0694デフォルトの名無しさん
NGNG柿木氏や山下氏は将棋プログラムしかやってないはず。
金沢氏は会社作ってルーチン売ってるが儲かってるのかどうかしらん。
東大将棋の棚瀬氏は暇すぎるのが嫌で就職したとかだが。
0695うさぴょんの育ての親
NGNG棚瀬さんが就職した時に、そういう情報がどこだったかでまことしやかに流されてました。
0696デフォルトの名無しさん
NGNGなるほど。認識を改めました。
0697デフォルトの名無しさん
NGNG収入が多いと答えていた。
ましてや柿木将棋よりもかなり売れてそうなクラスの作者はすごいもんだろう。
0698デフォルトの名無しさん
NGNGhttp://jbbs.shitaraba.com/study/3223/
0699デフォルトの名無しさん
NGNG0700うさぴょんの育ての親
NGNG山下さんはPG。
0701デフォルトの名無しさん
NGNG透明な駒みたいの打たれ(?)ますタ♪
0702デフォルトの名無しさん
NGNG♙♙♙♙♙♙♙♙
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖
0703うさぴょんの育ての親
NGNGがーん。見たことのないバグだ(泣)。
しかし、emっていったい…?
0704デフォルトの名無しさん
NGNGオイラが使ってるヤツが、ちと古い所為かな、今使ってるのは、
うさぴょん 思考部v1.1c UI v1.0 2002.8.31
ってヤツでした。
あと色々試したら透明な駒はドラッグしてる間だけ、×印に「だみー」って書いた駒(?)
が見えて、盤面の全ての場所へ移動出来ちゃいますね(味方の駒が居る場所以外は)。
だからどんなに離れてても王さんも取れちゃったり。
実際には王を取った場合は、取っても持ち駒に王は追加されなくて移動不能な透明な
王の機能を持つマスのヨウナものとして存在しているようですが。
「だみー」ってやっぱdummyって事?
育ての親さんが仕込んだ開発モードか何かの名残とか???
0705うさぴょんの育ての親
NGNG確かにだみーって出るはずですね。
#例えば、金が成ったりすると、だみーになると思います(^^;
もしよろしければ、棋譜を見せてくださいませんか?
多分、今のバージョンにはないバグだと思うんですけど、心配なので。
思考部のバージョンなんですけど、一時期、ちゃんと日付を更新するのを
すっかり忘れてたことがあって(泣)、あんまり参考になりません(--;
sikou.dllっていうファイルの日付を見てもらえると助かります。
0706山崎 渉
NGNG0707デフォルトの名無しさん
NGNGオセロソフトでは当たり前。
将棋ソフトある程度のものは必要。
でもおそらく将棋ではソフトの強化には
自動化できないという意味でいまのところ価値がない。
しかし、人間が使う棋譜解析ツールとしては意味がある。
序盤からたどって(激指、東大)、結果の勝敗から
逆算して解析結果を修正する。
楽しそう。
0708デフォルトの名無しさん
NGNG根本的なソフト強化策言ってもいい?
25分切れ負けやめろ。
せめて決勝ではやめてくれ。
進歩を遅らせる足枷をはずせよ。
時間?資金?
そんなものは理論限界でもなんでもない。
やってないだけだ。
やれ。
脳を無駄遣いするな。
脳を使う前に、脳を有効に使える土俵をつくれ。
0709ハブ夫
NGNG時間長いほうがコンピュータにとっては不利なのですか、それとも、有利なのですかね?
良くプロ棋士とやるときは早指しとか言って短い時間で指したりしますが、
それってコンピュータにとって不利だからそうしてるの?
それとも有利だからかな?
0710デフォルトの名無しさん
NGNGまぁ、適当で申し訳無いが、
長時間は人間に有利、
短時間はコンピューターに有利
だと思われる。
理由としては、
コンピューターは簡単なポカは犯さないので、
短時間でもミスをすることは無いということと、
長時間かけても長い手順を全部読み切れるかというと、
そういう訳でもないということなので。
0711ハブ夫
NGNGありがとうございました。
0712デフォルトの名無しさん
NGNG(ちょっと増えただけでは意味が薄い?)
また、思考時間が長いと、その割り振りを考えるアルゴリズムも必要であること、
何かも挙げられるかも。
0713デフォルトの名無しさん
NGNG確かに、25分切れ負けルールに対する過剰な最適化が進むと、進歩に影響が出るかもね。
とは言え、712も言ってるように、少々時間を延ばしたところで、わずかな棋力の上昇
しか得られないかも。
それに大会は会場を借りるのに金がかかるから、その辺りからの制約が…
加えて、商品化されてるソフトは、人間がストレスをそれ程感じない程度のスピードで
指す場合での最適化を要求されるだろうからなぁ…
0714うさぴょんの育ての親
NGNGコンピュータ将棋協会の中にも、決勝の持ち時間を延ばすべきだと主張している人もいる。
一方、持ち時間は同じで良いが、先後5局ずつくらいやりたいという人もいる。
どちらも実現しないのは、やはり会場や予算の都合もあるけど、
「そんなに問題だと思ってないから」だと思う。
だから、結局、
> 脳を無駄遣いするな。
> 脳を使う前に、脳を有効に使える土俵をつくれ。
と考える人が、コンピュータ将棋選手権に代わる、新しい土俵を作らないと変わらないよ。
0715デフォルトの名無しさん
NGNG参加しているあなた達がやるべきことをなぜ俺がやらねばならんのだ。
当たり前の指摘をすると、解決されないところを見ると致命的ではない。
やれよと言うと「お前がやれ」
なにそれ?
君らは本気で将棋ソフト全体の進歩を考えていない。
「どういう状況をつくれば全体の進歩が速まるか。」
それが目標にも共通了解事項にもなっていない。
勝ちたい、儲けたい。
俺が。俺が。
今のルールなら金で勝てる。
それだけか。
名誉はどこに行った。
プログラマ伝統のボランティア精神はどこに消えた。
ボランティア精神は日本のプログラマには元からないがな(w
0716_
NGNG0717デフォルトの名無しさん
NGNG本人達がそれでいいんだから別にいいんじゃないの?
将棋ソフトなんてあってもなくてもいいもんだし。
なにをそんなにムキになってるの?
本人達が必要性感じたら変わるんじゃないの?
0718デフォルトの名無しさん
NGNGいうのか全く見えません。
0719デフォルトの名無しさん
NGNG0720デフォルトの名無しさん
NGNGが自然な気はするかもしれない。
0721デフォルトの名無しさん
NGNG1手30秒とかは無理と思われ。
0722うさぴょんの育ての親
NGNG「そんなに問題だと思ってないから」
って言ったでしょ。
「問題だ」と思う人が変えればいいのであって、問題を感じていない人が変える必要はない。
僕自身、25分切れ負けルールが本質的な問題を持っているとは思わない。
60分+切れたら1分とかの方が、「良い」棋譜が出来るのはたしかだと思うけど、
じゃぁ25分と比べて本質的に何か違うかと言われると、そんなに違いがあるとは思わない。
持ち時間8時間とか言われればそれはそれで魅力的だと思うけれど、
そんな大会に参加できる人間は非常に限られる。
0723うさぴょんの育ての親
NGNG>>715
さっきは、>>715って書き忘れた(^^;
コンピュータ将棋選手権のルールは、参加者が作っているんじゃなくて、
主催者が作っているもの。もっとも、参加者と主催者が重なっているところも
あるけれども、それは実際には全体の一部。
で、参加者には、ある決められたルールの大会に対して、参加する自由・参加しない自由がある。
今、コンピュータ将棋選手権に参加者がこれだけ集まるということは、
ルールに賛同する人が多いってことじゃないの?
参加者が沢山集まる=裾野が広いってことは、進歩に役立たないんですかね。
0724デフォルトの名無しさん
NGNG補足。
25分切れ負けというのは意外と長くて、CSAから配布されている棋譜の
消費時間を見ると分かりますが、普通に1手30秒以上使っていっても
意外となくならないもんです。
また時に1手に2分以上考えたりするプログラムもあります。
勝負どころで時間を使って、普段節約したりとか、そういう人間的な判断を
させたりというのも面白い部分の一つです。
0725デフォルトの名無しさん
NGNG>君らは本気で将棋ソフト全体の進歩を考えていない。
>「どういう状況をつくれば全体の進歩が速まるか。」
とりあえず、その状況とやらをもっと具体的に説明してくれ。
もちろん、なぜその状況が進歩に繋がるかについての根拠と、進歩に対する効果の
対コスト比にも言及してな。
0726デフォルトの名無しさん
NGNG0727デフォルトの名無しさん
NGNG0728デフォルトの名無しさん
NGNGコンと指してるのか判断することれす。
既に級位者には十分合格してると思うけどね。
0729デフォルトの名無しさん
NGNG> 勝負どころで時間を使って、普段節約したりとか、そういう人間的な判断を
勝負どころを判断させるのって難しそう・・・
0730デフォルトの名無しさん
NGNG将棋ソフトに計算による計算ではない何かを期待するから。
>>718
アイデアや理論を盛り込むときに制限となっているから。
ゲーム理論開発というよりマシン勝負になっている。
より富める者はより多く盛り込み貧しい者は切れ負けを恐れ
少ない知恵をさらにけずる。きみたちはアホか、全体ではアホなのかと。
>>719-721
どんな持ち時間などの条件がソフトの進歩にとって好ましいのか。
参加者で洗い直してみればいいのに。
得意でしょ、そういうの。
>>723
25分切れ負け
決勝を総当たりにできる。
大会運営をなんとか毎年続けられる。
参加者の激増にも何とか対応可能。
時間配分の自由。
優れてたよね。
25分切れ負けは現実と理論の妥協としては優れていたわけだけど
それがソフトの進歩に対して壁になっていないしならない?
0731デフォルトの名無しさん
NGNGそれはお前らが考えろよw
「「どういう状況をつくれば全体の進歩が速まるか。」
を考えるようにしろ。」
「状況を教えてくれ。」
もしかしてアホなのか?
プログラム言語は書けても、俯瞰性やら論理性はないわけ?
全体として何を目指しているのか、それが自動的に早く達成できる
ルールを設定しよう、とか一歩引いて考えたこともないんだろ。
0732デフォルトの名無しさん
NGNGだから、問題だと思ってないんだって。
あなたは最初からたいした根拠もなく、問題だと決め付けてるわけで。
大体現在、20万くらい出せば最高速級のパソコンが買えて、それが何百万もするワークステーションとかよりも
速い状況で、「富めるもの」とそうでないものの差なんか関係ないでしょうが。
0733デフォルトの名無しさん
NGNG少しわかる気がします。
例えば現在考えられ得る理想的なマシン環境をネット上に構築して
1年中対戦をえんえんと休みなく続けて、そしてプログラムも任意
のタイミングで更新したり。それだけでも今の大会形式よりいいか
も知れない。まぁ、他にもいろんな方法があるかも知れませんが、
マシン環境にしろ統一的な定跡研究にせよ、ちょっと想像した
だけでも時間と金が莫大にかかることが予想されます。
誰もがそこの解決を断念してるんだと思いますよ。それを解決しよ
うとしないお前等はアホというのなら、その通りだと思います。
今のところ実力をあげて、認知度を高め、企業の参入を待つという
のが精一杯という気がしますが。いいアイデアがあるんですか。
0734デフォルトの名無しさん
NGNG責任を負わないから真剣に考えない。
0735デフォルトの名無しさん
NGNG0736デフォルトの名無しさん
NGNG0737デフォルトの名無しさん
NGNGコンピュータがまったく攻めてこないんだけど、
それって最近は改善された?
0738デフォルトの名無しさん
NGNG本当にどっからも仕掛けられない形ってあるでしょ?
そのときは攻めてこないが、普通の形なら攻めてくる。
0739白砂青松 ◆HakusaRWQc
NGNG>> 脳を無駄遣いするな。
>> 脳を使う前に、脳を有効に使える土俵をつくれ。
>と考える人が、コンピュータ将棋選手権に代わる、新しい土俵を作らないと変わらないよ。
というのは少し言いすぎかなぁ。実際に参加している側の気持ちとしては判るけど。
その後の>>715もちょっと言いすぎだと思うし……。
個人的には、切れ負けではなくて、30秒以上の秒読みがほしいと思います。
もう、将棋ソフトはアマ有段者やプロを射程に捉えつつあります。やっぱり、
「対人間用持時間」で将棋ソフトがどう戦うかを見てみたい。もちろん、決勝だけで十分です。
少ししかまともにならないかもしれないけど、でも、その「少し」を見てみたい。
30秒はコンピュータにしてはなかなか長いでしょう? 終盤で、残り時間が少なくなって
乱れるより、ずっとちゃんとした戦いを続けるのを見てみたい。決勝くらい、300手超えの
熱戦があってもいいぢゃん、とか思うんですよね。無責任な観戦者の立場としては(笑)。
もっとも、自分が東大将棋とかと指してる時って、大体お互いに15分くらいしか時間
使ってない気がするんで、そういう意味で「あんまり意味がない」ってのは説得力があるかな……
とも思いますが。
0740デフォルトの名無しさん
NGNGそんな形めったにない。
×普通の形なら攻めてくる。
○コンピュータにとって仕掛けがある形なら攻めてくる。
0741デフォルトの名無しさん
NGNG選手権の棋譜を見てみると、終盤戦で時間に追われるという現象はほとんどありませんよ。
0742デフォルトの名無しさん
NGNGぜんぜん攻めてこないどころか駒組みむちゃくちゃになってしまった。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/file/999294620_83/ts5.gif
ちょっとでも定石DBから外れると攻めてこないな。
0743デフォルトの名無しさん
NGNG人間でも、後手から仕掛けられんでしょう。
といって動かせるのは飛車、角、金ぐらい。
先手は形が良すぎ。それまでの手の流れは分からんが、うまく組んだな。
端攻めか、大ゴマの交換を狙うか。居飛車党だから感覚は違うと思うが。
まー、できればずっとこの良い形に浸って居たいな。
0744デフォルトの名無しさん
NGNGそれは十年前から現在までの特殊な状況に支えられてる幸運なだけ。
間糞と詐欺ンテルと台湾韓国中国に感謝しろよ。日本のメーカにもな。
いずれWindows独占体制が自壊したり、中進国ダンピング体勢が崩れるなど、
ハードの速度伸長ペースが鈍れば、持てるものと持たざる者の差は開く。
ある時点のハイスペックが待っていても手の届くところになかなか落ちてこないから。
それで、新規に個人が参加した場合、たとえアイデアや完成度が高くとも
勝てないような状態が来る。
>>733
そんな大仰なものは必要ない。
現在ちょこっとルールを変えれば、将来にわたるソフトの強化ペースがごろっと変わる(かも)
>>734
評論に一般論で返して何か意味があるのか。
>>739
ルールと強化ペースにはどのような相関関係があるのか。
現状で25分切れ負けルールが強化に及ぼす悪影響を抑えているのは何か。
本質的に制約を突き抜けたのか、特殊状況への依存か、プログラム限界が及ぼす
相対的効果か。
敵はライバルソフトでもあるが最後は人間。対プロを視野に入れたルールとは。
参加者も考えてるのかな。
政治的に無理だから諦めてるのか。
それができるぐらいならプログラマにはならんだろう。
それとも政治的に強化ペースを抑えているのか。
強豪は少なくとも不利ではないからねえ。
見くびっていたがプログラマは実はミニゲイツが多いのかw
0745デフォルトの名無しさん
NGNG0746デフォルトの名無しさん
NGNG>時間と金が莫大にかかる
ルールいじりはそれを省くというか含む。
ルールを変えれば時間と参加者の欲が自動的に解決する。
だから目標に応じた最適なルールを考える価値がある。
>定跡研究
24と提携しろよ。
出現頻度管理は当然やるとして、対局者レーティング、最新性による重み付けをして、
勝負形のタイプなどの分類をして、各自いじりやすい規格のデータベースにすれば
いいように思うんだが。
24との連携は兎も角、そういう協力もそろそろはじめたら?
>企業の参入を待つ
いまさら・・
似たり寄ったりになって企業から値切られる前に
協賛金をぶんどって積み立てておけよ。
強豪からも集めてなんちゃら基金とかつくれば?
0747デフォルトの名無しさん
NGNG値切られるも何も、そもそも現在企業から得られている協賛金なんて、
雀の涙程度なわけだが(w
0748742
NGNG>人間でも、後手から仕掛けられんでしょう。
娯楽ソフトなんだから多少不利でも居飛車側は攻める義務があるでしょ(藁
>先手は形が良すぎ。それまでの手の流れは分からんが、うまく組んだな。
いや、教科書どおり囲ってたらまったく妨害されずにこうなったよ。
あの後何度か試してみたけど早い段階で居飛車側が仕掛けてくると
なし崩し的に戦いが始まってしまうけど、双方囲いに走ると大体膠着状態に陥る。
そしてCPUは囲いが完成してなおやることが無いと囲いを解体してしまう。
序盤の定跡と中盤の隙間の思考ルーチン(方針決め?)が弱いんじゃないかと思った。
0749デフォルトの名無しさん
NGNGしかも300手になると秒読みの場合に困るでしょう?
…というのは矛盾を含む論理だと思うが。その意見自体の是非はともかくとして。
0750デフォルトの名無しさん
NGNGどなた様かは存じませんが
ソフトを作ったこともない人間が偉そうに能書きたれても説得力も何にもないんだよ。
そんな絵空事は東大に勝つソフト作ってから言ってくれ。
って、オレモナー。
0751デフォルトの名無しさん
NGNGまーそーやな。
>序盤の定跡と中盤の隙間の思考ルーチン(方針決め?)が
>弱いんじゃないかと思った。
目の付け所が鋭いな。基本的に今の将棋ソフトの弱点は中盤で、
それを少しずつ改善しているが、その隙間が弱いと。
製作者じゃないから分からんが、そーかもしれないね。
0752デフォルトの名無しさん
NGNG>序盤の定跡と中盤の隙間の思考ルーチン(方針決め?)が弱いんじゃないかと思った。
まぁ、そんなことはずっと昔から言われ続けてることなんだが・・・。
0753デフォルトの名無しさん
NGNGその2つは確かに矛盾しているようですが、ほとんどの場合は問題になっていなく、
しかし運営としては最悪のケースを想定しておかないといけないということです。
一つの試合が延々と何時間も続いてしまってということになっては困りますから。
0754デフォルトの名無しさん
NGNGつまり、それによって進歩の方向性を制限するような小手先の強化はしてません。
だから、特にルールが悪影響を与えているようには思えません。
あと、強いソフトがスペックの高さで勝っているという印象があるみたいだけど、
それはまぁ間違いでしょう。
やっぱり強いソフトが強いのは、ハードの差による違いとは次元が違います。
決勝の辺りで戦ってるソフトがほぼ最高スペックのハードをそろえるのは、
プログラマ自身の精神衛生上の問題な気がします。
あと、30秒将棋にすると
「どこが勝負どころなのか」「どこで時間を使うべきなのか」
を考える必要が無くなって、ルール改正が逆に進歩を妨げる方向に働きそうです。
基本的に、進歩を促すためにはより厳しいルールを設定しないと。
もちろん、今のソフトが8時間とか持ち時間を与えられたら持て余すのも事実で、
長い時間を有効に使う研究というのもありかもしれません。
が、プログラムを作るという観点からはちょっとつらいですね。
何度も対局させて、そこで出てきた問題点を潰して、また対局させる、
というのがプログラムを育てる普通の方法なので、一局16時間もかかっていてはたまりません。
0755デフォルトの名無しさん
NGNGいや、もう25分切れ負けは現状では実害が小さいことは理解した。
運営上は切れ負け以外は弊害が大きく、かといって手数で制限
すると、より悪影響が大きそうなことも理解した。
切れ負け以外だと千日手、持将棋狙いになりそうなことも。
そしてなにより運営の継続が進歩にとって第一であることも。
しかしそれでも俺は思う。
最初から25分切れ負けを前提に 有 効 な アイデアを出してませんかと。
25分切れ負けだからと実装を諦めている理論はありませんかと。
強豪は資金によるハイスペックと、先行を活かした最適化で
同じ25分切れ負けでも相対的に持ち時間に余裕ができて、
小改良の面でも有利なのではありませんかと。
持たざる者はハードの長足の進歩と廉価化を当たり前だと思ってませんかと。
何が原因かは知らないが全体が壁に突き当たってませんかと。
本当にプロに勝つ気があるのかどうかと思ってしまった。
馴れ合いで流す高速な序盤、はなから諦めている中盤、
ソフトの癖にポカと大逆転が起きる終盤。
プロのゆっくりとした序盤は儀式だとでも思ってるの?
ソフトの究極は揚げ足取りの受け将棋になるの?
ソフトの終盤て実は運任せなの?
なんのためのゲーム研究なの。
将棋が人間にとっては完全でも、コンピュータにとっては
不完全なゲームであることを実証したいわけ?
長くみんなで使い回せる序盤データベースを整理しようとしない。
画期的な序盤解釈理論は影も形も見えそうにない。
中盤打開の新理論の模索も後回し。
理論的には手が届くところにある終盤をつめようともしない。
0756デフォルトの名無しさん
NGNG名人になるという目的はお題目になってませんかと。
人工知能はただの夢物語だと思ってませんかと。
参加者同士は敵ではなく共同体なんですよと。
長い台詞を小さな声でいいたい・・
だだしこれだけは大きな声で言いたい。
「状況とルールは所与のもの。しかしそれを設定する主体は
意志と目標を持ったあなた方なんですよ。」
0757デフォルトの名無しさん
NGNG選手権の対戦相手は仲間でもあるけど、敵でもあると思う。
0758デフォルトの名無しさん
NGNG夏厨必死だな
0759デフォルトの名無しさん
NGNG25分切れ負けの廃止というおまえのこだわりを同列に語られてもなー
あと、切れ負けがなくなったらこういう実装が可能になるんじゃないか
とかもっと具体的な話をしてくれ
抽象論だけでお茶を濁されても話は進まないから
0760デフォルトの名無しさん
NGNGここで批難し続ける気か?
0761デフォルトの名無しさん
NGNG定跡なんかあっさりと覆される物だし、なにより変化するのなんか簡単だ。
だいたい、相手も同じデータベースを使ってたらどうする気なんだか。
(つか序盤データベース化にこだわる人って将棋初心者が多いような・・)
>>755は自分が納得できる大会を自分で主催したらどうなの?
参加費10万円くらい取って持ち時間5時間、秒読み60秒のリーグ戦で
1ヶ月に渡って繰り広げるという壮大なコンピュータ棋戦を作る。
参加者がいるかどうかは知らないけど。
0762デフォルトの名無しさん
NGNG定跡から外れたとたんにデータベースからほっぽりだされてしまって
定跡の意図と思考ルーチンが食い違うと支離滅裂な手を指してしまうからね。
0763デフォルトの名無しさん
NGNGプロになったわけで、その結果金持ちになって普通の人より有利な立場に
あったとしても、結局は本人の実力があったからなわけでしょ。
コンピュータ将棋は誰にでもチャンスのある公平な分野だと思う。
0764白砂青松 ◆HakusaRWQc
NGNG人間の長考って、方針を決めたり勝ちを決定付けたりといろいろ理由はあるけど、
結局のところ手をいっぱい読んでるんですよね。それまでは読み切って指しているわけではなく、
大局観や経験に頼って指していたのが、長考では読み切ろうとする。
でも、コンピュータの長考ってことを考えると、確かに長考の時にコンピュータは
手を読んでいるわけだけど、じゃあ長考していない時もそうかというと、やっぱり
手をいっぱい読んでるんですよね(笑)。
何が言いたいかっつーと、長考の際の「読み方」の質が、コンピュータの場合は
人間ほどに変わらないってことです。
0765白砂青松 ◆HakusaRWQc
NGNGコンピュータの場合、評価関数の不正確さのために、深く手を読んだって
正着が指せる確率が上がるかっつーとそういうわけではないですよね。
なんで、長考という「作業」そのものが、実はコンピュータには向いてないのかなと。
25分切れ負けに適したソフトを作ってるんじゃなくて、評価関数がヘタレだから、
25分切れ負けくらいの短い時間であっても、8時間の持時間があっても、たいして強さは
変わんないのかなぁ……と。
で、755の話とつながるんだけど、前述の理由から、
>最初から25分切れ負けを前提に 有 効 な アイデアを出してませんかと。
ということはないんだろうなと白砂は思ってます。
ただ、現在の評価関数の作り方って、「スピードをさほど犠牲にしないで、
けど今まで以上の効果が出る」ものを目指しているような気がするんですよ。
うーん、言葉が悪いかな。要するに、仮にいいアイディアを思いついたとしても、
それを実装するとえらく長考派になってしまう。柿木も真っ青、みたいな(笑)。
その場合、きっと作者さんはその評価関数を実装しないと思うんですよ。
「そんなもん使えねーよ」って。
>25分切れ負けだからと実装を諦めている理論はありませんかと。
と同じような意味ですけど。
けど、そういう「時間的な制限」を取っ払った、とにかく正確な評価関数
というのができたら、長考という作業がコンピュータにとって「意味のある」
ものになるかもしれない。そしたら、もっと強いソフトが出るかもしれない。
そういうのを、見てみたいなぁ……と思うわけです。
755さんが言いたいのも、そういう意味のことなんじゃないのかなぁ(違ったらごめん)。
0766デフォルトの名無しさん
NGNGのか???
0767デフォルトの名無しさん
NGNG0768767
NGNG盤面から記号群を読み取って、認識するみたいなやつ。
ずっと前にテレビで見た気がするんだけど。
勘違いかなぁ?
>>764-765 を読んで、なんか気になったんで。
0769うさぴょんの育ての親
NGNGうーん、あんまり評価関数に重い処理を実装しないのは、
「その分1手先、2手先まで読んだ方がいいや」
と考えているからなので、この辺は難しい問題です。
評価関数が多少不正確でも、1手先まで読めた方が結果として正確になるという考え方ですね。
もしも、私が
「100倍時間がかかるかわりに、現状のアルゴリズムで5手先まで読むよりも
正確な評価が返ってくる評価関数」
というようなものを開発できたら、喜んでそれを使います(^^;
0770うさぴょんの育ての親
NGNG>だから、結局、
>> 脳を無駄遣いするな。
>> 脳を使う前に、脳を有効に使える土俵をつくれ。
>と考える人が、コンピュータ将棋選手権に代わる、新しい土俵を作らないと変わらないよ。
これは私の考え方としては変えられないかなぁ。
大会自体は、誰が開催したって構わないわけで、実際、学生選手権みたいな形で
ボランティアベースで行われているわけです。賛同者をきちんと集められるルールを
設定して、ネット上で声をかければ、参加者も相当数集まるでしょう。
インターネット対局を許すような形にすれば、参加者の負担もかなり軽減できます。
(この方法は、インチキが可能なところが問題なんですが。)
そんなに敷居が高いわけではないので、「問題がある」と思う人が問題意識に沿って
動かないようだと、タダの煽りにしか見えないし、聞こえないかと。
冷たい言い方をしているように見えたかも知れませんけど、
新しい土俵を作る提案や、そのためのボランティアの募集であったら、
喜んで議論しますし、賛同できる提案であれば、ボランティアもします。
でも、>>708 >>715 だけの発言じゃ、「タダの煽り」にしかなっていないんですよ。
0771うさぴょんの育ての親
NGNG> ソフトの究極は揚げ足取りの受け将棋になるの?
うん。悪い言い方をすると、多分これはそうなる(笑)。
ただ、それを非常に高いレベルでやることが出来るようになると思っています。
大山名人の受け潰しのように。
あれを揚げ足取りとは、誰も言わないでしょ?
実際、自分から仕掛けることは、今のアルゴリズムは目指してないです。
もしも、ソフトが仕掛けたように見えたら、それは実は「揚げ足取り」で、
相手に仕掛けられるようなミスがあったから。
もっとも、うさぴょんみたいな弱いソフトは、相手に隙があると思い込んで
成立してない仕掛けをすることがあるけど(笑)。
0772白砂青松 ◆HakusaRWQc
NGNG>>評価関数が多少不正確でも、1手先まで読めた方が結果として正確になるという考え方ですね。
だからそこがどーなのかなぁと。
現在の評価関数が、長手数の読みに堪えられるかどうかっていう話です。
極端な話、今の100倍の時間がかかる関数であっても、今よりも倍くらい「正しい」
評価関数であれば、そいつを実装したソフトを見てみたいなと。
今のまんまでも、人間のように長考すれば、読んだ分だけもの凄いいい手を返す、っていう
んであれば問題ないんですけど、今のまんまだと一定時間以上は読んでも無駄になってしまう
んじゃないかと。
なので、もっと「読める」ソフトが出てきてくれたら嬉しい。けど、25分切れ負けっていう
ルールが邪魔しているんであれば、それを取っ払った大会なり勝負が見たい。
そういうことなんです。
0773うさぴょんの育ての親
NGNGちょうど出かけるところだったので、思い出したのにフォローし損なっちゃいました。
相手モデル探索(OM-Search)というアルゴリズムを、静岡大の飯田先生が
論文で発表されていましたが、こういうアルゴリズムが進化してけば、
おそらく「積極的に仕掛ける」プログラムもできると思います。
0774デフォルトの名無しさん
NGNGcsaファイルも一応upしてみましたが、
最近PCの挙動がぁゃιぃので一応アンチウィルスソフトを起動させてからDLしてくらさい(汗、、、
ttp://cgi.2chan.net/up2/src/f20187.zip
102手目ですね
0775うさぴょんの育ての親
NGNGうーん、変な話なんですけど、長い手数を読めるようになればなるほど、
評価関数は変にひねっていない方がいいんじゃないかとも言われています。
倍くらい「正しい」評価関数っていうのも難しいですが、
ただ、今の評価関数で一番実装が不十分なのって、「速度計算」だと思うんですよね。
「速度計算」を評価にうまく加味できればいいんでしょうけど。
ところで、「人間のように長考すれば、読んだだけ物凄いいい手を返す」ために邪魔に
なっているのは、本当に評価関数なんでしょうか?
実は、今の「うさぴょん」に物凄い長考モードがあるのは、ある実験の名残です。
その実験こそ、長考すればするほど、本当に強くなるのか?
実際に実験してみると、メモリが足りないとか今のマシンだと熱暴走するとか、
いろんな知見が得られましたが(笑)、柿木将棋Vの最強レベルに統計的に
優位な差を付けて勝ち越すには、
・だいたい30倍くらい(笑)時間をかける
・読む幅を広げる
ことが必要であることが分かりました。
うさぴょんの場合には、邪魔になるのって、どちらかというと枝刈りのやり過ぎで、
評価関数はあまり関係ないのかも知れません。
0776うさぴょんの育ての親
NGNGありがとう!
調べてみます。
0777うさぴょんの育ての親
NGNGファイルの日付から言って、バージョンは、正月明けβ5ですね。
うーん、引っ張り出してやってみても、うまく再現しない(ーー;
ここで3七歩成ってやりたかったんだろうなー。
3七歩成は結構厳しい手ですよね。遠くの角が利いてるし。
こういうありえない手を指す時って、いくつかパターンがあって、
前の読みが変な風に残ってたりする時とかなんだけどなぁ。
もうちょっと調べてみて、再現するといいんだけどなぁ。
また何か「怪しい」動作があったら教えて下さいね。
0778デフォルトの名無しさん
NGNG読みが足りない部分を評価関数で修正したり、逆に評価関数が不正確な部分を深く読むことで補ったりするわけです。
なので、評価関数だけ変更しても望んだ結果が出るわけではありません。
与えられた時間の中で、評価関数と読みが絶妙にバランスする点を見つけることが、
その与えられた時間での勝負で「強い」ソフトの開発に必要なんですね。
そして、このバランス点は「与えられた時間」を変えれば変わってくるもので、
25分切れ負けと持ち時間8時間という違った条件では確かに異なるでしょう。
ただし、過去数年間の流れとしては、
「より長い時間を与えられたなら、読みの方をより重視して評価関数はよりシンプルにする」方が強くなっている傾向があるようです。
もちろん、この知見がそのまま外挿できるかどうかはわからないわけですが。
しかし、ソフトの開発にはどうしても試行錯誤が伴います。
一手30秒とかの手を大量に指させて、その試行錯誤を一年繰り返してやっと満足いく「バランス点」が得られるとすると、
一手30分の手を指させる時に同じ回数の試行錯誤を繰り返すと60年かかっちゃいます。
その頃にはハードが進化してもう得られた「バランス点」は使いものになりません。
そういう意味でも長時間考えるソフトを作るのは難しいわけですね。
もちろん、その開発の速度、進歩の速度自体を何とかする方法も色々考えられているわけで、
この先は段々、将棋ソフトだけに留まらない人工知能分野、
更に広くコンピュータ科学分野の研究内容の話につながっていきます。
0779デフォルトの名無しさん
NGNG>基本的に、進歩を促すためにはより厳しいルールを設定しないと。
すごく引っ掛かったのでいう。
天国がある。
増えて多様化する。
地獄になる。
減って特殊化する。
住めば天国でまた増えて多様化する。
以下ループ
進歩というのは与えられた「厳しいルール」に特殊化することで
進んでいるかどうかはわからない。
なんせ君たちには長期目標がないんだから。
0780デフォルトの名無しさん
NGNGだいたい同じ。
量の改良には枯れた土俵が有効で、
質の転換には新しい器が必要なのか。
>>768
画像そのものじゃないだろ。
画像認識の応用?
ちょっと考えてみた。
おもしろそうな予感。
調べてみる。
>>769
深く深く探索。
それだけじゃつまらん、
終盤に関してはもはや深さより広さ。
中盤に関しても深さではない何か。
そういうのは欲しくない?
>>771
週刊将棋の羽生の発言だろ。
>>775
速度計算、評価関数ではない何か
足枷になってるじゃねえかw
あとな速度計算いうなら必死とは言わんが
詰めろリストアップぐらいできるようになってくれ。
>>778
む、知的。異質なレスがw
0781デフォルトの名無しさん
NGNGなるほど。
きちんと25分切れ負けの意味を考えている人も多いんですね。
では、商用化にささえられるソフト開発という視点から。
強い対局相手はもういらん。
すでに弱点を狙ってもなかなか勝てないw
対局ソフトとして強化するという前提は崩れているから
数秒〜数十秒で着手を返す機能をつめても意味なし。
なら、なにか。
プロの対局観戦なの。
だからね、着手生成の時間はたっぷしあんの。
でも今のソフトじゃ役に立たない。
考えさせてもどんどん臆病かやけっぱちになるだけだからw
商用としてそういう路線は考えてないわけですか。
手軽な(つまり速い)対局相手として強いというのは
そろそろソフトの売り文句にならなくなりますよ。
かといってプロ棋戦に参加するには遠い。
プロ棋戦を荒らしまくるwまでの時間稼ぎとして
タイトル戦を解説できる、もしくはプロの棋譜の
解釈に使えれば売り物になるわけです。
漏れが欲しいだけなんですがw
0782デフォルトの名無しさん
NGNG>もちろん、その開発の速度、進歩の速度自体を何とかする方法も色々考えられているわけで、
この先は段々、将棋ソフトだけに留まらない人工知能分野、
更に広くコンピュータ科学分野の研究内容の話につながっていきます。
このあたり、さわりを書いてもらって
文献リストとかリンクをつけていただけません?
漏れには豚に真珠でも、他の人にはためになるかと。
もしかしてすでに常識wかもしれませんが
そこをなんとかお願いします。
0783767
NGNG囲いや手筋の形や、その組み合わせなんかも記号としておいて、
ノイズがのったり、形がちょっと崩れたり、
伸びたり縮んだり?しても適当に認識して、
その後、なんか重要な事をして値を返す。
みたいな感じだった気が……。
やっぱり、勘違いかなぁ……。
0784うさぴょんの育ての親
NGNGすでに>>778ですごく良いフォローがついてしまったし、制限時間があること自体は
もう問題だと思ってないということなので、今更なんだけど。
読みの幅を広げることも含めて制限時間に対するバランスを取る行為でしかないです。
n手スキ=速度計算とか必死の探索も時間に対するバランスの問題。
マシンが遅いときには、通常の先読みの内部ノードで詰め将棋を呼ぶのは難しかった。
で、そのころは、必至をかけるための専用のルーチンがあって、探索開始する局面でだけ
必至がかけられるかどうかを探索していた。
今は、内部ノードでも「詰め将棋」を呼び出すことができるようになった。
その結果、詰めろの探索や詰みの探索は、通常の探索と一体化し、何手か先の局面で詰めろが
かかるとかも分かるようになってきた。
この先、マシンの速度があがっていけば、内部ノードで「詰めろの探索」を呼び出せるようになるだろう。
そうすると、今は1手スキくらいから急に強くなると言われているコンピュータが、2手スキくらいから
急に強くなるようになるはず。
0785うさぴょんの育ての親
NGNG羽生さんがどれだけ現在の探索アルゴリズムのことを知っていて、どんな発言をしたのかは
知りませんが…。
今のコンピュータ将棋の探索って(さんざん既出ですけど)目的をもって何かするんじゃなくて、
闇雲に全部探索したなかから有利になる手・不利になる手を探す処理なわけです。
その処理の中で見つけた、有利になる手順って、やはり悪い言い方をすれば
「揚げ足取り」にしかならないと思っています。「不利になる」手順を見つけちゃうと、
とたんにチキンになっちゃうしね。
「勝負手」をはなったりするような研究はまだ発展途上です。
で、この研究の完成度があがるより先に、「プロの誰かに勝つ」日は来てしまうんじゃ
ないかなーと。
あ、でも、ここの考え方は能天気すぎるかも知れません。
0786うさぴょんの育ての親
NGNG>>775でも言ったけど、今、強いソフトを作ろうとしたら、やはり評価関数に
「なんとなくこれくらい」というような速度計算をうまく入れてあげないといけないと思う。
たとえば、居飛車と振り飛車の対抗形で、居飛車が船囲い、振り飛車が美濃囲いの時に、
「なんとなく」速度計算が評価に入っていれば、振り飛車に捌かせたら居飛車良くない
(美濃囲いの方が崩すのに時間がかかるから)とか評価できるのではないかと。
でも、読みが深くなって、正確な速度計算ができるようになれば、この「なんとなく」は
邪魔になってくる。
0787うさぴょんの育ての親
NGNG0788うさぴょんの育ての親
NGNGだから、>>780の期待しているような、まともな速度計算じゃない。期待させてごめん。
でも、「詰めろ」のリストアップくらいなら、今のプログラムでも十分できると
思うんだけどなぁ。
それをユーザに機能として提供するかどうか、使い物になるかどうかは別として。
うさぴょんのユーザインタフェースに入れてみようか?
うさぴょんじゃ、詰め将棋の性能が悪いので、絶対使い物にならないと思うけど(^^;
あ、最後に、肝心なことを書いてなかった。
『読みの幅を広げるとか、2手スキに対応するとかといった、バランスを取ること自体は、
25分切れ負けルールだから、というわけじゃなくて、どんな持ち時間のルールにしても
しなきゃならない。だから、それは「25分ルール」の足枷じゃない。』
と言いたかった。いろいろと余分な長文書いてスマン。
0789白砂青松 ◆HakusaRWQc
NGNG778さん、うさぴょんの育ての親さんの話に納得です。
ただ、今のところ業界最高の『激指2』を使っても、タイトル戦の観戦は役に立ってないし、
「4段(長考)」じゃなくて、「くさるほど考える(棋力不明)」でもいいから、そういうのを
い じ っ て み た い
というのはありますね。
まぁ、そこまで言っちゃったら、それこそスレタイ通り自分で手を染めた方が
利口なのかもしれませんね(笑)。
とりあえず、25分切れ負けというルールが「枷」になるかについては、「そんなことはないんだな」
ということで納得しました。
0790デフォルトの名無しさん
NGNG次の一手100題の高得点を競わせたらどう?
つまり、思考エンジン
評価関数や読み深度のパラメータ可変プログラム
次の一手100題の自動計算プログラム
をワンセットにしてフリーでバラまく。
ハイエンドマシンが余っている有志によって、
いつしか次の一手100題を完答する輩が現れるかもしれん。
できないにしてもひとりでちまちま関数を微調整するより
効果が大きいような気がするのだが、どうだろう。
0791デフォルトの名無しさん
NGNG0792デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/1006479051/l50
世界最強のオセロプログラム
http://pc2.2ch.net/test/read.cgi/tech/1002036290/l50
0793デフォルトの名無しさん
NGNGhttp://www.asahi.com/shougi/topics/TKY200306120156.html
0795デフォルトの名無しさん
NGNG俺はかなり自分の直観モデルに自信があったんだが
羽生に打ち砕かれた。
もっと細かく聞いていくと、イメージ処理じゃないそうだ。
もっと内部化した超高速とも意識できないぐらい超高速の、
というより一歩間違うと電波系の
「結果が先に見えるんです」
ということらしい。週刊将棋で羽生タンが曰っていた。
他のトッププロの場合はイメージ並列処理と
経験による部分省略ぐらいだと思う。
これならなんとかわかる。稚拙ながら俺もできる。
コンピュータが何らかの形で同様なことをいつかは
できるようになって欲しいと思う。
できればかなり衝撃的だと思う。
しかし羽生は・・なに、それ?
道は遠いな・・
0796ハブ夫
NGNGほう、なるほど。
あなた自身がAI作者なのですか?
それとも一棋士としての感想なのですかね?
俺個人は将棋自体は激下手なので、
羽生どころか、このスレに参加する方々の
直感すら理解できないレベルですが、、、。
0797デフォルトの名無しさん
NGNG>あなた自身がAI作者なのですか?
>それとも一棋士としての感想なのですかね?
んなわけないw
ただのヘボ将棋指しだよ。
しかし今週の週刊将棋王位戦第3局特集は
感想戦になってねーだろ(怒
そのぐらいはおれの激指ちゃんでも読んでんだよ!
△9九角成で羽生が詰めろから必死をねらえたのか。
谷川が上部から押さえ込もうとした場合、
羽生に逆転の目があって避けたのか。
▲5二歩は最善か?
そもそも続かないなら▲5四桂はだめだろ。
それじゃ△9九角成が絶妙の馬作りと受け駒仕入れになるじゃねえか。
馬がずれてからは2二に必死筋があったんじゃねえか?
馬を窮屈にさせる手があったんじゃねえか?
どん詰まりでの▲3四歩だって見えてたんだよ。
でもそれじゃはっきりしねーんだよ。
答えが見えねーんだよ。
なんべんみても背筋が寒くなるだけで
この棋譜はいったい何なのかわかんねーんだよ。
もしかしてそういうのが名局なのか?
感想戦でもなんだかはっきりしないのが名局なのか?
0798デフォルトの名無しさん
NGNG「激指2は中盤以降はいいところまでいっている。」
中盤の意味づけと意志を見た目上で実現できれば
アマ五段を軽く越えてます。
初段の俺がちょっくらちょっと考え方を指導してやるだけで
激指2はプロのタイトル戦観戦に使えます。
王位戦第3局は小便ちびりそうなぐらい楽しかった。
0800デフォルトの名無しさん
NGNG★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
☆★ 送料激安! スピード発送! 商品豊富!
★☆ http://www.get-dvd.com
☆★ 激安DVDショップ 「GETDVDドットコム」
★☆ http://www.get-dvd.com
☆★ 今すぐアクセス Let’s Go・Go!!
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
0801_
NGNG0802デフォルトの名無しさん
NGNG0803ハブ夫
NGNG俺なんて、全然みんなの話が理解できないし、、、。
0804デフォルトの名無しさん
NGNGその考えが間違いであることをうさぴょんの作者が証明している。
将棋が弱くても強いソフトを作ることは可能。
0805デフォルトの名無しさん
NGNGうさぴょんの育ての親さんは男性にモテモテな感じがします。
0806デフォルトの名無しさん
NGNGI 序盤
1.オセロは手数と定跡局面が一対一対応をする単純分岐ツリーだが
将棋は循環構造を取ることを知っているか。
2.1を意識したデータベース形式を取っているか。
3.オセロ、チェス形式を真似するだけなら、人間側の定跡の整理を
あと100年待つことになることがわかっているか。
II 中盤
1.将棋では理論化されていないことをしっているか。
2.安定期と不安定期をブロック単位として扱えることを知っているか。
3.先手を引くべきかどうかを含め安定期に評価しているか。
III 終盤
1.いますぐにでもプロを圧倒できるのにやっていないだけだと分かるか。
2.駒得評価に対数などを使っているか。
3.玉と直接間接に連結している駒たちを単位として扱っているか。
IV 共有
1.UIとデータベースを共有し、ルーチンだけで勝負する気はないのか。
2.ルーチンを分解して単位として公開し、ゲームとして市販して、
並べ替えと重み付けが最適な評価値とバランスをマンパワーでさぐる気はないか。
3.勝ち負け、レーティング、日時、頻度、それらを最終評価する空欄をもった
序盤データベース形式をつくる気はあるか。
何を言っているか分からなければ答えなくてもいい。
0807デフォルトの名無しさん
NGNGデーター量で決まるのでは?
過去のプロの棋譜を全てDB化すればプロとも互角に戦えると思われ。
未知の領域に入っても過去の棋譜を図形として捉え、同じようなものを
検索すれば勝てると思われ。(一手2日間位必要かも・・・)
将棋って「味」や「感覚」とか、今のコンピューターに出来ない要素が
必要なので、アルゴリズムでいくら考えても無駄じゃない?
まず「舌ベラ」とかを開発しなきゃダメだな。←「味」違いですか。oO
0808デフォルトの名無しさん
NGNG0809デフォルトの名無しさん
NGNG0810デフォルトの名無しさん
NGNG・ガキの頃から棋譜の記憶力が優れているとBクラスになれる
・ガキの頃から鍛えた将棋心臓があればAクラスになれる=平常心で妙手も出る
よって今のエレクトロニクス技術でトッププロに勝つのは果てしなく無理
0811デフォルトの名無しさん
NGNGこのスレは囲碁将棋版へ移転しますた。
糸冬 了 し ま す。
0812デフォルトの名無しさん
NGNG一度だけでいいから顔をみてみたいなぁ〜♪
0813デフォルトの名無しさん
NGNG有力ソフトのアルゴリズムはかなり公開されているので、調べてみるといいよ。
将棋プログラム作成者ではないが、答えてみるテスト。
I-1,2:○。普通は局面を検索している。
I-3:100年と言う根拠は? いずれにしてもオセロ・チェスを真似するだけで
良いと思っている開発者はいないだろう。
II-1:○。それなのに既にアマ有段クラスという意味を考えてみよう。
II-2,3:意味不明。
III-1:×。しかし近い時期にそうなるだろう。
III-2,3:不明だが、評価関数については多種多様な試みがなされている途上。
IV-1:アルゴリズムによってデータベースの形式も変わるので、両者は不可分。
UIを全部柿木に統一してくれると嬉しいけど、商品としては無理だよな。
IV-2:>>790の様な意味合いかな? 面白い発想とは思う。しかしライフゲームの
ような方法は現在の将棋プログラムでは有効では無いだろう。
IV-3:意味不明瞭。IV-1と関連するが、様々な形式が考えられてはいる。
0814デフォルトの名無しさん
NGNG・・・??? ・・・まぁ、本人が出てくるだろう(笑)
0815デフォルトの名無しさん
NGNG>>813が積み残したところを。
II-2,3はquiescence searchの話だと理解したんですが。それならやってます。
III-2は「対数など」どころではないし、III-3もそれどころじゃないけど。
IVに関しては残念ながら開発者の関与できるところではないですね。
基本的に本当に入門的な資料を読んだようなので、
もう少し詳しい資料にステップアップされることを勧めます。
0816うさぴょんの育ての親、の一人
NGNG…まぁ、そもそも「うさぴょんの育ての親」って「チーム名」で
個人の名前じゃないしなぁ。
一番多くの人に顔を知られている「うさぴょんの育ての親」は、
コンピュータ将棋選手権で、
「かわいい人が作っていると聞いてたのに、会ってみたら格闘家のような人だ」
って言われてました(w
>>805
若いころ、一部の男性にモテモテだったのが、トラウマだそうです(w
0817デフォルトの名無しさん
NGNG一人じゃなかったのかな?それはしらんかった。
0818うさぴょんの育ての親
NGNGここや囲碁将棋板に書き込んでいる時、実際に書き込みボタンを押すのは
基本的に一人しかいないけど、書き込む文章をいつも一人で作っているかというと
そうでもない(^^; 特に長文レスの時は。
長文と言えば、週間将棋の記事に載っている名前の人物が、一番広く顔を知られている
「うさぴょんの育ての親」ですけど、あれも厳密に言うと一人で書いた記事じゃない(^^;
あ、でも、こんな風に、深夜に走り書きのようなのを書き込みしているのは一人だけでつ。
0819うさぴょんの育ての親
NGNGうーん、うさぴょんの強さはあの程度なので、いまいち説得力がないかなーと
思って黙ってました(^^;
一応、将棋倶楽部24で13級(また350を切っちまったい)が、
うさぴょんの育ての親の中では一番将棋が強い(笑)です。
うさぴょんの詰め将棋ルーチンの元になった、鈴木詰め(って呼んでいいのか?)を
作成した「鈴木将棋」の作者は、ちゃんと将棋倶楽部24で初段くらいはあるんですが。
0820デフォルトの名無しさん
NGNG0821山崎 渉
NGNG│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0822デフォルトの名無しさん
NGNGうさぴょんの育ての親さんはいままで女性だと思ってました。
男性だったのですね。
いままでウサギみたいなかわいい女の子だと勘違いしてました。
残念です。
0823うさぴょんの育ての親
NGNG一番有名なメンバーは、『会ってみたら格闘家のような人』ですが(^^;
女性も入っているチームなので、そういうメンバーもいるかも知れません(謎笑)
0824デフォルトの名無しさん
NGNG0825うさぴょんの育ての親
NGNGおめでとう!
実際に更新をやらせてみると、ものすごい時間がかかるが、頑張れー。
0826デフォルトの名無しさん
NGNGありがとう!
局所最適解に陥って抜け出せない可能性は残るけど、地道にやっていきます。
0827デフォルトの名無しさん
NGNGsikou.dllはやめて二つのUDPまたはシリアル通信を使って二つのプログラムが一手ずつ通信し合うやつ。
既出ですかね?
過去ログ見て来ます。
0828デフォルトの名無しさん
NGNGあれはどうやってプログラミングすればいいの?
参考になる本とかページある?
0829デフォルトの名無しさん
NGNG検証にはCSA将棋と滞り無く通信できればええんちゃうか。
0830デフォルトの名無しさん
NGNGああ、なるほど。そういうことか。
コーディングの方は検索すれば何とかなりそうだ。
しかし、それって、シリアルポートになにやらケーブルかなんかつないで、
二台のパソコンをつながないと検証できないよな?
LANとかいうやつか?
0831デフォルトの名無しさん
NGNG例えばCSA将棋をCOM1、自前のプログラムをCOM2につなぐ。
デバイスドライバ内でCOM1とCOM2をクロスで直結しているように振舞えば、
双方ともCOMポートに接続して通信しているのと変わらない…かな?
これなら1台のパソコンで検証できるのでは?
「仮想シリアルポート」でGoogle検索すると同様の考えのドライバが出てきますよ。
もっとエレガントな方法を求む!
0832デフォルトの名無しさん
NGNG0833デフォルトの名無しさん
NGNG今の時代にそぐわないですね。
暇はあるけど金がない学生向けかね?
日本の学生は恵まれているのかねェ。
0834うさぴょんの育ての親
NGNG詳細はまだ未決定だけど、近い将来(と言っても2年後くらい?)、そうなりそう。
0835デフォルトの名無しさん
NGNGその時代から通信対戦ものは作ってたからそれは承知している。
今や、Web上で将棋でも囲碁でもさせる時代なんだから、
急先鋒たるべきコンピュータ対戦が旧世代の通信に拘泥するのが不思議だったのだが。
>>834とこれまでの遣り取りを読む限り、単に変化を嫌っただけなのね。
0836デフォルトの名無しさん
NGNG囲碁は世界全国だからおもしろいある。
だれか最強の囲碁作ってくれある。
0837デフォルトの名無しさん
NGNG世界全国津々浦々でつか。広いようで狭いような・・・。
0838デフォルトの名無しさん
NGNGなぜ日本国内でしか通用しない日本語で語るのか?
0839ハブ夫
NGNG0840ハブ夫
NGNG将棋チャンピヨンになるほうが、
世界的にも価値は上ですたい!
0841デフォルトの名無しさん
NGNG0842白砂青松 ◆HakusaRWQc
NGNG0843デフォルトの名無しさん
NGNGかといって囲碁は終局の判定が困難。
結局ゲーム自体時間の無駄ということかもしれませんね。
0844デフォルトの名無しさん
NGNGとよく言われるし、その通りだと思う。
0845デフォルトの名無しさん
NGNG0846デフォルトの名無しさん
NGNGコンピュータの強さには関係してくるけど。
■ このスレッドは過去ログ倉庫に格納されています