## 6 Computational Results
### Computational Experiments and Parameters  
MILP and LP problems are solved using Cplex version 12.9, using the ILOG CPLEX Optimization Studio (OPL) interface to model linear optimization problems. The OPL script is used to solve iteratively linear optimization problems. MILP computations of dual bounds are obtained with the OPL method getBestObjValue(). Note that, if the B&B algorithm terminates with the default parameter \(\texttt{epgap}=10^{-4}\), the dual bound is given with a gap of 0.01% to the best primal solution found is given. The gap results are presented in our results with a granularity of 0.01%, so that we set parameter \(\texttt{epgap}=10^{-5}\). Another stopping criterion for Cplex computations is to compute the LP relaxation, denoted LP in the results, or to stop the resolution when branching is necessary, denoted LP+cuts. LP+cuts computations show the influence of the cutting planes at the root node, using OPL parameter \(\texttt{nodelim}=1\) in the MILP solving mode. LP dual bounds are also provided using the MILP solving mode without cutting planes using parameters \(\texttt{cutpass}=-1\) and \(\texttt{nodelim}=1\), which activates pre-processing for integer variables [39]. Using the LP mode of Cplex implies larger computation times than using the truncated MILP mode, the MILP pre-processing reduces considerably the number of variables for the LP relaxation. Using the integral pre-processing allows also to improve slightly the lower bounds given by the LP mode of Cplex, pre-processing variable fixing being like valid cuts.  
Without any specific precision, the time limit for LP and MILP computations is \(M\times 1800\) s where \(M\) is the number of scenarios, so that the maximal overall computation time with Cplex is at most \(S\times 1800\) s. Computation times measures the sequential iterative computation of partial dual bounds. Scenario decomposition induces independent computations of MILP dual bounds and an easy parallelization in a distributed environment like Message Passing Interface (MPI). Dealing with \(S_{0}\leqslant S\) independent computations, the computations can be processed in a distributed way with MPI using \(S_{0}\) machines with a single coordination operation at the end of the MILP computations:a reduction operation to sum the dual bounds given by each sub-problem. The clock time using distributed computations would be similar to the maximal solving time of the \(S_{0}\) sub-problems.  
Two different computers were used for the computational experiments, denoted Machine A and Machine B. Machine A is a quad-core desktop computer with processor Intel(R) Core(TM) i7-4790, 3.20 GHz, running Linux Lubuntu 18.04, with 16 GB of RAM memory. Without specific precision, tests are reported on Machine A. When larger computation power is required, Machine B is used. Machine B is a working station with a bi-processor Intel(R) Xeon(R) CPU E5-2650 v2, 2.60 GHz with 32 CPU cores, 64 GB of RAM memory, and running Linux Ubuntu 18.04.  
Lastly, we note that the parameters for Algorithm 1 are \(M\
eq 1\) and \(M\
eq S\). In Algorithm 1, two iterations of the HC matheuristic are processed, ie nbIter = 2. Computing of dual bounds, the maximal number of considered scenarios is \(M=10\). It implies MILP computations of the optimization problem (54) with at most 20 scenarios. For such MILP computations, warmstarting was activated and the maximal solving time for Cplex was set to 10 s by precaution, optimal computations often converged much faster.