遺傳演算法工具箱求函式極值

2021-06-09 00:14:07 字數 695 閱讀 2137

%這是乙個用ga演算法來求函式極值的例子;

clcclear all

t=100;

optionsorigin=gaoptimset('generation',t/2);

[x,fval,reason,output,finnal_pop]=ga(@ch14_2f,2,optionsorigin);

%options1=gaoptimset('generations',t/2,'initialpopulation',finnal_pop,'plotfcns',@gaplotbestf);

[x,fval,reason,output,finnal_pop]=ga(@ch14_2f,2,options1);

bestx=x

bestfval=fval

%子函式:求函式極值適應度函式同時也是目標函式,函式儲存名稱為ch14_2f.m

function f=ch14_2f(x)

g1=1.5+x(2)*x(1)-x(1)-x(2);

g2=-x(1)*x(2);

if(g1>0|g2>10)

f=100;

else

f=exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(2)*x(1)+2*x(2)+1);

end%請大家關於遺傳演算法的引數調整給點經驗吧,不要光看不說啊!

簡單遺傳演算法求函式極值

引言 遺傳演算法求函式極值算是遺傳演算法的一種最簡單的應用,這裡就介紹一種簡單的,全文基本翻譯自codeproject的一篇文章,作者為luay al wesi,軟體工程師。例子中的函式為y x2 5 大家可以將其改為其他複雜一些的函式,比如說f x 10sin 5x 7cos 4x 等。本篇文章適...

MATLAB遺傳演算法之 工具箱實現

標準演算法 遺傳演算法 每次選代產生乙個單點,點的序列逼近乙個優化解 每次迭代產生乙個種群,種群通近乙個優化解 通過確定性的計算在該序列中選擇下乙個點 通過隨機進化選擇計算來選擇下一代種群 遺傳演算法工具有兩種使用方式 以命令列方式呼叫遺傳演算法函式ga。通過使用者圖形介面使用遺傳演算法工具。在命令...

初遇Sheffield遺傳演算法工具箱

安裝參考 安裝 1 解壓gatbx origin.zip,得到doc和src資料夾 2 拷貝src到matlab安裝目錄下的toolbox資料夾中,並將src更名為gatbx 3 開啟toolbox local 目錄下的pathdef.m檔案,在適當位置新增以下兩行 也可addpath code i...