忍者ブログ
趣味と実益を兼ねて将棋のプログラムを作ってみたいなと思っている私の試行錯誤や勉強したことを綴ってゆく予定です。 一番の目的はソフトウェア設計やオブジェクト指向に慣れること ・・・だったのですが、元々の興味や電王戦に触発されたこともあり、AI製作も目指してみたいと今は考えています。 ※はてなに移転しました。
カレンダー
04 2024/05 06
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
プロフィール
HN:
cwron
性別:
男性
自己紹介:
将棋の腕前はムラがあるのでなんとも言えませんが、将棋ウォーズや81Dojo基準だと約三段てことになってます。リアルで指す機会が希少です。
Share
ブログ内検索
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

実装レベルに近いお話。

拍手[0回]

http://www31.ocn.ne.jp/~kfend/inside_kfend/data_structure.html

まだすべてを見たわけではありませんが、AI側の都合なども頭に入れてあげる必要性を感じますね。UI部分とAI部分の分離手段としてメジャーなUSIプロトコルは色々アレだ、という評判のようですし。将棋のことはある程度知っていても、AIを作る人の都合、、、「世界」を知らないと良いモノは作れませんしね。私としては人間にもAIにも適応しやすいモノを作りたいので。

さらっとどういう機能(インタフェース)が欲しいかを知り、要件をつめていくつもりです。
上記のサイト様から引用しますと、例えば、
・局面のハッシュデータが欲しい
・損得の評価値が欲しい
AI作成者としてはこうした機能が欲しいようです。

前者はその機能をどこかしかるべきクラス、あるいはインタフェースで定義する必要があるな、というのがわかりますし、
後者については少なくともシステム内部の表現・・・生データを渡すようなインタフェースではAI側の実装を制限してしまい、不便なわけです。少なくとも、システム内部の表現は「プレイヤー側」からは見えないようにしなければ、ということは言えそうです。

まあこのへんの話は考えればすぐに思いつきそうなあたりではありますけどね。
なにぶん経験がありませんし。それに、一見すると「当たり前じゃん」と思っているような部分こそ、軽視せずにちゃんと認識して、文字や図に落とし込む作業というのが大事なのではないかなと考えます。


・・・ただ、開発のハウツーやノウハウを知らない私としては
プログラムをちょこちょこ作りながら考えていく方が効率的じゃない?
という気持ちもかなり強いです。
クラスを作ってみることで「ああ、このへん全然考えてなかったな」って振り返ることができますし。実際どうするのがよいのでしょうね。

***
引用サイト様
 将棋プログラムKFEnd
  URL > http://www31.ocn.ne.jp/~kfend/index.html
***
2012/06/24(Sun)
 Ver.1 投稿
PR
お名前
タイトル
文字色
URL
コメント
パスワード
Vodafone絵文字 i-mode絵文字 Ezweb絵文字
Copyright © nounai.output(spaghetiThinking); All Rights Reserved
Powered by ニンジャブログ  Designed by ピンキー・ローン・ピッグ
忍者ブログ / [PR]