Class SQPASEVariation2

  • All Implemented Interfaces:
    SQPASEVariation

    public class SQPASEVariation2
    extends SQPASEVariation1
    This implementation tries to find an exact positive definite Hessian whenever possible.
    • Constructor Detail

      • SQPASEVariation2

        public SQPASEVariation2​(double r,
                                double lower,
                                int discretization)
        Construct a variation.
        Parameters:
        r - Han's exact penalty function coefficient, the bigger the better, e.g., eq. 15.20
        lower - the lower bound of alpha; the smaller the better but cannot be zero
        discretization - the number of points between [lower, 1] to search for alpha; the bigger the better
      • SQPASEVariation2

        public SQPASEVariation2()
        Construct a variation.
    • Method Detail

      • updateHessian

        public Matrix updateHessian​(Vector x1,
                                    Vector v1,
                                    Vector d,
                                    Vector g0,
                                    Matrix A0,
                                    Matrix W0)
        Description copied from interface: SQPASEVariation
        Update the Hessian matrix using the latest iterates.
        Specified by:
        updateHessian in interface SQPASEVariation
        Overrides:
        updateHessian in class SQPASEVariation1
        Parameters:
        x1 - the next minimizer
        v1 - the next Lagrange multipliers for inequality constraints (mu)
        d - the minimizer increment
        g0 - the gradient
        A0 - the set of active equality constraints
        W0 - the current Hessian matrix
        Returns:
        the next Hessian matrix