0

ずっと考えていたテーマについての質問です。ブルートフォース検索または進化的プログラミングのいずれかで複合プロセスを利用することは可能ですか? かなり難しいことがわかっていますが、私は現在これに取り組んでいます。

前提は、通常の普通預金口座で複利が決定される方法と幾分似た複利プロセスを利用できるはずであるということです。

私は次の方法で進化的アルゴリズムを実装しようとしています。

A には新しいシステムを生成する能力があり、「生成」適合度は 5.0 です (つまり、生成するシステムは A 自体の 5 倍の効果があります) - A が B を生成し、次に B が C を生成する場合、システムの適合度 (有機体)はそのように合成する必要があります

A = 5.0

B = 5.0 * A = 25.0

C = 25.0 * B = 625.0

このヒューリスティックをコードに実装するのを手伝ってくれる人はいますか? (Ruby または疑似コード)

現時点で私が持っているのはこのようなものです

乱数を生成するメソッドを持つ system というクラスがあります。2 番目に生成された乱数と一致する乱数をより適切に生成できる新しいシステムを進化させたいと考えています。2 番目に生成された乱数を「予測」 (最初の乱数) と一致させることに成功したシステムのスコアは増加し、失敗したシステムのスコアは減少します。

次に、システムは「子」システムを生成します。これも前述の方法でテストされますが、ここでは、子システムの適合性を生成システムの「生成」適合性として利用します。これにより、どの「システム」が成功したシステムを生み出すかを知ることができます。

ランダムに生成された数を予測できるスポーン システムに最適なシステムを簡単に判断できますが、スポーン システム (そのシステムをスポーンするシステム) をスポーンする能力についてスポーン システムを評価する方法については確信が持てません。適合度の決定は再帰的である可能性があると信じています。

最後に、システムの「適合性」の最終的な決定は、生成されたシステムの予測能力に依存するため、「産卵」適合性の複合はどのように方程式に影響を与えるのでしょうか?

また、Ruby が使用する PRNG と一致する PRNG を進化させると、PRNG は Ruby の基礎となるアルゴリズムの PRNG と一致するように段階的に進化します。時間 1 では、予測しようとしている PRNG から 1 つの情報が得られます。これにより、その時間ステップで 1/1 または 100% のモデルが得られます。次に、タイムステップ 2 で 2 番目の情報を取得すると、タイムステップ 2 ではタイムステップ 2 の前よりも 100% 多い情報が得られるため、予測能力は 200% になるはずです (タイムステップ 2 で 100% 追加情報 0、100 % タイムステップ 2 での追加情報。元のシステムの 2 倍の予測能力を残します。

私の質問を読んでくれてありがとう。何かお手伝いできることがあれば、とても感謝しています。

ご不明な点がございましたらお知らせください

前もって感謝します

よろしく

マーティン

4

1 に答える 1

0

乱数生成アルゴリズムにどれだけ「近い」かを知る方法がないため、検索アルゴリズムでこれを行うことはできないと思います。乱数に近い値は、基礎となるアルゴリズムに近づいていることを実際に証明するよりも偶然の一致である可能性が高くなります。

これをおもちゃのプロジェクトとして行う場合は、適応度関数を作成できるデータセットを使用します(進化的プログラミングの場合)。一般的なデータセットは、スパム検出、画像認識、ユーザー設定などです。

于 2012-05-11T13:53:38.597 に答える