ConstrainedOptPack Namespace Reference


Classes

class  ConstrainedOptPack::DecompositionSystem
 This class abstracts a decomposition choice for the quasi-range space Y and null space Z matrices for a linearly independent set of columns of Gc. More...
class  ConstrainedOptPack::DecompositionSystem::SingularDecomposition
  More...
class  ConstrainedOptPack::DecompositionSystem::InvalidMatrixType
  More...
class  ConstrainedOptPack::DecompositionSystem::TestFailed
  More...
class  ConstrainedOptPack::DecompositionSystemCoordinate
 Coordinate variable reduction subclass. More...
class  ConstrainedOptPack::DecompositionSystemOrthogonal
 Orthogonal variable reduction subclass. More...
class  ConstrainedOptPack::DecompositionSystemTester
 Testing class for DecompositionSystem interface. More...
class  ConstrainedOptPack::DecompositionSystemTesterSetOptions
 Set options for DecompositionSystemTester from an OptionsFromStream object. More...
class  ConstrainedOptPack::DecompositionSystemVarReduct
 Specialization of DecompositionSystem for variable reduction decompositions. More...
class  ConstrainedOptPack::DecompositionSystemVarReductImp
 Specialization node implementation subclass of DecompositionSystem for variable reduction decompositions. More...
class  ConstrainedOptPack::DecompositionSystemVarReductPerm
 Specialization interface of DecompositonSystem that allows basis permutations. More...
class  ConstrainedOptPack::DecompositionSystemVarReductPermStd
 Concreate subclass of DecompositionSystemVarReductPerm that uses an aggregate DecompostionSystemVarReductImp object. More...
class  ConstrainedOptPack::DirectLineSearch_Strategy
 Abstract strategy interface for 1D line searches {abstract}. More...
class  ConstrainedOptPack::DirectLineSearch_Strategy::NotDescentDirection
 Thrown if the direction vector d_k is not a descent direction for the merit funciton. More...
class  ConstrainedOptPack::DirectLineSearchArmQuad_Strategy
 Performs a line search using the Armijo condition and uses quadratic interpolation to select each new alpha. More...
class  ConstrainedOptPack::DirectLineSearchArmQuad_StrategySetOptions
 Set options for DirectLineSearchArmQuad_Strategy from a OptionsFromStream object. More...
class  ConstrainedOptPack::MeritFuncCalc
 Abstract iterface for n-D merit functions {abstract}. More...
class  ConstrainedOptPack::MeritFuncCalc1D
 Abstracts a 1D merit function {abstract}. More...
class  ConstrainedOptPack::MeritFuncCalc1DQuadratic
 Adds the ability to compute phi(alpha) at alpha of a given set of vectors. More...
class  ConstrainedOptPack::MeritFuncCalcNLE
 Adds the ability to compute phi(c(x)) at x directly instead of having to compute c first. This class uses an aggregate NLP to perform the computations of c(x). More...
class  ConstrainedOptPack::MeritFuncCalcNLP
 Adds the ability to compute phi(f(x),c(x),h(x)) at x directly instead of having to compute f, c and h first. This class uses an aggregate NLP to perform the computations of f(x) c(x) and h(x). More...
class  ConstrainedOptPack::MeritFuncNLE
 Base class for all merit functions for systems of NonLinear Equations (NLE) {abstract}. More...
class  ConstrainedOptPack::MeritFuncNLE::InvalidInitialization
  More...
class  ConstrainedOptPack::MeritFuncNLESqrResid
 A merit function for the square of the constriant values. More...
class  ConstrainedOptPack::MeritFuncNLP
 Base class for all merit functions for NonLinear Programs (NLP) {abstract}. More...
class  ConstrainedOptPack::MeritFuncNLP::InvalidInitialization
  More...
class  ConstrainedOptPack::MeritFuncNLPDirecDeriv
 This class provides a mix-in interface for allowing subclass merit functions to compute the directional 1D derivative at a base point. More...
class  ConstrainedOptPack::MeritFuncNLPL1
 The L1 merit function. More...
class  ConstrainedOptPack::MeritFuncNLPModL1
 The modified L1 merit function using different penatly parameters for each constriant. More...
class  ConstrainedOptPack::MeritFuncPenaltyParam
 This class provides interface for setting and retrieving a penalty parameter that many merit functions use {abstract}. More...
class  ConstrainedOptPack::MeritFuncPenaltyParams
 This class provides interface for setting and retrieving a penalty parameter that many merit functions use {abstract}. More...
class  ConstrainedOptPack::MeritFuncPenaltyParams::CanNotResize
  More...
class  ConstrainedOptPack::MatrixDecompRangeOrthog
 Matrix subclass for variable reduction orthogonal matrix R = Gc(:,con_decomp)'*Y. More...
class  ConstrainedOptPack::MatrixGenBanded
 Matrix subclass for general (possibly singular) banded matrices. More...
class  ConstrainedOptPack::MatrixHessianRelaxed
 Represents a symmetric Hessian matrix with a relaxation variable added. More...
class  ConstrainedOptPack::MatrixHessianSuperBasic
 Matrix class that represents a hessian matrix where only the super submatrix for the super basic variables need be nonsingular. More...
class  ConstrainedOptPack::MatrixHessianSuperBasicInitDiagonal
 Matrix class that adds the ability to initialize to a diagonal to a MatrixHessainSuperBasic object. More...
class  ConstrainedOptPack::MatrixIdentConcat
 Matrix class for a matrix vertically concatonated with an identity matrix {abstract}. More...
class  ConstrainedOptPack::MatrixIdentConcatStd
 Concrete implementation class for a matrix vertically concatonated with an identity matrix. More...
class  ConstrainedOptPack::MatrixKKTFullSpaceRelaxed
 Implementation of a KKT matrix factorized in the full space. More...
class  ConstrainedOptPack::MatrixKKTFullSpaceRelaxed::NotInitializedException
  More...
class  ConstrainedOptPack::MatrixKKTFullSpaceRelaxed::SingularMatrixException
  More...
class  ConstrainedOptPack::MatrixKKTFullSpaceRelaxed::InvalidMatrixType
  More...
class  ConstrainedOptPack::MatrixSymAddDelBunchKaufman
 This class maintains the factorization of symmetric indefinite matrix using a Bunch & Kaufman factorization. More...
class  ConstrainedOptPack::MatrixSymAddDelUpdateableWithOpNonsingular
 Interface for updating a symmetric matrix and its factorization by adding and deleting rows and columns and preforming operations with it. More...
class  ConstrainedOptPack::MatrixSymHessianRelaxNonSing
 Matrix class for non-singular Hessian matrix augmented with a terms for "Big M" relaxation variables. More...
class  ConstrainedOptPack::MatrixSymIdentitySerial
 Matrix class for a serial scaled identity matrix. More...
class  ConstrainedOptPack::MatrixSymPosDefBandedChol
 Matrix subclass for banded symmetric positive definite matrices and their Cholesky factors. More...
class  ConstrainedOptPack::MatrixSymPosDefInvCholFactor
 Implementation of MatrixOp abstract interface for SymInvCholMatrix. More...
class  ConstrainedOptPack::MatrixSymPosDefLBFGS
 Implementation of limited Memory BFGS matrix for arbitrary vector spaces. More...
class  ConstrainedOptPack::MatrixSymPosDefLBFGS::PostMod
 PostMod class to use with MemMngPack::AbstractFactorStd. More...
class  ConstrainedOptPack::MatrixVarReductImplicit
 Implements D = - inv(C) * N for a variable reduction projection. More...
class  ConstrainedOptPack::VariableBoundsTester
 Tests that a set of variables are within their bounds. More...
class  ConstrainedOptPack::VariableBoundsTesterSetOptions
 Set options for VariableBoundsTester from an OptionsFromStream object. More...
class  ConstrainedOptPack::QPSchur
 Solves a Quadratic Program with a dual QP method using a schur complement factorization. More...
class  ConstrainedOptPack::QPSchur::TestFailed
 Thrown if a test failed. More...
class  ConstrainedOptPack::QPSchur::InconsistantConstraintsException
 Thrown if constraints are inconsistant (no feasible region). More...
class  ConstrainedOptPack::QPSchur::NumericalInstabilityException
 Thrown if there is some numerical instability. More...
class  ConstrainedOptPack::QPSchur::DualInfeasibleException
 Thrown if during the course of the primal-dual iteration a non-dual feasible point if found. More...
class  ConstrainedOptPack::QPSchur::U_hat_t
 Represents the matrix U_hat. More...
class  ConstrainedOptPack::QPSchur::ActiveSet
 Represents and manages the active set for the QPSchur algorithm. More...
class  ConstrainedOptPack::QPSchurInitKKTSystemHessianFixedFree
 Implementation of initial KKT system using the Hessian for the free variables only. More...
class  ConstrainedOptPack::QPSchurInitKKTSystemHessianFull
 Implementation of initial KKT system for all variables initially free and Ko = G. More...
class  ConstrainedOptPack::QPSchurInitKKTSystemHessianRelaxed
 Implementation of initial KKT system where all original variables are free and all the relaxation variables are fixed. More...
class  ConstrainedOptPack::QPSchurInitKKTSystemHessianSuperBasic
 Implementation of initial KKT system for all variables initially fixed and free where #Ko = B_RR#. More...
class  ConstrainedOptPack::QPSolverRelaxed
 Solves Quadratic Programs (QPs) of several different forms while allowing a relaxation of the constraints. More...
class  ConstrainedOptPack::QPSolverRelaxed::Unbounded
 Thrown if the QP is unbounded. More...
class  ConstrainedOptPack::QPSolverRelaxed::Infeasible
 Thrown if the QP is infeasible. More...
class  ConstrainedOptPack::QPSolverRelaxed::InvalidInput
 Thrown if there is invalid input. More...
class  ConstrainedOptPack::QPSolverRelaxed::TestFailed
 Thrown if a test failed. More...
class  ConstrainedOptPack::QPSolverRelaxedQPKWIK
 Solves Quadratic Programming (QP) problem using the primal-dual active-set solver QPKWIK. More...
class  ConstrainedOptPack::QPSolverRelaxedQPOPTSOL
 Node base clase for the primal QP solvers QPOPT and QPSOL. More...
class  ConstrainedOptPack::QPSolverRelaxedQPSchur
 Solves Quadratic Programming (QP) problems using QPSchur. More...
class  ConstrainedOptPack::QPSolverRelaxedQPSchur::InitKKTSystem
 Interface for the object that forms the initial KKT system {abstract}. More...
class  ConstrainedOptPack::QPSolverRelaxedQPSchur::ReinitKKTSystem
 Interface for the object that can reform an initial KKT system dynamically {abstract}. More...
class  ConstrainedOptPack::QPSolverRelaxedQPSchurSetOptions
 Set options for QPSolverRelaxedQPSchur from an OptionsFromStream object. More...
class  ConstrainedOptPack::QPSolverRelaxedTester
 Tests the optimality conditions of the output from a QPSolverRelaxed object. More...
class  ConstrainedOptPack::QPSolverRelaxedTesterSetOptions
 Set options for QPSolverRelaxedTester from an OptionsFromStream object. More...
class  ConstrainedOptPack::QPSolverStats
 Class for storing statistics about a run of a (active set?) QP solver. More...

Compute the minimum absolute value of the given

Lagrange multipliers.

A small Lagrange multiplier indicates degeneracy.

value_type min_abs (const DVectorSlice &mu)
 Minimum |mu(i)|.
value_type min_abs (const SpVectorSlice &mu)
 Minimum |mu(i)|.

Enumerations

enum  EBounds { FREE, UPPER, LOWER, EQUALITY }
 Bounds type. More...

Functions

value_type min (value_type v1, value_type v2)
value_type max (value_type v1, value_type v2)
void initialize_Q_R_Q_X (size_type n_R, size_type n_X, const size_type i_x_free[], const size_type i_x_fixed[], bool test_setup, size_type Q_R_row_i[], size_type Q_R_col_j[], GenPermMatrixSlice *Q_R, size_type Q_X_row_i[], size_type Q_X_col_j[], GenPermMatrixSlice *Q_X)
 Initialize GenPermMatrixSlice mapping matrices for Q_R and Q_X.
void print_vector_change_stats (const DVectorSlice &x, const char x_name[], const DVectorSlice &d, const char d_name[], std::ostream &out)
 Compute statistics for change in a vector and output to a stream.
void vector_change_stats (const DVectorSlice &x, const DVectorSlice &d, value_type *max_term, size_type *max_k, value_type *min_term, size_type *min_k, value_type *av_term)
 Compute statistics for change in a vector.
std::string toString (const QPSolverStats::ESolutionType &solution_type)


Enumeration Type Documentation

enum EBounds
 

Bounds type.

Enumeration values:
FREE 
UPPER 
LOWER 
EQUALITY 

Definition at line 40 of file ConstrainedOptPack_Types.hpp.


Function Documentation

value_type min value_type  v1,
value_type  v2
[inline]
 

Definition at line 38 of file ConstrainedOptPack_DirectLineSearchArmQuad_Strategy.cpp.

value_type max value_type  v1,
value_type  v2
[inline]
 

Definition at line 41 of file ConstrainedOptPack_DirectLineSearchArmQuad_Strategy.cpp.

ConstrainedOptPack::value_type ConstrainedOptPack::min_abs const DVectorSlice mu  ) 
 

Minimum |mu(i)|.

Definition at line 42 of file ConstrainedOptPack_ComputeMinMult.cpp.

ConstrainedOptPack::value_type ConstrainedOptPack::min_abs const SpVectorSlice mu  ) 
 

Minimum |mu(i)|.

Definition at line 53 of file ConstrainedOptPack_ComputeMinMult.cpp.

void ConstrainedOptPack::initialize_Q_R_Q_X size_type  n_R,
size_type  n_X,
const size_type  i_x_free[],
const size_type  i_x_fixed[],
bool  test_setup,
size_type  Q_R_row_i[],
size_type  Q_R_col_j[],
GenPermMatrixSlice *  Q_R,
size_type  Q_X_row_i[],
size_type  Q_X_col_j[],
GenPermMatrixSlice *  Q_X
 

Initialize GenPermMatrixSlice mapping matrices for Q_R and Q_X.

Parameters:
n_R [in] Number of free variables
n_X [in] Number of fixed variables
i_x_free [in] array (length n_R) of indices of free variables. If n_R == 0 then i_x_free can be NULL. It is allowed for i_x_free == NULL in which case it is determined to from i_x_fixed[] (if n_X > 0) and i_x_free is assumed to be sorted in assending order.
i_x_fixed [in] array (length n_X) of indices of fixed variables. If n_X == 0 then i_x_fixed can be NULL.
test_setup [in] If true then i_x_free[] and i_x_fixed[] will be validated and if not okay then an exception will be thown.
Q_R_row_i [out] array (length n_R) of row indices for Q_R. If n_R == 0 or i_x_free == NULL and it is known that i_x_fixed[l] > n_R, for l = 0...n_X-1, then Q_R_row_i can be NULL and will not be accessed. If Q_R_row_i != NULL then it will always be set. This array will be sorted in assending order on output if it is set.
Q_R_col_j [out] array (length n_R) of column indices for Q_R. Q_R_col_j can be NULL when Q_R_row_i is NULL. If this array turns out to be sorted then Q_R will be set to Q_R->ordered_by() == BY_ROW_AND_COL
Q_R [out] GenPermMatixSlice object initialized with Q_R_row_i and Q_R_col_j. If n_R == 0 then Q_R will be initialized to (n_X by 0). If it turns out that i_x_free == NULL and Q_R has the identity matrix as its leading nonzero matrix, then Q_R->is_identity() will be true on output. In any case Q_R->ordered_by() will be BY_ROW or BY_ROW_AND_COL on output.
Q_X_row_i [out] array (length n_X) of row indices for Q_X. If n_X == 0 then Q_X_row_i can be NULL and will not be accessed.
Q_X_col_j [out] array (length n_X) of column indices for Q_X If n_X == 0 then Q_X_col_j can be NULL and will not be accessed. If this array turns out to be sorted then Q_X will be set to Q_X->ordered_by() == BY_ROW_AND_COL
Q_X [out] GenPermMatixSlice object initialized with Q_X_row_i and Q_X_col_j If n_X == 0 then Q_X will be initialized to (n_X by 0.) On output Q_X->ordered_by() will be BY_ROW or BY_ROW_AND_COL.

Definition at line 34 of file ConstrainedOptPack_initialize_Q_R_Q_X.cpp.

void ConstrainedOptPack::print_vector_change_stats const DVectorSlice x,
const char  x_name[],
const DVectorSlice d,
const char  d_name[],
std::ostream &  out
 

Compute statistics for change in a vector and output to a stream.

Calls the function vector_change_stats(x,d,max_term,max_k,min_term,min_k ,av_term) then produces the following output to the given stream.

max(|d(i)|/(1+|x(i)|)) => |d(max_k)|/(1+|x(max_k)|) = max_term \ min(|d(i)|/(1+|x(i)|)) => |d(min_k)|/(1+|x(min_k)|) = min_term \ average(|d(i)|/(1+|x(i)|)) = av_term \

Note that above the names x and d are replaced with their input names x_name# and d_name# and max_term, max_k etc. are replaced with their computed values.

Definition at line 32 of file ConstrainedOptPack_print_vector_change_stats.cpp.

void ConstrainedOptPack::vector_change_stats const DVectorSlice x,
const DVectorSlice d,
value_type max_term,
size_type max_k,
value_type min_term,
size_type min_k,
value_type av_term
 

Compute statistics for change in a vector.

Given two vectors x and d where we wish to generate statistics for the update x+d this function computes the following quantitines:

max( |d(i)|/(1+|x(i)|), i=1...n ) => #max_k# = k, #max_term# = |d(k)|/(1+|x(k)|) <= 1\ min( |d(i)|/(1+|x(i)|), i=1...n ) => #min_k# = k, #min_term# = |d(k)|/(1+|x(k)|)#\ #average( |d(i)|/(1+|x(i)|), i=1...10 )# => #av_term#\

The purpose of generating these satistics is to determine by how much x+d differs from x.

If |d(i)|/|x(i)| < mach_eps with x(i) > 0 then we know that d(i) will be lost when added to x(i) so x(i) + d(i) == x(i).

Definition at line 35 of file ConstrainedOptPack_vector_change_stats.cpp.

std::string toString const QPSolverStats::ESolutionType &  solution_type  )  [inline]
 

Definition at line 133 of file ConstrainedOptPack_QPSolverStats.hpp.


Generated on Thu Sep 18 12:36:13 2008 for MOOCHO (Single Doxygen Collection) by doxygen 1.3.9.1