En mi Programa Lineal, estoy tratando de expresar que una variable de decisión $x \in R$ sólo puede estar en determinados intervalos, por ejemplo $x \in [0,2] \cup [5,8] \cup [9,15]$ .
Soy consciente de que se puede modelar o bien restricción 1 O restricción 2 con un truco de la Gran M (por ejemplo explicado aquí en la sección 7.3 y preguntado aquí pero no veo directamente cómo esto podría resolver mi pregunta. ¿Alguna idea?
Respuestas
¿Demasiados anuncios?
Rob Pratt
Puntos
296
Si $[a_i,b_i]$ es el $i$ -ésimo intervalo entonces para una variable binaria $z_i$ la desigualdad
$$a_iz_i-(1-z_i)M\leq x\leq b_iz_i+(1-z_i)M$$
da $x\in[a_i,b_i]$ cuando $z_i=1$ y es "libre" ( $x\in [-M,M]$ ) cuando $z_i=0$ . Así pues, una familia de tales restricciones junto con
$$\sum z_i= 1$$
modela la pertenencia a una unión de intervalos $x\in\bigcup_i[a_i,b_i]$ .