999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MATLAB遺傳算法在函數優化問題中的應用

2023-01-03 06:30:50劉光亞
船電技術 2022年12期
關鍵詞:優化

劉光亞

應用研究

MATLAB遺傳算法在函數優化問題中的應用

劉光亞

(武漢東湖學院機電學院,武漢 430212)

本文介紹了遺傳算法理論及運算流程,運用MATLAB語言進行了程序設計。結合典型的三角測試函數,在MATLAB 環境下有效地解決了用遺傳算法求解函數優化問題,驗證了 MATLAB 遺傳算法在函數優化中應用的有效性和靈活性。

遺傳算法 MATLAB 函數優化 有效性

0 引言

20世紀70年代,美國密執安大學的 Holland 教授[1]提出了遺傳算法,它包含了進化和自然選擇原理,它借鑒了達爾文的進化論和孟爾德的遺傳學,模仿了自然界的生物進化機制,并發展成為一種隨機全局搜索和優化方法,是一種全局、并行、高效的搜索方法[2]。它能在搜索過程中自主獲取和積累有關搜索空間的信息,并自適應地控制搜索過程以求得最優解。遺傳算法提供了一種求解非線性、多模型、多目標等復雜系統優化問題的通用框架,它不依賴于問題所屬的具體領域,已廣泛應用于函數優化、自動控制、圖像處理、機器學習、人工生命與智能等領域[3]。

MATLAB是一種用于算法開發、數據可視化、數據分析及數值計算的高級技術計算語言和交互式環境,具有計算功能強大、圖形展示功能強大、工具箱功能強大和幫助功能完整等特點。MATLAB遺傳算法提供了對各種優化問題的一個完整的解決方案[4]。它具有函數表達簡潔、遺傳操作靈活、可任意選擇多種編碼方式和優化算子、算法參數設置自由等特點而受到用戶的青睞,并為應用和研究遺傳算法提供了穩定可靠、結構靈活、可擴展的開發平臺。

函數優化問題是遺傳算法的經典應用領域,也是對遺傳算法進行性能評價的常用算例[5]。

1 遺傳算法原理與運算流程

在自然進化的過程中,生物通過遺傳與變異來適應外部環境。這就意味著,只有那些擁有更加優良特性和更適應自然環境的生物才能生存與繁衍;同時,那些沒有優良特性的生物體最終將會消亡。這也就是所謂的“適者生存”。遺傳算法模擬了上述的自然進化現象,它將搜索空間映射到遺傳空間,也就是說將每個有可能的解經基因編碼成一個染色體。

遺傳算法模擬了自然選擇和遺傳中發生的復制、交叉和變異等現象,隨機產生一初始種群,通過復制、交叉、變異等操作,產生適應度更高的個體,使群體進行到搜索空間中越來越好的區域,如此一代代進化,最后收斂到一群適應度最好的個體中,進而求得問題的最優解。

遺傳算法流程可用圖1來描述:

圖1 遺傳算法流程圖

2 應用實例

示例函數采用典型的如下三角測試函數:

求其函數于自變量x在定義域中的最大值,遺傳算法優化程序[6]如下:

Function optvalue=opt(n, maxgen, xmin, xmax, pc_min, pc_max,pm_min, pm_max, l) % n-染色體規模;maxgen-最大進化代數;xmin-自變量最小值;xmax-自變量最大值;pc_min-最小交叉概率;pc_max-最大交叉概率;pm_min-最小突變概率; pm_max-最大突變概率;l-二進制碼串長度;

gen=1;group=round(rand(n,l));

while gen<=maxgen % 判斷終止條件

x=decode(group,xmin,xmax,l);

fit=x.^2.*sin(2*x)+2*cos(5*x)+x; % 求適應度值

for i=1:n % 適應度值預處理

if fit(i)<0

fit(i)=0;

end

end

prob1=fit/sum(fit);prob1=cumsum(prob1);

prob2=sort(rand(n,1)); i=1;j=1;

while i<=n %利用輪盤賭選擇法來進行選擇操作

if prob2(i)

newgroup(i,:)=group(j,:); i=i+1;

else

j=j+1;

end

end

group=newgroup; x=decode(group,xmin,xmax,l);

fit=x.^2.*sin(2*x)+2*cos(5*x)+x; avgfit=mean(fit);

for i=1:2:n-1 %隨機生成交叉點,并進行交叉操作

a=[fit(i) fit(i+1)];

if max(a)>avgfit

pc=pc_max-(pc_max-pc_min)*gen/maxgen;

else

pc=pc_max;

end

if rand

cross=round(rand*l)+1;

if cross>l

cross=cross-1;

end

newgroup(i,:)=[group(i,1:cross) ;

group(i+1,cross+1:end)];

newgroup(i+1,:)=[group(i+1,1:cross); group(i,cross+1:end)];

x2=decode(newgroup(i:i+1,:),xmin,xmax,l);

fit2=x2.^2.*sin(2*x2)+2*cos(5*x2)+x2;

for j=0:1

if fit(i+j)>=fit2(j+1)

newgroup(i+j,:)=group(i+j,:);

end

end

else

newgroup(i,:)=group(i,:);

newgroup(i+1,:)=group(i+1,:);

end

end

group=newgroup;

for i=1:n % 隨機生成變異點,并進行變異操作

x3=decode(group,xmin,xmax,l);

fit3=x3.^2.*sin(2*x3)+2*cos(5*x3)+x3;

avgfit3=mean(fit3);

if fit3(i)>avgfit3

pm=pm_max-(pm_max-pm_min)*gen/maxgen;

else

pm=pm_min;

end

if rand

mutation=round(rand*l)+1;

if mutation>l

mutation=mutation-1;

end

newgroup(i,:)=group(i,:);

if newgroup(i,mutation)==0

newgroup(i,mutation)=1;

else

newgroup(i,mutation)=0;

end

x4=decode(newgroup(i,:),xmin,xmax,l);

fit4=x4.^2.*sin(2*x4)+2*cos(5*x4)+x4;

if fit3(i)>fit4

newgroup(i,:)=group(i,:);

end

else

newgroup(i,:)=group(i,:);

end

end

x=decode(newgroup,xmin,xmax,l);

fit=x.^2.*sin(2*x)+2*cos(5*x)+x;

[gmax(gen) index]=max(fit);r(gen)=x(index);

meanvalue=mean(fit);meanfit(gen)=meanvalue; group=newgroup;gen=gen+1;

end

figure(1);fplot('x.^2.*sin(2*x)+2*cos(5*x)+x',[xmin,xmax]);

hold on; plot(r,gmax,'r*');xlabel('x');ylabel('f(x)')

figure(2); plot(gmax); hold on; plot(meanfit,'r:');

xlabel('generations');ylabel('f(x)');hold off;

[gmax index]=max(gmax); optvalue=[r(index) gmax];

Function x=decode(group, xmin, xmax, l) %子函數實現二進制-十進制的解碼操作

group=fliplr(group);s=size(group);

a=0:1:l-1;a=ones(s(1),1)*a;

x1=sum((group.*2.^a)'); x=xmin+(xmax-xmin)*x1./2^l-1;

3 仿真結果

按照上述算法,令n=50,maxgen=80,x_min=0,x_max=9,pc_min=0.1,pc_max=0.9,pm_min=0.01,pm_max=0.4,l=22;圖2代表了初始種群的位置分布;圖3指出了經過80次迭代后的最終尋優結果;圖4說明了隨著代數的增長,最優值與平均函數值的變化趨勢;輸出結果為:

X=7.1928,y=57.0137.

4 結語

遺傳算法作為一種快速、簡單、容錯性強的算法,是一類可應用于復雜系統優化計算的魯棒搜索算法,相較于傳統優化算法,它有如下特點:

1)遺傳算法不是從一點出發沿一條直線尋優,而是同時在整個解空間進行尋優操作,具備全局尋優能力。

2)遺傳算法直接作用于變量的編碼上,而非變量本身。通過編碼操作,可以直接對結構對象進行操作。

3)遺傳算法對搜索空間沒有任何特殊要求,只以變量的編碼作為操作對象,無需導數等其它輔助信息,可處理無數值概念或者很難有數值概念的優化問題。

圖2 染色體的初始位置

4)本文實驗結果驗證了 MATLAB 遺傳算法能有效、靈活地求解復雜函數的優化問題,而且所求解能達到或以相當高的精度逼近最優解。

圖3 染色體的最終位置

圖4 最優、平均函數值變化趨勢

[1] Holland J H. Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artificial intelligence[M]. Ann Arbor: University of Michigan Press, 1975.

[2] Rodés J P, Pérez-Gracia V, Martínez-Reguero A.Evaluation of the GPR frequency spectra in asphalt pavement assessment[J]. Constr Build Mater, 2015, 96: 181-188.

[3] 周勇, 胡中功. 改進的快速遺傳算法在函數優化中的應用[J]. 現代電子技術, 2018, 41(17): 153-157.

[4] 殷銘, 張興華, 戴先中. 基于MATLAB的遺傳算法實現[J]. 電子技術應用, 2000, 26(1): 9-11.

[5] 曹巖. MATLAB R2008數學和控制實例教程[M]. 北京: 化學工業出版社, 2009.

[6] 由睿鵬.計算機網絡優化設計中遺傳算法的原理及應用[J]. 電子技術與軟件工程, 2020(20): 14-15.

[7] 李曉葉, 張京麗, 于妍. 動態圖表展現遺傳算法基本原理[J]. 電腦編程技巧與維護, 2017(12): 80-81, 94.

[8] 萬勇, 萬莉, 戴永壽. 基于C與MATLAB混合編程的管道缺陷類型識別實驗系統軟件開發[J]. 實驗技術與管理, 2020, 37(5): 52-57.

Application of MATLAB genetic algorithm in the function optimization problem

Liu Yaguang

(School of Mechanical and Electronic, Wuhan Donghu University, Wuhan 430212, China)

TP18

A

1003-4862(2022)12-0050-04

2022-08-09

國家自然科學基金資助項目(12101468、61573002)

劉光亞(1959-),男,工學博士,研究員級高工、教授(二級)。研究方向:檢測技術及自動化系統,動力(核)與電氣工程。E-mail:648069538@qq.com

猜你喜歡
優化
超限高層建筑結構設計與優化思考
房地產導刊(2022年5期)2022-06-01 06:20:14
PEMFC流道的多目標優化
能源工程(2022年1期)2022-03-29 01:06:28
民用建筑防煙排煙設計優化探討
關于優化消防安全告知承諾的一些思考
一道優化題的幾何解法
由“形”啟“數”優化運算——以2021年解析幾何高考題為例
圍繞“地、業、人”優化產業扶貧
今日農業(2020年16期)2020-12-14 15:04:59
事業單位中固定資產會計處理的優化
消費導刊(2018年8期)2018-05-25 13:20:08
4K HDR性能大幅度優化 JVC DLA-X8 18 BC
幾種常見的負載均衡算法的優化
電子制作(2017年20期)2017-04-26 06:57:45
主站蜘蛛池模板: 日本免费一级视频| 高清欧美性猛交XXXX黑人猛交 | 99在线观看国产| 偷拍久久网| 人人澡人人爽欧美一区| 久久99热66这里只有精品一| 日韩精品免费一线在线观看| 玖玖精品在线| 色屁屁一区二区三区视频国产| 日韩欧美中文字幕在线韩免费| 国产精品流白浆在线观看| 色婷婷色丁香| 国产综合精品日本亚洲777| 狠狠干综合| 色九九视频| 国产免费一级精品视频| 九九精品在线观看| 91精品国产91久久久久久三级| 一级毛片免费高清视频| 曰韩免费无码AV一区二区| 午夜天堂视频| 91热爆在线| 亚洲国产精品日韩专区AV| 国产白浆一区二区三区视频在线| 久久久久无码精品国产免费| 呦女精品网站| 午夜爽爽视频| 国产黄视频网站| 亚洲男人天堂久久| 欧美成人综合视频| 91青青视频| 777午夜精品电影免费看| 伊人91视频| 国产亚洲视频中文字幕视频| 亚洲乱码视频| 精品国产香蕉伊思人在线| 亚洲色图综合在线| 亚洲国产成人精品一二区| 国产v精品成人免费视频71pao | 日韩中文欧美| 国产欧美日韩精品综合在线| 免费Aⅴ片在线观看蜜芽Tⅴ| 98超碰在线观看| 国产乱子伦手机在线| 国产免费人成视频网| 91视频99| 国产成人超碰无码| 黄色在线网| 国产成人综合亚洲网址| 久热中文字幕在线观看| 一级毛片免费的| 美女啪啪无遮挡| 国产精品人成在线播放| 在线欧美a| 亚洲av无码成人专区| 又污又黄又无遮挡网站| 午夜视频在线观看区二区| 精品欧美视频| 狠狠躁天天躁夜夜躁婷婷| 国产精品午夜电影| 国产精品免费入口视频| 亚洲日韩图片专区第1页| 欧美在线导航| 国产91透明丝袜美腿在线| 国产三区二区| 亚洲无码久久久久| 在线精品亚洲一区二区古装| 欧美在线综合视频| 国产男女免费完整版视频| 欧美www在线观看| 欧美黑人欧美精品刺激| 欧美www在线观看| 免费无码AV片在线观看中文| 99在线视频精品| 国产jizz| 婷婷综合色| 国产麻豆另类AV| 国产一区三区二区中文在线| 欧美影院久久| 在线观看国产精美视频| 欧美亚洲日韩中文| 黄色福利在线|