Simulation-based optimization: Difference between revisions

Content deleted Content added
No edit summary
m remove nowiki
 
(11 intermediate revisions by 9 users not shown)
Line 1:
'''Simulation-based optimization''' (also known as simply '''simulation optimization''') integrates [[optimization (mathematics)|optimization]] techniques into [[computer simulation|simulation]] modeling and analysis. Because of the complexity of the simulation, the [[objective function]] may become difficult and expensive to evaluate. Usually, the underlying simulation model is stochastic, so that the objective function must be estimated using statistical estimation techniques (called output analysis in simulation methodology).
 
Once a system is mathematically modeled, computer-based simulations provide information about its behavior. Parametric simulation methods can be used to improve the performance of a system. In this method, the input of each variable is varied with other parameters remaining constant and the effect on the design objective is observed. This is a time-consuming method and improves the performance partially. To obtain the optimal solution with minimum computation and time, the problem is solved iteratively where in each iteration the solution moves closer to the optimum solution. Such methods are known as ‘numerical optimization’ or, ‘simulation-based optimization’.<ref>Nguyen, Anh-Tuan, Sigrid Reiter, and Philippe Rigo. "[https://orbi.uliege.be/bitstream/2268/155988/1/Nguyen%20AT.pdf A review on simulation-based optimization methods applied to building performance analysis]."''Applied Energy'' 113 (2014): 1043–1058.</ref> or 'simulation-based multi-objective optimization' used when more than one objective is involved.
 
In simulation experiment, the goal is to evaluate the effect of different values of input variables on a system. However, the interest is sometimes in finding the optimal value for input variables in terms of the system outcomes. One way could be running simulation experiments for all possible input variables. However, this approach is not always practical due to several possible situations and it just makes it intractable to run experiments for each scenario. For example, there might be too many possible values for input variables, or the simulation model might be too complicated and expensive to run for suboptimala large set of input variable values. In these cases, the goal is to iterative find optimal values for the input variables rather than trying all possible values. This process is called simulation optimization.<ref>Carson, Yolanda, and Anu Maria. "[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.24.9192&rep=rep1&type=pdf Simulation optimization: methods and applications]." ''Proceedings of the 29th conferenceWinter onSimulation Winter simulationConference''. IEEE Computer Society, 1997.</ref>
 
Specific simulation–based optimization methods can be chosen according to figureFigure 1 based on the decision variable types.<ref>Jalali, Hamed, and Inneke Van Nieuwenhuyse. "[https://core.ac.uk/download/pdf/34623919.pdf Simulation optimization in inventory replenishment: a classification]." IIE Transactions 47.11 (2015): 1217-1235.</ref>
[[File:Slide1 1.jpg|thumb|Fig.1 Classification of simulation based optimization according to variable types]]
[[Optimization (computer science)|Optimization]] exists in two main branches of operations research:
Line 16:
 
Some important approaches in simulation optimization are discussed below.
<ref name=Fu>{{cite book|editor-last=Fu|editor-first=Michael, editor|title=Handbook of Simulation Optimization|publisher=Springer|year=2015|url=https://www.springer.com/us/book/9781493913831}}</ref>
<ref>Spall, J.C. (2003). ''Introduction to Stochastic Search and Optimization: Estimation, Simulation, and Control''. Hoboken: Wiley.</ref>
 
=== Statistical ranking and selection methods (R/S) ===
Ranking and selection methods are designed for problems where the alternatives are fixed and known, and simulation is used to estimate the system performance.
In the simulation optimization setting, applicable methods include indifference zone approaches, optimal computing budget allocation, and knowledge gradient algorithms.
 
=== Response surface methodo<nowiki/>logymethodology (RSM)===
In [[response surface methodology]], the objective is to find the relationship between the input variables and the response variables. The process starts from trying to fit a linear regression model. If the P-value turns out to be low, then a higher degree polynomial regression, which is usually quadratic, will be implemented. The process of finding a good relationship between input and response variables will be done for each simulation test. In simulation optimization, response surface method can be used to find the best input variables that produce desired outcomes in terms of response variables.<ref>Rahimi Mazrae Shahi, M., Fallah Mehdipour, E. and Amiri, M. (2016), [https://onlinelibrary.wiley.com/doi/abs/10.1111/itor.12150 Optimization using simulation and response surface methodology with an application on subway train scheduling]. Intl. Trans. in Op. Res., 23: 797–811. {{doi|10.1111/itor.12150}}</ref>
 
=== Heuristic methods ===
[[Heuristic (computer science)|Heuristic methods]] change accuracy by speed. Their goal is to find a good solution faster than the traditional methods, when they are too slow or fail in solving the problem. Usually they find local optimal instead of the optimal value; however, the values are considered close enough of the final solution. Examples of thisthese kindkinds of methodmethods isinclude [[tabu search]] orand [[Geneticgenetic algorithmalgorithms]].<ref name=":0" />
 
Metamodels enable researchers to obtain reliable approximate model outputs without running expensive and time-consuming computer simulations. Therefore, the process of model optimization can take less computation time and cost. <ref>{{Cite journal|last=Yousefi|first=Milad|last2=Yousefi|first2=Moslem|last3=Ferreira|first3=Ricardo Poley Martins|last4=Kim|first4=Joong Hoon|last5=Fogliatto|first5=Flavio S.|title=Chaotic genetic algorithm and Adaboost ensemble metamodeling approach for optimum resource planning in emergency departments|journal=Artificial Intelligence in Medicine|volume=84|pages=23–33|doi=10.1016/j.artmed.2017.10.002|pmid=29054572|year=2018}}</ref>
 
=== Stochastic approximation ===
[[Stochastic approximation]] is used when the function cannot be computed directly, only estimated via noisy observations. In thisthese scenarios, this method (or family of methods) looks for the extrema of these function. The objective function would be:<ref>Powell, W. (2011). ''Approximate Dynamic Programming Solving the Curses of Dimensionality'' (2nd ed., Wiley Series in Probability and Statistics). Hoboken: Wiley.</ref>
 
:<math>\underset{\text{x}\in\theta}{\min}f\bigl(\text{x}\bigr) = \underset{\text{x}\in\theta}{\min}\Epsilon[F\bigl(\text{x,y})]</math>
Line 42 ⟶ 43:
 
=== Derivative-free optimization methods ===
[[Derivative-free optimization]] is a subject of mathematical optimization. This method is applied to a certain optimization problem when its derivatives are unavailable or unreliable. Derivative-free methods establish a model based on sample function values or directly draw a sample set of function values without exploiting a detailed model. Since it needs no derivatives, it cannot be compared to derivative-based methods.<ref>Conn, A. R.; [[Katya Scheinberg|Scheinberg, K.]]; [[Luis Nunes Vicente|Vicente, L. N.]] (2009). [http://www.mat.uc.pt/~lnv/idfo/ ''Introduction to Derivative-Free Optimization'']. MPS-SIAM Book Series on Optimization. Philadelphia: SIAM. Retrieved 2014-01-18.</ref>
 
For unconstrained optimization problems, it has the form:
Line 51 ⟶ 52:
 
1. Some methods cannot handle optimization problems with more than a few variables; the results are usually not so accurate. However, there are numerous practical cases where derivative-free methods have been successful in non-trivial simulation optimization problems that include randomness manifesting as "noise" in the objective function. See, for example, the following
<ref name=Fu/>
<ref name=Fu>{{cite book|last=Fu|first=Michael, editor|title=Handbook of Simulation Optimization|publisher=Springer|year=2015|url=https://www.springer.com/us/book/9781493913831}}</ref>
.<ref>Fu, M.C., Hill, S.D. Optimization of discrete event systems via simultaneous perturbation stochastic approximation. ''IIE Transactions'' 29, 233–243 (1997). https://doi.org/10.1023/A:1018523313043 </ref>.
 
2. When confronted with minimizing non-convex functions, it will show its limitation.
Line 61 ⟶ 62:
 
==== Dynamic programming ====
[[Dynamic programming]] deals with situations where decisions are made in stages. The key to this kind of problemsproblem is to trade off the present and future costs.<ref>Cooper, Leon; Cooper, Mary W. Introduction to dynamic programming. New York: Pergamon Press, 1981</ref>
 
One dynamic basic model has two features:
Line 75 ⟶ 76:
:<math>k</math> represents the index of discrete time.
 
:<math>x_k</math> is the state of the time k, it contains the past information and prepareprepares it for the future optimization.
 
:<math>u_k</math> is the control variable.
Line 95 ⟶ 96:
 
== Limitations ==
Simulation -based optimization has some limitations, such as the difficulty of creating a model that imitates the dynamic behavior of a system in a way that is considered good enough for its representation. Another problem is complexity in the determining uncontrollable parameters of both real-world system and simulation. Moreover, only a statistical estimation of real values can be obtained. It is not easy to determine the objective function, since it is a result of measurements, which can be harmful forto the solutions.<ref>Prasetio, Y. (2005). ''[https://elibrary.ru/item.asp?id=9387151 Simulation-based optimization for complex stochastic systems]''. University of Washington.</ref><ref>Deng, G., & Ferris, Michael. (2007). ''Simulation-based Optimization,'' ProQuest Dissertations and Theses</ref>
 
==References==