Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::AdversarialIterativeDeepeningResult< Move, Score > Struct Template Reference

Aggregate result of adversarial iterative deepening. More...

#include <Negamax.H>

Collaboration diagram for Aleph::AdversarialIterativeDeepeningResult< Move, Score >:
[legend]

Public Member Functions

bool has_iterations () const noexcept
 True when at least one iteration result has been recorded.
 

Public Attributes

AdversarialSearchResult< Move, Score > result
 Result of the deepest iteration (may be partial if a limit was hit).
 
Array< AdversarialIterativeDeepeningIteration< Move, Score > > iterations
 Per-depth results.
 
AdversarialSearchStats total_stats
 Aggregate cost across all iterations and retries.
 
size_t completed_iterations = 0
 Number of fully completed iterations (excludes the last one if it hit a limit).
 
size_t aspiration_researches = 0
 Total number of aspiration retries.
 

Detailed Description

template<SearchMove Move, AdversarialScore Score>
struct Aleph::AdversarialIterativeDeepeningResult< Move, Score >

Aggregate result of adversarial iterative deepening.

Definition at line 350 of file Negamax.H.

Member Function Documentation

◆ has_iterations()

template<SearchMove Move, AdversarialScore Score>
bool Aleph::AdversarialIterativeDeepeningResult< Move, Score >::has_iterations ( ) const
inlinenoexcept

True when at least one iteration result has been recorded.

An iteration is appended to iterations after it runs, even if it subsequently triggered a limit-reached exit. The count of fully completed iterations (those that did not hit any resource limit) is tracked separately by completed_iterations.

Postcondition
has_iterations() implies iterations.size() >= 1.

Definition at line 367 of file Negamax.H.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::AdversarialIterativeDeepeningResult< Move, Score >::iterations.

Member Data Documentation

◆ aspiration_researches

template<SearchMove Move, AdversarialScore Score>
size_t Aleph::AdversarialIterativeDeepeningResult< Move, Score >::aspiration_researches = 0

Total number of aspiration retries.

Definition at line 356 of file Negamax.H.

◆ completed_iterations

template<SearchMove Move, AdversarialScore Score>
size_t Aleph::AdversarialIterativeDeepeningResult< Move, Score >::completed_iterations = 0

Number of fully completed iterations (excludes the last one if it hit a limit).

Definition at line 355 of file Negamax.H.

◆ iterations

template<SearchMove Move, AdversarialScore Score>
Array<AdversarialIterativeDeepeningIteration<Move, Score> > Aleph::AdversarialIterativeDeepeningResult< Move, Score >::iterations

Per-depth results.

Definition at line 353 of file Negamax.H.

Referenced by Aleph::AdversarialIterativeDeepeningResult< Move, Score >::has_iterations().

◆ result

template<SearchMove Move, AdversarialScore Score>
AdversarialSearchResult<Move, Score> Aleph::AdversarialIterativeDeepeningResult< Move, Score >::result

Result of the deepest iteration (may be partial if a limit was hit).

Definition at line 352 of file Negamax.H.

Referenced by Aleph::adversarial_search_detail::run_iterative_deepening().

◆ total_stats

template<SearchMove Move, AdversarialScore Score>
AdversarialSearchStats Aleph::AdversarialIterativeDeepeningResult< Move, Score >::total_stats

Aggregate cost across all iterations and retries.

Definition at line 354 of file Negamax.H.


The documentation for this struct was generated from the following file: