[0.3.0] - 2026-06-07
Added
epsparameter tooptimize()andRFOptimizer.build_model()for strict monotonicity.
Wheneps > 0, adjacent recency/frequency probability values are forced to differ by at least
eps, preventing ties. Defaulteps=0.0preserves the existing weak monotonicity behavior.
Applies to allkindvalues (mono,mr,mf,mrc,mfc,mcc).- Automatic upper-bound validation for
eps: raisesValueErrorifepsexceeds
p_max / (n - 1)(wherep_maxis the empirical probability maximum andnis the number
of recency or frequency levels), ensuring the problem remains feasible.
Changed
-
Kind aliases renamed from
monotone_*tomonotonic_*for consistent mathematical terminology.Old alias New alias Canonical monotonemonotonicmonomonotone_recencymonotonic_recencymrmonotone_frequencymonotonic_frequencymfmonotone_recency_convexmonotonic_recency_convexmrcmonotone_frequency_concavemonotonic_frequency_concavemfcmonotone_convex_concavemonotonic_convex_concavemcc