QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 12239|回复: 13
打印 上一主题 下一主题

[问题求助] 请求一个整数规划的matlab程序

[复制链接]
字体大小: 正常 放大
huiwen     中国数模人才认证   

4

主题

3

听众

258

积分

升级  79%

  • TA的每日心情
    开心
    2014-12-3 16:59
  • 签到天数: 84 天

    [LV.6]常住居民II

    群组Matlab讨论组

    群组西安交大数学建模

    群组2011年第一期数学建模

    跳转到指定楼层
    1#
    发表于 2011-8-25 16:51 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    最近一直在研究整数规划,可是连着看了两个相关编程,用MATLAB实践时总是出错!所以,求助于各位大侠们能否提供一个整数规划的程序。或者,能否分析一下面的程序哪里有问题?谢谢了啊!
    1. function [x,y]=IntLp(f,G,h,Geq,heq,lb,ub,x,id,options)) x% x  v& u' G2 Z
    2. global upper opt c x0 A b Aeq beq ID options;
      % a- j# T+ S  |0 h+ i% k( o6 L
    3. if nargin<10,$ |; K# q* ~% K  ~& r& A$ ?1 y
    4.     options =optimset({});5 z9 s5 k6 x( v
    5.     options.Display='off';' ~- `8 ~5 M- W  Q/ u
    6.     options.LargeScale='off';
      - l; j+ T# ]( n+ o& m
    7. end
      . z\" G\" B9 P0 Q& l* t\" A( M
    8. if nargin<9,( U5 l% I' k/ Y/ l
    9.     id=ones(size(f));  A& b3 K9 c; `6 ^& s6 l
    10. end 1 O$ K4 S2 Z+ Z4 r3 m1 _
    11. if nargin<8,8 N\" Q3 W$ \; w! c- e8 V( D* X
    12.     x=[];
      . Q* R2 B, ]3 s+ p\" N: q
    13. end
      8 u! L8 r' Y! G# l7 q
    14. if nargin<7 | isempty(ub),
      - R4 o* U3 i& R: S8 |
    15.     ub =inf*ones(size(f));
      & S& n2 y' k0 Y2 B. p\" \) U7 e
    16. end
      3 t; W, |5 H( |2 @. G
    17. if nargin<6 | isempty(lb),
      $ C/ L6 M  [5 b; P, v% i. D
    18.     lb=zeros(size(f));$ `2 i) ]0 {7 M- L) K
    19. end/ j/ m# R9 L5 n
    20. if nargin<5,4 Q' s& |6 J* }) `
    21.     heq=[];
      & T1 x1 i) q6 A# h2 H% S2 ?
    22. end
      + a& Z8 A  I1 ^5 l
    23. if nargin<4,
      7 U5 u+ N! V2 e: J
    24.     Geq=[];; w9 B; o/ h* F- t2 T
    25. end
        j1 ]% M+ E2 T' J* R  t
    26. upper=inf;c=f;x0=x;
      \" h; J/ S% j3 |' l
    27. A=G;2 Y! R$ k2 @# p: e3 L\" }. M  M3 \
    28. b=h;Aeq=Geq;
      : I# @9 l+ p\" \: V4 \. t, l
    29. beq=heq;ID=id;
      ( C* }# T- A- c- ]4 g% ~8 l6 F* S, W
    30. ftemp=IntL_P(lb(:),ub(:));
      3 t7 z. o+ f  P, z
    31. %以下为子函数1 p9 Y- ^, M+ D+ s4 ]9 K8 r
    32. function ftemp=IntL_P(vlb,vub)
      5 O( p1 m3 V0 @6 S
    33. global upper opt c x0 A b Aeq beq ID options;
      ; L3 T% B4 p: l0 Z2 H8 G# I
    34. [x,ftemp,how]=linprog(c,A,b,Aeq,beq,vlb,vub,x0,options);1 Q3 J) ^2 `. H0 ]# x
    35. if how<0
      & Y- A3 g\" T* c; \7 N) i1 E# P
    36.     return;, r  b; i( F. f4 m3 b
    37. end
      9 \+ L- ?, @5 E( |, F$ ^! N
    38. if ftemp-upper>0.00005$ B+ b5 y' M' r9 f
    39.     return;
      6 n/ i3 T4 x! I: T% N: `/ j
    40. end
      3 e9 L( b' H/ U# v9 h
    41. if max(abs(x.*ID-round(x.*ID)))<0.00005
      : B; x; o+ A6 Z3 E! R
    42.     if upper-ftemp>0.00005
      ; U/ S) k& y- c! r' K. O8 L
    43.         opt=x';7 q3 g4 `, b2 L7 @& \; m6 w4 Z
    44.         upper=ftemp;
      5 t1 V7 J( b. G. ~3 E/ W\" \3 P
    45.         return;
      , b$ W  T- @) o# A4 j
    46.     else
      6 @\" A) Z) K\" Y\" m- `
    47.         opt=[opt;x'];
      * `9 K- ~2 U- M8 n' ?
    48.         return;1 {& j$ O7 b, v$ S* [
    49.     end2 A, |. t: A6 {7 Z9 X  G
    50. end
      2 I/ N) h) x5 p# e; X6 W6 W2 Z
    51. notintx=find(abs(x-round(x))<=0.00005);$ B* m5 S) y2 [  Y7 `: X5 J
    52. intx=fix(x);
      7 e0 z' x) T, d7 U
    53. tempvlb=vlb;tempvub=vub;
      8 w' u$ w6 w) j1 K$ P$ w' l2 C
    54. if vub(notintx(1,1),1)>=intx(notintx(1,1),1)+13 v8 B1 x0 Y, D
    55.     tempvlb(notintx(1,1),1)=intx(notintx(1,1),1)+1;
      9 G; A9 o3 J& V2 H) G
    56.     ftemp=IntLP(tempvlb,vub);0 E( m2 \8 c) u& O. {
    57. end
      ; ^( R0 D7 U1 [# c1 w3 }$ C/ S# [
    58. if vlb(notintx(1,1),1)<=intx(notintx(1,1),1)
      # F2 U; b% z\" R7 U+ o/ U
    59.     tempvub(notintx(1,1),1)=intx(notintx(1,1),1);
      + V1 ^0 k+ ?\" w1 o
    60.     ftemp=IntL_P(vlb,tempvub);
        P3 N1 g( J* c) J
    61. end
    复制代码
    zan
    转播转播0 分享淘帖0 分享分享1 收藏收藏0 支持支持0 反对反对0 微信微信
    13#
    无效楼层,该帖已经被删除

    0

    主题

    13

    听众

    473

    积分

    升级  57.67%

  • TA的每日心情
    奋斗
    2016-7-31 18:28
  • 签到天数: 72 天

    [LV.6]常住居民II

    自我介绍
    本科生

    社区QQ达人

    群组第一期sas基础实训课堂

    回复

    使用道具 举报

    NICE--LLL        

    0

    主题

    6

    听众

    98

    积分

    升级  97.89%

  • TA的每日心情
    奋斗
    2014-7-1 21:02
  • 签到天数: 31 天

    [LV.5]常住居民I

    自我介绍
    WU
    回复

    使用道具 举报

    17

    主题

    7

    听众

    217

    积分

    升级  58.5%

  • TA的每日心情
    无聊
    2014-6-11 16:12
  • 签到天数: 43 天

    [LV.5]常住居民I

    自我介绍
    河南大学2010级学生,国际经济与贸易

    新人进步奖

    群组数学建摸协会

    群组小草的客厅

    回复

    使用道具 举报

    4

    主题

    4

    听众

    1133

    积分

    升级  13.3%

  • TA的每日心情
    开心
    2013-5-14 11:03
  • 签到天数: 167 天

    [LV.7]常住居民III

    群组数学建摸协会

    群组数学建模

    群组西安交大数学建模

    群组2011建模讨论组

    群组第一期sas基础实训课堂

    回复

    使用道具 举报

    4

    主题

    4

    听众

    1133

    积分

    升级  13.3%

  • TA的每日心情
    开心
    2013-5-14 11:03
  • 签到天数: 167 天

    [LV.7]常住居民III

    群组数学建摸协会

    群组数学建模

    群组西安交大数学建模

    群组2011建模讨论组

    群组第一期sas基础实训课堂

    回复

    使用道具 举报

    4

    主题

    4

    听众

    1133

    积分

    升级  13.3%

  • TA的每日心情
    开心
    2013-5-14 11:03
  • 签到天数: 167 天

    [LV.7]常住居民III

    群组数学建摸协会

    群组数学建模

    群组西安交大数学建模

    群组2011建模讨论组

    群组第一期sas基础实训课堂

    回复

    使用道具 举报

    xueyues3        

    0

    主题

    0

    听众

    4

    积分

    升级  80%

    该用户从未签到

    路过!!!!!!. J" `* `5 g) H: T  g

    # z! U, ~. B( p6 Y; y" f5 o1 L5 h  m" h! L. i$ l

    + V& ?  `4 E8 s; t- m
    % S. W# f; c  J, D! b% }. i/ o5 r4 m: R1 x6 M# u1 s
    + G" f+ L5 T. @) C) |

    # `1 q. I) c$ W- O' \/ V: ?' R0 G' H0 U8 {$ J# Q! e" X
    3 `& |0 S0 g' b
    * W2 b, C2 @. w3 t3 [$ b/ L/ w& s4 D, L
    " R5 i$ P! p" h

    : j6 n. y: S# u- T! N# |* O高密招聘网 gmzhaopin.com
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-9-17 10:10 , Processed in 4.311815 second(s), 97 queries .

    回顶部