## 2 Literature Review  
### Simulation Modeling  
As a powerful tool for analyzing complex stochastic systems, of which assembly lines are undoubtedly one, computer simulation modeling has been widely used [6; 7; 8; 9]. Simulation modeling is the process of creating and testing a computer-based mathematical model of a physical system. The main objectives of simulation modeling can be summarized as follows:  
* Gaining insight into the operation of a system; it is difficult to study the system at standstill.
* Developing operational or resource strategies to improve system performance; existing operating systems should be improved.
* Testing new concepts and/or systems prior to implementation, and typically, testing how well the new proposed model will work and reviewing and refining the configuration of the selected equipment.
* Obtaining information without interfering with the actual system.  
Simulation modeling has several advantages, but also some disadvantages that should be considered. The main advantage is the ability to examine systems dynamically and in real time during the simulation run, which usually takes less time than testing in a real environment. With a computer model, operation and interaction with different scenarios can be simulated in seconds. The reduced analysis effort allows practitioners to analyze many more different types of system than was previously possible. Simulation software with the ability to dynamically animate the operation of the model is useful for demonstrating system operation and troubleshooting potential failures. In addition to the obvious advantages, there are some disadvantages to simulation modeling.  
Simulation cannot provide accurate results if the input data are inaccurate. Therefore, data collection is a very important part of the simulation process, even though it is often neglected. Another challenge is problem solving. Although the simulation model provides management with several possible solutions, simulation alone does not solve the problem--this is still the responsibility of management.  
The use of various simulation software programs has been covered in several papers [10; 11; 12; 13] and books [6; 14; 15]. One of the most important decisions in conducting a simulation study concerns the choice of software. We can choose a simulation package or a general-purpose programming language. The advantages of simulation packages can be summarized as follows:* They provide all the segments needed to build a simulation model (shorter time and lower cost);
* The basic modeling constructs are usually more user-friendly (easy to use);
* Simulation models are easier to modify and maintain;
* Automatic checking for possible errors (better error detection).  
In contrast, simulation models written in a general programming language have some other advantages:  
* An analyst already knows the programming language;
* A model written in a specific programming language (C, C++, Java) can be better tailored to a specific application, and is therefore faster (shorter execution time);
* Greater flexibility in programming.  
Discrete-event simulation packages are usually of two main types: general-purpose simulation packages and application-oriented simulation packages. The former can be used for any application, but may have specific features for certain applications (e.g., manufacturing or process optimization). The second type of simulation software is tailored to a specific type of application, such as manufacturing or healthcare.