Disciplined Saddle Programming
Authors: Philipp Schiele, Eric Sager Luxenberg, Stephen P. Boyd
TMLR 2024 | Venue PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | We specify and implement the first DSL that encodes sufficient conditions for conic representability of saddle problems. We develop an open-source Python package, also called DSP, providing a user-friendly interface for specifying and solving saddle problems. Using this implementation, we demonstrate the effectiveness of the framework by solving a variety of saddle problems from different application domains. |
| Researcher Affiliation | Academia | Philipp Schiele EMAIL Department of Statistics Ludwig-Maximilians-Universität München Eric Luxenberg EMAIL Department of Electrical Engineering Stanford University Stephen Boyd EMAIL Department of Electrical Engineering Stanford University |
| Pseudocode | No | The paper does not contain any structured pseudocode or algorithm blocks. It describes the rules and calculus of Disciplined Saddle Programming (DSP) and provides code snippets in Python to illustrate its usage, but these are examples of implementation rather than a formal algorithm description. |
| Open Source Code | Yes | In this section we describe our Python implementation of the concepts and methods described in 4, which we also call DSP. It can be accessed online under an open source license at https://github.com/cvxgrp/dsp. |
| Open Datasets | Yes | We use the well known Titanic data set (Harrell Jr. & Cason, 2017)... The data is obtained from the Kenneth R. French data library (French, 2022), with monthly return data available from July 1963 to October 2022. |
| Dataset Splits | No | For the model fitting example, the paper states: 'we fit our model using only the m = 50 passengers who embarked from Queenstown'. This describes a subset of data used, but does not specify a general training/test/validation split strategy or percentages. For the Markowitz portfolio, it mentions 'monthly return data available from July 1963 to October 2022' without specifying any splits. |
| Hardware Specification | No | The paper does not contain any specific hardware details such as GPU models, CPU models, or other processor specifications used for running its experiments. It focuses on the theoretical framework and software implementation. |
| Software Dependencies | No | DSP works with CVXPY (Diamond & Boyd, 2016), an implementation of a DSL for convex optimization based on DCP. We use the term DSP in two different ways. We use it to refer to the mathematical concept of disciplined saddle programming, and also our specific implementation; which is meant should be clear from the context. The term DSP-compliant refers to a function or expression that is constructed according to the DSP composition rules given in 5.2. It can also refer to a problem that is constructed according to these rules. In the code snippets below, we use the prefix cp to indicate functions and classes from CVXPY. (We give functions and classes from DSP without prefix, whereas they would likely have a prefix such as dsp in real code). |
| Experiment Setup | Yes | The specific parameter values are given by δmax = 0.02, κ = 0.9, ω = 10^-6. In the robust bond portfolio problem equation 10 we take V lim = 90... The hinge loss and ℓ2 regularization are used, given by ℓi(θ) = max(0, 1 − yiaT i θ), r(θ) = η ||θ||^2_2, with η = 0.05... We take parameters ρ = 0.02, η = 0.2, and risk aversion parameter γ = 1. |