[問題]急~關於genetic algorithm中fitness 寫法
我想利用Matlab optimization工具箱中的(GA)genetic algorithm 來求解hansen
and seo(2002)' Testing for two-regime threshold cointegration in vector
error correction models' 中的門檻值和共積值
但GA要設定 fitness function(文獻建議設成上面這篇的likelihood function)
所以我的 fitness function 設定如下 但跑不出來
我想擴充至4變數2門檻,所以出來結果應該要有2門檻值3共積值
拜託高手幫忙解答,若有高手解答出來,我願意贈送至少100枚以上P幣 謝謝
function r = store(betab,gam)
global x;
global y;
global xlag;
load aniexc.txt;
n=length(dat(:,1));
y=dat(2+k:n,:)-dat(1+k:n-1,:);
t=length(y(:,1));
xlag=dat(1+k:n-1,:);
x=ones(t,1);
r = (t/2)*log(det((u-zzj*bz)'*(u-zzj*bz)/t)) @這就是論文的likelihood
xx=inv(x'*x);
u=y-x*xx*(x'*y);
w=xlag*[1;-betab];
z=[w,x];
d1=(w<=gam);
zj=[(z.*(d1*ones(1,length(z(1,:))))),w];
zzj=zj-x*xx*(x'*zj);
warning off;
lastwarn(' ');
bz=(u'/zzj')';
[mw,idw] = lastwarn;
lastwarn(' ');
warning on;
if (1-mw==' ');
bz=pinv(zzj'*zzj)*(zzj'*u);
end;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.38.114.64
→
02/06 09:05, , 1F
02/06 09:05, 1F