遺傳算法源程序
- 文件介紹:
- 該文件為 doc 格式,下載需要 10 積分
- 遺傳算法程序:
說明: fga.m 為遺傳算法的主程序; 采用二進制Gray編碼,采用基于輪盤賭法的非線性排名選擇, 均勻交叉,變異操作,而且還引入了倒位操作!
function [BestPop,Trace]=fga(FUN,LB,UB,eranum,popsize,pCross,pMutation,pInversion,options)
% [BestPop,Trace]=fmaxga(FUN,LB,UB,eranum,popsize,pcross,pmutation)
% Finds a maximum of a function of several variables.
% fmaxga solves problems of the form:
% max F(X) subject to: LB <= X <= UB
% BestPop - 最優(yōu)的群體即為最優(yōu)的染色體群
% Trace - 最佳染色體所對應(yīng)的目標(biāo)函數(shù)值
% FUN - 目標(biāo)函數(shù)
% LB - 自變量下限
% UB - 自變量上限
% eranum - 種群的代數(shù),取100--1000(默認(rèn)200)
% popsize - 每一代種群的規(guī)模;此可取50--200(默認(rèn)100)
% pcross - 交叉概率,一般取0.5--0.85之間較好(默認(rèn)0.8)
% pmutation - 初始變異概率,一般取0.05-0.2之間較好(默認(rèn)0.1)
% pInversion - 倒位概率,一般取0.05-0.3之間較好(默認(rèn)0.2)
% options - 1*2矩陣,options(1)=0二進制編碼(默認(rèn)0),option(1)~=0十進制編
%碼,option(2)設(shè)定求解精度(默認(rèn)1e-4)...