㈠ MATLAB遺傳演算法工具箱優化變數定義問題
你定義的目標函數有問題。應把h1、h2、h3看成一個變數組,即h=[h1,h2,h3],即
function y=Fitfun1(h)
y=25*h(1)+50*h(2)-10*h(3) %為了說回明問題,把函數表達答式寫成該形式
如還不能理解,最好把具體問題貼出來,包括其約束條件,以便我們幫助你。
㈡ 使用謝菲爾德大學開發的遺傳演算法工具箱GATBX時,如何添加非線性約束
同問,有人解答嗎?難道只能直接在目標函數里設置成懲罰函數
㈢ matlab遺傳演算法工具箱復雜約束條件在哪添加
是Matrix
Laboratory公司自己聘人做出來的,就是最標準的遺傳演算法
不是那種什麼神經網路遺傳演算法,也不是什麼遺傳退火演算法。
如果你自己有這類混雜演算法的工具箱,只能自己去下載第三方的工具箱,當然前提是有人編過
英國謝菲爾德大學有一套自己的遺傳演算法工具箱,比MATLAB默認功能強大一些,但是相對難用
如果你不是有什麼特殊的需求,默認的已經夠了
㈣ 用遺傳演算法工具箱怎麼求解線性約束函數
Matlab遺傳演算法工具箱是可以施加的非線性隱性約束條件的。例如:
min z= 3050*x1³+0.25*x2;
其中x1定義域[-0.381,0.381],x2定義域[-100,100]
求目標函數值為10時的x1、x2值。
求解結果
x1=0.14169943480903302 x2=5.289387991237991
function [c,ceq]=ga_con(x) %非線性約束條件函數
c=10-(3050*x(1)^3+0.25*x(2));
ceq=[];
㈤ 如何在遺傳演算法中設置變數約束條件
1、首先打開matlab軟體,在「APP(應用)」選項卡中選擇「Optimization(優化)」工具箱。

㈥ 求自適應遺傳演算法的MATLAB代碼 要謝菲爾德遺傳演算法工具箱的
都是有兩種調用方法,一種圖形界面的,這個從開始菜單,然後工具,然後從裡面找神經網路neuralnetwork,遺傳演算法工具是全局優化工具箱裡面的,globaloptimization。 另外一種通過命令行調用,這個需要你理解你都要做...
㈦ 謝菲爾德大學遺傳演算法工具箱 為什麼用不了
可能的原因是:1.gatbx工具箱下的crtbp函數的文件名為CRTBP.M,大小寫不統一所以出現了warning,需要把把它改為小寫的crtbp.m;2.gatbx屬於第三方工具箱,MATLAB自身對它是沒有說明的,所以搜不到這些遺傳演算法的指令。
㈧ matlab7.1遺傳演算法自帶工具箱和sheffield大學的遺傳演算法工具箱(gatbx)各有何特點哪個好些
只用過抄MATLAB的遺傳工具箱,速度還可以襲(比一般自己寫的C++要好些)。和其它程序結合的話,先編一個options的結構體,設定好參數(非常重要,特別是初始范圍),然後在調用ga()函數,就可以了。沒有工具箱的界面,但乾的活是一樣的。 我曾用它描過一個函數,函數值是當某些參數去到最優時的參數值。通過嵌套一個循環,每次改變一點參數做一次優化,就可以描出一條曲線來。
㈨ 誰對謝菲爾德遺傳演算法工具箱比較熟,裡面一些函數不太懂
select是選擇函數
㈩ 求助:關於matlab遺傳演算法工具箱中約束的輸入問題
遺傳演算法工具箱的函數GA基本調用格式如下:
X = GA(FITNESSFCN,NVARS,A,b,Aeq,beq,lb,ub)
其中前兩個參數分別是適應度函數和變數個數,第三、四個參數(A和b)即為線性不等式約束。
你現在需要做的是,增加幾個線性約束條件:
x1 < x2
x2 < x3
x3 < x4
x4 < x5
不過,有個問題,遺傳演算法等優化工具對不等式約束的要求,都必須是閉集(帶等號的不等式),也就是說,要的是類似下面這樣的約束:
x1 <= x2
x2 <= x3
x3 <= x4
x4 <= x5
不知道你的問題是否允許把約束放寬到上面的形式,如果可以,就很簡單了(如果不能放寬,我暫時還沒想起怎麼解決):
x1 - x2 <= 0
x2 - x3 <= 0
x3 - x4 <= 0
x4 - x5 <= 0
也就是調用函數時,線性約束的A和b分別為
A = [
1 -1 0 0 0
0 1 -1 0 0
0 0 1 -1 0
0 0 0 1 -1
];
b=[0;0;0;0];