Critical Writing
Publication Type: 
Record Status: 
Abstract (in English): 

The term algorithm , most commonly associated with computer science, may be used for any effective ff procedure that reduces the solution of a problem to a predetermined sequence of actions. In software, algorithms are used for performing calculations, conducting automated reasoning, and processing data (including digital texts)—but algorithms may also be implemented in mathematical models, mechanical devices, biological networks, electrical circuitry, and practices resulting in generative or procedural art (see code, computational linguistics, procedur al). In common usage, algorithm m typically references a deterministic algorithm, formally defi fined as a finite and generalizable sequence of instructions, rules, or linear steps designed to guarantee that the agent performing the sequence will reach a par ticular, predefi fined goal or establish incontrovertibly that the goal is unreachable. The “guarantee” part of this description is important, as it diff fferentiates algorithms from heuristics, which commonly proceed by “rules of thumb.” Like algorithms, heuristic methods can be used iteratively to reach a desired end state and may be responsive to feedback from external sources. However, the heuristic process is fundamentally one of informal trial and error rather than of constrained, formally algorithmic activity according to a set of predefined fi rules. (Nondeterministic algorithms are a class of algorithm that attempts to solve harder problems by finding fi the best solution available with a given set of constraints. They do not guarantee to fi find a single, best solution and may, on repetition, present radically different outcomes.)

(Johns Hopkins University Press)

The permanent URL of this page: 
Record posted by: 
Sumeya Hassan