博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

代码练习

Posted on 2016-03-22 21:56  shaoweiyi  阅读(153)  评论(0编辑  收藏  举报
%蒙特卡洛方法

rand('state',sum(clock)); p0=0; tic for i=1:10^6 x=randi([0,99],1,5); [f,g]= mengte(x) if all(g<=0) if f>p0 x0=x; p0=f end end end x0,p0 toc

② 整数线性规划(指派问题)

%指派问题
clc,clear
c=[3,8,2,10,3;8,7,2,9,7;6,4,2,7,5;8,4,2,3,5;9,10,6,9,10];
c=c(:);
% x[25]
Aeq=zeros(10,25);
for i=1:5
    Aeq(i,(i-1)*5+1:5*i)=1;
    Aeq(i+5,i:5:25)=1;
end
beq=ones(10,1);
lb=zeros(25,1);
ub=ones(25,1);
intcon=1:25;

[x,val]=intlinprog(c,intcon,[],[],Aeq,beq,lb,ub);
x=reshape(x,[5,5]);