《MATLAB智能算法30个案例》:第6章 遗传算法工具箱详解及应用
《MATLAB智能算法30個案例》:第6章 遺傳算法工具箱詳解及應用
- 1. 前言
- 2. MATLAB 仿真示例
- 3. 小結
1. 前言
《MATLAB智能算法30個案例分析》是2011年7月1日由北京航空航天大學出版社出版的圖書,作者是郁磊、史峰、王輝、胡斐。本書案例是各位作者多年從事算法研究的經驗總結。書中所有案例均因國內各大MATLAB技術論壇網友的切身需求而精心設計,其中不少案例所涉及的內容和求解方法在國內現已出版的MATLAB書籍中鮮有介紹。《MATLAB智能算法30個案例分析》采用案例形式,以智能算法為主線,講解了遺傳算法、免疫算法、退火算法、粒子群算法、魚群算法、蟻群算法和神經網絡算法等最常用的智能算法的MATLAB實現。
本書共給出30個案例,每個案例都是一個使用智能算法解決問題的具體實例,所有案例均由理論講解、案例背景、MATLAB程序實現和擴展閱讀四個部分組成,并配有完整的原創程序,使讀者在掌握算法的同時更能快速提高使用算法求解實際問題的能力。《MATLAB智能算法30個案例分析》可作為本科畢業設計、研究生項目設計、博士低年級課題設計參考書籍,同時對廣大科研人員也有很高的參考價值。
《MATLAB智能算法30個案例分析》與《MATLAB 神經網絡43個案例分析》一樣,都是由北京航空航天大學出版社出版,其中的智能算法應該是屬于神經網絡興起之前的智能預測分類算法的熱門領域,在數字信號處理,如圖像和語音相關方面應用較為廣泛。本系列文章結合MATLAB與實際案例進行仿真復現,有不少自己在研究生期間與工作后的學習中有過相關學習應用,這次復現仿真示例進行學習,希望可以溫故知新,加強并提升自己在智能算法方面的理解與實踐。下面開始進行仿真示例,主要以介紹各章節中源碼應用示例為主,本文主要基于MATLAB2018a(64位)平臺仿真實現,這是本書第六章遺傳算法工具箱詳解及應用實例,話不多說,開始!
2. MATLAB 仿真示例
打開MATLAB,點擊“主頁”,點擊“打開”,找到示例文件
選中GA_demo_run.m,點擊“打開”
GA_demo_run.m源碼如下:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %功能:遺傳算法工具箱應用示例 %環境:Win7,Matlab2015b %Modi: C.S %時間:2022-07-5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 清空環境 clc clear all close allticfitnessfcn = @GA_demo; % 適應度函數句柄 nvars = 2; % 個體的變量數目 options = gaoptimset('PopulationSize',100,'EliteCount',10,'CrossoverFraction',0.75,'Generations',500,'StallGenLimit',500,'TolFun',1e-100,'PlotFcns',{@gaplotbestf,@gaplotbestindiv}); %參數設置 [x_best,fval] =ga(fitnessfcn,nvars,[],[],[],[],[],[],[],options); % 調用ga函數toc調用文件GA_demo.m源碼如下:
function f=GA_demo(x) f1=4*x(1).^3+4*x(1)*x(2)+2*x(2).^2-42*x(1)-14; f2=4*x(2).^3+4*x(1)*x(2)+2*x(1).^2-26*x(1)-22; f=f1.^2+f2.^2;添加完畢,點擊“運行”,開始仿真,輸出仿真結果如下:
Optimization terminated: maximum number of generations exceeded.3. 小結
本章應用與第五章的示例仿真方式相同,鏈接附在文末。對本章內容感興趣或者想充分學習了解的,建議去研習書中第六章節的內容。后期會對其中一些知識點在自己理解的基礎上進行補充,歡迎大家一起學習交流。
《MATLAB智能算法30個案例》:第5章 基于遺傳算法的LQR控制器優化設計
總結
以上是生活随笔為你收集整理的《MATLAB智能算法30个案例》:第6章 遗传算法工具箱详解及应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [vue-cli]vue-cli3你有使
- 下一篇: 目前大数据工具主要哪些?