关于debug的问题 。。。。
这是02年CUMCU 彩票问题 debug看懂是什么意思 求大神指点!!global v
v = 630589; % 求解v为630589的收入水平情况
DEBUG = 0;
rand('state',sum(100*clock)) % 初始化随机数生成器
format long g
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 求解开始
% 对于K1型
p_k1 = ;
% 6个奖项6个变量
Aeq=;
beq=1;
a_lb=;
b_ub=;
A= [0,0,0,-1,a_lb(4),0;
0,0,0,1,-b_ub(4),0;
0,0,0,0,-1,a_lb(5);
0,0,0,0,1,-b_ub(5)];
b= ;
lb=;
ub=;
p_test = p_k1;
rx0_tmp = zeros(6,1);
rx_meta_result = zeros(6,1);
fval_meta_result = inf;
flag_meta_result = nan; %用以判断有没有得到过可行解
if DEBUG == 1
output_meta_result = [];
end
for j = 1:nums_test_of_initial_value
%随机生成多个初始值rx0_tmp,以避免局部最优
rx0_tmp(1) = rand*(0.8-0.5) + 0.5;
rx0_tmp(2) = rand*(1-rx0_tmp(1));
rx0_tmp(3) = 1 - rx0_tmp(1) - rx0_tmp(2);
rx0_tmp(4) = rand*1000;
rx0_tmp(5) = rand*100;
rx0_tmp(6) = rand*50;
% 寻优
= ...
fmincon('cpiao',rx0_tmp,A,b,...
Aeq,beq,lb,ub,'nonlcon',[],1,p_test,a_lb,b_ub);
% 上式倒数第四个参数是为了区分彩票的类型(K1/K2/K3/K4)
% 最后三个是函数cpiao和nonlcon计算中可能要用到的量。
if (flag_tmp == 1) && (fval_meta_result > fval_tmp)
fval_meta_result = fval_tmp;
rx_meta_result = rx_tmp;
flag_meta_result = 1;
if DEBUG == 1
output_meta_result = output_tmp;
end
end
end
% 把求得的最好结果保存下来
if ~isnan(flag_meta_result)
rx_k1 = rx_meta_result;
fval_k1 = fval_meta_result;
flag_k1 = flag_meta_result;
if DEBUG == 1
output = output_meta_result;
end
else
if DEBUG == 1
rx_k1 = rx_tmp;
fval_k1 = fval_tmp;
flag_k1 = flag_tmp;
output = output_tmp;
end
end
没人回答啊
页:
[1]