Foundations Of Cognitive Science

Algorithmic Level of Analysis

The algorithmic level is the second level of analysis in Marr's (1982) tri-level hypothesis.

The algorithmic level of analysis focuses on the specific steps (or algorithms) employed to solve the information processing problem under consideration. In particular, the algorithmic level is concerned with how the input and output of the system are represented, and how input is transformed into output. Within cognitive science, research at the algorithmic level is most often associated with cognitive psychology and psycholinguistics (Dawson, 1998).

One approach to describing an information processor at the algorithmic level (from a cognitive psychology perspective) is to identify the overall problem and then break this into subgoals, which in turn can be broken into subgoals, and so forth. Cummins (1983) has described this process as functional analysis. This recursive decomposition at the algorithmic level leads to a rather unique problem--how does one know when to stop breaking goals into sub-goals? The answer to this problem lies with the functional architecture which acts as a bridge between the algorithmic level and the implementational level of analysis.

The importance of the algorithmic level of analysis is that once we have a description of how a particular system is solving a problem, then we are in a position to make claims about strong equivalence.


  1. Cummins, R. (1983). The nature of psychological explanation. Cambridge, MA: MIT Press.
  2. Dawson, M.R.W. (1998) Understanding cognitive science. Oxford, UK: Blackwell.
  3. Marr, D. (1982). Vision. San Francisco: W. H. Freeman.

(Revised October 2009)