Search programs find a solution for a problem by trying different
* sequences* of * actions* (* operators*) until a solution is found.

** Advantage:**

Many kinds of problems can be viewed as search problems.
To solve a problem using search, it is only necessary to code the
operators that can be used; search will find the sequence of
actions that will provide the desired result. For
example, a program can be written to play chess using search
if one knows the * rules* of chess; it isn't necessary to know
how to play good chess.

** Disadvantage:**

Most problems have search spaces so large that it is impossible
to search the whole space. Chess has been estimated to have *10 ^{120}*
possible games. The rapid growth of combinations of possible moves
is called the