matlib解决几类规划问题(线性)

1.(整数规划)规划中的变量(部分或全部)限制为整数,主要用到bintprog函数和intlinprog函数。
1.1指派问题:
ex:

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(:);
a=zeros(10,25);
for i=1:5
a(i,(i-1)*5+1:5*i)=1;
a(5+i,i:5:25)=1;
end
b=ones(10,1);
[x,y]=bintprog(c,[],[],a,b);
x=reshape(x,[5,5]),y
显示为
x =

 0     0     0     0     1
 0     0     1     0     0
 0     1     0     0     0
 0     0     0     1     0
 1     0     0     0     0

1.2.intlinprog 函数,用于进行整数规划和整数非整数的混合规划。
使用形式如下:
x = intlinprog(f,intcon,A,b)
x = intlinprog(f,intcon,A,b,Aeq,beq)
x = intlinprog(f,intcon,A,b,Aeq,beq,lb,ub)
x = intlinprog(f,intcon,A,b,Aeq,beq,lb,ub,options)
x = intlinprog(problem)
[x,fval,exitflag,output] = intlinprog(_)
其中,f为规划目标,intcon为包含整数变量下标的向量。A、b为不等式约束条件,Aeq、Beq为等式约束条件,lb、ub为规划变量的上下限,有关其他几项参数的具体介绍可以在任意版本MATLAB中输入help linprog回车来查看,这里只介绍

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值