数学建模社区-数学中国

标题: Lingo在一个约束不满足的情况下求得全局最优解!费解啊 [打印本页]

作者: 先上场    时间: 2014-5-18 15:57
标题: Lingo在一个约束不满足的情况下求得全局最优解!费解啊
用Lingo求一个订单组合题,求最小值,结果:
  Global optimal solution found.
  Objective value:                              703672.0
  Objective bound:                              703672.0
  Infeasibilities:                              1.000000

为什么这个约束不能满足再求最小值呢,无非就是最小值大点啊?求大神指导

作者: 先上场    时间: 2014-5-18 17:23
求指导。。。
作者: 先上场    时间: 2014-5-18 17:24
对了,这是个纯整数规划的模型
作者: 先上场    时间: 2014-5-18 17:24
纯整数线性规划模型。。。
作者: wujianjack2    时间: 2014-5-18 19:06
     我觉得就看这三行数没人可以给你分析,你至少应给出代码及相关数据吧?
作者: 先上场    时间: 2014-5-18 21:24
MODEL:
SETS:
        NEEDS: Length , Num ;
        !定义需求集合,属性:长度,件数;
        PATTERNS: x , PLength ;
        !定义模式集合,属性:生产件数,长度;
        RELATION(NEEDS,PATTERNS): RelaNP;
        !定义模式关系矩阵;
ENDSETS


[OBJECTIVE]        MIN=@SUM(PATTERNS(I):x(I)*PLength(I));
        !目标函数;
        @FOR(NEEDS(I):
                          @SUM(PATTERNS(J):x(J)*RelaNP(I,J))>Num(I)       
                                                                                 );
        !满足需求约束;
        @FOR(PATTERNS(J):        @GIN(x(J))
                );
        !张数整数约束;
DATA:
        NEEDS=1,2,3;
        Length=7000,9000,14000;
        Num=24,24,23;
        PATTERNS=1,2,3,4,5,6,7,8,9;
        PLength= 18328,21000,18328,18328,18328,25000,23000,21000,23000;  
        RelaNP=2,3,0,0,1,1,2,1,0,
                 0,0,2,0,1,2,1,0,1,
                 0,0,0,1,0,0,0,1,1;           
ENDDATA

END
作者: 先上场    时间: 2014-5-18 21:24
wujianjack2 发表于 2014-5-18 19:06
我觉得就看这三行数没人可以给你分析,你至少应给出代码及相关数据吧?

非常感谢!
作者: 先上场    时间: 2014-5-18 21:25
还有我用的是lingo12出的问题,用11或者14又没了问题。。。
作者: wujianjack2    时间: 2014-5-18 22:59
先上场 发表于 2014-5-18 21:25
还有我用的是lingo12出的问题,用11或者14又没了问题。。。

   LINGO 12 Crack?如果是关乎Crack的话,很难说清状况了。LINGO 11 Crack比较稳定,推荐。
作者: 先上场    时间: 2014-5-18 23:37
11没问题,但我用的是LINGO API,11的API还没找到破解的啊
作者: wujianjack2    时间: 2014-5-19 00:07
先上场 发表于 2014-5-18 23:37
11没问题,但我用的是LINGO API,11的API还没找到破解的啊

    LINGO 11网络流行的LINDO API应该是经过破解了的吧,12的据说不全。
作者: 先上场    时间: 2014-5-19 08:21
貌似调用的时候显示LINGO API 5.0有变量约束限制...
作者: 先上场    时间: 2014-5-19 09:27
好像没有...
作者: wujianjack2    时间: 2014-5-19 12:42
  噢,你是调用LINDO API啊,是的,有变量数限制。
作者: qlb061    时间: 2014-5-19 18:11
本帖最后由 qlb061 于 2014-5-19 18:17 编辑

模型展开:
MODEL:
[OBJECTIVE] MIN= 18328 * X_1 + 21000 * X_2 + 18328 * X_3 + 18328 * X_4 + 18328 *
  X_5 + 25000 * X_6 + 23000 * X_7 + 21000 * X_8 + 23000 * X_9;                  
[_2] 2 * X_1 + 3 * X_2 + X_5 + X_6 + 2 * X_7 + X_8 >= 24;
[_3] 2 * X_3 + X_5 + 2 * X_6 + X_7 + X_9 >= 24;
[_4] X_4 + X_8 + X_9 >= 23;
@GIN( X_1); @GIN( X_2); @GIN( X_3); @GIN( X_4); @GIN( X_5); @GIN( X_6);
@GIN( X_7); @GIN( X_8); @GIN( X_9);
END

LINGO14.0求解结果:

Global optimal solution found.
Objective value: 706656.0
Objective bound: 706656.0
Infeasibilities: 0.000000
Extended solver steps: 0
Total solver iterations: 329
Elapsed runtime seconds: 0.19

Model Class: PILP

Total variables: 9
Nonlinear variables: 0
Integer variables: 9

Total constraints: 4
Nonlinear constraints: 0

Total nonzeros: 23
Nonlinear nonzeros: 0



Variable Value Reduced Cost
LENGTH( 1) 7000.000 0.000000
LENGTH( 2) 9000.000 0.000000
LENGTH( 3) 14000.00 0.000000
NUM( 1) 24.00000 0.000000
NUM( 2) 24.00000 0.000000
NUM( 3) 23.00000 0.000000
X( 1) 0.000000 18328.00
X( 2) 3.000000 21000.00
X( 3) 2.000000 18328.00
X( 4) 0.000000 18328.00
X( 5) 0.000000 18328.00
X( 6) 2.000000 25000.00
X( 7) 2.000000 23000.00
X( 8) 9.000000 21000.00
X( 9) 14.00000 23000.00
PLENGTH( 1) 18328.00 0.000000
PLENGTH( 2) 21000.00 0.000000
PLENGTH( 3) 18328.00 0.000000
PLENGTH( 4) 18328.00 0.000000
PLENGTH( 5) 18328.00 0.000000
PLENGTH( 6) 25000.00 0.000000
PLENGTH( 7) 23000.00 0.000000
PLENGTH( 8) 21000.00 0.000000
PLENGTH( 9) 23000.00 0.000000
RELANP( 1, 1) 2.000000 0.000000
RELANP( 1, 2) 3.000000 0.000000
RELANP( 1, 3) 0.000000 0.000000
RELANP( 1, 4) 0.000000 0.000000
RELANP( 1, 5) 1.000000 0.000000
RELANP( 1, 6) 1.000000 0.000000
RELANP( 1, 7) 2.000000 0.000000
RELANP( 1, 8) 1.000000 0.000000
RELANP( 1, 9) 0.000000 0.000000
RELANP( 2, 1) 0.000000 0.000000
RELANP( 2, 2) 0.000000 0.000000
RELANP( 2, 3) 2.000000 0.000000
RELANP( 2, 4) 0.000000 0.000000
RELANP( 2, 5) 1.000000 0.000000
RELANP( 2, 6) 2.000000 0.000000
RELANP( 2, 7) 1.000000 0.000000
RELANP( 2, 8) 0.000000 0.000000
RELANP( 2, 9) 1.000000 0.000000
RELANP( 3, 1) 0.000000 0.000000
RELANP( 3, 2) 0.000000 0.000000
RELANP( 3, 3) 0.000000 0.000000
RELANP( 3, 4) 1.000000 0.000000
RELANP( 3, 5) 0.000000 0.000000
RELANP( 3, 6) 0.000000 0.000000
RELANP( 3, 7) 0.000000 0.000000
RELANP( 3, 8) 1.000000 0.000000
RELANP( 3, 9) 1.000000 0.000000

Row Slack or Surplus Dual Price
OBJECTIVE 706656.0 -1.000000
2 0.000000 0.000000
3 0.000000 0.000000
4 0.000000 0.000000



作者: 先上场    时间: 2014-5-19 20:27
qlb061 发表于 2014-5-19 18:11
模型展开:
MODEL:
[OBJECTIVE] MIN= 18328 * X_1 + 21000 * X_2 + 18328 * X_3 + 18328 * X_4 + 18328  ...

谢谢!14确实没有问题,问题就在LINGO 12.0 Crack版。。。




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5