Papers
Topics
Authors
Recent
Search
2000 character limit reached

Boosted DC Algorithm (BDCA)

Updated 27 April 2026
  • The Boosted DC Algorithm (BDCA) is an optimization meta-algorithm that accelerates DC programming by boosting descent steps with a tailored line search strategy.
  • It achieves enhanced convergence rates and theoretical guarantees, including finite-length descent and linear or sublinear convergence under specific conditions.
  • Empirical studies in portfolio optimization, clustering, and polynomial programming reveal BDCA’s superior performance in speed and solution quality over classical DCA.

The Boosted DC Algorithm (BDCA) is an optimization meta-algorithm designed to accelerate the classical Difference-of-Convex (DC) functions Algorithm (DCA) in solving nonconvex programs where the objective (and possibly constraints) can be expressed as the difference of two convex functions. BDCA achieves this acceleration via a line search procedure along a direction induced by the DCA subproblem at each iteration and is applicable to both unconstrained and constrained settings, with extensions for nonsmooth and non-differentiable problems. A rapidly growing literature establishes sharp convergence guarantees and empirical superiority over DCA across application domains, notably in mathematical finance, polynomial, and quadratic programming, machine learning, and eigenvalue complementarity.

1. Mathematical Formulation and Principles

Let f(x)=g(x)h(x)f(x) = g(x) - h(x), where gg and hh are proper, closed convex functions, potentially with additional regularity. The canonical DC program is: minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x) where the feasible set F\mathcal{F} can be unconstrained, a polyhedron, or more generally defined via equality/inequality or even nonlinear constraints.

The classical DCA iteratively computes

yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)

and sets xk+1=ykx^{k+1} = y^k.

In BDCA, after forming the DCA direction dk=ykxkd^k = y^k - x^k, a boosting (extrapolation) step is taken: xk+1=yk+λkdkx^{k+1} = y^k + \lambda_k d^k where λk0\lambda_k \ge 0 is computed via a line search for sufficient decrease, typically of Armijo type: gg0 for some gg1. When extended to linearly constrained settings, feasibility checks and adaptation to the active set are performed (Thormann et al., 2024, Artacho et al., 2019).

2. Convergence Theory and Complexity

Under strong convexity of gg2 and gg3 (or additive strong convexification), global convergence of BDCA is established for both unconstrained and linearly constrained problems. If gg4 is (locally) smooth and the feasible set satisfies a constraint qualification (e.g., Slater), any cluster point is a KKT point of the problem (Artacho et al., 2019, Thormann et al., 2024). Key technical properties include:

  • Descent guarantee: Each boosting step achieves a strictly larger objective decrease than DCA (1602.09194, Artacho et al., 2018).
  • Finite length: The sum gg5.
  • Global convergence rates: When gg6 possesses the Kurdyka–Łojasiewicz (KL) property at a cluster point with exponent gg7, full sequence convergence and sharp rates follow:
    • If gg8 (piecewise linear/quadratic), linear convergence: gg9 for some hh0.
    • If hh1, finite termination.
    • If hh2, sublinear convergence.
  • Worst-case iteration complexity: For unconstrained hh3, after hh4 steps,

hh5

with hh6; this strictly outperforms DCA for hh7 (Abbaszadehpeivasti et al., 18 Oct 2025).

3. Algorithmic Workflow, Pseudocode, and Extensions

BDCA's standard workflow applies to both unconstrained and linearly constrained, possibly nonsmooth, DC problems:

  1. Subgradient evaluation: hh8.
  2. DCA subproblem: hh9.
  3. Descent direction: minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)0.
  4. Line search: Determine minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)1 to maximize decrease while maintaining feasibility (see below).
  5. Update: minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)2.

Line search variants:

  • Armijo-type (monotone): Accept minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)3 if minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)4; shrink minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)5.
  • Non-monotone (for nonsmooth minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)6): Accept if minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)7, with minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)8 a decaying tolerance (Ferreira et al., 2021, Ferreira et al., 2024).
  • Improved monotone (IBDCA): For nonsmooth minxF  f(x)=g(x)h(x)\min_{x \in \mathcal{F}} \; f(x) = g(x) - h(x)9, the line search is performed from F\mathcal{F}0 rather than F\mathcal{F}1 (Li et al., 4 Feb 2026).

Exact line search: For polynomial or rational DC decompositions, the best F\mathcal{F}2 can be found analytically by root-finding over F\mathcal{F}3 (Zhang et al., 2022, Niu, 2023).

Derivative-free boosting: Augmenting BDCA with positive-spanning sets and direct search techniques achieves stronger d-stationarity properties (Artacho et al., 2019).

4. Specializations, Practical Implementation, and Tuning

BDCA is instantiated with problem-tailored choices for DC decomposition, subproblem solvers, and line search rules:

  • Portfolio optimization with Value-at-Risk constraints: Reformulate VaR via a CVaR-based DC representation, adopt an exact penalty, and solve constrained convex subproblems with Python/SciPy routines. Empirically, this yields faster, more accurate solutions than DCA—a factor of 10× speedup in high dimensions, closer proximity to the efficient frontier, and dramatically fewer infeasible points (Thormann et al., 2024).
  • Clustering and location problems: BDCA combined with DC decompositions of the MSSC and Weber objectives, Nesterov smoothing, and adaptive step strategies outperforms DCA, especially with skipping of the line search in negligible-descent regimes (Long et al., 2024, Tran et al., 2023).
  • Polynomial optimization: The BDCAe variant exploits power-sum DC decompositions and analytical line search for box- and simplex-constrained polynomial problems, leveraging fast dual proximal gradient solvers for the convex subproblems (Zhang et al., 2022).
  • Eigenvalue complementarity: In SEiCP and AEiCP, BDCA yields a reduction of 50–90% in iteration count and wall-clock time over DCA, as well as higher precision on large-scale instances (Niu, 2023, Niu, 2023).

Parameter tuning:

  • Armijo parameters: F\mathcal{F}4–F\mathcal{F}5, F\mathcal{F}6–F\mathcal{F}7.
  • Penalty weights in DC penalties: chosen empirically large enough to enforce constraints but not so large as to ill-condition the subproblems.
  • Initial step size: adaptive or carried over from previous successful steps; heuristic self-adaptive mechanisms are recommended.
  • Stopping tolerances: often on relative or absolute objective change, with F\mathcal{F}8.

5. Numerical Performance and Empirical Results

Extensive computational studies demonstrate substantial performance improvement of BDCA over DCA and other standard nonlinear programming solvers (e.g., KNITRO, FMINCON, IPOPT):

Problem Class Speedup (BDCA vs DCA) Accuracy/Frontier Closeness Notable Observations
VaR portfolio selection (Thormann et al., 2024) F\mathcal{F}9--yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)0 Significant Fewer infeasible outputs, proximity to efficient frontier
Copositivity and quadratic box (Artacho et al., 2019) yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)1--yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)2 Similar or better Substantial gains in high-dimension, varying active set and line search activation
Polynomial (MVSK, box) (Zhang et al., 2022) yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)3--yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)4 Comparable Fastest among DC-based methods, competitive with FILTERSD/FMINCON
Clustering, MDS (Artacho et al., 2018) yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)5--yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)6 Improved Line search flexibility shown to be crucial; skipping strategy restores efficiency
SEiCP/A(E)iCP (Niu, 2023, Niu, 2023) yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)7--yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)8 Higher precision Numerous classes, armijo and exact boosting, outperforms mature NLP solvers

These results hold across a wide spectrum of test problems, from continuous and piecewise-linear to smooth polynomial and nonsmooth DC models.

BDCA has been extended or adapted in several key directions:

  • Non-smooth and non-differentiable components: Non-monotone boosting (Ferreira et al., 2021, Ferreira et al., 2024), improved monotone boosting (IBDCA) for nonsmooth yk=argminxF{g(x)uk,x},    ukh(xk)y^k = \arg\min_{x \in \mathcal{F}} \big\{ g(x) - \langle u^k, x \rangle \big\}, \;\; u^k \in \partial h(x^k)9 (Li et al., 4 Feb 2026).
  • Constraint handling: BDCA integrates naturally with DC penalty methods for nonlinear and distance-based constraints (Tran et al., 2023).
  • Stationarity escalation: Augmentation with positive spanning sets and derivative-free search guarantees direction-stationarity (d-stationarity), strictly surpassing what DCA or standard BDCA achieve (Artacho et al., 2019).
  • Self-adaptive and skipping strategies: Adaptive step-size rules and conditional omission of line search further reduce iteration and CPU counts (Long et al., 2024).
  • Theoretical frontiers: Full worst-case rate certification via semidefinite performance estimation (Abbaszadehpeivasti et al., 18 Oct 2025).

The principal limitation arises when the descent direction computed from the DCA subproblem fails to be a descent direction for highly nonsmooth objectives—in such cases, variants with non-monotone or inexact line searches are required (Ferreira et al., 2021, Ferreira et al., 2024, Li et al., 4 Feb 2026).

7. Impact and Applications across Domains

The BDCA paradigm is now a foundational approach for accelerating DC programming, due to:

  • Universality: Applicability to portfolio optimization (VaR, MVSK), quadratic and polynomial programming, multidimensional scaling, clustering, and several classes of eigenvalue complementarity problems.
  • Reproducibility: Open-access codebases accompany key studies, ensuring transparency and fair benchmarking (e.g., (Thormann et al., 2024)).
  • Scalability: Demonstrated effectiveness for high-dimensional, dense instances (thousands of assets, variables, or data points).

Its theoretical and algorithmic innovations—boosted line-search, adaptive step management, and practical hybridizations—continue to shape advances in nonconvex optimization with tractable convex substructure.

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Boosted DC Algorithm (BDCA).