A Tutorial on the Basics of SIGMA
An overview of SIGMA simulation modeling is presented in this tutorial. In a few minutes you will learn how to build and run fast and flexible simulations of any system of any size and complexity. As you advance with SIGMA, you will learn how to to use it to create simulation products that can be easily integrated into dynamic spreadsheets or web sites for serious experimentation. Remember as you explore SIGMA that it is designed for powerful analysis, when answers are needed in addition to animations. SIGMA also does animations and these can be rather fancy, but it is intended to be used as an analytical tool - in addition to, not instead of, your favorite animation software.
All primary elements of event relationship graph modeling are explained here. Further technical details, including building animations, are presented in the support site.
Using SIGMA for the First Time
|SIGMA Overview 6 min 0 sec|
Watch | Download Script
|This tutorial gives an overview of the SIGMA interface and how to run a simple carwash example.|
Starting a SIGMA Session
Double click on the Sigma desktop icon to begin a SIGMA modeling session. SIGMA automatically loads your last model, but you can easily open another model using the File/Recall menu or File/Open Event Graph Model commands - or double click on a model (*.MOD) file in the Sigma Models folder in My Documents.
The SIGMA Modeling Environment
A simulation graph window similar to the one below will appear when a SIGMA session begins. This is the primary window for a SIGMA modeling session. Linked to this modeling session are simulation plot windows and output windows.
Note: Several SIGMA modeling sessions may run simultaneously; thus, several simulation graph windows representing different models may be open at one time.
There are three regions in the simulation graph window: the model creation area (the region in the center of the window), the menu bar (located along the top of the window), and the toolbar (located along the right side of the window).
The various push buttons in SIGMA are identified below. The Start Run and End Run tools allow you to start or stop a simulation run; the Select or Edit, Create Process, and Create Single Edge tools let you quickly create a model; the Single Step tool allows you to watch the simulation as each event is executed; and the Run Time Information and Show SIGMA Version tools provide you with additional information. In addition, you can create custom toolkits that emulate any discrete event simulation software engine since event graphs are Turing Complete (see sample toolkits).
|Select or Edit|
|Create Single Edge|
|Show SIGMA Verion|
A window is activated when the mouse pointer is clicked anywhere on it. As the various windows are activated, the menu bar changes. The menu bar for the simulation graph window contains the following menus: File, Edit, Run, Variables, Zoom, Window, and Help. The simulation plot window contains the File, Edit, Options, Window, and Help menus; the output window contains the File, Edit, Search, Window, and Help menus.
When a SIGMA session is started, the mouse pointer is normally in Create Process mode (). It is in this mode that the graphical components of a simulation model are created. If you click your right mouse button, the mouse pointer will change to Select or Edit mode (). This mode is used to add or change information related to specific vertices or edges. Just double-click on a vertex or edge, and an Edit Edge or Edit Vertex dialog box will appear. Add information or make changes by clicking on the appropriate box and entering the data from the keyboard. Clicking the right mouse button will cause the mouse to alternate between the Create Process mode and Select or Edit mode. Pressing the appropriate push buttons on the tool bar will also activate the Create Process mode or the Select or Edit mode.
Exploring A Basic Model
We will use a previously created model, CARWASH.MOD, to examine the components of a SIGMA model. To begin, start a SIGMA session. Open CARWASH.MOD by pressing the File\Open command, pressing Event Graph, and then double-clicking on CARWASH.MOD from the list of previously created models in the dialog box.. This model is represented below.
CARWASH.MOD has only two state variables: QUEUE, the number of cars waiting in line, and SERVERs, the number of currently idle washing machines. Four events are represented by the four vertices, or nodes, in the event graph (the event node shapes are a matter of taste and can be easily changed). The RUN event starts the simulation, the ENTER event models customers entering the carwash, the START event occurs when a car starts service in the washing bay, and the LEAVE event occurs when a car finishes service and leaves a washing bay. The time intervals between successive customer arrivals to the carwash are independent and random.
Click the mouse on the Variables->Create/Edit menu command to see the list of state variables for this model in the State Variable Editor dialog box. Any state variables you define can be used anywhere in your SIGMA model. We refer to them as state variables to emphasize that they are accessible to all parts of the model. Clicking on one of the state variables in this dialog box will cause the details associated with that state variable to be displayed in the input boxes above (as below).
The dialog box for state variables, like other SIGMA dialog boxes, has a line for a brief description of the object. These descriptions are important; they appear as comments in your SIGMA-generated simulation source code and automatic English documentation and can make your model much easier to understand. Click on the Cancel command button to close the state variable dialog box and return to the simulation graph seen previously
We will further explore this model by clicking the mouse on elements in the event graph. Make sure that the mouse pointer is in Select or Edit mode (). Read the description in each dialog box as we examine the vertices and edges in the event graph.
Double-click on the RUN node or vertex. This node, whose dialog box is shown below, was the first vertex created in this model. SIGMA calls the first node created vertex number 1; it will always be executed first when the model is run. (This first node is colored green on the screen.)
The RUN vertex has a parameter: the state variable, QUEUE. When CARWASH.MOD is run, you will be asked to provide an initial value for the number of customers in the QUEUE when the system opens for service. All SIGMA state variables are initialized to be equal to zero. The only state change associated with the RUN vertex is to make the SERVER available (SERVER=1). To exit, click your mouse on the Cancel command button.
Notice there are buttons labled "Execute" and "Remove" - these can be used to force events to occur (or cancel scheduled events) during a simulation run. This gives you powerful real-time run control unique to SIGMA. You can create, edit, and execute completely new events at any time while your simulation is running.
The ENTER vertex is where customers join the line. Open the dialog box for the ENTER vertex. This vertex simply increments the number of customers waiting in line (QUEUE=QUEUE+l). Note that QUEUE has been entered as a display variable, so its value will be shown while the simulation is running. Close this dialog box and then double-click on the START vertex.
The START service vertex is where the server is made busy (SERVER=O) and the number of customers waiting in line is decremented (QUEUE=QUEUE-1). Close the START vertex dialog box and open the LEAVE dialog box.
The LEAVE vertex makes the server available to serve other customer (SERVER=1). Note that if the variable, QUEUE, were defined as the number of customers in the total system (in service as well as in line), QUEUE would be decremented in the LEAVE vertex rather than in the START vertex. Close this dialog box.
The event vertices are relatively straightforward in discrete event models. The complexity of the models comes at the edges of the event graph, where the dynamic and logical relationships between events are specified.
Next, we will examine each of the arcs (or edges) in our event graph model. These arcs define the relationships between model events. Below is the edge dialog box that you should see if you double-clicked on the arc between the RUN vertex and the ENTER vertex.
We see that this edge has the condition (TRUE or 1==1). As in the C programming language, == is a test for equality in SIGMA. Thus, this edge unconditionally (1==1 is always TRUE) schedules the first customer to ENTER the system. There is no time delay between starting the RUN and the first customer ENTERing the system. Here no attribute values are passed, and the execution priority, used to break time ties between events scheduled to occur at the same clock time, is set to a neutral value of 5. (Attributes and parameters are powerful elements in SIGMA; they allow simple vent graph components to be used to create models of huge and complex systems. Both are discussed in greater detail in Building Models.) Click the Cancel button on this edge dialog box.
Next, double-click on the self-scheduling edge from the ENTER vertex to the ENTER vertex, which perpetuates customer arrivals. The most notable item in this dialog box is the Delay time. Here, the delay between successive customers ENTERing the system will be a time uniformly distributed between 3 and 8 minutes. This is done by making the delay time for this edge equal to the expression, 3+5*RND. RND is a SIGMA function providing a fraction that behaves like a random number between 0 and 1. Thus, 5*RND will be a number somewhere between 0 and 5; adding 3 will shift the range of this number to between 3 and 8.
Any expression whatsoever can be used to model delay times (even negative times if you should want to ammend something that happened in the past) - or you can use one of the many probability distributions included in SIGMA.
Close this dialog box and open the dialog box between the ENTER vertex and the START vertex. The item of interest on this edge is Condition: SERVERS>0. This means that a customer ENTERing the system will START service without delay only if that customer finds that the server is available, i.e., if the condition SERVERS>0 is true. Close this dialog box.
Double-click on the edge between the START vertex and the LEAVE vertex. Note that this edge is a double edge: with one edge from the START vertex to the LEAVE vertex and another edge in the reverse direction, from LEAVE to START. The dialog box for this multiple edge is shown in below.
Double-clicking on one of the sub-edges in the multiple edge dialog box will produce the dialog box for that particular edge. For example, if you double-click on the line for the edge from START to LEAVE, a dialog box for that edge will appear.
The edge between the START vertex and the LEAVE vertex has a delay time of 5 to 25 minutes, indicating that it will take this much time to wash a single car. Now cancel the dialog box for this sub-edge and look at the dialog box for the sub-edge from the LEAVE vertex to the START vertex.
The dialog box for the edge from LEAVE to START tells us that if there are customers waiting in line (QUEUE>O) whenever a customer LEAVEs the system, the server will START service on the next customer in line. To return to the event graph for CARWASH.MOD click the Cancel button on the dialog box and clicking the Close command button on the multiple edge dialog box.
Editing the Carwash Model
To get a feel for editing graphical objects, double-click on the edges or vertices in the graph. Then click on some of the items in the dialog boxes and use the keyboard to enter changes to the model. (Pressing the OK button will cause your changes to be temporarily recorded in the model.)
After you have edited a few dialog boxes, click on the File menu and click again on the Open/Event Graph command. Click No when asked if changes to CARWASH.MOD should be saved. (Clicking Yes will save the changes you just made to the model.) Next, scroll through the list of model file names until you see CARWASH.MOD. Double-click on CARWASH.MOD to reread the initial version of this model into SIGMA. The simulation graph shown previously should appear again.
If you saved your changes to the model, CARWASH.MOD, a backup copy is also saved in your directory as CARWASH.BAK. Read CARWASH.BAK into SIGMA and save it as CARWASH.MOD, if necessary.
Running the Model
Before you create your own simulations, you should know how to run SIGMA models. Here, we use a simple carwash model to show the basic components of a simulation run.
Start a SIGMA session and open CARWASH.MOD. Next, open the Run/Options menu command. A Run Options dialog box will appear like that below.
This dialog box controls how CARWASH.MOD executes. The Description of the model is: AN AUTOMATIC CARWASH. The Output File is the name of the file on your default disk drive where the numerical output from the simulation will be written; here it is UNTITLED.OUT. The Random Number Seed is set at 12345, and the Run Mode chosen for this model is Graphics mode, meaning that we will see a logical animation of the model during execution. The variables to be recorded and plotted during the run are QUEUE and SERVERS.
WARNING: You should not use a write-protected network drive as your default drive. If you are running SIGMA from a network server, your default drive is probably write-protected. Thus, you will get a system error message if you run the simulation. You must add a drive letter before the output file name in the Run Options dialog box. For example, you should change UNTITLED.OUT to C:\UNTITLED.OUT so you can write the output to your C: drive.
The Initial Attributes for the model are 5 and 3. The first event created in CARWASH.MOD was named RUN, which has the two input parameters QUEUE and SERVERS. In order to run this model, we will need to specify an initial value for QUEUE and for SERVERS as prompted in this dialog box. Here the initial value for the variable QUEUE is given as 5 and for SERVERS is 3, meaning that there will be five customers in line when a carwash with three washing bays opens.
When you finish this tutorial use CARWASH.MOD to model are really HUGE system, such as an internet server farm. Simply set SERVERS to 100000 and divide the message (instead of cars) interarrival time by 100000. Note the run will not slow down when modeling huge systems as it does using other simulation modeling approaches. This is a powerful feature of this type of simulation modeling. This
In this model, the ending condition chosen is Stop On Time. The run will stop after the clock has advanced to a time equal to or greater than 100. This dialog box also controls output plots. Here the Output Plot check box is selected, so a simulation plot will appear when the model executes.
Click the OK & Run button at the bottom of this dialog box. (Respond OK if a dialog box appears with the question "Replace existing UNTITLED.OUT?" Also, press No if asked to save changes to the model.)
Watch the graph as the model runs. A simulation plot window with graphical data should appear beside the simulation graph window. (You can slow down the execution speed by pressing [F2] and resume by pressing [F3].) When the run is finished, you can look at the numerical output by clicking the Yes button when asked to "View output trace now?" Enlarge the output window by pressing the Maximize button; scroll through the file to view the entire contents.
A portion of the numerical output for this run is given below; it is a record of the run history. There is an entry for each occurrence of every event that was monitored from Time 0 to Time 15. (For CARWASH.MOD, the Trace Event box for every vertex was clicked on in the Edit Vertex dialog box, indicating that all events were to be traced.) Here we see the simulated time, the name of each event that was traced, the number of times each event took place, and the values of the Trace Variables, QUEUE and SERVER, at those times. Note that there is a separate column for each traced variable.
Standard SIGMA Output File for the Model, CARWASH.MOD
Model Name: CARWASH.MOD Model Description: AUTOMATIC CARWASH Output File: CARWASH.OUT Output Plot Style: NOAUTO_FIT Run Mode: GRAPHICS Trace Vars: QUEUE,SERVER Random Number Seed: 12345 Initial Values: 5 Ending Condition: STOP ON TIME Ending Time: 100.000 Trace Events: ALL EVENTS TRACED Hide Edges:
Time Event Count QUEUE SERVERS
0.000 RUN 1 5 1 0.000 ENTER 1 6 1 0.000 START 1 5 0 3.483 ENTER 2 6 0 5.000 LEAVE 1 6 1 5.000 START 2 5 0 10.000 LEAVE 2 5 1 10.000 START 3 4 0 10.653 ENTER 3 5 0 15.000 LEAVE 3 5 1
To return to SIGMA, click the Close command under the Output Control menu.
The following sections provide additional information concerning the various options available under the Run Options dialog box.
The Description text box allows you to provide a brief description of your model. Although not executable, all of the descriptions in SIGMA are important. The descriptions will appear as in-line comments in your SIGMA-generated simulation source code and English translation.
The Output File text box allows you to name the file in which you want the numerical output recorded. The default output file name is UNTITLED.OUT. The name of the event, the time each event executed, the number of times each event occurred, and the current values of all state variables that were chosen to be traced are recorded in your output file. (You choose the events that are to be traced by clicking the Trace Event check box On or Off in the dialog box of each vertex.) This output file is readable by a spreadsheet.
WARNING: SIGMA will not let you write your output over an open file, such as your model. It is advisable to end output file names with .OUT and model files with .MOD.
After the simulation run is complete, a dialog box will appear asking if you want to view the output trace now. If you click the Yes button, the output from the simulation will appear in a third window titled UNTITLED.OUT. Click the Maximize button to see the full screen. After examining the output, click the Restore button to return to the previous screens. When you have an opened output file on the screen, you can view the recent history of the output while the model is running. To do so, activate the simulation graph window, restart the simulation, and then press the "Refresh" button (in the upper left corner of the output window) while the model is running to update the output file during the run. Long output files should be read by a spreadsheet.
WARNING: Your network might not allow you to save your output on a write-protected or an unrecognized disk drive. If you are using a network, you must specify your complete path, including the drive letter.
The output from SIGMA models is in standard ASCII format that is compatible with most statistical analysis packages. For very large output files, the View Text window in SIGMA will not be able to show the entire output file. If this is the case, a message will appear on the screen. Most likely, too many vertices have been traced. Turn off some traced events in the Edit Vertex dialog boxes or use any ASCII editor (e.g., Windows Notepad) to view the entire file.
The four run modes available in SIGMA can be found in the Run Mode drop-down list. They are Single Step, Graphics, High Speed, and Time Steps. Note that the run mode can be changed during a run. Simply open the Run Options dialog box during the simulation, click on the Run Mode drop-down list, click on the new run mode, and click the OK command button.
In Single Step mode, the simulation will halt after each vertex is executed and wait until the Single Step tool is pressed. This run mode permits you to monitor state variable changes and the list of scheduled events. This mode is particularly useful when verifying the logic of a simulation. When you run a model in Single Step mode, the Single Step Window will automatically open on the screen. This window will show the current clock time, the event being executed, the number of times the event has executed, the value for each state variable being traced, and the pending events list. Included in the window is the Single Step tool. Click the mouse on the Single Step tool or press [Enter] to advance the simulation to the next scheduled event and update the Single Step Window.
Close this window by clicking on the Single Step Control menu and then clicking the Close command or clicking the Close button.. Please note that if you close the Single Step Window during a run, the simulation will revert to Graphics mode. If you want to return to Single Step mode during a run, you must click on the Run Time Information tool to reactivate the Single Step Window.
In Graphics mode, vertices and edges change color as the simulation progresses. Edges change color when their conditions are tested as being true, and vertices flash when they are executed. You see the model being executed. Any event that does not execute during a run will remain shaded. The presence of vertices that never execute may indicate an error in your model logic. This run mode allows you to get a feel for how the model behaves. Hence, it is a good initial method for reviewing your model. If you choose to activate the Run Time Information tool during Graphics mode, a Trace Window that is very similar to the Single Step Window will appear. However, you do not need to do anything to advance the simulation; it progresses automatically. If the simulation graph window is active, pressing [F2] will slow the model execution and pressing [F3] will restore it to its original speed.
High Speed run mode bypasses the graphics in SIGMA and produces an output file. High Speed mode is useful particularly when running large simulations for long periods. While High Speed mode does produce a simulation plot as the model runs, it is wiser to turn the Output Plot check box Off so that the plot is suppressed or minimize the plot window. If execution speed is really important, selecting the Fast (C Source) option from the Run menu may be a better idea.
Time Steps run mode is useful for working with spreadsheets. The graphs, plots, and output files are updated only when the simulated time advances.
Translate your model to an external application via the Fast (C Source) option (CTRL+F5) for dramatically faster run times. Also minimizing the number of windows open, including plots and graphs, will speed up the runs considerably.
Two methods are available within the Run Options dialog box to terminate a run. With Stop On Event, the simulation will terminate after a particular event occurs a specified number of times. With Stop On Time the simulation will run until the first event after the specified time. To control the run duration based on a particular event, click on Event in the Stop On block of the dialog box. Two boxes will appear: a Stop Event drop-down list with all the events in the simulation and an Iterations input box. Suppose, for example, that our carwash simulation is to run until the tenth customer departs. Thus, the run would be controlled by the LEAVE vertex, and the number of executions of this vertex would be 10. You would activate the Stop Event option, click LEAVE, and then type “10” in the Iterations box.
If you want to run your simulation for a specific time, click the Time option and enter the amount of simulated time the run is to take.
To stop in the middle of a run, click the mouse on the End Run tool. This stops the current simulation run; however, confirmation is requested to prevent accidentally halting the run. Of course, if the future events list becomes empty during a run, the run will also terminate.
In the Trace Variables text box, you select the state variables to be recorded and displayed during the run. You list the state variable names (with subscripts in square brackets if appropriate) in a string separated by commas. It is advised to list only a few variables in each run.
In the Initial Attributes text box, you can specify the initial values for some state variables. These are the values for the parameters of the first vertex you created in this model. When you run a model, you must give initial values for all the variables you specified as parameters for the first vertex you created regardless of how you might have named them. Initial attribute values are entered as a string of numbers separated by commas.
Another starting condition for a simulation is the seed for the pseudo-random number stream; this is any valid integer between 1 and 65000. Enter a random number seed in the Random Seed text box or use the default random seed 12345.
It is easy to use any random number algorithm in a SIGMA-created simulation engine to implement multiple and antithetic streams in designed variance reduction techniques. As better generators are created, they can be immediately used without changing your SIGMA models. Examples and templates are given in the on-line documentation.
Graphical plots of the data from a simulation are available to you while the simulation is running if the Output Plot check box is clicked On. (See examples of plots in Output Analysis.) A dialog box will appear when the Initial Plot Defaults button is clicked prior to the creation of a plot window. This box, shown below, allows you to set up the plots as you wish.
There are seven plot types available in the Plot Types drop-down list. They include step plots and line plots (which show how variables change over time), scatter plots (which show the relationship between pairs of variables), array plots (which show all elements of an array), histograms (which count the values of variables), autocorrelation plots (which show second-order dependence in the output), and standardized time series (which can be used to detect trends and initialization bias). Plot Creation options include: creating a new plot for each run or having a new plot overwrite the previous plot. Placement Options are also available.
Note that double-clicking anywhere in the simulation plot window during a run will open the Output Plots dialog box, shown below. In it, you can change the plot type and its characteristics. Click the down arrow at the right of the Plot Type drop-down list to see the various plot types available to you. If you click on a different plot type and then click the OK button at the bottom of the dialog box, you will see a new graphical representation of the output.
The Step Plot, Line Plot, and Scatter Plot have identical Output Plot dialog boxes. For these plots, you can select the X Axis (horizontal) and Y Axis (vertical) and their limits. The Array Plots, Histogram, Autocorrelation, and Standardized Time Series have slightly different dialog boxes. You should experiment with all of them at some time.
Since SIGMA is designed for creating general, fast simulation engines to be integrated into spreadsheets or web sites, output can easily be pasted into, say Excel, using the Edit->Copy Data menu command - then simply paste the output into your spreadsheet.
Labels and Axes: You can select a font type for the title and axes labels for all plots by clicking the Select Font command under the Plot/Edit menu. The Title Font Size Multiplier box (on the Output Plots dialog box) can be used to make the title of the plot larger or smaller than the axes labels.
Data Truncation and Scaling: The Min (lower) limit and Max (upper) limit for the X Axis can be used to eliminate data from each end of a run that might be contaminated by run initialization or termination bias.
An initial truncation point can be changed anytime during a simulation run to study its effects.
Note that truncating biased data in this way is only effective after a run has been completed since these limits will be rescaled during a run (if the automatic rescale switch is turned on as it should be). Although it is much less common, you might also want to set maximum and minimum limits for the Y Axis to focus on a particular range of values or to plot several different output series on the same scale for comparison purposes.
Batching: In the X Axis group, you are also given the option of setting a batch size for the output data. Batching simulation output data is a common smoothing technique where adjacent and exclusive groups of observations are averaged.
The batchsize can be changed anytime at will during a simulation run to examine its impact.
The resulting series of "batched means" can then be plotted and analyzed. A detailed example of using batched means to estimate confidence intervals is given in Output Analysis.
Histograms: The histogram plot gives the relative counts of observations in different intervals (called cells or "slices"). The Histogram Plot dialog box has as its Y Axis the count of the number of observations in each slice. You can change the number of slices to obtain smoother or more detailed histograms.
Autocorrelation Plots: The autocorrelation plot gives the correlations between observations in the output series as a function of how close they are to each other. The X Axis for this plot is the "lag" between the observations (a lag of 1 is for neighboring observations and a lag of 2 is for observations that have one observation between them, etc.). Setting a fairly small maximum value for the lag is a good idea for two reasons: computing the values for this plot will be faster with a small maximum lag, and because correlation estimates for observations that are far apart are not very accurate.
Trend Detection: The Standardized Time Series (STS) plot is a powerful tool for both confidence interval estimation and detecting trends in the output data. Standardized time series are sensitive to changes in the level of a sequence of observations. This is particularly useful in detecting initialization bias in a simulation output series. If the STS plot seems to be rather jagged and spends about the same time above and below zero, then there is probably not much of a trend in the output. If the STS plot is smooth and pulled off in either a positive or negative direction, an increasing or decreasing trend is indicated. A positive trend pulls the STS series to the positive side of zero, and a negative trend pulls the STS plot to the negative side of zero. For practical purposes, you can simply look to see if the STS plot tends to be positive (negative) during a run, indicating an increasing (decreasing) trend in the data.
Examples of using STS plots to detect very weak trends in the output data are presented in Output Analysis. A detailed discussion of using STS information to estimate confidence intervals also is deferred to Output Analysis.
The command buttons in the Run Options dialog box are OK & Run, OK, and Cancel. The first saves changes and runs the model, the second saves changes and returns to the static simulation graph, and the third simply closes the dialog box without saving the changes.
Creating Custom Simulation Products
To experience a unique, powerful feature of SIGMA, click the Run->Fast menu command. This will automatically generate portable source code for your simulation model. This code will automatically be compiled into a very fast executable and run in a DOS window. Just answer the questions to create a spreadsheet output file for a run.
Batch experimental design execution
Simply copying and altering your responses to a simulation engine (*.exe) run into a notepad text file (with one line per run and spaces between responses), creates a batch experimental design file (or "frame") for multiple runs. Save and name this file the same name as your model, but with an *.exp extension. Double click the *.exe engine to run the full experiment in batch mode. Examples of a simulation products created using SIGMA simulation engines are in the XLDEMO1 and XLDEMO2 folders
Run SERVICE.XLS in the XLDEMO2 folder
Simulation engine editing
Since you have complete source code for your model, you can edit it and just double-click the _recompile_model.bat file to generate a new simulation engine. Edit your code as you wish with any ordinary text editor.
Using Text Files
Now that we have gone over the model, CARWASH.MOD, in detail, you might be interested in looking at how it is stored on your computer. The model is stored in a text file by the same name, CARWASH.MOD. To look at this file, first open the File menu and click the Text Data/Output command. A dialog box will appear. Click on the down arrow in the drop-down list under List Files of Type and then click on the Other Files option to have all the files included in the list box of file names.
Use the scroll bar to locate CARWASH.MOD in the list box; click once on CARWASH.MOD to insert this file into the File Name input box. Next, click the OK command button. When the text file appears, you will notice that SIGMA models are saved simply as copies of the dialog boxes for each of the objects in the simulation. Close the file.