我试着用遗传算法来优化复制沪深300指数:选取前100支股票组成组合,用遗传算法来计算最优个股权重,计算结果为第一支股票为1,其他皆为0,请教这是什么原因????
代码如下:
options = gaoptimset;
options = gaoptimset(options,'Display', 'iter');
options = gaoptimset(options,'Generations', 50);
options = gaoptimset(options,'PopulationSize', 100)
options = gaoptimset(options,'PlotFcns', {  @gaplotbestf @gaplotbestindiv });
Aeq=ones(1,100);
beq=1.0;
lb=zeros(1,100);
load price;
Money=1e8;
nvars=100;
[x,fval,exitflag,output,population,score] = ...
ga(@(x) TEobj(x,IndexPrice,StockPrice,Money),nvars,[],[],Aeq,beq,lb,[],[],options)
计算中有一警示:Warning: You are using 'mutationgaussian' mutation function for constrained minimization.
Solution may be infeasible; use '@mutationadaptfeasible' function for constrained minimization. 
> In globaloptim\private\constrValidate at 46
  In globaloptim\private\gacommon at 109
  In ga at 269
请教各路高手!!!!!!!!!!!!1谢谢