suite_biobj_mixint.c File Reference

Implementation of a bi-objective mixed-integer suite. The functions are the same as those in the bbob-biobj-ext suite with 92 functions, but the large-scale implementations of the functions are used instead of the original ones for dimensions over 40. More...

Functions

static coco_suite_tcoco_suite_allocate (const char *suite_name, const size_t number_of_functions, const size_t number_of_dimensions, const size_t *dimensions, const char *default_instances)
 
static void suite_biobj_new_inst_free (void *stuff)
 
static coco_suite_tsuite_biobj_mixint_initialize (void)
 Sets the dimensions and default instances for the bbob-biobj-mixint suite. More...
 
static const char * suite_biobj_mixint_get_instances_by_year (const int year)
 Sets the instances associated with years for the bbob-biobj-mixint suites. More...
 
static coco_problem_tcoco_get_biobj_mixint_problem (const size_t function, const size_t dimension, const size_t instance, const coco_get_problem_function_t coco_get_problem_function, suite_biobj_new_inst_t **new_inst_data, const size_t num_new_instances, const size_t *dimensions, const size_t num_dimensions)
 Creates and returns a mixed-integer bi-objective bbob problem without needing the actual bbob-mixint suite. More...
 
static coco_problem_tsuite_biobj_mixint_get_problem (coco_suite_t *suite, const size_t function_idx, const size_t dimension_idx, const size_t instance_idx)
 Returns the problem from the bbob-biobj-mixint suite that corresponds to the given parameters. More...
 

Detailed Description

Implementation of a bi-objective mixed-integer suite. The functions are the same as those in the bbob-biobj-ext suite with 92 functions, but the large-scale implementations of the functions are used instead of the original ones for dimensions over 40.

Function Documentation

static coco_problem_t* coco_get_biobj_mixint_problem ( const size_t  function,
const size_t  dimension,
const size_t  instance,
const coco_get_problem_function_t  coco_get_problem_function,
suite_biobj_new_inst_t **  new_inst_data,
const size_t  num_new_instances,
const size_t *  dimensions,
const size_t  num_dimensions 
)
static

Creates and returns a mixed-integer bi-objective bbob problem without needing the actual bbob-mixint suite.

The problem is constructed by first finding the underlying single-objective continuous problems, then discretizing the problems, then scaling them to adjust their difficulty and finally stacking them to get a bi-objective mixed-integer problem.

Parameters
functionFunction
dimensionDimension
instanceInstance
coco_get_problem_functionThe function that is used to access the single-objective problem.
new_inst_dataStructure containing information on new instance data.
num_new_instancesThe number of new instances.
dimensionsAn array of dimensions to take into account when creating new instances.
num_dimensionsThe number of dimensions to take into account when creating new instances.
Returns
The problem that corresponds to the given parameters.
static coco_suite_t* coco_suite_allocate ( const char *  suite_name,
const size_t  number_of_functions,
const size_t  number_of_dimensions,
const size_t *  dimensions,
const char *  default_instances 
)
static
static const char* suite_biobj_mixint_get_instances_by_year ( const int  year)
static

Sets the instances associated with years for the bbob-biobj-mixint suites.

Note
The instances of the bi-objective suites generally do not changes with years.
static coco_problem_t* suite_biobj_mixint_get_problem ( coco_suite_t suite,
const size_t  function_idx,
const size_t  dimension_idx,
const size_t  instance_idx 
)
static

Returns the problem from the bbob-biobj-mixint suite that corresponds to the given parameters.

Uses large-scale bbob functions if dimension is equal or larger than the hard-coded dim_large_scale value (50).

Parameters
suiteThe COCO suite.
function_idxIndex of the function (starting from 0).
dimension_idxIndex of the dimension (starting from 0).
instance_idxIndex of the instance (starting from 0).
Returns
The problem that corresponds to the given parameters.
static coco_suite_t* suite_biobj_mixint_initialize ( void  )
static

Sets the dimensions and default instances for the bbob-biobj-mixint suite.

static void suite_biobj_new_inst_free ( void *  stuff)
static