# Ipopt::MinC_1NrmRestorationPhase Class Reference

Restoration Phase that minimizes the 1-norm of the constraint violation - using the interior point method (Ipopt). More...

`#include <IpRestoMinC_1Nrm.hpp>`

Inheritance diagram for Ipopt::MinC_1NrmRestorationPhase:
[legend]

List of all members.

## Public Member Functions
virtual bool | InitializeImpl (const OptionsList &options, const std::string &prefix)
| Overloaded from AlgorithmStrategy case class.
Constructors/Destructors
| MinC_1NrmRestorationPhase (IpoptAlgorithm &resto_alg, const SmartPtr< EqMultiplierCalculator > &eq_mult_calculator)
| Constructor, taking strategy objects.
virtual | ~MinC_1NrmRestorationPhase ()
| Default destructor.
## Static Public Member Functions
static void | RegisterOptions (SmartPtr< RegisteredOptions > roptions)
| Methods for IpoptType.
## Protected Member Functions
virtual bool | PerformRestoration ()
| Overloaded method from RestorationPhase.
## Private Member Functions
Default Compiler Generated Methods (Hidden to avoid
implicit creation/calling). These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called.
| MinC_1NrmRestorationPhase ()
| Default Constructor.
| MinC_1NrmRestorationPhase (const MinC_1NrmRestorationPhase &)
| Copy Constructor.
void | operator= (const MinC_1NrmRestorationPhase &)
| Overloaded Equals Operator.
Auxilliary methods
void | ComputeBoundMultiplierStep (Vector &delta_z, const Vector &curr_z, const Vector &curr_slack, const Vector &trial_slack)
| Method for computing "primal-dual" step in bound multipliers, given step in slacks.
## Private Attributes
SmartPtr< OptionsList > | resto_options_
| Copy of original options, which is required to initialize the Ipopt algorithm strategy object before restoration phase is started.
Index | count_restorations_
| Counter for the number of time that PerformRestoration is called.
Strategy objects
SmartPtr< IpoptAlgorithm > | resto_alg_
SmartPtr< EqMultiplierCalculator > | eq_mult_calculator_
Algorithmic parameters
Number | constr_mult_reset_threshold_
Number | bound_mult_reset_threshold_
| Maximal allowed value of a bound multiplier after restoration phase.
bool | expect_infeasible_problem_
| Indicates whether problem can be expected to be infeasible.
Number | constr_viol_tol_
| Constraint violation tolerance.
Number | resto_failure_feasibility_threshold_
| Primal infeasibility tolerance for declaring failure of restoration phase when the non-regular termination tests are met.

## Detailed Description

Restoration Phase that minimizes the 1-norm of the constraint violation - using the interior point method (Ipopt).

Definition at line 22 of file IpRestoMinC_1Nrm.hpp.

## Constructor & Destructor Documentation

Ipopt::MinC_1NrmRestorationPhase::MinC_1NrmRestorationPhase | ( | IpoptAlgorithm & | resto_alg,
|  | const SmartPtr< EqMultiplierCalculator > & | eq_mult_calculator |
| ) |  |  |

Constructor, taking strategy objects.

The resto_alg strategy object is the restoration phase Ipopt algorithm. The eq_mult_calculator is used to reinitialize the equality constraint multipliers after the restoration phase algorithm has finished - unless it is NULL, in which case the multipliers are set to 0.

virtual Ipopt::MinC_1NrmRestorationPhase::~MinC_1NrmRestorationPhase | ( |  | ) | `[virtual]`

Default destructor.

Ipopt::MinC_1NrmRestorationPhase::MinC_1NrmRestorationPhase | ( |  | ) | `[private]`

Default Constructor.

Ipopt::MinC_1NrmRestorationPhase::MinC_1NrmRestorationPhase | ( | const MinC_1NrmRestorationPhase & |  | ) | `[private]`

Copy Constructor.

## Member Function Documentation

virtual bool Ipopt::MinC_1NrmRestorationPhase::InitializeImpl | ( | const OptionsList & | options,
|  | const std::string & | prefix |
| ) |  |  | `[virtual]`

Overloaded from AlgorithmStrategy case class.

Implements Ipopt::RestorationPhase.

static void Ipopt::MinC_1NrmRestorationPhase::RegisterOptions | ( | SmartPtr< RegisteredOptions > | roptions | ) | `[static]`

Methods for IpoptType.

virtual bool Ipopt::MinC_1NrmRestorationPhase::PerformRestoration | ( |  | ) | `[protected, virtual]`

Overloaded method from RestorationPhase.

Implements Ipopt::RestorationPhase.

void Ipopt::MinC_1NrmRestorationPhase::operator= | ( | const MinC_1NrmRestorationPhase & |  | ) | `[private]`

Overloaded Equals Operator.

Reimplemented from Ipopt::RestorationPhase.

void Ipopt::MinC_1NrmRestorationPhase::ComputeBoundMultiplierStep | ( | Vector & | delta_z,
|  | const Vector & | curr_z,
|  | const Vector & | curr_slack,
|  | const Vector & | trial_slack |
| ) |  |  | `[private]`

Method for computing "primal-dual" step in bound multipliers, given step in slacks.

## Member Data Documentation

SmartPtr<IpoptAlgorithm> Ipopt::MinC_1NrmRestorationPhase::resto_alg_`[private]`

Definition at line 72 of file IpRestoMinC_1Nrm.hpp.

SmartPtr<EqMultiplierCalculator> Ipopt::MinC_1NrmRestorationPhase::eq_mult_calculator_`[private]`

Definition at line 73 of file IpRestoMinC_1Nrm.hpp.

SmartPtr<OptionsList> Ipopt::MinC_1NrmRestorationPhase::resto_options_`[private]`

Copy of original options, which is required to initialize the Ipopt algorithm strategy object before restoration phase is started.

Definition at line 79 of file IpRestoMinC_1Nrm.hpp.

Number Ipopt::MinC_1NrmRestorationPhase::constr_mult_reset_threshold_`[private]`

Definition at line 83 of file IpRestoMinC_1Nrm.hpp.

Number Ipopt::MinC_1NrmRestorationPhase::bound_mult_reset_threshold_`[private]`

Maximal allowed value of a bound multiplier after restoration phase.

Definition at line 87 of file IpRestoMinC_1Nrm.hpp.

bool Ipopt::MinC_1NrmRestorationPhase::expect_infeasible_problem_`[private]`

Indicates whether problem can be expected to be infeasible.

This will request the to set kappa_resto to a small value for the first time the restoration phase is called. (ToDo)

Definition at line 91 of file IpRestoMinC_1Nrm.hpp.

Number Ipopt::MinC_1NrmRestorationPhase::constr_viol_tol_`[private]`

Constraint violation tolerance.

Definition at line 93 of file IpRestoMinC_1Nrm.hpp.

Number Ipopt::MinC_1NrmRestorationPhase::resto_failure_feasibility_threshold_`[private]`

Primal infeasibility tolerance for declaring failure of restoration phase when the non-regular termination tests are met.

Definition at line 97 of file IpRestoMinC_1Nrm.hpp.

Index Ipopt::MinC_1NrmRestorationPhase::count_restorations_`[private]`

Counter for the number of time that PerformRestoration is called.

Definition at line 102 of file IpRestoMinC_1Nrm.hpp.

The documentation for this class was generated from the following file:

- src/Algorithm/IpRestoMinC_1Nrm.hpp

All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines