αλγόριθμοι άμεσης απόκρισης_καραγιάννης_2009

83
Αλγόριθμοι ΄Αμεσης Απόκρισης Ιωάννης Καραγιάννης Μάρτιος 2009

Transcript of αλγόριθμοι άμεσης απόκρισης_καραγιάννης_2009

  • 1. 2009

2. 2 3. 1 5 2 ; 9 2.1 . . . . . 10 2.2 . . . . . . . . . . . . . . . . . . . . 11 2.3 . . . . . . . . . . . . . . . . . . 13 3 15 3.1 . . . . . . . . . . . . . . . . . . . 16 3.2 . . . . . . 16 3.3 (h, k) . . . . . . . . . . . . . . 18 3.4 . . . 19 3.5 . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4 Yao 25 4.1 . . . . . . . . . . . . . . . . . . . . . . . 25 4.2 . . . . . . . . . . . . . . . . . . . . . 26 4.3 . . . . . . . . . . . . 28 5 31 5.1 MARK . . . . . . . . . . . . . . . . . . . . . . . 31 5.2 . . . . . . . . . . 33 6 37 6.1 . . . . . . . . . . . 38 6.2 SLOWFIT . . . . . . 39 6.3 . . . . . . . . . 43 6.4 . . . . . . . . . . . . . . . . . . . 44 6.5 . . . . . . . . . . . . . . . 48 3 4. 4 7 53 7.1 . . . . . . . . . . . . . . . . . . . 53 7.2 : . . . . . . . . 55 7.3 ROBIN-HOOD . . . . . . . . . . . . . . . . . . 57 8 61 9 69 9.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 9.2 . . . . . . . . . . . . . . . . . . . . 71 9.3 . . . . . . . . . . . . . . . . 76 5. 1 - (online algorithms). . - . . , . , - . - (competitive analy- sis), , () . (competitive ratio). ALG . , C OPT() C ALG() . OPT() ALG() () 5 6. 6 1. ALG , . ALG . , ALG() - . - ALG (oblivious adversaries) C OPT() C IE[ALG()] . , - ALG = 0. , C : C = max OPT() IE[ALG()] . , () - ALG C IE[ALG()] C OPT() . OPT() ALG() () ALG , . C = max IE[ALG()] OPT() 0. . 7. 7 - (, ). , , - . ; (ski-rental), (paging) , (load balancing), (bin packing), (call admission). 8. 8 1. 9. 2 ; . . . , . . , . , . . . . , . , . ; 9 10. 10 2. ; 2.1 - . . , . , . 1 - B . 1 , - . , = B, . . 1. ; = B 2 1 B . . - = B 2 1 B . t0, ALGB(t) t OPT(t) t . B = maxtB(t) B(t) = ALGB(t) OPT(t) . B(t) 2 1/B, t0. t OPT(t) = min{t, B}. t- ALGB(t) = t tB (t t ) ALGB(t) = 2B 1 t B (B 1 B 1 B). , B(t) = t min{t,B} = 1 tB B(t) = 2B1 min{t,B} = 2B1 B = 2 1 B t B. , B(t) 2 1 B , B 2 1 B . , = B . - 2 1/B. - () = ALG () OPT() 21/B. 11. 2.2. 11 : B, () = 1 + B min{, B} = 1 + B 1 + B 1 1 + B 1 B = 2 1/B B, () = 1 + B min{, B} = 1 + B B = 1 + 1 B2 1/B. ()2 1/B, , = maxt (t) ()2 1/B. 2.2 . , , . , - , . 2 1/B B . : ; , . - . - , - , ( ). = dB/e B . (= 1+ p 5 2 ). 12. 12 2. ; 2. - ; 5+ p 5 4 1.81. . t0, ALG(t) t. B ALG(t) = 8: 2t t t + + B 1 tB + 3B 2 t B - 1 t +1 , . 1 B B 1 . t OPT(t) = 2 min{t, B}. , (t) = ALG(t) OPT(t) , = maxt (t). t. t, ALG(t) = 2t OPT(t) = 2t ( tB). , (t) = 1. tB, (t) = ALG(t) OPT(t) = t + + B 1 2t = 1 2 + + B 1 2t 1 2 + + B 1 2 = 1 + B 1 2 = 1 + B 1 2dB/e 1 + 2 = 5 + p 5 4 . t B, (t) = ALG(t) OPT(t) = + 3B 2 2B = dB/e + 3B 2 2B B/ + 3B 2B = 1 2 + 3 2 = 5 + p 5 4 . (t) 5+ p 5 4 , , = maxt (t) 5+ p 5 4 . 1. o(1), - 2 ; . 13. 2.3. 13 2.3 , . 1.81 - . , . . , B 1 B. , dB/e 1 dB/e. , (= 1+ p 5 2 ). 3. 5+ p 5 4 1.81 ; . . = dB/e. t0, ALG1(t) t ALG2(t) t . , ALG(t) t. ALG1(t) = t tB 2B 1 t B ALG2(t) = t t + B 1 t . , t0 ALG(t) IE[ALG(t)] = 1 2 (ALG1(t) + ALG2(t)) . t OPT(t) = min{t, B}. , (t) = IE[ALG(t)] OPT(t) = ALG1(t)+ALG2(t) 2OPT(t) , 14. 14 2. ; = maxt (t). t. t, ALG1(t) = ALG2(t) = t OPT(t) = t. , (t) = 1. tB, OPT(t) = t, ALG1(t) = t ALG2(t) = +B1. , (t) = ALG1(t) + ALG2(t) 2 OPT(t) = t + + B 1 2t ... 5 + p 5 4 . t B, OPT(t) = B, ALG1(t) = 2B 1 ALG2(t) = + B 1. , (t) = ALG1(t) + ALG2(t) 2 OPT(t) = + 3B 2 2B ... 5 + p 5 4 . . (t) 5+ p 5 4 , , = maxt (t) 5+ p 5 4 . 15. 3 - - . , , - P = {p1, p2, ..., pN } N . , , P k kN. . pi, pi . pi (hit) . , (page fault) - pi . , ( ) pi. . . , . 15 16. 16 3. 3.1 , 60. - . : LRU (least recently used): - . FIFO (rst-in-rst-out) : - . LIFO (last-in-rst-out) : . LFU (least frequently used) : . LFD (longest forward distance) : . . , LFD . (demand paging), . , . 2. - . 3.2 - , LFD . 17. 3.2. 17 , ( ;), . (.., ) , . , . 4. LFD . . - LFD . . 1. ALG . i, i = 1, 2, ..., ||, ALGi : 1. ALGi i1 ALG. 2. i , ALGi - . ALGi() ALGi ALG() ALG. n = || . . OPT, i = 1 OPT1, - OPT1 i = 2 OPT2, . OPTn LFD . 18. 18 3. . AL- G, ALGi. i , ALG AL- Gi X [ {v}, X [ {u}, , X k 1 u, v . u = v, ALG ALGi ALGi() = ALG(). v 6= u ( , i- ). v, ALGi ALG u ALG v. - , - k 1. , k (.., ALG v), ALGi ALG . v ALG ALGi , ALGi ALG. , v, , u v. ALG, ALGi. , ALGi v ALG. , v, ALGi u . 3.3 (h, k) . k h h k. (h, k)- , k h k. hk, . 19. 3.4. 19 ( FIFO ) Belady: , - . - Belady, . 3. LRU Belady FIFO . (h, k) - ; , - . , . 3.4 - LRU FI- FO - . FWF (ush when full) . FWF : FWF: , . , FWF . , FWF - . , , 20. 20 3. . , , FWF . ( - LRU FWF) - k kh+1 (h, k)- . , k ((k, k)- ). , - , ( - FIFO) k kh+1 . - k . : 0 . i 1, i i 1 k . , i + 1, , (k + 1)- i- . k-. k- . . - k-. bit bit . , bit 1, , - . k- . k-, k- . - . FWF - , FWF . , - 21. 3.4. 21 (h, k)- - . 5. ALG - k OPT h k. ALG k kh+1 OPT. . - k-. , k- i 1, ALG k - . k ( k ). - . , k-, ALG . i 1 q i. i i + 1 ( i + 1 ). OPT h1 q k . , OPT k(h1) = kh+1 . i , OPT k0 h , k0 . OPT. , ALG k , , OPT k h+1 . , : ALG() k k h + 1 OPT() + k0 , ALG() OPT() ALG OPT, , k0 k 22. 22 3. ALG k-. 1. LRU . . LRU . LRU x k. x k. x , x - . , LRU k . x , LRU - x k . x k- - k 1 . , k- - k+1 , k. , LRU - . FWF LRU . 5, 1, , - . 1. LRU FWF k kh+1 (h, k)- . 4. FIFO . ALG k , ALG k . 23. 3.5. 23 5. LRU FIFO - . , FWF . 5. 6. ALG - k OPT h k. - ALG k kh+1 OPT. , . 2. FIFO k kh+1 (h, k)- . 3.5 k - k. k kh+1 (h, k)- . , - LRU, FIFO, FWF (h, k)- . - LFD . 2. k + 1 , LFD() LFD || k + k 1 k . . k-. k- - k , l || k m k- . k k- . , k + l || k m 1 k + || k + k1 k 1 = || k + k 1 k . 24. 24 3. , . 7. ALG - k k. . k + 1 p1, ..., pk+1. ALG . , 2. : r1 i 2, ri ALG r1, ..., ri1 ( k +1 , - ). ALG . , ALG LFD k. LIFO LFU ( k). LIFO. p1, p2, ..., pk+1 . = p1, p2, ..., pk, pk+1, pk, pk+1, ... , LIFO k + 1 . LFU. ` . : = p` 1, p` 2, ..., p` k1, (pk, pk+1)`1 . LFU (k 1) ` . , . ` , LFU k. 25. 4 Yao Yao. - . - . 4.1 . . - : , v , , v ( -). . . , . , . , . - 25 26. 26 4. YAO . , - . , , 1. , - . - . . 4.2 , - , , - , . , , - . 6. ; , - . , 1/2 ( ) 1. , 2. -, - ( - ). - 1 ( ). 1/2. 27. 4.2. 27 1/2 1 + 1/2 /2. , 2. 2, . , - . , - , - . - , : , p 1 p. , , - . p , . p-Random - p. ( p) . , , p-Random . p-Random - p . , . , p-Random p ( ) 1. , 1/p. 28. 28 4. YAO -, - . 1 . p - 1 p. p 1 + (1 p) = p( 1). , - p(1) . p p . , - p-Random ( ) p . , p = 21 (- ) - p -Random 1/p = 2 1/. 4.3 - . , - . , Yao . . P . ALG . , ALG() ALG OPT() P . CP(ALG) - ALG P - C IE[OPT()] C IE[ALG()] 29. 4.3. 29 - . , - . , IE[ALG()] C IE[OPT()] ALG() OPT() ALG , . Yao - - P. - . - . = 0 . Yao. , - . , q , - 1 q . q - . , . , q + (1 q). , . - . 30. 30 4. YAO - . 1 ( ). q + (1 q). - , - . , (1 q) q+(1q) (1q) . , - . - - q, q. - , - , q = 11/ - 2 1/. Yao, 2 1/ . 31. 5 - MARK - . - , Yao. , , - . 5.1 MARK MARK - k. 2Hk , Hk k- (harmonic number) Hk = Pk i=1 1 i . ln kHk1+ln k MARK . MARK: , . p , p . , p , , 31 32. 32 5. . - p , . 8. MARK 2Hk . . - k-. k-, k-. i- k- - . k- k-. i- k-. mi . k- , . , mi , mi . , k mi () . j- ( k-) i- k- kmi(j1) k(j1) . j- , . mi kj+1 . , i- k- mi + kmiX j=1 mi k j + 1 = mi + mi(Hk Hmi ) = mi(Hk Hmi + 1) miHk. . k- - mi, i- (i 1)- k-, 33. 5.2. 33 k + mi . , k- i ( ), i- (i 1)- k- mi. k- - m1. , 1 2 P i mi. Hk P i mi, . 7. MARK k Hk N = k + 1. 8. MARK Hk ( k = 2 N = 4). 5.2 - - k. Yao. 9. ALG - k. Hk. . I k + 1 . 1 I. i1, i- i k I {i1} . k-. , , LFD - - () Hk . 34. 34 5. i 2, k . , LFD i, i + 1. , k 1 . A. k + 1 , i, A - q. i ( ). , k I {i}, q 1/k. , Hk, kHk. , - . - , , ( - ) . - I k + 1 , - . . , k-, k + 1 - , k-. . 3. k + 1 35. 5.2. 35 kHk. . i i . , 1 = 0, 2 = 1, ii1 i 3. IE[k+1]. IE[k+1] = k+1X i=2 (IE[i] IE[i1]) = k+1X i=2 IE[i i1]. . IE[i i1] i1 , i- . (i 1)- , i 1 ki+2 k . , i 1 , k k i + 2 (i 1) . , IE[i i1] = 1X j=1 j 1 k i + 2 k j1 k i + 2 k = k k i + 2 . j i- j 1 j. P1 j=1 j(1 x)j1 = 1/x2 . - , IE[k+1] = k+1X i=2 k k i + 2 = k kX i=1 1 i = kHk 36. 36 5. . 3 , k- kHk. A 1/k, - Hk . , . 37. 6 - . . , - . i hri(1), ri(2), ..., ri(N)i. ri(j) i j . (makespan) . - (unrelated machines). - . (related machines), i wi j sj. i j ri(j) = wi/sj. - (, sj = 1 j) - (identical machines). - (restricted assignments) . . i j ri(j) = wi/sj j i, ri(j) = 1 . 37 38. 38 6. . : GREEDY: , . , GREEDY - . , SLOWFIT . - . 6.1 , , - , . , : GREEDY : - , . , - . . 10. - 2 1 N N . . 2 1/N . , N(N 1) , 1, N. - 1 N 1. , , 2N 1. , N 39. 6.2. SLOWFIT 39 N 1 , N. - , 2 1/N. , . r w ` r. , r, ` ( r ). , r N`. , N` + w OPT() ` + w N . , OPT() w. , GR() : GR() = ` + w = ` + w N + 1 1 N w OPT() + 1 1 N OPT() = 2 1 N OPT() . 6.2 SLOWFIT , . , - SLOWFIT . - SLOWFIT, . - 40. 40 6. SLOWFIT, . SLOWFIT: , . . . i, - j 2, j = arg min k {`i1(k) + ri(k) 2} (6.1) `i1(j) j i 1 SLOWFIT ri(j) i j. , . 11. . - OPT() , SLOWFIT SLOWFIT() 2. . SLOWFIT , SLOWFIT() 2. . OPT() SLOWFIT t. - t. , t OPT(). - OPT(), t 1 j j t 1 . f `t1(f) OPT(). f 6= N `t1(N) + rt(N) 41. 6.2. SLOWFIT 41 2OPT() 2 rt(N) t. , t N . = {j : jN} f ( f `t1(j)OPT() j 2 ). , t 1 , t1 . g j , i0 f . , rg(i0 ) OPT() f i0 , rg(f) rg(i0 ) OPT(). , f, `t1(f) OPT() `g(f) OPT(). , g, `g1(f) + rg(f) 2OPT() 2. f j, g . . SLOWFIT, - SLOWFIT . SLOWFIT: . - , SLOWFIT . 0, 0 r1(N) . - SLOWFIT0 ( SLOWFIT) - 1. , i 1, i = 2i1, SLOWFITi t SLOWFITi1 - 42. 42 6. , . SLOWFITi . 12. SLOWFIT 8 . . SLOWFIT k, k = 2k r1(N). k k . - h. h = 0, 20 2OPT(), SLOWFIT0 . h0, r h. h 1 h1r h1 = 2h1 r1(N), OPT() OPT(h1r)2h1 r1(N). SLOWFIT : SLOWFIT() = hX k=0 SLOWFITk (k) hX k=0 2k = hX k=0 2 2k r1(N) = 2(2h+1 1)r1(N). , SLOWFIT()8 OPT(). , : 13. . ALG , OPT() ) ALG() c (. c = 2 SLOWFIT ). ALG , ALG() 4c OPT(). , ALG 4c-. 43. 6.3. 43 6.3 - - . . , . 14. blog Nc - N . . k = blog Nc. N0 = 2k k + 1 . , N0 . k , . i i = 1, ..., k1, (a, b), 1 a b . i - . , 1 . , i k 2ki , , N0 /2 , N0 /4 , ..., k. - , i i k, i. 1 0 2 1. , jk, j +1. , k + 1 k + 1. 44. 44 6. ( ) . , i i i + 1. , . k , , k . , , , . , k + 1 = blog Nc + 1. 6.4 O(log N) . Lp , p 1 . Lp. `j j, j = 1, ..., N. , Lp : |`|p = NX j=1 `p j !1/p . , : max j {`j} = lim p!1 |`|p. Lp : 45. 6.4. 45 p-GREEDY: , p- . . 15. p 1, p-GREEDY 1 21/p1 Lp. . n N . ` j j Lp . yij 2 {0, 1} i j (yij = 1) (yij = 0). , P i yijri(j) = ` j ri(j) i j. , ij j i 0j = 0 . i, - p- . , p- . NX j=1 p ij p i1,j NX j=1 (i1,j + yijri(j))p p i1,j . (x + a)p xp x = i1,j, a = yijri(j) 0, p 1. x [0, +1] , NX j=1 p ij p i1,j NX j=1 (nj + yijri(j))p p nj . (6.2) , . 4. p 1, t 0, ai 0, i = 1, ..., k. , kX i=1 ((t + ai)p tp ) t + kX i=1 ai !p tp . 46. 46 6. . ai = 0 i = 1, ..., k . - ai0 = Pk i=1 ai i = ai/. , Pk i=1 i = 1. zp [0, 1), (t + ai)p = (1 i)t + i t + kX i=1 ai !!p (1 i)tp + i t + kX i=1 ai !p (6.3) i = 1, ..., k. (6.3), kX i=1 ((t + ai)p tp ) tp kX i=1 (1 i) k ! + t + kX i=1 ai !p kX i=1 i = t + kX i=1 ai !p tp p- : |n|p p = NX j=1 p nj = NX j=1 nX i=1 p ij p i1,j = nX i=1 NX j=1 p ij p i1,j . (6.2), , 47. 6.4. 47 4, |n|p p nX i=1 NX j=1 (nj + yijri(j))p p nj = NX j=1 nX i=1 (nj + yijri(j))p p nj NX j=1 (nj + nX i=1 yijri(j))p p nj ! . Pn i=1 yijri(j) = ` j Minkowski ( Lp) Pk t=1 (at + bt)p 1/p Pk t=1 ap t 1/p + Pk t=1 bp t 1/p p 1 at, bt 0, |n|p p NX j=1 (nj + ` j )p NX j=1 p nj 0 @ NX j=1 p nj !1 p + NX j=1 `p j !1 p 1 A p NX j=1 p nj = |n|p + |` |p p |n|p p |` |p p c = |n|p / |` |p, 2cp (c + 1)p c 1 21/p1 . ez 1 + z, p-GREEDY 1 21/p1 p ln 2 1.4427p. . 5. Ap c Lp . , Ap cN1/p N . 48. 48 6. . ` . ` Lp c cN1/p maxj ` j . , |` |p p N maxj `p j |` |p N1/p maxj ` j . , maxj `j |`|p. - |`|p c|` |p , maxj `j cN1/p maxj ` j . p-GREEDY - p ln 2 Lp, - . 3. p-GREEDY p = ln N e log N N . 6.5 , . , : , (weighted). ( ), . - . G = (V, E) rj = (sj, tj, bj) bj sj tj. , bj bj : E ! R+ . rj Pj sj tj e Pj bj(e). - . , . , , ( 49. 6.5. 49 ). , , . . ROUTEEXP 0 = (1 + ). rj = (sj, tj, bj), rj Pj P e2Pj a Lj1(e)+j(e) a Lj1(e) , Lj(e) = X ij Pi:e2Pi bj(e), Lj(e) = Lj(e) , j(e) = bj(e) . , rj cj(e) = a Lj1(e)+j(e) a Lj1(e) = a Lj1(e) aj(e) 1 . 16. G = (V, E) m . OPT() , ROUTEEXP() = O(log m) . . a = (1 + ), ax 1 x, x 2 [0, 1] (6.4) P1, . . . , Pn ( P 1 , . . . , P n ) - ROUTEEXP ( ) - 50. 50 6. r1, . . . , rn . X e2Pj a Lj1(e) aj(e) 1 X e2P j a Lj1(e) aj(e) 1 Pj X e2P j a Ln(e) aj(e) 1 Lk(e) k X e2P j a Ln(e) j(e), (6.4) nX j=1 X e2Pj a Lj1(e) aj(e) 1 X j X e2P j a Ln(e) j(e). X e X j:e2Pj a Lj1(e) aj(e) 1 X e a Ln(e) X j:e2P j j(e) X e (a Ln(e) 1) X e a Ln(e) X j:e2P j j(e) 1 - OPT(r1, . . . , rn) X e a Ln(e) m X e a Ln(e) . 51. 6.5. 51 , 1, X e a Ln(e) m 1 Ln(e) loga m 1 Ln(e) loga m 1 ROUTEEXP() = O(log m) (6.5) ROUTEEXP ROUTE- EXP 13. 52. 52 6. 53. 7 - . . j- - sj fj, j- dj = fj sj. fj dj - j. , . ALG() ALG , . , GREEDY 2 1 N , - . , 2 1 N . , SLOWFIT . 7.1 , , , T , . , T 53 54. 54 7. , . - . 17. ( ), T ( ), ROUTE-KNOWNT , O(log NT)-. . - [(k1)T, kT] k. ( ), : Gk 2TN + 3T uk i,h 0 i2T 1 h N, tk i+1 0 i2T 1, sk i 0 iT, . i , h . Gk 5NT 2N : 2NT N ek i,h = (uk i,h, uk i+1,h), - ( ) . 2NT N (uk i+1,h, tk i+1) 0 i2T 1 1 h N, ( ). NT (sk i , uk i,h) 0 iT 1 h N, ( ). rj = hrj(1), . . . , rj(N)i, dj (k 1)T + l, (0 lT), r0 j sk l , tk l+dj , 55. 7.2. : 55 bj(ek i,h) = rj(h), l il + dj, bj(e) = 0 e. ROUTEEXP, , r0 j. r0 j k, Gk. , rj h. , h (.. t = (k 1)T + i) ek1 i+T,h, ek i,h. Gk O(log NT) , ROUTE- KNOWNT O(log NT)-. 7.2 : . , . 18. - . ( p N). . Li(t) i t ( - t, ). t, . , L1(t) L2(t) Lq(t)(t) Li(t) = 0 iq(t). - , . 1. , N - . , OPT() 1. 2. , N Li(t) Li+1(t) + 1, 1 i q 1. 56. 56 7. 3. r i L (k) i0, ALG r i. k , . - . . 1. L = hL1(t), . . . , Lq(t)(t)i L0 = hL1(t0 ), . . . , Lq(t0)(t0 ), LL0 , Lj(t) = Lj(t0 ) ji Li(t)Li(t0 ) 1 i q(t0 ) : . N , - . ( .) . k k L(k) = hL (k) 1 , . . . , L (k) q(k)i, k. L(k) (L (k) i L (k) i+1 + 1), = k. , k k+1 L(k)L(k+1) . Pqk i=1 L (k) i = N , . , k + 1 L (k) i = L (k) i+10 i 1, . : 1. i i + 1 . ( ALG , 3) 57. 7.3. ROBIN-HOOD 57 2. , {i, i + 1}. - ALG i, i + 1. 3. i + 1 ALG. 4. , . k+1. L (k+1) i = L (k) i +1 L(k)L(k+1) . . , l = L1(t) = ALG() N = q X i=1 Li(t) q1 X i=0 (l i) = ql q(q 1) 2 q l, l (q 1) Lq(t)0. l q = l l(l+1) 2 N, l p 2N(1 + o(1)). , ALG() = ( p N). 7.3 ROBIN-HOOD . , . - (N2/3 ), O( p N)) . rj sj lj - Mj . Li(sj) i rj (- t sj ). 58. 58 7. j j r1, r2, . . . , rj. j - B(sj) OPT , B(s0) = 0 B(sj) = max{B(sj1), lj, 1 N (lj + P i Li(sj))}, . i sj, Li(sj) p N B(sj). B , B(sj1)B(sj), . , (, ) (, ). ROBIN-HOOD r1 . rj, sj , i 2 Mj sj Li(sj)p NB(sj). , - rj . ( , .) 19. ROBIN-HOOD (2 p N + 1)- . . rj P i Li(sj) N B(sj). p N , . ROBIN- HOOD rj m. Lm(sj) + lj p N(B(sj) + OPT(j)) + OPT(j) m sj, Lm(sj) + lj p NB(sj) + OPT(j). m - st(j) S m [st(j), sj). k 2 S Mk ( k) st(j) ( rk m ). st(j) ( ) p N , h = | [ k2S Mk| p N. 59. 7.3. ROBIN-HOOD 59 P k2S lk h - , X k2S lk h OPT(j) p NOPT(j). (7.1) , m rj Li(sj) + lj Lm(st(j)) + X k2S lk + ljp N Bt(j) + X k2S lk + lj, m rt(j), (2 p N + 1)OPT(j), 7.1 lk OPT(j), k j. 60. 60 7. 61. 8 (bin packing) . , ( ), - ( 1). r1, r2, . . . ri 1 . - , . - . , (- ) , FIRST-FIT BEST-FIT. FIRST-FIT . BEST-FIT, , ri , 1 ri. 20. FIRST-FIT BEST-FIT 17 10 . , , FF() 17 10 OPT() + 1 , FF() 17 10 OPT() 8. BEST-FIT. 61 62. 62 8. . 5 3 . 17 10 . = r1, . . . , r3n, ri = 8: 1 6 2 i = 1, . . . , n. 1 3 + i = n + 1, . . . , 2n. 1 2 + i = 2n + 1, . . . , 3n. , OPT() = n. , , FIRST-FIT ( BEST-FIT) , n 6 n , n 2 n, n n . , 5n 3 . FF() 17 10 OPT() + 2. : w(r) = 8: 6 5 r 0 r 1 6 . 9 5 r 1 10 1 6 r 1 3 . 6 5 r + 1 10 1 3 r 1 2 . 1 1 2r. = r1, r2, . . . , rn, W() = Pn i=1 w(ri), B, W(B) = Pt j=1 w(rij ), {rij |j = 1, . . . , t} B. , . 6. B W(B) 17 10 , W() 17 10 OPT(). . 1 2 , w(ri) ri 3 217 10 . 63. 63 , tX j=1 w(rij ) 3 2 tX j=1 rij 3 2 117 10 . , ri1 2 rij ri tX j=1 rij1 2 , tX j=1 w(rij )7 10 . , rij 1 3 , rij1 3 , r1 ij = 1 3 r2 ij = rij 1 31 6 . w ( ) r1 6 1 3 r1 2 , w(rij ) = w(r1 ij ) + w(r2 ij ). , , j rij1 6 . . ri1 , ri21 6 , r r1 3 w(r) = w(ri1 ) + w(ri2 ). : t = 1 : 1. ri11 6 , w(r)1 57 10 . 2. 1 6 ri1 1 3 , w(r)3 5 1 107 10 . 64. 64 8. t = 2 : 1. ri11 6 ri2 1 3 , w(r) 1 5 + 3 5 1 10 = 7 10 . 2. 1 6 ri1 , ri2 1 3 , w(r)9 5 (ri1 + ri2 ) 2 107 10 , (ri1 + ri2 )1 2 . t = 3 : 1. ri11 6 ri2 , ri3 1 3 , w(r) 6 5 ri1 + 9 5 (ri2 + ri3 ) 2 107 10 3 5 ri17 10 , (ri2 + ri3 )1 2 ri1 . 2. 1 6 ri1 , ri2 , ri3 1 3 , w(r)9 5 (ri1 + ri2 + ri3 ) 3 107 10 , (ri1 + ri2 + ri3 )1 2 . t3 . 7. FIRST-FIT k = FF() B1, . . . Bk, kX i=1 W(Bi) k 2. FF() W() + 2. . B FIRST-FIT, - r1 2 , W(B) 1. , B, r 1 2 . B1, . . . , Bl ( ), - . B, s(B) ( ) B. - Bi, Bj, ji, s(Bj) = 1, Bk, ki, s(Bk) 1. ( 0.) , B B , . 1 2 , , 1 2 . 65. 65 1 2 . , . B. 8. B r1 rm. Pm i=1 ri 1 , Pm i=1 w(ri) 1. . r11 2 (w(ri) = 1). r1 1 2 . r1 r2 . . 1 6 , Pm i=1 ri1 5 6 . w 6 5 1 2 , . 1 6 1 3 m: 1. m = 1. r1 1 2 , 1 1 2 , 1 2 . . 2. m = 2. r1 r2 1 3 , w(r1) + w(r2) 2(6 5 1 3 + 1 10 ) = 1. 1 3r1 r2, 2 3r1 + r2 1 , 1 3 . . r1 1 3r2, r2 1 3 , w(r1)+w(r2) = 6 5 r1 + 9 5 r2 = 6 5 (r1 +r2)+ 3 5 r26 5 (1)+ 3 5 1 3. m = 3. . 1 3 1 2 m. . 9. B r1 rm. Pm i=1 w(ri) = 1 0, (i) m = 1 r1 1 2 , (ii) Pm i=1 ri 1 5 9 . . m = 1, r11 2 0. m 2, , r1 r2. Pm i=1 ri = 1 . eB 66. 66 8. r3, . . . , rm 1, 2, 1 + 2 = r1 + r2 + i ri. 8 eB, mX i=3 w(ri) + w(1) + w(2) 1 (8.1) w 9 5 1 2 , w(1) + w(2) w(r1) + w(r2) + 9 5 (8.1) mX i=1 w(ri) + 9 5 mX i=3 w(ri) + w(1) + w(2) 1, 1 = mX i=1 w(ri) 1 9 5 . 5 9 . W(Bi) = 1 i i0 i1 2 Bi. Bi ri 1, ri 2, . . . l1. 9, 1i l: i 1 X j ri1 j i1 + 5 9 i1. Bi1 (i) 9, i 1 2 . l1X i=1 i 9 5 lX i=2 (i i1) = 9 5 (l 1) 9 5 1 21. l 1, Pl i=1 i 2. , l = 1 . 67. 67 l 9, m (FF() = m + l). 8 1. , W() = X w(ri) m + lX i=1 W(Bi) = m + lX i=1 (1 i) = m + l lX i=1 i FF() 2. FF() W() + 2. 6 FF() 17 10 OPT() + 2. . 68. 68 8. 69. 9 , . , . , . , - , . , , . , , , - . . 9.1 ( , - ) ( ) . - , , - . i- ri = (si, ti, bi, pi) - si ti, 69 70. 70 9. bi, pi . , - (throughput) : . . . , , , . , - , . - , - (.. ) : 1. (bidirectional mode). - hu, vi - hu, vi hv, ui, c, c . 2. (undirected mode). - hu, vi - , - . , c, c . , - , , . 71. 9.2. 71 9.2 , - . . , , - . ALG . - u(e) e Lj(e) - e ( ) j ALG. Aj , j , , Pk rk, k 2 Aj. Lj(e) = 1 u(e) X k2Aj e2Pk bk Ln(e) 1 e = r1, . . . , rn. : cj(e) = u(e)[Lj(e) 1], (9.1) D - . , , , ( ), pi = D bi, ri = (si, ti, bi, pi). , . , 0 1 ri, i = 1, 2, . . . n bi min e u(e)log D + 1 += b (e) , bi = O u(e) log D 72. 72 9. 1 1 log D . AAP D (.. ) , 0 1. bi b () pi = D bi ri. = 21+1D. j- rj = (sj, tj, bj, pj) P X e2P bj u(e) cj1(e) pj. rj , . Lj(e) cj(e) . . 21. , - AAP . . , Ln(e) 1 e. = r1, . . . , rn, A rj ( Pj) AAP. . k 2 A. AAP, - rk X e2Pk bk u(e) ck1(e) pk = D bk. X e2P ck1(e) u(e) D. 73. 9.2. 73 e 2 Pk D ck1(e) u(e) = Lk1(e) 1 = Lk(e) bk u(e) 1 Lk(e) 1 ( log D+1+) 1 bk u(e) 1 ( log D+1+) . = Lk(e) 1 ( log ) 1 log =log D + 1 + . x = 2x log . . . = Lk(e) 2 1 1. Lk(e) 2 1D + 2 1 21+1D = , Lk(e) 1. 22. , - AAP 21+1log + 1 = O(2 1+ 2 1log D). . r1, r2, . . . rn . A rj ( Pj) AAP, A AAP, . C , C = P e cn(e). : 1. C (21+1log ) X j2A pj, . 74. 74 9. 2. X j2 A pj C, - . 1 2, , AAP() = X j2A pj OPT() AAP() + X j2 A pj. |A|, - AAP. , . , . , rk . X e ck1(e) 21+1log X j2A{k} pj, (9.2) X e ck(e) 21+ 1log X j2A pj. (9.3) X e ck(e) X e ck1(e) = X e2Pk (ck(e) ck1(e)) 21+1pk log . (9.4) e 2 Pk, [ck(e) ck1(e)] = u(e)[Lk1(e)+ bk u(e) Lk1(e) ] = u(e)Lk1(e) [ bk u(e) 1] u(e)Lk1(e) h log bk u(e) i 2 1= 2 1log h ck1(e) u(e) + 1 i bk = 2 1log h bk u(e) ck1(e) + bk i . 75. 9.2. 75 : x 1 = 2x log 1, log bk u(e) 1, 2y 1 y2 1 y 2 [0, 1]. , X e2Pk [ck(e) ck1(e)] 2 1log X e2Pk bk u(e) ck1(e) + bk = 2 1log X e2Pk bk u(e) ck1(e) + X e2Pk bk ! 2 1log pk + X e2Pk bk ! AAP 2 1log (pk + D bk) = 2 1 log 2pk. 1. , P j , - rj. - , AAP, - , pjmin sjtj- P X e2P bj u(e) cj1(e) X e2P j bj u(e) cj1(e) 76. 76 9. , X j2 A pjX j2 A X e2P j bj u(e) cj1(e) X j2 A X e2P j bj u(e) cn(e) cl(e) - l, n . = X e X j2 A:e2P j bj u(e) cn(e) = X e cn(e) X j2 A:e2P j bj u(e) X e cn(e) = C. . 9.3 , ( - ), . - , - , . , . - , 77. 9.3. 77 . , - ( , ). , -, / ( ). - () , log T , T = . 23. ALG c- ( - ) ( - , , , ...). (3c dlog Te)- ALGT , T . T , O(c c log T log log1+ T)- ALG0 , 0 c 0. . T T = 2h h. . i t 2i t2i+1 . i , ( ), . , log T . , . ALGT , k 2 {0, 1, . . . , log T} l 2 {0, 1, 2}. r , (i) ik, 78. 78 9. ik k- , (ii) Im = [(3m+l)2ik , (3m+l+1)2ik ], m. ALGT r r ALG - . 2ik+1 = 2 2ik , Im ( ) () ( ) Im+1 = [(3m + l + 3)2ik , (3m + l + 4)2ik ]. , Im . l k, ( ik) , OPT() 3 log T . , ALG c-, ALGT (3c log T)-. T , - ik. 1 log T , ALG0 ik pk = 1 f 1 k log1+ (k) , f P 1k pk = 1. 23 21 22, . j- - rj rj = (sj, tj, bj, pj, aj, fj), aj fj . ( ). = D ( ). 1 ( ) T . , - 1 fj aj + 1 T. , Lj(e) Lj(e, t) ( cj(e) cj(e, t)) - e, [t, t + 1), 79. 9.3. 79 j . Lj(e, t) t , . AAP . AAP-KNOWN D , 0 . bi min e u(e) log DT + 1 + 1 pi = Dbi(fiai) ri. = 21+1DT. j- rj = (sj, tj, bj, pj, aj, fj) P sj tj X ajtfj X e2P bj u(e) cj1(e, t) pj. rj , . Lj(e, t) cj(e, t) - . , rj aj tfj, Lj(e, t) := Lj1(e, t) + bj u(e) , Lj(e, t) := Lj1(e, t). 21 22. 24. , - AAP-KNOWN . 25. , - AAP-KNOWN O(2 1log ) = O 2 1 + 2 1log DT ! . 80. 80 9. 81. [1] D. Achlioptas, M. Chrobak, and J. Noga. Competitive analysis of ran- domized paging algorithms. Proceedings of the 4th Annual European Symposium on Algorithms (ESA 96), LNCS 1136, Springer, pp. 419- 430, 1996. [2] S. Albers. Lecture notes on competitive online algorithms. BRICS Lec- ture Series LS-96-2, AArhus University, Denmark, 1996. [3] J. Aspnes, Y. Azar, A. Fiat, S. Plotkin, and O. Waarts. On-line routing of virtual circuits with applications to load balancing and machine scheduling. Journal of the ACM, 44(3), pp. 486-504, 1997. [4] B. Awerbuch, Y. Azar, E. F. Grove, M.-Y. Kao, P. Krishnan, and J. S. Vitter. Load balancing in the Lp norm. Proceedings of the 36th Annual Symposium on Foundations of Computer Science (FOCS 95), pp. 383- 391, 1995. [5] B. Awerbuch, Y. Azar, and S. Plotkin. Throughput-competitive on-line routing. Proceedings of the 34th Annual Symposium on Foundations of Computer Science (FOCS 93), pp. 32-40, 1993. [6] B. Awerbuch, Y. Bartal, A. Fiat, and A. Rosen. Proceedings of the 5th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 94), pp. 312-320, 1994. [7] Y. Azar. On-line load balancing. Online Algorithms, The state of the art. LNCS 1442, Springer, pp. 178-195, 1996. [8] Y. Azar, A. Z. Broder, and A. Karlin. On-line load balancing. Theoreti- cal Computer Science, 130(1), pp. 73-84, 1994. 81 82. 82 [9] Y. Azar, J. Naor, and R. Rom. The competitiveness of on-line assign- ments. Journal of Algorithms, 22(1), pp. 221-237, 1995. [10] Y. Bartal. On-line Computation and Network Algorithms, Lecture Notes. Hebrew University of Jerusalem, Israel, 1997. [11] L. A. Belady. A study of replacement algorithms for virtual storage computers. IBM Systems Journal, 5, pp. 78-101, 1966. [12] L. A. Belady, R. A. Nelson, and G. S. Shedler. An anomaly in space- time characteristics of certain programs running in a paging machine. Communications of the ACM, 12(6), pp. 349-353, 1969. [13] A. Borodin and R. El-Yaniv. Online computation and competitive anal- ysis. Cambridge University Press, 1998. [14] A. Borodin, S. Irani, P. Raghavan, and B Schieber. Competitive paging with locality of reference. Journal of Computer and System Sciences, 50(2), pp. 244-258, 1995. [15] I. Caragiannis. Better bounds for online load balancing on unrelated machines. Proceedings of the 19th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 08), pp. 972-981, 2008. [16] I. Caragiannis, C. Kaklamanis, and E. Papaioannou. Ecient on-line frequency allocation and call control in cellular networks. Theory of Computing Systems, 35(5), pp. 521-543, 2002. [17] I. Caragiannis, A. V. Fishkin, C. Kaklamanis, and E. Papaioan- nou. Randomized on-line algorithms and lower bounds for computing large independent sets in disk graphs. Discrete Applied Mathematics, 155(2), pp. 119-136, 2007. [18] A. Fiat, R. M. Karp, M. Luby, L. A. McGeoch, D. D. Sleator, and N. E. Young. On competitive paging algorithms. Journal of Algorithms, 12, pp. 685-699, 1991. [19] R. L. Graham. Bounds on certain multiprocessor anomalies. Bell Sys- tems Technical Journal, 45, pp. 1563-1581, 1996. [20] M. X. Goemans. Advanced Algorithms, Lecture Notes, MIT Laboratory of Computer Science, 1993. 83. 83 [21] A. R. Karlin, C. Kenyon, and D. Randall. Dynamic TCP acknowledge- ment and other stories about e/(e 1). Proceedings on 33rd Annual ACM Symposium on Theory of Computing (STOC 01), pp. 502-509, 2001. [22] A. R. Karlin, M. S. Manasse, L. Rudolph, and D. D. Sleator. Competi- tive snoopy caching. Algorithmica, 3, pp. 77-119, 1988. [23] R. J. Lipton and A. Tomkins. Online interval scheduling. Proceedings of the 5th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 94), pp. 302-311, 1994. [24] R. Motwani and P. Raghavan. Randomized Algorithms. Cambridge U- niversity Press, 1995. [25] D. D. Sleator and R. E. Tarjan. Amortized eciency of list update and paging rules. Communications of the ACM, 28(2), pp. 202-208, 1985. [26] E. Torng. A unied analysis of paging and caching. Algorithmica, 20, pp. 175-200, 1998. [27] J. Ullman. The performance of a memory allocation algorithm. Techni- cal Report 100, Dept. of Electrical Engineering, Princeton University, 1971. [28] A. C. Yao. Probabilistic computations: Towards a unied measure of complexity. Proceedings of the 18th Annual Symposium on Foundations of Computer Science (FOCS 77), 1977.