Turn bounded alignment into crisp, portable decisions.
3.4 Bands (A++/A+/A0/A–/A–) and thresholds
Purpose. Convert continuous alignment into actionable, readable classes for routing, UI badges, policies, and dashboards—while numbers stay unchanged via phi((m,a)) = m. Bands apply to component lanes a and to the final chooser RSI.
Defaults (normative).
A++ : a >= +0.90
A+ : +0.60 <= a < +0.90
A0 : -0.60 < a < +0.60
A- : -0.90 < a <= -0.60
A-- : a <= -0.90
Use the same table for RSI (recommended for decisions). Any override must be declared in the manifest.
Why bands (practical).
• Instant read: A+ or A- is faster to interpret than decimals.
• Stable routing: simple rules like retry only if RSI_env >= A+.
• Comparable: fixed table ⇒ cross-model/vendor parity.
• Auditable: logs carry both the scalar (a/RSI) and the band.
Which quantity to band.
• Final decisions: band RSI or RSI_env.
• Diagnostics: band intermediate a to expose weak links early.
Hysteresis (reduce flicker at edges).
Let h_up, h_dn > 0 be small (e.g., 0.02). For the A+ boundary at 0.60:
enter_A+ when x >= 0.60 + h_up
leave_A+ when x < 0.60 - h_dn
Apply similarly at 0.90, -0.60, -0.90.
Calm-gated bands.
When a gate is in use, band on RSI_env := g_t * RSI (or tanh(g_t*atanh(RSI)) if using u-scale mode). The gate scales alignment only; m is untouched and phi((m,a)) = m always holds.
Worked minis (calculator-fast).
• RSI = 0.604368 → A+
• RSI_env = 0.302184 → A0 (neutral; pause or defer)
• a = -0.875 → A- (watch)
• a = +0.915 → A++ (strong pass)
Traditional vs SSM-AI (decision thresholds).
Goal: enforce consistent, human-readable decision rules.
• Traditional: bespoke cutoffs on raw, unbounded scores; hard to compare across teams/vendors.
• SSM-AI: fixed bounded bands on RSI (and optionally RSI_env) → portable policies; m remains unchanged.
Pseudocode (drop-in).
def to_band(x): # x in (-1,+1), e.g., a or RSI
if x >= 0.90: return "A++"
if x >= 0.60: return "A+"
if x > -0.60: return "A0"
if x > -0.90: return "A-"
return "A--"
def to_band_hysteresis(x, prev_band, h_up=0.02, h_dn=0.02):
if prev_band == "A++" and x >= 0.90 - h_dn: return "A++"
if prev_band == "A+" and (0.60 - h_dn) <= x < (0.90 + h_up): return "A+"
if prev_band == "A0" and (-0.60 - h_dn) < x < (0.60 + h_up): return "A0"
if prev_band == "A-" and (-0.90 - h_dn) < x <= (-0.60 + h_up): return "A-"
if prev_band == "A--" and x <= -0.90 + h_up: return "A--"
return to_band(x)
Manifest (keys to publish).
"bands": {
"A++": 0.90, "A+": 0.60, "A0": -0.60, "A-": -0.90, "A--": -1.00,
"hysteresis": { "h_up": 0.02, "h_dn": 0.02 },
"band_on": "RSI_env" # or "RSI" or "a"
}
QA checklist (pass/fail).
• Boundary tests: exact values 0.90, 0.60, -0.60, -0.90 map as specified.
• Monotonicity: if x1 < x2, band(x1) is not strictly better than band(x2).
• Hysteresis: ramps respect stickiness; no flicker around ±0.60.
• Gate awareness: band(RSI_env) shifts with g_t; m never changes.
One-line takeaway. Fixed, bounded bands turn alignment into simple, portable policies (A++ … A–) that everyone can read, route, and audit—while phi((m,a)) = m keeps numbers pristine.
Navigation
Previous: SSM-AI – Chooser — RSI (3.3)
Next: SSM-AI – Lens Calibration Quickstart (3.5)
Directory of Pages
SSM-AI — Table of Contents