国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

MATLAB遺傳算法工具箱的研究與應(yīng)用

2013-09-21 08:30:56呂德文
時(shí)代農(nóng)機(jī) 2013年3期
關(guān)鍵詞:工具箱適應(yīng)度交叉

呂德文

(大連大學(xué)機(jī)械工程學(xué)院,遼寧 大連 116622)

遺傳算法(Genetic Algorithm)是一類借鑒生物界的進(jìn)化規(guī)律(適者生存,優(yōu)勝劣汰遺傳機(jī)制)演化而來的隨機(jī)化搜索方法。它是由美國的J.Holland教授1975年首先提出,其主要特點(diǎn)是直接對結(jié)構(gòu)對象進(jìn)行操作,不存在求導(dǎo)和函數(shù)連續(xù)性的限定;具有內(nèi)在的隱并行性和更好的全局尋優(yōu)能力;采用概率化的尋優(yōu)方法,能自動獲取和指導(dǎo)優(yōu)化的搜索空間,自動適應(yīng)地調(diào)整搜索方向,不需要確定的規(guī)則。遺傳算法的這些性質(zhì),已被人們廣泛地應(yīng)用于組合優(yōu)化、機(jī)器學(xué)習(xí)、信號處理、自適應(yīng)控制和人工生命等領(lǐng)域,是現(xiàn)代有關(guān)智能計(jì)算中的關(guān)鍵技術(shù)。

MATLAB語言是一種面向科學(xué)與工程的高效率高級語言,它的語法規(guī)則簡單、更貼近人的思維方式、通俗易懂。MATLAB語言有著豐富的各種工具箱,MATLAB的優(yōu)化工具箱提供對各種優(yōu)化問題的一個(gè)完整的解決方案,遺傳算法優(yōu)化工具箱就是其中之一。采用MATLAB遺傳算法優(yōu)化工具箱,不僅具有簡單、易用、易于修改的特點(diǎn),且為解決許多傳統(tǒng)的優(yōu)化方法難以解決的參數(shù)優(yōu)化、非線性、多峰值之類的復(fù)雜問題提供有效的途徑,為遺傳算法的研究和應(yīng)用提供很好的應(yīng)用前景。

1 遺傳算法

遺傳算法模擬從低級到高級的演化過程,即從初始群體出發(fā),采用優(yōu)勝劣汰、適者生存的自然法則選擇個(gè)體,通過交叉編譯來產(chǎn)生下一代群體,逐代演化,知道產(chǎn)生滿足條件的個(gè)體為止,其流程圖如圖1。①確定待優(yōu)化的參數(shù)范圍,并對搜索空間進(jìn)行編碼;②隨機(jī)產(chǎn)生包含各個(gè)個(gè)體的初始種群;③將種群中各個(gè)個(gè)體解碼成對應(yīng)的參數(shù)值,用解碼后的參數(shù)求解適應(yīng)度函數(shù),運(yùn)用適應(yīng)度函數(shù)評估各個(gè)個(gè)體的適應(yīng)度;④對收斂條件進(jìn)行判斷,如果已經(jīng)找到最佳個(gè)體,則停止,否則繼續(xù)進(jìn)行遺傳操作;⑤按適應(yīng)度進(jìn)行選擇操作,讓適應(yīng)度大的個(gè)體在種群中占有較大的比例,一些適應(yīng)度較小的個(gè)體將會被淘汰;⑥隨機(jī)交叉,兩個(gè)個(gè)體按一定的交叉概率進(jìn)行交叉操作,并產(chǎn)生兩個(gè)新的子個(gè)體;⑦按照一定的變異概率變異,使個(gè)體的某個(gè)或某些位的性質(zhì)發(fā)生改變;⑧重復(fù)步驟③至⑦,直至滿足終止條件。

圖1 遺傳算法流程圖

2 遺傳算法工具箱

遺傳算法工具箱(GAOT)包括許多實(shí)用的函數(shù),這些函數(shù)按照功能可分為以下幾類:主界面函數(shù)、選擇函數(shù)、演化函數(shù)、其它的終止函數(shù)、二進(jìn)制表示函數(shù)、演示程序等。

MATLAB的遺傳算法工具箱核心函數(shù)GAOTV5其主程序ga.m提供遺傳算法工具箱與外部的接口。在MATLAB環(huán)境下,執(zhí)行g(shù)a.m并設(shè)定相應(yīng)的參數(shù),就可完成優(yōu)化。

工具箱中遺傳算法的主函數(shù)為:

[x fval]=ga(@fitnes s fcn,nvars,options)

其中,輸出參數(shù):①x:返回的最終點(diǎn);②fval:適應(yīng)度函數(shù)在x點(diǎn)的值。

輸入?yún)?shù):①@fitnessfun:計(jì)算適應(yīng)度函數(shù)的M文件的函數(shù)句柄;②nvars:適應(yīng)度函數(shù)中變量個(gè)數(shù);③options:參數(shù)結(jié)構(gòu)體。

輸入?yún)?shù)結(jié)構(gòu)體options具有缺省值,可以利用缺省參數(shù)運(yùn)行遺傳算法,調(diào)用語句如下:

[x fval]=ga(@fitnes s fcn,nvars)

每一個(gè)參數(shù)的值都存放在參數(shù)結(jié)構(gòu)體options中,例如options.Populationsize在結(jié)構(gòu)體中的缺省值為20,如果需要設(shè)置Populationsize的值等于100,可以通過下面的語句進(jìn)行修改:

options=gaoptimset(‘pulationSize’,00)

這樣,參數(shù)Populationsize的值為100,其他參數(shù)的值為缺省值或當(dāng)前值。這時(shí),再輸入:

ga(@fitnessfun,nvars,options)

函數(shù)ga種群中個(gè)體為100運(yùn)行遺傳算法。

為了得到遺傳算法更多的輸出結(jié)果,可以使用下面的語句調(diào)用ga:

[x fval reason output population scores]=ga(@fitnessfcn,nvars)

除了x和fval之外增加了四個(gè)輸出變量:①reason:法停止的原因;②output:算法每一代的性能;③population:最后種群;④scores:最后得分值[6]。

3 算例

求具有兩個(gè)獨(dú)立變量的Rastrigin函數(shù)的最小值。參數(shù)設(shè)置:種群大小為25,交叉率為0.85,變異率為0.15,最大迭代次數(shù)為50。

經(jīng)過計(jì)算,其返回結(jié)果為X=[0.00809,0.00155],F(xiàn)val=0.0134472869。由實(shí)驗(yàn)結(jié)果可以看出,使用MATLAB遺傳算法工具箱求解函數(shù)優(yōu)化問題,函數(shù)可以有效地收斂到全局最優(yōu)點(diǎn),并且具有收斂速度快和結(jié)果直觀的特點(diǎn)。

4 結(jié)論

MATLAB具有強(qiáng)大的矩陣運(yùn)算能力,利用MATLAB遺傳算法工具箱可以對傳統(tǒng)優(yōu)化算法難以實(shí)現(xiàn)全局優(yōu)化的函數(shù)進(jìn)行優(yōu)化。本文的實(shí)驗(yàn)結(jié)果驗(yàn)證了MATLAB遺傳算法優(yōu)化工具箱能高效、靈活地求解復(fù)雜函數(shù)的優(yōu)化問題,并且收斂速度快,求解的精度高。

猜你喜歡
工具箱適應(yīng)度交叉
改進(jìn)的自適應(yīng)復(fù)制、交叉和突變遺傳算法
“六法”巧解分式方程
連一連
Matlab曲線擬合工具箱在地基沉降預(yù)測模型中的應(yīng)用
基于空調(diào)導(dǎo)風(fēng)板成型工藝的Kriging模型適應(yīng)度研究
中國塑料(2016年11期)2016-04-16 05:26:02
基于Fast-ICA的Wigner-Ville分布交叉項(xiàng)消除方法
搜狗分號工具箱 輸入更便捷
雙線性時(shí)頻分布交叉項(xiàng)提取及損傷識別應(yīng)用
少數(shù)民族大學(xué)生文化適應(yīng)度調(diào)查
小熊的工具箱
永修县| 息烽县| 鸡泽县| 伊春市| 共和县| 新蔡县| 望奎县| 台南县| 遂平县| 惠水县| 古田县| 陆川县| 西畴县| 轮台县| 霸州市| 宜章县| 柞水县| 宁城县| 正镶白旗| 社旗县| 灵宝市| 乐安县| 锦州市| 张北县| 邢台市| 略阳县| 柳州市| 淮南市| 台东县| 胶州市| 察隅县| 寿宁县| 西和县| 东辽县| 绥阳县| 青海省| 石家庄市| 宿迁市| 阜新市| 延庆县| 黄平县|