The multithreaded patch
Features:
- Transposition table for caching board positions:
- For details see: https://www.chessprogramming.org/Transposition_Table
- Implementation uses an ageing replacement strategy
- Multithreading support
- Root layer now spawns threads for searching individual paths
- Provides a much faster implementation for searching more paths
- Iterative deepening (caps move thinking time at 5 seconds):
- For details see: https://www.chessprogramming.org/Transposition_Table
- Main search function has been changed from standard paranoid alpha beta to iterative deepening
- Searches within the time frame of 5 seconds
- Value can be modified in engine::Engine if desired