タグ

ブックマーク / hiyakashi.hateblo.jp (3)

  • MaybeCPSモナド - かしをろぐ

    2014-02-13 MaybeCPSモナド Haskell これね、新型のオスプレイ。 モナドはとても実用的な構造だ。モナドは単なる第一級手続きとは一線を画すものだ[要出典]。 Haskellという言語の上に新たな構文、制御構造、副作用を表現できる。自在手続きとでも言ってみようか。 そんなモナドだが、書き方によってはそのパフォーマンスが著しく低下してしまうことがある。 hoge :: Int -> Maybe Int hoge 0 = Nothing hoge i = hoge (i-1) >>= return このMaybeを返す単純な再帰関数は基底部に辿り着くまでに以下のような式を生成する。 (...(((Nothing >>= return) >>= return) >>= return) ... >>= return) 左結合で(>>=)がネストされていく様が見えるだろう。これを

    xef
    xef 2014/02/14
  • Hookモナド - かしをろぐ

    xef
    xef 2014/01/20
  • 遺伝子モナド - かしをろぐ

    2014-01-08 遺伝子モナド モナド遺伝子がすごいという話 乳がん細胞の逃亡を抑制する遺伝子を発見―新たな乳がん治療薬・抗がん剤の開発に期待 — 大阪大学 ではなくモナドを遺伝的アルゴリズムに使ってみたという話*1 遺伝的アルゴリズム(GA) 雰囲気ですぞwww 少年少女を100人ずつ用意します。 一生懸命歌っていただきます。 歌の上手い上位5人ずつを残して残りは抹殺します。 互いに交配して彼らの子供を男女100人ずつ用意します。 2〜4を何回も繰り返します。 どっかで停止し、その時一番うまかった一組を残して抹殺します。 残った2人が鏡音リン・レンです。 なんだってー!? 遺伝的アルゴリズムとは (イデンテキアルゴリズムとは) [単語記事] - ニコニコ大百科 GAに必要そうな要素を挙げると ランダムな初期個体の生成 個体の適応度評価 選択(selection) -- 次世代に残す

  • 1