
遺伝的アルゴリズムは与えられた問題を「設定されたテーマ」に従って解決策を導き出すというもの。コンピューターが何度も何度も試行して最適解と思われるものを探すため、人間が思いつかないような答えを導き出すことがあります。クリエイティブ・コーダーのジョエル・サイモン氏は、ある学校の間取りを遺伝的アルゴリズムを使って最適化しました。実際にどのような間取りに最適化されたのか、サイモン氏自らが解説しています。 Joel Simon http://www.joelsimon.net/evo_floorplans.html サイモン氏は遺伝的アルゴリズムを使って間取り図を最適化する「Evolving Floor Plans」と呼ばれる研究プロジェクトを行っています。同氏はプロジェクトの一環として、実際の学校の間取り図を遺伝的アルゴリズムで最適化することにしました。 以下の画像は最適化を行う前の学校の間取り図
明日から RubyKaigi なので、ちょっとした小ネタを一つ。 例えば、0 から 9999 までをハッシュに順に入れます。 h = {} 10000.times do |n| h[n] = true end このとき、h[9998] や h[9999] は、h[0] や h[1] より高速です。 どのくらい高速かというと、 1_000_000_000.times { h } # 40.8 sec (ループ自体の速度) 1_000_000_000.times { h[9999] } # 57.2 sec 1_000_000_000.times { h[0] } # 89.1 sech[0] は 89.1 - 40.8 = 48.3 nsec 、h[9999] は 57.2 - 40.8 = 16.4 nsec ということになります。なんと 3 倍も速い。*1 なぜこんなことが起きるのか ハ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く