|
PIPS-NLP
|
#include <Solver.h>
Public Member Functions | |
| Solver () | |
| virtual | ~Solver () |
| virtual void | start (ProblemFormulation *formulation, Variables *iterate, Data *prob, Residuals *resid, Variables *step) |
| virtual void | defaultStart (ProblemFormulation *formulation, Variables *iterate, Data *prob, Residuals *resid, Variables *step) |
| virtual void | stevestart (ProblemFormulation *formulation, Variables *iterate, Data *prob, Residuals *resid, Variables *step) |
| virtual void | dumbstart (ProblemFormulation *formulation, Variables *iterate, Data *prob, Residuals *resid, Variables *step) |
| virtual int | solve (Data *prob, Variables *iterate, Residuals *resids)=0 |
| virtual double | finalStepLength (Variables *iterate, Variables *step) |
| virtual void | doMonitor (Data *data, Variables *vars, Residuals *resids, double alpha, double sigma, int i, double mu, int stop_code, int level) |
| virtual void | defaultMonitor (Data *data, Variables *vars, Residuals *resids, double alpha, double sigma, int i, double mu, int stop_code, int level)=0 |
| virtual int | doStatus (Data *data, Variables *vars, Residuals *resids, int i, double mu, int level) |
| virtual int | defaultStatus (Data *data, Variables *vars, Residuals *resids, int i, double mu, int level) |
| void | addMonitor (OoqpMonitor *) |
| void | useStatus (Status *s) |
| void | useStartStrategy (OoqpStartStrategy *s) |
| void | monitorSelf () |
| void | setMuTol (double m) |
| double | getMuTol () |
| void | setArTol (double ar) |
| double | getArTol () |
| double | dataNorm () |
| LinearSystem * | getLinearSystem () |
Public Attributes | |
| int | iter |
Protected Attributes | |
| OoqpMonitor * | itsMonitors |
| Status * | status |
| OoqpStartStrategy * | startStrategy |
| double | dnorm |
| double | mutol |
| double | artol |
| double | gamma_f |
| double | gamma_a |
| double | phi |
| int | maxit |
| double * | mu_history |
| double * | rnorm_history |
| double * | phi_history |
| double * | phi_min_history |
| LinearSystem * | sys |
Abstract base class for QP solvers.
| Solver::Solver | ( | ) |
|
virtual |
| void Solver::addMonitor | ( | OoqpMonitor * | m | ) |
method to add user-defined monitors to the monitor operations performed at each iteration
|
inline |
|
pure virtual |
default monitor: prints out one line of information on each interior-point iteration
Implemented in FilterIPMSolver.
|
virtual |
default starting point heuristic
Reimplemented in FilterIPMSolver.
|
virtual |
default method for checking status. May be replaced by a user-defined method
Reimplemented in FilterIPMSolver, and FilterIPMStochSolver.
|
virtual |
perform monitor operation at each interior-point iteration
|
virtual |
this method called to test for convergence status at the end of each interior-point iteration
|
virtual |
alternative starting point heuristic: sets the "complementary" variables to a large positive value (based on the norm of the problem data) and the remaining variables to zero
Mehrotra's heuristic to calculate the final step length
|
inline |
|
inline |
returns a pointed to the linear system object stored in this class
|
inline |
| void Solver::monitorSelf | ( | ) |
enables defaultMonitor as one of the monitors
|
inline |
|
inline |
implements the interior-point method for solving the QP
Implemented in FilterIPMSolver, and FilterIPMStochSolver.
|
virtual |
starting point heuristic
|
virtual |
alternative starting point heuristic
|
inline |
method to replace the defaultStatus method with a user-defined status checking method
|
inline |
method to replace the defaultStatus method with a user-defined status checking method
|
protected |
|
protected |
norm of problem data
|
protected |
|
protected |
parameters associated with the step length heuristic
| int Solver::iter |
iteration counter
|
protected |
|
protected |
maximum number of iterations allowed
|
protected |
history of values of mu obtained on all iterations to date
|
protected |
termination parameters
|
protected |
merit function, defined as the sum of the complementarity gap tand the residual norms, divided by (1+norm of problem data) as (rnorm + gap) / dnorm
|
protected |
history of values of phi obtained on all iterations to date
|
protected |
the i-th entry of this array contains the minimum value of phi encountered by the algorithm on or before iteration i
|
protected |
history of values of residual norm obtained on all iterations to date
|
protected |
|
protected |
|
protected |
1.8.11