Method PROTES (PRobability Optimizer with TEnsor Sampling) for optimization of the multidimensional arrays and discretized multivariable functions based on the tensor train (TT) format.
Attention! This is a repository for code development and testing. Please use the stable version of our optimizer from the protes repository (it can be installed as pip install protes
).
-
Install python (version 3.8; you may use anaconda package manager);
-
Create a virtual environment:
conda create --name tt_pro python=3.8 -y
-
Activate the environment:
conda activate tt_pro
-
Install dependencies:
pip install numpy scipy teneva==0.12.8 ttopt==0.5.0 jax optax equinox qubogen gekko nevergrad torch
-
Clean temporary dir after runs:
find /tmp -type d -maxdepth 1 -iname "*model*" -exec rm -fr {} \;
-
Delete virtual environment at the end of the work (optional):
conda activate && conda remove --name tt_pro --all -y
Please, see our colab notebook with various examples.
If you find our approach and/or code useful in your research, please consider citing:
@article{batsheva2023protes,
author = {Batsheva, Anastasia and Chertkov, Andrei and Ryzhakov, Gleb and Oseledets, Ivan},
year = {2023},
title = {PROTES: Probabilistic Optimization with Tensor Sampling},
journal = {arXiv preprint arXiv:2301.12162},
url = {https://arxiv.org/pdf/2301.12162.pdf}
}