Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::Search Namespace Reference

User-facing facade exported by the umbrella search header. More...

Typedefs

template<typename Domain >
using Backtracking = Depth_First_Backtracking< Domain >
 
template<typename Domain , typename ObjectivePolicy = Maximize_Objective<typename Domain::Objective>>
using BranchAndBound = Branch_And_Bound< Domain, ObjectivePolicy >
 
template<typename Domain >
using NegamaxEngine = Negamax< Domain >
 
template<typename Domain >
using AlphaBeta = Alpha_Beta< Domain >
 
template<IDAStarDomain Domain>
using IDAStar = IDA_Star_State_Search< Domain >
 
template<AdversarialScore Score>
using IterativeDeepeningOptions = AdversarialIterativeDeepeningOptions< Score >
 
template<SearchMove Move, AdversarialScore Score>
using IterativeDeepeningResult = AdversarialIterativeDeepeningResult< Move, Score >
 
template<SearchMove Move, AdversarialScore Score>
using TraceEvent = AdversarialTraceEvent< Move, Score >
 
template<SearchMove Move, AdversarialScore Score>
using TraceCollector = AdversarialTraceCollector< Move, Score >
 
template<typename Solution >
using Collector = SearchSolutionCollector< Solution >
 
template<typename StateKey , SearchMove Move, AdversarialScore Score, template< typename, typename, class > class HashMapTable = MapOLhash, class Cmp = Aleph::equal_to<AdversarialTranspositionKey<StateKey>>>
using GameTT = AdversarialTranspositionTable< StateKey, Move, Score, HashMapTable, Cmp >
 

Variables

constexpr size_t Unlimited = Search_Unlimited
 Alias for Search_Unlimited.
 

Detailed Description

User-facing facade exported by the umbrella search header.

State_Search.H is the recommended entry point for users who want the current framework as one coherent module. This namespace keeps the underlying APIs untouched while exposing a smaller, easier-to-discover surface:

  • shared policy, limit and status types,
  • friendlier engine aliases (Backtracking, BranchAndBound, NegamaxEngine, AlphaBeta),
  • iterative-deepening and tracing aliases for adversarial search,
  • one-shot helper functions (backtracking_search(), branch_and_bound_search(), negamax_search(), alpha_beta_search(), iterative_deepening_negamax_search(), iterative_deepening_alpha_beta_search()),
  • Unlimited as the common sentinel for unbounded limits.

Users who prefer narrower includes can still include the individual module headers directly and use the original names in namespace Aleph.

Typedef Documentation

◆ AlphaBeta

◆ Backtracking

◆ BranchAndBound

Definition at line 110 of file State_Search.H.

◆ Collector

Definition at line 134 of file State_Search.H.

◆ GameTT

template<typename StateKey , SearchMove Move, AdversarialScore Score, template< typename, typename, class > class HashMapTable = MapOLhash, class Cmp = Aleph::equal_to<AdversarialTranspositionKey<StateKey>>>
using Aleph::Search::GameTT = typedef AdversarialTranspositionTable<StateKey, Move, Score, HashMapTable, Cmp>

Definition at line 141 of file State_Search.H.

◆ IDAStar

Definition at line 119 of file State_Search.H.

◆ IterativeDeepeningOptions

Definition at line 122 of file State_Search.H.

◆ IterativeDeepeningResult

template<SearchMove Move, AdversarialScore Score>
using Aleph::Search::IterativeDeepeningResult = typedef AdversarialIterativeDeepeningResult<Move, Score>

Definition at line 125 of file State_Search.H.

◆ NegamaxEngine

◆ TraceCollector

template<SearchMove Move, AdversarialScore Score>
using Aleph::Search::TraceCollector = typedef AdversarialTraceCollector<Move, Score>

Definition at line 131 of file State_Search.H.

◆ TraceEvent

template<SearchMove Move, AdversarialScore Score>
using Aleph::Search::TraceEvent = typedef AdversarialTraceEvent<Move, Score>

Definition at line 128 of file State_Search.H.

Variable Documentation

◆ Unlimited

constexpr size_t Aleph::Search::Unlimited = Search_Unlimited
inlineconstexpr

Alias for Search_Unlimited.

Definition at line 82 of file State_Search.H.