Loading [MathJax]/jax/element/mml/optable/BasicLatin.js

1 votos

problema de formulación de la programación entera

Consideremos un problema con tres variables: u , σl y σw donde σw>σl . Quiero representar la siguiente relación mediante programación entera. u={σwxx<σl0x>σl

Utilizando restricciones simples de tipo "o" (con una variable binaria y una M grande) puedo obtener el valor correcto para los casos en que x>σw y el caso en que x<σl Sin embargo, cuando x(σl,σw) estas restricciones de uno u otro tipo fallan. Para mostrar lo que he intentado hasta ahora, escribo las restricciones either-or que he probado:

0uMzσlx+z(σwσl)uσlx+z(σwσl)+M(1z)

donde z{0,1} y M es un número arbitrariamente grande.

2voto

holger3000 Puntos 144

Después de pensarlo un poco más, las siguientes restricciones de uno u otro tipo son suficientes. Así, cuando x<σl entonces z debe ser igual a uno y u se ajusta a σwx . Por lo demás, z=0 y u=0

0xσl+Mz0u+Mzxσl0+M(1z)σwxuσwx+M(1z)u0

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X