Loading...
Searching...
No Matches
opennn::ResponseOptimization Class Referenceabstract

#include <opennn/response_optimization/response_optimization.h>

Inheritance diagram for opennn::ResponseOptimization:
opennn::DomainContraction opennn::GeneticResponse

Classes

struct  Constraint
 
struct  Objective
 
struct  Objectives
 

Public Member Functions

void set (Network *=nullptr)
 
 ResponseOptimization (Network *=nullptr)
 
virtual ~ResponseOptimization ()
 
void add_objective (const string &, Objective::Sense, float value=0.0f)
 
void add_constraint (const string &, Constraint::Condition, const vector< float > &values={})
 
void clear_objectives ()
 
Index get_objectives_number () const
 
bool is_objective (const string &name) const
 
pair< Index, VectorR > get_advised_point (const MatrixR &results) const
 
void set_iterations_number (Index)
 
void set_points_number (Index)
 
void set_sampling_budget_multiplier (Index)
 
void set_maximum_consecutive_failures (Index)
 
void set_feasibility_rounds (Index)
 
void set_feasibility_evaluations (Index)
 
void set_feasibility_margin_factor (float)
 
MatrixR perform_response_optimization ()
 

Protected Member Functions

virtual MatrixR single_optimization ()=0
 
virtual MatrixR multi_optimization ()=0
 
pair< VectorR, VectorR > calculate_domain ()
 
pair< VectorR, VectorR > solve (VectorR) const
 
string get_sampling_failure () const
 
VectorR calculate_random_input (const pair< VectorR, VectorR > &) const
 
void assign_random_categories (VectorR &, float probability=1.0f) const
 
MatrixR evaluate_objectives (const MatrixR &, const MatrixR &) const
 
vector< Index > calculate_pareto_front (const MatrixR &) const
 
vector< Index > clean_front (const MatrixR &, const MatrixR &) const
 

Protected Attributes

Network * network = nullptr
 
vector< Objective > objectives
 
vector< Constraint > constraints
 
pair< VectorR, VectorR > input_bounds
 
Index iterations_number = 20
 
Index points_number = 1000
 
Index sampling_budget_multiplier = 0
 
Index maximum_consecutive_failures = 0
 
Index requested_front_size = 100
 

Constructor & Destructor Documentation

◆ ResponseOptimization()

opennn::ResponseOptimization::ResponseOptimization ( Network * = nullptr)
explicit

◆ ~ResponseOptimization()

virtual opennn::ResponseOptimization::~ResponseOptimization ( )
virtual

Member Function Documentation

◆ add_constraint()

void opennn::ResponseOptimization::add_constraint ( const string & ,
Constraint::Condition ,
const vector< float > & values = {} )

◆ add_objective()

void opennn::ResponseOptimization::add_objective ( const string & ,
Objective::Sense ,
float value = 0.0f )

◆ assign_random_categories()

void opennn::ResponseOptimization::assign_random_categories ( VectorR & ,
float probability = 1.0f ) const
protected

◆ calculate_domain()

pair< VectorR, VectorR > opennn::ResponseOptimization::calculate_domain ( )
protected

◆ calculate_pareto_front()

vector< Index > opennn::ResponseOptimization::calculate_pareto_front ( const MatrixR & ) const
protected

◆ calculate_random_input()

VectorR opennn::ResponseOptimization::calculate_random_input ( const pair< VectorR, VectorR > & ) const
protected

◆ clean_front()

vector< Index > opennn::ResponseOptimization::clean_front ( const MatrixR & ,
const MatrixR &  ) const
protected

◆ clear_objectives()

void opennn::ResponseOptimization::clear_objectives ( )
inline

◆ evaluate_objectives()

MatrixR opennn::ResponseOptimization::evaluate_objectives ( const MatrixR & ,
const MatrixR &  ) const
protected

◆ get_advised_point()

pair< Index, VectorR > opennn::ResponseOptimization::get_advised_point ( const MatrixR & results) const

◆ get_objectives_number()

Index opennn::ResponseOptimization::get_objectives_number ( ) const
inline

◆ get_sampling_failure()

string opennn::ResponseOptimization::get_sampling_failure ( ) const
protected

◆ is_objective()

bool opennn::ResponseOptimization::is_objective ( const string & name) const

◆ multi_optimization()

virtual MatrixR opennn::ResponseOptimization::multi_optimization ( )
protectedpure virtual

◆ perform_response_optimization()

MatrixR opennn::ResponseOptimization::perform_response_optimization ( )

◆ set()

void opennn::ResponseOptimization::set ( Network * = nullptr)

◆ set_feasibility_evaluations()

void opennn::ResponseOptimization::set_feasibility_evaluations ( Index )

◆ set_feasibility_margin_factor()

void opennn::ResponseOptimization::set_feasibility_margin_factor ( float )

◆ set_feasibility_rounds()

void opennn::ResponseOptimization::set_feasibility_rounds ( Index )

◆ set_iterations_number()

void opennn::ResponseOptimization::set_iterations_number ( Index )

◆ set_maximum_consecutive_failures()

void opennn::ResponseOptimization::set_maximum_consecutive_failures ( Index )

◆ set_points_number()

void opennn::ResponseOptimization::set_points_number ( Index )

◆ set_sampling_budget_multiplier()

void opennn::ResponseOptimization::set_sampling_budget_multiplier ( Index )

◆ single_optimization()

virtual MatrixR opennn::ResponseOptimization::single_optimization ( )
protectedpure virtual

◆ solve()

pair< VectorR, VectorR > opennn::ResponseOptimization::solve ( VectorR ) const
protected

Member Data Documentation

◆ constraints

vector<Constraint> opennn::ResponseOptimization::constraints
protected

◆ input_bounds

pair<VectorR, VectorR> opennn::ResponseOptimization::input_bounds
protected

◆ iterations_number

Index opennn::ResponseOptimization::iterations_number = 20
protected

◆ maximum_consecutive_failures

Index opennn::ResponseOptimization::maximum_consecutive_failures = 0
protected

◆ network

Network* opennn::ResponseOptimization::network = nullptr
protected

◆ objectives

vector<Objective> opennn::ResponseOptimization::objectives
protected

◆ points_number

Index opennn::ResponseOptimization::points_number = 1000
protected

◆ requested_front_size

Index opennn::ResponseOptimization::requested_front_size = 100
protected

◆ sampling_budget_multiplier

Index opennn::ResponseOptimization::sampling_budget_multiplier = 0
protected