1read 100read
2011年11月2期囲碁・オセロ36: コンピュータオセロ総合スレッド (506) TOP カテ一覧 スレ一覧 2ch元 削除依頼

コンピュータオセロ総合スレッド


1 :名無し名人:2006/08/20(日) 05:30:48 ID:ZbpgOoS2 〜 最終レス :名無し名人:2011/11/22(火) 19:14:05.69 ID:+6owAdsD
コンピュータオセロは完成の域に達しつつある。
コンピュータオセロのインタフェースをコンピュータ将棋・囲碁に活かして欲しい。
新定石自動生成
初手&最終手往復棋譜解析
定石選択
人間の勘の数式化
終盤の完全性
これらからまだまだコンピュータ将棋・囲碁が学ぶことはたくさんある。

2 :
人間の勘の数式見せて

3 :
>>2
強いコンピュータオセロと対局したことないの>?

4 :
無料ネット対戦オセロなどhttp://mbga.jp/AFmbb.snEQ19877c/

5 :
>>3
あるよ。でも勘の数式は知らないし興味ある

6 :
6×6オセロで最強コンピュータ同士が戦った結果ってどっかにある?

7 :
コンピュータオセロとの対局って絶望的な気分になるんですが。

8 :
>>7
中盤までで圧勝の勢いじゃないと終盤で計算し尽くされて負けるorz

9 :
au

10 :
大量のオンライン棋譜が欲しいんだけど、どこにあるのか教えてください

11 :
スパコンだと、終盤50手読み切り可?

12 :
特別にチューンしたやつじゃなくて、市販の一番強いやつって
どんくらい強いの?

13 :
無料でネットオセロ
http://mbga.jp/AFmbb.D6jg1b0d8/

14 :
>>12
もう人類じゃ勝てない。

15 :
503i用の初期iアプリのオセロにも全然勝てないorz
将棋や囲碁や連珠は楽勝なのに

16 :
連珠なんて相当強くできそうなイメージあるけどな。

17 :
連珠ってもう必勝法見つけられてるはずだから、きっと弱く設定されてるんだろ。
負けるためにゲームしてて楽しい奴なんかいないし。

18 :
>>17
前提が"はず"かよw
連珠はまだ初段だか低段レベルと聞いた

19 :
>>18
ttp://ja.wikipedia.org/wiki/%E9%80%A3%E7%8F%A0
>連珠は先手番による必勝定石が存在することが知られている数少ないゲームである。禁手を設けても、単純に黒白が交互に打っていくならば、先手側に様々な必勝手順があることが確立されている。

20 :
>>19
必勝定石があるのと必勝法があるのは違うだろ

21 :
>>20
同じ。

22 :
仮に必勝定石のみを全部暗記しても、人間相手に必ず勝てるわけじゃない。

23 :
連珠は、浦月・花月の形なら先手必勝だが、
正式ルールはそれを避けられるように設定している。

24 :
>>19>>21は知ったか

25 :
コンピュータオセロ協会を作ろう
とりあえずどうすればいい?

26 :
>>25
コンピュータリバーシ研究会ならある。
http://dais.main.jp/reversi/
現状廃れてるから復活させてくれ。

27 :
関連スレ
http://pc8.2ch.net/test/read.cgi/tech/1087979678/

28 :
http://rvs.mzr.jp/pj.html
ActionScript3で書いた終盤解析ルーチンを、
試しにJavaに移植してみたら10倍の速度が出た。
でもJavaはVMの起動時間とかが煩わしいしねぇ…

29 :
>>28
>Transportation Table
Transposition Table?

30 :
>>29
おっと。ぼけてたよorz

31 :
load: class RVSPApp.class not found

32 :
>>31
Java ソフトウェアのインストール状況の確認
http://www.java.com/ja/download/installed.jsp
的外れかもしれませんが、
とりあえずこちらで Java Runtime バージョン1.5.0 以上が検出されるか確認をお願いします。
バージョン1.4.x以下や、Java対応携帯などの環境は考慮していませんのでご容赦願います。
当方の環境は以下のような感じです。
Windows XP SP2
MSIE 7.0 / Firefox 2.0 / Opera 9.02
Sun Java 2 Platform Standard Edition 1.5.0_10 / 1.6.0-rc
似通った環境にも関わらず動作しないという場合は、そのようなエラーが出る原因を
知りたいと思いますので、もう少し詳しく状況説明をお願いします。

33 :
>>32
JDK1.5.08入れてたけどだめで
JDK1.5.10入れたけどやっぱだめで
JRE1.5.09入れたけどやっぱだめで。
ブラウザはSleipnir2.49使ってたんだけど
ふとIE7でやってみたら使えました。
こっちの環境の問題っぽいね。

34 :
>>33
Sleipnirが、MS社製のJavaVMを優先してしまう問題かもしれません。
http://sleipnirfaq.hp.infoseek.co.jp/act.html#java_reg

35 :
>>34
あ〜たしかにそうかも。MSVM入れてたわ。
今そのページどおりの処置をしたらSleipnirでも動いた。
ありがとう。

36 :
こちらのスレで一緒にオセロiアプリを作りませんか?
http://pc8.2ch.net/test/read.cgi/tech/1165049332/
興味があれば是非。

37 :
ここ数日は手をつけれていませんが、一応途中経過を。
置換表導入、オブジェクト生成頻度低減などによってJava版は12/06時点のものより
終盤解析速度は3倍以上高速化していると思います(Flash版は手をつけていません)。
他の高速な終盤ソルバーにはまだまだ見劣りはしますが。
サンプルとして使用している棋譜での20箇所空き(ply40)からの全着手可能位置に
対する石差読み解析の能力は当方環境(PentiumM1.2GHz)で以下のような状況です。
解析時間 40077ms
探索ノード数 52.3Mnode (1305knode/sec)
探索リーフ数 15.2Mleaf (378kleaf/sec)

38 :
>>37
乙。
これ使ってる?
http://radagast.se/othello/ffotest.html
終盤解析の速度測定用サンプル局面集。
これでベンチマーク取るプログラムが多いから比較できる。

39 :
>>38
今の所は使ってませんね。
そのうち対応したいとは思っていますが、中盤の評価関数も
作っていない状況ではMove Orderingの精度向上も望めず、
20手読みですらえらい時間がかかりますので…
一応、FFO#40についてのみは以下の棋譜を入力欄にCtrl+Vでペーストして貼り付け、
「↑」ボタンを押して反映した後、右の電卓ボタンを押せば評価できます。
F5d6C3d3C4f4F6g5E6c5F3b5E3g4H4h6H3f2H5e2H7e7D2g6G3b3F1g1E1d1B4a5A4a3B2a1C2h2H1g2
解析時間 104298ms
探索ノード数 100Mn (959knps)
探索リーフ数 32.1Ml (307knps)

40 :
http://rvs.mzr.jp/ffotest061226.txt
取り急ぎ、FFO用にルーチンを流用したものを作成して実行してみました。
時間の関係上#40-#48までとなりましたが、ある程度の比較は可能かと思います。

41 :
>>40
乙。
Javaでこれだけの速度が出るって結構やるね。
でもやっぱり枝刈り性能でゼブラと大きく差が出てるみたいだね。
ゼブラは石を返す関数の速度でも定評があるけど、
ソース読んだら枝刈りのテクニックだけでも目からうろこだった。
読んでみるといいかも。
ところでここ見てる?けっこう面白いと思う。
http://pc8.2ch.net/test/read.cgi/tech/1166749119/l50

42 :
Zebraは色々細かい事も重ねて性能を上げているようですが、
当面のところは中盤探索の実装によってMove Orderingの
最適化を行う方向を目指したいと思っています。
以下は悪い例ですが、Move Ordering用の評価関数を変えてみると
FFO#41の解析にこれだけ時間が掛かってしまったりしました。
とりあえず、これだけ打てば響きそうな部分という事で。
solve time: 11732811ms
node: 14.0Gn (1195knps)
leaf: 4.75Gl (404klps)

43 :
http://rvs.mzr.jp/070112chkteach.png
現在は中盤評価関数の学習用データを作成中。
学習ルーチンはまだ組んだ経験が無いので、
鬼が出るか仏が出るか、不安半分期待半分の心境です。

44 :
http://rvs.mzr.jp/p.html
気分転換にFlash版の終盤解析処理をリライト。
中盤用評価関数の方はまだまだ掛かりそうです。

45 :
>>43-44
乙。学習用データってどうやって作ってるの?
自分はこの棋譜を使ったらそこそこいい精度がでた。
http://abulmo.club.fr/resources/base.htm

46 :
>>45
http://rvs.mzr.jp/070126chkteach.png
そこにあるものの他にも色々棋譜を集めて盤面を生成。
終盤の手順が最善進行でないのも混じってるので(そもそも終盤が適当な
棋譜が混じってる&偏屈にも石差をヨーロッパ式でなく日本式でカウント)、
X石空き以下の全ての盤面について終盤解析を掛けて評価値の訂正処理。
それ以外の部分についてはNegamax掛けて不正確ながらも値を設定。
棋譜を集めすぎて訂正処理に時間が掛かりすぎてるのはご愛嬌?
(16石空きまで訂正を終えて現在は17石空き盤面の処理中、2週間弱掛かる
見込みで今はその半分。マシンとプログラムがそのままなら次はもっと時間が掛かる。)
まぁ詰まってるのはむしろ、最適化の為の数式理解してなくて頭こんがらかってたり、
やる気も無く別の事して遊んで空き時間を潰してたりする方が大きいと思うけど。

47 :
最近自分もまた評価関数を作ってみてる。
今回の目的は色々なフィーチャーを試す事。
特にOxelonのQuad ParityとかNtestのPotential Mobilityを試してみようと思ってる。
最適化は簡単に言えば評価関数と教師信号のずれから
各フィーチャーを調整する量を決めるってものだけど
Σとか微分で説明されてて自分も最初は理解に苦しんだ。
自分は主にこのページ↓とゼブラのtune8dbs.cを読んで勉強した。
http://hp.vector.co.jp/authors/VA015468/platina/algo/3_3.html

48 :
7手読みでThellの「強+」とだいたい同じ強さになった。
8手読みだと超えてるみたい。
Thellの「強+」って何手読みなんだろ?

49 :
ちなみにフィーチャーはNtestと同じで、学習は強化学習を使った。
ゲームを5つのステージに分けてそれぞれに最適化した評価関数を使ってる。
もっと細かく分けたら精度が良くなりそう。
学習量増やさないといけないけど。

50 :
ThellのReadmeに先読み手数は書いてあった。
強さ 先読み手数 (中盤、必勝読み、完全読み)
-----------------------------------
強+ (11, 22, 20)
強 (9, 20, 18)
中 (6, 16, 14)
弱 (3, 12, 10)
愚 (1, 8, 5)
勝った。わーい。

51 :
ヘラクレスはどれ位強い?

52 :
現在世界のトップ5に入るくらいかな。

53 :
なんとなくやってたらHERAKLESに普通に勝てた
いくら強いコンピューターといえども100%敵わないものではないのか
ロジステロ相手でも100回やれば一回位勝てる可能性はあるのかな

54 :
何分持ちで?

55 :
何分待ち?相手に計算させる時間を与えるって事かな
あまりにも強いからそこまで考えて打ってはいなかったな
一応、当方初心者なもんで

56 :
「待ち」じゃなくて「持ち」ね。
各プレイヤーが1試合で使える思考時間の合計の事。
ヘラクレスはちゃんとレベルを上げてやれば人間じゃ何万回やっても勝てないよ。
初心者で勝ったなら最低レベル辺りでやってたのかな。

57 :
なるほど、教えていただいてありがとうございます
やっぱりそんな甘いものではないですね

58 :
終盤50手読み切り、
まだ?

59 :
50手は無理だろ

60 :
と適当にレスしたが良スレじゃねえか
age

61 :
コンピュータソフト選手権、あるいはそれに類する大会って
まだあるの?

62 :
GGSでオンラインの大会は時々やってる。

63 :
てst

64 :
あげ

65 :
あげ

66 :
GGSよく分からんのだけど繋いでみたら対戦なかった
常時対戦可能なサーバはないものか

67 :
>>66
GGSでもたいていの時間は人やプログラムが接続してるからいつでも対戦できるよ
ちなみにYahooとかKurnikみたいなテーブルの概念とGGSのは違う。
プレイヤーリストから相手を選んで対戦のリクエストをして受け入れたら「テーブル」が作られる。
もしくはリクエストされて受け入れた場合ね。
試合中はYahooやKurnikでのテーブルの扱いと似てるけど、試合が終われば「テーブル」ではチャットも何もできなくなる。
だからGGSには「テーブル待ち」というものが存在しない。

68 :
なるほど、対戦できないわけじゃなかったのね

69 :
これはもしかして通信とか実装しないとGGSでは対局できない?
うーむよく分からん、、、、

70 :
GUIからポチポチ打つだけでも対局できそうですね
ちょっと倒されてきますwwww

71 :
>>67
>だからGGSには「テーブル待ち」というものが存在しない。
"テーブル待ち"は存在する。
例:tell /os ask 8
This is a global match request.
It will be sent to everybody who indicated interest in receiving
global match requests〜

72 :
>>71
これは失礼しました

73 :
チェッカーは解かれたそうだ。
http://en.wikipedia.org/wiki/Draughts
http://www.nature.com/news/2007/070716/full/070716-13.html
http://www.nikkei.co.jp/news/shakai/20070720STXKE037619072007.html
駒取り合う「チェッカー」を完全解明・カナダの研究チーム
【ワシントン19日共同】市松模様の盤上で黒と赤などの丸い駒を斜めに動かし、
相手の駒を飛び越して取り合うゲーム「チェッカー」を完全解明したと、
カナダ・アルバータ大の研究チームが米科学誌サイエンス(電子版)に19日発表した。
平均50台のコンピューターを18年動かし続けて得た結論は、最善手で差し続ければ必ず引き分けになるというもの。
決して負けない対戦ソフトが可能になったが、より複雑なチェスや将棋の完全解明にはかなり時間がかかりそうだ。
チームはチェッカーの世界チャンピオンに勝つプログラムを作る目的で、1989年にチェッカーの解明に着手。
全部で5兆の1億倍通りもある駒の置き方を踏まえてシミュレーションを繰り返した結果、
お互いにミスをしなければ相手の駒が取れなくなる「引き分け」に終わることを突き止めた。(07:00)

74 :
age

75 :
保守

76 :
あげ

77 :
Vector新着ソフト紹介あげ
MasterReversi Standard Ver1.0.0 (07.12.17公開 5,479K)
>>並列演算にも対応する強力なエンジンを持つ本格派リバーシアプリ
>>ヒント/カスタマイズ機能も豊富
http://www.vector.co.jp/soft/dl/winnt/game/se444590.html
本格派って割にはオセロと無関係な所に力を注いでる感はあるが、強くて速いのは確か。
作者ホームページによるとマルチコアCPUではFFOテストでscrZebraよりも高速らしい。
シングルスレッド時にもscrZebraより1%高速だったらしいが、俺のPCでは5%くらい遅かった。
次のアプリとの対局結果も載っている。
WZebra/Edax/Herakles/Ntest/BoobyReversi/KozoOthello/vsOtha/Thell/RunOth/Duoth/BearRev
設定が有利なのかもしれないが、Edax以外には勝ち越したらしい。
ただし、Vectorに登録されているStandard版には研究機能は搭載されていない。
研究機能やFFOテストには作者ホームページにあるProfessional版が必要。
Professional版はしっかりシェアウェア。
ちなみに、俺が一番気に入った点はコンピュータプレイヤーが色々付属しているところ。
「ミセスリバーシ」とか「ミズ勝負師」とか「佐知子」とか。(男もいるけど)
プレイヤーの作成機能が付いてるから、誰か萌えキャラで作ってくれ。

78 :
Zebraより強いソフトを日本人が作ったなんて凄いじゃん
シェアウェア版の方、もうちょっと安くして欲しいな。

79 :
市販最強ソフトって何ですか?

80 :
知ってどうする。
市販ソフトで、フリーソフトの最強より強い奴はないはずだが

81 :
ではフリーソフトなども含めての最強は何ですか?

82 :
>>81
最も有名で強いプログラムとしてみんなが使ってるのはWZebraでしょ。
ただ、評価関数の精度とBookの質ではEdaxが上だと思う。
今、確認のために条件を合わせて6局やってみたらEdaxの4勝2分けだった。
もっとも、WZebraを使ってる人達はBookを強化してるかもしれないから、
強化されたBookを使ったWZebraならEdaxより強いのかもしれない。
Edaxは最初から質の良いBookが付いてくる分、お手軽。
ただ、研究モードとかが無いんで用途によってはWZebraより不便。

83 :
なるほど
強化されたBookですか
こういう話は突き詰めると強さはBookに依存する事になっちゃうんですかね
現在最強のBookは何のソフトの誰が強化したものですか?

84 :
>>81
日本製なら77が紹介しているMasterReversiだろうね。
WZebraと同等以上の強さらしいし、ゲームとしての工夫もあって楽しめる。
誰か、リバーシソフトをきちんと評価できる人に、このMasterReversiの感想を
書いて欲しい。(俺自身は弱すぎて、「良さそうだ」としか言えない)

85 :
Wzebraの対局学習は何手読みでやるのがベストなんですか?

86 :
>>83
双方最善といわれているドロー進行に関しては量、質の両面からみて
おそらくRomano氏の作成したSaioのBookが最強だと思われる。
ただ、Saioを入手するとなるとデモ版でしか公開されてないから
評価精度、読みの深さ、読みきりの速さ、Bookなどが本家より劣るかも。
それと、本家Saio対戦してみてドローには強いけど序盤の変化には
対応不十分かなぁ・・・って印象を受けた。
序盤変化ありで中盤はNtest30手に近い読み、終盤33箇所空き付近から
ゼブラの必勝読みで引き分けや勝ちに持ち込んだこともあったから。
まぁそれはそれでかなり、稀なケースではあるけれども。

87 :
他所でも書き込んだが、ゼブラやヘラクレスがVistaで
動作するのか、とても気になる…。

88 :
当方Vista
ゼブラの動作に問題は認められない

89 :
しかし、PCやPSPはそうでもないのに
DSのオセロは何でああもどれもこれも弱いのばかりなんだ?
ラスボスですら、全部自分のコマにするのが容易

90 :
DSだから「気軽に簡単に」というスタンスで、意図的に弱くしているのかもな

91 :
開発力が無いだけ。
まあCPUパワーもかなり貧弱だけどな。

92 :
>>91
あんたプログラム組んだことないだろ。
そのセリフは、将棋や囲碁ならともかく、オセロのプログラムには通用せんぞ。

93 :
>>91-92
どっちも微妙に的を外してて笑える

94 :
CPUのせいならツクダだかどこだかが出してた
スーファミやGBのソフトよりも弱いのは説明つかない。
序盤から、単純に多くひっくり返せるところから追いてく組み方なんて
普通はありえねーよ
PSPやPCのリバーシソフトがファイアーエムブレムなら
DSのソフト群はサクラ大戦並の思考レベル

95 :
こしあん、もうちょっと一般人に理解しやすい例えにしてくれ。

96 :
http://miuras.net/pub/grad_thesis2006.pdf
この論文では静的評価関数のパラメータを7つ作っているようだけど
Zebra,Ntest,Edaxなどの強豪プログラムではどういうパラメータを
組み込んでいるのか非常に興味があります。
誰かこの辺に詳しい人はいませんか?
そもそもパラメータの数値を代入する式がどういうものかわからない・・・。

97 :
>>96
******** -------- -------- -------- *****--- ***-----
-*----*- ******** -------- -------- *****--- ***-----
-------- -------- ******** -------- -------- ***-----
-------- -------- -------- ******** -------- --------
-------- -------- -------- -------- -------- --------
-------- -------- -------- -------- -------- --------
-------- -------- -------- -------- -------- --------
-------- -------- -------- -------- -------- --------
*------- -*------ --*----- ---*---- ----*---
-*------ --*----- ---*---- ----*--- -----*--
--*----- ---*---- ----*--- -----*-- ------*-
---*---- ----*--- -----*-- ------*- -------*
----*--- -----*-- ------*- -------* --------
-----*-- ------*- -------* -------- --------
------*- -------* -------- -------- --------
-------* -------- -------- -------- --------
強豪プログラムはこれらの(全ての回転性・対称性を考慮した)パターン
から作ったインデックスを基本パラメータとしてる。
ただし一部では若干違うパターンを使ってるプログラムもある。
Zebraでは空きマス数の偶奇性(parity)を、Ntestでは偶奇性や着手可能箇所数(mobility)や
潜在的着手可能箇所数(potential mobiltiy)のパラメータをこれらに加えて使ってる。
最終的に静的評価関数が算出する評価値は予め用意したテーブルから各インデックスに対応する値を合算してる。
ZebraとNTestはソースコードが公開されてるから読むといい。
Edaxは概要すら公開されていないようなので不明だけど基本は同じだと思う。

98 :
>>97
どうもありがとう

99 :
コンピュータオセロってもう神領域(常に最善手可能)に入ったの?

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼