Presentation on theme: "How do you model the future? Stochastic approach: The future can be modeled as a distribution over possible events. Very successful in many contexts."— Presentation transcript:
How do you model the future? Stochastic approach: The future can be modeled as a distribution over possible events. Very successful in many contexts. Alternative: Think of the future as an adversary, do well against all possible future outcomes.
Toy Example: Ski Optimization I decide to take up skiing. Should I rent or buy skis? Uncertainty: Will I like skiing? Will there be snow? Will I break my leg? Will the government outlaw skiing? I want to have a good strategy against all possible outcomes In this case an outcome is the number of times I wind up going skiing.
Ski Rental A pair of skis (and boots) costs $300. A ski rental costs $50. What should you do? How do you evaluate if you did the right thing? You give a strategy (algorithm) You compare against how well someone who knows that future could do. You take the worst case and call that the competitive ratio
Ski Rental Let A be my algorithm. Let OPT be the behavior of someone who knows the future Consider any realization of the future I (number of times I actually ski) Competetive ratio We want a strategy with a small competitive ratio
Optimal Strategy Times skiing 12345678lots StrategyRRRRRBBBB Cost50100150200250300300300300
Algorithm 1: Buy Times skiing 12345678lots Cost of A 300300300300300300300300300 Opt Cost 50100150200250300300300300 Ratio6321.51.21111 Competitive ratio = 6
Algorithm 2: Rent Times skiing 12345678lots Cost of A 50100150200250300350400lots Opt Cost 50100150200250300300300300 Ratio63220.127.116.11.33lots Competitive ratio = lots
Algorithm 3: Rent 6 times and then buy Times skiing 12345678lots Cost of A 50100150200250300600600600 Opt Cost 50100150200250300300300300 Ratio111111222 Competitive ratio = 2
Lessons Without knowing the future, you can guarantee that no matter what happens, you will never spend more than twice what anyone could have spent. A good algorithm balances different bad outcomes If you allow randomization, you can decrease the competetive ratio to e/(e-1), around 1.58.