Class QPSimpleMinimizer


  • public class QPSimpleMinimizer
    extends Object
    These are the utility functions to solve simple quadratic programming problems that admit analytical solutions.
    • Constructor Detail

      • QPSimpleMinimizer

        public QPSimpleMinimizer()
    • Method Detail

      • solve

        public static QPSolution solve​(QuadraticFunction f,
                                       double epsilon)
                                throws QPInfeasible
        Solves an unconstrained quadratic programming problem of this form. \[ \min_x \left \{ \frac{1}{2} \times x'Hx + x'p \right \} \]
        Parameters:
        f - the objective function
        epsilon - a precision parameter: when a number |x| ≤ ε, it is considered 0
        Returns:
        a quadratic programming solution
        Throws:
        QPInfeasible - when the quadratic programming problem is infeasible
      • solve

        public static QPSolution solve​(QuadraticFunction f)
                                throws QPInfeasible
        Solves an unconstrained quadratic programming problem of this form. \[ \min_x \left \{ \frac{1}{2} \times x'Hx + x'p \right \} \]
        Parameters:
        f - the objective function
        Returns:
        a quadratic programming solution
        Throws:
        QPInfeasible - when the quadratic programming problem is infeasible
      • solve

        public static QPSolution solve​(QuadraticFunction f,
                                       LinearEqualityConstraints equal,
                                       double epsilon)
                                throws QPInfeasible
        Solves a quadratic programming problem subject to equality constraints. \[ \min_x \left \{ \frac{1}{2} \times x'Hx + x'p \right \}, Ax = b \]
        Parameters:
        f - the objective function
        equal - the equality constraints
        epsilon - a precision parameter: when a number |x| ≤ ε, it is considered 0
        Returns:
        a quadratic programming solution
        Throws:
        QPInfeasible - when the quadratic programming problem is infeasible
      • solve

        public static QPSolution solve​(QuadraticFunction f,
                                       LinearEqualityConstraints equal)
                                throws QPInfeasible
        Solves a quadratic programming problem subject to equality constraints. \[ \min_x \left \{ \frac{1}{2} \times x'Hx + x'p \right \}, Ax = b \]
        Parameters:
        f - the objective function
        equal - the equality constraints
        Returns:
        a quadratic programming solution
        Throws:
        QPInfeasible - when the quadratic programming problem is infeasible