Algorithm portfolio data set module.

The algorithm portfolio consists in running multiple algorithms in
parallel.
Current limitation: the portfolio data set must come from data sets that
are identical (same number of repetitions on the same instances of the
functions.

**Example:**

.. plot::
   :width: 75%

   import glob
   from pylab import *
   import pickle
   import cocopp
   import cocopp.compall.pprldmany
   import cocopp.algportfolio

   # Collect and unarchive data
   dsets = {}
   for alg in ('BIPOP-CMA-ES_hansen_noiseless', 'NEWUOA_ros_noiseless'):
      dsets[alg] = cocopp.load(cocopp.bbob(alg))

   # Generate the algorithm portfolio
   dspf = cocopp.algportfolio.build(dsets)
   dsets['Portfolio'] = dspf # store the portfolio in dsets

   # plot the run lengths distribution functions
   plt.figure()
   for algname, ds in dsets.items():
      dataset = ds.dictByDimFunc()[10][13]  # DataSet dimension 10 on F13
      cocopp.compall.pprldmany.plot(dataset, label=algname)
   cocopp.compall.pprldmany.beautify()
   legend(loc='best') # Display legend
   plt.show()   
   
Class Usage Undocumented
Class DataSet Unit element of algorithm portfolio data set.
Function build Merge datasets in an algorithm portfolio.
def build(dictAlg, sortedAlg=None):
Merge datasets in an algorithm portfolio.

:param dict dictAlg: dictionary of data sets with algorithm name for
                     keys, see ``pproc.DataSetList.dictByAlg``
:param seq sortedAlgs: sequence for sorting the entries of
                       :py:data:`dictAlg`, if not provided,
                       dictAlg.keys() will be instead
:returns: an instance of :py:class:`DataSetList` with the porfolio
          data sets
API Documentation for cocopp, generated by pydoctor at 2020-01-21 16:27:37.