método out of kilter ook
TRANSCRIPT
-
8/18/2019 Método Out of Kilter OOK
1/27
Método Out Of Kilter(OOK)
ALCANTAR HERNANDEZ JOAN JAVIERHERNANDEZ PEÑA ARI JAIR
MARTINEZ MONTIEL GABRIEL EDUARDO
GARCIA SANTILLAN ANA IRIS
-
8/18/2019 Método Out of Kilter OOK
2/27
El algoritmo f! "r!a#o $or Dr& 'l(!r)o* + An out-of-Kilter method for Minimal Cost Flow problems,&
El Algoritmo o$!ra #!-*i!*#o la) "o*#i"io*!) la)
"al!) )! #!.!* #! )ati)fa"!r $ara o.t!*!r *a"ir"la"i/* /$tima !* *a r!#& D!.i!*#o )ati)fa"!r *01o 2! )ati)faga la) "a$a"i#a#!) #! r!)tri""i/* #!lo) ar"o) 3 !l !)ta#o #! "o*)!r4a"i/* #! 01o #! lo)*o#o)& Ca*#o *a "ir"la"i/* o$tima !) #!t!rmi*a#a5
to#o) lo) ar"o !) !)t6* 77in-kilter 77& E* alg8* $*to #!o$!ra"i/* #!l algoritmo5 )i *o !9i)t! "ir"la"i/*5alg*o) ar"o) !)tar6* 77Ot:of:(ilt!r77 ::D! a2; !l*om.r! #!l algoritmo&
Creación y Denición
-
8/18/2019 Método Out of Kilter OOK
3/27
El algoritmo )!l!""io*ara ar.itrariam!*t!* ar"o Ot:of:(ilt!r 3 tratara #! r!
-
8/18/2019 Método Out of Kilter OOK
4/27
El !)ta#o !)ta"io*ario#! 01o) !* r!#!)$!#! r!$r!)!*tar)i)t!ma) f;)i"o) 3 *o
f;)i"o)& El "om$l!1o #!ato$i)ta) 2! )!m!)tra !* la -gra?5 !*la@a* a N!4a
>or(5 C
-
8/18/2019 Método Out of Kilter OOK
5/27
Lo) !l!m!*to) "om*!) !* !)ta))ita"io*!)5 )o* *a "ol!""i/* #! $*to)
llama#o) *o#o) 3 *a "ol!""i/* #! ar"o)2! "o*!"ta) a !)to) *o#o)& Lo) *o#o) )!#!*ota* "o* l!tra) !* mi*8)"la5 $or!1!m$lo !* *o#o +i,5 3 lo) ar"o) )!
i#!*ti-"a* *om.r6*#olo) $or lo) *o#o) "o*lo) 2! "o*!"ta5 ar"o i5 1& Alg*a)*i#a#!)
-
8/18/2019 Método Out of Kilter OOK
6/27
E* la ma3or;a #! lo) $ro.l!ma) #! r!#!)5 lo) ar"o) ti!*!* *"o)to 3 *a "a$a"i#a# #! "ara"t!r;)ti"a)& G!*!ralm!*t!5 !l "o)toi*"rr! !* mo4!r *a *i#a# #!l *o#o i al *o#o 15 3 a !)t! "o)to
#! mo4imi!*to #! *i#a# )! l! #!*ota "omo " i1& E)to $!#! )!r#/lar!) $or *i#a# .om.!a#a #! $!tr/l!o !* *a r!# #!#i)tri."i/* #! $!tr/l!o& 'r!"!*t!m!*t! )! !*"!*tra 2! lo)01o) )! !*"!*tra* limita#o) $or * l;mit! )$!rior o "a$a"i#a##! lo) ar"o)& Por !1!m$lo5 )olo * *m!ro limit! #! 4!
-
8/18/2019 Método Out of Kilter OOK
7/27
Para r!)mir& U*a r!# !)t6 "ara"t!ri@a#a$or *o#o)5 i ar"o) !*tr! *o#o) i5 1 01o
"r@a*#o lo) ar"o)5 9i1 *i#a# #! "o)to #!01o a tra4) #! lo) ar"o)5 "i1 l;mit! )$!rior#! lo) ar"o)5 i1 3 * limit! i*f!rior #! lo)ar"o)5 li1 L "r)i4a mi*8)"la&
E* * $ro.l!ma )i* "o)to5 )! $!rmit! " i15!* $ro.l!ma) )i* l;mit! i*f!rior $!ro "o*01o *i#ir!""io*al )! $!rmit! li1 L "r)i4a
mi*8)"la& Si *o !9i)t!* l;mit!))$!rior!) )! $!rmit! i1 i*-*ito&
-
8/18/2019 Método Out of Kilter OOK
8/27
U* $ro.l!ma g!*!ral !* r!#!) !) !*"o*trar!l "o)to m;*imo #! "ir"la"i/* !* *a r!#
"o* ar"o) "o* "a$a"i#a#& K! !) #! lo 2!)! !*"arga !l algoritmo OO=& El $ro.l!mar!2i!r! 2! !*"o*tr!mo) !l 01o 9i15 2!mi*imi@a !l "o)to total
-
8/18/2019 Método Out of Kilter OOK
9/27
K! al mi)mo ti!m$o )ati)faga la)"o*#i"io*!) o r!)tri""io*!)
> 2! lo m!)tr! * *a "ir"la"i/*5 2!4a3a #!*tro #! * *o#o 3 )alga #!l *o#o&S! r!$r!)!*ta $or
-
8/18/2019 Método Out of Kilter OOK
10/27
Ca*#o !9i)t!* #i)ti*ta) forma) #! r!)ol4!r* $ro.l!ma5 3 2i@6) $!#a )!r"o*"!$tali@a#o o 4i)to "omo * $ro.l!ma#! $rograma"i/* li*!al5 !l algoritmo OO= !)!* am.o) "a)o) !l ma) g!*!ral #! lo)algoritmo) !)$!"iali@a#o) 3 f6"ilm!*t! !lm6) !-"i!*t! 2! * algoritmo !)t6*#ar #!$rograma"i/* li*!al $o#r;a )!r&
En resumen
-
8/18/2019 Método Out of Kilter OOK
11/27
Pro.l!ma .a)! #! "ir"la"i/* #! 01o #! "o)tom;*imo $ara #!)arrollar !l algoritmo Ot Of=ilt!r OO=&
X ij= ujo que va desde el nodo i al j
Cij= !osto aso!iado al transportar de i a j
lij= el m"nimo valor para el ujo que va desde i
a juij= el m#$imo valor para el ujo que va desde
i a j
EJEMPLO
-
8/18/2019 Método Out of Kilter OOK
12/27
El $ro.l!ma a)o"ia#o !)
S1!to a
R!)tri""i/* #! "o*)!r4a"i/* #! 01o $ara "a#a*o#o a#!m6) #! lo) limit!) l 3 u 2! a"ota* lo)4alor!) #! "a#a 01o5 a); "omo tam.i* la *o
*!gati4i#a# #! la) 4aria.l!)&
-
8/18/2019 Método Out of Kilter OOK
13/27
A$li"a"i/*
E) #!"ir lo 2!!*tra a * *o#o#!.! )alir
-
8/18/2019 Método Out of Kilter OOK
14/27
Sigi!*#o "o* la) r!)tri""io*!)
Ra*go #! 4aria.l!) $ara "a#a ar"o 3 "o)to) #! "a#a ar"o
Rano de
!alores
"osi#les "ara
cada arco
Costos de
cada arco
$%&'$% C?$%&'%' C?*%&$% C:+%&,% C:?%&,'% C?
-
8/18/2019 Método Out of Kilter OOK
15/27
R!# 2! r!$r!)!*ta !l $ro.l!ma
5 5
5 5:? 5 Q5
:
?5 5
5 5
-
8/18/2019 Método Out of Kilter OOK
16/27
Algoritmo Ot Of =ilt!r
E)t! mto#o tra.a1a "o* !l $ro.l!ma #! $rograma"i/* li*!al $rimal 3 #al& S! "omi!*@a "o* * 01o "o*)!r4ati4o $ara !l $ro.l!ma $rimal 3 "o*
)ol"i/* fa"ti.l! $ara !l $ro.l!ma #al& S! "al"lo !)ta#o =ilt!r #! "a#a ar"o& S! la r!# ti!*! alg8* ar"o !* !)ta#o Ot:of:=ilt!r )! $a)a a la !ta$a $rimal
#!l algoritmo )i 3a *o )! $!#! o.t!*!r *i*g*a m!1ora !* la !ta$a$rimal5 )! $a)a a la !ta$a #al #!l $ro.l!ma&
E* la !ta$a #al )! "o*)tr3! *a *!4a )ol"i/* $ara !l $ro.l!ma5 3 *a4!@ r!ali@a#o !)to )! 4!l4! a la !ta$a $rimal5
-
8/18/2019 Método Out of Kilter OOK
17/27
Do*#!4i1 r!)tri""io*!) #! l;mit! i*f!rior #! i1
-
8/18/2019 Método Out of Kilter OOK
18/27
• Cualquier caso que cumpla con alguna de estas condiciones será
denominado un arco In Kilter.
• Con cualquier otro caso tendremos un arco Out of Kilter.
Con los datos anteriores se genera una tabla como la siguiente.
Sol"i/* I*i"ial $ara $o#!r #!t!rmi*ar !l !)ta#o #! =ilt!r $ara "a#a ar"o&S!a
i1 * 01o "o*)!r4ati4o $ara !l $ro.l!ma $rimali * )ol"i/* fa"ti.l! $ara !l $ro.l!ma #al
-
8/18/2019 Método Out of Kilter OOK
19/27
Calcular costo reducido de cada arco a partir de esta fórmula:
-rco Costo reducido Relación arco con
cota
.n Kilter/Out Of
Kilter
'$ : ?l? I* =ilt!r
' : ?Fl? Ot Of =ilt!r
$ l Ot Of =ilt!r
, ? l Ot Of =ilt!r
,' ?
l?
I* =ilt!r
Fase Primal:
• Se define el # Kilter como el valor que se necesita aumentar o disminuir el
flujo de arco ij de tal forma que dic!a arco quede en estado In Kilter.
•
"n la fase primal se construe la red residual de la red en la que sedetermina la cantidad má$ima en que puede variar el flujo en cada arco% sin
empeorar el # Kilter de cada uno manteniendo las restricciones de
conservación de flujo.
• "sto se puede reali&ar buscando circuitos dentro de la red residual que
contenga el arco In Kilter que se desea modificar.
-
8/18/2019 Método Out of Kilter OOK
20/27
Si "al"lamo) !l 4alor #!l 01o $ara #!1ar * ar"o !* !)ta#o I* =ilt!r5o.t!*!mo) la )igi!*t! ta.la
Varia"i/* *!"!)aria #! =ilt!r $ara "a#a "a)o&
Red Residual
Sigi!*#o la ta.la a*t!rior o.t!*!mo):
-
8/18/2019 Método Out of Kilter OOK
21/27
'!)$) )! toma * ar"o 2! )! !*"!*tr! !* !)ta#o Ot of=ilt!r5 "omo $or !1!m$lo !l ar"o ?5
D!)$) )! .)"a * "ir"ito 2! "o*t!*ga #i"
-
8/18/2019 Método Out of Kilter OOK
22/27
Por 8ltimo !l m69imo 01o 2! $o#r!mo) !*4iar )!r6 !l "orr!)$o*#i!*t!al m!*or 4alor #!*tro #!l "ir"ito5 2! !* !)t! "a)o !) ?&
A"tali@a*#o #ato)
Co* lo) *!4o) #ato) o.t!*i#o) !) *!"!)ario 4ol4!r a
-
8/18/2019 Método Out of Kilter OOK
23/27
E* !)ta fa)! !) *!"!)ario "am.iar !l 4alor 2! #o.l! i #! tal forma 2!
*i*g8* *8m!ro =ilt!r !) am!*ta#o 3 a#!m6) )! !)$!ra 2! *!4o) ar"o)$a)!* a formar $art! #! la r!# r!)i#al 2! $!rmita !*"o*trar "ir"ito)
*!4o)&Da#o * ar"o $5 2 !* !)ta#o Ot of =ilt!r )!a 9 !l "o*1*to #! *o#o) alo) 2! )! $!#! ll!gar #!)#! 2 $or alg8* "ami*o !* la r!# r!)i#al )!a .arra !l "o*1*to #! *!4o) !9"li#o) #! 9&
Criterio "ara m01imo !alor de 2eta
-
8/18/2019 Método Out of Kilter OOK
24/27
La forma #! a"tali@ar lo) #ato)
Calcular teta
Prim!ro #!.!mo) #!t!rmi*ar lo) "o*1*to) 9 3 9 .arra )a*#o ar"o 5 t!*!mo) 2! #!)#! !l *o#o $o#!mo) 4i)itar al *o#o #!)#! !l *o#o $o#!mo) 4i)itar !l *!4o ? $or lo 2! 9 !)tar6 "om$!)to $or lo) *o#o) ? !)to 8ltimo *o) ll!4a a 2! 9 .arra )/lo t!*#r6 al *o#o a); )a.!mo)
a
-
8/18/2019 Método Out of Kilter OOK
25/27
-ctuali3ación de los datos
A"tali@a*#o to#o) lo) #ato) $o#!mo) 4!r 2! lo) "o)t!)
r!#"i#o)
-
8/18/2019 Método Out of Kilter OOK
26/27
Al "al"lar la *!4a r!# r!)i#al$o#!mo) 4!r 2! a$ar!"i/ * *!4oar"o "o* r!)$!"to al a*t!rior 3 !)ta4!@ )i !) $o)i.l! !*"o*trar * "ir"ito2! "o*t!*ga al ar"/ 5 !l 4alor#!l 01o !)ta 4!@ !) &
-
8/18/2019 Método Out of Kilter OOK
27/27
Ultima Iteración
Sigi!*#o "o* !l algoritmo $o#!mo)ll!gar a la )igi!*t! 3 ltimait!ra"i/*& Do*#! l!go #! $a)ar $or
*a 8ltima ta$a #o*#! )! ll!ga a 2!to#o) lo) ar"o) !)t6* !* * !)ta#o i*=ilt!r $or lo ta*to la )ol"i/* !)oo$tima&