質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

Q&A

解決済

1回答

2234閲覧

遺伝的アルゴリズム

bigfatrat

総合スコア187

アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

0グッド

1クリップ

投稿2015/03/12 10:34

最近、全件検索を要するかもしれない要望に当たってしまいました。
全件検索と言ってもデータベース全ての意味ではなく、想定される全てのパターンから最適解を見つけるようなものです。

とある判定ツールなのですが、馬鹿正直にロジックを考えてもなかなか閃かないので全パターン全てチェックするしかないかな、と考えた次第です。

そこで遺伝的アルゴリズムと言う単語を思いだしたのですが、
遺伝的アルゴリズムはどのような事に使うのが向いているのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

遺伝的アルゴリズムの使い道としては、AIがよく挙げられます。
遺伝的アルゴリズムの基本としては、
遺伝子データ(通常は数列かバイナリでしょうか)を元に動作等を決定するプログラムを作り、一定の基準でその遺伝子の評価を行います。
評価基準に基づき、優性遺伝子とする数値、または該当フラグを立て、次代に遺伝させていきます。
この際、評価とは関係なく遺伝子を弄る場合があります。(突然変異的に)
この動作実行、評価、遺伝を並列に複数行っていく事により、評価基準をより良く満たす遺伝子データを模索するのが、遺伝的アルゴリズムの基本になります。

その上で、全件検索を行うアルゴリズムで遺伝的アルゴリズムによる優性パターンを模索するのは、あまり現実的とは言えません。
なぜなら、そういったものは通常、検索対象データ自体が大きく可変である為、対象が変わった場合にも確実に優性であると言える評価基準を設定することが難しいからです。
また、継続的にシステムとして利用する場合、ある時点での優性遺伝子を利用することになると思いますが、検索アルゴリズムに限って言えば、長く研究されてきた分野である点と、非常にロジカルな分野である点から、理論的に考えるものを安定的に超える事はほとんど無いでしょう。
(Google検索等の一部評価には、ある程度そういった技術が応用されているかもしれませんが、ごく一部の例です)

ただ、私が想像しているものと、bigfatrat様の考えているものが全く違うかもしれませんので、それが最初の説明にうまく合致するようなものであれば、是非チャレンジしてみて下さい。
判定ツールとの事なので、それぞれの状況に応じて固有の数値等を、全ての要素に関連性を持たせたうえで出せて、それについての評価基準を元に優性、劣勢の遺伝子を判別可能であれば、それはそれで面白いツールが作れるかもしれませんね。

以上、ご参考になれば幸いです。

投稿2015/03/12 16:34

utun

総合スコア384

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

bigfatrat

2015/03/12 22:59

はい、試しに簡単なものを自宅で作ってみると実際面白いものができました。 なので逆に業務で使えるかは特にシビアに見ておきたいな、と思っています。 そして、utunさんの説明に合致するものではありませんでした。 データが動的に代わるので次世代に残せる情報が5分後には無駄な物になってしまいます。 データを設定するサポートは出来ますが、データを設定する為に使うのは現状難しそうです。
bigfatrat

2015/03/13 10:22

蛇足ですが 遺伝的アルゴリズムは 単体テストの難易度がヤバそうなので諦めました。 アルゴリズム自体は面白そうなので自分用ツールや趣味で使う程度に止めるのが無難ですかね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問