亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Matlab遺傳算法優(yōu)化工具箱的應(yīng)用*

        2014-07-31 20:42:39劉國(guó)春趙武云
        機(jī)械研究與應(yīng)用 2014年2期
        關(guān)鍵詞:工具箱遺傳算法函數(shù)

        劉國(guó)春,費(fèi) 強(qiáng),趙武云,戴 飛

        (1.酒泉奧凱種子機(jī)械股份有限公司, 甘肅 酒泉 735000; 2.甘肅農(nóng)業(yè)大學(xué), 甘肅 蘭州 730070)

        基于Matlab遺傳算法優(yōu)化工具箱的應(yīng)用*

        劉國(guó)春1,費(fèi) 強(qiáng)2,趙武云2,戴 飛2

        (1.酒泉奧凱種子機(jī)械股份有限公司, 甘肅 酒泉 735000; 2.甘肅農(nóng)業(yè)大學(xué), 甘肅 蘭州 730070)

        主要介紹了Matlab遺傳算法優(yōu)化工具箱的特點(diǎn)和功用。根據(jù)其在函數(shù)求解優(yōu)化的作用,結(jié)合非線(xiàn)性函數(shù)問(wèn)題的優(yōu)化實(shí)例進(jìn)行函數(shù)求解,利用Matlab神經(jīng)網(wǎng)絡(luò)工具箱對(duì)求解結(jié)果進(jìn)行驗(yàn)證,說(shuō)明了遺傳算法工具箱相比其它編程工具大大簡(jiǎn)化了編程工作, 優(yōu)化結(jié)果更加準(zhǔn)確。

        遺傳算法;Matlab;優(yōu)化;神經(jīng)網(wǎng)絡(luò)

        0 引 言

        遺傳算法在應(yīng)用過(guò)程中必須要編制大量的程序進(jìn)行優(yōu)化計(jì)算, 因而對(duì)不同的專(zhuān)業(yè)人員應(yīng)用該方法帶來(lái)不便。Matlab語(yǔ)言是一種高效率的用于科學(xué)工程計(jì)算的高級(jí)語(yǔ)言, 它的語(yǔ)法規(guī)則簡(jiǎn)單,更貼近人的思維方式,通俗易懂,簡(jiǎn)便易學(xué)[1]。尤其是Matlab軟件有著豐富的各種專(zhuān)業(yè)的工具箱供各專(zhuān)業(yè)應(yīng)用。其中,較有名的工具有英國(guó)Sheffield 大學(xué)Peter Fleming教授等開(kāi)發(fā)的遺傳算法工具箱;另一個(gè)是美國(guó)北Carolina州立大學(xué)ChistopherHouck 等開(kāi)發(fā)的工具箱GAOT[2]。此外,在Matlab中提供了一個(gè)遺傳算法與直接搜索工具箱(gads),可用命令行調(diào)用或用圖形用戶(hù)界面(GUI)進(jìn)行使用,也可添加自己編制的函數(shù)進(jìn)一步增加功能[3]。 Matlab添加了對(duì)約束條件的處理,只需編制相應(yīng)的約束函數(shù)的M文件即可,使其應(yīng)用功能進(jìn)一步增強(qiáng)。因此基于Matlab的遺傳算法工具箱的推出,可以為不同的專(zhuān)業(yè)領(lǐng)域解決問(wèn)題提供更加方便和簡(jiǎn)潔的操作。

        1 遺傳算法

        1.1 遺傳算法原理

        遺傳算法是由美國(guó)Michigan大學(xué)的John Holland教授在20世紀(jì)60年代提出的,它是模擬生物在自然環(huán)境中的遺傳和進(jìn)化過(guò)程而形成的一種自適應(yīng)全局優(yōu)化概率搜索算法[4-5]。理論基礎(chǔ)來(lái)源于生物的自然選擇理論和基因遺傳學(xué)原理。它是將問(wèn)題域的可行解看作是群體的/染色體0, 將其置于問(wèn)題的/環(huán)境0中, 根據(jù)適者生存的原則, 從中選擇出適應(yīng)環(huán)境的/染色體0進(jìn)行復(fù)制, 即再生, 通過(guò)交叉、變異兩種基因操作產(chǎn)生出新一代更適合環(huán)境的/染色體0群,這樣一代代不斷改進(jìn), 最后收斂到一個(gè)最適合環(huán)境的個(gè)體上,求得問(wèn)題的最佳解。遺傳算法提供了一種求解復(fù)雜系統(tǒng)優(yōu)化問(wèn)題的模式,它不依賴(lài)于問(wèn)題的具體領(lǐng)域,對(duì)問(wèn)題的求解種類(lèi)有很強(qiáng)的魯棒性, 現(xiàn)已幾乎滲透到從工程到社會(huì)科學(xué)的諸多領(lǐng)域, 廣泛用于函數(shù)優(yōu)化、組合優(yōu)化、生產(chǎn)調(diào)度、機(jī)器學(xué)習(xí)、自動(dòng)控制、圖像處理和人工生命等領(lǐng)域[6]。

        1.2 遺傳算法的特點(diǎn)

        (1) 不是從一個(gè)點(diǎn)開(kāi)始搜索最優(yōu)解,而是從一個(gè)種群開(kāi)始進(jìn)行并行搜索,搜索軌道有多條,具有良好的并行性,因而可有效地防止搜索過(guò)程收斂于局部最優(yōu)解, 更利于搜索到全局最優(yōu)解。

        (2) 遺傳算法只需利用目標(biāo)函數(shù)的取值信息,無(wú)需梯度等高價(jià)信息和其它信息,對(duì)問(wèn)題的依賴(lài)性小,因而適用于大規(guī)模、非線(xiàn)性函數(shù)優(yōu)化及無(wú)解析表達(dá)式的目標(biāo)函數(shù)的優(yōu)化, 有較廣的應(yīng)用性。

        (3) 遺傳算法的擇優(yōu)機(jī)制是一種軟決策, 加上其良好的并行性, 使它具有良好的全局優(yōu)化性能和穩(wěn)健性。

        (4) 遺傳算法采用概率搜索技術(shù), 是一種不確定性的搜索方法,不同于傳統(tǒng)的確定性的搜索方法, 更有利于得到最優(yōu)解[7]。

        1.3 遺傳算法在函數(shù)優(yōu)化中的應(yīng)用

        函數(shù)優(yōu)化是遺傳算法的經(jīng)典應(yīng)用領(lǐng)域,也是遺傳算法進(jìn)行性能評(píng)價(jià)的常用算例,許多人構(gòu)造出了各種各樣復(fù)雜形式的測(cè)試函數(shù):連續(xù)函數(shù)和離散函數(shù)、凸函數(shù)和凹函數(shù)、低維函數(shù)和高維函數(shù)、單峰函數(shù)和多峰函數(shù)等。對(duì)于一些非線(xiàn)性、多模型、多目標(biāo)的函數(shù)優(yōu)化問(wèn)題,用其它優(yōu)化方法較難求解,而遺傳算法可方便的得到較好的結(jié)果。

        2 遺傳算法工具箱(GA Toolbox)[8-10]

        Matlab遺傳算法工具箱(GAOT)實(shí)現(xiàn)遺傳算法的步驟和其他編程語(yǔ)言實(shí)現(xiàn)遺傳算法的流程一樣,也需解決編碼方式、初始群體的建立、選擇算子、交叉算子、變異算子、評(píng)價(jià)函數(shù)及終止標(biāo)準(zhǔn)等問(wèn)題,遺傳算法工具箱GAOT包括了許多實(shí)用的函數(shù), 這些函數(shù)按照功能可分為以下幾類(lèi):主界面函數(shù)、選擇函數(shù)、演化函數(shù)、其它的一些終止函數(shù)、二進(jìn)制表示函數(shù)、演示程序等等.Matlab的遺傳算法工具箱核心函數(shù)GAOT V5其主程序ga.m提供了遺傳算法工具箱與外部的接口。在Matlab環(huán)境下,執(zhí)行g(shù)a.m并設(shè)定相應(yīng)的參數(shù),就可完成優(yōu)化GAOT通過(guò)編寫(xiě)GA.m基本操作的M文件和主程序的M文件來(lái)實(shí)現(xiàn)和改進(jìn)GA.m。他首先對(duì)優(yōu)化問(wèn)題進(jìn)行分析,建立優(yōu)化數(shù)學(xué)模型,定義適應(yīng)函數(shù)(對(duì)于約束優(yōu)化問(wèn)題,還需確定約束條件,給出約束函數(shù))。然后利用文件編輯器將這些函數(shù)寫(xiě)入到能返回函數(shù)值的M文件中,這樣就把函數(shù)表達(dá)式寫(xiě)入Matlab系統(tǒng)中。最后在命令窗口執(zhí)行M文件,就可得到優(yōu)化解。

        3 應(yīng)用實(shí)例

        問(wèn)題一:在x∈[-1,1]條件下對(duì)下列函數(shù)分別求最小值Fun1min ,Fun2min ,Fun3min,。

        (1) 建立fun1.m ,fun2.m,fun3.m無(wú)約束函數(shù)文件,保存在我的文檔/matlab文件夾下。

        Fun1:function f=fun1(x)

        f=-99.58+0.022*x(1)+0.030*x(2)+0.012*x(3)+0.0008*x(4)-0.021*x(1)^2-0.018*x(2)^2+0.080*x(3)^2-0.016*x(4)^2+0.004*x(1)*x(2)+0.0025*x(1)*x(3)+0.005*x(1)*x(4)-0.015*x(2)*x(3)-0.015*x(2)*x(4)-0.0025*x(3)*x(4);

        Fun2:unction f=fun2(x)

        f=4.30+0.18*x(1)+0.25*x(2)+0.032*x(3)+0.12*x(4)+0.16*x(1)^2+0.15*x(2)^2+1.1*x(3)^2+0.18*x(4)^2+0.087*x(1)*x(2)-0.038*x(1)*x(3)-0.06*x(1)*x(4)-0.23*x(2)*x(3)-0.077*x(2)*x(4)+0.07*x(3)*x(4);

        Fun3:function f=fun3(x)

        f=0.46+0.019*x(1)+0.029*x(2)+0.006*x(3)+0.011*x(4)+0.016*x(1)^2+0.018*x(2)^2+0.11*x(3)^2+0.016*x(4)^2+0.01*x(1)*x(2)+0.003*x(1)*x(3)-0.005*x(1)*x(4)-0.01*x(2)*x(3)-0.008*x(2)*x(4)+0.005*x(3)*x(4);

        (2) 打開(kāi)Matlab程序-點(diǎn)擊框圖左下角的start-點(diǎn)擊toolboxes-點(diǎn)擊Genetic Algorithm and direct search-點(diǎn)擊Genetic Algorithm tool(gatool)。分別對(duì)上述三個(gè)無(wú)約束函數(shù)進(jìn)行最優(yōu)化求解,在工具箱中設(shè)置solver為ga-Genetic Algorithm ,fitness function指要求解的目標(biāo)函數(shù)如@fun1設(shè)置變量數(shù)number of variables為4,區(qū)間為lower:[-1 -1 -1 -1] upper:[1 1 1 1],點(diǎn)擊start開(kāi)始運(yùn)行,三個(gè)函數(shù)求解運(yùn)行結(jié)果如圖1~3所示。

        (3) 運(yùn)用Matlab神經(jīng)網(wǎng)絡(luò)工具箱對(duì)求解結(jié)果進(jìn)行驗(yàn)證,打開(kāi)Matlab程序-點(diǎn)擊框圖左下角的start-點(diǎn)擊toolboxes-點(diǎn)擊more-點(diǎn)擊optimizationtool,分別對(duì)上述三個(gè)無(wú)約束函數(shù)進(jìn)行最優(yōu)化求解,在工具箱中設(shè)置solver為fmincon-constrained nonlinear minimization,Algorithm為active set,Objiective function指要求解的目標(biāo)函數(shù)如@fun1,設(shè)置起點(diǎn)start point為[0 0 0 0],區(qū)間為lower:[-1 -1 -1 -1],upper:[1 1 1 1],點(diǎn)擊start開(kāi)始運(yùn)行,三個(gè)函數(shù)求解運(yùn)行結(jié)果如圖4~6所示。

        圖1 Fun1 圖2 Fun2

        圖3 Fun3 圖4 Fun1的驗(yàn)證

        圖5 Fun2的驗(yàn)證 圖6 Fun3的驗(yàn)證

        (4) 兩種算法結(jié)果分析

        兩種算法結(jié)果對(duì)照如表1所列。

        表1 兩種算法結(jié)果對(duì)照

        問(wèn)題二:對(duì)非線(xiàn)性不等式約束函數(shù)最優(yōu)化求解。

        已知:x∈[-1,1],Cx≤0

        0.8fun1min≤fun1≤1.2fun1min

        0.8fun2min≤fun2≤1.2fun2min

        fun1-1.2fun1min≤0

        -fun1+0.8fun1min≤0

        fun2-1.2fun2min≤0

        -fun2+0.8fun2min≤0

        所以編寫(xiě)新的約束函數(shù)M文件myfun3_c.m:

        function c=myfun3_c(x)

        c=[-99.58+0.022*x(1)+0.030*x(2)+0.012*x(3)+0.0008*x(4)-0.021*x(1)^2-0.018*x(2)^2+0.080*x(3)^2-0.016*x(4)^2+0.004*x(1)*x(2)+0.0025*x(1)*x(3)+0.005*x(1)*x(4)-0.015*x(2)*x(3)-0.015*x(2)*x(4)-0.0025*x(3)*x(4)-119.65353;99.58-0.022*x(1)-0.030*x(2)-0.012*x(3)-0.0008*x(4)+0.021*x(1)^2+0.018*x(2)^2-0.080*x(3)^2+0.016*x(4)^2-0.004*x(1)*x(2)-0.0025*x(1)*x(3)-0.005*x(1)*x(4)+0.015*x(2)*x(3)+0.015*x(2)*x(4)+0.0025*x(3)*x(4)+79.75686;4.30+0.18*x(1)+0.25*x(2)+0.032*x(3)+0.12*x(4)+0.16*x(1)^2+0.15*x(2)^2+1.1*x(3)^2+0.18*x(4)^2+0.087*x(1)*x(2)-0.038*x(1)*x(3)-0.06*x(1)*x(4)-0.23*x(2)*x(3)-0.077*x(2)*x(4)+0.07*x(3)*x(4)-4.9;

        -4.30-0.18*x(1)-0.25*x(2)-0.032*x(3)-0.12*x(4)-0.16*x(1)^2-0.15*x(2)^2-1.1*x(3)^2-0.18*x(4)^2-0.087*x(1)*x(2)+0.038*x(1)*x(3)+0.06*x(1)*x(4)+0.23*x(2)*x(3)+0.077*x(2)*x(4)-0.07*x(3)*x(4)+3];

        求函數(shù)的最小值及對(duì)應(yīng)的x1、x2、x3、x4和fun1,fun2的值。運(yùn)用兩種算法求解結(jié)果如圖7、8和表2所示。

        圖7 遺傳算法求解結(jié)果 圖8 神經(jīng)網(wǎng)絡(luò)求解結(jié)果

        算法函數(shù) 遺傳算法工具箱求的結(jié)果神經(jīng)網(wǎng)絡(luò)工具箱求的結(jié)果myfun30.5872260.5872283Fun1-99.4800-99.48001Fun25.4791045.4792693

        從問(wèn)題一和問(wèn)題二的結(jié)果對(duì)照表中,可得出兩者算法的結(jié)果誤差率小于0.1%,二者結(jié)果近似相等,說(shuō)明遺傳算法算出的結(jié)果真實(shí)可行。從兩者算法的過(guò)程及圖形上可得出遺傳算法過(guò)程簡(jiǎn)單,效率更高,不用設(shè)置起點(diǎn),算法更加全面,結(jié)果更加準(zhǔn)確。

        4 結(jié) 語(yǔ)

        實(shí)例表明,基于 Matlab 的遺傳算法優(yōu)化工具箱提供了一個(gè)標(biāo)準(zhǔn)的、可擴(kuò)展的、簡(jiǎn)單的算法,對(duì)于難以定義或不便于進(jìn)行數(shù)學(xué)建模優(yōu)化的問(wèn)題, 該工具箱具有很好的適用性( 它不需要對(duì)目標(biāo)函數(shù)的相關(guān)信息有所了解),同時(shí)有較快的收斂速度和較高的計(jì)算精度,使用者可避免繁重的編程工作,提高計(jì)算效率。

        [1] 陳永春. Matlab M語(yǔ)言高級(jí)編程[M].北京:清華大學(xué)出版社,2004.

        [2] 雷英杰,張善文.Matlab遺傳算法工具箱及其應(yīng)用[M].西安:西安電子科技大學(xué)出版社, 2005.

        [3] 薛定宇,陳陽(yáng)泉.高等應(yīng)用數(shù)學(xué)問(wèn)題的Matlab解法[M].北京:清華大學(xué)出版社,2004.

        [4] 周琛琛.基于Matlab遺傳算法工具箱的函數(shù)優(yōu)化問(wèn)題求解[J].現(xiàn)代計(jì)算機(jī),2006(12): 84-86.

        [5] 周正武,丁同梅,田毅紅,等.Matlab 遺傳算法優(yōu)化工具箱(GAOT)的研究與應(yīng)用[J].機(jī)械研究與應(yīng)用,2006,6(19):69- 71.

        [6] 張德豐.Matlab神經(jīng)網(wǎng)絡(luò)應(yīng)用設(shè)計(jì)[M].北京:機(jī)械工業(yè)出版社,2009.

        [7] 陸澤浩.基于遺傳算法的人工智能優(yōu)化研究[J].廣西輕工業(yè),2012(4):77-80.

        [8] 許 波,余建平,彭志平,朱興統(tǒng),等.改進(jìn)非支配排序遺傳算法求解多目標(biāo)Agent聯(lián)盟[J].系統(tǒng)仿真學(xué)報(bào),2012(9):1-5.

        [9] 呂亭亭,馬小平,陳 力,等.基于遺傳算法優(yōu)化的跳汰機(jī)排料系統(tǒng)YID控制仿真[J].工礦自動(dòng)化,2013(1):67-70.

        [10] 朱永強(qiáng),魯聰達(dá).齒輪的遺傳算法優(yōu)化設(shè)計(jì)[J].機(jī)械研究與應(yīng)用,2003,2(16):46-50.

        Application of Genetic Algorithm Optimization Toolbox Based on Matlab

        LIU Guo-chun1, FEI Qiang1, ZHAO Wu-yun1,DAI Fei2

        (1.GansuJiuquanOKSeedMachineryCo.,Ltd,JiuquanGansu735000,China;2.GansuAgriculturalUniversity,LanzhouGansu730070,China)

        The characteristics and functions of MATLAB genetic algorithm optimization toolbox is mainly introduced . According to its function for solving optimization effect, combined with the optimization of nonlinear functions function model, using the MATLAB neural network toolbox to solve were tested, the results shows that genetic algorithm toolbox compared to other programming tools greatly simplify the programming, the optimization results are more accurate.

        genetic algorithm; Matlab; optimization; neural network

        2014-02-24

        “十二五”國(guó)家科技支撐計(jì)劃項(xiàng)目“西北綠洲農(nóng)牧循環(huán)技術(shù)集成與示范”(編號(hào):2012BAD14B10)。

        劉國(guó)春(1972- ),男,甘肅金塔人,工程師,碩士,主要從事種子加工技術(shù)方面研究工作。

        趙武云(1966- ),男,甘肅蘭州人,教授,碩導(dǎo),主要從事農(nóng)業(yè)工程技術(shù)與裝備研究方面的工作。

        TP301.6

        A

        1007-4414(2014)02-0071-03

        猜你喜歡
        工具箱遺傳算法函數(shù)
        二次函數(shù)
        第3講 “函數(shù)”復(fù)習(xí)精講
        二次函數(shù)
        函數(shù)備考精講
        基于自適應(yīng)遺傳算法的CSAMT一維反演
        一種基于遺傳算法的聚類(lèi)分析方法在DNA序列比較中的應(yīng)用
        基于遺傳算法和LS-SVM的財(cái)務(wù)危機(jī)預(yù)測(cè)
        Matlab曲線(xiàn)擬合工具箱在地基沉降預(yù)測(cè)模型中的應(yīng)用
        基于改進(jìn)的遺傳算法的模糊聚類(lèi)算法
        搜狗分號(hào)工具箱 輸入更便捷
        日本中文字幕精品久久| 成年女人免费v片| 免费a级毛片无码a∨免费| 一本到无码AV专区无码| 女同性恋精品一区二区三区| 亚洲av精品一区二区| 免费在线亚洲视频观看| 就爱射视频在线视频在线| 内射人妻视频国内| 少妇高清精品毛片在线视频| 中文字幕无码无码专区| 亚洲免费av电影一区二区三区| 中文字幕亚洲乱码熟女在线| 国产一级二级三级在线观看av| 东北老女人高潮大喊舒服死了| 国产亚洲日韩欧美久久一区二区| 日本人妻av在线观看| 91精品国产在热久久| 亚洲精品一区国产欧美| 热久久网站| 蜜桃一区二区三区在线视频| 亚洲成熟女人毛毛耸耸多| 久久天天躁狠狠躁夜夜2020一| 亚洲av无码一区二区二三区| 亚洲午夜看片无码| 免费人妻精品区一区二区三| 精品国产sm最大网站| 少妇下面好紧好多水真爽播放| 国产成人久久精品77777综合| 国产性一交一乱一伦一色一情| 亚洲国产av一区二区不卡| 国产亚洲精品久久久闺蜜| 婷婷开心深爱五月天播播| 国产一区二区三区四区色| 亚洲一区二区三区,日本| 国产乱子伦农村叉叉叉| 免费网站国产| 超级少妇一区二区三区| 中文字幕日韩精品永久在线| 久久伊人少妇熟女大香线蕉| 乱子真实露脸刺激对白|