Tải bản đầy đủ - 0 (trang)
13 Adding the Inspection, Labeling, Repair, and Rejection Processes

13 Adding the Inspection, Labeling, Repair, and Rejection Processes

Tải bản đầy đủ - 0trang

1241_C15.fm Page 59 Monday, September 15, 2003 4:56 PM


Loads Transfer from Conveyor

System to Path Mover System.


Loads Are Inspected and Sent

to One of Three Processes.



Loads Get Fixed and Sent to





Loads Are Labeled and Sent to



Loads Are Scrapped.


Loads Are Put into Storage.

FIGURE 15.59 Process flow.

X Staout1 X Staout2












X Cppark









Place the Queues for the

Inspection, Labeling and

Repair Processes




FIGURE 15.60 Layout for queues.

15.13.4 Adding Resources

Now you will add three new resources to your model: one for inspecting the loads, one for labeling the

loads, and one for repairing the loads.

1. Define three new resources. Use the default resource attributes for each resource.

• R_Inspect

• R_Label

• R_Repair

2. Edit the graphic for the R_Inspect.

3. Select Import from the Shape Definition drop-down list in the lower left corner of the window.

© 2004 by CRC Press LLC

1241_C15.fm Page 60 Monday, September 15, 2003 4:56 PM

X Staout1






X Staout2








Cprepairout Cppark






X Q_Label




Place the Resources for

the Inspection, Labeling

and Repair Processes




FIGURE 15.61 Layout for resources.

4. Navigate to the demos/graphics/cell directory in the software installation directory (“AutoMod”

by default).

5. Double-click the file man.cel.

6. Place the operator next to Q_Reject, as shown in Figure 15.61.

7. Repeat this process to place graphics for the other resources. You will need to rotate the graphics

around the Z axis, as shown in the table below:


Z rotation amount


180 degrees


270 degrees

15.13.5 Creating the New Processes

Add four new processes to accommodate the labeling, repairing, storage, and inspection/rejection areas

in the model.

Define four new processes:





15.13.6 Defining the Process Arriving Procedures

Instead of sending loads from the conveyor system directly to storage, loads must now first travel to the

inspection process. You will edit the model logic to reroute loads and define the procedures for each of

the new processing areas.

1. Edit the source file mycode.m.

2. Edit the P_Out arriving procedure and edit the last line to send loads to P_Inspect instead of


begin P_Out arriving procedure

travel to V_Convloc(procindex)

move into Q_Wait(procindex)/* Location to wait for a vehicle */

move into Agv.cpin(procindex)/* Get on vehicle */

© 2004 by CRC Press LLC

1241_C15.fm Page 61 Monday, September 15, 2003 4:56 PM

send to P_Inspect


3. Define a new arriving procedure for the inspection process P_Inspect:

begin P_Inspect arriving procedure

travel to Agv.cpinspect/* Travel to the inspection area */

use R_Inspect for 30 sec/* Inspect while onboard the vehicle */

send to oneof(10:P_Reject, 15:P_Repair, 75:P_Label)


The inspection procedure sends loads to the control point cpinspect. There the loads are inspected

while still on the vehicle. The inspection process sends loads to one of three processes using a

oneof distribution (each load has a 10% chance of being scrapped, a 15% chance of needing repair,

and a 75% chance of passing inspection and going directly to the labeling area).

4. Define the arriving procedure for the rejection process P_Reject.

begin P_Reject arriving procedure

move into Q_Reject/* Get off vehicle */

wait for 30 sec

set A_Time to ac - A_Time/* Calculate cycle time for rejected loads */

print this load, “was rejected. Total time in system was”

A_Time to message

send to die


Rejected loads get off the vehicle in the inspection area and delay temporarily in Q_Reject before

leaving the simulation. Because rejected loads leave the simulation, their cycle time must be

calculated and printed in the P_Reject arriving procedure.

5. Define the arriving procedure for the repair process P_Repair:

begin P_Repair arriving procedure

travel to Agv.cprepairin/* Travel to repair area */

move into Q_Repair/* Get off vehicle */

use R_Repair for normal 6,1 min/* Repair delay */

move into Agv.cprepairout/* Get on vehicle */

send to P_Label


Loads that require repair travel by vehicle to cprepairin. Loads get off the vehicle and are repaired in

queue Q_Repair for a time that is normally distributed with a mean of 6 min and a standard

deviation of 1 min.

After repair, loads wait to be picked up by a vehicle at cprepairout and then travel to the labeling process.

6. Define the arriving procedure for the labeling process P_Label:

begin P_Label arriving procedure

travel to Agv.cplabelin/* Travel to labeling area */

move into Q_Label/* Get off vehicle */

use R_Label for 2 min/* Labeling delay */

move into Agv.cplabelout/* Get on vehicle */

send to P_Store


© 2004 by CRC Press LLC

1241_C15.fm Page 62 Monday, September 15, 2003 4:56 PM

Loads get off the vehicle at cplabelin and delay for 2 min while being labeled. The loads then wait to

be picked up by a vehicle at cplabelout and travel to the storage area, where they leave the


7. From the File menu, select Save, then Exit.

8. Export the model.

15.13.7 Modifying the Work and Park Lists

Now you must create work and park lists to cause vehicles to service the new areas.

Inspection After picking up a load from the conveyor system, each vehicle travels directly to the

inspection area. Inspection takes place on board the vehicle. Vehicles that drop off rejected loads

in the inspection area must look for work or a parking location at the other points in the system.

Repair Vehicles carrying loads that need repair drop off loads at cprepairin. The vehicles must then

look for additional work or a parking location.

Label Vehicles carrying loads that need labeling drop off loads at cplabelin. The vehicles must then

look for additional work or a parking location.

Because there are new locations where work becomes available, you must edit the model’s existing work

lists to cause loads to look for work at these locations. You will also create new work and park lists at

the new setdown locations.

The locations where vehicles set down loads or park are:

cppark (where vehicles park when idle)

cpinspect (where rejected loads get off the vehicle to leave the system)

cplabelin (where loads get off the vehicle to be labeled)

cpstore (where loads get off the vehicle to be stored)

cprepairin (where loads get off the vehicle to be repaired)

The locations where work becomes available are:

cpin1 (where loads transfer from the conveyor system)

cpin2 (where loads transfer from the conveyor system)

cplabelout (where labeled loads get back on a vehicle)

cprepairout (where repaired loads get back on a vehicle)

15.13.8 Editing Work Lists

To edit the existing work lists so vehicles look for work in the labeling and repair areas:

1. Open the AGV system.

2. Edit the work list for cppark and append the labeling and repair pickup points, as shown below:

Work list for cppark

At cpin1

At cpin2

At cplabelout

At cprepairout

Note: For optimal efficiency, locations are added to the vehicle list in order of their distance to the current

control point, with closest locations listed first. Vehicles search locations on the list from the top down.

3. Edit the work list for cpstore and insert the repair and labeling pickup points, in the order shown:

© 2004 by CRC Press LLC

1241_C15.fm Page 63 Monday, September 15, 2003 4:56 PM

Work list for cpstore

At cprepairout

At cpin1

At cpin2

At cplabelout

15.13.9 Defining Work Lists

To cause vehicles that set down loads in the inspection, labeling, and repair processes to look for work,

you must define new work lists.

1. Define a work list for cpinspect, as shown below:

Work list for cpinspect

At cplabelout

At cprepairout

At cpin1

At cpin2

2. Copy the cpinspect work list for the control point cplabelin. Vehicles look for work at cplabelin

in the same order of locations as vehicles at cpinspect.

3. Define a work list for cprepairin, as shown below:

Work list for cprepairin

At cprepairout

At cpin1

At cpin2

At cplabelout

15.13.10 Defining Park Lists

The only location at which idle vehicles are allowed to park in the system is cppark. You have already

created a park list for cpstore that causes vehicles to look for parking at this location.

To create the park lists for the remaining locations where vehicles set down loads:

1. Copy the park list of cpstore for cpinspect, cplabelin, and cprepairin.

2. Export the model.

15.13.11 Verifying the Model

1. Run the model. After picking up loads from the conveyor system, vehicles travel through the

inspection area and to the other three processes.

2. Watch the Message window. Reject messages appear, stating how long loads were in the system

before being rejected.

15.14 AutoMod Tutorial Summary

You have now created a simple model that uses conveyors and vehicles to move loads through several

processing steps. You moved the loads through the system using process-arriving procedures.

You also learned how to read standard statistics as well as create your own variables and attributes to

track custom statistics. You are now ready to learn how to use the AutoStat software to analyze a


© 2004 by CRC Press LLC

1241_C15.fm Page 64 Monday, September 15, 2003 4:56 PM

15.15 Basic Statistical Analysis Using AutoStat

When random samples are used as input for a model, a single simulation run may not be representative

of the true behavior of the real-world system. Therefore, you could make erroneous inferences about the

system if you make only one run. The AutoStat software helps you apply the proper statistical sampling

techniques to your model in order to estimate accurately performance under random conditions.

The following sections discuss how to perform basic statistical analysis on a model using the AutoStat

software, teaching you how to calculate confidence intervals for several performance metrics.

15.16 Why Use AutoStat?

The key to a successful simulation study is proper analysis. However, in too many simulation

studies, analysts spend most of their time developing the model and not enough time analyzing

the simulation results. Sometimes decisions are incorrectly based on just one run of the model.

The AutoStat software helps you to determine which results and alternatives are statistically significant,

which means that with high probability the observed results are not caused by random fluctuations but

by the change you are experimenting with.

15.17 Calculating Confidence Intervals

The example model “ASExample” illustrates why confidence intervals are important when analyzing a

random model. In this system, products have an interarrival time that is uniformly distributed between

zero and 10 min. The products go through two processes: checking and processing.

The checking process is modeled using a resource with a capacity of two. Checking each load takes a

time that is uniformly distributed between 6 and 10 min.

The processing step uses a resource with a capacity of eight. The resource can process each load in a

time that is uniformly distributed between 25 and 35 min.

The source file for the example model is shown below:

begin P_init arriving

while 1 = 1 do


clone 1 load to P_checkers nlt L_job

wait for u 5,5 min



begin P_checkers arriving

move into Q_checkers/* capacity is infinite */

use R_checkers for u 8,2 min/* capacity of 2*/

send to P_processors


begin P_processors arriving

move into Q_processors/* capacity infinite */

use R_processors for u 30,5 min/*capacity of 8 */

send to die


© 2004 by CRC Press LLC

1241_C15.fm Page 65 Monday, September 15, 2003 4:56 PM

Suppose you simulated this system for 12 h and then looked at the average time spent in the checking

process. Because there is so much randomness in the model (including the arrival times and the service

time of each process), the average time reported for the checking process for that run may or may not

be an accurate estimate of how the system behaves over a longer period of time.

Now suppose you ran the model 10 times, each time using different random numbers (such runs are

called replications). The following table shows the results of 10 such replications.


Number (I)


Average Time in

the Checking Process




















Each of these times is a valid average time for the checking process. But the range between the lowest

and highest value is 200.96 s. So what is the “correct” value, and how do you make decisions based on

these numbers?

Using the average value from a single replication can be misleading. It’s called a point estimate, and

it can be very different from the true mean of the process. The appropriate action in this case is to report

a confidence interval, not just a single number.

15.17.1 How AutoStat Calculates Confidence Intervals

The AutoStat software uses the replication/deletion technique for computing confidence intervals. The

replication/deletion method strives to use steady-state data in the formation of point estimates and

confidence intervals for the various responses, which is accomplished by obtaining the average level of

the response for each replication after a warmup period. The averages obtained after each warmup period

are independent and are approximately normally distributed random numbers. Thus, they can be used

to construct a confidence interval for the steady-state mean value of the response.

To generate the average times shown in the table above, the model was run using an 8-h warmup

followed by a 24-h snap length. Thus, the simulation was run for 8 h, at which time statistics were reset

(all statistics, except for Current values, were set to zero), to remove the warmup bias. The simulation

was run for 24 h, during which statistics were gathered. This procedure was followed 10 times, each using

different random numbers.

15.18 Performing Statistical Analysis with AutoStat

The following steps outline the process for conducting an analysis with AutoStat:






Open a model in AutoStat.

Define an analysis (for example, a single scenario analysis to determine confidence intervals).

Make the runs.

Define the responses (statistics that you want to measure).

Display the results.

© 2004 by CRC Press LLC

1241_C15.fm Page 66 Monday, September 15, 2003 4:56 PM

The rest of this chapter walks you through these steps to determine the confidence intervals for example

model “ASExample.”

15.19 Opening a Model in AutoStat

To use the AutoStat software, you must open a model that has been compiled in AutoMod.

To open example model “ASExample” for use in the AutoStat software:

1. In the AutoMod software, import “ASExample.”

2. From the Run menu, select Run AutoStat.

3. In the confirmation window, click Yes to build the model. After the build is complete, AutoStat

opens, and the AutoStat Setup wizard opens.

The first time you open a model in AutoStat, use the AutoStat Setup wizard to set the parameters for

your analysis.

15.19.1 Using the AutoStat Setup Wizard

Whenever you open a model for the first time in the AutoStat software, the AutoStat Setup wizard asks

you to:

Indicate whether the model contains randomness.

Determine a time limit to stop models that are potentially in an infinite loop.

Estimate the model’s warmup length.

Define how long to run the model to collect statistics.

Indicate whether to use common random numbers for the analyses.

The information in the wizard is used to define several model properties. The following sections explain

the questions that the wizard is asking.

Note: While using the AutoStat software, click Help if you want more information about a particular screen.

In the AutoStat Setup Wizard window, click Next to advance to the first question in the wizard. Is the Model Random or Deterministic?

As discussed earlier, when a simulation model contains random input (such as the random arrival and

service times in the example model), the statistics from one run may not be representative of long-term

average system output. Therefore, you need to perform multiple replications (runs using different random

numbers) to get an accurate understanding of the system’s behavior, including meaningful confidence


Note: A deterministic model contains no random input and therefore no variability in output from run to

run, so only a single run of each scenario is necessary. Very few simulation models are deterministic.

1. Select Model is random.

2. Click Next. Do You Want To Stop Runs That May Be in an Infinite Loop?

An infinite loop causes a model to repeat the same section of logic so that the simulation never ends. If

you are using AutoStat to make runs, the software can automatically stop a run that seems to be taking

longer than you expected.

The example model runs very quickly (in about 1 or 2 s) if it is working correctly. If a run takes

substantially longer than that (for example, 30 s), it might indicate that there is an infinite loop in the

model and that the run should be canceled.

To set an infinite loop time of 30 s:

© 2004 by CRC Press LLC

1241_C15.fm Page 67 Monday, September 15, 2003 4:56 PM





Select Yes to indicate that you want to set up an infinite loop time limit.

Click Next.

Type “30” in the Maximum run time text box and select seconds from the drop-down list.

Click Next. Does the Model Require Time To Warm Up?

If a model does not reflect the state of the system being modeled at the beginning of the simulation, it

needs to warm up, or “reach steady state,” before you gather statistics.

Some systems start “empty,” such as service centers. In these systems, there are no customers left over

from the day before, and new customers cannot enter the system until the center opens in the morning.

Systems such as the factory in the example model, however, are usually full of products that are spread

throughout the factory and that are in various stages of being manufactured. In the example model,

loads do not get created until the simulation starts, so it will take some time before the system is primed

with jobs. Therefore, you want to set up a warmup time and discard statistics gathered during that time.

1. Select Yes to indicate that the model requires a warmup time.

2. Click Next. What Is the Estimated Warmup Time?

AutoStat can perform an analysis to determine the amount of time the model requires to warm up;

however, conducting warmup analyses is not discussed in this chapter. For this example, make a rough

estimate without the help of AutoStat and say that the simulation takes 8 h to warm up.

To define the warmup time:

1. Type “8” in the warmup estimate text box and select hours from the drop-down list.

2. Click Next. Do You Want to Create the Warmup Analysis?

For this example, assume that you have estimated the warmup correctly and do not need to conduct a

warmup analysis.

1. Select Do Not Create Analysis.

2. Click Next. What Is the Snap Length for Collecting Statistics?

After the warmup time, the statistics are going to be reset and then collected for some amount of time.

The statistics-gathering time is called the snap length. The length of the snap varies depending on whether

the system modeled is a terminating or a nonterminating system. In a terminating system, the snap length

is equal to the length of the system’s operation. For example, if you were simulating a bank that is open

from 9:00 A.M. to 5:00 P.M., the snap length would be 8 h.

In a nonterminating system, the snap needs to be long enough to collect meaningful, representative

data from the system. The time required varies from system to system and is best determined by someone

familiar with the system’s operation.

The example model currently completes about 300 loads in 24 h, which is meaningful enough to

generate confidence intervals for this small model.

To define the snap length:

1. Type “24” in the Snap length text box and select hours from the drop-down list. Note: The run

control in AutoStat always overrides the run control defined in AutoMod.

2. Click Next. Do You Want to Use Common Random Numbers?

If you are analyzing a simulation to compare multiple system configurations (scenarios), you might want

to design your model to use common random numbers. This method of analysis is also known as

© 2004 by CRC Press LLC

1241_C15.fm Page 68 Monday, September 15, 2003 4:56 PM

correlated sampling. Using common random numbers allows you to analyze configuration changes while

duplicating the experimental conditions for each configuration (that is, random events do not change

from one configuration to the next). For the purposes of this example, do not use common random


1. Select No.

2. Click Next. The last screen of the wizard displays.

3. Click Finish.

The information in the wizard is used to set up the model properties. You can change any of these settings,

such as the snap length, warmup length, and so on, at any time by editing the model properties (discussed


4. From the File menu, select Save to save the properties.

15.19.2 Editing Model Properties

If you need to change a model property after you have run the Model Setup wizard, edit the model


To edit the model properties:

1. From the Properties menu, select Edit Model Properties. The Model Properties window opens.

2. When conducting your own analyses, you may want to change some of these values. For this

example model, however, do not change any of the properties.

3. Click Cancel to close the Model Properties window.

15.19.3 The AutoStat File System

When you open a model and set it up in AutoStat, several directories and files are created (see Figure


The main AutoStat directory is the .sta directory. The .sta directory contains all the AutoStat information for a model. The .sta directory contains a file called astat.sta.xml, which contains all the information about the model properties you set using the wizard, as well as information for analyses (which

you will learn how to define in this chapter).

Once you have made runs for your analyses, numbered run directories are created, which contain

message files, reports, and information about each run.

15.20 Defining a Single Scenario Analysis

As mentioned earlier, AutoStat can conduct several types of analyses. In this chapter, you will learn how

to conduct a single scenario analysis, in which you can run your model “as is” (without any changes) in

order to compute confidence intervals and other statistics.

To define a single scenario analysis:





From the Create New Analysis of Type drop-down list, select Single Scenario.

Click New. The Single Scenario Analysis window (Figure 15.63) opens.

Name the analysis “Example Single Scenario.”

Type “10” in the Number of Replications text box and pressTab. AutoStat will make 10 runs, with

each run using different random numbers for each random event in the model.

For confidence intervals, you should use at least three to five replications. The greater the number of

replications or the longer the snaps, the narrower the confidence intervals.

For the example model, you want to use the default run control, which you set up using the wizard,

so do not make any other changes in this window.

You have defined the single scenario analysis. Now you are ready to make the runs.

© 2004 by CRC Press LLC

1241_C15.fm Page 69 Monday, September 15, 2003 4:56 PM

FIGURE 15.62 AutoStat file system.

FIGURE 15.63 Single scenario analysis.

15.21 Making Runs

There are several ways to make runs for an analysis in AutoStat. In this example, you can make the runs

directly from the Single Scenario Analysis window.

Click OK, Do These Runs. AutoStat makes 10 runs, recording the statistics.

You can also make runs using either the Execution menu or the Runs tab using the following options:

Do All Runs Makes all runs that have been defined for all analyses.

Do Some Runs You can select the analysis for which you want to make runs.

© 2004 by CRC Press LLC

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

13 Adding the Inspection, Labeling, Repair, and Rejection Processes

Tải bản đầy đủ ngay(0 tr)