« 2005年9月 | トップページ | 2005年11月 »

2005/10/26

50戦やってみた

私が50戦打ってみた。
まだ、全然回数が少ないが、結果は
1位 12回
2位 11回
3位 7回
4位 20回
ぼろ負け。うれしいのか?悲しいのか。

しかし、押し引き判断を結構大雑把に修正しただけだが、ヤバイくらいに強くなった気がする。

これでオーラス間際の攻防を強化し、押し引きの判断の更なる詳細化、鳴きの攻防を強化できたら、恐ろしい強さになる予感。第一弾の公開版では上記の修正をすべて行なうつもりは無い。けれど、どれもやって出来ない道理はないので第2弾以降にはやってみたい。

| | コメント (2) | トラックバック (0)

2005/10/24

リーチ条件の修正完

リーチしない条件の修正完。
あまり、該当するケースが無いようにも思うけど目立つところなので修正しておくべきだろうな。

それと、押し引き修正後に私が31戦やってみた

順位 回数
1位 8
2位 5
3位 5
4位 13
平均順位 2.74

これだけ見ると結構強そうだけど、回数が少ないからなんともいえない。
それに、自分で作ったゲームで遊んでると負けたほうがむしろうれしかったりするんで、無意識に手を抜いてる可能性もある。

あす以降オーラス間際の、ラスのベタオリと無駄な安め鳴きを行なわないように修正する。

| | コメント (0) | トラックバック (0)

2005/10/22

リーチ条件の修正中

いままで、常に即リーだったのを修正中。

とりあえず、以下の条件でリーチしないようにする。

オーラスの和了トップ
ダマで4飜以上
供託リーチ棒が多さ
待ちの悪い単騎待ちの

単騎待ちの場合以外は修正済み。あすは、単騎待ちの場合について修正予定。

かなり試し打ちをしているけれど、そこそこ強くなってきた。もうちょっとだな。

| | コメント (0) | トラックバック (0)

2005/10/18

WEBを見廻ってみると…

リーチ時の押し引き判断修正。
改良後のCOM雀士の半荘平均で+1000点以上の差が出ているので結構強くなったと思う。いままではいくらなんでも守備的過ぎた。

今後の作業としては、評価関数についてはあと以下の3つの変更は行なう予定。

リーチの判断の調整(オーラス付近のトップ目と、ダマでマンガン近くある場合)
オーラス付近の4着の意味の無い鳴き和了を防ぐ。
4飜見えてる鳴き仕掛けの対策

そこまで済んだらとりあえず、評価関数関係は一度機能フリーズ。GUIがらみ(キーボード、カーソル、点数表示ダイアログ、手出しツモギリなど)の修正など、第一弾の公開に向けた作業に移行したい。

ところで、WEBを見回してみると結構フリーの麻雀ソフトっていっぱいあるな。
似たようなことやってる人(期待値ベースの牌効率、ベタオリの強化などにこだわっている人など)もいるみたい。あまり、公開しても意味が無いかもな。

| | コメント (0) | トラックバック (0)

2005/10/14

風邪ひいた

季節の変わり目で風邪をひいてしまった。つらいっす。
ってブログ書いてる場合じゃないな……

| | コメント (0) | トラックバック (0)

2005/10/13

押し引き判断改造ほぼ済み

先日から集計したデータをベースに押し引き判断の基準を攻撃寄りに変更した。
しかし、1順あたりのベタオリ時放銃率を0.3%程度変更しただけでかなり判断基準がずれるので非常に微妙。
見ている感じでは、まあ確かにプログラムを組み込む前のアルゴリズムとの違いは見受けられるんだけれど、印象としては小さい差に思えたので結果にあまり差が出ないんじゃないか?とその時点では感じていたんだが…

いざ、千本勝負やってみると、数時間やっている時点で古い雀士1人VS新しい雀士1人の収支差で、大体404(単位:千点)程度の差がついている。もうちょっと、攻撃よりに調整するつもりだけれど、そこそこ成果はでているのかな。

tuppa

総ステップ数:11561

| | コメント (0) | トラックバック (0)

2005/10/10

オリウチ率集計

今作っているゲームで、ベタオリしたときにどの程度の割合で振り込むのかデータを取ってみた。
oriuti_sample


意外と平均失点に差が無い感じを受けた。
さて、これを元に押し引きの判断を変更したい。しかし難しいな。どうやればいいんだろう。

ちなみに、このグラフでは分からないけれど、現物0枚&字牌もスジも0枚の時の放銃率は14.2%くらい。
(あまり意味のある比較では無いけれど)これは奇しくも第2超ランの平均放銃率とほぼ同じ。

2005/10/11さらに追記:
子vs子なら、ドラ1役なしの両面&両面の一向聴なら無スジ2,8程度の危険度はリーチに通していいということか。うーん、なんだか突っ張りすぎな気もするが。。。

| | コメント (2) | トラックバック (0)

2005/10/02

待ち形ごとの放銃率を考慮したロジックを追加

待ち牌ごとに異なる相手の放銃率を考慮するように期待値型評価関数を修正。また、混一モードの字牌鳴きの微調整を実施。上記の修正だけでもそこそこ強さがアップした気がする。

 それと、ドでかいバグが2件あり修正。
1.チーしたときに鳴いた牌を横にするけど、その牌を間違っている。
2.場に見えている牌の数を数えるロジックが間違ってた。
こんなバグが残ってるとは……まったくもって情け無い話。


 さて、明日以降は、オリすべきかどうかの判断の再調整を実施したい。とつげき東北氏の本だとベタオリしたときの放銃率は0と想定して計算しているので、どうしてもベタオリ有利気味の結論がでている感じがする。だから、私なりにデータをとって計算をしなおしたいと思っている。 そのために、降り打ちする確率を求める統計データを取りたい。
 しかし、どうやって実施しようか悩み中。今作ってるゲームで取るのはそれなりに簡単だけど、出来れば東風荘のデータからとりたいところ。東風荘のログから集計しようとなると、東風荘のログを再生するプログラムが必要になる。今回は、1手づつちゃんと局面再現させて、手牌の分析もしなければいけない。いままでも東風荘のログからデータを取ってはいるけれど、もっと単純な方法でやっていたので、1手づつ局面を再生するプログラムをすでに作っていたわけではない。なので今回のために、新たに結構ガリガリとプログラムを書かないとまずいかも。
 そして、これがすごく厄介だが、ベタオリしているかどうかをどうやって判断するのかを考えなければいけない。さあどうやって実現するべきか……

総ステップ数:11220

| | コメント (2) | トラックバック (0)

« 2005年9月 | トップページ | 2005年11月 »