lingo错误代码29

第一次用LINGO,想知道为什么会一直提示出错,求助改正方法,这边是程序的代码,谢谢帮助。

MODEL:
SETS:
CITY/1 2 4 5 15 20 21/:U;!U(I)=SEQUENCE NO.OF CITY;
LINK(CITY,CITY):
DIST,!THE DISTANCE MATRIX;
X; !X(I,J)=1 IF WE USE LINK I,J;
ENDSETS
DATA:!DIATANCE MATRIX,IT NEED NOT BE SYMMETRIC;
DIST=0 18.3 22.3 19.1 10.7 9.2 26.4 26.5
18.3 0 17.9 .37 18.8 27.3 11.4 23.5
22.3 17.9 0 22.3 13.6 27.9 21.3 5.6
19.1 3.7 22.3 0 21.1 27.8 21.1 27.1
10.7 18.8 13.6 21.1 0 14.6 18.3 16.4
9.2 27.3 27.9 27.8 14.6 0 33.1 30.9
26.4 11.4 21.3 21.1 18.3 33.1 0 8
26.5 23.5 5.6 27.1 16.4 30.9 8 0
ENDDATA
!THE MODEL:REF.DESROCHERS&LAPORTE,OR LETTERS,
FEB.91;
N=@SIZE(CITY);
MIN=@SUM(LINK:DIST*X);
@FOR(CITY(K):
! IT MUST BE ENTERED; @SUM(CITY(I)|#NE#K:X(I,K))=1;
! IT MUST BE DEPARTED;
@SUM(CITY(J)|J#NE#K:X(K,J))=1;
!WEAK FORM OF THE SUBTOTUR BREAKING CONSTRAINTS;
!THESE ARE NOT VERY POWERFUL FOR LARGE PROBLEMS;
@FOR(CITY(J)|J#GT# 1 #AND# J #NE#K:
U(J)>U(K)+X(K,J)-
(N-2)*(1-X(K,J))+
(N-3)*X(J,K)));
!MAKE THE X'S 0/1;
@FOR(LINK:@BIN(X));
!FOR THE FIRST AND LAST STOP WE KNOW;
@FOR(CITY(K)|K#GT#1:
U(K)<=N-1-(N-2)*X(1,K);
U(K)>=1+(N-2)*X(K,1));
END

MODEL:
SETS:
CITY/1 2 4 5 15 20 21/:U;!U(I)=SEQUENCE NO.OF CITY;
LINK(CITY,CITY):
DIST,!THE DISTANCE MATRIX;
X; !X(I,J)=1 IF WE USE LINK I,J;
ENDSETS
DATA:!DIATANCE MATRIX,IT NEED NOT BE SYMMETRIC;
DIST=0 18.3 22.3 19.1 10.7 9.2 26.4 26.5
18.3 0 17.9 .37 18.8 27.3 11.4 23.5
22.3 17.9 0 22.3 13.6 27.9 21.3 5.6
19.1 3.7 22.3 0 21.1 27.8 21.1 27.1
10.7 18.8 13.6 21.1 0 14.6 18.3 16.4
9.2 27.3 27.9 27.8 14.6 0 33.1 30.9
26.4 11.4 21.3 21.1 18.3 33.1 0 8
26.5 23.5 5.6 27.1 16.4 30.9 8 0
ENDDATA

你定义的DIST是一个7×7的矩阵,而你输入的数据超过49个了追问

把定义改为8×8之后错误提示就会到ENDDATA上了,E下面有一个小箭头

追答

26.5 23.5 5.6 27.1 16.4 30.9 8 0;
这后面少了个分号

温馨提示:答案为网友推荐,仅供参考
相似回答