# Discrete-Event Simulation

Discrete-Event Simulation (events occur at a discrete set of time points) was first used in the 1950s to solve a range of business problems. The goal was to reduce costs, and improve efficiency to increase profitability. In discrete-event simulation, the system is represented as a chronological sequence of events, where each event occurs at an instant in time and record a change of state in the system.

Modeling a queue such as customer arriving discrete variable at a gas station is a common example of building a discrete-event simulation model. In this example, customer queue represents the system entities. The system events are customer arrival and departure. In this case the system states, which are changed by these events, are number of customers in the queue (an integer from 0 to n) and the cashier status (busy or idle). To model the above system, customer interarrival time and service time need to be characterized as random variables.

When modeling a system using discrete-event simulation techniques the system being analyzed as a sequence of events: (arrival, delay, use resource, etc) being performed on entities. Each entity can have an attributes that affect the way they are handled or may change as the entity flows through the system. When system events occur, discrete-event simulation include:

1. A clock to keep track of the simulation time
2. Events list to keep track of simulation events
3. Random number generators to generate random variables of different kinds, depend on the simulation model.

Discrete-Event Simulation is widely applied in manufacturing, logistics, healthcare, and business processes. Before developing a model using DES techniques it’s important to:

1. Determine the objectives: state the problem and decide if a simulation project is approperiate for solving it.
2. Build a conceptual model: based on the problem, abstract the essential features of the system and select basic assumption that characterize the system.
3. Convert into a computational model
4. Verify and validate: while verification is important to ensure the model was build right, validation ensures that the model is consistent with the system being analyzed.

There are two basic approaches to developing discrete-event simulation models. Using simulators such as ProModel or Taylor II. Using simulation languages such as SIMAN or SLAM. Using a hybrid system such as Arena. In addition, some flow charting tools such as ProcessCharter have simulation capabilities embedded within the