1

I have create a simulation model within Arena and I am asked to compare its initialization bias to other models can someone help me retrieving this parameter from the output? or at least direct me to viewing the simulation chart so that i will be able to decide myself regarding the initialization bias value from the chart?

Thanks.

user1322801
  • 839
  • 1
  • 12
  • 27
  • ARENA is a COTS application. Or are you using the demo version? I believe during the trial period, tech support is included. I have had excellent support in the past. – Oliver Feb 23 '14 at 17:17
  • I am using the STUDENT license as I use it for my MSC project, where do i contact them? – user1322801 Feb 23 '14 at 17:48
  • 1
    Initialization bias is not a parameter, it's an artifact of having to choose initial values for the state variables that are not representative of the steady state distribution. That said, how does your instructor want you to characterize the initial bias? You need to rigorously define a suitable measure before you can make any progress. Also, what do you mean by "the simulation chart"? Try plotting of one or more performance measure's output vs simulated time. Have you read Kelton's Arena textbook, or more general simulation texts such as Law, or Banks, Carson, Nelson & Nicol? – pjs Feb 23 '14 at 18:41

1 Answers1

3

The impact of your simulation model's initial configuration upon its results is the initialization bias. Ideally, there shouldn't be any initialization bias in your results.

For example, let's say that you're modeling a factory making washing machines. When your simulation starts, the simplest initial state is for the factory to have no work-in-progress - that is, the factory has no washing machine parts in any part of the process. As the simulation runs, you introduce parts, which progress through the simulation until completed washing machines are shipped.

Let's say that you count the number of washing machines shipped by the simulation. You can then estimate the mean number of washing machines shipped per hour as follows:

mean hourly throughput = (number of washing machines shipped) / (simulation time in hours)

But, we're going to see an initialization bias, because it takes time for the simulation to complete the first washing machine; we might not ship any washing machines for some time.

Now, let's say that, on average, this factory actually ships 200 washing machines per hour (for simplicity, lets assume that there's no variation in throughput rates) and takes two exactly hours to manufacture a completed washing machine. If we measure mean hourly throughput at the end of each hour, we'll see something like this:

Time Units Shipped Throughput
  0         0          0.00
  1         0          0.00
  2         0          0.00
  3       200         66.67
  4       400        100.00
  5       600        120.00
  6       800        133.33

We'll never actually see an output of 200 washing machines per hour, because we shipped nothing for the first two hours, and so (n - 2) * 200 / n will always be less than 200 for any value of n >= 2.

However, this initial state is unrealistic, because when the factory ends production each day, it will be populated with washing machine parts. When it starts up the next day, it will start producing washing machines immediately. If we started the simulation fully populated with washing machine parts (which is not achieved trivially), then we'd see something more like this:

Time Units Shipped Throughput
  0         0          0.00
  1       200        200.00
  2       400        200.00
  3       600        200.00
  4       800        200.00
  5      1000        200.00
  6      1200        200.00

(again, assuming that there's no variation in production rate).

In this second scenario, the simulation is initialized to a state that is in line with it's steady state, so there's almost no initialization bias. You can easily calculate the bias on this statistic by comparing the two sets of output.

It should be clear that the initialization bias is a function both of the initial starting state of the simulation, and the length of time over which statistics are collected.

If your simulation model is nonterminating, and achieves steady state, then the simplest way to remove initialization bias is to reset all of your statistics after some warm-up period. (In the above example, a warm-up of 2 hours would be adequate, but, more generally, it would be once the system has reached steady state.) I've never used Arena, but if it doesn't have a mechanism for resetting statistics after a warm-up period, I'd be amazed.

A warm-up with a statistics reset is a lot easier to achieve, and more reliable, than attempting to initialize the simulation to something more close to its steady-state operation.

How should the reset be done? In the above example, the number of washing machines shipped should be set to 0 and the mean throughput calculated as follows:

mean hourly throughput = (number of washing machines shipped) / (simulation time in hours since last reset)

Now, we should see output like the following (statistics collected over the warm-up period are discarded):

Time Units Shipped Throughput
  3       200        200.00
  4       400        200.00
  5       600        200.00
  6       800        200.00

In such a case, there is now no initialization bias.

Mike Allen
  • 8,139
  • 2
  • 24
  • 46
  • 1
    ARENA Output Analyzer can be used to visually determine the truncation point for a particular model. A warm-up period can be defined in "Run Settings". Determining a truncation point may not be easy in every case, and I suggest using the approach described in "Welch's method for removing the initial bias". – Burak Oz Feb 29 '16 at 09:19