遺伝的アルゴリズムを勉強している時にふと思ったのですが、
このアルゴリズムは株よりも競馬のほうが適合している気がしましたので、忘れないうちに備忘録として。
2014年12月8日月曜日
2014年12月7日日曜日
巡回セールスマン問題にアニメーションを付けてみる
前回pythonで巡回セールスマン問題をとく遺伝的アルゴリズムを作成したのですが、
最終結果だけの巡回順路を与えられても、うまいこと進化しているのかがわかりにくいです。
そこで、進化の過程をアニメーションで表示させてみようと思います。
最終結果だけの巡回順路を与えられても、うまいこと進化しているのかがわかりにくいです。
そこで、進化の過程をアニメーションで表示させてみようと思います。
2014年12月6日土曜日
pythonで遺伝的アルゴリズムの練習2 --巡回セールスマン問題
前回に引き続き、遺伝的アルゴリズムの例題をもう一つ解いてみようと思います。
今回は巡回セールスマン問題を解きます。
巡回セールスマン問題とは、例えば5つの都市があったとして、すべて都市を1回づつ訪問しようと思っている場合、
どのような順番で都市を回れば最短ルートで行くことができるのかという問題です。
都市の数が5つぐらいなら総当りでなんとかなるのですが、30、50となってくると、
組み合わせが階乗になるのでとても総当りできません。
そこで、この問題を解くのに様々な方法があるのですが、その方法の1つとして遺伝的アルゴリズムが使われています。
遺伝的アルゴリズムでは、最適解を出すことは難しく、
最適解に限りなく近い解しか出すことができませんが、いい練習になると思います。
今回は巡回セールスマン問題を解きます。
巡回セールスマン問題とは、例えば5つの都市があったとして、すべて都市を1回づつ訪問しようと思っている場合、
どのような順番で都市を回れば最短ルートで行くことができるのかという問題です。
都市の数が5つぐらいなら総当りでなんとかなるのですが、30、50となってくると、
組み合わせが階乗になるのでとても総当りできません。
そこで、この問題を解くのに様々な方法があるのですが、その方法の1つとして遺伝的アルゴリズムが使われています。
遺伝的アルゴリズムでは、最適解を出すことは難しく、
最適解に限りなく近い解しか出すことができませんが、いい練習になると思います。
2014年12月4日木曜日
pythonで遺伝的アルゴリズムの練習--ナップザック問題
今回は、以前からやろうと思っていました遺伝的アルゴリズムの練習としてナップザック問題を解いてみようと思います。
ナップザック問題は例えば、遠足にお菓子を持って行く場合カバンに10kgまでしか入らないとした時、どのような組み合わせでお菓子を選択することがいいかを探求する問題です。
様々な解き方があるようですが、遺伝的アルゴリズムで解く練習問題として一般的なようです。
登録:
コメント (Atom)