Das Faktonale Pze-Collectng Stene Tee Poblem auf Baumgaphen Motvaton Gunna W. Klau (TU Wen Ivana Ljubć (TU Wen Peta Mutzel (Un Dotmund Ulch Pfeschy (Un Gaz René Weskche (TU Wen Motvaton Modell Kosten und Pofte Kosten ene Kante: Kosten fü Aufgaben, Velegen de Rohe, Wedehestellen de Stasse Poft enes Knoten: Kunden-Knoten: Ewatete Zahlungen fü Wämelefeung be Anschluß an das Netzwek Keuzungsknoten: Poft= Pze-Collectng Stene Tee Poblem (PCSTP Input: G = (V,E p: V N (Poft de Knoten c: E N (Kosten de Kanten Output: Zusammenhängende Telgaph G =(V,E, Status: NP-had 1
Faktonale Zelfunkton: Faktonales PCST auf Bäumen Poblem mt de lneaen Zelfunkton: Höhee Gewnnsumme Höhee Rentabltät Netzwek 1 Netzwek 2 Kosten 5 Mll. 22, Pofte 5.2 Mll. 4, Im weteen wd de nteessante Spezalfall G st en Baum behandelt. Lneae Zelfunkton n O(n Zet enfach lösba Faktonale Zelfunkton: Veglechsstude fü veschedene Suchstategen Komplextätsvebesseung be Megddo-Methode Altenatve Zelfunkton: Maxmee Rentabltät eschenen n: Poceedngs of the 11. ESA Euopean Symposum on Algothms, 2, Spnge Lectue Notes n Compute Scence 282. Subdvdng the Poblem Tees: The Lnea Case Assume: optmal ooted sub-tee of T has value P (T Tees Blocks e 1 T 1 v e n T n Optmal sub-tee wth oot v contans edge e f: Makes sense fo vllage topologes Example 9 2 9 6 14 6 7 5 6 14 7 2 4 1 8 2 7 8 2 7 Example 2 9 6 7 7 2 4 1 8 2 7 2
Factonal Objectve Functon: Paametc Seach Assumpton: We have algothm A fo solvng lnea veson of Poblem P Goal: Solvng the factonal veson P F of P whee the objectve functon s the quotent of pofts and costs Factonal Objectve Functon: Paametc Seach Multply all costs wth a facto t Q + new lnea poblem P(t: Thee s a t* wth the popetes: 1 P(t* has same optmal sub-tees as P F 2 Objectve value o(t* = The optmal soluton fo P F s t* Apply lnea algothm to P(t Factonal Objectve Functon: Geometc Intepetaton lnea functon Factonal Objectve Functon: How to fnd t*? (1 Staghtfowad Appoach: fo each subteet f Bnay Seach T o(t: pecewse lnea, convex, monotoncally deceasng t* t + easy to handle uppe bound fo t*? no polynomal unnng tme bound stoppng cteon Example: Bnay Seach 1 27/2 2 4 9 Example: Bnay Seach 2 27/4 2 4 9 6 7 6 7 7 2 4 8 2 7 o( -54 z fac 7 2 4 8 2 7 o( -27 z fac
Example: Bnay Seach 27/8 2 4 9 Example: Bnay Seach 4 27/16 2 4 9 6 7 6 7 7 2 4 8 2 7 o( -27/2 z fac 7 2 4 8 2 7 o( -41/8 z fac 5/6 Example: Bnay Seach Example: Bnay Seach 5 27/2 4 6 81/64 4 2 9 2 9 6 7 6 7 7 2 4 8 2 7 o( 5/2 z fac 49/45 7 2 4 8 2 7 o( -8/2 z fac 5/6 Example: Bnay Seach Example: Bnay Seach 7 15/128 4 8 297/256 4 2 9 2 9 6 7 6 7 7 2 4 8 2 7 o( 1/4 z fac 7/2 7 2 4 8 2 7 o( -1/256 z fac 29/25 4
Example: Bnay Seach 9 567/512 2 4 9 Example: Bnay Seach 1 1161/124 2 4 9 6 7 6 7 7 2 4 8 2 7 o( 25/16 z fac 7/2 7 2 4 8 2 7 o( 2/2 z fac 7/2 Example: Bnay Seach Example: Bnay Seach 11 249/248 4 12 4725/496 4 2 9 2 9 6 7 6 7 7 2 4 8 2 7 o( 11/257 z fac 7/2 7 2 4 8 2 7 o( 659/496 z fac 29/25 Factonal Objectve Functon: How to fnd t*? (2 Moe advanced: Factonal Objectve Functon: Newton s Method f Newton s Method + stll qute easy to handle + explots the geometc popetes of o(t o(t + polynomal unnng tme bounds t 1 t 2 t* t 5
Example: Newton Example: Newton 4 4 2 9 2 9 6 7 6 7 7 2 4 1 o( 8 2 7 1 54 +1 27/28 7 2 4 o( 8 2 7 2 27/28 1 +1 7/2 Example: Newton Example: Newton 4 4 2 9 2 9 6 7 6 7 7 2 4 8 2 7 7/2 o( 151/2 +1 29/25 7 2 4 8 2 7 4 29/25 o( +1 =t* 29/25 Newton s Method Runnng tme bounds: Radzk: teatons Theoem: teatons unnng tme Wost case example:... Factonal Objectve Functon: How to fnd t*? ( Dffeent appoach: f Megddo s Method Instead of seachng fo t*, the lnea poblem s solved wth fxed costs esp. pofts eplaced by lnea functons. 6
Factonal Objectve Functon: Megddo s Method Smulate un of lnea algothm on P(t* Consde all leafs of the tee Edge e s assgned label tue f: Megddo s Method Inteval fo t*: Root of Solvng lnea poblem P(t decdes label of e and dentfes t as uppe o lowe bound fo t* a-bt Megddo s Method Megddo s Method Inteval fo t*: Root of a-bt Inteval fo t*: Root of a-bt Solve P (t t wll be new o Inteval becomes smalle Decson lke befoe Speed-Up Collect oots t of the decsons fo all leafs of the tee and sot them Bnay seach on soted sequence executng A untl all decsons ae fxed Delete all cueneafs fom tee and add the lnea functon to the functon of the paenf edge label s tue Stat nexteaton Example: Megddo 4 2 9 6 7 7 2 4 1 8 2 7 7
Example: Megddo Example: Megddo callng lnea alg. wtht=... o(t = /7 > = Example: Megddo Example: Megddo /2 callng lnea alg. wtht= /2... o(t = -4 < = /2 Example: Megddo /2 Example: Megddo /2 8
Example: Megddo /2 Example: Megddo /2 Example: Megddo /2 Example: Megddo 24/19 callng lnea alg. wtht= 24/19... o(t = -49/19 < = 24/19 Example: Megddo 24/19 Megddo: Analyss No degee 2 vetces (.e. no paths: Evey teaton deletes aeasalf of all emanng vetces O(nlog logn total unnng tme Geneal tees (wth vetces of degee 2: path contacton 9
Megddo: Path Contacton Case 1: optmal soluton contans subtee T Megddo: Path Contacton Case 2: optmal soluton cuts off subtee T Contans cost of the complete path Contans cost of the best pat of the path T T Megddo: Path Contacton Combnaton: put atfcal vetex between oot and T Contans cost of the best pat of the path Edge contans cost of the emanng path Megddo: Path Contacton How to fnd the best vetex on the path? m vetces on the path m canddates each coesponds to a lnea cost functon fnd mnmum of m lnea functons m beakponts n O(m logm tme collect them and pefom bnay seach togethe wth the oots fom the leafs T Megddo: Path Contacton Analyss: If path contacton s pefomed n evey teaton aeast one thd of all emanng vetces ae deleted n evey teaton Recuson fo oveall unnng tme T(n: T(n n logn + T(2/ n... O(nlog logn total unnng tme fo geneal tees Computatonal Expements Computatons on andomly geneated tees wth 1,-1, vetces 1 gaphs fo each sze Two dffeent tee sets: Maxmum 2 chlden pe vetex Maxmum 1 chlden pe vetex Two dffeent sets of andom pofts/costs Range 1-1, Range 1-5 1
Numbe of Calls to Lnea Algothm by Megddo Runnng Tmes 5 1.6 25 2 1.4 1.2 1 Degee 2 c/p 1-1 Degee 1 c/p 1-1 Degee 2 c/p 1-5 Degee 1 c/p 1-5 15 1 5 5 1 15 2 25 5 4 45 5 55 6 65 Numbe of Vetces Degee 2 c/p 1-1 Degee 1 c/p 1-1 Degee 2 c/p 1-5 Degee 1 c/p 1-5 7 75 8 85 9 95 1 15 Seconds.8.6.4.2 1 15 2 25 5 4 45 5 55 6 65 Numbe of Vetces 7 75 8 85 9 95 1 Compason: Numbe of Calls 25 Megddo D2 Megddo D1 Bnay Seach D2 Bnay Seach D1 Newton D2 Newton D1 2 15 1 5 2 4 6 8 1 Numbe of vetces 11