Optimal computing budget allocation
Optimal computing budget allocation (OCBA) is a concept first introduced in the mid 1990s by Dr. Chun-Hung Chen. This approach intends to maximize the overall simulation efficiency for finding an optimal decision.[1] Simply put, OCBA is an approach to simulation that will help determine the number of replication and/or the simulation time that is needed in order to receive acceptable/best results within a set of given parameters.[2] This is accomplished by using an asymptotic framework to analyze the structure of the optimal allocation.[3]
Intuitive explanations
OCBA’s goal is to provide a systematic approach to run a large number of simulations including only the critical alternatives in order to select the best alternative. In other words, focusing on only part the most critical alternatives, which minimizes computation time and reduces these critical estimators’ variances. The expected result maintains the required level of accuracy, while requiring less amount of work.[4] For example we can create a simple simulation between 5 alternatives. The goal is to select an alternative with minimum average delay time. The figure below shows preliminary simulation results ( i.e. having run only a fraction of the required number of simulation replications). It is clear to see that alternative 2 and 3 have a significantly lower delay time ( highlighted in red). In order to save computation cost (which is time, resources and money spend on the process of running the simulation) OCBA suggests that more replications are required for alternative 2 and 3, and simulation can be stopped for 1, 4, and 5 much earlier without compromising results.
What problem does OCBA intend to solve
The main objective of OCBA is to maximize the probability of correct selection (PCS). PCS is subject to the sampling budget of a given stage of sampling τ.
In this case stands for the total computational cost.[5]
Main OCBA results
The main results of OCBA is done by taking into consideration an asymptotic case. In this case (τ) begins to increase toward ∞ in such a way that the total sampling budget β increases to ∞ and τi also increases to ni). Using Equation 1 from section "What problem does OCBA intend to solve" PCS can be maximized by the following 2 Equations.
(insert equations 1 and 2 here – the article needs to be published first in order to add copyrighted images – I have permission by the author to publish the specific images .
Something interesting to notice is that Equation 2 suggests that the number of replications for each alternative i is proportional to the square noise-to-signal ratio. To clarify noise is referring to the sample Standard deviation and signal is referring to the difference between i's sample mean and the best sample mean.
One numerical testing example
OCBA was put to the test when numerical results were published using a simple example that is shown in figure 1. The goal is to allocate 31 parallel servers within a two-stage queuing system. A constraint in this example is that each queue (p1, p2) can have no less than 11 servers. Mathematically put: p1 + p2 = 31, p1 > 11 and p2 > 11.
Given this information we can see that there are 10 alternative computations (p1, p2). The goal is to minimize the customer wait time for the first 100 customers. In order to express the performance of different procedures, we introduce a function β computational budget (i.e. resources used such as time, power) which we will vary between 200 and 8000 for all of the sequential procedures. The estimated PCS is a function of β. PCS is estimated by the fraction of the event of correct selection out of the independent experiment that were conducted. The results of varying β and its corresponding PCS are shown in Figure 2. FIGURE 2 goes here – the article needs to be published first in order to add copyrighted images – I have permission by the author to publish the specific images
Table 2 shows the numerical results of Figure 2. The sampling budget to attain a PCS of 0.95 and 0.99 is compared using OCBA allocation and equal allocation.
PCS | OCBA | Equal allocation |
0.95 | 470 | 1450 |
0.99 | 850 | 2890 |
Next, we are doing a separate experiment with multiple alternatives that are called k. For example we can now have more than 31 servers. We can observe the speedup factor of reaching a desired level of PCS. In this case it is .99. Table 3 shows the speedup factor using OCBA compared with the equal allocation method. The Speedup factor is calculated by β_EA/ β_OCBA. We can see that as the number of alternatives increases so does the speedup factor. This is how computation time is saved when performing simulations with large number of alternatives.
Number of alternatives (k) | 4 | 10 | 20 | 50 | 75 | 100 |
Speedup factor | 1.75 | 3.42 | 6.45 | 12.8 | 16.3 | 19.8 |
Some extensions of OCBA
Experts in the field explain that in some problems it is important to not only know the best alternative among a sample, but the top 5, 10, or even 50, because the decision maker may have other concerns that may affect the decision which are not modeled in the simulation. According to Szechtman and Yücesan (2008),[7] OCBA is also helpful in feasibility determination problems. This is where the decisions makers are only interested in differentiating feasible alternatives from the infeasible ones. Further, choosing an alternative that is simpler, yet similar in performance is crucial for other decision makers. In this case, the best choice is among top-r simplest alternatives, whose performance rank above desired levels.[8] In addition, Trailovic[9] and Pao[10] (2004) demonstrate an OCBA approach, where we find alternatives with minimum variance, instead of with best mean. Here, we assume unknown variances, voiding the OCBA rule (assuming that the variances are known). During 2010 research was done on an OCBA algorithm that is based on a t distribution. The results show no significant differences between those from t-distribution and normal distribution. The above presented extensions of OCBA is not a complete list and is yet to be fully explored and compiled.[6]
Multi-objective Optimal Computing Budget Allocation
Multi-objective Optimal Computing Budget Allocation (MOCBA) is the OCBA concept that applies to multi-objective problems. In a typical MOCBA, the PCS is defined as
in which
- is the observed Pareto set,
- is the non-Pareto set, i.e., ,
- is the event that design is non-dominated by all other designs,
- is the event that design is dominated by at least one design.
We notice that, the Type I error and Type II error for identifying a correct Pareto set are respectively
and .
Besides, it can be proven that
and
where is the number of objectives, and follows posterior distribution Noted that and are the average and standard deviation of the observed performance measures for objective of design , and is the number of observations.
Thus, instead of maximizing , we can maximize its lower bound, i.e., Assuming , the Lagrange method can be applied to conclude the following rules:
in which
- for a design , ,
- for a design , ,
and
Optimal Computing Budget Allocation for Constrained Optimization
Similar to the previous section, there are many situations with multiple performance measures. If the multiple performance measures are equally important, the decision makers can use the MOCBA. In other situations, the decision makers have one primary performance measure to be optimized while the secondary performance measures are constrained by certain limits. The primary performance measure can be called the main objective while the secondary performance measures are referred as the constraint measures. This falls into the problem of constrained optimization. When the number of alternatives is fixed, the problem is called constrained ranking and selection where the goal is to select the best feasible design given that both the main objective and the constraint measures need to be estimated via stochastic simulation. The OCBA method for constrained optimization (called OCBA-CO) can be found in Pujowidianto et al. (2009) [11] and Lee et al. (2012).[12]
The key change is in the definition of PCS. There are two components in constrained optimisation, namely optimality and feasibility. As a result, the simulation budget can be allocated to each non-best design either based on the optimality or feasibility. In other word, a non-best design will not be wrongly selected as the best feasible design if it remains either infeasible or worse than the true best feasible design. The idea is that it is not necessary to spend a large portion of the budget to determine the feasibility if the design is clearly worse than the best. Similarly, we can save the budget by allocating based on feasibility if the design is already better than the best in terms of the main objective.
Web-based demonstration of OCBA
The following link provides an OCBA demonstration using a simple example. In the demo, you will see how OCBA performs and allocates computing budget differently as compared with traditional equal allocation approach.
References
- ↑ Fu, M, C. H. Chen, and L. Shi, “Some Topics for Simulation Optimization,” Proceedings of 2008 Winter Simulation Conference, pp. 27–38, Miami, FL, December 2008.
- ↑ Chen, and Loo H. Lee. Stochastic simulation optimization an optimal computing budget allocation. Singapore Hackensack, NJ: World Scientific, 2011. Print..
- ↑ Chen, C. H. "An Effective Approach to Smartly Allocate Computing Budget for Discrete Event Simulation," Proceedings of the 34th IEEE Conference on Decision and Control, pp. 2598–2605, December 1995.
- ↑ Chen, Chun-Hung. "Optimal Computing Budget Allocation (OCBA) for Simulation-based Decision Making Under Uncertainty". Retrieved 9 July 2013.
- ↑ Chen, and Loo H. Lee. Stochastic simulation optimization an optimal computing budget allocation. Singapore Hackensack, NJ: World Scientific, 2011. Print.
- 1 2 Chen, C. H., M. Fu, L. Shi, and L. H. Lee, “Stochastic Systems Simulation Optimization,” Frontiers of Electrical and Electronic Engineering in China, 6(3), 468–480, 2011
- ↑ Szechtman R, Yücesan E (2008) A new perspective on feasibility determination. Proc of the 2008 Winter Simul Conf 273–280
- ↑ Jia QS, Zhou E, Chen CH (2012). efficient computing budget allocation for finding simplest good designs. IIE Trans, To Appear.
- ↑ Trailovic Tekin E, Sabuncuoglu I (2004) Simulation optimization: A comprehensive review on theory and applications. IIE Trans 36:1067–1081
- ↑ Trailovic L, Pao LY (2004) Computing budget allocation for efficient ranking and selection of variances with application to target tracking algorithms, IEEE Trans Autom Control 49:58–67.
- ↑ Pujowidianto NA, Lee LH, Chen CH, Yap CM (2009) Optimal computing budget allocation for constrained optimization. Proc of the 2009 Winter Simul Conf 584–589.
- ↑ Lee LH, Pujowidianto NA, Li LW, Chen CH, Yap CM (2012) Approximation simulation budget allocation for selecting the best design in the presence of stochastic constraints, IEEE Trans Autom Control 57:2940–2945.
External links
- http://seor.gmu.edu/~cchen9/ocba.html
- Russian translation of OCBA page by Carschimp
- Ukrainian translation of OCBA page by sciposts