人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

[将棋の必勝法探求]こんにちは、m-shoのサブアカウントです。
コンピュータ将棋を作成する上で、適しているコンピュータ言語(開発環境)を教えてください。
1.有料無料問わず、一番適していると思われる言語は何だと思いますか?
2.フリーの言語で、一番適していると思われる言語は何だと思いますか?
3.開発がしやすく、動作速度等、バランスが良さそうなフリーの言語を教えてください。
4.言語の違いをわかりやすく教えてください。
いずれか1つの質問にお答えいただいてもかまいません。
URLは、言語のサイトか、比較サイト等、関連深いURLを入力してください。
コメントは言語と、それを選んだ理由を記入してください。
自信がなくてもかまいません。
たくさんの回答をお待ちしています。
初期ポイントはMAXで、URLとコメントの質により、独断で配分します。
質問はすぐに終了しませんので、じっくりと回答していただいた方が嬉しいです。

●質問者: s-time
●カテゴリ:コンピュータ 学習・教育
✍キーワード:こんにちは コメント コンピュータ サイト サブアカウント
○ 状態 :終了
└ 回答数 : 7/7件

▽最新の回答へ

1 ● ToMmY
●28ポイント

http://homepage1.nifty.com/Ike/usapyon/

「うさぴょん 〜将棋を革命する力を〜」

ここの例ではC++ですね。

基本的に思考アルゴリズムを言語にフィットするように直すだけだと思いますのでCでもJavaでもはてはBrainfuckまで何でもかけると思いますw

でも将棋じたいではLOGがのびたり、よそうしない手を打たれたりしたときの処理が簡単なようにすくなくともC++クラス以上のオブジェクト指向言語のほうが楽でしょう。

ウェブページなどで動かすのでしたらJavaで組むのがらくでしょうし、一般的アプリケーションとして組むならC++やC#などある程度ユーザーが多ければ使いやすいとおもいます。

http://d.hatena.ne.jp/yaneurao/20060105

やねうらお-よっちゃんイカ(ry - コンピュータ将棋の進歩5

ここに載ってる本も参考資料としては優秀かとおもいます

◎質問者からの返答

ToMmY様、回答ありがとうございます。

プログラムは何でもかけるとは思いますが、その中で処理速度の速いものや、かきやすいものや、配布がしやすいものや、データベースとの連携がとりやすいものや、投資金額が少ないものを探しています。

コンピュータ将棋の本やサイトの紹介も参考になります。

C++クラス以上のオブジェクト指向言語は他にどんなものがあるでしょうか?

ウェブページで動かして、データ収集をしようと思っているので、Javaになりますかね?


2 ● Baku7770
●27ポイント

http://bach.istc.kobe-u.ac.jp/prolog/intro/

Introduction to Prolog (in Japanese)

私が開発を依頼されて選択するとして、将棋そのものをProlog、ASPとしての通信インタフェース、MMIをJAVAで、設計でDBを使う場合はC系列で作成します。

◎質問者からの返答

Baku7770様、回答ありがとうございます。

Prolog:AI用言語ですかー

初めて知りました。

勉強してみます。


3 ● jyouseki
●27ポイント

http://www.computer-shogi.org/wcsc15/

$@Bh(J15$@2s@$3&%3%s%T%e!<%?>-4}A*<j8"(J</p>

このページの[参加チーム]の所をクリックしてみてください。

世界でトップの将棋プログラムを競う大会で、使われている言語はC++が圧倒的に多いので、やはり向いているといえます。

http://524.teacup.com/yss/bbs

???????????????????η????

この掲示板には日本でトップレベルのコンピュータ将棋プログラマーが集まっています。

初心者が書込んでもわからないことは親切に教えてくれます。

http://www32.ocn.ne.jp/~yss/index_j.html

YSSと彩のページ

コンピュータ将棋に関する情報が非常に豊富なページです。参考にしてみてください。

http://www.computer-shogi.org/reference/

$BJ88%(J

コンピュータ将棋に関する情報を詳しく知るためには専門書を読むのが近道です。

http://www.computer-shogi.org/enter.html

$@%3%s%T%e!<%?>-4}6(2q$N0FFb(J

コンピュータ将棋協会の会員になると専門的な資料が手に入ります。

入会しても大会や例会に参加をしなければいけないというものではありません。

http://www.computer-shogi.org/

?R???s???[?^????????

◎質問者からの返答

jyouseki様、回答ありがとうございます。

やはり、C++ですかねー

何故、C++が有利なのか答えられる方、いらっしゃいますか?

コンピュータ将棋に関する情報を多数紹介していただき、大変参考になります。


4 ● jyouseki
●27ポイント

http://esearch.rakuten.co.jp/rms/sd/esearch/vc?sv=30&v=2&...

【楽天ブックス】 の検索結果:本/オンライン書店

『コンピュータ将棋の進歩5』という書籍を私は読みました。この中で「TACOS」という将棋ソフトは、ライバルソフトの「激指」開発チームが考え出した「実現確率打ち切りによる探索アルゴリズム」を採用したところ、飛躍的に強くなったとあります。

コンピュータ将棋の開発者は「いずれはプロ棋士に勝つ」という共通の目的を持っているために、ライバル間でも画期的アイディアを惜しげもなく提供するようなことが行われています。

他の人の考えたアイディアを自分のソフトに実装しようとした場合、言語は同じである方が安易なのは当然ですね。

そんなわけで多くの将棋プログラマはC++を使っているのでしょう。

将棋の必勝法解析がもしできたら、世界に推定数百人いる将棋プログラムの開発者の存在意義がなくなります。

昨年の「コンピュータ将棋選手権」で全勝優勝した「激指」は東京大学大学院の研究室で開発されています。日本で最高レベルの頭脳の持ち主が何人も何年かけて進化させてきたソフトです。それでも完全解析は、遥かに遠い目標です。

それだけの高い壁を越えるには、どの言語がいいかではなく、ハードも言語も開発できるくらいの実力が必要ではないでしょうか。

http://www.jaist.ac.jp/~t-hashi/TACOS/

コンピュータ将棋 TACOS のホームページ

http://www.logos.t.u-tokyo.ac.jp/~gekisashi/index.html

$B>-4}%W%m%0%i%`!V7c;X!W$N%Z!<%8(B

◎質問者からの返答

jyouseki様、再回答ありがとうございます。

素人プログラマの考えですが、探索アルゴリズムは、どの言語でも記述できるのではないでしょうか?

言語の違いは、記述のしやすさや、処理速度の違いに表れるのではないでしょうか?

私は、必勝法の探求が目的であって、思考ルーチンの開発だけにはおさまりません。

もちろん、ハードの開発ができる立場なら、それを検討する可能性もあります。

ただ、実績がありませんので、実績を積むのが先ですね。

私が一生かけて取り組みたい夢です。

ハードの性能が急激に上がるのであれば、必勝法は100%解析できます。

最低でも、自分のプログラムが自分の棋力を超えるところまでは到達したいですね。


5 ● Motamota
●27ポイント

http://www.benedict.co.jp/Smalltalk/talk-21.htm

歴史上最大のチェスゲーム 〜ディープブルー〜 /週刊スモールトーク

>何故、C++が有利なのか

C/C++が選ばれがちな最大の理由は、C/C++コンパイラで生成したコードが、多くの場合最も

計算速度が速いからでしょう。


C/C++のコーディングは難易度が高く、プログラム技法に手をとられてアルゴリズムに

集中しづらいという欠点があります。


しかし将棋やチェスのアルゴリズムでは「計算量の爆発」が起こることが用意に推測できますから、

限られた時間内で次の一手を出さなければならないゲーム用としては、GUIはともかく演算は

C/C++ということになると思います。

http://homepage2.nifty.com/Fujimaki/download/Comparison/

主な開発ツールの数値計算速度比較

各言語・ツールの速度については比較しているサイトがいろいろありそうです。

◎質問者からの返答

Motamota様、回答ありがとうございます。

Visual C++が高速みたいですね。

他にも同意見や違う意見を募集します。


1-5件表示/7件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ