TEMA 5: El problema del flujo con costo mnimo - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

TEMA 5: El problema del flujo con costo mnimo

Description:

Definici n del problema: Una red compuesta por n nodos, a los que se asocia un ... Considerando como nuevo arco b sico aqu l con costo relativo m s negativo. ... – PowerPoint PPT presentation

Number of Views:573
Avg rating:3.0/5.0
Slides: 30
Provided by: Dig63
Category:

less

Transcript and Presenter's Notes

Title: TEMA 5: El problema del flujo con costo mnimo


1
TEMA 5 El problema del flujo con costo mínimo
2
Definición del problema
  • Definición del problema Una red compuesta por n
    nodos, a los que se asocia un valor ki que indica
    el nivel ofertado o demanda por el nodo i.
  • Si kigt0, existe una oferta en el nodo i
    denominándose fuente u origen .
  • Si kilt0, existe una demanda en el nodo i
    denotándose por sumidero o destino.
  • Si ki0, el nodo i denomina intermedio o de
    transbordo.
  • A cada arco (i,j) se asociará una variable xijgt
    0 que representa el flujo que circula por él y un
    coste unitario de transporte cij.
  • El flujo está limitado por el limite inferior lij
    y el limite superior uij.
  • Todos los nodos tienen que cumplir las leyes de
    conservación de Kirchhoff.

kj
xij
j
i
j
cij
3
Formulación matemática del problema.
La formulación matemática del problema de flujo
con costo mínimo queda como
4
Ejemplo
5
Propiedades del problema
  • El problema puede reescribirse, en forma
    matricial, como
  • Matriz de incidencia, Aaij, aijei-ej
  • y ei es el vector unitario i-ésimo.

6
Propiedades del problema
  • Adicionando todas las filas de la matriz A se
    tiene que para que el problema tenga
    solución, es decir las restricciones deben ser
    combinaciones lineales y por consiguiente, el
    rango de la matriz A es como máximo rango (A)lt
    n-1, donde n define el número de nodos de la red.
  • Propiedades importantes
  • El rango de la matriz A es n-1
  • Las soluciones del problema son siempre enteras
    para valores de ki enteros.

7
Propiedades del problema
  • El rango de la matriz A es n-1

Tantas columnas como arcos Tantas filas como
nodos
(i,j)
aij es la columna de A que corresponde al arco
que une los nodos i y j
xij
j
i
xij aparece en la ecuación del nodo i con signo
y en la ecuación del nodo j con signo -
Dimensiones de A nodos (n) x arcos
8
Ciclos y Dependencia Lineal
  • Dos teoremas de gran valor para la definición
    del algoritmo que permitirá resolver el problema
    formulado
  • Teorema 1. Un conjunto de columnas de la matriz A
    serán linealmente dependientes si y solo si
    existe un ciclo entre sus nodos.
  • Demostración Supongamos un subgrafo del grafo
    original, cuyos nodos unidos por arcos definen un
    ciclo, tal y como se muestra en la siguiente
    figura

Asignando una orientación arbitraria a dicho
ciclo, a los arcos en dicha dirección un
coeficiente 1 y a los arcos orientados en
sentido opuesto un coeficiente -1, se
tiene aijajk - alk alm -
anm (ei-ej)(ej-ek)-(el-ek)(el-em)-(en-e
m)0 por lo que las columnas de A
correspondientes los arcos no son linealmente
independientes. Corolario Las variables básicas
no podrán formar un ciclo y, por tanto, definen
un árbol compuesto por n-1 arcos y n nodos.
9
Ciclos y Dependencia Lineal
  • Teorema 2. Cualquier arco no básico cuya columna
    es alm puede representarse como combinación
    lineal de las columnas de los n-1 arcos básicos.
    Así, el conjunto definido por las columnas que
    representan los vectores básicos y el no básico
    alm definirán el ciclo.
  • Corolario para obtener la representación
    correcta de un arco no básico dado, simplemente
    se localiza el ciclo único en el subgrafo de la
    base que contiene el arco asociado. Definiendo
    una orientación acorde con el arco no básico,
    cualquier arco en el ciclo que posea la misma
    orientación, tendrá asignado un coeficiente de
    -1, mientras que los que presenten sentido
    opuesto tendrán asignado coeficiente 1.

10
Ejemplo
  • En el grafo donde los arcos continuos son los
    básicos, el arco a45 puede representarse como
  • a45a35a13 -a14 (e3-e5)(e1-e3)-(e1-e4)
    e4-e5

4
3
2
11
Algoritmo simplex para redes
  • El algoritmo consiste en partir de una solución
    básica factible y aplicar el criterio de
    optimalidad a todos los arcos no básicos.
  • Si los costos relativos de las variables no
    básicas son no negativos, se ha alcanzado el
    óptimo.
  • En caso contrario es necesario introducir la
    base el nuevo arco básico con costo relativo más
    negativo y sacar de la base el arco cuya variable
    básica se anule en el proceso de compensación del
    ciclo al que pertenece el nuevo arco básico.

12
Algoritmo simplex para redes
  • Físicamente, los costos relativos de un arco
    representan el costo unitario adicional en que se
    incurre al enviar un flujo unidad a lo largo de
    otra cadena que une los mismos nodos que el arco
    no básico.
  • En la figura, el costo de enviar una unidad de
    flujo desde el nodo 3 al 4 es c34 si se utiliza
    el arco no básico (3,4), o bien
  • c13c15c54 si se utiliza la cadena básica.
  • El costo relativo r34 será la diferencia entre el
    costo absoluto y el costo sintético, éste último
    es el costo en el que se incurre cuando se hace
    uso de la cadena básica que une los mismos nodos
    que el arco no básico, o sea

r34 c34 (c13c15c54 )
13
Algoritmo simplex para redes
  • Este proceso de compensación consiste en, una vez
    identificado el nuevo arco básico y el ciclo al
    que pertenece, se asigna al ciclo el sentido del
    nuevo arco básico
  • Si envio e por el arco 34, tendré que aumentar el
    flujo en e en el arco 13 y decrementar en e en
    los arcos 15 y 54 -gt todos los arcos en la
    dirección del sentido en el ciclo incrementarán
    su flujo
  • Análogamente, los arcos orientados en sentido
    contrario verán decrementados los valores.
  • El máximo incremento posible vendrá limitado por
    el mínimo decremento en el ciclo que se denotará
    por e.
  • Este mínimo decremento vendrá determinado por el
    valor de la variable básica más pequeña de entre
    los arcos orientados en sentido opuesto al
    definido en el ciclo.
  • Esta variable básica, con valor más pequeño, se
    bloqueará alcanzando el valor cero y dejando de
    ser básica.

14
Algoritmo simplex para redes
  • Para conocer, de entre todos los arcos no
    básicos, aquel arco que entra en la base, se
    aplica el criterio de optimalidad del Simplex,
  • que consistirá en calcular todos los costos
    relativos no básicos.
  • Considerando como nuevo arco básico aquél con
    costo relativo más negativo.
  • Para calcular el costo relativo de un arco no
    básico, se identifica el ciclo formado por el y
    otros arcos que sean básicos
  • se le asocia un sentido que coincidirá con la
    orientación del arco no básico.
  • El costo relativo de dicho arco vendrá definido
    por la diferencia entre su costo absoluto y la
    suma algebraica de los costos de los arcos
    básicos del ciclo
  • multiplicados por 1 si están orientados en
    sentido contrario al ciclo
  • multiplicados por -1 si lo esta a favor.
  • Para el ciclo de la figura, se tiene

15
Ejemplo
  • Obtener el flujo máximo con costo mínimo en la
    siguiente red, donde a cada arco se le asocia el
    costo absoluto unitario cij, a cada nodo su nivel
    de oferta/demanda ki y no existen restricciones
    de cota máxima para los flujos que circulan por
    cada arco.
  • Una solución básica factible puede obtenerse
    definiendo un árbol tal como
  • Donde en cada arco se define el flujo que circula
    y que es factible ya que cumple las leyes de
    Kirchhoff en cada nodo.

16
Ejemplo
  • Los costos relativos de los arcos no básicos
    serán
  • Introduciendo el arco r14 en la base
  • Habiéndose alcanzado el óptimo.

17
Obtención de una solución básica factible inicial.
  • Para la definición del algoritmo Simplex para un
    problema de redes es imprescindible partir de una
    solución básica factible con la que iniciar el
    proceso de iteración. La obtención de esta
    solución básica factible puede realizarse
    haciendo uso de variables de holgura y
    resolviendo la Fase I del sistema de ecuaciones
    así obtenido.
  • Para aplicar la Fase I al problema
  • Minimizar cx
  • s.a. Ax k,
  • xgt 0

18
Obtención de una solución básica factible inicial.
  • se amplía el sistema de ecuaciones de
    restricciones con variables de holgura w dichas
    variables serán positivas en las ecuaciones donde
    k gt O y negativas en las ecuaciones donde k lt O ,
    a fin de obtener una solución básica que sea
    factible para el problema primal. Por
    consiguiente, el problema a resolver será
  • Fase I
  • Minimizar w
  • s.a. Ax w k,
  • (x,w) gt 0
  • Su optimización definirá una base inicial.

19
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • donde a cada arco se le asocia el costo absoluto
    unitario cij, a cada nodo su nivel de
    oferta/demanda ki y no existen restricciones de
    cota máxima para los flujos que circulan por cada
    arco.

20
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • la matriz de incidencia nodo-arco es

21
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • Para la obtención de una solución básica
    factible, se resuelve el problema en la Fase I

22
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • La tabla de simplex es

x (-1)
23
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • La tabla de simplex es

24
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • Aplicando Simplex se tiene

25
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • Aplicando Simplex se tiene

26
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • Aplicando Simplex se tiene

27
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
  • Aplicando Simplex se tiene

Se ha alcanzado el final de la fase I y la
solución básica factible es x123 x131 x245
28
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
k22
2
5
3
k4-5
k14
4
1
1
3
k3-1
Aplicando el criterio de optimalidad
r23c23-(c13-c12) -1-(-5-2)7 r32c32-(c12-c13)
6-(25)-1 r34c34-(-c13c12c24)3-(--524)-8
Introduciendo x34 en la base, se tiene
29
Ejemplo Obtener el flujo máximo con costo mínimo
en la red.
Introduciendo x34 en la base, se tiene
k22
2
5-32
k4-5
k14
1
4
Aplicando el criterio de optimalidad
r12c12-(c13c34-c24) 2-(-53-4)8 r23c23-(c24
-c34)-1-(4-3)-2 r32c32-(c34-c24)6-(3-4)7
3
134
3
k3-1
k22
2
Introduciendo x23 en la base, se
tiene r12c12-(c13-c23) 2-(-51)6 r24c24-(c23
c34)-1-(-13)2 r32c32-(-c23)6-(1)5
5-32
k4-5
k14
4
1
3
134
3
k3-1
Todos positivos ? Óptimo
Write a Comment
User Comments (0)
About PowerShow.com