Algorithm is a computer science term for a way of solving a problem, and it also refers to the instructions given to the computer to solve the problem. The study of algorithms is central to computer science and is of great practical importance to survey data analysis because algorithms are used in statistical programs.
An algorithm can be thought of as any step-by-step procedure for solving a task. Imagine five playing cards face down on a table and the task of sorting them. Picking them up one at a time with the right hand and placing them in the left hand in their proper place would be one way to solve this task. This is an algorithm, called insertion sort in computer science.
It is worth noting the subtle distinction between the concept of algorithm and the concept of a method or of a technique. For example, a method would be least squares; matrix inversion would be a technique used therein; and LU decomposition and Strassen’s algorithm would be alternative algorithms to accomplish matrix inversion. A single data analysis method may use more than one algorithm.
It is impossible to write statistical software without using algorithms, so the importance of algorithms to survey data analysis is assured. However, user-friendly statistical software packages eliminate the need for end users to construct their own algorithms for most tasks. Nonetheless, at least a basic understanding of algorithms can be useful to survey researchers. For example, maximum likelihood methods can use an initial estimate as a starting point, and in some cases failure to converge may be remediated by trivially altering the initial estimate. Without some familiarity of the underlying algorithm, a researcher may be stuck with a nonconverging function.
Another setting where some knowledge of algorithms is useful is shown in Figure 1, which illustrates two possible depictions of the exact same network data. The left panel uses the multi-dimensional scaling algorithm and the right uses simulated annealing. The data are identical, which may be verified by observing who is connected to whom, but the appearance of the graphs is different. Algorithms are important here, because interpretation of the network data is affected by the appearance of the graph, which is affected in turn by the choice of algorithm. Whereas in many cases different algorithms will produce the same result but differ in speed (i.e., computing time), in this case different algorithms produce different results.
The term algorithm is sometimes used more broadly to mean any step-by-step procedure to solve a given task, whether or not a computer is involved. For instance, matching historical records from more than one archival source can be done by hand using an algorithm. Moreover, it is not only the analysis of survey data that uses algorithms, but also in many cases in the collection of the data an algorithm may be used to select clusters in a complex sample survey design.
Related Credo Articles
The term algorithm, most commonly associated with computer science, may be used for any effective procedure that reduces the solution of a problem t
DEFINITION An algorithm is a standard procedure that involves a number of steps, which, if followed correctly, can be relied upon to lead to...
[13 century] Algorithm comes from the name of an Arab mathematician, in full Abu Ja far Mohammed ibn-Musa al-Khwarizmi (c. 780-c. 850), who...