Solver: Adaptive Line-search with Oracle Estimations (ALOE)¶
Description:¶
The solver is a stochastic line search algorithm with the gradient estimate recomputed in each iteration, whether or not a step is accepted. The algorithm includes the relaxation of the Armijo condition by an additive constant \(2\epsilon_f\).
Modifications & Implementation:¶
For each iteration, first compute the gradient approximation \(g_k\) using either the IPA gradient estimates or finite difference estimates. Then, the algorithm checks for sufficient decrease. Let \(x_k^{+} = x_k - \alpha_k g_k\). Estimate the objective values \(f(x_k^{+})\) and \(f(x_k)\). Check the modified Arimjo condition:
If the condition holds, then set \(x_{k+1} \leftarrow x_{k}\) and \(\alpha_{k+1} \leftarrow \min\{ \alpha_{max}, \gamma^{-1}\alpha_k \}\). Otherwise, set \(x_{k+1} \leftarrow x_{k}\) and \(\alpha_{k+1} \leftarrow \gamma \alpha_k\)
Helper functions: The finite_diff function uses finite difference methods to estimate the gradient of the objective function.
Scope:¶
objective_type: single
constraint_type: box
variable_type: continuous
Solver Factors:¶
crn_across_solns: Use CRN across solutions?
Default: True
r: Number of replications taken at each solution.
Default: 30
theta: Constant in the Armijo condition.
Default: 0.2
gamma: Constant for shrinking the step size.
Default: 0.8
alpha_max: Maximum step size.
Default: 10
alpha_0: Initial step size.
Default: 1
epsilon_f: Additive constant in the Armijo condition.
Default: 1
sensitivity: Shrinking scale for variable bounds.
Default: 10^(-7)
References:¶
This solver is adapted from the article Jin, B., Scheinberg, K., & Xie, M. (2021). High probability complexity bounds for line search based on stochastic oracles. Advances in Neural Information Processing Systems, 34, 9193-9203.