哪位LINGO大侠帮忙看看,目标规划问题的编程哪错了

来源:百度知道 编辑:UC知道 时间:2024/06/18 05:05:50
SETS:
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