1 Sampling-Based Progressive Hedging Algorithms in Two-Stage Stochastic Programming Nezir Aydin * , Alper Murat † , Boris S. Mordukhovich ‡ * Department of Industrial Engineering, Yıldız Technical University, Besiktas/Istanbul, 34349, Turkey † Department of Industrial and Systems Engineering, Wayne State University, Detroit, MI 48202, USA ‡ Department of Mathematics, Wayne State University, Detroit, MI 48202, USA Abstract Most real-world optimization problems are subject to uncertainties in parameters. In many situations where the uncertainties can be estimated to a certain degree, various stochastic programming (SP) methodologies are used to identify robust plans. Despite substantial advances in SP, it is still a challenge to solve practical SP problems, partially due to the exponentially increasing number of scenarios representing the underlying uncertainties. Two commonly used SP approaches to tackle this complexity are approximation methods, i.e., Sample Average Approximation (SAA), and decomposition methods, i.e., Progressive Hedging Algorithm (PHA). SAA, while effectively used in many applications, can lead to poor solution quality if the selected sample sizes are not sufficiently large. With larger sample sizes, however, SAA becomes computationally impractical. In contrast, PHA---as an exact method for convex problems and a very effective method in terms of finding very good solutions for nonconvex problems--suffers from the need to iteratively solve many scenario subproblems, which is computationally expensive. In this paper, we develop novel SP algorithms integrating SAA and PHA methods. The proposed methods are innovative in that they blend the complementary aspects of PHA and SAA in terms of exactness and computational efficiency, respectively. Further, the developed methods are practical in that they allow the analyst to calibrate the tradeoff between the exactness and speed of attaining a solution. We demonstrate the effectiveness of the developed integrated approaches, Sampling-Based Progressive Hedging Algorithm (SBPHA) and Discarding SBPHA (d-SBPHA), over the pure strategies (i.e., SAA). The validation of the methods is demonstrated through two-stage stochastic Capacitated Reliable Facility Location Problem (CRFLP). Key words: stochastic programming; facility location; hybrid algorithms; progressive hedging; sample average approximation. 1. Introduction Most practical problems are subject to uncertainties in problem parameters. There are two major mathematical approaches to modeling uncertainties. The first one applies to deterministic problems, where only admissible regions of uncertain parameter changes are available for decision makers. A natural approach of handle such situations is seeking the guaranteed result in the worst case scenario by using methods of robust optimization and game/minimax theory; see, e.g., Ben-Tal et al. (2009), Bertsimas at al. (2011), and the references therein. The framework of robust and minimax optimization allows us to develop efficient numerical techniques involving generalized differentiation as, e.g., in appropriate versions of nonsmooth Newton methods; see Jeyakumar et al. (2013). However, better results can be achieved as a rule if some stochastic/statistical information is available to measure uncertainties. This paper is devoted to developing the latter approach. Stochastic Programming (SP) methodologies are often resorted for solving problems with uncertainties in parameters either exactly or with a statistical bound on the optimality gap. Beginning with Dantzig’s (1955) introduction of a recourse model, where the solution could be * Corresponding author: Email address: [email protected]; Tel:+90 (212) 383-3029;Fax:+90 (212) 258-5928 Email Adresses: [email protected](A. Murat), [email protected](B.S. Mordukhovich)
33
Embed
Sampling-Based Progressive Hedging Algorithms … Progressive Hedging Algorithms ... In SBPHA we hybridize Progressive Hedging Algorithm (PHA) and the external sampling- ... a positive
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
Sampling-Based Progressive Hedging Algorithms
in Two-Stage Stochastic Programming
Nezir Aydin*, Alper Murat
†, Boris S. Mordukhovich
‡
*Department of Industrial Engineering, Yıldız Technical University, Besiktas/Istanbul, 34349, Turkey
†Department of Industrial and Systems Engineering, Wayne State University, Detroit, MI 48202, USA
‡Department of Mathematics, Wayne State University, Detroit, MI 48202, USA
Abstract Most real-world optimization problems are subject to uncertainties in parameters. In many
situations where the uncertainties can be estimated to a certain degree, various stochastic
programming (SP) methodologies are used to identify robust plans. Despite substantial advances in
SP, it is still a challenge to solve practical SP problems, partially due to the exponentially increasing
number of scenarios representing the underlying uncertainties. Two commonly used SP approaches
to tackle this complexity are approximation methods, i.e., Sample Average Approximation (SAA),
and decomposition methods, i.e., Progressive Hedging Algorithm (PHA). SAA, while effectively
used in many applications, can lead to poor solution quality if the selected sample sizes are not
sufficiently large. With larger sample sizes, however, SAA becomes computationally impractical.
In contrast, PHA---as an exact method for convex problems and a very effective method in terms of
finding very good solutions for nonconvex problems--suffers from the need to iteratively solve
many scenario subproblems, which is computationally expensive. In this paper, we develop novel
SP algorithms integrating SAA and PHA methods. The proposed methods are innovative in that
they blend the complementary aspects of PHA and SAA in terms of exactness and computational
efficiency, respectively. Further, the developed methods are practical in that they allow the analyst
to calibrate the tradeoff between the exactness and speed of attaining a solution. We demonstrate
the effectiveness of the developed integrated approaches, Sampling-Based Progressive Hedging
Algorithm (SBPHA) and Discarding SBPHA (d-SBPHA), over the pure strategies (i.e., SAA). The
validation of the methods is demonstrated through two-stage stochastic Capacitated Reliable
We now describe the proposed SBPHA algorithm, which is a hybridization of the SAA and PHA.
The motivation for this hybridization originates from the final stage of the SAA method (Step 4, in
SAA) where, aft selecting the best performing solution, the rest of the sample solutions are
discarded. This discarding of the (𝑴 − 𝟏) sample solutions results in losses in terms of both
valuable sample information (increasing with M) as well as the effort spent in solving for each
sample’s solution (increasing with N). The proposed SBPHA offers a solution to these losses by
considering each sample SAA problem as though it is a scenario subproblem in the PHA.
Accordingly, in the proposed SBPHA approach, we modify the SAA method by iteratively re-
solving the sample SAA problems while, at the end of each iteration, penalizing deviations from the
probability weighted solution of the samples and the best performing solution to the original
problem (i.e., as in the PHA). Hence, a single iteration of the SBPHA corresponds to the classical
implementation of SAA method.
An important distinction of the SBPHA from classical PHA is the sampling concept and the
size of the subproblems solved. The classical PHA solves many subproblems each corresponding to
a single scenario in the entire scenario set one by one at every iteration, and evaluates the
probability weighted solution using the individual scenario probabilities. In comparison, the
SBPHA solves only a few numbers of subproblems each corresponding to samples with multiple
scenarios and determines the probability weighted solution in a different way than PHA (explained
in detail below). Note that while solving individual sample problems in SBPHA is more difficult
than solving a single scenario subproblem in PHA, SBPHA solves much fewer number of
subproblems. Clearly, SBPHA makes a trade-off between the number of sample subproblems to
solve and the size of each sample subproblem.
We first present the proposed SBPHA algorithm and then describe its steps in detail. For
clarity, we give the notation used precedes the algorithmic steps. Note that for brevity, we only
define the notation that are new or different than those used in the preceding sections:
Notation:
𝒌, 𝒌𝒎𝒂𝒙 : iteration index and maximum number of iterations
𝑷𝒎, ��𝒎 : probability and normalized probability of realization of sample 𝒎,∑ ��𝒎 𝒎∈𝑴 = 𝟏
𝒙𝒎,𝒌 : solution vector for sample 𝒎 at iteration 𝒌
��𝒌 : probability weighted solution vector at iteration 𝒌
��𝒌 : balanced solution vector at iteration 𝒌
𝒙𝒃𝒆𝒔𝒕 : best incumbent solution
��𝒃𝒆𝒔𝒕 : objective function value of the best incumbent solution with respect to 𝑵’
��𝒃𝒆𝒔𝒕𝒌 : objective function value of the best solution at iteration 𝒌 with respect to 𝑵’
𝝎𝒎𝒌 : dual variable vector for sample 𝒎 at iteration 𝒌
𝝆𝒌 : penalty factor at iteration 𝒌
7
𝜷 : update parameter for the penalty factor, 𝟏 < 𝜷 < 𝟐
𝜶𝒌 : weight for the best incumbent solution at iteration 𝒌, 𝟎 ≤ 𝜶 ≤ 𝟏
∆𝜶 : update factor for the weight of the best incumbent solution, 𝟎 ≤ ∆𝜶≤ 𝟎. 𝟎𝟓
𝝐𝜶 : Euclidean norm distance between sample solutions 𝐱𝒎,𝒌 and ��𝒌 at iteration 𝒌
𝝐 : convergence threshold for solution spread
𝒙𝑺𝑩𝑷𝑯𝑨 : best solution found by SBPHA
𝒗𝑺𝑩𝑷𝑯𝑨 : objective function value of the best solution found by SBPHA
The pseudo-code for the Sampling Based Progressive Hedging Algorithm is as follows:
Sampling-Based Progressive Hedging Algorithm (SBPHA) for Two-Stage SP Problems:
1: Initialize: Generate 𝑴 samples, 𝒎 = 𝟏, 𝟐,… ,𝑴 each with 𝑵𝒎 scenarios, where|𝐍𝐦| = 𝐍
2: Generate a reference sample set with 𝐍′ scenarios, where |𝐍′| ≫ 𝐍
3: 𝐤 ≔ 𝟎, 𝛚𝐦𝐤=𝟎 ≔ 𝟎 for ∀𝒎 = 𝟏,… ,𝑴, 𝛂𝐤=𝟎 ≔ 𝟏, and require 𝛒𝐤=𝟎 ≥ 𝟎
4: 𝐏𝐦 ≔ ∏ 𝐩𝐬𝐬∈𝐍𝐦 , ��𝐦 ≔𝐏𝐦
∑ 𝐏𝐦𝐌𝐦=𝟏
, ��: = {��𝐦}∀𝐦
Executing SAA to get initial solution:
5: Execute Steps 1-4 of SAA Algorithm for each m to get 𝐱𝐦
6: 𝐱𝐛𝐞𝐬𝐭 ≔ 𝐱𝐒𝐀𝐀, and ��𝒃𝒆𝒔𝒕 ≔ 𝒗𝑺𝑨𝑨
7: for 𝐦 = 𝟏, 𝟐, . . . , 𝐌, do
8: 𝐱𝒎,𝒌=𝟎 ≔ 𝐱𝐦
9: end for
10: While (𝝐𝒌 ≥ 𝜺 𝐨𝐫 ��𝒌 ≠ 𝒙𝒃𝒆𝒔𝒕), 𝐚𝐧𝐝(𝒌 < 𝒌𝒎𝒂𝒙) do
11: 𝐤 ≔ 𝐤 + 𝟏,
12: ��𝐤 ≔ ��𝐱𝒎,𝒌−𝟏
13: ��𝐤 ≔ 𝛂𝐤��𝐤 + (𝟏 − 𝛂𝐤)𝐱𝐛𝐞𝐬𝐭
14: If 𝛂𝐤−𝟏 = 𝟎, 𝛂𝐤 ≔ 𝛂𝐤−𝟏 else 𝛂𝐤 ≔ 𝛂𝐤−𝟏 − ∆𝛂
15: If 𝐤 ≥ 𝟐,𝛒𝐤 ≔ { 𝛃𝛒𝐤−𝟏 𝐢𝐟 𝛜𝐤 > 𝛜𝐤−𝟏/𝟐
𝛒𝐤−𝟏 𝐨𝐭𝐡𝐞𝐫𝐰𝐢𝐬𝐞, else 𝛒𝐤 ≔ 𝛒𝐤
16: 𝛚𝐦𝐤 ≔ 𝛚𝐦
𝐤−𝟏 + 𝛒𝐤(𝐱𝒎,𝒌−𝟏 − ��𝐤)
Solve each sample (subproblem) with 𝑵𝒎 scenarios:
17: for 𝐦 = 𝟏, 𝟐,… ,𝐌, do
18: [𝒗𝒎,𝒌, 𝐱𝐦,𝐤] ≔ 𝒂𝒓𝒈𝒎𝒊𝒏 {𝒄𝑻𝐱𝐦,𝐤 +𝟏
|𝑵𝒎|∑ 𝝋(𝒙, 𝝃𝒏)𝑵𝒎𝒏=𝟏 + 𝛚𝐦
𝐤 𝐱𝐦,𝐤 +
𝛒𝐤
𝟐‖𝐱𝐦,𝐤 − ��𝐤‖
𝟐} (𝟖)
19: end for
20: 𝝐𝒌: = (∑ ‖𝐱𝒎,𝒌 − ��𝒌‖𝑴𝒎=𝟏 )
𝟏/𝟐
Calculate the performances of solutions got in step 17-19:
21: for 𝐦 = 𝟏, 𝟐, . . , 𝐌, do
22: [��𝒎,𝒌] ≔ 𝐌𝐢𝐧 {𝒄𝑻𝐱𝒎,𝒌 +𝟏
|𝐍′|∑ 𝝋(𝒙, 𝝃𝒔)𝐍′
𝒔=𝟏 } (𝟗)
23: end for
24: ��𝒃𝒆𝒔𝒕𝒌 ≔ 𝐦𝐢𝐧(��𝒎,𝒌)
8
25: ��𝒃𝒆𝒔𝒕 ≔ { ��𝒃𝒆𝒔𝒕
𝒌 𝒊𝒇 ��𝒃𝒆𝒔𝒕𝒌 < ��𝒃𝒆𝒔𝒕
��𝒃𝒆𝒔𝒕 𝒐𝒕𝒉𝒆𝒓𝒘𝒊𝒔𝒆
26: 𝒙𝒃𝒆𝒔𝒕 ≔ { 𝒂𝒓𝒈𝒎𝒊𝒏𝒎=𝟏,…,𝑴 ��
𝒎,𝒌 𝒊𝒇 ��𝒃𝒆𝒔𝒕𝒌 < ��𝒃𝒆𝒔𝒕
𝒙𝒃𝒆𝒔𝒕 𝒐𝒕𝒉𝒆𝒓𝒘𝒊𝒔𝒆
27: end while
28: 𝐱𝐒𝐁𝐏𝐇𝐀 ≔ 𝒙𝒃𝒆𝒔𝒕, 𝒗𝑺𝑩𝑷𝑯𝑨 ≔ ��𝒃𝒆𝒔𝒕.
The first step in SBPHA’s initialization is to execute the standard SAA procedure (Steps 5-
6). In the initialization step of SBPHA, unlike SAA, we also calculate sample 𝑚’s probability and
normalized probabilities, e.g., Pm and Pm, which are used in to calculate sample m’s probability
weighted average solution xk at iteration k (Step 12). Next, in Step 13, we calculate the samples’
balanced solution (xk) as a weighted average of the average solution (xk) and the incumbent best
solution (xbest). The xbest is initially obtained as the solution to the SAA problem (Step 6) and tgen
updated based on the evaluation of the improved sample solutions and the most recent incumbent
best (Step 26). In calculating the balanced solution (xk), the SBPHA uses a weight factor αk ∈(0,1) to tune the bias between the sample’s current iteration average solution and the best
incumbent solution. High values of αk tend the balanced solution (hence the sample solutions in the
next iteration) to the samples’ average solution, whereas low values tend xk to the incumbent best
solution. There are two alternative implementations of SBPHA concerning this bias tuning, where
the αk can be static by setting ∆α= 0 or dynamically changing over the iterations by setting ∆α> 0
(see Step 14). The advantage of dynamic αk is that, beginning with a large αk, we first prioritize the
sample average solution until the incumbent best solution quality improves. This approach allows
guiding the sample solutions to a consensus sample average initially and then directing the
consensus sample average in the direction of evolving the best solution.
In Step 15, we update the penalty factor ρk depending whether the distance (ϵk) of the
sample solutions from the most recent balanced solution has sufficiently improved. We choose the
improvement threshold as half of the distance in the previous iteration (e.g., ϵk−1) . Similarly, in
Step 16, we update the dual variable (ωmk ) using the standard subgradient method of convex
optimization. Note that the ωmk are the Lagrange multipliers associated with the equivalence of each
sample’s solution to the balanced solution.
In Step 18, we solve each sample problem with additional objective function terms
representing the dual variables and calculate the deviation of the sample solutions from the balanced
solution (i.e., 𝛜𝐤). Step 22 estimates the objective function value of each sample solution in the
original problem using the reference set 𝐍′. Steps 25 and 26 identify the sample solution 𝐱𝐦,𝐤 with
the best ��𝐦,𝐤 in iteration 𝐤 and updates the incumbent best ��𝐛𝐞𝐬𝐭 if there is any improvement. Note
that ��𝐛𝐞𝐬𝐭 is monotonicaly nonincreasing with the SBPHA iterations. Steps 22, and 25-26
correspond to the integration of the SAA method selection of the best performing sample solution.
Rather than terminating with the best sample solution, the proposed SBPHA conveys this
information in the next iteration through the balanced solution. The SBPHA algorithm terminates
when either of the two stopping conditions are met. If the iteration limit is reached 𝐤 ≥ 𝐤𝐦𝐚𝐱 or
when all the sample solutions converge to the balanced solution within a tolerance, then SBPHA
terminates with the best found solution. The worst case solution of the SBPHA is equivalent to the
SAA solution. This can be observed by noting that the best incumbent solution is initialized with
the SAA’s solution and ��𝐛𝐞𝐬𝐭 is monotonicaly nonincreasing with the SBPHA iterations. Hence, the
SBPHA ensures that there is always a feasible solution, which has the same performance or a better
one in comparison with that of SAA.
9
2.4. Discarding-SBPHA (d-SBPHA) for binary-first stage SP problems:
The Discarding-SBPHA approach extends the SBPHA one by finding an improved and
ideally optimal solution to the original problem. The main idea of d-SBPHA is to resolve SBPHA
by adding constraint(s) to the sample subproblems in (8) that prohibits finding the same best
incumbent solution(s) found in earlier d-SBPHA iterations. This prohibition is achieved through
constraints that are violated if 𝐱𝐦,𝐤 overlaps with any of the best incumbent solutions (𝒙𝒃𝒆𝒔𝒕) found
so far in the d-SBPHA iterations. This modification of SBPHA can be considered as a globalization
of SBPHA in the sense that, by repeating the discarding steps, d-SBPHA guarantees to find an
optimal solution, albeit, with infinite number of discarding steps. The d-SBPHA approach initializes
with the 𝒙𝒃𝒆𝒔𝒕 iteration of the SBPHA solution and the SBPHA iteration’s parameter values
(ω,α,ρ…), where this solution is first encountered in the SBPHA iteration history. We now provide
the additional notation and algorithmic steps of d-SBPHA and then describe it in detail.
Additional notation for d-SBPHA
𝐨 : iteration number where d- SBPHA finds a solution for the first time; see below
𝐝, 𝐝𝐦𝐚𝐱 : number discarding iterations and the maximum number of discarding iteration
𝐃 : set of discarded solutions
𝐧𝐃𝐭 : number of binary decision variables that are equal to 1 in discarded solution 𝐃𝐭 ∈ 𝑫
𝐃𝐭𝟏 : set of decision variables that are equal to 1 in discarded solution t
𝐃𝐭𝟎 : set of decision variables that are equal to 0 in discarded solution t
13: 𝑫 ≔ 𝑫⋃{𝐱𝐛𝐞𝐬𝐭} 14: Execute Steps 10-16 of SBPHA
15: for 𝐦 = 𝟏, 𝟐,… ,𝐌 do
16: [𝒗𝒎,𝒌, 𝒙𝒎,𝒌] ≔ 𝐚𝐫𝐠𝐦𝐢𝐧 {𝐜𝐓𝐱𝐦,𝐤 +𝟏
|𝑵𝒎|∑ 𝝋(𝒙, 𝝃𝒏)𝑵𝒎𝒏=𝟏 + 𝛚𝐦
𝐤 𝒙𝒎,𝒌 +𝛒𝐤
𝟐‖𝒙𝒎,𝒌 −
��𝐤‖𝟐} (10)
𝒔. 𝒕. ∑ 𝐱𝐦,𝐤𝐱𝐦,𝐤∈𝑫𝒕𝟏 − ∑ 𝐱𝐦,𝐤𝐱𝐦,𝐤∈𝑫𝒕
𝟎 ≤ 𝒏𝑫𝒕 − 𝟏, ∀𝒕 = 𝟏,… ,𝑫
17: end for
18: Execute steps 20-26 of SBPHA
10
19: 𝐱𝐝𝐝−𝐒𝐁𝐏𝐇𝐀 ≔ 𝐱𝐛𝐞𝐬𝐭, 𝒗𝒅
𝒅−𝑺𝑩𝑷𝑯𝑨 ≔ ��𝒃𝒆𝒔𝒕 20: end while
21: 𝒗𝒃𝒆𝒔𝒕𝒅−𝑺𝑩𝑷𝑯𝑨 ≔ 𝒎𝒊𝒏𝒅=𝟏,…,𝑫 𝒗𝒅
𝒅−𝑺𝑩𝑷𝑯𝑨
22: 𝒙𝒃𝒆𝒔𝒕𝒅−𝑺𝑩𝑷𝑯𝑨 ≔ 𝒙𝒅
𝒅−𝑺𝑩𝑷𝑯𝑨: = 𝒂𝒓𝒈𝒎𝒊𝒏𝒅=𝟏,…,𝑫 𝒗𝒅𝒅−𝑺𝑩𝑷𝑯𝑨
Initialization step of the d-SBPHA is the implementation of the original SBPHA with the
only difference is to set up the starting values of parameters as the values of the SBPHA algorithm,
where the current best solution is found. Also in Step 1, the set of the solutions that are discarded is
updated to prevent the algorithm to reconverge to the same solution. In Steps 2-12, the parameters
are updated. Step 13 updates the set of discarded solutions by including the most recent 𝐱𝐛𝐞𝐬𝐭. Step
14 executes SBPHA steps to update the parameters of sample problems. Note that Step 16 has the
same objective function as in Step 18 of SBPHA with additional discarding constraints that prevent
finding the first-stage solutions that are already found in the preceding d-SBPHA iterations. Step 18
executes steps of SBPHA, which test solutions’ quality and performs the updating of the best
solution according to the SAA approach. The only difference, in Step 20, between d-SBPHA and
SBPHA is that d-SBPHA checks whether the maximum number of discards is reached. If the
discarding iteration limit is reached, then the algorithm reports the solution with the best
performance (in Steps 21 and 22), else continues discarding. Note that with the discarding strategy,
d-SBPHA terminates with a better or the same solution in comparison with SBPHA and is
guaranteed to terminate with an optimal solution that is achieved via infinitely many of discarding
iterations while also discarding the constraints.
2.4.1. Lower bounds on SBPHA and d-SBPHA:
The majority of the computational effort of SBPHA (and d-SBPHA) is spent in solving the
sample subproblems as well as evaluating the first stage decisions in the larger reference set.
Especially, for combinatorial problems with discrete first-stage decisions, the former effort is more
significant than the latter. To improve the computational performance, we propose using a sample
specific lower bound employed while solving the sample subproblems. The theoretical justification
of the proposed lower bound for sample problems is that if the balanced solution does not change,
then the solution of the sample problems is nondecreasing. Hence, one can use the previously found
solution as the optimal lower bound (due to Lagrangian duality in optimization). However, if the
balanced solution changes, then the lower bound of the previous solution is not guaranteed, and thus
the lower bound is removed or a conservative estimate of the lower bound is utilized.
Let 𝐥𝐛𝐦,𝐤 be the lower bound for sample 𝒎 at iteration 𝒌 in SBPHA (or d-SBPHA). In Step
18 in SBPHA (Step 16 in d-SBPHA) a valid cut should be added: 𝐯𝐦,𝐤 ≥ 𝐥𝐛𝐦,𝐤, ∀𝐦,𝐦 = 𝟏,…𝐌,
where 𝐥𝐛𝐦,𝐤 = 𝐜𝐥𝐛𝐥𝐛𝐦,𝐤−𝟏, and 𝟎 ≤ 𝐜𝐥𝐛 ≤ 𝟏, where 𝐜𝐥𝐛 is a tuning parameter to adjust the tightness
of the lower bound. However, 𝐜𝐥𝐛 should not be close to 1 because it might cause infeasible
solutions. There is a trade-off on the value of 𝐜𝐥𝐛. Higher values might cause either infeasible or
suboptimal solutions, lower values does not provide consistent/tight constraints that should help
improving the solution time. In this study, by testing multiple values for 𝐜𝐥𝐛, we suggest applicants
to choose the range of 𝟎. 𝟒 ≤ 𝐜𝐥𝐛 ≤ 𝟎. 𝟔. Providing a justified lower bound to the optimization
problem saves approximately 10%-15% of the solution time.
2.4.2. Characteristics of SBPHAA and d-SBPHA
Here we present and justify several statements characterizing mathematical well-posedness of the
proposed algorithms.
11
Proposition 1 (Equivalence): SBPHA is equivalent to SAA if the algorithm is executed only one
time. Further, SBPHA is equivalent to PHA if the samples are mutually exclusive and their union is
the entire scenario set.
Proof: We proceed with verifying the tow statements of the proposition as formulated.
For SAA: If SBPHA terminated at Step 1, then 𝐱𝐒𝐁𝐏𝐇𝐀 = 𝐱𝐒𝐀𝐀, and 𝐯𝐒𝐁𝐏𝐇𝐀 = 𝐯𝐒𝐀𝐀. This allows us
to conclude that SBPHA is equivalent to SAA.
For PHA: Under specified assumptions and for 𝐌 = 𝐒 and 𝐍𝐦=𝟏,…,𝐌 = 𝟏, we have SBPHA=PHA.
Let us further consider a two-stage SP problem with finitely many scenarios 𝛏𝐬, 𝐬 = 𝟏,… , 𝐒, so that
each scenario occurs with probability 𝐩𝐬, where ∑ 𝐩𝐬 = 𝟏𝐒𝐬=𝟏 . Treating SBPHA with samples as the
individual scenarios, e.g., 𝐌 = 𝐒 and 𝐍𝐦=𝟏,…,𝐌, = 𝟏 for 𝐦 ≠ 𝐦′, we can conclude that 𝐏𝐦 = 𝐩𝐬. If the weight for the best incumbent solution and the update factor for the weight of the best
incumbent solution are equal to 1 and 0, respectively, at every iteration (𝛂𝐤 ≔ 𝟏, ∆𝛂= 𝟎), then
��𝐤: = ��𝐤 ≔ ∑ 𝐩𝐬𝐱𝐬𝐤
𝐬∈𝐒 and 𝐱𝐒𝐁𝐏𝐇𝐀 = 𝐱𝐏𝐇𝐀 and 𝐯𝐒𝐁𝐏𝐇𝐀 = 𝐯𝐏𝐇𝐀. □
Proposition 2 (Convergence): SBPHA algorithm converges and terminates with the best solution
found at an earlier iteration.
Proof: We prove this by contradiction. Assume that SBPHA finds, at iteration 𝐤, the best solution
as 𝐱𝐛𝐞𝐬𝐭 = 𝐱∗. Suppose that the SBPHA algorithm converges to a solution 𝐱′ ≠ 𝐱𝐛𝐞𝐬𝐭 which has a
worse objective value than 𝐱∗, with respect to the reference scenario set. Note that the convergence
yields ��𝐤 = ��𝐤−𝟏 = 𝐱′, while assuming that 𝐤𝐦𝐚𝐱 = ∞ and 𝜺 = 𝟎. In the last update we must have
the equality ��𝐤 = 𝐱′ = 𝛂𝐤𝐱′ + (𝟏 − 𝛂𝐤)𝐱𝐛𝐞𝐬𝐭 . Since 𝛂𝐤 < 𝟏, this equality is satisfied if and only
if 𝐱′ = 𝐱𝐛𝐞𝐬𝐭, which is a contradiction. □
Proposition 3: The SBPHA and 𝐝-SBPHA algorithms have the same convergence properties as
SAA with respect to the sample size.
Proof: It is showed in Ahmed and Shapiro (2002) and Ruszczynski and Shapiro (2003b) that SAA
converges with probability one (w.p.1) to optimal solution of the original problem as sample size
increases to infinity (𝐍 → ∞). Since Step 1 in SBPHA is the implementation of SAA and that
SBPHA does converge to the best solution found (Proposition 2), we can simply argue that SBPHA
and d-SBPHA converges to optimal solution of the original problem, as SAA does with increasing
sample size. Furthermore, since SBPHA and d-SBPHA guarantee a better or same solution quality
as SAA provides, we can conjecture that SBPHA and d-SBPHA have more chance to reach the
optimality than SAA with a given number of samples and sample size.
Proposition 4: The d-SBPHA algorithm converges to the optimum solution as 𝐝 → ∞.
Proof: Given that d-SBPHA is not allowed finding the same solution in the worst case, the d-
SBPHA iterates as many times as the number of feasible solutions (infinite in the continuous and
finite in the discrete case) for the first stage decisions before it finds an optimal solution. Note that
the proposed algorithm is effective for the problems where the first stage decision variables are
binary.
Clearly, as the number of discarding constraints added increases linearly with the number
discarding iterations, the resulting problems become more difficult to solve. However, in our
12
experiments for a particular problem type, we observed that, in the vast majority of experiments, d-
SBPHA finds an optimal solution in less than 10 discarding iterations.
3. Experimental Study Let us now describe the experimental study performed to investigate the computational and
solution quality performance of the proposed SBPHA and d-SBPHA for solving two-stage SP
problems. We benchmark the results of SBPHA and d-SBPHA with those of SAA. All the
algorithms are implemented in Matlab R2010b, and integer programs are solved with CPLEX 12.1.
The experiments are conducted on a PC with Intel(R) Core 2 CPU, 2.13 GHz processor and 2.0 GB
RAM running on Windows 7 OS. Next we describe the test problem, Capacitated Reliable Facility
Location Problem (CRFLP), in Section 3.1 and experimental design in Section 3.2. In Section 3.3,
we report on the sensitivity analysis results for SBPHA and d-SBPHA’s performance with respect
to algorithm’s parameters. In Section 3.4, we present and discuss the benchmarking results.
3.1. Capacitated Reliable Facility Location Problem (CRFLP)
Facility location is a strategic supply chain decision requiring significant investments to
anticipate and plan for uncertain future events (Owen and Daskin, 1998; Melo et al., 2009). An
example of such uncertain supply chain events is the disruption of facilities that are critical for the
ability to efficiently satisfy the customer demand (Schütz, 2009). These disruptions can be either
natural disasters, i.e., earthquake, floods, or man-made as terrorist attacks (Murali et al., 2012),
labor strikes, etc. For a detailed review of uncertainty considerations in facility location problems,
the reader is referred to Snyder (2006) and Snyder and Daskin (2005). Snyder and Daskin (2005)
developed a reliability-based formulation for the Uncapacitated Facility Location Problem (UFLP)
and the p-median problem (PMP). More recently, Shen et al. (2011) studied a variant of the reliable
UFLP called uncapacitated reliable facility location problem (URFLP). The authors proposed
efficient approximation algorithms for URFLP using the special structure of the problem. Several
studies were applied to UFLP, such as Pandit (2004), Arya et al. (2004), Resende and Werneck
(2006), Yun et al. (2014), An et al. (2014). However, approximations that are employed in UFLP
cannot be applied to the general class of facility location problems such as Capacitated Reliable
Facility Location Problem (CRFLP). Li et al. (2013) developed Lagrangian relaxation-based (LR)
solution algorithms for the reliable P-median problem (RPMP) and the reliable uncapacitated fixed-
charge location problem (RUFL). Albareda-Sambola et al. (2015) proposed two mathematical
formulations and developed a metaheuristic based algorithm to minimize total travel cost in a
network, where facilities are subject to probabilistic failures. The model they considered is also a
reliable p-median type problem.
In practice, capacity decisions are considered jointly with the location decisions. Further, the
capacities of facilities often cannot be changed (at least with a reasonable cost) in the event of
disruption. Following the facility failure, customers can be assigned to other facilities only if these
facilities have sufficient available capacity. Thus capacitated reliable facility location problems are
more complex than their uncapacitated counterparts (Shen et al., 2011). Gade (2007) applied SAA
in combination with a dual decomposition method to solve CRFLP. Later, Aydin and Murat (2013)
proposed a swarm intelligence based SAA algorithm to solve CRFLP.
We now introduce the notation used for the formulation of CRFLP. Let 𝐹𝑅 and 𝐹𝑈 denote the
set of possible reliable and unreliable facility sites, respectively, 𝐹 = 𝐹𝑅⋃𝐹𝑈 denote the set of all
possible facility sites including the emergency facility, and 𝒟 denote the set of customers. Let 𝑓𝑖 be
the fixed cost for locating facility 𝑖 ∈ 𝐹, which is incurred if the facility is opened, and 𝒹𝑗 be the
demand for customer 𝑗 ∈ 𝒟. Further, 𝑐𝑖𝑗 denotes the cost of satisfying each unit demand of customer
𝑗 from facility 𝑖 and includes such variable cost drivers as transportation, production, etc. There are
failure scenarios where the unreliable facilities can fail and become incapacitated to serve any
customer demand. In such cases, demand from customers needs to be allocated between the
13
surviving facilities and emergency facility (fe) subject to capacity availability. Each unit of demand,
which is satisfied by the emergency facility, causes a large penalty (ℎ𝑗) cost. This penalty can be
incurred due to either finding an alternative source, or due to the lost sale. Finally, the facility 𝑖 has
a limited capacity and can serve at most 𝑏𝑖 units of demand.
We formulate the CRFLP as a two-stage SP problem. In the first stage, the location decisions
are made before the random failures of the located facilities. In the second stage, following the
facility failures, the customer-facility assignment decisions are made for every customer given the
facilities that have not failed. The goal is to identify the set of facilities to be opened while
minimizing the total cost of open facilities as well as the expected cost of meeting demand of
customers from the surviving facilities and the emergency facility. In the scenario-based
formulation of CRFLP, let 𝑠 denote a failure scenario and the set of all the failure scenarios is 𝑆. Let
𝑝𝑠 be the occurrence probability of scenario 𝑠 and ∑ 𝑝𝑠 = 1𝑠∈𝑆 . Further, let 𝑘𝑖𝑠 indicate whether the
facility 𝑖 survives (then 𝑘𝑖𝑠 = 1) and 𝑘𝑖
𝑠 = 0 otherwise. For instance, in the case of independent
facility failures, we have |𝑆| = 2|𝐹𝑈| possible failure scenarios.
The binary decision variable 𝑥𝑖 specifies whether facility 𝑖 is opened, and the variable 𝑦𝑖𝑗𝑠
specifies the rate of demand of customer 𝑗 is satisfied by facility 𝑖 in scenario 𝑠. The scenario-based
formulation of the CRFLP as a two-stage SP is as follows:
The objective function in formulation (11) minimizes the total fixed cost of opening facilities
and the expected second stage cost of satisfying customer demand through lasting and emergency
facility. Constraints (12) ensure that demand of each customer is fully satisfied by either open
facilities, or the emergency facility in every failure scenario. Constraints (13) ensure that a
customer’s demand cannot be served from a facility that is not opened in every failure scenario.
Constraints (14) prevent the assignment of any customer to a facility if it is failed and also ensure
the total demand assigned the facility does not exceed its capacity in every failure scenario.
Constraints (15) enforces integrality of location decisions and (16) ensure that demand satisfaction
rate for any customer-facility pair is within [0, 1].
3.2. Experimental Setting
We used the test data sets provided in Zhan (2007) which are also used in Shen et al. (2011)
for URFLP. In these data sets, the coordinates of site locations (facilities, customers) are i.i.d and
sampled from U[0,1] × U[0,1]. The sets of customer and facility sites are identical. The customer
demand is also i.i.d., sampled from U[0,1000], and rounded to the nearest integer. The fixed cost of
opening an unreliable facility is i.i.d. and sampled from U[500,1500], and rounded to the nearest
integer. For the reliable facilities, we set the fixed cost to 2,000 for all facilities. The variable
costs cij for customer j and facility i (excluding the emergency facility) are chosen as the Euclidean
distance between sites. We assign a large penalty cost, (20), ℎ𝑗 for serving customer j from
emergency facility. Zhan (2007) and Shen et al., (2011) consider URFLP and thus their data sets do
14
not have facility capacities. In all our experiments, we selected identical capacity levels for all
facilities, i.e., bi=1,..,|F| = 2,000. Datasets used in our study is given in Appendix B Table 9.
In generating the failure scenarios, we assume that the facility failures are independently and
identically distributed according to the Bernoulli distribution with probability qi, i.e., the failure
probability of facility i. We experimented with two sets of failure probabilities; first set of
experiments consider uniform failure rates, i.e., qi∈FU = q where q = {0.1, 0.2, 0.3}, and the
second set of experiments consider bounded non-uniform failure rates i.e. qi, where qi ≤ 0.3. We
restricted the failure probabilities with 0.3 since larger failure rates are not realistic. The reliable
facilities and emergency facility are perfectly reliable, i.e., qi∈(FR∪fe) = 1. Note that in the case,
where qi∈FU = 0, corresponds to the deterministic fixed-charge facility location problem. The
failure scenarios s ∈ S are generated as follows. Let Ffs ⊂ FU denote the facilities that are failed,
and Fr∈FUs ≡ FU\Ff
s be the set of surviving facilities in scenario s. The facility indicator parameter in
scenario s become kis=0 if i ∈ Ff
s, and kis=1 otherwise, e.g., if i ∈ Fr
s ∪ FR ∪ {fe}. The probability of
scenario s is then calculated by ps = q|Ffs|(1 − q)|Fr
s|.
In all the experiments, we used |𝒟| = FU⋃FR = 12 + 8 = 20 sites, which gives us is a
large-sized CRFLP problem that is more difficult to solve than the uncapacitated version (URFLP).
The size of the failure scenario set is |S| = 4,096. The deterministic equivalent formulation has 20
binary xi and 1,720,320 = |F| × |D| × |S| = 21 × 20 × 4,096 continuous yijs variables. Further,
there are 1,888,256 = 81,920 + 1,720,320 + 86,016 = |D| × |S| + |F| × |D| × |S| + |F| × |S| constraints corresponding to constraints (12)--(14) in the CRFLP formulation. Hence, the size of the
constraint matrix of the deterministic equivalent MIP formulation is 1,720,320 × 1,888,256 which
cannot be tackled with exact solution procedures (e.g., branch-and-cut or column generation
methods). Note that while solving LPs with this size is computationally feasible, the presence of the
binary variables makes the solution a daunting task. We generated sample sets for SAA and the
SBPHA (and d-SBPHA) by randomly sampling from U[0,1] as follows. Given the scenario
probabilities, ps, we calculate the scenario cumulative probability vector {p1, (p1 + p2),… , ( p1 +
p2 +⋯+ p|S|−1), 1}, which has |S| intervals. We first generate a random number and then select
the scenario corresponding to the interval containing the random number. We tested the SAA,
SBPHA, and d-SBPHA algorithms with varying number of samples (M) and sample sizes (N). Whenever possible, we use the same sample sets for all the three methods. We select the reference
set (N′) as the entire scenario set, i.e., N′ = S, which is used to evaluate the second stage
performance of a solution. We note that this is computationally tractable due to a relatively small
number of scenarios and that the second stage problem is an LP. In cases of large scenario set or
integer second stage problem, one should select N′ ≪ S.
3.3. Parameter Sensitivity
In this subsection, we analyze the sensitivity of SBPHA with respect to the weight for the
best incumbent solution parameter (α), penalty factor (ρ), and update parameter for the penalty
factor (β). Recall that α determines the bias of the best incumbent solution in determining the
samples’ balanced solution, which is obtained as a weighted average of the best incumbent solution
and the samples’ probability weighted solution. The parameter ρ penalizes the Euclidean distance of
a solution from the samples’ balanced solution and β is the multiplicative update parameter for ρ
between two iterations. In all these tests, we set (M, N) = (5, 10) and q = 0.3 unless otherwise
stated. We experimented with two α strategies, static and dynamic α. We solved in total 480 (=10 replications × 48 parameter settings) problem instances.
The summary results of solving CRFLP using 10 independent sample sets (replications)
with static strategy α=0.6, β = {1.1,1.2,1.3,1.4,1.5,1.8}, and ρ = {1,20,40,80,200} are presented in
Table 1. The detailed results of the 10 replications of Table 1 together with the detailed replication
15
results with static strategy for α={0.6,0.7,0.8} and dynamic strategy ∆α = {0.02,0.03,0.05} are
presented in Appendix A, Table 5.
The first column in Table 1 shows the α strategy and its parameter value. Note that in the
dynamic strategy, we select the initial value as αk=0 = 1 in Appendix A, Table 5. The second and
third columns show penalty factor (ρ) and update parameter for the penalty factor (β), respectively.
The objective function values for 10 replications (each replication consists of M = 5 samples) are
reported in columns 4 − 13 (shown only for replications 1, 2 and 10 in Table 1 and detailed results
are shown in Appendix A, Table 5). The first column under the “Objective” heading presents the
average objective function value across 10 replications, and the second column under the
“Objective” heading presents the optimality gap (i.e., gap1) between the average replication
solution and the best objective function value found, which is 8995.08†, while the third and fourth
columns under the “Objective” heading present the minimum and maximum objective values across
10 replications. Average objective function value and gap1 are calculated as follows:
vRepAverage
=1
Rep∑ vr
SBPHARepr=1 , (17)
Gap1 =vRepAverage
−v∗
v∗× 100%, (18)
where Rep is the number of replications, e.g., Rep = 10 in this section’s experiments.
In the last column, we report on the computational (CPU) time in seconds for tests. The
complete results on CPU times are provided in Appendix A, Table 6. First observation from Table 1
is that SBPHA is relatively insensitive to the α strategy employed and the parameter settings
selected. Secondly, we observe that the performance of SBPHA with different parameter settings
depends highly on the sample (see Table 5). As seen in replication 7 of Table 5, most of the
configurations show good performance as they all obtain the optimal solution. Further, as the ∆α
increases, the best incumbent solution becomes increasingly more important leading to the
decreased computational time. While some parameter settings exhibit good performance in solution
quality, their computational times are also higher, and vice versa.
Table 1: Summary objective function results for solving 10 replications of CRFLP with
different parameter settings
Alpha(α) Rho (ρ) Replication 𝒗𝒃𝒆𝒔𝒕 Objective Time (s)
In selecting the parameter settings for SBPHA, we are interested in a parameter setting that
offers a balanced trade-off between the solution quality and the solution time. In order to determine
such parameter settings, we developed a simple, yet effective, parameter configuration selection
index. The selection criterion is the product of average gap1 and CPU time. Clearly, smaller the
† The best solution is obtained by selecting the best among all the SBPHA solutions (e.g., out of 480 solutions) and
the the time-restricted solution of the CPLEX. The latter solution is obtained by solving the deterministic equivalent
using CPLEX method with %0.05 optimality gap tolerance and 10 hours (36,000 seconds) of time limit until either the
CPU time-limit is exceeded or the CPLEX terminates due to insufficient memory.
16
index value, the better is the performance of the corresponding parameter configuration. To
illustrate, using the results of the first row in Table 1, the index of static α = 0.6, with starting
penalty factor (ρ) = 1 and penalty factor update β = 1.8, is calculated as 19.00 (= 4.039% ×470.4). Parameter selection indexes corresponding to all 480 experiments are shown in Table 2.
According to the aggregate results in Table 2 (the ‘Total’ row at the bottom), the static α = 0.7
setting is the best, the static α = 0.6 is the second best while dynamic α with ∆α= 0.03 provides the
third best performance. Hence, we use only these α parameter configurations in our experiments. In
terms of penalty parameter configuration, we select the best setting, i.e., starting penalty factor
(ρ) = 200 and penalty factor update β = 1.1 for all the α parameter configurations. Note that by
selecting a larger starting penalty factor, SBPHA would converge faster but the quality of the
solution converged would be lower. Therefore, we restricted our experiments in terms of penalty
factor to be at most 200 (ρ).
Further, among all the experiments, the best parameter configuration in terms of index is
with static α = 0.6, when starting penalty factor ρ = 80 and update parameter (β) = 1.2. In Table
1 and Table 5, this configuration of parameter selection provides the best average gap performance
and a good CPU time performance. Hence, we also included this parameter configuration in our
computational performance experiments.
Table 2: Index for Parameter Selection
Rho (ρ) Dynamic α Static α
Start Update
Parameter(β) Δα=0.02 Δα=0.03 Δα=0.05 α=0.6 α=0.7 α=0.8 Total
1 1.8 18.95 18.52 25.28 19.00 18.89 25.17 125.8
20 1.2 26.58 22.53 26.33 28.07 16.54 23.88 143.9
20 1.5 13.30 18.37 20.20 19.66 17.09 18.65 107.3
40 1.3 14.58 14.78 24.30 18.83 18.83 18.14 109.5
40 1.4 20.23 18.49 18.03 18.02 14.32 15.12 104.2
80 1.1 21.73 21.62 24.26 16.23 17.67 17.02 118.5
80 1.2 15.88 17.92 21.27 8.70 17.83 20.33 101.9
200 1.1 14.75 12.09 14.77 12.59 13.48 11.98 79.6
Total: 146.0 144.3 174.5 141.1 134.6 150.3
In the remainder of the computational experiments we used sample size and number
as (M. N) = (5. 10). which enables the SBPHA to search the solution space while maintaining
computational time efficiency.
3.4. Computational Performance of SBPHA and d-SBPHA
In this subsection, we first show the performance of d-SBPHA on improving the solution
quality of SBPHA and then compare the performances of SAA and the proposed d-SBPHA
algorithm. In the remainder of the experiments, with a certain abuse of the optimality definition, we
refer to the best solution as the “exact solution”. This solution is obtained by selecting the best
amongst all the SBPHA, d-SBPHA, and SAA solutions and the time-restricted solution of CPLEX.
3.4.1. Analyzing d-SBPHA and SBPHA
Figure 1shows an effect of discarding strategy on the solution quality for different facility
failure probabilities. In all figures, results are based on the average of 10 replications. The
optimality gap (shown as ‘Gap’) is calculated as in (18) but substituting vrSBPHA with vbest.r
d−SBPHA in
(17) to calculate vRepAverage
. The first observation is that d-SBPHA not only improves the solution
quality but also finds an optimal solution in most facility failure probability cases. When failure
probability is q = 0.1, d-SBPHA converges to an optimal solution in less than 5 discarding
17
iterations with all the parameter configurations (Figure 1a). When q = 0.2, d-SBPHA converges to
an optimal solution in all the static α strategies in less than 5 discarding strategies and less
than 0.2% optimality gap with dynamic α strategy (Figure 1b).
0,0%
0,1%
0,1%
0,2%
0,2%
0,3%
0,3%
0,4%
0,4%
0,5%
Gap
Solution Quality Improvement with Discarding for q=0.1
Static α=0.6,ρ=200,β=1.1
Static α=0.7,ρ=200,β=1.1
Static α=0.6,ρ=80,β=1.2
Dynamic Δα=0.03,ρ=200,β=1.1
0,0%
0,2%
0,4%
0,6%
0,8%
1,0%
1,2%
1,4%
1,6%
Gap
Solution Quality Improvement with Discarding for q=0.2
Static α=0.6,ρ=200,β=1.1
Static α=0.7,ρ=200,β=1.1
Static α=0.6,ρ=80,β=1.2
Dynamic Δα=0.03,ρ=200,β=1.1
0.0%
0.5%
1.0%
1.5%
2.0%
2.5%
3.0%
Gap
Solution Quality Improvement with Discarding for q=0.3
Static α=0.6,ρ=200,β=1.1
Static α=0.7,ρ=200,β=1.1
Static α=0.6,ρ=80,β=1.2
Dynamic α=0.03,ρ=200,β=1.1
0.0%
0.5%
1.0%
1.5%
2.0%
2.5%
3.0%
3.5%
Gap
Solution Quality Improvement with Discarding for q random
Static α=0.6,ρ=200,β=1.1
Static α=0.7,ρ=200,β=1.1
Static α=0.6,ρ=80,β=1.2
Dynamic Δα=0.03,ρ=200,β=1.1
Figure 1: Effect of discarding strategy on the solution quality for CRFLP with facility failure
probabilities (a) q = 0.1. (b) q = 0.2. (c) q = 0.3. and (d) when q is random.
Further, when failure probability is 0.3, d-SBPHA is not able converge to an optimal
solution; however, it converges to solutions that are less than 1% away from the optimal one on
average (Figure 1c). Note that these results are based on the average of 10 replications, and at least
5 out of 10 replications are converged to the optimal solution in all the parameter configurations.
Detailed results are provided in the next section.
Finally, when failure probability is randomized, d-SBPHA converges to an optimal solution
in 10 or less discarding iterations, with three out of the four selected parameter configurations and
less than 0.5% gap (Figure 1d). Hence, we conclude that discarding improves the solution
performance while the improvement rates depend on the parameter configuration and the problem
parameters. The reader is referred to Table 7 in Appendix A for detailed results.
Next, we present the CPU time performance of d-SBPHA for 10 discarding iterations
(Figure 2). Note that the time plotted is cumulative over discarding iterations. The time of each
discarding iteration is based on average of 10 replications and is reported in seconds.
First observation here is that the CPU time is linearly increasing. Further, the solution time
is similar for all the facility failure probabilities (Figure 2 a, b, c and d) with all the parameter
Figure 2: CPU time performance of discarding strategy for CRFLP with facility failure
probabilities (a) q = 0.1. (b) q = 0.2. (c) q = 0.3, and (d) when q is random.
All the results are presented in Appendix A in Table 8. One main reason for linearly
increasing CPU time is that d-SBPHA makes use of the previously encountered solution
information. In particular, d-SBPHA does not test the reference sample (N′) performance of any
first stage solution that is encountered and already tested before. This is achieved by maintaining a
library of first stage solutions and corresponding reference sample (N′) performance in a dynamic
table.
3.4.2. SAA, SBPHA and d-SBPHA Tests. Comparisons
In this subsection, we compare performances of SBPHA, d-SBPHA, and SAA. First, we
analyze the performance of the proposed SBPHA and d-SBPHA with respect to that of the exact
method and the SAA method with different sample sizes (N) and number of samples (M). Here, for
the sake of simplicity and to explain clearer, we randomly selected a parameter configuration with
α = 0.7, ρ = 200, and β = 1.1, which is not either the worst or the best parameter configuration.
Table 3 and Table 4 illustrate these benchmark results for q ={0.1, 0.2, 0.3, and random}, for one of the replications. Then the average results across all the
replications are shown in Figure 3. The second column for SAA shows the number of samples and
sample size. i.e., ( M, N). For d-SBPHA, it shows the number of replications r, (M, N), and the
number of discarding iterations (d). Note that when the number of discarding iterations d = 0,
d-SBPHA becomes SBPHA. Third column, F∗, indicates the solution convergence for each method.
For instance, with q = 0.1 and (M,N) = (5, 10), the SAA solution is to open facilities F∗ ={1, 2, 8, 10, 12}, SBPHA opens facilities F∗ = {1, 2, 4, 10, 12}, both 2-SBPHA and the exact
Table 3 and Table 4 show that with larger sample sizes the objective function on the SAA
objective function is not always monotonously decreasing while the CPU time increases
exponentially. The observation about the time is in accordance with those in Figure 3. SAA finds
the optimal solution only when N = 75 for q = 0.1 and cannot find the optimal solution for q = 0.2
with any of M-N configurations. SAA also finds the optimal solution for q = 0.3 only when M=20
and N=75 in more than 13,000 seconds and shows a relatively good performance for random q
when M=20. Finally, d-SBPHA finds the optimal solution in all the facility failure probabilities.
21
α=0.6ρ=200β=1.1
α=0.7, ρ=200,β=1.1
α=0.6, ρ=80, β=1.2
Δα=0.03, ρ=200,β=1.1
0
100
200
300
400
500
600
700
800
0%
5%
10%
15%
20%
N=10 N=25 N=40 N=50 N=75CPU
Time(sec.)Gap
d -SBPHA vs SAA for q=0.1
SAA Objectived-SBPHA Objectived-SBPHA TimeSAA Time
α=0.6, ρ=200, β=1.1
α=0.7, ρ=200, β=1.1
α=0.6, ρ=80, β=1.2
Δα=0.03, ρ=200, β=1.1
0
100
200
300
400
500
600
700
800
900
0%
2%4%
6%8%
10%12%
14%16%
18%20%
N=10 N=25 N=40 N=50 N=75 CPU Time(sec.)
Gap
d-SBPHA vs SAA for q=0.2d-SBPHA ObjectiveSAA Objectived-SBPHA TimeSAA Time
α=0.6, ρ=200, β=1.1
α=0.7, ρ=200, β=1.1
α=0.6, ρ=80, β=1.2
Δα=0.03, ρ=200, β=1.1
04008001,2001,6002,0002,4002,8003,2003,6004,000
0%3%5%8%
10%13%15%18%20%23%25%
N=10 N=25 N=40 N=50 N=75
CPU Time(sec.)
Gap
d-SBPHA vs SAA for q=0.3
d-SBPHA ObjectiveSAA Objectived-SBPHA TimeSAA Time
α=0.6, ρ=200, β=1.1
α=0.7, ρ=200, β=1.1
α=0.6, ρ=80, β=1.2
Δα=0.03, ρ=200, β=1.1
0
100
200
300
400
500
600
700
800
0%
2%
4%
6%
8%
10%
12%
14%
N=10 N=25 N=40 N=50 N=75 CPU Time(sec.)
Gap
d-SBPHA vs SAA for q random
d-SBPHA Objective SAA Objective d-SBPHA Time SAA Time
Figure 3: Effect of sample size on the solution quality and CPU time performance of SAA
in comparison with d-SBPHA for CRFLP with facility failure probabilities (a) q = 0.1, (b) q = 0.2,
(c) q = 0.3, and (d) q random.
Results for d-SBPHA (d = 10) in Figure 3 are for all the four parameter settings; the first
setting is for static α = 0.6, ρ = 200 and β = 1.1, the second one is for static α = 0.7, ρ = 200 and
β = 1.1, third setting is for static α = 0.6, ρ = 80 and β = 1.2, and fourth one is for dynamic
Δα = 0.03, ρ = 200 and β = 1.1.
In Figure 3, we present the CPU time and solution quality performances of SAA for
N={10, 25, 40, 50, 75} sample sizes and compare them with that of the proposed d-SBPHA in
which d = 10 and N=10 in solving CRFLP with failure probabilities q = {0.1, 0.2, 0.3, random}. We use 5 (M) samples in both SAA and four different parameter configurations in the proposed
method. Different number of samples would increase the solution time of SAA and SBPHA.
However, as seen from the results, SBPHA already captures the optimal solution in the majority of
experiments with only five samples in less time than the SAA. Therefore, increasing number of
samples would not make any difference for the comparison of SAA and SBPHA in terms of their
performances. The obtained results indicate that the sample size effect the SAA’s CPU time. In
particular, the CPU time of the SAA is growing exponentially. Furthermore, in none of the failure
probability cases, the solution quality performance of SAA has converged to that of d-SBPHA. The
solution quality of all the four configurations of the proposed d-SBPHA are either optimal or near
optimal. The gap in Figure 3 is calculated as in Figure 1 and the CPU time of d-SBPHA shows the
average CPU time when the converged solution is found during the discarding iterations.
(a) (b)
(c) (d)
22
4. Conclusion In this study, we have developed hybrid algorithms for two-stage SP problems. The
proposed algorithms provide hybridization of two existing methods. The first one is the Monte
Carlo sampling-based algorithm, which is called SAA. The SAA method gives us an attractive
approximation for SP problems when the number of uncertain parameters increases. The second
algorithm is PHA, which is an exact solution methodology for SP problems. The research presented
in this study mainly addresses two issues that arise when using SAA and PHA methods
individually: lack of effectiveness in solution quality of SAA and lack of efficiency in
computational time of PHA.
4.1. Summary of Study and Contributions
The first proposed algorithm is called SBPHA, which is the integration of SAA and PHA.
This integration considers each sample as a small deterministic problem and employs the SAA
algorithm iteratively. In each iteration, the non-anticipativity constraints is injected into the solution
process by introducing penalty terms in the objective that guides the solution of each sample to the
samples' balanced solution and to ensure that non-anticipativity constraints are satisfied. The two
key parameters of SBPHA are the weight of the best incumbent solution and the penalty factor.
The weight for the best incumbent solution adjusts the importance given to samples’ best
found solution and to the most recent average sample solution in calculating the balanced solution.
The penalty factor modulates the rate at which the sample solutions converge to the samples’
balanced solution. Given that the best found solution improves over time, we propose two strategies
for the weight of the best incumbent solution: static versus dynamic strategy.
We first conduct experiments for sensitivity analysis of the algorithm with respect to the
parameters. The results show that the SBPHA's solution quality performance is relatively
insensitive to the choice of strategy for the weight of the best incumbent solution. i.e., both the
static and dynamic strategies are able to converge to an optimal solution. SBPHA is able to
converge to an optimal solution even with small number of samples and small sample sizes.
In addition to the sensitivity experiments, we compare the performances of SBPHA and d-
SBPHA with SAA's. These results show that the SBPHA and d-SBPHA are able to improve the
solution quality noticeably with reasonable computational effort compared to SAA. Further,
increasing SAA's sample size to match the solution quality performance of SBPHA or d-SBPHA
requires significant computational effort, which is not affordable in many practical instances.
The contributions of this research are as follows:
Contribution 1: Developing SBPHA, which provides a configurable solution method that
improves the sampling-based methods’ accuracy and PHA’s efficiency for two-stage stochastic
programming problems.
Contribution 2: Enhancing SBPHA for SPs with binary first stage decision variables. The
improved algorithm is called Discarding-SBPHA (d-SBPHA). It is analytically proved that SBPHA
leads us to an optimal solution to the mentioned problems when the number of discarding iterations
approaches to infinity.
There are four possible avenues of the future research on SBPHA. The first opportunity is to
investigate the integration of alternative solution methodologies in order to improve the
convergence rate and solution quality, such as Stochastic Decomposition (SD), Stochastic Dual
Dynamic Programming (SDDP), L-Shaped decomposition. The second extension is the research on
applications of the d-SBPHA to the SPs that have linear first-stage decision variables. Another
extension is the investigation on developing a general strategy for the SBPHA and d-SBPHA
specific parameters in order to reduce the computational effort spent on the parameter sensitivity
steps. Finally, the adaptation of the ideas of d-SBPHA to multistage stochastic programs seems to
yet another productive future research opportunity.
23
Acknowledgements. Research of the third author was partly supported by the USA National
Science Foundation under grants DMS-1007132 and DMS-1512846 and by the USA Air Force
Office of Scientific Research grant 15RT0462.
24
APPENDIX A: Results for SBPHA and d-SBPHA
Table 5: Objective function values of test samples
Table 8: Average CPU time of 10 replications for each parameter configuration over discarding
q=0.1
q=0.2
Static α
Dynamic α Static α
Dynamic α
Replications
α=0.6
ρ=200
β=1.1
α=0.7
ρ=200
β=1.1
α=0.6
ρ=80
β=1.2
Δα=0.03
ρ=200
β=1.1
α=0.6
ρ=200
β=1.1
α=0.7
ρ=200
β=1.1
α=0.6
ρ=80
β=1.2
Δα=0.03
ρ=200
β=1.1
No Discard
248 250 288
268
333 366 366
380
1-Discard
108 121 106
146
98 101 128
149
2-Discard
124 130 137
143
110 164 108
107
3-Discard
97 116 97
108
131 102 60
77
4-Discard
131 143 114
143
85 106 122
102
5-Discard
88 93 94
109
117 126 114
133
6-Discard
101 146 85
125
103 80 81
110
7-Discard
106 105 98
93
106 106 63
85
8-Discard
75 78 64
103
103 102 88
47
9-Discard
82 86 84
87
89 116 89
93
10-Discard
122 117 97
108
86 76 79
71
Total Time
1,282 1,386 1,263
1,434
1,360 1,444 1,297
1,354
Time (Best
Solution found) 114 160 165
165
515 458 521
523
q=0.3
q random
Static α
Dynamic α Static α
Dynamic α
Replications
α=0.6
ρ=200
β=1.1
α=0.7
ρ=200
β=1.1
α=0.6
ρ=80
β=1.2
Δα=0.03
ρ=200
β=1.1
α=0.6
ρ=200
β=1.1
α=0.7
ρ=200
β=1.1
α=0.6
ρ=80
β=1.2
Δα=0.03
ρ=200
β=1.1
No Discard
430 476 503
533
279 308 302
329
1-Discard
172 210 100
204
133 173 155
157
2-Discard
138 132 78
139
126 148 119
163
3-Discard
107 122 75
137
124 147 109
130
4-Discard
96 116 72
106
78 91 85
88
5-Discard
110 136 76
66
89 100 82
80
6-Discard
117 119 57
68
106 79 73
76
7-Discard
110 102 50
62
108 98 57
95
8-Discard
89 72 50
78
98 120 64
101
9-Discard
97 67 50
52
97 147 65
78
10-Discard
73 65 47
35
83 75 52
88
Total Time
1,540 1,618 1,159
1,479
1,320 1,485 1,162
1,384
Time (Best
Solution found) 648 686 727
692
423 499 373
614
APPENDIX B: Data set used for CRFLP
The first column of Table 9 shows whether the possible facility site is reliable or not. The
second column shows the facility number. The third and fourth columns show the location (lat-
long) of the facility sites. The fifth column presents the demand of the location and the sixth
29
column presents the fix opening cost that is going to be applied if a facility is opened at the
specified location. Finally, the seventh column presents the failure probability if it is a random
failure cases; otherwise all the values in this column (only rows 1-12) are equal. e.g., q = qi =0.1. The emergency cost (demand satisfying cost if the demand is not satisfied from an opened
facility but from emergency. e.g., dummy facility) is 20 and is equal for all the facility sites.
Capacity for all facilities is taken 2000.
Table 9: Data set for CRFLP
Facility
Type No Lat. Long. Demand
Fixed
Cost
Failure
Probability
Un
reli
ab
le
1 0.82 0.18 957 938 0.24
2 0.54 0.70 202 642 0.12
3 0.91 0.72 186 1,230 0.13
4 0.15 0.31 635 1,008 0.11
5 0.74 0.16 737 1,279 0.08
6 0.58 0.92 953 1,431 0.25
7 0.60 0.09 450 1,187 0.29
8 0.37 0.19 188 1,044 0.30
9 0.70 0.52 206 1,466 0.26
10 0.22 0.40 995 989 0.17
11 0.50 0.45 429 948 0.17
12 0.30 0.52 528 585 0.24
Rel
iab
le
13 0.95 0.20 570 2,000 0.00
14 0.65 0.07 938 2,000 0.00
15 0.53 0.11 726 2,000 0.00
16 0.95 0.95 533 2,000 0.00
17 0.15 0.13 565 2,000 0.00
18 0.31 0.40 322 2,000 0.00
19 0.98 0.73 326 2,000 0.00
20 0.59 0.04 663 2,000 0.00
References Ahmed, S. and Shapiro, A. (2002). The sample average approximation method for stochastic
programs with integer recourse. Georgia Institute of Technology. Published electronically in: