Ipopt Documentation  
IpWarmStartIterateInitializer.hpp
Go to the documentation of this file.
1 // Copyright (C) 2004, 2006 International Business Machines and others.
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // Authors: Carl Laird, Andreas Waechter IBM 2005-04-01
6 
7 #ifndef __IPWARMSTARTITERATEINITIALIZER_HPP__
8 #define __IPWARMSTARTITERATEINITIALIZER_HPP__
9 
10 #include "IpIterateInitializer.hpp"
11 #include "IpEqMultCalculator.hpp"
12 
13 namespace Ipopt
14 {
15 
18 {
19 public:
24 
27  { }
29 
30  virtual bool InitializeImpl(
31  const OptionsList& options,
32  const std::string& prefix
33  );
34 
38  virtual bool SetInitialIterates();
39 
40  static void RegisterOptions(
42  );
43 
44 private:
58  );
59 
61  void operator=(
63  );
65 
70 
73 
76 
79 
82 
91 
94 
100 
103  void process_target_mu(
104  Number factor,
105  const Vector& curr_vars,
106  const Vector& curr_slacks,
107  const Vector& curr_mults,
108  const Matrix& P,
109  SmartPtr<const Vector>& ret_vars,
110  SmartPtr<const Vector>& ret_mults
111  );
112 
113  void adapt_to_target_mu(
114  Vector& new_s,
115  Vector& new_z,
116  Number target_mu
117  );
119 };
120 
121 } // namespace Ipopt
122 
123 #endif
Ipopt::WarmStartIterateInitializer
Class implementing an initialization procedure for warm starts.
Definition: IpWarmStartIterateInitializer.hpp:17
Ipopt::WarmStartIterateInitializer::warm_start_mult_bound_push_
Number warm_start_mult_bound_push_
Parameters for bumping initial bound multipliers.
Definition: IpWarmStartIterateInitializer.hpp:81
Ipopt::WarmStartIterateInitializer::warm_start_target_mu_
Number warm_start_target_mu_
Target values for the barrier parameter in warm start option.
Definition: IpWarmStartIterateInitializer.hpp:93
Ipopt::WarmStartIterateInitializer::WarmStartIterateInitializer
WarmStartIterateInitializer()
Constructor.
Ipopt::WarmStartIterateInitializer::warm_start_slack_bound_push_
Number warm_start_slack_bound_push_
Absolute parameters for bumping s0 in warm start mode.
Definition: IpWarmStartIterateInitializer.hpp:75
Ipopt::WarmStartIterateInitializer::RegisterOptions
static void RegisterOptions(SmartPtr< RegisteredOptions > roptions)
Ipopt::WarmStartIterateInitializer::warm_start_bound_push_
Number warm_start_bound_push_
Absolute parameters for bumping x0 in warm start mode.
Definition: IpWarmStartIterateInitializer.hpp:69
Ipopt
This file contains a base class for all exceptions and a set of macros to help with exceptions.
Definition: IpInexactAlgBuilder.hpp:13
Ipopt::Number
double Number
Type of all numbers.
Definition: IpTypes.hpp:15
Ipopt::Matrix
Matrix Base Class.
Definition: IpMatrix.hpp:27
IpEqMultCalculator.hpp
Ipopt::WarmStartIterateInitializer::warm_start_entire_iterate_
bool warm_start_entire_iterate_
Indicator for which method in the NLP should be used to get the warm start.
Definition: IpWarmStartIterateInitializer.hpp:98
IpIterateInitializer.hpp
Ipopt::WarmStartIterateInitializer::InitializeImpl
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Implementation of the initialization method that has to be overloaded by for each derived class.
Ipopt::WarmStartIterateInitializer::warm_start_bound_frac_
Number warm_start_bound_frac_
Relative parameters for bumping x0 in warm start mode.
Definition: IpWarmStartIterateInitializer.hpp:72
Ipopt::SmartPtr
Template class for Smart Pointers.
Definition: IpSmartPtr.hpp:171
Ipopt::WarmStartIterateInitializer::process_target_mu
void process_target_mu(Number factor, const Vector &curr_vars, const Vector &curr_slacks, const Vector &curr_mults, const Matrix &P, SmartPtr< const Vector > &ret_vars, SmartPtr< const Vector > &ret_mults)
Ipopt::WarmStartIterateInitializer::SetInitialIterates
virtual bool SetInitialIterates()
Compute the initial iterates and set the into the curr field of the ip_data object.
Ipopt::WarmStartIterateInitializer::~WarmStartIterateInitializer
virtual ~WarmStartIterateInitializer()
Destructor.
Definition: IpWarmStartIterateInitializer.hpp:26
Ipopt::WarmStartIterateInitializer::adapt_to_target_mu
void adapt_to_target_mu(Vector &new_s, Vector &new_z, Number target_mu)
Ipopt::OptionsList
This class stores a list of user set options.
Definition: IpOptionsList.hpp:32
Ipopt::WarmStartIterateInitializer::warm_start_mult_init_max_
Number warm_start_mult_init_max_
Maximal size of entries in bound and equality constraint multipliers in magnitude.
Definition: IpWarmStartIterateInitializer.hpp:90
Ipopt::IterateInitializer
Base class for all methods for initializing the iterates.
Definition: IpIterateInitializer.hpp:19
Ipopt::WarmStartIterateInitializer::warm_start_slack_bound_frac_
Number warm_start_slack_bound_frac_
Relative parameters for bumping s0 in warm start mode.
Definition: IpWarmStartIterateInitializer.hpp:78
Ipopt::WarmStartIterateInitializer::operator=
void operator=(const WarmStartIterateInitializer &)
Default Assignment Operator.
Ipopt::Vector
Vector Base Class.
Definition: IpVector.hpp:47