Skip to content

cocopp does not load data correctly with "*" #66

@brockho

Description

@brockho

When loading bbob data, the "*" does what it is supposed to, namely loading all matching data sets:

import cocopp 
dsl = cocopp.load('bbob/2016/*')
print(dsl)

gives

[DataSet(PSAaLmC-CMA-ES_Nishida on f1 2-D), DataSet(PSAaLmD-CMA-ES_Nishida on f1 2-D), DataSet(PSAaSmC-CMA-ES_Nishida on f1 2-D),
 DataSet(PSAaSmD-CMA-ES_Nishida on f1 2-D), DataSet(PSAaLmC-CMA-ES_Nishida on f2 2-D), DataSet(PSAaLmD-CMA-ES_Nishida on f2 2-D),
 DataSet(PSAaSmC-CMA-ES_Nishida on f2 2-D), DataSet(PSAaSmD-CMA-ES_Nishida on f2 2-D), DataSet(PSAaLmC-CMA-ES_Nishida on f3 2-D), 
[...]

ie. in this case, the data from four algorithms. If I do the same for the bbob-biobj suite, I only get data from a single algorithm (= the first in the matching list):

dsl = cocopp.load('bbob-biobj/2016/*')
print(dsl)

gives

[DataSet(DEMO_Tusar_bbob-biobj on f1 2-D), DataSet(DEMO_Tusar_bbob-biobj on f2 2-D), DataSet(DEMO_Tusar_bbob-biobj on f3 2-D),
 DataSet(DEMO_Tusar_bbob-biobj on f4 2-D), DataSet(DEMO_Tusar_bbob-biobj on f5 2-D), DataSet(DEMO_Tusar_bbob-biobj on f6 2-D),
 DataSet(DEMO_Tusar_bbob-biobj on f7 2-D), DataSet(DEMO_Tusar_bbob-biobj on f8 2-D), DataSet(DEMO_Tusar_bbob-biobj on f9 2-D),
 DataSet(DEMO_Tusar_bbob-biobj on f10 2-D), DataSet(DEMO_Tusar_bbob-biobj on f11 2-D), DataSet(DEMO_Tusar_bbob-biobj on f12 2-D),
 DataSet(DEMO_Tusar_bbob-biobj on f13 2-D), DataSet(DEMO_Tusar_bbob-biobj on f14 2-D), DataSet(DEMO_Tusar_bbob-biobj on f15 2-D), 
[...]

although there are many algorithms matching the string:

dsl = cocopp.load('bbob-biobj/2016/')
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In[25], line 1
----> 1 dsl = cocopp.load('bbob-biobj/2016/')

File ~\AppData\Local\anaconda3\envs\coco-web\Lib\site-packages\cocopp\cococommands.py:234, in load(filename)
    222 def load(filename):
  
[...]

ValueError: 'bbob-biobj/2016/' has multiple matches in the data archive:
   bbob-biobj/2016/DEMO_Tusar_bbob-biobj.tgz
   bbob-biobj/2016/HMO-CMA-ES_Loshchilov_bbob-biobj.tgz
   bbob-biobj/2016/MAT-DIRECT_Al-Dujaili_bbob-biobj.tgz
   bbob-biobj/2016/MAT-SMS_Al-Dujaili_bbob-biobj.tgz
   bbob-biobj/2016/MO-DIRECT-HV-Rank_Wong_bbob-biobj.tgz
   bbob-biobj/2016/MO-DIRECT-ND_Wong_bbob-biobj.tgz
   bbob-biobj/2016/MO-DIRECT-Rank_Wong_bbob-biobj.tgz
   bbob-biobj/2016/NSGA-II-MATLAB_Auger_bbob-biobj.tgz
   bbob-biobj/2016/RANDOMSEARCH-100_Auger_bbob-biobj.tgz
   bbob-biobj/2016/RANDOMSEARCH-4_Auger_bbob-biobj.tgz
   bbob-biobj/2016/RANDOMSEARCH-5_Auger_bbob-biobj.tgz
   bbob-biobj/2016/RM-MEDA_Auger_bbob-biobj.tgz
   bbob-biobj/2016/RS-100.tgz
   bbob-biobj/2016/RS-4.tgz
   bbob-biobj/2016/SMS-EMOA-DE_Auger_bbob-biobj.tgz
   bbob-biobj/2016/SMS-EMOA-PM_Auger_bbob-biobj.tgz
   bbob-biobj/2016/UP-MO-CMA-ES_Krause_bbob-biobj.tgz
Either pick a single match, or use the `get_all` or
`get_first` method, or use the ! (first) or * (all)
marker and try again.

Interestingly, it doesn't work either for bbob-largescale data, but for bbob-constrained it works...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions