User-interface to formulate and solve optimal control problems with multiple objectives. More...
#include <multi_objective_algorithm.hpp>
User-interface to formulate and solve optimal control problems with multiple objectives.
The class MultiObjectiveAlgorithm serves as a user-interface to formulate and solve optimal control problems with multiple objectives.
Definition at line 54 of file multi_objective_algorithm.hpp.
Default constructor.
Definition at line 45 of file multi_objective_algorithm.cpp.
MultiObjectiveAlgorithm::MultiObjectiveAlgorithm | ( | const OCP & | ocp_ | ) |
Default constructor.
Definition at line 64 of file multi_objective_algorithm.cpp.
Copy constructor (deep copy).
Definition at line 83 of file multi_objective_algorithm.cpp.
MultiObjectiveAlgorithm::~MultiObjectiveAlgorithm | ( | ) | [virtual] |
Destructor.
Definition at line 106 of file multi_objective_algorithm.cpp.
returnValue MultiObjectiveAlgorithm::evaluateObjectives | ( | VariablesGrid & | xd_, |
VariablesGrid & | xa_, | ||
VariablesGrid & | p_, | ||
VariablesGrid & | u_, | ||
VariablesGrid & | w_, | ||
Expression ** | arg1 | ||
) | [protected] |
Evaluates the objectives.
Definition at line 623 of file multi_objective_algorithm.cpp.
returnValue MultiObjectiveAlgorithm::formulateOCP | ( | double * | idx, |
OCP * | ocp_, | ||
Expression ** | arg | ||
) | [protected] |
Reformulates the OCP problem for the multi-objective case.
Definition at line 446 of file multi_objective_algorithm.cpp.
returnValue MultiObjectiveAlgorithm::getAllAlgebraicStates | ( | const char * | fileName | ) | const [inline] |
returnValue MultiObjectiveAlgorithm::getAllControls | ( | const char * | fileName | ) | const [inline] |
returnValue MultiObjectiveAlgorithm::getAllDifferentialStates | ( | const char * | fileName | ) | const [inline] |
returnValue MultiObjectiveAlgorithm::getAllDisturbances | ( | const char * | fileName | ) | const [inline] |
returnValue MultiObjectiveAlgorithm::getAllParameters | ( | const char * | fileName | ) | const [inline] |
DVector MultiObjectiveAlgorithm::getNadirVector | ( | ) | const [inline] |
Returns the nadir vector.
DVector MultiObjectiveAlgorithm::getNormalizationVector | ( | ) | const [inline] |
Returns the normalisation vector
= difference between nadir vector and utopia vector.
DMatrix MultiObjectiveAlgorithm::getNormalizedPayOffMatrix | ( | ) | const [inline] |
Returns the normalized pay-off matrix.
returnValue MultiObjectiveAlgorithm::getParetoFront | ( | VariablesGrid & | paretoFront | ) | const [inline] |
Returns the Pareto front
paretoFront | The pareto front in form of a VariablesGrid. |
returnValue MultiObjectiveAlgorithm::getParetoFrontWithFilter | ( | VariablesGrid & | paretoFront | ) | const [inline] |
Returns the filtered Pareto front
paretoFront | The pareto front in form of a VariablesGrid. |
DMatrix MultiObjectiveAlgorithm::getPayOffMatrix | ( | ) | const [inline] |
Returns the pay-off matrix.
DMatrix MultiObjectiveAlgorithm::getUtopiaPlaneVectors | ( | ) | const [inline] |
Returns the utopia plane vectors
DVector MultiObjectiveAlgorithm::getUtopiaVector | ( | ) | const [inline] |
Returns the utopia vector.
DMatrix MultiObjectiveAlgorithm::getWeights | ( | ) | const [inline] |
Returns the weights
returnValue MultiObjectiveAlgorithm::getWeights | ( | const char * | fileName | ) | const [inline] |
Prints the weights into a file (with pre-ordering)
returnValue MultiObjectiveAlgorithm::getWeightsWithFilter | ( | const char * | fileName | ) | const [inline] |
Prints the weights into a file (with pre-ordering)
and after applying the Pareto filter.
returnValue MultiObjectiveAlgorithm::initializeNlpSolver | ( | const OCPiterate & | _userInit | ) | [protected, virtual] |
Reimplemented from OptimizationAlgorithm.
Definition at line 431 of file multi_objective_algorithm.cpp.
returnValue MultiObjectiveAlgorithm::initializeObjective | ( | Objective * | F | ) | [protected, virtual] |
Reimplemented from OptimizationAlgorithm.
Definition at line 437 of file multi_objective_algorithm.cpp.
MultiObjectiveAlgorithm & MultiObjectiveAlgorithm::operator= | ( | const MultiObjectiveAlgorithm & | arg | ) |
Assignment operator (deep copy).
Definition at line 116 of file multi_objective_algorithm.cpp.
returnValue MultiObjectiveAlgorithm::printAuxiliaryRoutine | ( | const char * | fileName, |
VariablesGrid * | x_ | ||
) | const [inline, protected] |
returnValue MultiObjectiveAlgorithm::printInfo | ( | ) | [inline] |
Prints general Info (statistics)
returnValue MultiObjectiveAlgorithm::setParetoFrontDiscretization | ( | const int & | N_ | ) | [inline] |
Defines the descretization of the Pareto front
(for the 2-dimensional case)
N | the number of descretization intervals |
returnValue MultiObjectiveAlgorithm::setupOptions | ( | ) | [protected, virtual] |
Sets-up default options.
Reimplemented from OptimizationAlgorithm.
Definition at line 418 of file multi_objective_algorithm.cpp.
returnValue MultiObjectiveAlgorithm::solve | ( | ) | [virtual] |
Starts execution.
Reimplemented from OptimizationAlgorithm.
Definition at line 278 of file multi_objective_algorithm.cpp.
returnValue MultiObjectiveAlgorithm::solveSingleObjective | ( | const int & | number | ) | [virtual] |
Starts the optimization of one objective specified by the
the number.
number | The number of the objective to be optimized |
Definition at line 142 of file multi_objective_algorithm.cpp.
int MultiObjectiveAlgorithm::count [protected] |
Definition at line 264 of file multi_objective_algorithm.hpp.
int MultiObjectiveAlgorithm::m [protected] |
Definition at line 259 of file multi_objective_algorithm.hpp.
int MultiObjectiveAlgorithm::N [protected] |
Definition at line 258 of file multi_objective_algorithm.hpp.
VariablesGrid* MultiObjectiveAlgorithm::pResults [protected] |
Definition at line 269 of file multi_objective_algorithm.hpp.
DMatrix MultiObjectiveAlgorithm::result [protected] |
Definition at line 263 of file multi_objective_algorithm.hpp.
double MultiObjectiveAlgorithm::totalCPUtime [private] |
Definition at line 277 of file multi_objective_algorithm.hpp.
int MultiObjectiveAlgorithm::totalNumberOfSQPiterations [private] |
Definition at line 276 of file multi_objective_algorithm.hpp.
VariablesGrid* MultiObjectiveAlgorithm::uResults [protected] |
Definition at line 270 of file multi_objective_algorithm.hpp.
DMatrix MultiObjectiveAlgorithm::vertices [protected] |
Definition at line 260 of file multi_objective_algorithm.hpp.
VariablesGrid* MultiObjectiveAlgorithm::wResults [protected] |
Definition at line 271 of file multi_objective_algorithm.hpp.
VariablesGrid* MultiObjectiveAlgorithm::xaResults [protected] |
Definition at line 268 of file multi_objective_algorithm.hpp.
VariablesGrid* MultiObjectiveAlgorithm::xResults [protected] |
Definition at line 267 of file multi_objective_algorithm.hpp.