COmparing Continuous Optimisers (COCO) post-processing package
This package (cocopp) generates output figures and tables in html format
and for including into LaTeX-documents.
The cocopp.Interface class contains the most basic commands and data of
the package, sufficient for most use cases.
>>> import cocopp >>> sorted(cocopp.Interface.dir()) ['archives', 'config', 'genericsettings', 'load', 'main'] >>> all(hasattr(cocopp, name) for name in cocopp.Interface.dir()) True
The main method of the cocopp package is main (currently aliased to
cocopp.rungeneric.main). The main method also allows basic use of the
post-processing through a command-line interface. The recommended use
is however from an IPython/Jupyter shell:
>>> import cocopp >>> cocopp.main('exdata/my_output another_folder yet_another_or_not') # doctest:+SKIP
postprocesses data from one or several folders, for example data
generated with the help from the cocoex module. Each folder should
contain data of a full experiment with a single algorithm. (Within the
folder the data can be distributed over subfolders).
Results can be explored from the ppdata/index.html file, unless a a different output folder is specified with the -o option.
Comparative data from over 200 full experiments are archived online and
can be listed, filtered, and retrieved from cocopp.archives (of type
OfficialArchives) and processed alone or together with local data.
For example
>>> cocopp.archives.bbob('bfgs') # doctest:+ELLIPSIS,+SKIP, ['2009/BFGS_...
lists all data sets containing 'bfgs' in their name. The search can also use regular expressions where '.' matches any single character and '*' means one or more repetitions:
>>> cocopp.archives.bbob('.*bfgs') # doctest:+ELLIPSIS,+SKIP, ['2009/BFGS_...
gives the same data sets as above and
>>> cocopp.archives.all('bbob/.*bfgs') # doctest:+ELLIPSIS,+SKIP, ['bbob/2009/BFGS_...
gives also the same data sets, however extracted from the archive of all
suites, which is the search domain when using cocopp.main.
When calling the cocopp.main routine, a single trailing '!' or '*'
have the special meaning of take-the-first-only and take-all, respectively.
Hence, the first entry of the above selecting list can be postprocessed with
>>> cocopp.main('bfgs!') # doctest:+SKIP
All 'bfgs' matches from the 'bbob' suite can be processed like
>>> cocopp.main('bbob/.*bfgs') # doctest:+SKIP
(cocopp.main('bfgs*') raises an error as data from incompatible suites cannot be processed together.)
The postprocessing result of
>>> cocopp.main('bbob/2009/*') # doctest:+SKIP
can be browsed at http://numbbo.github.io/ppdata-archive/bbob/2009 (or 2009-all).
To display algorithms in the background, the genericsettings.background variable needs to be set:
>>> cocopp.genericsettings.background = {None: cocopp.archives.bbob.get_all('bfgs')} # doctest:+SKIP
where None invokes the default color (gray) and line style (solid)
genericsettings.background_default_style.
Now we could compare our own data with the first 'bfgs'-matching archived algorithm where all other archived BFGS data are shown in the background with
>>> cocopp.main('exdata/my_output bfgs!') # doctest:+SKIP
| Module | algportfolio |
Algorithm portfolio data set module. |
| Module | archiving |
Online and offline archiving of COCO data. |
| Module | bestalg |
Best algorithm dataset module |
| Module | bwsettings |
This module contains settings for outputting black and white figures. |
| Module | captions |
Provides basic functionality for creating figure and table captions. |
| Module | cococommands |
A collection of commands for using COCO from Jupyter or IPython. |
| Package | comp2 |
COmparing Continuous Optimisers (COCO) post-processing tool for comparing two algorithms: |
| Package | compall |
COmparing Continuous Optimisers (COCO) post-processing tool for comparing multiple algorithms: |
| Module | config |
This module is an attempt for a global configuration file for various parameters. |
| Module | dataformatsettings |
No module docstring; 0/2 variable, 2/4 classes documented |
| Module | findfiles |
Recursively find :file:`info` and zipped files within a directory and administer archives. |
| Module | firstsession |
First session script. |
| Module | genericsettings |
This module contains some global variables settings for COCO. |
| Module | grayscalesettings |
This module contains settings for outputting grayscale figures. |
| Module | htmldesc |
Prepares the descriptions of images and tables which will be converted to html. |
| Module | old |
old line styles from genericsettings |
| Module | ppconverrorbars |
Process data and generates some comparison results. |
| Module | ppfig |
Generic routines for figure generation. |
| Module | ppfigcons1 |
Generate performance scaling figures wrt constraints. See also: |
| Module | ppfigdim |
Generate performance scaling figures. |
| Module | ppfigparam |
Generate ERT vs param. figures. |
| Module | pplogloss |
Module for computing ERT loss ratio |
| Module | pprldistr |
For generating empirical cumulative distribution function figures. |
| Module | pprldistr2009_hardest |
Generates "pprldistr2009_RLB.pickle.gz" that is used to plot, in the background, the results of the 2009 algorithms |
| Module | pproc |
Raw post-processing routines. |
| Module | ppsingle |
Single data set results output module. |
| Module | pptable |
Module for generating tables used by rungeneric1.py. |
| Module | pptex |
Routines for writing TeX for tables. |
| Module | preparetexforhtml |
Prepares the descriptions of images and tables which will be converted to html. |
| Module | readalign |
Helper routines to read in data files. |
| Module | rungeneric |
Process data to be included in a latex template. Called via |
| Module | rungeneric1 |
Module for post-processing the data of one algorithm. |
| Module | rungenericmany |
Process data to be included in a generic template. |
| Module | sanitycheck |
Module for checking data sets. |
| Module | test |
Tests the cocopp module. |
| Module | testbedsettings |
No module docstring; 0/34 variable, 3/10 functions, 11/12 classes documented |
| Module | toolsdivers |
Various tools. |
| Module | toolsstats |
Bootstrapping and statistics routines. |
| Module | __main__ |
Calls rungeneric.py. |
| Module | _version |
Undocumented |
From __init__.py:
| Class | |
collection of the most user-relevant modules, methods and data. |