Package description
GLIS is a package for finding the global (GL) minimum of a function that is expensive to evaluate, possibly under constraints, using inverse (I) distance weighting and surrogate (S) radial basis functions.
The package implements two main algorithms:
GLIS: Global optimization based on inverse distance weighting and radial basis function surrogates, a method for global optimization of a function f that is possibly expensive to evaluate. The algorithm is based on the following paper:
[1] A. Bemporad, "Global optimization via inverse weighting and radial basis functions," Computational Optimization and Applications, vol. 77, pp. 571–595.
GLISp: Global optimization of a function f whose value cannot be evaluated but, given two points x,y, it is possible to query whether f(x) is better than f(y) (preference-based optimization). The algorithm is based on the following paper:[2] A. Bemporad, D. Piga, "Active preference learning based on radial basis functions," Machine Learning, vol. 110, no. 2, pp. 417-448, 2021. Available on arXiv:1909.13049.
The package also includes C-GLISp, an extension of GLIS and GLISp to handle unknown constraints. The algorithm is based on the following paper:[3] M. Zhu, D. Piga, A. Bemporad, "C-GLISp: Preference-based global optimization under unknown constraints with applications to controller calibration,” 2021, IEEE Trans. Contr. Systems Technology, 2021, In press. Also available on arXiv at arxiv:2106.05639.
This software is distributed without any warranty. Please cite the above papers if you use this software.
Download
Python version: [Source]
pip install glis
MATLAB version: GitHub repo
Previous MATLAB/Python versions:
GLIS v3.0 - June 9, 2021
(unknown constraints introduced in GLIS and GLISP by Mengjia Zhu)
GLIS v2.4 - January 12, 2021
(bugs fixed in PYTHON version of GLISp by Mengjia Zhu)
GLIS v2.3 - December 20, 2020
(minor changes in MATLAB version)
GLIS v2.2 - January 22, 2020
(added support for Genetic Algorithm method
from MATLAB Global Optimization Toolbox. Minor change in GLISp
demo - MATLAB version only)
GLIS v2.1 - October 18, 2019
(file and function names changed to GLIS/GLISp)
GLIS v2.0.1 - September 29, 2019
GLIS v2.0 - September 28, 2019
(added preference-based optimization functions. Preference-based Bayesian optimization by D. Piga)
GLIS v1.1.1 - September 2, 2019
GLIS v1.1 - August 3, 2019
(Python version improved by M. Forgione)
Last update: March 3, 2023