Conroy Lau and Alexander Torgovitsky
This package provides a set of methods for estimation and statistical inference on the solutions (optimal values) of linear programs. The motivation is partially identified models. Identified sets in many partially identified models can be characterized by the solutions to two linear programs (one min, one max), with the interval between comprising the whole identified set. The module is designed with this situation as the primary use-case, although it might be of interest in other stochastic programming applications where nonparametric inference is desired.
lpinfer
can be installed from its GitHub repository via
devtools::install_github("conroylau/lpinfer")
Using lpinfer
requires having a package for solving linear and quadratic programs.
The following options are supported:
-
(Strongly recommended) Gurobi and the R package
gurobi
— Gurobi can be downloaded from Gurobi Optimization. A Gurobi software license is required. The license can be obtained at no cost for academic researchers. This guide provides a very clear set of instructions for installinggurobi
in R. -
IBM ILOG CPLEX Optimization Studio (CPLEX) and one of the R packages below — CPLEX can be downloaded from IBM. A CPLEX software license is required, which can be obtained at no cost for academic researchers. There are two free and open-source R packages that provide APIs to CPLEX, and
lpinfer
supports both: -
limSolve
, a free and open-source package available on CRAN. -
lpSolveAPI
, another free and open-source package available on CRAN. This package cannot solve quadratic programs, so cannot be used with some of the methods inlpinfer
.
- Estimation using the procedure of Mogstad, Santos and Torgovitsky (2018, Econometrica).
- Statistical inference (testing and confidence intervals) using:
- The obtuse angle procedure developed by Fang, Santos, Shaikh and Torgovitsky (2020, working paper).
- The cone-tightening procedure developed by Deb, Quah, Kitamura and Stoye (2018, working paper).
- Profiled subsampling, as proposed by Romano and Shaikh (2008, Journal of Statistical Planning and Inference).
- The direct bootstrap procedure proposed by Cho and Russell (2019, working paper).
- Support for parallel programming using the
future
andfurrr
packages. - (experimental) Automatic conversion from extensive-form linear programs to standard form.
More inference procedures will be added soon.
A detailed vignette is available here.
Please post an issue on the issues page of the GitHub repository.
If you have developed a procedure that you would like implemented, please contact us. We may be able to work together to include your method.
If you use lpinfer
in your research please cite the Zenodo DOI.