BPQP: A Differentiable Convex Optimization Framework for Efficient End-to-End Learning

Authors: Jianming Pan, Zeqi Ye, Xiao Yang, Xu Yang, Weiqing Liu, Lewen Wang, Jiang Bian

NeurIPS 2024 | Conference PDF | Archive PDF | Plain Text | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental Extensive experiments on both simulated and real-world datasets demonstrate that BPQP achieves a significant improvement in efficiency typically an order of magnitude faster in overall execution time compared to other differentiable optimization layers.
Researcher Affiliation Collaboration Jianming Pan1 , Zeqi Ye2 , Xiao Yang3 , Xu Yang3, Weiqing Liu3, Lewen Wang3, Jiang Bian3 1University of California, Berkeley, 2Nankai University 3Microsoft Research Asia
Pseudocode No The paper describes methods with mathematical equations and figures but does not contain a block specifically labeled 'Pseudocode' or 'Algorithm'.
Open Source Code Yes We have implemented BPQP with some of the use cases and have released it in the open-source library Qlib[24] (https://github.com/microsoft/qlib).
Open Datasets Yes We randomly generate three datasets (e.g. simulated constrained optimization) for QPs, LPs, and SOCPs respectively. ... The dataset is from Qlib [24] and consists of 158 sequences, each containing OHLC-based time-series technical features [44] from 2008 to 2020 in daily frequency. Our experiment is conducted on CSI 500 universe which contains at most 500 different stocks each day.
Dataset Splits No The paper mentions 'early stopping rounds: 5' which implies the use of a validation set, and specifies the time frame for the real-world dataset (2008 to 2020), but it does not provide explicit dataset split percentages or sample counts for training, validation, and test sets.
Hardware Specification Yes All results were obtained on an unloaded 16-core Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz. qpth runs on an NVIDIA Ge Force GTX TITAN X.
Software Dependencies No The paper mentions several software packages and libraries used (e.g., CVXPY, qpth/Opt Net, JAXOpt, OSQP) but does not provide specific version numbers for them.
Experiment Setup Yes We use the same tolerance parameters for simulations experiments: Dual infeasibility tolerance: 1e-04, Primal infeasibility tolerance: 1e-04, Check termination interval: 25, Absolute tolerance: 1e-03, Relative tolerance: 1e-03, ADMM relaxation parameter: 1.6, Maximum number of iterations: 4000. ... MLP predictor: feature size: 153, hidden layer size: 256, number of layersr: 3, dropout rate: 0.Training: number of epoch: 30, learning rate: 1e-4, optimizer: Adam, frequency of rebalancing portfolio: 5 days, risk aversion coefficient: 1, early stopping rounds: 5, the inverse of beta (line 112): 0.1.