LogicalInSpace

ITについて

将棋ソフトの悩み

2009-02-28 12:49:31 | 将棋ソフト
将棋ソフトを作りたいとぼんやりと考えています。

開発言語は、VB.NET 2008 or VC#.NET 2008です。

変化を読む時に、n分木(多分木)を使うと思います。
2分木ならば、アルゴリズムの本があるので、分かるのですが、n分木だとあまりイメージが出来ません。
おそらく、構造体にすると思いますけど、どのような構造体にすれば、よろしいのでしょうか?

画像の部分も、悩んでいます。
自分で駒を作成したいのですが、どのように駒を作るのでしょうか?
何かソフトを作るのでしょうか?

ご存じの方は、教えて下さい。

ASP.NET 3.0

2009-02-03 20:36:48 | Web言語
ASP.NET 3.0を試しに作ろうと思いました。

1)VC# .NET 2008よりWebで作成
2)IISを設定
3)URLにアップする

の手順ですると思いますけど、Webで作成したフォルダをIISのフォルダに入れるだろうと思いますけど、どんなフォルダを入れるのか分かりません。
IISの設定も、ASP.NET 1.0、1.1、2.0、3.0、3.5とありどんな風に設定をするのか分かりません。
URLにアップする場合は、DNSの知識も必要になるのでしょうか?

いろいろと複雑に絡んでいて、よく整理が出来ていません。
どなたかご教授頂けないでしょうか?

<動作環境>
XP Professional(IIS 6.0) または Vista Ultimate(IIS 7.0)(2台あります)
Visual Studio .NET 2002 C#.NET Standard
Visual Studio .NET 2003 Professional
Visual Studio .NET 2005 Professional
Visual Studio .NET 2008 Professional
がインストール済みです。

<XP>
Core 2 Quad Q6700 2.66GHz メモリ4GB
<Vista>
Core 2 Duo E8400 3.00GHz メモリ4GB

コードを拝見(Bonanza)

2009-02-02 00:55:19 | 将棋ソフト
Bonanzaのソースをざっと拝見しました。
DLには、数時間かかりました。 私の家はADSL(50M)です。

完全にC言語で書かれていました。
Windows、LinuxなどOSでも対応が出来るように公開しているようです。

コメントがないので、どんな処理をしているのかは、良く見ないと分からないようになっています。
でも、一通りの処理はあるようです。

当たり前ですが、C言語を完全に理解している方が対象になります。

Bonanzaのソース

2009-02-02 00:54:32 | 将棋ソフト
ものぐさ将棋観戦記ブログよりBonanzaのソースが公開されたことを知りました。

まだ、DL(ダウンロード)をしていないので、具体的なソースコードまでは見ていないので何とも言えません。


ものぐささんが、疑問に思っていることについて
将棋ソフト界のみならず、オープンソースのこととも関係してくる問題である。
オープンソースについては、個人の見解でオープンにするしないは決定して良いので、特に問題ははずです。
たしか、著作権の問題になれば、保木さんにあると思いました。

ボナンザのソースを、ちょっとだけ変えて、新しいソフトだと主張することは許されるのか。コンピューター将棋選手権に出場できるのか。
選手権には、思考部分にはオリジナルが必要であると明記しているので、Bonanzaをそのまま改良して、使用することは禁止されているはずです。
思考部分にオリジナルな部分で改良して出場することは問題ないと思います。

改良を部分的に加えたとして、簡単に強くなるものなのか。
どの程度の熟練知識のある人間が、成果を挙げる可能性があるのか。
評価関数部分を、将棋のことをよく理解している人間がいじると、飛躍的に強くなったりするのだろうか。

プログラムについて、深い理解が必要なので、簡単には強く出来るような物でもないと思います。
Bonanzaは、C言語を使用しているので、C言語の深い理解が必要となります。
将棋も、棋力がアマ有段者以上ないと手の分岐をどうのようにするのか? そこの部分が1番悩ましいと思います。
ソフトの思考部分をAI(Artificial Intelligence)と言いますが、AIの部分に評価関数などが含まれます。
AIの部分をどこまで改良を出来るかが課題になると思いますけど、C言語と棋力(アマ有段者)と必要となるので、飛躍的には強くなるとは考えにくいです。
逆に考えて、C言語と棋力(アマ有段者)の両方が出来る方はどれくらいいるのでしょうか? 将棋人口のごく一部だと思います。

補足:保木さんの場合は、C言語とチェスの両方が分かっていたので、チェスの文献を参考に出来たので、チェスを応用して出来ました。

※LogicalInSpaceの個人的な見解で書いていますので、もし間違いなどがあれば、ご指摘をお願い致します。