Skip to content

Add guarded Strelka-style razoring - #14

Draft
KnightStackSys wants to merge 1 commit into
mainfrom
strelka-razoring
Draft

KnightStackSys wants to merge 1 commit into
mainfrom
strelka-razoring

Conversation

@KnightStackSys

Copy link
Copy Markdown
Owner

Adds a Strelka-inspired shallow razoring experiment for isolated Elo testing.

Razoring policy

  • non-PV nodes only
  • skips the root (ply > 0)
  • maximum depth 3
  • disabled in mate windows
  • disabled if any of the four players is in check
  • depth 1 uses a +125 cp razor margin
  • depths 2-3 use a +300 cp total razor margin
  • drops into qsearch to confirm likely fail-low nodes
  • preserves Strelka's unusual depth-1 behavior: if the static test says fail-low, the qsearch result is returned even if qsearch itself rises above beta
  • at depths 2-3, the qsearch result must still remain below beta before the razor return is accepted

4PC safety guard

IronPhoenix checks Position::inCheck(Color) for every color before allowing razoring. A check against Red, Blue, Yellow, or Green disables the heuristic for that node.

Scope

  • only src/search.cpp changes
  • existing TT cutoffs, PVS, LMR, SEE pruning, LMP, history, aspiration windows, and evaluation remain otherwise unchanged

This branch is intentionally isolated from IID/IIR and should be SPRT tested directly against main.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant