diff options
| author | Scott Gasch <[email protected]> | 2026-10-14 18:54:36 -0700 |
|---|---|---|
| committer | Scott Gasch <[email protected]> | 2026-10-14 18:54:36 -0700 |
| commit | d9419c104e9fe193649931cee167b819044c6ca3 (patch) | |
| tree | 57391e9e55b802af4c04cff87fefb4ec28c0a776 /src/TODO | |
| parent | ba0eac31639a3eb076ad17e8cd40f57990a53c00 (diff) | |
Finish work to unify search. Play tested, even as expected.
Unfortunately slightly slower.
Diffstat (limited to 'src/TODO')
| -rw-r--r-- | src/TODO | 22 |
1 files changed, 2 insertions, 20 deletions
@@ -6,24 +6,6 @@ Think about when to avoid nullmove pruning based on checks in the line r2r4/p4pk1/2p3p1/1p1nPR2/5p1Q/2N5/PPPq4/1K4R1 w - - 0 0 -- check extension crazy -2026-09-17: search.c's extended futility pruning (VALUE_KNIGHT/VALUE_ROOK -gate, PREPARE_TO_TRY_MOVES) now folds in iImprovement + iPositional[side] -(the same per-tier p50 typical-value estimate QSearch's own futility gate -uses), but still uses one flat margin regardless of which Eval() exit tier -(PLY_INFO.uLastPositionalSource) produced iEval/iPositional at that node. -iPositional corrects for a tier's mean bias, not its spread -- a coarse -(super-lazy) read could carry more variance/tail risk than a fine one even -after mean-centering. Rather than a categorical "never prune from -super-lazy" rule (rejected as too blunt/magic-number-shaped -- iPositional -already replaces trust-by-category with trust-by-measured-bias), the -principled fix is a real EFP_BASE_MARGIN_BY_SOURCE[tier], calibrated the -same way as QSearch's FUTILITY_BASE_MARGIN_BY_SOURCE (CALIBRATE_QSEARCH_ -FUTILITY-style harness: search the would-be-pruned move anyway, bucket -surprise rate by distance-short-of-bar AND uLastPositionalSource, check -whether the tiers actually need different margins here too). Not yet -built -- deferred behind self-play validation of today's iPositional/ -futility-margin changes landing first. - 2026-09-18: sharded ASSERT-fuzzing harness -- the technique that found the CommonSearchInit PV-staleness bug (DEBUG binary + gdb, batch mode, `script <shard>.ep_` at a shallow sd, let it run until either an @@ -74,8 +56,6 @@ hashed eval terms. early-exits as soon as a 2nd legal move is found rather than generating the full list. -2026-10-04: Reign in extensions the make the tree smaller. - 2026-10-04: Modify self-play harness to record eval score / PVs per move in the PGN output. Make self-play harness able to play crafty and then test the HEAD/candidate against crafty. @@ -84,3 +64,5 @@ Eval term for connected passers vs. rooks. Or 2+ passers vs. rooks. Poor king play -- tell it to support own passers or blockade enemy passers once king activity phase starts. + +Self-play lite and heavy. |
