Class QPDualActiveSetMinimizer

  • All Implemented Interfaces:
    Minimizer<QPProblem,​IterativeSolution<QPSolution>>, ConstrainedMinimizer<QPProblem,​IterativeSolution<QPSolution>>, QPMinimizer, Optimizer<QPProblem,​IterativeSolution<QPSolution>>

    public class QPDualActiveSetMinimizer
    extends Object
    implements QPMinimizer
    This implementation solves a Quadratic Programming problem using the dual active set algorithm.

    The dual active set algorithm first transforms the QP problem into its dual form, which is also a QP problem. Then the transformed QP problem is solved using primal active set algorithm.

    The advantages of dual active set algorithm are:

    1. The computation of initial feasible solution is avoided;
    2. Comparing to the prime problem, the constraints of the dual problem are much simpler. The constraints parameter A is an identity matrix and b is a zero vector;
    3. When it is hard to provide a good initial feasible solution for the primal active set algorithm (by good we mean close to the optimal solution), the dual active set algorithm is faster than primal active set algorithm.
    See Also:
    QPPrimalActiveSetMinimizer
    • Constructor Detail

      • QPDualActiveSetMinimizer

        public QPDualActiveSetMinimizer​(double epsilon,
                                        int maxIterations)
      • QPDualActiveSetMinimizer

        public QPDualActiveSetMinimizer​(double epsilon,
                                        int maxIterations,
                                        boolean containsBoxConstraints)