Ocba SAR
The Optimal Computing Budget Allocation (OCBA) simulation-allocation rule (ISC appendix Algorithm 7). Given the current sample means and variances of the competing solutions, OCBA distributes a replication budget to maximize the probability of correct selection: more effort goes to systems that are close to the current best (small mean gap) and noisy (large variance), with the best system itself sampled in proportion to the aggregate competition. For minimization, with best b = argmin X̄_i, the allocation satisfies
N_i / N_j = (σ_i / δ_{b,i})² / (σ_j / δ_{b,j})²for non-besti, j, whereδ_{b,i} = X̄_i − X̄_b,N_b = σ_b · sqrt( Σ_{i≠b} (N_i / σ_i)² ).
allocate turns these ratios into target replication counts over the pooled budget (current total) + additionalBudget and returns each solution's shortfall to its target.
Because OCBA is inherently a multi-system rule, the primary entry point is the batch allocate (via BatchAllocationRuleIfc); CompassSolver uses it automatically. For drop-in compatibility with the per-solution SimulationAllocationRuleIfc, additionalReplications delegates to an internal FixedScheduleSAR floor (the slightly-super-logarithmic schedule), which also sizes the batch budget when OCBA drives a COMPASS run.
Parameters
the floor n0 on replications per solution; defaults to FixedScheduleSAR.DEFAULT_INITIAL_REPLICATIONS
the positive growth-exponent offset for the floor schedule; defaults to FixedScheduleSAR.DEFAULT_EPSILON
a positive lower bound applied to each variance so zero-variance estimates do not collapse the ratios; must be > 0
a positive lower bound applied to each mean gap |X̄_i − X̄_b| so near-ties do not produce infinite weights; must be > 0
Constructors
Functions
The per-solution floor schedule (delegates to FixedScheduleSAR); also sizes the OCBA budget.
Returns the number of additional replications to give each solution so that, together with the replications they already carry, additionalBudget new replications are distributed across solutions according to the rule. Solutions receiving none may be omitted from the result.