observer_rw.c File Reference

Implementation of an observer for real-world problems. More...

#include "coco.h"
#include "coco_internal.h"
#include "coco_utilities.c"

Data Structures

struct  observer_rw_data_t
 The real-world observer data type. More...
 

Enumerations

enum  observer_rw_log_e { LOG_NEVER, LOG_LOW_DIM, LOG_ALWAYS }
 Enum for denoting when the decision variables and constraints are logged. More...
 

Functions

static coco_problem_tlogger_rw (coco_observer_t *observer, coco_problem_t *problem)
 
static void logger_rw_free (void *logger)
 
static void observer_rw (coco_observer_t *observer, const char *options, coco_option_keys_t **option_keys)
 Initializes the observer for real-world problems. More...
 

Detailed Description

Implementation of an observer for real-world problems.

Enumeration Type Documentation

Enum for denoting when the decision variables and constraints are logged.

Enumerator
LOG_NEVER 
LOG_LOW_DIM 
LOG_ALWAYS 

Function Documentation

static coco_problem_t* logger_rw ( coco_observer_t observer,
coco_problem_t problem 
)
static
static void logger_rw_free ( void *  logger)
static
static void observer_rw ( coco_observer_t observer,
const char *  options,
coco_option_keys_t **  option_keys 
)
static

Initializes the observer for real-world problems.

Possible options:

  • "log_variables: STRING" determines whether the decision variables are to be logged. STRING can take on the values "none" (don't output decision variables), "low_dim"(output decision variables only for dimensions lower or equal to low_dim_vars) and "all" (output all decision variables). The default value is "all".
  • "log_constraints: STRING" determines whether the constraints are to be logged. STRING can take on the values "none" (don't output constraints), "low_dim"(output constraints only for dimensions lower or equal to low_dim_cons) and "all" (output all constraints). The default value is "all".
  • "low_dim_vars: VALUE" determines the value used to define "low_dim" for decision variables. The default value is 10.
  • "low_dim_cons: VALUE" determines the value used to define "low_dim" for constraints. The default value is 10.
  • "log_only_better: 0/1" determines whether all solutions are logged (0) or only the ones that are better than previous ones (1). This is applicable only for the single-objective problems, where the default value is 0. For multi-objective problems, all solutions are always logged.
  • "log_time: 0/1" determines whether the time needed to evaluate each solution is logged (0) or not (1). The default value is 0.