下面的lingo程序有什么问题,错误代码是1017,unexpected Jacobian overflow:

问题描述:

下面的lingo程序有什么问题,错误代码是1017,unexpected Jacobian overflow:
SETS:
PORTE/1,2,3,4,5,6,7,8,9/:INCLUDEA;
PORTW/1,2,3,4/:INCLUDEB;
PAIREW(PORTE,PORTW):FREIGHT,CARGO,CARGOCOST,B,V,S,L;
ENDSETS
MAX=@SUM(PAIREW(I,J):FREIGHT(I,J)*CARGO(I,J))-60580000-346000*@SUM(PORTE:INCLUDEA)-346000*@SUM(PORTW:INCLUDEB)-154*@SUM(PAIREW(I,J):CARGO(I,J));
CALC:
FREIGHT CALCULATION;
@FOR(PAIREW(I,J):FREIGHT(I,J)=(1.5*(60580000+346000*@SUM(PORTE:INCLUDEA)+346000*@SUM(PORTW:INCLUDEB)+154*@SUM(PAIREW(I,J):CARGO(I,J)))*L(I,J))
/(6700*@SUM(PAIREW(I,J):CARGO(I,J)));
CARGO QUANTITY CALCULATION;
@FOR(PAIREW(I,J):CARGO(I,J)=B(I,J)-V(I,J)*CARGOCOST(I,J));
CARGOCOST CALCUATION;
@FOR(PAIREW(I,J):CARGOCOST(I,J)=FREIGHT(I,J)+S(I,J));
@BIN(INCLUDEB);
@BIN(INCLUDEA);
DATA:
L(I,J)=
6534,6520,7144,6827,
6499,6485,7109,6798,
6758,6749,7373,7061,
6745,6731,7355,7038,
6129,6119,6739,6428,
6090,6079,6700,6389,
5086,5075,5696,5384,
6114,6103,6724,6415,
6132,6121,6742,6432;
B(I,J)=
127.5,32.5,845,67.5,
220,267.5,6775,212.5,
210,322.5,5542.5,1065,
1652.5,1657.5,38817.5,1995,
2647.5,4555,26847.5,1942.5,
1782.5,2415,12252.5,705,
1970,567.5,7547.5,952.5,
200,377.5,2870,585,
92.5,442.5,1242.5,680;
V(I,J)=
0.03,0.01,0.18,0.01,
0.11,0.12,1.54,0.05,
0.04,0.07,1.25,0.24,
0.34,0.35,8.75,0.44,
0.63,1.12,6.66,0.45,
0.44,0.61,3.07,0.16,
0.55,0.17,2.12,0.25,
0.05,0.09,0.56,0.11,
0.02,0.11,0.27,0.14;
S(I,J)=
1260,1428,1344,1260,
1176,1344,1260,1176,
1050,1218,1134,1050,
1100,1292,1200,1100,
1092,1176,1176,1260,
1008,1092,1092,1176,
840,924,1008,963,
1260,1428,1344,1260,
1176,1344,1260,1176;
ENDDATA
END

SETS:
PORTE/1,2,3,4,5,6,7,8,9/:INCLUDEA;
PORTW/1,2,3,4/:INCLUDEB;
PAIREW(PORTE,PORTW):FREIGHT,CARGO,CARGOCOST,B,V,S,L;
ENDSETS
MAX=@SUM(PAIREW(I,J):FREIGHT(I,J)*CARGO(I,J))-60580000-346000*@SUM(PORTE:INCLUDEA)-346000*@SUM(PORTW:INCLUDEB)-154*@SUM(PAIREW(I,J):CARGO(I,J));
!FREIGHT CALCULATION;
@FOR(PAIREW(I,J):FREIGHT(I,J)=(1.5*(60580000+346000*@SUM(PORTE:INCLUDEA)+346000*@SUM(PORTW:INCLUDEB)+154*@SUM(PAIREW:CARGO))*L(I,J))
/(6700*@SUM(PAIREW(I,J):CARGO(I,J))));
!CARGO QUANTITY CALCULATION;
@FOR(PAIREW(I,J):CARGO(I,J)=B(I,J)-V(I,J)*CARGOCOST(I,J));
!CARGOCOST CALCUATION;
@FOR(PAIREW(I,J):CARGOCOST(I,J)=FREIGHT(I,J)+S(I,J));
@FOR(PORTE:@BIN(INCLUDEB));
@FOR(PORTW:@BIN(INCLUDEA));
DATA:
L=
6534,6520,7144,6827,
6499,6485,7109,6798,
6758,6749,7373,7061,
6745,6731,7355,7038,
6129,6119,6739,6428,
6090,6079,6700,6389,
5086,5075,5696,5384,
6114,6103,6724,6415,
6132,6121,6742,6432;
B=
127.5,32.5,845,67.5,
220,267.5, 6775, 212.5,
210,322.5, 5542.5, 1065,
1652.5, 1657.5,38817.5,1995,
2647.5, 4555,26847.5,1942.5,
1782.5, 2415,12252.5,705,
1970, 567.5, 7547.5, 952.5,
200,377.5, 2870, 585,
92.5, 442.5, 1242.5, 680;
V=
0.03,0.01,0.18,0.01,
0.11,0.12,1.54,0.05,
0.04,0.07,1.25,0.24,
0.34,0.35,8.75,0.44,
0.63,1.12,6.66,0.45,
0.44,0.61,3.07,0.16,
0.55,0.17,2.12,0.25,
0.05,0.09,0.56,0.11,
0.02,0.11,0.27,0.14;
S=
1260,1428,1344,1260,
1176,1344,1260,1176,
1050,1218,1134,1050,
1100,1292,1200,1100,
1092,1176,1176,1260,
1008,1092,1092,1176,
840, 924, 1008,963,
1260,1428,1344,1260,
1176,1344,1260,1176;
ENDDATA
END谢谢您的回复。不过我刚才用lingo9.0运行了下,还是同样的错误代码,1017,unexpected jacobian overflow,到底是怎么回事嘞?请赐教!我刚刚叫朋友帮我用10.0的运行了,还是不行,说是set语句有误,不知道了11 不管什么版本都应该没问题 只要你复制的是对的