:Ի滮֮Ŵ㷨

ʽ:
[mf,a,er]=nlinProgIntGA(minF,limit,x,x0,x_min,x_max,Type,k,Nbird,LoopSum)
[mf,a,er]=nlinProgIntGA(minF,limit,x,x0,x_min,x_max,Type,k,Nbird)
[mf,a,er]=nlinProgIntGA(minF,limit,x,x0,x_min,x_max,Type,k)
[mf,a,er]=nlinProgIntGA(minF,limit,x,x0,x_min,x_max,Type)
[mf,a,er]=nlinProgIntGA(minF,limit,x,x0,x_min,x_max)
[mf,a,er]=nlinProgIntGA(minF,limit,x,x0,x_min)
[mf,a,er]=nlinProgIntGA(minF,limit,x,x0)

minF:ű洢Ŀ꺯ʽ(עСֵ) 
limit:ű洢ʽ,ÿԶŷָ,г"><="ַ,עֵ֧һ, "sin(x)>0.1"֧"0.5>sin(x)>0.1"ʽ,ûκһֱȽϷ,ʾʽڵ0 
x:ű洢ı,ÿԶŷָ 
x0:ֵ,ʾӦxĳʼֵ
x_min:ֵ߾,Ӧxֵ,Ĭ-1024
x_max:ֵ߾,Ӧxֵ,Ĭ1024
Type:ֵΪֵ,ָʾxбǷΪ,Ϊ0ʾ,Ϊ,ĬΪ1
k:㷨ԵĲֵ,ʾȨϵ,ĬΪ1000
Nbird:Ⱥ,Ĭ200
LoopSum:ܵ,Ĭ3000

mf:صСֵ
a:شʱxϵ
er:ص

˵:

1ֵerӳҵĽlimitĳ̶,ʹerΪ0ҲʾmfΪŽ,ֻ˵˽ϸ

2ڲڹʱ,ǰ,жϱ׼ͬ.ҺڲÿһεŽм򵥸.

3ڲõķΪg(x)=f(x)+k*(exp(x)-1)

:
/*Թ滮BealeΪ 

Ŀ꺯ֵ 

f=0.75*x1-20*x2+0.5*x3-6*x4 

Լ 

0.25*x1-8*x2-x3+9*x40 
0.5*x1-12*x2-0.5*x3+3*x40 
x31 
x1>=0,x2>=0,x3>=0,x4>=0 

*/ 

//ִ4󽫵õ洢aеĽ,עcxжŷָ 
f = "-0.75*x1+20*x2-0.5*x3+6*x4"; 
c = "0.25*x1-8*x2-x3+9*x4<=0,0.5*x1-12*x2-0.5*x3+3*x40,x3<=1"; 
x = "x1,x2,x3,x4";
xMax=[1024,1024,1,1024];//x1x2x4Ϊ1024,x3Ϊ1
xt=[1 1 1 1];//ʾxÿһΪ,Ӧ,Ӧλõ1Ϊ0
[mf,a0,er]=nlinprogintga(f,c,x,,0,xMax,xt)//ִسõ½,ע⵱е0ʾ,ܵöִмܵõµĽ
mf =
[-1.25000000000000 ]
a0 =
[ 1.00000000000000    0.00000000000000    1.00000000000000    0.00000000000000 ]
er =
[ 0.00000000000000 ]