# A Review on the Performance of Linear and Mixed Integer Two-Stage Stochastic Programming Software
## 7 Conclusions
### FortSP: A Stochastic Programming Solver  
FortSP is a solver for the solution of linear and mixed-integer linear stochastic programs. It accepts input in the SMPS format, or through a separate SAMPL translator (an AMPL extension for stochastic programming). In addition, FortSP can be used as a library with an application programming interface (API) in C. FortSP enables the user to solve stochastic two-stage linear programs with four variants of Benders decomposition, and provides three different solution approximations for mixed-integer instances.  
Algorithmic Innovations in FortSP  
The innovations in FortSP for two-stage linear and mixed-integer linear stochastic programs are described by [PERSON] et al. [46]. FortSP incorporates five methods to solve two-stage stochastic linear programs: (i) solving the deterministic equivalent via the interior-point method (IMP), (ii) Benders decomposition with aggregated cuts (see problem (A1)), (iii) regularized decomposition [85] (see problem (12)), (iv) Benders decomposition with regularization of the expected recourse by the level method [86] (see problem (14)), and (v) the trust region (regularization) method [41] (see problem (13)).  
To solve mixed-integer instances, FortSP uses the deterministic equivalent with both implicit and explicit representations for the NACs. In addition, it incorporates a specialized L-shaped algorithm based on branch-and-cut for instances with mixed-integer variables in the first-stage and continuous and complete recourse. This method might be accelerated with the variable neighborhood decomposition search heuristic (VNDS) [87].  
All of the Benders variants in FortSP are formulated in the _aggregated_ form shown in Equation (A1). _Disaggregated_ formulations (i.e., problem (9)) store larger information in the master problem, which yields a reduction in the number of iterations. However, this is done at the expense of larger master problems. As a rule of thumb, the _disaggregated_ approach is expected to be more effective when the number of scenarios \(|\Omega|\) is not significantly larger than the number of constraints \(m_{1}\) of the first-stage program [1].  
\[(BMP)\quad TC_{d}=\min_{x,\
u}c^{T}x+v\] (A1a) s.t. \[Ax\leq b,\;\;x\in X,\;\;v\in\mathbb{R}\] (A1b) \[(h_{j}-T_{j}x)^{T}\bar{h}_{j}\leq 0\quad\forall j\in E\] (A1c) \[\sum_{\omega\in\Omega}\tau_{\omega}(h_{\omega}-T_{\omega}x)^{T} \pi_{\omega}^{k}\leq v\quad\forall k\in K\] (A1d)Appendix C.1.2. Computational Results for FortSP  
We use FortSP to solve the random [80] and SAPHIR [81] test instances. The number of iterations and walltime for different solution methodologies are shown in Table A8, where IPM stands for interior-point method, RD for regularized decomposition, and TR for trust region. The CPLEX (12.5.1) linear and quadratic solver is used to solve the set of master problem and subproblems. For decomposition methodologies, a stopping optimality gap of \(1\times 10^{-5}\) is used. FortSP automatically selects the methodology used to solve the set of master problem and recourse instances, from primal and dual simplex, as well as an interior-point method. In addition, FortSP considers the warm-start of linear programs.  
From Table A8, one can observe that solving the deterministic equivalent via IPM is an effective alternative, outperforming BD in most of the instances considered; nonetheless, it fails to solve the larger instances in the SAPHIR set. Regularized decomposition and the trust region method perform better than BD in the SAPHIR set, effectively decreasing the number of iterations and the solution time. However