Introduction Graph coloring Advice Complexity of Online Coloring for Paths sek 1 , Lucia Keller 2 , and Monika Steinov´ a 2 Michal Foriˇ 1 Comenius University, Bratislava, Slovakia 2 ETH Z¨ urich, Switzerland LATA 2012, A Coru˜ na, Spain M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity Definition Online Problem Sequence of requests Satisfy each request before the next one arrives Minimize costs Examples: Ski rental, Paging, k -Server, various scheduling Competitive Ratio comp( A ( I )) = Costs computed by online algorithm A on I Costs of an optimal solution for I comp( A ) = max { comp( A ( I )) | all possible I } M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity Definition Online Problem Sequence of requests Satisfy each request before the next one arrives Minimize costs Examples: Ski rental, Paging, k -Server, various scheduling Competitive Ratio comp( A ( I )) = Costs computed by online algorithm A on I Costs of an optimal solution for I comp( A ) = max { comp( A ( I )) | all possible I } M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity Advice Complexity How much information are we missing. . . . . . to be optimal? . . . to achieve some competitive ratio? A trivial example: Ski Rental No information about future ➩ 2-competitive One bit of advice ➩ optimal (1-competitive) Motivation Theoretical interest: Measuring information loss Comparing with randomization Designing better approximation algorithms M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity Advice Complexity How much information are we missing. . . . . . to be optimal? . . . to achieve some competitive ratio? A trivial example: Ski Rental No information about future ➩ 2-competitive One bit of advice ➩ optimal (1-competitive) Motivation Theoretical interest: Measuring information loss Comparing with randomization Designing better approximation algorithms M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity Advice Complexity How much information are we missing. . . . . . to be optimal? . . . to achieve some competitive ratio? A trivial example: Ski Rental No information about future ➩ 2-competitive One bit of advice ➩ optimal (1-competitive) Motivation Theoretical interest: Measuring information loss Comparing with randomization Designing better approximation algorithms M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity Model: Details Computation with Advice Analysis Oracle with unlimited power: Solution: (oracle, algorithm) 1 Sees all requests Correctness: the pair works correctly on all inputs 2 Prepares infinite tape Advice complexity s ( n ): Maximal advice over all Algorithm starts: inputs of length ≤ n 3 Processes n requests one by one, can use advice tape 4 Advice: Total number of advice bits accessed M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity Model: Details Computation with Advice Analysis Oracle with unlimited power: Solution: (oracle, algorithm) 1 Sees all requests Correctness: the pair works correctly on all inputs 2 Prepares infinite tape Advice complexity s ( n ): Maximal advice over all Algorithm starts: inputs of length ≤ n 3 Processes n requests one by one, can use advice tape 4 Advice: Total number of advice bits accessed M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity Model: Details Computation with Advice Analysis Oracle with unlimited power: Solution: (oracle, algorithm) 1 Sees all requests Correctness: the pair works correctly on all inputs 2 Prepares infinite tape Advice complexity s ( n ): Maximal advice over all Algorithm starts: inputs of length ≤ n 3 Processes n requests one by one, can use advice tape 4 Advice: Total number of advice bits accessed M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity A less trivial example Paging Input: cache size n , sequence of page requests Output: for each page fault: which cached page to replace? M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity A less trivial example Paging Input: cache size n , sequence of page requests Output: for each page fault: which cached page to replace? Offline solution Optimal offline solution (MIN): thrown-away page = next request is most distant M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity A less trivial example Paging Input: cache size n , sequence of page requests Output: for each page fault: which cached page to replace? Online approximation Very poor! LRU, FIFO: both have competitive ratio n . M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity A less trivial example Paging Input: cache size n , sequence of page requests Output: for each page fault: which cached page to replace? Advice complexity Expected: Θ(log n ) bits per request (advice = page id) Reality: 1 bit per request (will it be used?) M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Online Problems Graph coloring Advice Complexity A less trivial example Paging Input: cache size n , sequence of page requests Output: for each page fault: which cached page to replace? Advice complexity Expected: Θ(log n ) bits per request (advice = page id) Reality: 1 bit per request (will it be used?) M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Graph coloring Online Graph Coloring Many practical applications; usually very hard to approximate. Informal definition A graph is uncovered one vertex at a time (w/incident edges). Each time a new vertex appear, assign it a positive integer (color). Requirement: adjacent vertices → different integers. Goal: minimize largest integer used. Subproblems and variations Subclasses of graphs (paths, trees, bipartite, planar, etc.) Presentation order (dfs, bfs, connected, arbitrary) Partial coloring (online-offline tradeoff) M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Graph coloring Online Graph Coloring Many practical applications; usually very hard to approximate. Informal definition A graph is uncovered one vertex at a time (w/incident edges). Each time a new vertex appear, assign it a positive integer (color). Requirement: adjacent vertices → different integers. Goal: minimize largest integer used. Subproblems and variations Subclasses of graphs (paths, trees, bipartite, planar, etc.) Presentation order (dfs, bfs, connected, arbitrary) Partial coloring (online-offline tradeoff) M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Graph coloring Simpler results Graph subclass: paths Optimal: use 2 colors. Trivial online coloring with 3 colors. Only open question: optimality. Result For arbitrary presentation order: Exactly ⌈ n / 2 ⌉ − 1 bits of advice needed in worst case. M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Graph coloring Proof sketch Only needs advice when given an isolated vertex. Hardest instances: most isolated vertices. ⌈ n / 2 ⌉ − 1 bits of advice sufficient: pick any color for the first isolated vertex ask advice for colors of all following ones Main idea for even n : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 n / 2 such instances, indistinguishable, w/different colorings Odd n : +1 bit achieved by a careful consideration of algorithm behavior for special instances. M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Introduction Graph coloring Proof sketch Only needs advice when given an isolated vertex. Hardest instances: most isolated vertices. ⌈ n / 2 ⌉ − 1 bits of advice sufficient: pick any color for the first isolated vertex ask advice for colors of all following ones Main idea for even n : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 n / 2 such instances, indistinguishable, w/different colorings Odd n : +1 bit achieved by a careful consideration of algorithm behavior for special instances. M. Foriˇ sek, L. Keller, and M. Steinov´ a Advice Complexity of Online Coloring for Paths
Recommend
More recommend