4 ms·
Usually I agree with Eliezer, but this is one of the cases where I don't. Randomness is a useful tool that you can use to make algorithms more efficient and har
by Strilanc 12y ago
Usually I agree with Eliezer, but this is one of the cases where I don't. Randomness is a useful tool that you can use to make algorithms more efficient and harder to exploit. In fact, there are several examples in the wikipedia article [1].
A more practical example: suppose you are writing a poker bot. It looks at the game state, and outputs a single move to make. After you complete the bot you will publish it, and an opponent will analyze the source code and make a counter-bot to play against yours. Access to randomness is clearly a huge advantage here! Without it, your bluffs are less effective.
That being said, I do agree with the general sentiment that in most cases randomness is a quick simple hack that can be improved upon.
1: http://en.wikipedia.org/wiki/Randomized_algorithm#Where_randomness_helps http://en.wikipedia.org/wiki/Randomized_algorithm#Where_rand...
- alexbecker 12y agoAt the end of the article he notes that algorithms designed to work against an intelligent adversary are a specific exception.