Trait alcibiades::Qsearch [] [src]

pub trait Qsearch: SetOption + Send {
    type MoveGenerator: MoveGenerator;
    type QsearchResult: QsearchResult;
    fn qsearch(params: QsearchParams<Self::MoveGenerator>)
               -> Self::QsearchResult; }

A trait for performing quiescence searches.

Quiescence search is a restricted search which considers only a limited set of moves (for example: winning captures, pawn promotions to queen, check evasions). The goal is to statically evaluate only "quiet" positions (positions where there are no winning tactical moves to be made). Although this search can cheaply and correctly resolve many simple tactical issues, it is completely blind to the more complex ones. To implement your own quiescence search routine, you must define a type that implements the Qsearch trait.

Associated Types

The type of move generator that the implementation works with.

The type of result object that the search produces.

Required Methods

Performs a quiescence search and returns a result object.

Implementors