You are on page 1of 29

TEMA 5: El problema del flujo con costo mnimo

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

Definicin del problema


Definicin 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 ki>0, existe una oferta en el nodo i denominndose fuente u origen . Si ki<0, existe una demanda en el nodo i denotndose por sumidero o destino. Si ki=0, el nodo i denomina intermedio o de transbordo.

A cada arco (i,j) se asociar una variable xij>= 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 conservacin de Kirchhoff.
kj j i xij cij

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

Formulacin matemtica del problema. La formulacin matemtica del problema de flujo con costo mnimo queda como:
n n ij ij

Minimizar s.a.

c x
i !1 j !1

kD ( j )

x jk 

i A ( j )

xij !k j

j ! 1, 2,..., n

lij e xij e uij

i, j ! 1, 2,..., n

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

Ejemplo:
k1=1 1 0 k4=-3 4 1 3 3 k3=0 1 2 2 -2 6 5 k5=6 2 k2=-4

Minimizar s.a.

2 x12  3 x13  x14  2 x23  6 x35  x45  2 x52 x12  x13  x14 ! 1,  x12  x23  x52 ! 4,  x13  x23  x34  x35 ! 0,  x14  x34  x45 ! 3,  x35  x45  x52 ! 6, 0 e xij e g.

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

Propiedades del problema El problema puede reescribirse, en forma matricial, como: Minimizar cx

s.a. Ax = k l e xeu
Matriz de incidencia, A=[aij], [aij]=ei-ej y ei es el vector unitario i-simo.

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

Propiedades del problema

Adicionando todas las filas de la matriz A se tiene que k ! 0 para que el problema tenga solucin, es decir las restricciones deben ser combinaciones lineales; y por consiguiente, el rango de la matriz A es como mximo rango (A)<= n-1, donde n define el nmero de nodos de la red.
n j !1 j

Propiedades importantes:
1. El rango de la matriz A es n-1 2. Las soluciones del problema son siempre enteras para valores de ki enteros.

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

Propiedades del problema


1. El rango de la matriz A es n-1
(i,j) Tantas columnas como arcos Tantas filas como nodos aij es la columna de A que corresponde al arco que une los nodos i y j ! aij ! ei  e j xij j i xij aparece en la ecuacin del nodo i con signo + y en la ecuacin del nodo j con signo -

A!

0 0 1 0 0 1 0

Dimensiones de A: nodos (n) x arcos

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

Ciclos y Dependencia Lineal


Dos teoremas de gran valor para la definicin del algoritmo que permitir resolver el problema formulado: Teorema 1. Un conjunto de columnas de la matriz A sern linealmente dependientes si y solo si existe un ciclo entre sus nodos. Demostracin: Supongamos un subgrafo del grafo original, cuyos nodos unidos por arcos definen un ciclo, tal y como se muestra en la siguiente figura: i n j l Asignando una orientacin arbitraria a dicho ciclo, a los arcos en dicha direccin un coeficiente +1 y a los arcos orientados en sentido opuesto un coeficiente -1, se tiene: [aij]+[ajk ]-[ alk ]+[ alm ]-[ anm]+ =(ei-ej)+(ej-ek)-(el-ek)+(el-em)-(en-em)+=0 por lo que las columnas de A correspondientes los arcos no son linealmente independientes. Corolario: Las variables bsicas no podrn formar un ciclo y, por tanto, definen un rbol compuesto por n-1 arcos y n nodos.
Explotacin del Transporte Areo, 5 Ing. Aeronutico Profesor: Jose M del Castillo Granados
8

Ciclos y Dependencia Lineal


Teorema 2. Cualquier arco no bsico cuya columna es [alm] puede representarse como combinacin lineal de las columnas de los n-1 arcos bsicos. As, el conjunto definido por las columnas que representan los vectores bsicos y el no bsico [alm] definirn el ciclo. Corolario: para obtener la representacin correcta de un arco no bsico dado, simplemente se localiza el ciclo nico en el subgrafo de la base que contiene el arco asociado. Definiendo una orientacin acorde con el arco no bsico, cualquier arco en el ciclo que posea la misma orientacin, tendr asignado un coeficiente de -1, mientras que los que presenten sentido opuesto tendrn asignado coeficiente +1.

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

Ejemplo

En el grafo donde los arcos continuos son los bsicos, el arco a45 puede representarse como:
[a45]=[a35]+[a13 ]-[a14 ]=(e3-e5)+(e1-e3)-(e1-e4)=e4-e5

4 1 3 2 5

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

10

Algoritmo simplex para redes El algoritmo consiste en partir de una solucin bsica factible y aplicar el criterio de optimalidad a todos los arcos no bsicos. Si los costos relativos de las variables no bsicas son no negativos, se ha alcanzado el ptimo. En caso contrario es necesario introducir la base el nuevo arco bsico con costo relativo ms negativo y sacar de la base el arco cuya variable bsica se anule en el proceso de compensacin del ciclo al que pertenece el nuevo arco bsico.

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

11

Algoritmo simplex para redes


Fsicamente, 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 bsico. 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 bsico (3,4), o bien c13+c15+c54 si se utiliza la cadena bsica. El costo relativo r34 ser la diferencia entre el costo absoluto y el costo sinttico, ste ltimo es el costo en el que se incurre cuando se hace uso de la cadena bsica que une los mismos nodos que el arco no bsico, o sea: r34 = c34 (c13+c15+c54 )
5 3 2

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

12

Algoritmo simplex para redes


Este proceso de compensacin consiste en, una vez identificado el nuevo arco bsico y el ciclo al que pertenece, se asigna al ciclo el sentido del nuevo arco bsico:
Si envio I por el arco 34, tendr que aumentar el flujo en I en el arco 13 y decrementar en I en los arcos 15 y 54 -> todos los arcos en la direccin del sentido en el ciclo incrementarn su flujo Anlogamente, los arcos orientados en sentido contrario vern decrementados los valores. El mximo incremento posible vendr limitado por el mnimo decremento en el ciclo que se denotar por I. Este mnimo decremento vendr determinado por el valor de la variable bsica ms pequea de entre los arcos orientados en sentido opuesto al definido en el ciclo. Esta variable bsica, con valor ms pequeo, se bloquear alcanzando el valor cero y dejando de ser bsica.

1 I

I

5 I

3 2

I

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

13

Algoritmo simplex para redes


Para conocer, de entre todos los arcos no bsicos, aquel arco que entra en la base, se aplica el criterio de optimalidad del Simplex,
que consistir en calcular todos los costos relativos no bsicos. Considerando como nuevo arco bsico aqul con costo relativo ms negativo.

Para calcular el costo relativo de un arco no bsico, se identifica el ciclo formado por el y otros arcos que sean bsicos;
se le asocia un sentido que coincidir con la orientacin del arco no bsico. 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 bsicos del ciclo multiplicados por +1 si estn orientados en sentido contrario al ciclo I multiplicados por -1 si lo esta a favor. 5 1 Para el ciclo de la figura, se tiene: I

r34 ! c34  (c13  c15  c54 )

I

3 2

I

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

14

Ejemplo
Obtener el flujo mximo con costo mnimo 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 mxima para los flujos que circulan por cada arco.
k1=1 1 0 k4=-3 4 2 3 3 k3=0 1 2 -2 6 5 k5=6 k2=-4

Una solucin bsica 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.
Explotacin del Transporte Areo, 5 Ing. Aeronutico

k1=1 1

1 3 3

1 3 3 k3=0 1

2 6 6 5

k2=-4

k4=-3

k5=6

Profesor: Jose M del Castillo Granados

15

Ejemplo
Los costos relativos de los arcos no bsicos sern:
r14 ! c14  c34  c23  c12 ! 1  0  2  2 ! 3 r13 ! c13  c12  c23 ! 3  2  2 ! 1 r35 ! c35  c52  c23 ! 6  2  2 ! 6 r45 ! c45  c34  c23  c52 ! 1  0  2  2 ! 1

k1=1 1

1 3 3

1 3 3 k3=0 1

2 6 6 5

k2=-4

k4=-3

k5=6

Introduciendo el arco r14 en la base:


r12 ! c12  c14  c34  c23 ! 2  1  0  2 ! 3 r13 ! c13  c14  c34 ! 3  1  0 ! 2 r35 ! c35  c52  c23 ! 6  2  2 ! 6 r45 ! c45  c34  c23  c52 ! 1  0  2  2 ! 1

k1=1 1

1 3 2

1 2 3 k3=0 1

2 6 6 5

k2=-4

k4=-3

k5=6

Habindose el ptimo.

alcanzado
Profesor: Jose M del Castillo Granados
16

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Obtencin de una solucin bsica factible inicial. Para la definicin del algoritmo Simplex para un problema de redes es imprescindible partir de una solucin bsica factible con la que iniciar el proceso de iteracin. La obtencin de esta solucin bsica 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, x>= 0

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

17

Obtencin de una solucin bsica factible inicial. se ampla el sistema de ecuaciones de restricciones con variables de holgura [ ; dichas variables sern positivas en las ecuaciones donde k > O y negativas en las ecuaciones donde k < O , a fin de obtener una solucin bsica que sea factible para el problema primal. Por consiguiente, el problema a resolver ser: Fase I:
Minimizar s.a. [ Ax [ = k, (x,[) >= 0

Su optimizacin definir una base inicial.

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

18

Ejemplo: Obtener el flujo mximo con costo mnimo en la red. k2=2 2 2 k1=4 1 -5 3 k3=-1 6 -1 3 4 4 k4=-5

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 mxima para los flujos que circulan por cada arco.

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

19

Ejemplo: Obtener el flujo mximo con costo mnimo en la red. k2=2 2 2 k1=4 1 -5 3 k3=-1 6 -1 3 4 4 k4=-5

la matriz de incidencia nodo-arco es:

1, 2 1,3 2,3 2, 4 3, 2 3, 4
1 1 2 1 A! 3 0 4 0 1 0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 0 0 1 1

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

20

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.

Para la obtencin de una solucin bsica factible, se k =2 resuelve el problema en la Fase I: 2


2

2 k1=4 1 -5 3 k3=-1 6 -1

4 4 k4=-5 3

Minimizar s.a.

[ Ax s [ ! k ,

x, [ u 0
donde Ax s [ ! k viene dada por: 1 1 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 0 0 1 1 1 0 0 4 0 1 0 0 2 x! 1 0 0 1 0 0 0 0 1 5 0

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

21

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.

La tabla de simplex es:


k1=4 1

k2=2 2 2 6 -5 3 k3=-1 -1 3 4 4 k4=-5

x12

x13

x23

x24

x32

x34

[

[

[

[

1 -1
x (-1)

1 0 -1 0 0

0 1 -1 0 0

0 1 0 -1 0

0 -1 1 0 0

0 0 1 -1 0

1 0 0 0 1

0 1 0 0 1

0 0 -1 0 1

0 0 0 -1 1

4 2 -1 -5

0 0 0

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

22

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.

La tabla de simplex es:


k1=4 1

k2=2 2 2 6 -5 3 k3=-1 -1 3 4 4 k4=-5

x12

x13

x23

x24

x32

x34

[

[

[

[

1 -1 0 0 0

1 0 1 0 0

0 1 1 0 0

0 1 0 1 0

0 -1 -1 0 0

0 0 -1 1 0

1 0 0 0 1

0 1 0 0 1

0 0 1 0 1

0 0 0 1 1

4 2 1 5

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

23

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.


k2=2 2 2 4 6 -5 3 k3=-1 -1 3 4 k4=-5

Aplicando Simplex se tiene:

k1=4

x12

x13

x23

x24

x32

x34

[

[

[

[

ki/aij

1 -1 0 0 0 0

1 0 1 0 0 -2

0 1 1 0 0 -2

0 1 0 1 0 -2

0 -1 -1 0 0 2

0 0 -1 1 0 0

1 0 0 0 1 0

0 1 0 0 1 0

0 0 1 0 1 0

0 0 0 1 1 0

4 2 1 5

4 1

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

24

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.


k2=2 2 2 4 6 -5 3 k3=-1 -1 3 4 k4=-5

Aplicando Simplex se tiene:

k1=4

x12

x13

x23

x24

x32

x34

[

[

[

[

ki/aij

1 -1 0 0 0

0 0 1 0 0

-1 1 1 0 0

0 1 0 1 -2

1 -1 -1 0 0

1 0 -1 1 -2

1 0 0 0 0

0 1 0 0 0

-1 0 1 0 2

0 0 0 1 0

3 2 1 5 5 2

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

25

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.


k2=2 2 2 4 6 -5 3 k3=-1 -1 3 4 k4=-5

Aplicando Simplex se tiene:

k1=4

x12

x13

x23

x24

x32

x34

[

[

[

[

ki/aij

1 -1 0 1 -2

0 0 1 0 0

-1 1 1 -1 2

0 1 0 0 0

1 -1 -1 1 -2

1 0 -1 1 -2

1 0 0 0 0

0 1 0 -1 2

-1 0 1 0 2

0 0 0 1 0

3 2 1 3

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

26

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.


k2=2 2 2 4 6 -5 3 k3=-1 -1 3 4 k4=-5

Aplicando Simplex se tiene:

k1=4

x12

x13

x23

x24

x32

x34

[

[

[

[

ki/aij

1 0 0 0 0

0 0 1 0 0

-1 0 1 0 0

0 1 0 0 0

1 0 -1 0 0

1 1 -1 0 0

1 1 0 -1 2

0 1 0 -1 2

-1 -1 1 1 0

0 0 0 1 0

3 5 1 0

Se ha alcanzado el final de la fase I y la solucin bsica factible es: x12=3 x13=1 x24=5
Explotacin del Transporte Areo, 5 Ing. Aeronutico Profesor: Jose M del Castillo Granados
27

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.


k2=2 2 3 k1=4 1 1 3 k3=-1 Aplicando el criterio de optimalidad: r23=c23-(c13-c12)= -1-(-5-2)=7 r32=c32-(c12-c13)=6-(2+5)=-1 r34=c34-(-c13+c12+c24)=3-(--5+2+4)=-8 Introduciendo x34 en la base, se tiene: 5 4 k4=-5

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

28

Ejemplo: Obtener el flujo mximo con costo mnimo en la red.


Introduciendo x34 en la base, se tiene: k2=2 2 5-3=2 Aplicando el criterio de optimalidad: r12=c12-(c13+c34-c24)= 2-(-5+3-4)=8 r23=c23-(c24-c34)=-1-(4-3)=-2 r32=c32-(c34-c24)=6-(3-4)=7 Introduciendo x23 en la base, se tiene: r12=c12-(c13-c23)= 2-(-5+1)=6 r24=c24-(c23+c34)=-1-(-1+3)=2 r32=c32-(-c23)=6-(1)=5 Todos positivos ptimo k1=4 1 3 k3=-1 3 k1=4 1 3 k3=-1 k2=2 2 5-3=2 4 k4=-5 3 4 k4=-5

1+3=4

1+3=4

Explotacin del Transporte Areo, 5 Ing. Aeronutico

Profesor: Jose M del Castillo Granados

29

You might also like