Stack search

Stack search

Stack search (also known as Stack decoding algorithm) is a search algorithm similar to beam search. It can be used to explore tree-structured search spaces and is often employed in Natural language processing applications, such as parsing of natural languages.

Stack search keeps a list of the best "n" candidates seen so far. These candidates are incomplete solutions to the search problems, e.g. partial parse trees. It then iteratively expands the best partial solution, putting all resulting partial solutions onto the stack and then trimming the resulting list of partial solutions to the top "n" candidates, until a real solution (i.e. complete parse tree) has been found.

Stack search is not guaranteed to find the optimal solution to the search problem. The quality of the result depends on the quality of the search heuristic.

References

Example applications of the stack search algorithm can be found in the literature:
* Frederick Jelinek. Fast sequential decoding algorithm using a stack. IBM Journal of Research and Development, pp. 675-685, 1969.
* Ye-Yi Wang and Alex Weibel. Decoding algorithm in statistical machine translation. Proceedings of the 8th conference on European chapter of the Association for Computational Linguistics, pp. 366-372. Madrid, Spain, 1997.


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Beam stack search — is a search algorithm which integrates backtracking with beam search.It was recently proposed by Rong Zhou and Eric A. Hansen, Department of Computer Science and Engineering, Mississippi State University during the 15th International Conference… …   Wikipedia

  • Stack (data structure) — In computer science, a stack is an abstract data type and data structure based on the principle of Last In First Out (LIFO) . Stacks are used extensively at every level of a modern computer system. For example, a modern PC uses stacks at the… …   Wikipedia

  • Stack buffer overflow — In software, a stack buffer overflow occurs when a program writes to a memory address on the program s call stack outside of the intended data structure; usually a fixed length buffer.cite web last = Fithen first = William L coauthors = Seacord,… …   Wikipedia

  • stack — ▪ I. stack stack 1 [stæk] noun [countable] COMPUTING a temporary store of information on a computer   [m0] ▪ II. stack stack 2 verb 1. [transitive] to put things into neat piles …   Financial and business terms

  • Search oriented architecture — The use of search engine technology as the main integration component in an information system. In a traditional business environment the architectural layer usually occupied by a relational database management system (RDBMS) is supplemented or… …   Wikipedia

  • Beam search — is a heuristic search algorithm that is an optimization of best first search that reduces its memory requirement. Best first search is a graph search which orders all partial solutions (states) according to some heuristic which attempts to… …   Wikipedia

  • Depth-First Search — Tiefensuche Tiefensuche (Depth First Search) ist in der Informatik ein Verfahren zum Suchen eines Knotens in einem Graphen. Sie zählt zu den uninformierten Suchalgorithmen. Eine Verbesserung der Tiefensuche ist die iterative Tiefensuche.… …   Deutsch Wikipedia

  • Depth-first search — Order in which the nodes are visited Class Search algorithm Data structure Graph Worst case performance …   Wikipedia

  • Depth-limited search — Class Search Algorithm Data structure Graph Worst case performance O( | V | + | E | ) …   Wikipedia

  • Needle in a Slunk Stack — Studio album by Buckethead Released September 24, 2009 …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”