Machine Learning Algorithms for Solving Optimization Problems
Published:
In convex quadratic program with parametric input, the input space of the parameters corresponding to different optimal active sets are convex sets:
Then, motivated by this idea, we propose the following paradigm to solve a reduced version of the optimization problems:
So, in this approach, the critical step in solving the optimization problem is predicting the active set at the optimum. This is a classification problem, and different algorithms are used for this purpose, including Neural Networks, LDA, SVM and XGBoost.
As expected, Neural networks (because of their capacity) and LDA (because the classes in the problem are linearly separable) outperform the other approaches. (One-vs-one) SVM classifier also has a good performance, especially when we return only one candidate for the optimal active set, it outperforms the other approaches. However, when returning several candidates, its performance is not as good as the other approaches. Also, the training and evaluation time for the SVM is significantly higher than the other approaches.
The pdf file for the corresponding publication for this project can be found in link. The Github repository for this project can be found in Github.