Discover the Best of the Web

Micronesians not caring what we think

Heuristics Versus Algorithms

A heuristic is a technique that works sometimes, without guarantees. We all use heuristics, because they are often simple to try (so they don’t cost much if they fail), and also because they are often all we have.

An algorithm is a technique that comes with a guarantee. The technique for rational function integration is an algorithm because it always produces the answer, without exception. Differentiation is an algorithm—given an elementary function, you can always find its derivative. The Euclidean algorithm always gives you the GCD. Algorithms can be fast or slow, but the important thing is the guarantee. In some sense, an algorithm is a `predictable heuristic’—you can’t tell if a heuristic will work, before you try it, but you know in advance what the output of an algorithm will be.

Heuristics Versus Algorithms


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s