[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re: [jfriends] Re: Boardインスタンスの使い方




小薮です。

On Thu, 06 May 1999 19:13:26 +0900
in [jfriends] Re: Boardインスタンスの使い方
Kazuya Maebashi <maebashi@xxxxxxxxxx> wrote:

> >Boardオブジェクトの内部に、ここまでのヒストリーをすべて
> >持たせたらいかがでしょう。
> >幸いオセロはパスを除くと最大60手しかかかりませんので、スタックを
> >固定長配列で実装しても、8×8×61の要素数しか必要ありません。
> 
> なるほど。そういう手はありますね。手当たり次第に打ってみては、
> Boardにundoしてもらうわけですね。人間向けのundoにも応用でき
> ますし。
> 
> ただ、盤面の状態を得るのに、いちいちBoardのメソッドを呼ぶと
> なると、これまた効率に悪影響が...
> 
> # 私も普段ならこんなに効率を気にしたりはしないのですが、この
> # 手のゲームの思考ルーチンは、高速化すればするほど先読みの深
> # さを深くすることができるので、実行効率が強さに直結してしま
> # います。

それはそうですが、オセロを作るそもそもの目的が

> うちの会社の中で、JavaとUMLの勉強会みたいなのをしているとこ
> ろがあって、そこで、今度、練習問題として、オセロゲームを作る
> そうな。

ということであれば、まあいいのでは?

本気で強いオセロを作るのであれば、別次元のチューニングが
必要になってきますよねぇ?
思考ルーチンを複数のクラスにはまたがらせずに、データは
すべて自前で持たせるとかになるんじゃないでしょうか。
その際には、取得したBoardインスタンスから自前のデータ構造に
中身をコピーすればいいと思います。


> クラス構造だけML上で話していてもアレなので、いっちょ実装して
> アプレットとソースをWebで公開しようかしらん、とは考えたので
> すが...
> 
> それやっちゃうと、ツクダオリジナルに怒られる... んですよね。
> やっぱり。
> 
> オセロのページなんて山ほどありますが、万一にも、Java互助会に
> ご迷惑をおかけするわけにはいきませんので、やめときます。
> 
> # それとも、
> # ・オセロは登録商標なので、ゲーム名さえ変えてしまえば問題なし。
> # ・似たようなルールの違うゲームにすれば(8×8じゃなくて10×10
> #   にするとか)問題なし。
> # のいずれかだったりするのでしょうか?

リバーシという名前で、中身はオセロというゲームは
よくみかけます。名前を変えれば問題ない・・んじゃないかと
思いますけど、権利関係のことですから確認はした方が
いいでしょうね。


-----------------------------------
koyabu@xxxxxxxxxx