Ingeniería en Tecnologías de la Información y Comunicaciones

Problema de flujo a coste mínimo.Sea G = (V,A) un grafo con dos vértices fijos, s el nodo fuente y t el nodo destino. Cada arco (i,j) A tiene asociada una capacidad k y un coste por unidad de flujo que circula
ij

por cada arco c . Sea
ij

la cantidad de flujo demandada desde el nodo t, para ser

servida desde el nodo s. Entonces podemos plantear el problema de flujo a coste mínimo en los siguientes términos: enviar unidades de flujodesde el nodo s al nodo t de G = (V,A) con el patrón de flujo cuyo coste asociado sea el mínimo, satisfaciendo las restricciones de capacidad y conservación en los nodos V {s,t}. En este caso el patrón de flujo f de ser tal que :

Red residual.La red residual R(f) correspondiente a un flujo f se define como sigue: Reemplazamos cada arco (i,j) A por dos arcos (i,j) y (j,i). El arco (i,j) tiene un coste c y una capacidad
ij

residual de r = k
ij ji ij

ij

f , y el arco (j,i) tiene un coste de c = -c y una capacidad residual de
ij ji ij

r = f . En la red residual se consideran sólo los arcos con capacidad positiva. Algoritmo de Busacker. El algoritmo de Busacker y Gowen (1961) intenta enviar las unidades de flujo de s a t eligiendo en cada iteración el camino de mínimo coste de s a t, que envía un flujo igual al cuello de botella del camino. El algoritmo termina cuando se han enviado las unidades de flujo, o no hay camino de s a t. En este último caso el problema no tiene solución. Denotamos: CT = coste total del camino que envía las unidades CC = coste del camino mínimo que se calcula en cada iteración. Sea G = (V,A) un grafo dado, y s y t dos vértices fijados a priori.
1

Si . Paso 5: Si i = s. 2 .. Sea = e i = t.i y para aquellos arcos tales que r i = 0 entonces c Predi. i Asignar a CC el coste de tal camino . hacer i = t e ir al Paso 4.t... si > r entonces = r Predi.> 0 hacer = . En otro caso de que no exista tal camino.Predi =r i.c Predi. y asignar Paso 2: Buscar el camino mínimo de s a t en la red incremental usando el algoritmo de Ford.i = . i. y almacenarlo en Pred i = s.. Paso 6: Asignar CT = CT + * CC..i Predi. En otro caso .i * Predi. Hacer i = Pred y repetir el paso 3.i * Predi..r Predi. no hay solución factible.i * = . Construir la red incremental de G.> 0 entonces asignar En otro caso hacer = ..Ingeniería en Tecnologías de la Información y Comunicaciones Paso 1: Asignar CT = 0..Predi + c i. parar puesto que no existe solución factible. Almacenarlo en Pred i = s. Hacer = e i = t e ir al Paso 3.y buscar un nuevo camino de coste mínimo de s a t pero con los nuevos costes asignados a los arcos.t y asignar a i CC el coste de tal camino. En otro caso. ir al Paso 6. Paso 3: Si i = s. i Paso 4: Si .i . r =r . Si no existe tal camino Parar. Hacer i = Pred y repetir el Paso 5..Predi =.

3 . parar hemos encontrado el camino de flujo a coste mínimo.Ingeniería en Tecnologías de la Información y Comunicaciones Si - 0.

Sign up to vote on this title
UsefulNot useful