哪位LINGO大侠帮忙看看,目标规划问题的编程哪错了
来源:百度知道 编辑:UC知道 时间:2024/06/18 05:05:50
MONTH/JAN,FEB,MAR,APR/;
SIZE/21IN,25IN,29IN/: TIME,COMPENSATION;
PRODUCT(SIZE,MONTH): PRODUCE,CONTRACT,INVENTORY,LACK;
ENDSETS
! The objective;
MIN = @SUM(PRODUCT:INVENTORY* 5)+ @SUM(PRODUCT:LACK* COMPENSATION);
!四月份库存量为150;
@FOR(SIZE(I):
INVENTORY(I,APR)=150);
!每月总工时不超过15000小时;
@FOR(MONTH(J):
@SUM(SIZE(I):
PRODUCE(I,J)*TIME) <= 15000);
!二月份21英寸电视产量为0; (这一步无法运算下去)
@FOR(SIZE(I)| I #EQ# 2
PRODUCE(I,FEB)= 0);
!各个月份的目标规划;
@FOR(SIZE(I):
PRODUCE(I,JAN) + LACK(I,JAN) - INVENTORY(I,JAN) = CONTRACT(I,JAN));
@FOR(SIZE(I):
PRODUCE(I,FEB) + LACK(I,FEB) - INVENTORY(I,FEB)+ INVENTORY(I,JAN) = CONTRACT(I,FEB));
@FOR(SIZE(I):
PRODUCE(I,MAR) + LACK(I,MAR) - INVENTORY(I,MAR)+ INVENTORY(I,FEB) = CONTRACT(I,MAR));
@FOR(SIZE(I):
PRODUCE(I,JAN
MONTH/JAN,FEB,MAR,APR/;
SIZE/21IN,25IN,29IN/: TIME,COMPENSATION;
PRODUCT(SIZE,MONTH): PRODUCE,CONTRACT,INVENTORY,LACK;
ENDSETS
! The objective;
MIN = @SUM(PRODUCT:INVENTORY* 5)
+ @SUM(month(j):
@sum(size(i):LACK(i,j)* COMPENSATION(i)));
!四月份库存量为150;
@FOR(SIZE(I):
INVENTORY(I,4)>=150);
!每月总工时不超过15000小时;
@FOR(MONTH(J):
@SUM(SIZE(I):
PRODUCE(I,J)*TIME(i)) <= 15000);
!二月份21英寸电视产量为0这一步无法运算下去);
PRODUCE(1,2)<=0;
!各个月份的目标规划;
@FOR(SIZE(I):
@FOR(MONTH(j):
PRODUCE(I,J)+LACK(I,J)-INVENTORY(I,J)>=CONTRACT(I,J)));
!@FOR(SIZE(I):
PRODUCE(I,JAN) + LACK(I,JAN) - INVENTORY(I,JAN) >= CONTRACT(I,JAN));
!@FOR(SIZE(I):
PRODUCE(I,FEB) + LACK(I,FEB) - INVENTORY(I,FEB)+ INVENTORY(I,JAN) >= CONTRACT(I,FEB));
!@FOR(SIZE(I):
PRODUCE(I,MAR) + LACK(I,MAR) - INVENTORY(I,MAR)+ INVENTORY(I,FEB) >= CONTR