This is a supplementary code (in Python 3.6) for the paper Y. Malitsky “Golden ratio algorithms for variational inequalities”
There are 4 folders, each dedicated to its own problem: Nash equilibrium, convex feasibility problem, sparse logistic regression and some nonmonotone problem
There two ways to run this problem. First, using Jupyter .ipynb
file
you can run one random instance of the problem. It is convenient if
you want to see all formulas and plots together. Alternatively, you
can run python nash.py
which will generate 10 random instances (as
in the paper) and save the plots to figures
folder.
This folder contains in fact two independent problems, which
demonstrate how GRAAL can accelerate the well-known simultaneous
projection method. The first problem is the tomography reconstruction
of the Shepp-Logan phantom from the observed noisy sinogram. This
problem is in the Jupyter notebook Tomography_reconstruction.ipynb
file. The notebook is self-contained. The second problem is synthetic:
it compares aGRAAL and the projection simultaneous method for a convex
feasibility problem with randomly generated balls. For one instance
you can use Jupyter notebook Convex feasibility problem for random
balls.ipynb
and for running this problem over many random instances,
use a python script convex_feasibility_problem_for_random_balls.py
.
Folder data
contains several datasets from LIBSVM library, you can
download any others as well. In order to read these files, we use
sklearn
library. In the beginning of sparse_logistic_regression.py
choose one of these datasets and run the script. It will generate the
plots in figures/
folder. Alternatively, you can use Jupyter
notebook Sparse_Logistic_Regression.ipynb
for that.
The script nonmonotone_F.py
considers the problem of finding
a zero of a given nonmonotone operator.