Book contents
- Frontmatter
- Dedication
- Contents
- Preface
- Acknowledgements
- Notation
- 1 Introduction
- 2 Ski-Rental
- 3 List Accessing
- 4 Bin-Packing
- 5 Paging
- 6 Metrical Task System
- 7 Secretary Problem
- 8 Knapsack
- 9 Bipartite Matching
- 10 Primal–Dual Technique
- 11 Facility Location and k-Means Clustering
- 12 Load Balancing
- 13 Scheduling to Minimize Flow Time (Delay)
- 14 Scheduling with Speed Scaling
- 15 Scheduling to Minimize Energy with Job Deadlines
- 16 Travelling Salesman
- 17 Convex Optimization (Server Provisioning in Cloud Computing)
- 18 Multi-Commodity Flow Routing
- 19 Resource Constrained Scheduling (Energy Harvesting Communication)
- 20 Submodular Partitioning for Welfare Maximization
- Appendix
- Bibliography
- Index
- Frontmatter
- Dedication
- Contents
- Preface
- Acknowledgements
- Notation
- 1 Introduction
- 2 Ski-Rental
- 3 List Accessing
- 4 Bin-Packing
- 5 Paging
- 6 Metrical Task System
- 7 Secretary Problem
- 8 Knapsack
- 9 Bipartite Matching
- 10 Primal–Dual Technique
- 11 Facility Location and k-Means Clustering
- 12 Load Balancing
- 13 Scheduling to Minimize Flow Time (Delay)
- 14 Scheduling with Speed Scaling
- 15 Scheduling to Minimize Energy with Job Deadlines
- 16 Travelling Salesman
- 17 Convex Optimization (Server Provisioning in Cloud Computing)
- 18 Multi-Commodity Flow Routing
- 19 Resource Constrained Scheduling (Energy Harvesting Communication)
- 20 Submodular Partitioning for Welfare Maximization
- Appendix
- Bibliography
- Index
Summary
Let me begin with a disclaimer! Online algorithms, the subject topic of this book, have nothing to do with the internet or the online connected world. Online algorithms should really be called limited information algorithms or myopic algorithms that have to make decisions with limited information while being compared against the best algorithm in hindsight.
The simplest example of an online algorithm is the game of Tetris, where at each time, the player has to make a decision about where to place the newly arrived tile, given the current state of tile positions and the knowledge of only the newly revealed tile and the next upcoming tile, so as to make as many completed lines with similar colour disappear as possible. Clearly, if all the future arriving tiles were revealed at each time, the optimal placement of the newly arrived tile to maximize the number of completed lines can be computed. However, with the limited information setting of the game, the quest is to get as close to the optimal algorithm in hindsight.
To put online algorithms in perspective, let's ask a question: what does an algorithm usually do? Given a (full) input instance, it provides a routine to optimize an objective function, subject to a set of constraints. When the full input instance is known before the algorithm starts to execute, it is referred to as the offline setting.
For many optimization problems of interest, however, the input instance is revealed sequentially, and an algorithm has to execute or make irrevocable decisions sequentially with the partially revealed input amid uncertainty about the future input, e.g., as we discussed for the game of Tetris. This sequential decision setting is generally referred to as the online setting, and the corresponding algorithm as an online algorithm. Compared to the offline algorithm, an online algorithm's output is a function of its sequentially made decisions and the order in which input is revealed.
To contrast the offline versus the online setting, consider one of simplest problems of memory management in random access memory (RAM) of computing systems. RAM is a fast but limited sized memory, and files before processing have to be loaded in the RAM. At each step of computation, a file is requested. If the requested file is available in the RAM, then execution starts immediately. Otherwise, a fault is counted to model the delay, etc., for loading the requested file into the RAM before execution.
- Type
- Chapter
- Information
- Online Algorithms , pp. xiii - xviiiPublisher: Cambridge University PressPrint publication year: 2023