observer_biobj.c File Reference

Implementation of the bbob-biobj observer. More...

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

Data Structures

struct  observer_biobj_data_t
 The bbob-biobj observer data type. More...
 

Enumerations

enum  observer_biobj_log_nondom_e { LOG_NONDOM_NONE, LOG_NONDOM_FINAL, LOG_NONDOM_ALL, LOG_NONDOM_READ }
 Enum for denoting the way in which the nondominated solutions are treated. More...
 
enum  observer_biobj_log_vars_e { LOG_VARS_NEVER, LOG_VARS_LOW_DIM, LOG_VARS_ALWAYS }
 Enum for denoting when the decision variables are logged. More...
 

Functions

static coco_problem_tlogger_biobj (coco_observer_t *observer, coco_problem_t *problem)
 
static void logger_biobj_free (void *logger)
 
static void observer_biobj (coco_observer_t *observer, const char *options, coco_option_keys_t **option_keys)
 Initializes the bi-objective observer. More...
 

Detailed Description

Implementation of the bbob-biobj observer.

Enumeration Type Documentation

Enum for denoting the way in which the nondominated solutions are treated.

Enumerator
LOG_NONDOM_NONE 
LOG_NONDOM_FINAL 
LOG_NONDOM_ALL 
LOG_NONDOM_READ 

Enum for denoting when the decision variables are logged.

Enumerator
LOG_VARS_NEVER 
LOG_VARS_LOW_DIM 
LOG_VARS_ALWAYS 

Function Documentation

static coco_problem_t* logger_biobj ( coco_observer_t observer,
coco_problem_t problem 
)
static
static void logger_biobj_free ( void *  logger)
static
static void observer_biobj ( coco_observer_t observer,
const char *  options,
coco_option_keys_t **  option_keys 
)
static

Initializes the bi-objective observer.

Possible options:

  • "log_nondominated: STRING" determines how the nondominated solutions are handled. STRING can take on the values "none" (don't log nondominated solutions), "final" (log only the final nondominated solutions), "all" (log every solution that is nondominated at creation time) and "read" (the nondominated solutions are not logged, but are passed to the logger as input - this is a functionality needed in pre-processing of the data). The default value is "all".
  • "log_decision_variables: STRING" determines whether the decision variables are to be logged in addition to the objective variables in the output of nondominated solutions. STRING can take on the values "none" (don't output decision variables), "low_dim"(output decision variables only for dimensions lower or equal to 5) and "all" (output all decision variables). The default value is "low_dim".
  • "compute_indicators: VALUE" determines whether to compute and output performance indicators (1) or not (0). The default value is 1.
  • "produce_all_data: VALUE" determines whether to produce all data required for the workshop. If set to 1, it overwrites some other options and is equivalent to setting "log_nondominated: all", "log_decision_variables: low_dim" and "compute_indicators: 1". If set to 0, it does not change the values of the other options. The default value is 0.