0

I'm learnig to use AMPL to solve some linear programing related problems; but i have a syntax error with a part of my code, and i dont know how to solve it.

#Archivo Mod

#Conjuntos

set T; #Conjunto Periodos
set I; #Conjunto Plantas
set J; #Conjunto Clientes
set M; #Conjunto de materias primas

#Parametros

param D{j in J, t in T};
param CAM{i in I, m in M};
param CFP{i in I, t in T};
param CVP{i in I, t in T};
param CFI{i in I, t in T};
param CVI{i in I, t in T};
param QP{i in I};
param QI{i in I};
param CT{i in I, j in J};
param R{i in I, m in M};
param L; #Gran M

#Variables de desiciòn

var X{m in M, i in I, t in T}>=0 integer;
var Y{i in I, t in T}>=0 integer;
var H{i in I, t in T}>=0 integer; #Cambie la varible I de notación para no confundirla con el conjunto
var Z{i in I, t in T} binary;
var CI{i in I, t in T} binary;
var W{i in I, j in J, t in T}>=0 integer;
var TR{i in I, j in J, t in T} binary; #Si se transporta o no 

#F.O

minimize FO: sum{i in I,t in T}CFP[i,t]*Z[i,t]+sum{i in I,t in T}CFI[i,t]*CI[i,t]+sum{i in I, m in M, t in T}CAM[i,m]*X[m,i,t]+sum{i in I, j in J, t in T}TR[i,j,t]*CT[i,J]+sum{i in I,t in T}CvI[i,t]*H[i,t]+sum{i in I,t in T}CVP[i,t]*Y[i,t];

#Restricciones
s.t. R1{i in I, t in T}: Y[i,t]<=QP[i];
s.t. R2{i in I, t in T}: H[i,t]<=QI[i];
s.t. R3{i in I, t in T}: Y[i,t]<=M*Z[i,t];
s.t. R4{i in I, t in T}: H[i,t]<=M*CI[i,t];
s.t. R5{i in I}: H[i,0]=0;
s.t. R6{j in J,t in T}: sum{i in I}W[i,j,t]=D[j,t];
s.t. R7{i in I, t in {1,2,3,4,5}}:H[i,t-1]+Y[i,t]=H[i,t]+sum{j in J}W[i,j,t];
s.t. R8{i in I}:H[i,5]+Y[i,6]=H[i,6]+sum{j in J}W[i,j,6];
s.t. R9{j in J, t in T}:D[j,t]=sum{i in I}W[i,j,t];
s.t. R10{i in I, m in M, t in T}: R[i,m]*Y{i,t]=X[m,i,t];

With the next Data File

#Archivo DAT

#Definiciòn de conjuntos (Se puede separar con comas o espacios)

set T:=1,2,3,4,5,6; #Conjunto Periodos
set I:= P1, P2, P3; #Conjunto Plantas
set J:= C1, C2, C3, C4; #Conjunto Clientes
set M:= M1, M2, M3; #Conjunto de materias primas

#Parametros

param D:
    1       2       3       4       5       6:=
C1  300     350     330     320     360     350
C2  500     600     550     400     450     500
C3  1000    800     850     900     950     850
C4  450     600     500     550     400     490
;

param CAM:
    M1      M2      M3:=
P1  50      70      20
P2  30      100     20
P3  30      50      20
;

param R:
    M1      M2      M3:=
P1  2       1       3
P2  3       1       5
P3  2       1       1
;

param QP:=
P1  1000
P2  800
P3  800
;

param QI:=
P1  300
P2  400
P3  350
;

param CFP:
    1   2   3   4   5   6:=
P1  10  10  12  15  15  13  
P2  12  12  15  17  17  13  
P3  25  25  20  30  30  25
;

param CVP:
    1   2   3   4   5   6:=
P1  5   5   10  8   8   7
P2  6   6   12  8   9   8
P3  13  13  10  15  15  15
;

param CFI:
    1   2   3   4   5   6:=
P1  2   3   2   2   3   2
P2  2   3   2   2   3   2
P3  2   5   2   7   9   7
;

param CVI:
    1   2   3   4   5   6:=
P1  1   1   1   2   1   2
P2  2   2   3   2   2   2
P3  2   2   1   2   1   3
;

param CT:
    C1  C2  C3  C4:=
P1  100 80  30  100
P2  120 30  30  120
P3  90  70  30  150
;

param L:=10000000

But when i run the mod file, i have this error

Taller1.mod, line 36 (offset 981):
    syntax error
context:  minimize FO: sum{i in I,t in T}CFP[i,t]*Z[i,t]+sum{i in I,t in T}CFI[i,t]*CI[i,t]+sum{i in I, m in M, t in T}CAM[i,m]*X[m,i,t]+sum{i in I, j in J, t in  >>> T}TR[i,j,t]*CT[i,J] <<< +sum{i in I,t in T}CvI[i,t]*H[i,t]+sum{i in I,t in T}CVP[i,t]*Y[i,t];

I checked my code, but I don't understand what the error is. Please! Help me.

1 Answers1

0
CT[i,>>>J<<<<]
Erwin Kalvelagen
  • 15,677
  • 2
  • 14
  • 39