ぴたすちお、一人麻雀練習機などの自作フリーソフトの配布、数独などのパズル、麻雀、その他もろもろ
あらのHP 数独まにあ エクセルまにあ 麻雀研究所 賢く儲ける株式投資 お釣り ダイエット なたでぽぽ FX

RedTotoの操作方法


はじめに

TDSの理論で述べたように、削減マトリックスを求めるための理屈は非常に単純なものです。しかし、素朴なアルゴリズムによる探索ではダブル、トリプルの数が多くなるに従い、その計算量は爆発的に大きくなります。よって実際にはなんらかの手法によって近似解を求めることになります。RedTotoは私がTDSを開発するにあたり、削減マトリックスを求めるためのツールとして自分専用に作ったものです。しかし、1人で探索していてもなかなか良い近似解が得られないので、皆さんに公開して探索を手伝ってもらおうとの考えに至りました。RedToto.exeはHomeからダウンロードできます。以下にこのツールの使い方を書いておきますので、削減効率のページに書いてあるものより良い結果が得られたという方は知らせて頂けるとうれしいです。

操作方法

RedTotoを立ち上げると以下のような画面が出てきます。まず左上のDoubleとTripleを指定して下さい。3等保証の削減を行う場合はその下のチェックボックスをチェックします。そして右に並んでいる全探索、簡易探索、ランダム、SA、Tabuのいずれかのボタンを押して探索を開始します。この図はTabuで探索を行った結果を示しています。探索に飽きたら中止ボタンを押して探索を中止して下さい。以下各手法について簡単に説明します。

全探索

可能な全ての組み合わせをチェックします。必ず最適解が得られることが保証されています(私のプログラムが正しければ...)。ただし計算時間はとてつもなくかかりますので、ある程度ダブル、トリプルの数が多くなると現実的な時間では結果はでません。CPUを持て余している人は是非これを使って探索し、その結果を送って下さい。

簡易探索

全探索では時間が掛かりすぎるので、近似解でがまんしようという場合に用いる探索です。2等保証の組み合わせが得られるまで、次の点数付けルールに従って最高点数を付けられたものを加えていきます。下の表はダブル1、トリプル1の場合で、Aはすでに加えられています。点数は、そのシングルを加えることで新たに何通りの組み合わせがカバーできるか、によって付けます。つまり水色の丸の数です。この例の場合はD、E、Fのどれか1つを加えることになります。

    00 01 02 10 11 12 点数
A 00     --
B 01     1
C 02     1
D 10     2
E 11     2
F 12     2

全探索と同じく何度実行しても同じ結果が得られます。計算時間は桁違いに速いですが、それでも組み合わせがあまり多いと結構な時間が掛かります。そのため私は数十秒で計算が終わるようなところまでしか実行していません。もしかしたらこの探索で削減効率のページに書いてあるものより良い結果が得られる事があるかも知れません。

またこのアルゴリズムは私が適当に作ったものであり、当然他にもいろいろな考え方ができます。なにか良いアイデアがあるという方は是非お知らせ下さい。

ランダム

ランダムな探索を行います。条件が満たされるまで乱数によって選ばれたものを組み合わせに追加していきます。上2つとは違い実行する度に異なる結果がでます。当然のことながら、運がよければ簡易探索での結果よりも良い近似解が得られる可能性があります。ということは多くの人が多くの時間実行してくれれば、それだけ良い結果がでる可能性が高くなるということです。私自身はまだあまりランダムな探索はやっていませんので、しばらくの間は結構簡単に記録が更新されていくのではないかと期待しています。

SA

Simulated Annealing (SA:シミュレーテッドアニーリング:焼きなまし法)ライクな探索を行います。まずランダムと同様に、条件が満たされるまで乱数によって選ばれたものを組み合わせに追加していきます。そして、冗長なシングルをいくつか追加、無駄がなくなるまで冗長なものを削除、を繰り返します。一度に追加するシングルの数はボタン左のエディットボックスで指定できます。ランダムによる探索よりも多少効率が良いようです。

Tabu

Tabu search (タブーサーチ)を行います。左のエディットボックスにタブーリストの長さ、右のエディットボックスに目標とするシングルの本数を入れてください。長時間探索して結果が変わらなくなってしまった場合、局所解につかまっている可能性があります。そんなときは一度探索を中断して、もう一度始めからやり直して見てください。

Matrix

Matrix methodです。

結果の送り方

RedTotoで探索を行ったら、その結果と削減効率のページに書いてある数字とを比較して下さい。そしてもしもより良い削減マトリックスを発見したのであれば、是非私まで送って下さい。

送るべきファイルはRedToto.exeと同じフォルダに??_??_??.txtという名前で作成されています。??は左から2等保証か3等保証か(12か11)、ダブルの数、トリプルの数を示します。例えばDouble 5、Triple 3、3等で満足チェックはオフ、の条件で実行したとすれば、その結果は12_05_03.txtに格納されます。このファイルを添付ファイルとしてara@cocoa.freemail.ne.jp宛にメールをして下さい。また本文の方にはどの手法で発見したのかを書いて下さい。また、記録を更新してくれた方のお名前などを更新履歴に掲載させて頂きますので、

もお知らせ下さい。

その他

RedTotoはフリーソフトです、ご自由にお使い下さい。ただし良い結果が得られた場合にはそれを送って下さい。送られてきた結果は集計し、将来のTDSで使用させてもらいます。

動作環境はWindows 95/98/Me/NT4.0/2000のつもりです。動作確認はWin2000でのみ行っています。もともとが私専用のつもりで作ったものなので、バグや使いづらい点など多々あるものと思いますが、メールを頂ければ出来る範囲で対応します。


このページに対するご意見ご感想は (ara999 あっと gmail.com ) までお願いします

あらのHP 数独まにあ エクセルまにあ 麻雀研究所 賢く儲ける株式投資 お釣り ダイエット なたでぽぽ FX