DEAP(Distributed Evolutionary Algorithms in Python)1.2.2文檔(一)

DEAP文檔

(不準確翻譯,用于自學变汪,如若有誤請諒解康愤。原鏈接:https://deap.readthedocs.io/en/master/)

DEAP是一個新的用于快速驗證和測試新想法的演化計算框架嗡髓。它致力于直接地構建算法和數(shù)據(jù)結構的簡單化码泛。它可以很好地應用在并行機制中烹笔,例如多任務處理和SCOOP(這是啥裳扯?)中。下面的文檔將會展示許多關鍵概念以及構建你自己的演化算法時的一些特征谤职。

第一步

? ? 1饰豺、總覽(從這里開始)

? ? 2、安裝

? ? 3允蜈、如何進入端口?(porting guide)

基礎教程

? ? Part1:創(chuàng)造類型

? ? Part2:操作與算法

? ? Part3:記錄數(shù)據(jù)

? ? Part4:使用多進程

進階教程

? ? 遺傳程序設計(GP)

? ? 檢查點?(checkpoint)

? ? 收斂控制

? ? 針對最優(yōu)解的基準測試(BBOB)

? ? 與numpy的繼承關系

例子

庫引用

亮點 & 貢獻 & 相關

-----------------------------------------分割線------------------------------------

2018.09.02? 第一步

1冤吨、總覽

如果你已經(jīng)習慣于其他的演化計算框架,你將會發(fā)現(xiàn)我們在DEAP中所做的事情是不同的饶套。我們提供了創(chuàng)建適當類型的方法漩蟆,而不是限制你使用預定義類型。我們使得你能夠定制你的初始化選項而不是封閉它妓蛮。我們希望你能夠更明智地選擇一些操作而不是使用預定義好的怠李。我們允許你能夠寫一個適合于你自己需求的算法而不是僅僅提供許多封閉的算法。這個教程將通過說明DEAP的每一個程序組成來快速地展示DEAP的所有內(nèi)容蛤克。

2捺癞、類型

首先要做的事情是思考適合你問題的類型。然后构挤,不像之前的方法那樣為你提供一些可用類型的列表髓介,DEAP會為你構建適合你自己的。這個操作需要使用creator模塊儿倒。創(chuàng)建一個合適的類型可能聽起來很難版保,但是creator使得這個過程變得十分簡單。事實上夫否,這通常在單行操作上實現(xiàn)彻犁。例如:下面為一個最小值優(yōu)化問題創(chuàng)建一個FitnessMin class,并且會從剛剛設置好的適應度列表中再創(chuàng)造一個individual class

C1P1? ?

這就是它了凰慈!更多的創(chuàng)建類可以在基礎教程的Part1中找到汞幢。

3、初始化

一旦你創(chuàng)建了一個你需要為它們填充一些隨機值的類型微谓,DEAP可以通過簡單的方法去完成它森篷。Toolbox是一個包含了所有的初始化工具的容器,它可以做你需要它去完成任何事情豺型。下面代碼的目標就是去為個體和種群隨機地生成浮點數(shù)類型的初始值仲智。


C1P2

這個產(chǎn)生初始種群的生成功能,是通過個體自身不斷進行隨機生成完成的姻氨。這個功能和它的默認參數(shù)已經(jīng)被放入了toolbox中钓辆。例如,調用toolbox.population()將會有可能立即創(chuàng)建一個種群,更多的初始化方法將會在基礎教程的Part1中以及后面的例子中講到前联。

4功戚、操作

除了一些在tools模式下已經(jīng)設定好的東西以外,操作與初始化類似似嗤。一旦你選擇了一個最好的啸臀,簡單的在toolbox中注冊它們。除此之外你必須創(chuàng)造你的評估函數(shù)烁落,下面展示具體的做法


C1P3

這些已經(jīng)注冊的函數(shù)會被toolbox重命名乘粒,使得遺傳算法(廣義)不會依賴于操作的名稱。還要注意的是顽馋,適應度本身是可以迭代的谓厘,這就是為什么evaluate函數(shù)必須返回元組的原因。更多的細節(jié)在后面中會說到寸谜。

5竟稳、算法

現(xiàn)在一切都準備就緒了,我們可以自己來寫一個算法了熊痴。它通常在一個main()中執(zhí)行他爸。為了實現(xiàn)這個目標我們將簡單地寫一個迭代算法


C1P4

使用在algorithm中四個已有的算法也是可以的,或者在這個模塊中搭建一些其它區(qū)域的變化也是可行的果善。

6诊笤、總結

演化計算的步驟無非就是適應度函數(shù)設計+種群初始化+針對種群的操作(交叉變異等)+選擇與復制(輪盤賭等),設計不同的適應度函數(shù)以及不同類型的種群可以解決不同的問題巾陕。

在這一節(jié)中讨跟,教程大致介紹了上述四個核心步驟的基本操作,并給出了一個尋找最大和的實例鄙煤。

關鍵的步驟似乎均在toolbox中晾匠,無論是初始化還是遺傳操作還是最后的選擇,均可以使用toolbox對其進行register梯刚,一旦register一種方法凉馆,并搭建好計算框架便可以是一種新的模型,這可能就是前言中所說的“靈活性”亡资。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末澜共,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子锥腻,更是在濱河造成了極大的恐慌嗦董,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瘦黑,死亡現(xiàn)場離奇詭異展懈,居然都是意外死亡销睁,警方通過查閱死者的電腦和手機供璧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進店門存崖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人睡毒,你說我怎么就攤上這事来惧。” “怎么了演顾?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵供搀,是天一觀的道長。 經(jīng)常有香客問我钠至,道長葛虐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任棉钧,我火速辦了婚禮屿脐,結果婚禮上,老公的妹妹穿的比我還像新娘宪卿。我一直安慰自己的诵,他們只是感情好,可當我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布佑钾。 她就那樣靜靜地躺著西疤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪休溶。 梳的紋絲不亂的頭發(fā)上代赁,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天,我揣著相機與錄音兽掰,去河邊找鬼芭碍。 笑死,一個胖子當著我的面吹牛禾进,可吹牛的內(nèi)容都是我干的豁跑。 我是一名探鬼主播,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼泻云,長吁一口氣:“原來是場噩夢啊……” “哼艇拍!你這毒婦竟也來了?” 一聲冷哼從身側響起宠纯,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤卸夕,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后婆瓜,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體快集,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡贡羔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了个初。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片乖寒。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖院溺,靈堂內(nèi)的尸體忽然破棺而出楣嘁,到底是詐尸還是另有隱情,我是刑警寧澤珍逸,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布逐虚,位于F島的核電站,受9級特大地震影響谆膳,放射性物質發(fā)生泄漏叭爱。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一漱病、第九天 我趴在偏房一處隱蔽的房頂上張望买雾。 院中可真熱鬧,春花似錦缨称、人聲如沸凝果。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽器净。三九已至,卻和暖如春当凡,著一層夾襖步出監(jiān)牢的瞬間山害,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工沿量, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留浪慌,地道東北人。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓朴则,卻偏偏與公主長得像权纤,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子乌妒,可洞房花燭夜當晚...
    茶點故事閱讀 43,440評論 2 348

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,730評論 25 707
  • 帶頭頭出來吃午餐汹想,寫作業(yè)。 我昨天欠這人一頓薩莉亞撤蚊,今天中午補上古掏。等待送餐的過程中,我和頭頭分享自由書寫侦啸,分享我寫...
    一點小愛的黃山閱讀 257評論 1 1
  • 讀它吧槽唾! 做菜需要食譜丧枪,食材、佐料庞萍、火候拧烦、時間,有了方法和規(guī)則才能做出美味的食物挂绰,那么閱讀呢屎篱,我們都會閱讀,閱讀如...
    豌豆媽育兒閱讀 868評論 3 9
  • 今天上晚班葵蒂,早上7點起床,洗被子重虑,洗衣服践付,吃早餐,把事情做完了缺厉,才9:30,離上班還有那么長時間永高,好無聊啊,是不是...
    慧蘭閱讀 208評論 0 1