Google Mail Calendar Documents Reader Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Message from discussion E-1013 Infeasible constraint

View Parsed - Show only message text

MIME-Version: 1.0
Received: by 10.100.106.12 with SMTP id e12mr538749anc.28.1243359595591; Tue, 
	26 May 2009 10:39:55 -0700 (PDT)
Date: Tue, 26 May 2009 10:39:55 -0700 (PDT)
X-IP: 157.253.226.56
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.10) 
	Gecko/2009042316 Firefox/3.0.10,gzip(gfe),gzip(gfe)
Message-ID: <13c84d4f-badd-4da8-814d-71f0341c6d00@j18g2000yql.googlegroups.com>
Subject: E-1013 Infeasible constraint
From: Sebastian <sfonne...@gmail.com>
To: Xpress-MP <xpressmp@googlegroups.com>
Cc: sfonne...@gmail.com
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

I'm getting the error E-1013 Infeasible constraint in my model with
code on line 78: "sum(l in T)M(i,l,1)*l+sum(j in E,l in T)P(i,j,l,1)
*l>=Es(i)" How can I solve this?

This is the code for my model=

model Carpool
uses "mmxprs"; !gain access to the Xpress-Optimizer solver

!optional parameters section
parameters
inputFile="info.txt"
outputFile="resultados.txt"
end-parameters

!sample declarations section
declarations

!conjuntos
V:set of real !conjunto de viajes, indexado con k. 0 es ida 1 es
vuelta.
E:set of string !conjunto de estudiantes, indexado con i y j.
T:set of real !conjunto de horas, indexado con l. Debe ser entre 7 y
20.

!Parametros
R:array (E) of real !Parametro binario que es 1 si el vehiculo del
estudiante i no tiene pico y placa, es 0 d.l.c.
Ee:array (E) of real !Hora a la que debe entrar el estudiante i
Es:array (E) of real !Hora a la que debe salir el estudiante i
C:real !Capacidad maxima de los carros

!Variables de decision
P:array (E,E,T,V) of mpvar !Variable binaria que es 1 si el estudiante
j es pasajera del estudiante i que maneja a la hora l en el viaje k,
es 0 d.l.c.
M:array (E,T,V) of mpvar !Variable binaria que es 1 si el estudiante i
maneja a la hora l en el viaje k, es 0 d.l.c.
Tee:array (E) of mpvar !Tiempo de espera, en horas, del estudiante i
en el dia j al llegar a la universidad
Tes:array (E) of mpvar !Tiempo de espera, en horas, del estudiante i
en el dia j para salir de la universidad

end-declarations

!inicializaciones
initializations from inputFile
R Ee Es C
end-initializations

forall(i in E,j in E,k in V,l in T) do
	create(P(j,i,l,k))
end-do

forall(i in E,k in V,l in T)do
	create(M(i,l,k))
end-do

forall(i in E)do
	create(Tee(i))
	create(Tes(i))
end-do

!Restricciones

	!Restriccion de viajes
	forall(i in E,k in V)do
		sum(l in T)M(i,l,k)+sum(j in E,l in T)P(i,j,l,k)=1
	end-do

	!Restriccion de pasajeros
	forall(i in E,j in E,l in T,k in V)do
		P(j,i,l,k)<=M(i,l,k)
	end-do

	!Restriccion pico y placa
	forall(i in E, l in T, k in V)do
		M(i,l,k)<=R(i)
	end-do

	!Restriccion manejar ida y vuelta
	forall(i in E)do
		sum(l in T)M(i,l,0)=sum(l in T)M(i,l,1)
	end-do

	!Restriccion de horarios de clase
	forall(i in E)do
		sum(l in T)M(i,l,0)*l+sum(j in E,l in T)P(i,j,l,0)*l<=Ee(i)
	end-do

	forall(i in E)do
		sum(l in T)M(i,l,1)*l+sum(j in E,l in T)P(i,j,l,1)*l>=Es(i)
	end-do

	!Variables auxiliares

		!Tiempo espera entrada
		forall(i in E)do
			Tee(i)=Ee(i)-sum(l in T)M(i,l,0)*l-sum(j in E,l in T)P(i,j,l,0)*l
		end-do

		!Tiempo espera salida
		forall(i in E)do
			Tes(i)=sum(l in T)M(i,l,1)*l+sum(j in E,l in T)P(i,j,l,1)*l-Es(i)
		end-do

!Establecer tipo de variables
forall(i in E,j in E,k in V,l in T) P(j,i,l,k) is_binary
forall(i in E,k in V,l in T) M(i,l,k) is_binary

!Funcion Objetivo
z:=sum(i in E)(Tee(i)+Tes(i))

minimize(z)

!Escribir los resultados
fopen(outputFile,F_OUTPUT)
writeln("Carpooling")
writeln("Archivo de entrada: ",inputFile)
writeln("Archivo de salida: ",outputFile, "\n")
writeln("El tiempo de espera total es: ",getobjval, "\n")
writeln("Hacia la universidad", "\n")
forall(i in E,l in T)do
	if getsol(M(i,l,0))=1 then
		writeln("A las ",l," en el carro de ",i," salen :")
		forall(j in E)do
			if getsol(P(j,i,l,0))=1 then
				writeln(j)
			end-if
		end-do
		writeln(" ")
	end-if
end-do
writeln("Desde la universidad", "\n")
forall(i in E,l in T)do
	if getsol(M(i,l,1))=1 then
		writeln("A las ",l," en el carro de ",i," salen :")
		forall(j in E)do
			if getsol(P(j,i,l,1))=1 then
				writeln(j)
			end-if
		end-do
		writeln(" ")
	end-if
end-do
fclose(F_OUTPUT)

end-model


Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google