|
using | ObjectiveFunctionSingle = std::function< double(const std::vector< double > &x)> |
| Generic non-batched objective function signature. More...
|
|
using | ObjectiveFunction = std::function< void(const std::vector< double > &x_batch, std::vector< double > &fval_batch)> |
| Generic batched objective function signature. More...
|
|
using | GradientFunctionSingle = std::function< void(const std::vector< double > &x_single, std::vector< double > &grad)> |
| Generic non-batched gradient function signature. More...
|
|
using | ProjectionFunctionSingle = std::function< void(const std::vector< double > &x_single, std::vector< double > &proj)> |
| Generic non-batched projection function signature. More...
|
|
|
void | ParticleSwarm (const ObjectiveFunction f, const TasDREAM::DreamDomain inside, const double inertia_weight, const double cognitive_coeff, const double social_coeff, const int num_iterations, ParticleSwarmState &state, const std::function< double(void)> get_random01=TasDREAM::tsgCoreUniform01) |
| Applies the classic particle swarm algorithm to a particle swarm state. More...
|
|
OptimizationStatus | GradientDescent (const GradientFunctionSingle &grad, const double stepsize, const int max_iterations, const double tolerance, std::vector< double > &state) |
| Applies the constant step-size gradient descent algorithm for functions with unbounded domains. More...
|
|
OptimizationStatus | GradientDescent (const ObjectiveFunctionSingle &func, const GradientFunctionSingle &grad, const double increase_coeff, const double decrease_coeff, const int max_iterations, const double tolerance, GradientDescentState &state) |
| Applies the adaptive gradient descent algorithm on unrestricted domain. More...
|
|
OptimizationStatus | GradientDescent (const ObjectiveFunctionSingle &func, const GradientFunctionSingle &grad, const ProjectionFunctionSingle &proj, const double increase_coeff, const double decrease_coeff, const int max_iterations, const double tolerance, GradientDescentState &state) |
| Applies the adaptive gradient descent algorithm on a restricted domain. More...
|
|
void | checkVarSize (const std::string method_name, const std::string var_name, const int var_size, const int exp_size) |
|
ObjectiveFunction | makeObjectiveFunction (const int num_dimensions, const ObjectiveFunctionSingle f_single) |
| Creates a TasOptimization::ObjectiveFunction object from a TasOptimization::ObjectiveFunctionSingle object. More...
|
|
void | identity (const std::vector< double > &x, std::vector< double > &y) |
| Generic identity projection function.
|
|
double | computeStationarityResidual (const std::vector< double > &x, const std::vector< double > &x0, const std::vector< double > &gx, const std::vector< double > &gx0, const double lambda) |
|
Encapsulates the Tasmanian Optimization module.