sobre modelado de restricción de activación

sobre modelado de restricción de activación

de Antonio Mauttone -
Número de respuestas: 0

Estimados, con varios de ustedes hemos discutido alternativas para modelar la restricción de activación que involucra a las variables X e Y. No es un tema menor, porque impacta en todo el modelo, dado que determina los arcos por donde puede haber flujo de demanda. Hay varias formas de modelarlo y los diferentes grupos ya han adoptado alguna. Una forma concreta de hacerlo es:

  • Una vez que se generó el conjunto de recorridos candidatos y antes de ejecutar el modelo de optimización, todos los arcos del conjunto A de la red se pueden clasificar en los grupos A1 (los que pertenecen a la red primaria), A2 (los que pertenecen al menos a un recorrido candidato) y A3 (los que no son del grupo A1 ni A2, es decir, arcos secundarios que no pertenecen a ningún recorrido candidato).
  • Los arcos del grupo A1 siempre pueden estar habilitados. Por lo tanto, no participan de la restricción (esto implica no hacer nada en el modelo, simplemente la variable X estará irrestricta para esos arcos).
  • Los arcos del grupo A3 nunca pueden estar habilitados. Por lo tanto, se deben eliminar del conjunto A antes de ejecutar el modelo.
  • Para los del grupo A2 se debe escribir la restricción: X[a,k,r] <= Rk * Y[r], donde Rk es la demanda del par origen-destino k. Notar que esta restricción se expande para todo a in A2, k in K, r in R (producto cartesiano de los conjuntos A2, K y R), pero además se debe cumplir la condición de que el arco a pertenezca al conjunto de arcos del recorrido r. Esto se logra agregando una condición al producto cartesiano, de la forma ": a in Arcos(r)", donde arcos representa el conjunto de todos los arcos que componen el recorrido r.

Por más detalles se recomienda consultar el manual de Mathprog (Modeling Language GNU MathProg, Language Reference).

Reitero que lo anterior es solo una forma de resolver el problema, puede haber otras.

Saludos