Horizon Technical Description
General Features
- Winboard-compatible engine supporting all commands (ponder is disabled internally) including: move, take-back, analysis, and time control
- Opening book with opening move 'style' configurable
- Resignation can be turned off or on
- Adjustable size for hash, pawn hash, and egtb cache
- Uses available Nalimov egtb tables (up to 5-man)
- ICS kibbitz support
- Adjustable Elo weakening (by wasting time and by disabling search options)
Search
Just like everyone else:
- Aspirated PVS
- Quiescent search with check extensions
- Null move
- Iterative deepening
- Internal iterative deepening
- Move ordering is ordinary except for possible "threat moves" which get boosted
- Two killer moves for each ply, 1 mate killer
- Extensions for: checkmate threat, single reply, check, revealed check, recaptures, 7th rank pawn pushes
- Adaptive razoring reductions for non-dangerous moves
- Search uses lazy eval for pruning decisions
Unique search features:
- Up to 3 null moves per search line
- Null-move reduction range: 2->4.5 plies
- Null-move verification search
- No history reductions
- No attack board
- Search aspiration is asymmetric based on side-to-move
- Thinking time extended for "interesting" positions