numbbo / coco

Numerical Black-Box Optimization Benchmarking Framework
https://numbbo.github.io/coco
Other
261 stars 86 forks source link

Testbedsettings.py while creating plotting graphs of custom suite. #2266

Closed Yash-Pisat closed 7 months ago

Yash-Pisat commented 7 months ago

I am trying to create a custom function just with some polynomial equation. I have create a f_poly.c and suite_poly.c file. As well as added the suite name in the interface.pyx file and while running "create_suite_data.py". Also made respective changes in coco_suite.c file. I ran the regression test on the suite. I am currently using the bbob observer for my custom function. I am able to run the experiment and log the data. I have also added the suite name to the testbedsettings.py But I am getting the below error while generating the plots.

` Traceback (most recent call last): File "/mnt/batch/tasks/shared/LS_root/mounts/clusters/ypthesis/code/Users/yash.pisat/coco/experiments/example_experiment2.py", line 183, in cocopp.main(observer.result_folder) # re-run folders look like "...-001" etc File "/anaconda/envs/azureml_py310_sdkv2/lib/python3.10/site-packages/cocopp/rungeneric.py", line 408, in main dsld = rungeneric1.main(alg, outputdir, genopts + ["-o", outputdir, alg]) File "/anaconda/envs/azureml_py310_sdkv2/lib/python3.10/site-packages/cocopp/rungeneric1.py", line 72, in main dsList = DataSetList(alg) File "/anaconda/envs/azureml_py310_sdkv2/lib/python3.10/site-packages/cocopp/pproc.py", line 2231, in init self.processIndexFile(name, alg_name) File "/anaconda/envs/azureml_py310_sdkv2/lib/python3.10/site-packages/cocopp/pproc.py", line 2321, in processIndexFile ds = DataSet(header, comment, data, indexFile) File "/anaconda/envs/azureml_py310_sdkv2/lib/python3.10/site-packages/cocopp/pproc.py", line 804, in init testbedsettings.load_current_testbed(self.suite_name, TargetValues) File "/anaconda/envs/azureml_py310_sdkv2/lib/python3.10/site-packages/cocopp/testbedsettings.py", line 84, in load_current_testbed testbed_name = get_testbed_from_suite(suite_name) File "/anaconda/envs/azureml_py310_sdkv2/lib/python3.10/site-packages/cocopp/testbedsettings.py", line 98, in get_testbed_from_suite raise ValueError('Mapping from suite name to testbed class for suite %s does not exist. ' ValueError: Mapping from suite name to testbed class for suite poly does not exist. Add it to suite_to_testbed dictionary in testbedsettings.py to process this data. '

Yash-Pisat commented 7 months ago

Can someone please help me on this question. I am stuck on this from past 4 days and I tried everything possible.

brockho commented 7 months ago

Hi. Did you try to Add it to suite_to_testbed dictionary in testbedsettings.py to process this data.? What is the error, you get then?

Yash-Pisat commented 7 months ago

I did it and I found out now that I have added it in 'coco/code-postprocessing/testbedsettings.py' to suite_to_testbed dictionary and the error I am getting is

File "/anaconda/envs/azureml_py310_sdkv2/lib/python3.10/site-packages/cocopp/archiving.py", line 747, in get_extended raise ValueError('"%s" seems not to be an existing file or ' ValueError: "experiments/exdata/random_search_of_cocoex.solvers_2D_on_poly" seems not to be an existing file or match any archived data

It is showing the error in the cocopp package. I am not sure what to in this case. The cocopp location in the both case is different. How can I specify it to use the cocopp from the coco folder

Yash-Pisat commented 7 months ago

I was able to fix it! Thankyou