MATLAB遺傳算法工具箱Genetic Algorithm Toolbox的下載和安裝

  

1. 下載Genetic Algorithm Toolbox php

打開網頁http://codem.group.shef.ac.uk/index.php/ga-toolbox

若是你不能打開,在Shefield主頁http://www.shef.ac.uk/搜索‘Genetic Algorithm Toolbox’,直接下載 。 算法

這個是英國Sheffield大學推出的。 網絡

另一個常見的是美國北卡羅來納州立大學推出的,叫GAOT,Genetic Algorithm Optimization Toolbox,聽說前者覆蓋了後者。 函數


2.  解壓縮 Genetic Algorithm Toolbox.zip    

解壓後,你應該獲得一個genetic文件夾,若是不是,重命名爲genetic。 工具

3.  複製文件夾genetic 到C:\program files\MATLAB\r2010a\toolbox
r2010a是版本號,找你本身的版本號。若是你的MATLAB不是裝在C盤,找你本身的路徑。 


4.  將具箱路徑加入Matlab文件路徑之中 

運行MATLAB, File-->Set Path-->Add Folder,選擇C:\program files\MATLAB\R2010a\toolbox\ genetic文件夾加入該路徑系統中。 測試

若是你不能加載路徑,極可能是由於你沒有以管理員身份運行MATLAB。 spa

重啓MATLAB。 code

若是以上操做有問題,點擊FQA查看。 ip

注意,你在Sheffield大學網頁上下載到的GA工具箱是他們爲MATLAB4.2版本編寫的,它也能夠用於MATLAB後面全部的更高級的版本。 it



--------------------------------網絡上查來的GAOT安裝說明-------------------------------

最權威遺傳算法工具箱GAOT(goat)安裝方法    

1. 將GAOT工具箱文件拷貝至Matlab文件夾下,具體路徑爲: C:\program files\MATLAB\R2009a\toolbox。(也能夠放在其餘路徑,不必定放在toolbox裏面,好比C:\program files\MATLAB\R2009a也行)。   

2. 將GAOT工具箱路徑加入Matlab文件路徑之中。  流程爲:File-->Set Path-->Add with Subfolders。即,將C:\program files\MATLAB\R2009a\toolbox\gaot文件夾加入該路徑系統中。    

3.從新啓動Matlab,運行。   

4.可是在從新啓動後,你會發如今命令窗口,會出現以下警告

Warning: Name is nonexistent or not a directory: \afs\eos\info\ie\ie589k_info\GAOT   

解決方案:打開gaot文件夾下的startup.m,這裏面寫着「path(path,'\afs\eos\info\ie\ie589k_info\GAOT');」  只要將「\afs\eos\info\ie\ie589k_info\GAOT」改成goat當前所在的目錄,即「C:\program files\MATLAB\R2009a\toolbox\gaot」就能夠了   

5. 測試是否安裝成功

 在命令窗口輸入:edit ga  

出現以下函數:function [x,fval,exitFlag,output,population,scores] = ga(fun,nvars,Aineq,bineq,Aeq,beq,lb,ub,nonlcon,options)  

此時你會發現這是MATLAB自帶的ga函數,並非你想要的工具箱中的ga函數,這樣會在之後應用工具箱編寫程序是發生錯誤。   

解決上述問題的方法:  爲了統一,無論你是高版本仍是低版本,均可以經過將GAOT工具箱中的ga重命名爲gaot_ga(名字能夠隨你定,可是不能改成大寫GA,緣由是MATLAB會默認大小寫函數是同一個函數,不信你能夠用edit ga和edit GA驗證),來實現解決上述問題。   

7.另外針對《MATLAB神經網絡30案例分析》中的案例(第27章),用的就是此工具箱,但好多書友運行都出現必定相似的錯誤問題,下面是解決方法:  

(1)按照上述1-6的步驟安裝好GAOT工具箱   

(2)將程序中全部ga改成gaot_ga,另外出於有些同窗剛運行程序是對程序不瞭解,不知道在de_code.m中也是用了ga,因此在這提醒不到要改外部的ga函數,還要把調用的嵌套在調用函數內部的ga改掉。

相關文章
相關標籤/搜索