State space search
   HOME

TheInfoList



OR:

State space search is a process used in the field of
computer science Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to Applied science, practical discipli ...
, including
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech ...
(AI), in which successive configurations or ''states'' of an instance are considered, with the intention of finding a ''goal state'' with the desired property. Problems are often modelled as a state space, a
set Set, The Set, SET or SETS may refer to: Science, technology, and mathematics Mathematics *Set (mathematics), a collection of elements *Category of sets, the category whose objects and morphisms are sets and total functions, respectively Electro ...
of ''states'' that a problem can be in. The set of states forms a graph where two states are connected if there is an ''operation'' that can be performed to transform the first state into the second. State space search often differs from traditional
computer science Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to Applied science, practical discipli ...
search Searching or search may refer to: Computing technology * Search algorithm, including keyword search ** :Search algorithms * Search and optimization for problem solving in artificial intelligence * Search engine technology, software for find ...
methods because the state space is ''implicit'': the typical state space graph is much too large to generate and store in
memory Memory is the faculty of the mind by which data or information is encoded, stored, and retrieved when needed. It is the retention of information over time for the purpose of influencing future action. If past events could not be remember ...
. Instead, nodes are generated as they are explored, and typically discarded thereafter. A solution to a
combinatorial search {{no footnotes, date=January 2013 In computer science and artificial intelligence, combinatorial search studies search algorithms for solving instances of problems that are believed to be hard in general, by efficiently exploring the usually large ...
instance may consist of the goal state itself, or of a path from some ''initial state'' to the goal state.


Representation

In state space search, a state space is formally represented as a tuple S: \langle S, A, Action(s), Result(s,a), Cost(s,a) \rangle , in which: *S is the
set Set, The Set, SET or SETS may refer to: Science, technology, and mathematics Mathematics *Set (mathematics), a collection of elements *Category of sets, the category whose objects and morphisms are sets and total functions, respectively Electro ...
of all possible states; *A is the set of possible actions, not related to a particular state but regarding all the state space; *Action(s) is the function that establish which action is possible to perform in a certain state; *Result(s,a) is the function that returns the state reached performing action a in state s *Cost(s,a) is the cost of performing an action a in state s. In many state spaces is a constant, but this is not true in general.


Examples of state-space search algorithms


Uninformed search

According to Poole and Mackworth, the following are ''uninformed'' state-space search methods, meaning that they do not have any prior information about the goal's location. * Traditional depth-first search * Breadth-first search *
Iterative deepening In computer science, iterative deepening search or more specifically iterative deepening depth-first search (IDS or IDDFS) is a state space/graph search strategy in which a depth-limited version of depth-first search is run repeatedly with inc ...
* Lowest-cost-first search / Uniform-cost search (UCS) These methods take the goal's location in the form of a heuristic function. Poole and Mackworth cite the following examples as informed search algorithms: * Informed/Heuristic depth-first search * Greedy best-first search *
A* search A* (pronounced "A-star") is a graph traversal and path search algorithm, which is used in many fields of computer science due to its completeness, optimality, and optimal efficiency. One major practical drawback is its O(b^d) space complexity, ...


See also

* State space *
State space planning In artificial intelligence and computer programming, state space planning is a process used in designing programs to search for data or solutions to problems. In a computer algorithm that searches a data structure for a piece of data, for example ...
* Branch and bound - a method for making state-space search more efficient by pruning subsets of it.


References

* Stuart J. Russell and Peter Norvig (1995). ''Artificial Intelligence: A Modern Approach''. Prentice Hall. Search algorithms {{compu-ai-stub