Skip to content

Allow negative utility factors for "misère" search#31

Draft
ChinChangYang wants to merge 1 commit into
masterfrom
claude/chosenmovetemperatureonlybelowprob-epb1li
Draft

Allow negative utility factors for "misère" search#31
ChinChangYang wants to merge 1 commit into
masterfrom
claude/chosenmovetemperatureonlybelowprob-epb1li

Conversation

@ChinChangYang

Copy link
Copy Markdown
Owner

Relax the lower bound of winLossUtilityFactor, staticScoreUtilityFactor,
and dynamicScoreUtilityFactor from 0.0 to -1.0 in config parsing. Negative
factors invert the search objective so both players search for the
most-losing move, which models the sub-20k regime (where weak opponents
play worse than random) better than a normal win-seeking search. Strength
is then calibrated via temperature.

Add gtp_human_misere_example.cfg demonstrating the setup, with the
necessary guardrails (useUncertainty=false to avoid a NaN from the
negative-factor uncertainty term, shallow search since the value net is
unreliable for deep losing lines, and human-SL exploration to keep
blunders human-shaped).

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_0124xb2Xkir35BQHpuxthSPS

@ChinChangYang ChinChangYang changed the title Allow negative utility factors for "misere"/送頭 search Allow negative utility factors for "misère" search Jun 25, 2026
@ChinChangYang ChinChangYang marked this pull request as draft June 25, 2026 08:19
Relax the lower bound of winLossUtilityFactor, staticScoreUtilityFactor,
and dynamicScoreUtilityFactor from 0.0 to -1.0 in config parsing. Negative
factors invert the search objective so both players search for the
most-losing move, which models the sub-20k regime (where weak opponents
play worse than random) better than a normal win-seeking search. Strength
is then calibrated via temperature.

Add gtp_human_misere_example.cfg demonstrating the setup, with the
necessary guardrails (useUncertainty=false to avoid a NaN from the
negative-factor uncertainty term, shallow search since the value net is
unreliable for deep losing lines, and human-SL exploration to keep
blunders human-shaped).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0124xb2Xkir35BQHpuxthSPS
@ChinChangYang ChinChangYang force-pushed the claude/chosenmovetemperatureonlybelowprob-epb1li branch from eb5b2c0 to ce2172e Compare June 25, 2026 08:20
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.

2 participants