You are on page 1of 49

Welcome to Arena simulation software tutorial number 1.

This and other Arena tutorials are meant to be run as PowerPoint slide shows. Audio narration is available for each slide by clicking the speaker icon. Audio narration is complete when you hear this click. By the way, the picture is the F-22 production line.

The primary source for this and other Arena tutorials is the Simulation with Arena book. The book is not required for these tutorials and the associated homework assignments, since these tutorials and the free documentation that comes with the free student version of Arena provide all the information you need to obtain a working knowledge of how to do system simulation with Arena. If you would like additional information on Arena, you can order the book through the Arena web site.

Here are two more books on Arena simulation that you might find useful.

In a few slides, we will see how to download the free student version of Arena. Once you have downloaded Arena, you can follow the directory path shown here to get the free Arena documentation. There are also plenty of examples of system simulation provided on the Arena web site.

Here are the goals of this tutorial. First, we will introduce a simple example of a simulation problem. Then, we will download and install the Arena software. Next, we will build a simple model for our example problem. Finally, we will run the simulation and interpret the results.

Here is our simple example. You are responsible for making sure that your company, Gizmatics International, can meet the required rate of shipment of gizmos to your major customer, Rolls-Rice, which manufactures an automobile which runs on renewable resources, primarily rice rolls. It is this unique aspect of the Rolls Rice that has allowed the company to be the only survivor of the recent auto industry crash. Our goal in this tutorial is to simulate performance of the critical process of drilling the gizmos center hole.

The down side to all this is that Rolls Rice has called you to inform you that in order for them to stay in business, you may be required to triple your production rate for gizmos while simultaneously slashing gizmo price in half. Thus, you need to be ready to make massive changes to your gizmo production line. But you dare not try any changes to production that could hurt cost and delivery more than it helps. By creating a model and running simulations of production changes on the model, you feel that you can predict the impact of production changes before actually implementing them on the shop floor. So, in essence, the entire auto industry, and therefore the entire world economy, depends on your ability to model gizmo production.

A key step in your manufacturing process is the drilling of the hole in the center of your gizmos, everything else in the process is pretty simple. Here we show your drill press process. Note that if gizmos arrive at the drill press while another gizmo is being drilled, they wait their turn in a queue of gizmos. In this picture, you have finished drilling the first gizmo that you received in the shop order you are working on, and you are drilling the second. Two more gizmos are in the queue. Theres one thing we need to mention about your gizmo drilling process. Before the gizmos come to the drill press, they are sprayed with a secret anti-oxidation coating that protects the gizmos coming to the drill press. The problem is that this coating degrades rapidly, so the gizmos cant sit around too long waiting to get drilled.

Here are the key metrics for your drill press process. Our goal is to build a simulation model that predicts the values of all of these metrics under different operating conditions. Note especially the maximum time in queue, and the maximum time in process, which is the time it takes for any gizmo to pass through the queue and drill press. These are critical variables because of the degradation of the anti-oxidant coating applied to the gizmos.

Before we start building any models, we need to know some simulation terms: Entities are the things that flow through the process we are modeling. They are the things that get worked on by the process. Different types of entities can be flowing through the process at the same time. Resources are the things that do the work on the entities. Just as there can be multiple types of entities in a model, there can be multiple types of resources. More than one type of resource may be needed to work on an entity. Events are things that happen to entities as they flow through the process. For now, we have just two types of events: entities arrive at a processing step or its queue, and depart from the process after being serviced. Attributes are characteristics that are common to all entities of the same type, but are unique to each particular entity. Entities may have many characteristics, but attributes are just the characteristics that we need to track in the model. For now, our entities have just two attributes: arrival time and service time. Variables are like attributes, except that they apply to the entire process, not just an entity type, so sometimes they are called global variables. One often-used variable is the system clock, which is like a stopwatch which keeps time while the simulation is running.

10

To start building our model, we draw this simple representation of the drill press process using the modeling terms we just learned. We call the gizmos entities, and call the drill press a resource. Remember, entities are the things that get worked on in a process, and resources are the things that do the work. As noted, the entities wait in a queue to be serviced by the resource.

11

In the model we are preparing, there are two types of events. Entities arrive at a resource to be serviced, which is one type of event. After the entities are serviced, they depart, which is the second type of event. Every event that occurs in the model has an event time associated with it. For the situation shown here, we see both the arrival and departure event times for Entity 1, which has departed from the process. We see only the arrival event time for Entity 2 because it is being serviced, and we see only arrival event times for 3 and 4 because they are in the queue.

12

Here is some additional terminology. Entities have attributes, which are characteristics common to all entities of a particular type. Here, our gizmo entities have two attributes of interest to us: arrival time and service time, which for our example is the time it takes to drill a gizmo. The simulation clock keeps track of time as the model runs. The simulation clock is known as a global variable, or just variable, since it applies to all of the entities and resources in the model.

13

OK, lets download the software. Start by going to the url shown here. When you are there, you need to sign up for the software. After you have created an account, re-load the url, and then sign in. This will kick off a typical sequence for downloading a .zip file.

14

When the download .zip file is opened, you will see the Welcome to Arena screen. Choose Install Arena. On the Setup screen, enter your information, with STUDENT as your activation code. On the Wizard, go with Standard Feature Set, unless you have some need to customize your setup. At this point, Arena should complete the installation procedure, and you should be ready to build a simulation model.

15

OK, fire up Arena and lets get going. Heres what you should see if the installation went properly. You will be assembling your model in the model window flowchart view and spreadsheet view. You also see here the project bar, which is showing the Basic Process template panel that contains the various modules we will be using to build our models. Click OK to get going.

16

You should see the Basic Process panel on your screen when you fire up Arena. If not, click on the Template Attach icon to see the Attach Template Panel box. Select the BasicProcess.tpo template. As you can see, theres lots of other cool templates in there, too, some of which we will use in future tutorials.

17

Just to be on the safe side, lets save our new simulation model right now. Name it Model_3_1.doe. Our first model will be pretty much the same as the model with this name in Chapter 3 of the Simulation with Arena book. This and other models should also appear in the Arena directory on your computer when you installed Arena.

18

Now lets name this model. Go to Run Setup screen.

Setup to bring up the oddly named Run

On the Project Parameters tab, title your model Model 3.1, and enter your name as the analyst. Describe the project as Arena Tutorial 1. OK, lets build a model.

19

From the Basic Process template, drag a Create module onto the flowchart view of your model. Now, drag a Process module, and then a Dispose module onto the model. If you have Auto-Connect selected in the Object tab, the modules will automatically connect themselves in the order that you place them. If they do not, well see how to connect them on the next slide.

20

To manually connect modules, select the Connect tool, click the output of the module that entities will be moving out of, and then click the input of the module that they will be flowing in to. These connectors are directional, so you need to connect outputs to inputs in that order. By the way, to delete a connector, right-click it and then select Delete.

21

Lets take a moment to look at our model to see what the modules do. The Process module is, of course, the process step that we are modeling, but what do the Create and Dispose modules do? Well, our goal is to watch entities flow though our model. These parts need to come from somewhere, so we need to include a source for entities in our model. This is what the Create module does, it creates the entities that will flow to the Process module. Similarly, we need to have these entities go somewhere after they are processed, otherwise theyll just continue to accumulate in the Process module. The Dispose module takes care of this. We can think of the Create and Dispose modules as representing processes upstream and downstream from the process we are modeling.

22

Lets add some specific information to our model, starting with the Create module. Double left-click on the Create module to open its Create dialog box. We name the Entity type being generated by this module as a Part, and we Name the module Part Arrives to System. We see that the parts arrive at the system one-at-a-time, that the first part arrives at time = 0, and that this module will just continue to create parts until the simulation is terminated. Well explain what the Time Between Arrivals box is about in a few slides.

23

When you select a module in the flowchart view, the updated information shows up in the spreadsheet view of the module. Here, information about the Part Arrives to System module is shown in the Create entry in the spreadsheet view of the model. You can change this information directly in the spreadsheet view instead of going to the Create dialog box as we did on the last slide.

24

Now select Part Arrives to System by left-clicking this module. Click on Entity in the Basic Process panel to access the Entity information for this module in the spreadsheet view. You see lots of information about this module in the Entity screen that appears, but for now well just change the animation Initial Picture to Blue Ball.

25

Ok, now lets add some information to the Process module. Well name it Drilling Center. The drilling center is where you will be drilling gizmos. The Delay Type is Triangular. Well explain this in a few slides along with the Random (Expo) value we just saw in the Type box for the Create module. Change the Units, Minimum, Value, and Maximum numbers for the Triangular Delay Type as shown. The Action for this module is Seize Delay Release, which we will also explain in a moment. When you select Seize Delay Release, the Resources box opens up, which is where you specify what resource you will seize. Click on Add to specify the resource.

26

When you click on Add, the Resources box opens up. The resource we will use in the Drilling Center is a Drill Press, so enter this in the appropriate box. This is the drill press that we use to drill gizmos. Now, whats this Seize Delay Release Action all about?

27

For the Drilling Center, we selected Action as Seize Delay Release. From the models perspective, seize, delay, and release is the sequence of the three actions that occur when a Part entity flows into the Drilling Center from the Part Arrives to System module. As we mentioned earlier, resources are the things that do the work on entities. When a part arrives at the Drilling Center, we say that this process seizes all of the resources that it needs to perform this operation. Here, the only resource used by the Drilling Center process is a Drill Press. After seize, the next action in the seize-delay-release sequence is delay. From the perspective of the model, the part simply sits in the Drilling Center for some period of time getting drilled. After this period of time, the Drilling Center releases the Drill Press resource for other processes to use, which completes the seize-delay-release sequence for this process module.

28

Just to finish up this part of our discussion, we only need one Drill Press to perform the work done in the Drilling Center, so we indicate that here. Now, we assume that other processes may want to use the Drill Press at the same time that the Drilling Center does, so there will be competition for this resource. Here, we have assigned the Priority of the Drilling Center as Medium, meaning that if there is a conflict, a process with a High priority will be able to seize the Drill Press resource before the Drilling Center.

29

After specifying the resource for the Drilling Center, the model shows a queue graphic for the Drill Press resource. This is where the blue ball symbols for parts in the drill press queue will show up when we run the model. Our next step is to change the name of the Dispose module to Part Leaves System. OK, were almost ready to test our model, but we have some loose ends to take care of first.

30

For the Part Arrives to System module, we specified a random exponential Type for Time Between Arrivals, and for the Drilling Center, we specified a triangular Delay Type. These settings determine the timing of events in these modules. For the Create module, the timing relates to when new entities are created. For the Process module, the timing relates to how long the entities are delayed in the module.

31

For the random exponential distribution of times between arrivals, you specify the average time between arrivals, and then Arena picks some random time of arrival for each arriving part based on the exponential curve drawn here. The curve itself shows the probability of the next part arriving at the drilling center x minutes after the previous part has arrived. So, if the Value is set to 5 minutes, the times that Arena uses for individual entities will range from 0 minutes to infinity, with the average time being 5 minutes. For an exponential distribution, 50% of the entities will arrive before the average time, and 50% will arrive after.

32

A similar concept applies to the triangular distribution for the delay time in the Drilling Center process module, except here the probability distribution is, well, triangular, not exponential. For the triangular distribution, you specify the minimum delay time, the maximum delay time, and the most likely delay time, which is the peak of the triangular distribution. One nice thing about the triangular distribution is that it does not go off to infinity.

33

Now, slide the animation speed slider bar all the way to the left to slow down the running speed of the simulation, and then press the run key. You should see an animation of the parts running through the Drilling Center. Your model will merrily create and drill gizmos at a dizzying pace until you click the stop button to complete this run of the simulation. When the run is complete, you will have the option to see the results, but well just skip this for now. Great! Youve built and run your first Arena simulation!

34

This is a generic example of the type of things that appear as you run an Arena model. Keeping an eye on these model features can help you verify that your model is running correctly.

35

Heres an important note regarding running Arena simulations. Because we are using the free student version of Arena, we can only have 150 entities moving through our simulation at any point in time. If you violate this restriction, you will get the Arena gray screen of death. This and the following Technology Forge Arena tutorials have been tested to prevent this from happening, so if it does, you probably set up your model incorrectly. This error often occurs when a large number of entities accumulate in a particular process queue. This can be caused by two conditions: - You have connected your modules incorrectly, so the entities cant get out of one of the modules. - Your time units for one or more modules or for the Run Setup is incorrect, so something is happening much faster or slower than it is supposed to, which causes the backup of entities in a process queue.

36

Lets add a few bells and whistles to our simple simulation. Here, we will see how to animate resources. After selecting the Drilling Center module, click on the Resource button to open up the screen shown.

37

Click the drop-down box for Identifier and select Drill Press. Select the Inactive icon box and click Delete. Do the same for Failed. Now select Busy and click Open. In the Open box, navigate to the Arena folder in Rockwell Software, and then select Machines.plb.

38

Scroll around the pictures until you see something that looks somewhat like a drill press drilling something. Select the picture, then select Busy, then click the move icon to use the picture when the Drill Press is Busy. Then find a picture for when the drill press is Idle and repeat this configuration procedure.

39

Heres the results of assigning pictures to states for the Drill Press. Note that we selected Auto Scale for these pictures. Click OK to return to the flowchart view.

40

When you return to the flowchart view of your model, there will be a resource button icon floating around on the screen. Unfortunately, the print screen function used to prepare the screenshots in these tutorials doesnt capture this icon, so you cant see it on this slide. Anyway, find a spot for your drill press pictures and click to place the animation.

41

So much for bells and whistles, lets generate some reports to see how our process is doing. On the Run Setup screen, set the Replication Length to 24 hours. The demand for gizmos has your shop working around the clock, with no breaks. Also, set the Base Time Units to Hours. This means that all the times shown on the reports we will generate will be in hours. As you can imagine, we can change this to other units if we want. Now run the simulation.

42

Heres the situation after 24 hours of running. We see that 327 gizmos needed drilling, and that you managed to drill 276. This means that 51 are in the drilling center. Assuming that 1 gizmo is being worked on, this means that 50 are waiting to be drilled at the end of 24 hours. Note that due to randomization factors, your numbers here and on the following slides may vary. Note that this is true for ALL of these Arena tutorials. Now lets look at the report.

43

Sure enough, here are the 276 gizmos that made it through the drilling center. Lets see what else we can find. Please note again that if you run this simulation, your results for the outputs shown in this tutorial may vary from what is given here. This is due to the fact that different computers may generate different sequences of random numbers for the Create and Process time distributions.

44

Recall that these are the measures we said we were interested in at the beginning of this tutorial. Lets find the results for these metrics in the report.

45

Going to the Resource section of the report, we see that the drill press is drilling gizmos virtually all the time, that is, the drill press is never sitting idle waiting for gizmos to arrive. On the other hand, the Queue section of the report shows that the average gizmo spends around 1.93 hours waiting to be drilled, with one gizmo waiting 3.95 hours. We typically have about 26 gizmos waiting to be drilled, but need to reserve floor space at the drill press for 57 gizmos.

46

The Entity section of the report shows that it takes about 2 hours for gizmos to make it all the way through the process, with the maximum time for our simulation being 4 hours, although one part got through in about 4 1/2 minutes. This gives us an average velocity through the system of 0.5 parts per hour. Well talk about the other measurements provided by the Arena reports in future lectures.

47

Two final comments. If you do choose to see the reports, you need to go to the Windows tab to get back to your model. Also, you need to stop the simulation in order to start working on the model again.

48

This concludes our first Arena tutorial, where we learned the basic elements of simulation model building.

49

You might also like