设为首页收藏本站

EPS数据狗论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1741|回复: 0

Matlab 0-1线性规划问题

[复制链接]

8

主题

79

金钱

125

积分

入门用户

发表于 2018-9-26 10:36:54 | 显示全部楼层 |阅读模式
  1. function [x,f]=L01p_e(c,A,b,N)
  2. % [x,f]= L01p_e(c,A,b,N)用枚举法求解下列
  3. %       0-1线性规划问题
  4. %       min f=c'*x, s.t. A*x<=b,x的分量全为整数0或1,
  5. %  其中N表示约束条件 Ax ≤ b中的前N个是等式,N= 0时可以省略。
  6. %  返回结果x是最优解,f是最优解处的函数值。
  7. %  
  8. %例 max f=3x1+5x2+2x3+4x4+2x5+3x6
  9. %   s.t. 8x1+13x2+6x3+9x4+5x5+7x6<=24, x1,…,x6均为0或1
  10. %求解
  11. %  c=-[3,5,2,4,2,3];a=[8,13,6,9,5,7];b=24;
  12. %  x=l01p_e(c,a,b)

  13. % By X.D. Ding, June 2000

  14. if nargin<4,N=0;end
  15. c=c(:);b=b(:);
  16. [m,n]=size(A);x=[];f=abs(c')*ones(n,1);i=1;
  17. while i<=2^n
  18.    B=de2bi(i-1,n)';
  19.    t=A*B-b;t11=find(t(1:N,:)~=0);
  20.    t12=find(t(N+1:m,:)>0);t1=[t11;t12];
  21.    if isempty(t1)
  22.       f=min([f,c'*B]);
  23.       if c'*B==f,x=B;end
  24.    end
  25.    i=i+1;
  26. end
复制代码


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

客服中心
关闭
在线时间:
周一~周五
8:30-17:30
QQ群:
653541906
联系电话:
010-85786021-8017
在线咨询
客服中心

意见反馈|网站地图|手机版|小黑屋|EPS数据狗论坛 ( 京ICP备09019565号-3 )   

Powered by BFIT! X3.4

© 2008-2028 BFIT Inc.

快速回复 返回顶部 返回列表