VLab-Bench
is a suite that offers benchmarks for real-world scientific design tasks and optimisation algorithms for materials science and biology.
The currently available tasks are:
- Cyclic peptite binder design
- Electron ptychography: reconstruction optimisation
Please send us a PR to add your real-world task!
The currently available functions are:
- Ackley
- Rastrigin
- Rosenbrock
- Levy
- Schwefel
- Michalewicz
- Griewank
The currently available algorithms are:
- DOTS (Derivative-free stOchastic Tree Search, Wei et al., 2024)
- MCTS_Greedy
- MCTS_eGreedy
- DA (Dual Annealing, default setting in Scipy)
- Diff-Evo (Differential Evolution, default setting in Scipy)
- CMA-ES (Differential Evolution Default in Scipy)
Please send us a PR to add your algorithm!
The code requires python>=3.9
. Installation Tensorflow and Keras with CUDA support is stroongly recommended.
Install DOTS:
pip install git+https://github.com/poyentung/vlab_bench.git
or clone the repository to local devices:
git clone git@github.com:poyentung/vlab_bench.git
cd DOTS; pip install -e .
Here we evaluate DOTS on Ackley in 10 dimensions for 1000 samples.
- Using exact oracle function:
python3 -m vlab_bench.scripts.run_oracle\
--func ackley\
--dims 10\
--samples 1000\
--method DOTS
- Using neural network surrogate:
python3 -m vlab_bench.scripts.run_surrogate\
--func ackley\
--dims 10\
--samples 1000\
--method DOTS
The source code is released under the MIT license, as presented in here.