Heuristic
In computer science, a heuristic is a problem-solving approach that uses practical methods to find a satisfactory solution quickly, even if that solution is not guaranteed to be the best or most optimal one. Heuristics are used in situations where a perfect solution is too slow or too complex to calculate.
Core concepts
Speed over accuracy: The primary purpose of a heuristic is to find a "good enough" answer in a reasonable timeframe, trading precision and certainty for computational speed.
Rules of thumb: Heuristics are often described as rules of thumb, educated guesses, or practical shortcuts based on experience.
Contrasted with algorithms: A heuristic is different from a precise algorithm. An algorithm is a step-by-step procedure that guarantees a correct and optimal solution. A heuristic provides a shortcut that may lead to a suboptimal, but acceptable, outcome.
Risk of bias: Because they rely on shortcuts, heuristics can sometimes produce inaccurate or suboptimal results, particularly when the conditions don't fit the assumptions of the shortcut.