For generating empirical cumulative distribution function figures.
The outputs show empirical cumulative distribution functions (ECDFs) of the running times of trials. These ECDFs show on the y-axis the fraction of cases for which the running time (left subplots) or the df-value (right subplots) was smaller than the value given on the x-axis. On the left, ECDFs of the running times from trials are shown for different target values. Light brown lines in the background show ECDFs for target value 1e-8 of all algorithms benchmarked during BBOB-2009. On the right, ECDFs of df-values from all trials are shown for different numbers of function evaluations.
Example
CAVEAT: the naming conventions in this module mix up ERT (an estimate of the expected running length) and run lengths.
Function | beautify |
Format the figure of the run length distribution. |
Function | beautify |
Generic formatting of ECDF figures. |
Function | beautify |
Formats the figure of the run length distribution. |
Function | beautify |
Format and save the figure of the run length distribution. |
Function | caption |
Undocumented |
Function | caption |
Undocumented |
Function | comp |
Generate figures of ECDF that compare 2 algorithms. |
Function | erld |
return [sorted_runlengths_divided_by_dimension, nb_of_all_runs, functions_ids_found, functions_ids_solved] |
Function | load |
Undocumented |
Function | load_previous_ |
Undocumented |
Function | main |
Generate figures of empirical cumulative distribution functions. |
Function | plot |
Plot ECDF of evaluations and final function values in a single figure for demonstration purposes. |
Function | plot |
Display BBOB 2009 data, by default from pprldistr.previous_data_filename = 'pprldistr2009_1e-8.pickle.gz' |
Function | plot |
Plot an empirical cumulative distribution function. |
Function | plot |
Creates ECDF of final function values plot from a DataSetList. |
Function | plot |
Display BBOB 2009 data, by default from pprldistr.previous_data_filename = 'pprldistr2009_1e-8.pickle.gz' |
Function | plot |
Creates run length distributions from a sequence dataSetList. |
Variable | fmax |
Undocumented |
Variable | nbperdecade |
Undocumented |
Variable | previous |
Undocumented |
Variable | previous |
Undocumented |
Variable | previous_ |
Undocumented |
Variable | previous_ |
Undocumented |
Variable | refcolor |
Undocumented |
Variable | rld |
Undocumented |
Variable | rld |
Undocumented |
Variable | runlen |
Undocumented |
Variable | runlen |
Undocumented |
Function | _plot |
Creates run length distributions from a sequence dataSetList. |
Format the figure of the run length distribution.
Used in conjunction with plot method (obsolete/outdated, see functions beautifyFVD and beautifyRLD).
Formats the figure of the run length distribution.
This function is to be used with plotFVDistr
Parameters | |
is | Undocumented |
ylabel | Undocumented |
bool is | if set to True, the first call
beautifyFVD sets the global
fmax and all subsequent call
will have the same maximum xlim |
bool ylabel | if True, y-axis will be labelled. |
Format and save the figure of the run length distribution.
After calling this function, changing the boundaries of the figure will not update the ticks and tick labels.
Generate figures of ECDF that compare 2 algorithms.
Parameters | |
ds | Undocumented |
ds | Undocumented |
targets | Undocumented |
is | Undocumented |
outputdir | Undocumented |
info | Undocumented |
list of DataSet instances for ALG0 | |
list of DataSet instances for ALG1 | |
seq targets | target function values to be displayed |
bool is | if set to True, the first call
beautifyFVD sets the globals
fmax and maxEvals
and all subsequent calls will use these
values as rightmost xlim in the generated
figures. |
string outputdir | output directory (must exist) |
string info | string suffix for output file names. |
return [sorted_runlengths_divided_by_dimension, nb_of_all_runs, functions_ids_found, functions_ids_solved]
max_fun_evals
is only used to compute function_ids_solved
,
that is elements in sorted_runlengths...
can be larger.
copy-paste from plotRLDistr
and not used.
Generate figures of empirical cumulative distribution functions.
This method has a feature which allows to keep the same boundaries for the x-axis, if isStoringXMax==True. This makes sense when dealing with different functions or subsets of functions for one given dimension.
CAVE: this is bug-prone, as some data depend on the maximum evaluations and the appearence therefore depends on the calling order.
Parameters | |
ds | Undocumented |
is | Undocumented |
outputdir | Undocumented |
info | Undocumented |
list of DataSet instances to process. | |
bool is | if set to True, the first call
beautifyFVD sets the
globals fmax and
maxEvals and all subsequent
calls will use these values as rightmost
xlim in the generated figures. |
string outputdir | output directory (must exist) |
string info | string suffix for output file names. |
Display BBOB 2009 data, by default from pprldistr.previous_data_filename = 'pprldistr2009_1e-8.pickle.gz'
Plot an empirical cumulative distribution function.
Parameters | |
x | Undocumented |
n | Undocumented |
seq x | data |
int n | number of samples, if not provided len(x) is used |
**plot | optional keyword arguments provided to plot. |
Returns | |
handles of the plot elements. |
Creates ECDF of final function values plot from a DataSetList.
CAVEAT: this routine is not instance-balanced
Parameters | |
ds | data sets |
budget | Undocumented |
min | used for the left limit of the plot |
float budget | maximum evaluations / dimension that "count" |
**plot | additional arguments passed to plot |
Returns | |
handle |
Display BBOB 2009 data, by default from pprldistr.previous_data_filename = 'pprldistr2009_1e-8.pickle.gz'
Creates run length distributions from a sequence dataSetList.
Labels of the line (for the legend) will be appended with the number of functions at least solved once.
Example:
plotRLDistr(dsl, lambda f: 1e-6)
Details: target is a function taking a (function_number, dimension) pair as input and returning a float. It can be defined as lambda fun_dim: targets(fun_dim)[j] returning the j-th element of targets(fun_dim), where targets is an instance of class pproc.TargetValues (see the pproc.TargetValues.__call__ method).
TODO: data generation and plotting should be in separate methods TODO: different number of runs/data biases the results, shouldn't
the number of data made the same, in case?
Parameters | |
ds | Undocumented |
target | a method that delivers single target values like target((fun, dim)) |
label | Undocumented |
max | only used to determine success on a single function |
Input data sets | |
str label | target value label to be displayed in the legend |
**plot | additional arguments passed to the plot command |
Returns | |
handles of the resulting plot. |
Creates run length distributions from a sequence dataSetList.
Labels of the line (for the legend) will be set automatically with the following format: %+d: %d/%d % (log10()
Parameters | |
ds | Undocumented |
target | Undocumented |
Input data sets | |
dict or float target | target precision |
**plot | additional arguments passed to the plot command |
Returns | |
handles of the resulting plot. |