pub struct TacticalSearch {
pub config: TacticalConfig,
/* private fields */
}Expand description
Fast tactical search engine for position refinement
Fields§
§config: TacticalConfigImplementations§
Source§impl TacticalSearch
impl TacticalSearch
Sourcepub fn new(config: TacticalConfig) -> Self
pub fn new(config: TacticalConfig) -> Self
Create a new tactical search engine
Sourcepub fn with_table_size(config: TacticalConfig, table_size_mb: usize) -> Self
pub fn with_table_size(config: TacticalConfig, table_size_mb: usize) -> Self
Create with custom transposition table size
Sourcepub fn new_default() -> Self
pub fn new_default() -> Self
Create with default configuration
Sourcepub fn search_optimized(&mut self, board: &Board) -> TacticalResult
pub fn search_optimized(&mut self, board: &Board) -> TacticalResult
Ultra-fast tactical search with optimized move ordering and pruning
Sourcepub fn search(&mut self, board: &Board) -> TacticalResult
pub fn search(&mut self, board: &Board) -> TacticalResult
Search for tactical opportunities in the position with confidence-based time management
Sourcepub fn search_parallel(&mut self, board: &Board) -> TacticalResult
pub fn search_parallel(&mut self, board: &Board) -> TacticalResult
Parallel search using multiple threads for root move analysis
Sourcepub fn is_good_capture(
&self,
chess_move: &ChessMove,
board: &Board,
captured_piece: Piece,
) -> bool
pub fn is_good_capture( &self, chess_move: &ChessMove, board: &Board, captured_piece: Piece, ) -> bool
Improved Static Exchange Evaluation for capture assessment
Sourcepub fn calculate_material_exchange(
&self,
chess_move: &ChessMove,
board: &Board,
captured_piece: Piece,
attacker_piece: Piece,
) -> i32
pub fn calculate_material_exchange( &self, chess_move: &ChessMove, board: &Board, captured_piece: Piece, attacker_piece: Piece, ) -> i32
Calculate expected material exchange for a capture using Static Exchange Evaluation (SEE) Production-ready complete implementation for accurate tactical evaluation
Sourcepub fn get_all_attackers_of_square(
&self,
board: &Board,
square: Square,
color: Color,
) -> Vec<Piece>
pub fn get_all_attackers_of_square( &self, board: &Board, square: Square, color: Color, ) -> Vec<Piece>
Get complete list of all attacking pieces for SEE calculation
Sourcepub fn get_piece_attackers(
&self,
board: &Board,
square: Square,
color: Color,
) -> Vec<Piece>
pub fn get_piece_attackers( &self, board: &Board, square: Square, color: Color, ) -> Vec<Piece>
Get all pieces that can attack a square for a given color (legacy method for compatibility)
Sourcepub fn can_piece_attack(
&self,
board: &Board,
target_square: Square,
piece_type: Piece,
color: Color,
) -> bool
pub fn can_piece_attack( &self, board: &Board, target_square: Square, piece_type: Piece, color: Color, ) -> bool
Check if a piece of given type and color can attack the square
Sourcepub fn clear_cache(&mut self)
pub fn clear_cache(&mut self)
Clear transposition table
Sourcepub fn set_pattern_evaluation_data(
&mut self,
_pattern_eval: f32,
_pattern_confidence: f32,
)
pub fn set_pattern_evaluation_data( &mut self, _pattern_eval: f32, _pattern_confidence: f32, )
Set external pattern evaluation data from ChessVectorEngine This allows the tactical search to use real vector similarity data
Sourcepub fn search_with_pattern_data(
&mut self,
board: &Board,
pattern_eval: Option<f32>,
pattern_confidence: f32,
) -> TacticalResult
pub fn search_with_pattern_data( &mut self, board: &Board, pattern_eval: Option<f32>, pattern_confidence: f32, ) -> TacticalResult
Search with external pattern evaluation data from ChessVectorEngine This is the key method for vector-first evaluation
Trait Implementations§
Source§impl Clone for TacticalSearch
impl Clone for TacticalSearch
Source§fn clone(&self) -> TacticalSearch
fn clone(&self) -> TacticalSearch
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for TacticalSearch
impl RefUnwindSafe for TacticalSearch
impl Send for TacticalSearch
impl Sync for TacticalSearch
impl Unpin for TacticalSearch
impl UnwindSafe for TacticalSearch
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more