Quick Tours in Powersim

  Tour 1: Running The Market Growth Simulator

  Tour 2: Building Your First Model!

  Tour 3: A More Advanced Model

  Tour 4: Turning a Model Into a Simulator

Note	Before you start, make sure that your Powersim is in simplified mode (check Simplified User Interface in the View menu).

See also

  Printing a help topic

  Main Powersim help


Printing a help topic

To print a help topic from the main window

•	Click the Print button in the toolbar, or

•	Choose File Print Topic.

To print a help topic from a secondary window (Windows 95 only)

1	Click the right mouse button in the secondary window that you want to print.

2	Select Print Topic in the right-button menu that appears (see below).


Tour 1: Running The Market Growth Simulator

  Introduction to Tour 1

  Opening the Market Growth Simulator

  About The Market Growth Simulator

  Running The Market Growth Simulator

  Some Tests to Consider

  Changing the Behavior

  Let the Experiments Begin!

  The Final Stop of Tour 1


Introduction to Tour 1

This is the first in the Quick Tours series. The purpose of this tour is to introduce you to the capabilities of Powersim. The Market Growth Simulator is based on a simple model pertaining to the growth of a company in an unlimited market. Because the model was made into a simulator, you have the opportunity to interact with the model without actually having to see it. This tour will give you a quick glimpse into the world of business simulators. Then, if you are interested, the remaining tours will start you on your way to building simulators of your own.

In this tour, you will learn how to

•	Open a simulator in Powersim

•	Simulate a model

•	Define and use a business simulator

•	Change the parameters of a simulator using Powersim objects such as slider bars and check boxes

Approximate Completion Time: 1 hour


Opening the Market Growth Simulator

To open the Market Growth Simulator

1	Open Powersim by choosing the Powersim icon [image] in Windows.

2	Click on the Open button [image] on the toolbar.

3	Open the Samples\UserGuid directory (under the Powersim directory).

4	Double-click on the file name MARKGRWT.SIM.

5	The simulator that appears on your screen should look like this:

The Market Growth Simulator


About The Market Growth Simulator

The simulator presented in this tour is based on a model of the interactions between a sales force and its market. As the salespeople book orders, some of the revenue generated by the orders is used in a budget to hire new salespeople. The orders received automatically add to a backlog, as no inventory is represented. As the backlog builds, there is a delay before the customers in the market recognize that the company is operating with a delivery delay. Customers become more aware of the delivery delay as time passes, which makes it harder for the sales force to convince potential customers that they should buy from this company. Their sales effectiveness drops as the delivery delay becomes more apparent in the market, stagnating the growth of the company by stalling the growth in the number of orders booked by the sales force. The growth of the company is therefore limited in an unlimited market.

This situation is depicted by the interface of the simulator. The pictures and symbols on the screen were chosen to convey information about the structure of the model. Notice that the pictures are arranged in two loops, and the explanation above can be traced on them. Before going any further in the discussion of the simulator and its behavior, you will perform a first run.

Note	The Market Growth Simulator is based on a model originally developed by Jay W. Forrester.


Running The Market Growth Simulator

To perform a simulation run

1	Click the Run button [image] on the toolbar.

2	Watch the development of the graphs as the model simulates from Week 1 to Week 250. Notice how the different result presentations develop as time elapses.

3	When the simulation is done, the simulator should look like this:

The Market Growth Simulator after the first run

The loop on the left drives the growth in the number of salespeople. The graph inside the loop shows the sales force's behavior through time. Tracing around the loop, as the salespeople book orders, money is allocated to the budget and more salespeople are hired. This generates a growth in the number of salespeople (see the graph below), which eventually starts to falter and turn into oscillations before reaching equilibrium (straight horizontal line).

Salespeople graph

Why does growth start to falter? The answer lies in the loop on the right. The growth in the number of orders booked leads to an increase in backlog and recognized delivery delay. This lowers the sales effectiveness, thus hindering the ability of the salespeople to book orders. The graph in the loop on the right shows the development of the backlog; it is similar to the graph of salespeople. Approximately when the backlog is at its highest level, the growth in salespeople begins to stagger.

Backlog graph


Some Tests to Consider

1	Re-simulate as many times as necessary to become familiar with the movements of the variables, which are represented not only by the graphs but also by the animation of the slider bars and gauge object (Salespeople Salary, Revenue to Sales and Sales Effectiveness, respectively).

2	Pause the simulation, using the Pause button [image] , when the backlog is high.

3	Check the gauge object representing sales effectiveness; it should be low.

Backlog and sales effectiveness situation at Week 69.

4	Experiment with the simulator by pausing it at different times and checking where the sales effectiveness lies. This will give you an idea of how these variables are interacting.


Changing the Behavior

This simulator provides three parameters that can be changed to alter the behavior shown in the graphs. To adjust the values of the parameters, you must first put simulation in start-up position.

To adjust the values of parameters

1	Click on the Run Step button [image] . The Run button and the Pause button will both activate, as shown below:

2	You can now change the parameters to the values you choose.

The parameters you can change are:

  Salespeople Adjustment Time

  Revenue to Sales

  Salespeople Salary


Salespeople Adjustment Time

Salespeople Adjustment Time determines how aggressively the company can hire new salespeople. The default value for this parameter is medium, which means the company is neither rushing nor avoiding new hires. A short adjustment time indicates a hiring policy geared for fast growth of the company, while a long adjustment time means the company is reluctant to take on additional personnel. It is changed in the simulator by clicking on a check box.

Salespeople Adjustment Time adjustment box


Revenue to Sales

Revenue to Sales is the amount of money from each order sold that is allocated to the budget for hiring salespeople. The default value is $10, as shown on the slider bar. Adjusting this value higher or lower creates more money or less money, respectively, for hiring people. To adjust the slider bars, click on the rectangle in the middle of the object and drag it to the right or left.

Revenue to Sales adjustment bar


Salespeople Salary

Salespeople Salary is also adjusted with a slider bar. The default salary is $2,000 per salesperson per month. The budget is divided by the value set for the salary to determine the number of salespeople that can be hired. Increasing the salary will decrease hiring, and vice versa.

Salespeople Salary adjustment bar


Let the Experiments Begin!

You are now ready to experiment with different values for these three parameters. The beauty of a simulator is that you have a laboratory with which to experience the effects of different policies without causing any damage to a real organization. We suggest that you start by varying only one parameter at a time. Before simulating, ask yourself what should happen in response to your change. Then simulate and check the results with your mental simulation. As you get a feel for this simulator, your mental simulations will become more accurate.

To guide you in your experimentation, think about these questions:

1	How would you slow the growth of this company?

2	How would you dampen or eliminate the oscillations, but still allow for growth?

3	Is it possible to allow for growth in Salespeople but still keep Backlog relatively low, thus keeping Sales Effectiveness high?

It will be helpful first to understand how each parameter alone changes the behavior of the model. Then you will be in a better position to combine changes by altering more than one parameter at a time to reach your desired behavior. First, however, you need to know how to control the simulations.

  Controlling Simulations

  Trying Out Strategies

  After Your Simulations


Controlling Simulations

There are four buttons in the toolbar to control simulations:

Run	Run Step	Pause	Stop
To use the control buttons

•	After starting the simulation with the Run Step button and changing parameters, you can continue to run the simulation step by step by clicking on the Run Step button as many times as necessary.

•	To have a continuous simulation, click on the Pause button to release it. You can pause the simulation at any time by selecting the Pause button again. Each time the simulation is paused, you can change the parameters.

•	To stop the simulation completely before it reaches Week 250, click on the Stop button.

•	To run the simulator continuously before changing parameters (or without changing parameters at all), use the Run button. Use the Pause button to change parameters, or do nothing to let the simulation continue to the end.


Trying Out Strategies

When you feel comfortable with the use of each parameter and simulation control button, you can try to formulate and implement your own strategies. For instance, if you want an exclusive hiring policy requiring extensive screening of applicants, you would probably set your Salespeople Adjustment Time to Long. If you want to attract well-qualified applicants as well, you may offer a larger salary. Whatever your policy, you can set the parameters to represent it and then simulate.

Try to find an optimal strategy. Optimal can be whatever you define it to be. Perhaps you want stronger growth but no oscillations, or slower growth that lasts longer, so the model does not reach equilibrium during the simulation. You are the boss of this company and have full autonomy.


After Your Simulations

You have now completed your experiments with the simulator. We hope you were able to accomplish your goals. You were probably surprised more than once. Perhaps you were also able to answer the questions presented earlier.

•	You may have found that it is possible to slow the growth of the company, while still keeping it exponential for a longer time, by increasing Salespeople Salary and decreasing Revenue to Sales (values of 3,000 and 9.8, respectively, work well).

•	A smooth S-shape growth, signifying an approach to equilibrium without oscillations, can be accomplished simply by changing the Salespeople Adjustment Time to Long.

•	The simulator also allows for moderate growth in Salespeople without extreme growth in Backlog. Changing Salespeople Salary to 3,000 and Salespeople Adjustment Time to Long results in 18 Salespeople and fewer than 14,000 orders in the Backlog. Sales Effectiveness stays high throughout the simulation.

The range of behavior possibilities of this simulator is quite wide. Keep trying new combinations until you are familiar with the capabilities of the Market Growth Simulator.


The Final Stop of Tour 1

Congratulations! You have finished the first tour of the Quick Tours series. This tour was designed to introduce you to the use of business simulators. We hope you are convinced that Powersim is the right tool for you to use in creating your own business simulators. Powersim, with its support of both model development and interface creation, was designed to provide for all your needs when you are ready to make your own simulators. You may have noticed that this tour did not show you how simulators are made. You will gain that knowledge by following the rest of the tours. Because a simulator consists of both a model and an interface, you must first learn about building models in Powersim. Tours 2 and 3 teach you about model building. Then, in Tour 4, you will complete the mission of the Quick Tours series--you will learn how to create a simulator from the model that you build in Tours 2 and 3!


Tour 2: Building Your First Model

  Introduction

  In this tour, you will learn how to

  The Companys Story

  Building the Model

  Performing the First Test Run

  Model Behavior

  The Final Stop of the Tour


Introduction

The purpose of this tour is to guide you through the creation of your first model with Powersim. You will be presented with information about a fictitious company called ABC Manufacturing. You will be able to follow steps that will take you through the creation of a model based on the information you have read. Before jumping right into the construction of the model after reading, you might take some time to think about what a model of the company's problem might look like. You could try to identify levels (stocks) and rates (flows) from the description given. Then, when you feel comfortable with the information, you can check your mental model of the problem by proceeding with the step-by-step description of our model. Remember, there is no single correct way to model a problem, so feel free to be creative in this exercise!

Approximate Completion Time: 1 Hour


In this tour, you will learn how to

•	Place the building blocks of models (levels, rates, etc.) on the screen and connect them

•	Define these building blocks using equations and Powersim functions

•	Convert general information about a problem into levels, rates, etc.

•	Initialize a model

•	Simulate a model, including

- the concept of equilibrium

- shocking a model

•	Report simulation results

•	Conduct a brief analysis of the behavior of the model


The Company's Story

ABC Manufacturing would like to use simulation to better understand the interactions between the amount of merchandise the public orders and their inventory and production levels. They often experience oscillations in their inventory and production levels, so they think the first step in solving this problem is to build a model that would explain the relevant interactions. They know that their production policy consists of two components--increasing or decreasing the inventory to match an optimal or desired level of inventory and keeping inventory high enough to cover what they expect their demand will be in the future. To be safe, they like to keep four times as much inventory on hand as they think will be needed to cover demand. In addition, production is set so that one-sixth of the discrepancy between the desired and actual inventory is corrected every week.

Their assumptions about future demand are based on the current order rate. The current order rate constitutes the real demand that the company faces. Their policy to formulate their expected demand is simple. They want to correct one-eighth of the difference between their real and expected demands every week. When their beliefs about future demand change, this affects their desired level of inventory and the rate at which they produce widgets, according to the production policy described above.

When widgets are produced, they go straight to a warehouse to be stored as inventory. No product can go from the production line straight to the customer; it must go into the inventory first. Shipments are made only from this inventory. Because the company keeps four times as much inventory as they think they will need at any time, they believe they are able to ship the necessary products to fulfill every order. Therefore, they are not concerned now with backlogs and their effects (although a negative inventory, while meaningless in reality, can here be construed to represent a backlog).


Building the Model

You can now use this information about the company to create a simulation model. You will start with the concept of inventory.

  Modeling Inventory as a Level

  Modeling Production and Shipments as Flows

  Making Production Depend on Inventory

  Adding the Concept of Desired Inventory

  Adding Production Time

  Starting to Define Variables

  Defining a Unit of Measure

  Defining the Initial Value of Inventory

  Documenting the Inventory Variable

  Defining the Production Rate

  Defining the Time Constant

  Adding an Order Rate

  Defining Shipments

  Adding the Concept of Expected Demand

  Letting Expected Demand Influence Production and Desired_Inventory


Modeling Inventory as a Level

An inventory represents an accumulation of items, in this case widgets. It should be modeled using a level, so you should place a level on the workspace and give it the name "Inventory." This can be done with a few simple steps:

To create and name a level

1	Using the left mouse button, click on the level icon [image] in the toolbar.

2	Position the pointer on the workspace, and release the level by clicking again on the left mouse button. Result:

3	Replace the name "Level_1" with the name "Inventory" by typing directly from the keyboard. Result:


Modeling Production and Shipments as Flows

Inventory must be increased and decreased in some way. Production is a flow that adds to inventory, while shipments drain inventory. You can add these two variables to the model by following almost the same procedure as above.

To connect a production rate to the level

1	Select the rate icon [image] in the toolbar.

2	Align the cursor to the left of the level.

3	Click and hold the left mouse button. A cloud symbol with an arrow connected to it appears.

4	Drag the rate into the level until the level changes color, and release the mouse button. Result:

5	Name the rate "Production". Result:

To connect a shipments rate that drains the level

1	Again, select the rate icon [image] in the toolbar.

2	Click and hold the mouse button with the cursor positioned in the middle of the level symbol.

3	Drag the rate out of the level, a few inches to the right, and release the mouse button. Result:

4	Name the new rate variable "Shipments". Your diagram will now look like the one shown below:


Making Production Depend on Inventory

From the information about the company that was given above, you know that production depends on several factors, including the difference between the actual inventory and the desired inventory. To formulate the production equation, you need to link variables to the production rate. Because production is adjusted according to the difference between desired and actual inventory, you need a link that shows that inventory has an effect on production.

Note	The link tool allows you to draw a line from one variable to another variable that it affects. The direction of the link is always from the cause to the effect.

To draw a link from Inventory to Production

1	Select the link tool [image] from the toolbar.

2	Position the cursor in the middle of  the level symbol.

3	Click and hold the left mouse button, and drag the line to the production rate (the circle, not the pipe) until the rate changes color.

4	Release the mouse button to complete the connection. Result:


Adding the Concept of Desired Inventory

To represent the difference between inventory and desired inventory in the production equation, you need another variable. Desired inventory is not a real accumulation of inventory, so it can be represented with an auxiliary.

To create a new auxiliary and connect it to Production

1	Select the auxiliary tool [image] from the toolbar.

2	Create an auxiliary variable and position it below Production.

3	Name it Desired_Inventory.

4	Connect it to Production so that your model looks like the one shown below:


Adding Production Time

The third component of production is the time factor, which is one-sixth. This time factor represents a delay in the system because in real life, production cannot instantly fill an inventory. It takes time to make the goods and physically transport them into a warehouse. In this case, one-sixth of the discrepancy between actual and desired inventory is corrected each week. So, if the desired level of inventory increases by 100, for example, it will take six weeks for the inventory level to increase by 100. This time factor does not change throughout the simulation, so it should be represented with a constant.

To add a time constant to the model

1	Select the constant tool [image] from the toolbar.

2	Create a constant variable and position it above Production.

3	Name it Time_to_Correct_Inventory.

4	Connect it to Production. Result:


Starting to Define Variables

The model is not finished yet, but you can begin to define some of the variables on the screen. Variables in Powersim are defined using the Define Variable dialog box, shown below.

To open the Define Variable dialog box

1	Double-click on the variable that you want to define. We shall define Inventory first, so double-click on this variable. Result:

Note	The Define Variable dialog box consists of many sections that are represented using drop-down lists, check boxes, text boxes and push buttons. At this time, you will be concerned with only a few of these.


Defining a Unit of Measure

In the upper right corner of the Define Variable dialog box, you will notice a drop-down list labeled Unit of Measure. This is where you add units to your model.

To enter a unit of measure for Inventory

1	Position the cursor inside the Unit of Measure box and click the mouse button once.

2	This Inventory is an accumulation of widgets, so type the word "Widgets" in this box.


Defining the Initial Value of Inventory

The next box you will use is the Definition text box. You want to give your stock an initial value because you must give Powersim a starting point in the equations to simulate the model. As an initial value, you can use 400.

To enter an initial value for Inventory

1	Click the mouse button inside the Definition box.

2	Type "400".

3	Click the Set button to confirm the definition.

Note	Powersim automatically generates the rest of the level's equation using any flows that are connected to it.

To inspect the flow part of Inventory's definition

1	Click on the radio button labeled Flow. You will then see the flow part of Inventory's definition.


Documenting the Inventory Variable

The last box you will use at this time is the Documentation text box. This box is used to add comments for each variable in the model. You can write anything you feel is necessary to explain the variable to someone who is unfamiliar with your model. Each model consists of a set of assumptions. What is obvious to one modeler may not be obvious to another, so these comments can be useful when the model will be shared among people.

To enter documentation of Inventory

1	Click the mouse button inside the Documentation box.

2	Type a short description of the level in this box.

3	Check your dialog box with the one shown below:

4	Close the Define Variable dialog box by clicking on the OK button at the bottom of the box. The resulting stock-flow diagram will be like the one shown below:

5	Notice that in the stock-flow diagram, the "?" that was inside the level is now gone. This indicates that the level is now defined.


Defining the Production Rate

To define the Production rate, you must write an equation. Before you do so, you need to expand the Define Variable dialog box to uncover the Linked Variables list.

To expand the Define Variable dialog box

1	Double-click on the Production rate to open Define Variable. Result:

2	If the Define Variable box on your screen looks like the one above, click on the More button in the lower right corner to extend the dialog box.

The Linked Variables list should now be available. The Production equation must use all the variables found in this list.

Note	The Linked Variables list contains all the variables that you have linked to the current variable using the link tool. Powersim requires that you use all the linked variables in the definition of a variable.

You know the production policy of this company is to correct the discrepancy between the desired and actual inventory levels over a period of time. This is captured in the following equation:

Production =(Desired_Inventory - Inventory)/Time_to_Correct_Inventory

You can add this equation to your model by following the steps below.

Note	You do not need to retype the variable names; simply double-click on a variable in the Linked Variables list to have it appear in the Definition box.

To define the Production rate

1	Click in the Definition box to place the write cursor inside this box.

2	Type a left parenthesis "(" from the keyboard.

3	Double-click on Desired_Inventory in the Linked Variables list to insert it in Definition.

4	Type a minus sign "-" from the keyboard.

5	Double-click on Inventory in Linked Variables.

6	Type a right parenthesis ")" and a slash "/" from the keyboard.

7	Complete the equation by double-clicking on Time_to_Correct_Inventory.

8	Looking at the equation, your units are (Widgets-Widgets)/Weeks, so you can type "Widgets/Week" in the Unit of Measure box.

9	Click the Set button to confirm the definition.

10	You should also type a description of this variable and check your progress against the figure shown below.

11	Click on OK to close Define Variable. Result:


Defining the Time Constant

The last variable you can define at this time is the constant Time_to_Correct_Inventory.

To define the time constant

1	Double-click on Time_to_Correct_Inventory.

2	Define this variable, including documentation, so that your definition looks like the one shown below:

3	Click on OK to close Define Variable. Result:


Adding an Order Rate

To define Shipments and Desired Inventory, you need to add more variables to the model. This company fills every order by shipping items from inventory. Their order stream from the public can be represented with an auxiliary.

To add and define the order rate

1	Create an auxiliary, position it just to the right of Shipments, and name it Order_Rate. Result:

2	Open Order_Rate's definition dialog box.

This variable represents an outside influence on the model. As such, it can be used to "shock" the model to reveal its behavior under a simulated change in demand. You can introduce a 20% increase in the demand for widgets with the following equation:

Order_Rate = 100 + STEP(20,20)

This equation uses a STEP function to increase the orders from 100 to 120 in period 20. It is a simple representation of an order stream, but it will give you an idea of how inventory reacts to changes in orders. The behavior of this equation over time is shown graphically below:

3	First type "100 + " into the Definition box.

4	Then scroll down the Functions list until you find STEP. Result:

5	Double-click on STEP to paste the STEP function template into the Definition box. Result:

6	Double-click on «Height» to select the first argument of the function. Result:

7	Type "20" to set the step height (how much the Order_Rate will increase at the specified step time).

8	Double-click on «StepTime» and type 20. Result:

9	Shipments will be measured in Widgets/Week. Since this unit was added to the list of units when you defined Production earlier in this tour, you can simply click the arrow on the right side of the Unit of Measure box. Result:

10	The list opens, and you can choose the unit name rather than retyping it. Each time a new unit is entered it is added to the list.

11	Fill in a proper documentation text, for example "Orders shipped to the customers from the inventory."

12	Close Define Variable.


Defining Shipments

Because this company ships their product to fulfill all orders from inventory, you can link Order_Rate to Shipments and define Shipments as simply being equal to Order_Rate.

To define Shipments

1	Draw a link from Order_Rate to Shipments.

2	Double-click on Shipments.

3	In Define Variable, double-click on Order_Rate in the Linked Variables list.

4	Click OK to confirm the definition and close Define Variable.

5	Check the progress of your stock-flow diagram by comparing it with the figure shown below.


Adding the Concept of Expected Demand

The last area this model needs to address is the concept of expected demand. Expected demand is an important part of this model because it translates changes in demand into changes in production. That is, it takes market information (Order_Rate) and converts it into action that controls how much the company produces.

Demand is not a physical accumulation like inventory. It can seem like an abstract idea, with expectations about demand being even more abstract. However, the accumulations represented by stocks do not have to be physical accumulations. Since you need to introduce a delay in the changes of expected demand, it is best to model it as a level.

To add expected demand to the model

1	Create a level in your model (position it as shown below) and name it "Expected_Demand".

2	Define it with an initial value of 100 with Widgets as the unit.

3	Fill in a documentation, for example "The number of widgets believed to be sold per week".

4	Confirm the definition and close the definition dialog box.

Rates are the only elements that change levels, so you need a rate to represent the change in Expected_Demand. You also need a time factor to represent how long it takes to adjust expectations about demand to real demand.

To add a rate and a time factor to the expected demand

1	Create a new rate and let it flow into Expected_Demand.

2	Name the new rate Chng_Expected_Demand.

3	Add a new constant Time_Chng_Expectations and link it to Chng_Expected_Demand. Result:

You can now define these two new variables. You will formulate the equation for the Chng_Expected_Demand rate in the same manner as the Production rate. The equation is as follows:

Chng_Expected_Demand = (Order_Rate - Expected_Demand) / Time_Chng_Expectations

The reason for this formulation is that the rate should correct the level according to the difference between the level (Expected_Demand) and the goal for the level, in this case the Order_Rate. Management would aim to have their expectations about demand be as close to the real demand as possible, but to avoid reacting to every small change in orders that may occur, they spread the changing of their expectations across eight weeks.

To define the new expectation variables

1	Create links from Order_Rate and Expected_Demand to Chng_Expected_Demand.

2	Double-click on Chng_Expected_Demand and enter the definition "(Order_Rate - Expected_Demand)/Time_Chng_Expectations".

3	Select Widgets/Week as the measurement unit and click Set to confirm the definition.

4	From the Variables list in the upper, left corner of Define Variable (see figure below), select Time_Chng_Expectations.

5	Enter "8" as the constant definition and select Weeks as the unit.

6	As the documentation of the constant, you may write "How long it takes to adjust expectations about demand to real demand".

7	Close the dialog box, and check that your model matches the figure below.


Letting Expected Demand Influence Production and Desired_Inventory

Now what remains to do for this model is to show how Expected_Demand affects Production and Desired_Inventory. You will start by drawing the links.

To link Expected_Demand to Production and Desired_Inventory

1	Draw links from Expected_Demand to Production and Desired_Inventory.

Note	When you connect Expected_Demand to Production using the link tool, a question mark appears in Production again. This signifies that you have linked something new to Production, and you must reformulate its equation using the new variable.

The information about the company stated that they use production to cover desired inventory and what they expect demand will be. Therefore, you can simply add Expected_Demand to the equation for Production.

To redefine Production

1	Double-click on Production.

2	Redefine your Production definition so that it looks like the one shown below:

Expected_Demand + (Desired_Inventory-Inventory) / Time_to_Correct_Inventory

3	Close Define Variable.

You also know from the information given that the inventory the company wants to keep on hand should cover four weeks of expected demand. To formulate the Desired_Inventory equation, you need a constant representing this multiple of Expected_Demand. You can call this constant Inv_Coverage.

To add Inv_Coverage

1	Create a new constant.

2	Position it below Desired_Inventory and name it Inv_Coverage.

3	Define Inv_Coverage to "4", give it the unit "Weeks", and document it as "How many weeks of expected demand the inventory should cover."

4	Close Define Variable.

5	Draw a link from the constant to Desired_Inventory. Result:

To Define Desired_Inventory

1	Double-click on Desired_Inventory.

2	Formulate the definition of Desired_Inventory as:

Expected_Demand * Inv_Coverage

3	Close Define Variable. Result:


Performing the First Test Run

You have now finished the model and can simulate.

To run the first simulation with the model

1	Click on the Run icon in the toolbar [image]. Result:

You probably noticed that small graphs appear in the levels during the simulation. Also, the exact values of the levels are shown in number boxes positioned at the top or bottom of the levels. These features, called auto reports, give some indication of the behavior of the levels, but what is needed is a way of presenting the results of the simulation in an intuitive and easy-to-read manner. This is accomplished, for example, with the use of time graphs.


Reporting the Results of Simulations

You will now use a time graph to display the simulation results.

To display simulation results using a time graph

1	Click on the time graph icon [image] in the toolbar.

2	Drop the object on the screen by clicking again. You should see a small, undefined graph that looks like the one shown below:

3	To add a variable, say Expected_Demand, to this graph, simply click on the variable and hold the mouse button down while dragging it to the graph.

4	Release the mouse button when the variable icon is within the boundaries of the graph. You will see that the name of the variable is added to the graph legend on the right side of the graph:

5	Add Order_Rate and Production to the graph in the same manner.

6	Create another time graph and place it below the first one.

7	Add the variables Inventory and Desired_Inventory to this second graph.

8	Start another simulation run by clicking on the Run icon [image] in the toolbar. Result:

To make the graph curves easier to see, you can increase the width of the graphs.

To resize the graphs

1	Click once on the upper graph to select it.

2	Increase the size horizontally by dragging one of the black squares that appear at the midpoint of each side to the right.

3	Repeat 1 and 2 for the second graph. Result:


Model Behavior

Until period 20, all the variables appear as horizontal lines, indicating that the model is in equilibrium. You will concern yourself mainly with the model's behavior after period 20, when the model is knocked out of equilibrium by the Order_Rate. You defined the Order_Rate with a function that kept it equal to 100 until period 20, when it increased to 120 for the rest of the simulation. This procedure constitutes a "shock" to the model; it brings the model out of equilibrium and reveals its dynamic behavior.

The results of the shock are viewed in the behavior of the other variables. Expected_Demand can be seen to increase, but ever more slowly, until it reaches the new level of orders coming in. The rate at which it increases is slowing because the flow changes Expected_Demand according to the discrepancy between the Order_Rate and Expected_Demand. This discrepancy is at its largest when the shock occurs. From then on, Expected_Demand is growing, which makes the discrepancy smaller and smaller, thus causing less to be added to the stock each time period.

Production rises above the Order_Rate before settling into equilibrium again. Production is driven by two elements, Desired_Inventory and Expected_Demand. You have already seen that Expected_Demand is rising. Desired_Inventory is also rising (increasing the discrepancy between Desired and actual Inventory) because it is simply a multiple of Expected_Demand. The Production equation adds to the Inventory when Desired_Inventory and Expected_Demand are both rising. Intuitively, this makes sense, because a company would want to produce enough of their product to cover expected future demand as well as to keep a sufficient level of inventory on hand.

The increase in Production is also evident from the behavior of the Inventory. In this company, Shipments are always equal to the Order_Rate, so the increase in Shipments immediately starts to drain the Inventory. This increases the discrepancy between Desired and actual Inventory even more, adding to the increase in Production. When Production reaches the Order_Rate (thus reaching Shipments), Inventory reaches its minimum level. This occurs in approximately time period 25. From then on, the Production rate is higher than the Shipments rate, so Inventory is increasing. After time period 25, as the gap between Desired_Inventory and Inventory closes and Expected_Demand reaches the Order_Rate, Production decreases until it is in equilibrium. After approximately time period 70, the entire model is in equilibrium at the new, higher level of orders.

So what does all of this mean in terms of business operations? The beauty of creating such a model of a system is that it allows you to investigate not only the structure of the system (how the stocks and flows fit together) but also how changes to the structure change the system's behavior (here considered company performance). You now have a tool that will help you understand the relationships among such important business variables as inventory, production, shipments, and expectations of demand.


The Final Stop of the Tour
The Final Stop of Tour 2

The purpose of this tour was to teach you how to build a model in Powersim. If you look back on what you built, you may realize that while you were learning about the software, you were also getting a feel for the process of modeling. That is, you were getting practical experience in converting a story about a company from words in the English language to symbols in simulation language. This is a big undertaking--learning software and methodology at the same time. You will build on these skills in the next tour. Tour 3 will start with the model that you just built. It will add information to the company's story, add structure to the model, and add skills to your knowledge of Powersim. You are well advanced on the path laid out in Tour 1: the creation of a business simulator!


Tour 3: A More Advanced Model

  Introduction to Tour 3

  The Companys Story, Part Two

  Before You Start

  Revising the Model

  Performing the First Test Run

  Model Behavior

  The Final Stop of Tour 3


Introduction to Tour 3

In this tour, you will be asked to refine the model of Tour 2 and augment it with additional structure. The purpose of this tour is to improve your modeling skills and your knowledge of Powersim. You will receive additional information about the fictitious company, ABC Manufacturing. This new information will form the basis of the second version of your model. You will see that, while the model of Tour 2 was useful and insightful, it was also limited. In this tour and many times in your modeling activities, you will learn how to reevaluate an existing model and modify it to reflect new understanding of the real system. By the end of this tour, the process of modeling should be more clear to you, and you should feel more comfortable manipulating Powersim. You will also have a model that is sophisticated enough to be converted into a simulator, which you will do in the fourth and final tour.

In this tour, you will learn how to

•	Evaluate the weaknesses of an existing model in light of new information about the system

•	Add structure to an existing model to reflect the new information

•	Use the Camera icon to make copies of variables

•	Use initialization links to set the initial values of levels

•	Change simulation setup

Approximate Completion Time: 1 hour


The Company's Story, Part Two

You may remember that the managers of ABC Manufacturing wanted to use simulation to help them understand why they experience oscillations in their inventory and production levels. Looking back at the graphs you made in Tour 2, you will see that the model did not oscillate.

Oscillation occurs when the behavior of a model deviates above and below an equilibrium point. If the oscillations are damped, they will get smaller and smaller and eventually will die out in the absence of an outside force that restimulates them. The model you built in Tour 2 cannot oscillate at all, because of its structure. Because ABC Manufacturing wants a model that will explain oscillations in inventory and production levels, you must add new structure to the model and reformulate some of the existing structure.

The important question is, "What is this new structure supposed to represent and accomplish in the revised model?" The managers of ABC Manufacturing know that policies concerning their workforce are a major factor in almost any situation within the company, particularly situations surrounding production and inventory, because their workforce limits how much they can produce. When they experience increases in demand, they are able to increase their production only if they have workers available to handle the increase. Further, the productivity of the workforce is a key factor in determining production. The more productive the workforce, the smaller the workforce needed to increase the production.

When managers consider the role of the workforce, they discover that they determine how many people they want in their workforce by how much they want to produce and how productive the workers are. The formulation of the Production rate from Tour 2 is actually the desired production rate. The company  wants to produce enough to cover the discrepancy between inventory and desired inventory as well as the expected demand (with a delay to allow time to correct the discrepancy). What it actually can produce, as described above, is determined by the workforce and its productivity.

When the company knows their desired workforce, according to their desired production rate and the productivity, it can then recruit workers to expand the workforce. Recruitment must also replace workers who leave the company for any reason. Recruitment takes 24 weeks to complete, while attrition occurs over a 50-week time span. The revised version of the Tour 2 model must reflect the changes just described.


Before You Start

To complete this tour, you will need to have the model that you created in Tour 2 open on your computer.

To open the model you created in Tour 2

1	Under the File menu in Powersim, choose Open File.

2	Select or type "Inventry.sim" or the name you gave the file, and click OK.

3	The model that appears should be the one with which you ended the previous tour:


Revising the Model

  Adding a Desired Production Rate

  Adding a Desired Workforce

  Adding a Workforce

  Defining the Workforce

  Defining Recruitment

  Adding and Defining Attrition

  Redefining Production


Adding a Desired Production Rate

The easiest place to start is with the desired production rate, the formulation of the production equation from Tour 2. Because it represents a desired accumulation and not a real one, it can be represented with an auxiliary. The easiest way to switch the formulations is to replace the Production rate with the Desired_Production rate and then add a new Production rate.

To add a desired production rate

1	Reorganize the diagram to make space for the new variables. It should now look something like this:

2	Click on the Production rate and drag it away from the flow. Result:

3	Click on the link between the Production rate and the flow to select it. Result:

4	Delete the selection by pressing the Del key.

5	Rename the Production rate as Desired_Production_Rate, so your model looks like the one shown below.

6	Place an auxiliary on the screen below Inventory's inflow and connect it to the flow with the link tool. You must connect the link from the auxiliary to the valve on the flow, as shown below. When the connection is made, the valve will turn black.

7	Name the auxiliary "Production" and reposition it where the original Production rate was, without the link showing.


Adding a Desired Workforce

The desired production rate, together with productivity, determines how many workers the company wants to have. You need two items to represent these two ideas, an auxiliary representing desired workforce and a constant representing productivity.

To add a desired workforce

1	Place an auxiliary on the screen below the Desired_Production_Rate and name it Desired_Workforce.

2	Connect the Desired_Production_Rate to the Desired_Workforce using the link tool.

3	Place a constant on the screen to the right of the Desired_Workforce and name it Productivity.

4	Connect Productivity to the Desired_Workforce using the link tool. You can now define these two new elements of the system.

5	Double-click on the Desired_Workforce so that the Define Variable dialog box appears.

6	You must use both of the linked variables, Desired_Production_Rate and Productivity. Dividing the first by the second will give you the number of workers. Enter this equation into the Definition text box: "Desired_Production_Rate/Productivity".

7	The unit of measure for this variable is "Workers", so type that name into the Unit of Measure drop-down list.

8	Type documentation for this variable, such as "The number of workers the company wants to have".

9	Click on OK to close the dialog box.

10	Repeat these steps with the following information for Productivity:

Definition: 6

Unit of Measure: Widgets/Person/Week

Documentation: "How many widgets each person can complete in one week".

Result:


Adding a Workforce

The next structure to add concerns the workforce itself. A workforce can be thought of as an accumulation of workers, so it should be modeled with a level. The level must be increased with a flow, and recruitment of new workers adds to a workforce in reality, so you need a flow to represent this change. People are not found and hired instantly, however; you must also use a constant to represent the time it takes to find and hire people.

To add a workforce

1	Place a level somewhere below/right of Desired_Workforce and name it "Workforce".

2	Connect an input flow to the level and name it "Recruitment".

3	Place a constant on the screen below the Recruitment rate and name it "Time_to_Adjust_Workforce".

4	Connect these elements so your model looks like the one shown below:


Defining the Workforce

You will define these elements in the same manner as before, starting with an initial value for the Workforce. In Tour 2, you used numerical values for the initial values of the levels. Now, however, you will try something different. To bring a model  into equilibrium, it is necessary to initialize levels with their desired values. This helps to set the model so that the flows into and out of the levels are the same, thus putting the model into equilibrium. To initialize Workforce to Desired_Workforce, follow these steps:

To define the workforce

1	Use the link tool to connect Desired_Workforce to Workforce. Notice that the line becomes dashed, signifying an initialization link.

2	Double-click on Workforce to open it. Desired_Workforce now appears in the linked variables list.

3	Double-click on Desired_Workforce to have it appear in the Definition text box.

4	Select "Workers" from the Unit of Measure drop-down list.

5	Type documentation in the Documentation text box, such as "The number of workers at ABC Manufacturing".

6	Click on OK to close the dialog box.

7	Repeat steps 1 to 3 for the other two levels in the model. Use Desired_Inventory to initialize Inventory and Order_Rate to initialize Expected_Demand.


Defining Recruitment

The Recruitment policy aims to increase the Workforce to a level equal to the Desired_Workforce over a period of 24 weeks. The equation, then, is similar in form to the Desired_Production_Rate equation and the Chng_Expected_Demand equation: "(Desired_Workforce-Workforce)/Time to Adjust Workforce".

To define recruitment

1	Connect the Desired_Workforce to Recruitment using the link tool.

2	Open Recruitment and add the above equation to the Definition text box.

3	The Unit of Measure is Workers/Week.

4	Add documentation, such as "The additional workers added to the Workforce each week".

5	Click on OK to close the dialog box.

6	Define the constant Time to Adjust Workforce with the following values:

Definition: 24

Unit of Measure: Weeks

Documentation: "The time necessary to change the Workforce to its desired level".


Adding and Defining Attrition

Workers leave ABC Manufacturing after an average stay of 100 weeks. The process of attrition must be represented with a flow, signifying a loss of workers from the stock of Workforce. The time it takes to leave, 50 weeks, is of course a constant.

To add and define attrition

1	Create a flow and a constant on the screen and name them Attrition and Time_to_Leave, respectively.

2	Using the link tool, connect Workforce and Time_to_Leave to Attrition.

3	Because the hiring policy must reflect the loss of workers through attrition, connect Attrition to Recruitment.

4	Notice that a "?" appears in Recruitment. You must redefine this equation so it includes Attrition. Open Recruitment and add Attrition to the equation so it reads: "(Desired_Workforce-Workforce)/Time_to_Adjust_Workforce + Attrition".

5	To define Attrition, use the following values:

Definition: Workforce/Time_to_Leave

Unit of Measure: Workers/Week

Documentation: "The workers that are removed from the Workforce each week".

6	To define Time_to_Leave, use the following values:

Definition: 100

Unit of Measure: Weeks

Documentation: "The average length of stay for a worker".


Redefining Production

The only variable left undefined is the Production rate. You know that the company sets its production according to its Workforce and its Productivity. You need to connect these two elements of the model with the Production rate. Instead of stretching links across the entire model, however, you can use a snapshot to make a copy of each of these elements. You can then place them close to the Production rate.

To redefine production

1	Click on Workforce to select it.

2	Click on the Camera icon [image] in the toolbar and position it on the screen above the Production rate.

3	Click again. A box will appear with a list of all the variables.

4	Make sure that Workforce is selected and then click OK. A copy of the Workforce appears on the screen. It has corners around it to distinguish it from the original Workforce.

5	Connect it to the Production rate so your model looks like the one shown below:

6	Repeat steps 1 to 5, choosing Productivity instead.

7	Define the Production equation as follows: "Workforce*Productivity".

Your model should now look like the one shown below:


Performing the First Test Run

The revised model is now complete and ready to simulate.

To run the first simulation with the revised model

1	Change the simulation stop time from 100 to 250 from the Simulation Setup dialog box, found in the Simulate menu:

This lets you see the development over 250 weeks instead of 100 weeks.

2	Click on the Run icon [image] in the toolbar. Result:

Once again, as in Tour 2, the Auto Reports give indications of the behavior of the model. However, the time graphs are the best way to examine what happens during the simulation. You will use the time graphs of Tour 2 to report the simulation results of this model. You need to add Production to the graph that contains Desired_Production. In addition, you can make one more graph, to show Desired_Workforce and Workforce.

To update the time graphs

1	Add Production to the graph containing Desired_Production_Rate by dragging it to the graph and releasing the mouse button when it is inside the graph's boundaries.

2	Click on the graph icon in the toolbar and place it below the two graphs you made in Tour 2.

3	Instead of using the drag-and-drop method to add variables to the graph, double-click on the graph to open it. Result:

4	On the left side of the dialog box there is a list of variables. Select Desired_Workforce and click the Add button. Desired_Workforce then appears in the Parameters box.

5	Do the same for Workforce.

6	Click on OK to close the dialog box. You now have three graphs that show the most important variables of the system.

7	To see the behavior of the model, click the Run icon in the toolbar. Result:


Model Behavior

With the additional structure added to the model, the behavior has changed quite dramatically. The model is now oscillating. Desired_Production rises very high, then falls below the Order_Rate, and keeps doing so, crossing Production at Production's peaks and troughs. Production also increases above the Order_Rate, then falls below it, and keeps going above and below until the model reaches equilibrium after time period 250. Inventory is oscillating as well, but the peaks appear later than the peaks in Production because of the delay in getting orders through Production and into the Inventory. Finally, Workforce and Desired_Workforce are both oscillating, with Desired_Workforce crossing Workforce at the latter's peaks and troughs. You can now examine why the additional structure allows the oscillations to occur.

The Order_Rate, Desired_Inventory, and Expected_Demand structures are the same as they were in Tour 2; therefore, the behaviors of these variables are also the same. The Desired_Production_Rate is driven by the difference between the Desired_Inventory and the Inventory, plus the Expected_Demand. Desired_Inventory increases immediately with the change in orders, while the Inventory decreases immediately because the Shipments are the same as the Order_Rate. This discrepancy, then, is growing, causing the upsurge in the Desired_Production_Rate.

When the Desired_Production_Rate rises, the Desired_Workforce rises as well because the company needs more workers to handle the increase with its current productivity. Through the Recruitment process, workers are added to the stock of Workforce, causing it to follow the Desired_Workforce after a delay (representing the time it takes to hire). The increase in the Workforce allows the Production rate to increase, adding to the Inventory. You will notice that the behavior of the Production rate is quite similar to the behavior of the Workforce. The values are different, of course, but the shape of the curves is the same.

Until the Production rate crosses above the Order_Rate (and hence above Shipments), the Desired_Production_Rate is rising and the Inventory is still falling. After Production rises above the Order_Rate, however, the Desired_Production_Rate starts to fall and the Inventory starts to rise. The Desired_Workforce also begins to fall, following the Desired_Production_Rate. The Desired_Workforce is falling but still positive, so Workforce continues to rise. Once Desired_Workforce reaches Workforce, however, it falls below and starts to bring Workforce down with it. These additional workers, though, keep Production above the Order_Rate, so Inventory rises, even going above Desired_Inventory.

You can continue going through the interactions of these variables in this manner. With each iteration, it should become clearer how these variables affect one another. It should also become apparent why the oscillations are damped, that is, why they get smaller and smaller. The entire model is struggling to return to equilibrium following the shock to the Order_Rate. Expected_Demand is trying to reach the Order_Rate, Inventory is trying to reach Desired_Inventory, and Workforce is trying to reach Desired_Workforce. For the entire model to be in equilibrium, each of these parts must be in equilibrium simultaneously. You will see in the graphs, however, that when Desired_Workforce and Workforce are equal, such as approximately at time period 52, the other levels of the model are not equal to their desired levels. This situation occurs again and again, with one part reaching an equilibrium (although an unstable one) without the other parts doing so. As each of the parts gets closer to its goal, however, the model gets closer to equilibrium, until it finally reaches it after time period 250.

As with the model of Tour 2, you now have a laboratory with which to experiment. You can change the values of the constants and observe the behavior that results. Some changes may make the oscillations more severe, other changes may make them more damped. The basic shape of the graphs, however, should not change.


The Final Stop of Tour 3

The purpose of this tour was to improve your modeling skills while increasing your familiarity with Powersim. You revised and updated an existing model, as all modelers must do when relevant new information becomes available. You also learned new features of Powersim, such as the procedure to copy variables and how and why to make initialization links. You now have a model that is complex enough to be converted into a simulator. That conversion  is the focus of the fourth and final tour. In Tour 4, you will learn about some of Powersim's special features for making simulators. You will also learn the procedure for converting a model into a simulator. It is the last step to the goal presented at the beginning of the Quick Tours series--the creation of your own business simulator!


Tour 4: Turning a Model Into a Simulator

  Before You Start

  Introduction to Tour 4

  Setting Up Input Parameters

  Setting Up Result Presentations

  Adding Illustrations and Texts

  Setting Up Windows and User Access

  The Final Stop of the Tours


Before You Start

You will need to have the model that you created in Tour 3 open on your computer to complete this tour. You will also need to run Powersim in full functionality mode, which means that you will no longer work in simplified mode.

To open the model resulting from Tour 3

1	Under the File menu in Powersim, choose Open File.

2	Select or type Inventr2.sim, or the name you gave the file, and click OK.

3	The model that appears should be the one with which you ended the previous tour:

4	Delete all the time graph objects found in the document.

To switch off simplified mode

1	Toggle off Simplified User Interface in the View menu.

View menu before you do this:

View menu after you do this:


Introduction to Tour 4

This is the fourth tour of the Quick Tours series. In this tour, you will convert the model of Tour 3 into a simulator.

In this tour, you will learn how to

•	Extract model information to be used in a simulator user interface

•	Set up parameters for user input

•	Set up result presentations

•	Format numbers

•	Combine static and dynamic objects to form a simulator user interface

•	Add more windows to a Powersim document

•	Edit window attributes

•	Limit user access

Approximate Completion Time: 1 Hour


Setting Up Input Parameters

One of the decisions you have to make when you start converting a model into a simulator is what parameters the users of the simulator should be allowed to adjust. Either those parameters will be found among the existing constants in your model or you will add them just for the purpose of adding adjustment possibilities in a simulator.

It is not always necessary, or desirable, to give users direct access to all existing model constants. Some constants may not be policy or decision parameters but fixed values that do not need to be altered to use the simulator. For example, if a simulator for any reason should contain the constant Acceleration_of_Gravity, it would hardly be necessary to let the users change that one, unless, of course, they were supposed to simulate conditions on the moon or on another planet.

  Selecting input parameters

  Adding model structure to enable user input

  Defining parameter input range

  Setting up parameter input objects

  Copying a set of customized objects

  Setting up an adjustment panel combining a slider and a button

  Copying the slider + button panel

  Setting up a button for adjusting order input


Selecting input parameters

Here is a rule of thumb to identify the set of user input parameters in a model.

To select input parameters

1	Ask the following questions:

a	What are the policy or decision parameters in this system?

b	What are the constants that may change in the real system?

c	What are the parameters that influence the problem that this simulator addresses?

2	For each of the three questions above, generate a list of constants found in your model.

3	Make up a final list containing only the constants that are found in all three of the lists. In your model, you will end up with the following input parameters:

•	Inv_Coverage

•	Time_to_Correct_Inventory

•	Productivity

•	Time_to_Adjust_Workforce

4	To keep track of which constants are to be used as input parameters in the simulator, color each of the four constants listed above red. (Select a variable, open the Color menu, and choose Red.)


Adding model structure to enable user input

If a model was built to analyze a certain problem, and not necessarily as a point of departure for a business simulator, that model may lack some of the adjustment possibilities that you would like to have in a simulator. In your example, the Order_Rate is modeled as an auxiliary, with a hard-coded test function inside it. But for your inventory simulator, you would like to let the users select among several modes of order input. You will therefore start by introducing one more constant and three more auxiliaries in connection with the order rate one for each order mode.

To add model structure to enable users to select order mode

1	Create three new auxiliaries and link them to Order_Rate.

2	Name them Step_Input, Random_Input, and Cycle_Input, and define them as follows:

•	Step_Input = (100 + STEP(20, 20))

•	Random_Input = RANDOM(50, 150, 100)

•	Cycle_Input = 100 + SINWAVE(20, 100)

3	Create a new constant, color it red, and link it to Order_Rate.

4	Name it Order_Switch, define it as 1, and document it as follows:

Use this parameter to choose between three different order modes. 1=Step, 2=Random, and 3=Cycle.

5	Redefine Order_Rate as follows:

•	Order_Rate = (Order_Switch=1) * Step_Input + (Order_Switch=2) * Random_Input + (Order_Switch=3) 	* Cycle_Input

This definition will give Order_Rate the value of Step_Input if Order_Switch equals 1, the value of Random_Input if Order_Switch equals 2, and the value of Cycle_Input if Order_Switch equals 3. Result:


Defining parameter input range

To ensure proper scaling of axes in visual input objects, such as slider/bars and gauges, and to hinder users from applying illegal or crazy parameter values, you need to identify a value range for all parameters. At the same time, you will map out which kind of input method is most suitable for each parameter. The table below lists the default value, value range, and input method that you wish to use for each parameter.

Parameter	Default value	Value range	Input methods
Inv_Coverage	4	1-8	Slider, number
Time_to_Correct_Inventory	6	2-10	Slider, number, radio button
Productivity	6	3-12	Slider, number
Time_to_Adjust_Workforce	24	12-48	Slider, number, radio button
Order_Switch	1	1-3	Radio button
You make the actual definition of the input ranges for each parameter by choosing a scaling that corresponds with the value ranges specified in the table above.

To define parameter input range

1	Open the Scale dialog box from the Edit menu.

2	Select Inv_Coverage from the Variables list box.

3	Type 1 in the Min Value box and 8 in the Max Value box and click the Set button. The result should be like the figure below:

4	Repeat steps 2 and 3 for the other parameters listed in the table above, using the corresponding min and max values found in the table.

5	Click OK to close the Scale dialog box.

6	Save your document under the name INVENSIM.SIM.


Setting up parameter input objects

Based on the input methods defined in the table on page 5, you can now start creating and customizing the objects to be used for parameter adjustments. You will start by creating new objects to be used to present the constant Inv_Coverage. You will place the new objects in their own page, just below page 1.

To set up a slider for parameter input

1	Scroll down the diagram window in Powersim so that you can see Page 1 at the top of your window.

2	Create a new slider/bar object by clicking on Slider/Bar [image] in the toolbar and position it in the new page.

3	Double-click on the object to open Define Slider/Bar.

4	Add Inv_Coverage to the list of Parameters.

5	You do not want to display an object title. Click the Title button to open the Bar Title dialog box.

6	Clear the Present check box. Result:

7	Click OK to close Bar Title.

8	You do not want to display the shaded border around the slider that comes by default because it takes up too much valuable workspace. Click the Background button, clear the Shade check box, and select Border Type = None and Interior Pattern = None.

9	Close the Background Area dialog box.

10	Open the Bar Axis and Scale dialog box by first selecting Inv_Coverage from the Parameters list and then clicking the Axis button found inside the Bar group.

11	Click the Line button and set Style = None

This will remove the axis line from the slider object.

12	Close the Axis Line Style dialog box and select Tick Labels Position = None.

This will remove the tick labels (scale numbers) from the slider object.

13	Close the Bar Axis and the Scale and Define Slider/Bar to view the result

You will make just a few more adjustments to the slider before you are satisfied

•	You need to shorten the slider horizontally so it wont take up too much space.

•	You want the parameter value to appear as a number at the right side of the slider.

14	Select the object and reduce its horizontal size using the right or left side handle.

15	Open Define Slider/Bar again and change the following settings within the Number group.

16	Check the Present box. This will display the parameter value as a number.

17	Change Field Width to 5. This allows for a number with up to 5 digits, which is sufficient.

18	Open Format Box and set Border Style = None. This removes the border around the number.

19	Open Format Font and set Color = Teal.

20	Set Format Alignment = Left.

21	Close Define Slider/Bar and save your document.

22	Check that the parameter is actually connected to the slider by clicking Run Step [image] on the toolbar. The slider should now look like this:

23	Click Stop [image] on the toolbar.

24	Save the document by clicking Save [image] on the toolbar.

You have now made your own customized slider prototype, which you will copy and use for other input parameters. It covers both slider and number input. In this simulator, you will also use a gauge to display the current parameter value.

To set up a gauge for parameter input

1	Create a new gauge object by clicking on Gauge [image] in the toolbar and position it above the slider.

2	Open Define Gauge.

3	Select Inv_Coverage as the Parameter.

4	Remove the object title. (Hint: Start by clicking the Title button and repeat what you did when setting up the slider.)

5	Set Background Border Style = None, Background Interior Pattern = None, and clear the Background Shade check box

6	Remove the shading of the gauge area by clicking Shape and then Area and clear the Shade box.

7	Inside the Area box, choose white as the Interior Color.

8	Since you will not use the gauge to adjust the parameter, clear the Allow Input Always check box.

9	Close Define Gauge.

10	Put the gauge object behind the slider by selecting the gauge and then choose Send to Back from the Format menu.

11	Reduce the size of the gauge and position it on top of the slider, so it looks something like the figure below.

12	Save your document again.

You will now add a couple of texts to identify the parameter that is represented by the slider and the gauge. Start with a label displaying the parameters unit of measure.

To add a text label for the parameters unit

1	Create a text object [image] and position it below the slider.

2	Click on the text and replace it with Weeks. This is Inv_Coverages unit of measure. (Hint: Add a space before the W to make sufficient space for the W.)

3	Double-click on the border to open Define Text.

4	Reduce the font size to 8.

5	Close Define Text and position the text so the result becomes like this:

Now, you will add a text that identifies the parameter. Since you plan to put the whole adjustment panel inside a frame labeled Inventory, it is sufficient to use the label Coverage.

To add a text label for the parameters name

1	Select the text object Weeks and copy it to the clipboard [image] .

2	Paste the object into the diagram [image] and position it above the gauge.

3	Replace Weeks with Coverage.

4	Change the font to Bold. The result should look something like the figure below:


Copying a set of customized objects

You now have a nice-looking little adjustment panel for the inventory coverage. You would like to use the same one for the parameter that adjusts the workforce productivity. You will therefore copy these four objects and update the parameter and text information.

To copy a set of customized objects

1	Select the objects that constitute the adjustment panel that you created above.

2	Click the Copy button [image] to put the selected objects on the clipboard.

3	Paste [image] the selection into the diagram and while all the objects are still selected, position the selection below the original. Result:

4	Double-click on the gauge and change its parameter to Productivity.

5	Clear the Allow Input Always check box and close Define Gauge.

6	Double-click on the slider and remove Inv_Coverage from the list of parameters.

7	Add Productivity to the list of parameters and close Define Slider/Bar.

8	Change the text below the slider to Widgets/Person/Week and the title above the gauge to Productivity.

9	Put the simulation in start-up position (click Run Step [image] ) and check that the result is as shown below:

10	Stop the simulation [image] and save [image] your document.


Setting up an adjustment panel combining a slider and a button

You will now make a slightly different adjustment panel for the inventory correction time and the workforce adjustment time. You wish to make it simple for the users to choose from a set of predefined values in a multiple choice manner. Radio buttons are ideal for that purpose, so you will simply replace the gauge with a button object.

To set up an adjustment panel combining a slider and a button

1	Select the slider and the two text objects from the Coverage group. Result:

2	Copy the selected objects and place them to the right of the original. Result:

3	Change the parameter of the slider from Inv_Coverage to Time_to_Correct_Inventory.

4	Change the contents of the upper text object from Coverage to Correction time.

5	Create a new button object [image] and position it somewhere to the side of the slider (you will reposition it later).

6	Double-click on the object to open Define Button.

7	Double-click three times on Time_to_Correct_Inventory in the Variables list, so that it appears three times in the Parameters list:

This will give you abutton with three optional values for this parameter.

8	Set Display As = Radio, Possible States = 2-states, clear the Auto Size Object box, and switch off Background Shade.

9	Select the first (top) line in the Parameters list.

10	Type Short in the Button Text box instead of {Par}.

11	Type 2 in Values Set and click the Set button. Result:

You have now defined the Short option of the button so that when the user clicks on it, Time_to_Correct_Inventory is assigned the value 2.

12	Repeat steps 9 to11 for the second and the third line in Parameters and assign the texts Medium and Long and the values 6 and 12 respectively.

13	Close Define Button and check that your button now looks about like this:

14	Reposition and resize the object (using the handles) and click Run Step [image] so that the result becomes as follows:

15	Stop the simulation [image] and save [image] your document.


Copying the slider + button panel

You also want to use the slider + button panel for the workforce adjustment time.

To copy the slider + button panel

1	Select the new panel, copy it, and place the copy as shown in the figure below.

2	Change the title text from Correction time to Adjustment time.

3	Update the slider so that it has Time_to_Adjust_Inventory as its only parameter.

4	Double-click on the button object to open Define Button.

5	Remove the three lines found in the Parameters list and add Time_to_Adjust_Inventory three times.

6	In the same manner, assign the following texts and values to the three buttons: Short, Long, Medium, and 12, 24, 48.

7	Close Define Button, click Run Step [image] , and check that the result is as follows:

8	Stop the simulation [image] and save [image] your document.


Setting up a button for adjusting order input

As mentioned earlier, you will allow the users to choose among three different modes of order input. You can do that by connecting the Order_Switch constant to a button.

To set up a button for adjusting order input

1	Make a copy of one of the two button objects that you already have and position it as shown below:

2	Set Background Border Style = None and Background Interior Pattern = None.

3	Connect the button to Order_Switch, include three options, and use the following texts and values:

Text	Values Set =
Step	1
Random	2
Cycle	3
4	Close the Define Button, click Run Step [image] , and check that the result is as follows:

5	Stop the simulation [image] and save [image] your document.

You have now completed the creation and customization of input objects for adjusting parameters.


Setting Up Result Presentations

  Mapping out variables to be displayed

  Scaling output variables

  Setting up dynamic objects for displaying simulation results

  Copying the results presentation setup

  Setting up output objects for displaying order input


Mapping out variables to be displayed

As a point of departure for setting up presentations of simulation results, you need to identify the set of variables to be displayed. At the same time, you may also define what presentation methods you wish to apply and what min and max values to use. You can define the set of output variables as follows:

Variable	Presentation methods	Scaling value range
Inventory	Time graph, bar, number, time table	0-1200
Order_Rate	Time graph, time table, number	0-200
Workforce	Time graph, bar, number, time table	0-50


Scaling output variables

To ensure a good readability of the results displayed in time graphs, sliders, and gauges, you will assign fixed scales to some of the main output variables in your simulator.

To scale output variables

1	Open the Scale dialog box from the Edit menu.

2	Scale the variables Inventory, Workforce, and Order_Rate according to the table above.

3	Close the Scale dialog box and save [image] your document.


Setting up dynamic objects for displaying simulation results

You will start with a graphical presentation of the Inventory variable. By combining a time graph, a slider, and a number, you can compose a nice-looking, illustrative presentation.

To set up a time graph for displaying simulation results

1	Create a new time graph object [image] and position it to the left of the parameter adjustment panel.

2	Double-click on the object to open Define Time Graph and make the following changes and definitions

3	Add Inventory to the Parameters list.

4	Set Background Border Style = None, Background Interior Pattern = None, and clear the Background Shade check box.

5	Set Graph Area Interior Pattern = None.

6	Select Inventory in the Parameters list and keep it selected for the following actions

7	Clear the Drawing Marker check box

Now you will not have a number or any other marker displayed on top of the graph curve.

8	Set Drawing Custom Line Color = Navy and Line Style to a fat line.

9	Click on Time (x) axis Axis, set Tick Labels Position = None, and switch off Tick Marks Major

10	Inside the Time (X) Axis dialog box, click on Label and set Font Size = 8.

11	Click OK until you are back in Define Time Graph and select Inventory in the Parameters list again.

12	Click on Value (y) axis Axis, set Tick Labels Position = None, and switch off Tick Marks Major

13	Inside the Value (Y) Axis dialog box, click on Label, and set Font Size = 8 and Color = Navy.

14	Close Define Time Graph, run a simulation [image] , and reposition the graph as shown below:

You will now create a vertical bar that displays the value of the inventory to the right of the time graph.

To set up a bar for displaying simulation results

1	Create a new slider/bar object [image] and position it to the right of the time graph.

2	Double-click on the object to open Define Slider/Bar and make the following changes and definitions

3	Add Inventory to the Parameters list.

4	Click on Title and clear the Present box. This removes the object title.

5	Set Background Border Style = None, Background Interior Pattern = None, and clear the Background Shade check box.

6	Select Inventory in the Parameters list and keep it selected for the following actions

7	Clear Allow Input Always

Now the object will display the inventory value as a bar instead of a slider button.

8	Open Bar Axis and set Scale Major Unit = 200. This will give the object display numbers on the bar axis an interval of 200.

9	Close Bar Axis And Scale, Define Slider/Bar, and resize and reposition the bar as shown below

You will now put a number object on top of the bar to display the running value of the inventory.

To set up a number for displaying simulation results

1	Create a new number object [image] and position it above the bar.

2	Double-click on the object to open Define Number and make the following changes and definitions

3	Choose Inventory as the Parameter.

4	Click Label and clear the Present box.

5	Open the Number Format Box and set Border Style = None.

6	Open the Number Format Font and set Font style = Bold.

7	Open the Number Format Number and set Type = 0

This will remove decimals from the number output.

8	Set Number Format Alignment to Center.

9	Close Define Slider/Bar, run a simulation [image] , and resize and reposition the number object as shown below:


Copying the results presentation setup

You also want to use the time graph, bar, and number combination for the workforce level.

To copy the results presentation setup

1	Select the graph, bar, and number, copy them, and place the copy as shown in the figure below.

2	Double-click on the time graph and remove Inventory from the Parameters list.

3	Add Workforce in the Parameters list and select it.

4	Switch off Drawing Markers, set the line color to Olive and the line style to a fat line.

5	Set the font color of the label on the y-axis to Olive and close Define Time Graph.

6	Use Workforce as the parameter for both the number and the slider/bar objects.

7	Run a simulation [image] and check that the result is as shown below


Setting up output objects for displaying order input

You will visualize the order input by using a time graph, a time table, and two number objectsone for the number of orders and one for the current week.

To set up output objects for displaying order input

1	Make a copy of the Workforce time graph and place it to the left of the button for choosing order mode.

2	Replace Workforce with Order_Rate as the parameter of the time graph.

3	Select Order_Rate in the Parameters list, switch off Drawing Marker, and change the y-axis label font to Green. Result:

4	Create a new time table object and position it below the Order_Rate graph.

5	Add Order_Rate to the Parameters list and set the font size of the Cell Format Label and Number to 8.

6	Set Background Border Style = None and clear the Background Shade check box.

7	Close Define Time Table and reposition and resize the table so that the result is as follows

8	Create a new number object and position it below the radio buttons.

9	Select Models Control and Parameters Control.Time.

10	Set Number Field Width = 5.

11	Set Number Format Box Border Style = None.

12	Set Number Format Font Size = 8.

13	Open Number Format Number and change the format so that the number has only one decimal place.(Type = 0.0).

14	Set Number Format Alignment = Right.

15	Click on Label, type Week no in the Text box, and set Font Size = 8.

16	Close Define Number and make a copy of the number object.

17	Position the copy below the original and make it display Order_Rate instead of the week number. The label text should be Widgets.

18	Resize and reposition the two number objects, click on Run Step [image] , and check the result against the figure below:

19	Stop the simulation [image] and save [image] your document.


Adding Illustrations and Texts

If your simulator is supposed to have icons and illustrating figures, for example to illustrate system structure and/or key variables or concepts of the system that the simulator mimics, you should start by mapping out which variables you wish to illustrate using icons. The table below lists the illustrations to use in your simulator.

Variable	Illustration
Inventory	Picture of inventory building
Workforce	Picture of crowd
Order_Rate	Picture of man pointing at order curve
  Adding pictures to the simulator

  Composing sectors using text objects


Adding pictures to the simulator

The pictures you will use in this simulator are ready-made picture objects in one of the enclosed Powersim files. Alternatively, you may use images of your own choice.

To add pictures to the simulator

1	Open the file PICTURES.SIM found in the Powersim\Samples\Userguid directory.

2	Select the images of the inventory building, the crowd of people, and the man pointing at the curve, and copy [image]  them to the clipboard.

3	Close PICTURES.SIM.

4	Paste [image] the picture objects into the diagram somewhere below the order rate button and save [image] your document.

5	Move the image of the inventory building above the Inventory time graph, as shown below.

6	Move the image of the crowd above the Workforce time graph, as shown below.

7	Move the image of the man and the curve below the number object displaying Widgets, as shown below.


Composing sectors using text objects

You will now use text objects with visible frames to group the different sectors of the simulator. The model can be logically divided into three sectors: Inventory, Workforce, and Incoming Orders.

To compose sectors using text objects

1	Create a text object and drag it out so that it covers all the presentation objects related to Inventory

2	With the text object still selected, hit the Return key to open Define Text.

3	Type Inventory in the Text box.

4	Set Shape = Round Rect. This gives you a rectangle with rounded corners.

5	Open Font and set Size = 12, Font style = Bold, check the Underline box, and set Color = Navy

6	Close Font. Back in Define Text, set Interior Fill = Shade

7	Click OK to close Define Text. The result should be as shown below:

You no longer see the presentation objects because the text object, which lies on top of the other objects, now has a filled interior. To fix this problem, you can move the text object behind the other objects.

8	Make sure the text object is selected, and then choose Send to Back from the Format menu.

9	Run a simulation [image] . The Inventory sector of your simulator should now look like the figure below.

10	Copy [image] the Inventory text object and paste [image] it on top of the Workforce sector.

11	With the new text object still selected, choose Send to Back from the Format menu and hit Return to open Define Text.

12	Replace the old text with Workforce.

13	Change Interior From Color to white and To Color to light yellow.

14	Set Font Color to Olive.

15	Close Define Text. Result:

16	Create a new text object, give it the text Incoming Orders, and make it surround the order sector as shown below.

17	Save [image] your document.


Setting Up Windows and User Access

  Determining the number of windows and their contents

  Creating and defining new windows

  Limiting user access


Determining the number of windows and their contents

Powersim allows you to build several windows into your simulators. Displaying the different parts of a simulator in different windows makes it easier for the user to concentrate on the concepts presented. In your simulator you will have three different windows: one overview window containing the Inventory and the Workforce sectors, one window for inspecting and changing incoming orders, and one window that displays the flow diagram of the underlying model.


Creating and defining new windows

You will now start with the overview window, which is supposed to display the Inventory and the Workforce sectors.

Note	If you move or resize objects in your simulator after you have started setting up new windows, the contents of the windows may become corrupted.

To create and define new windows

1	Choose New Window from the Window menu.

2	Restore the new window to normal size, neither maximized nor minimized.

3	Resize and scroll the new window so that it covers the Inventory and the Workforce sectors.

4	Choose Options from the Format menu and select the Window Attribs category.

5	Clear all the check boxes found in the Style group except the Minimize box.

6	Type the following text in the Caption box: Inventory Simulator Overview. The Options dialog box should look like this:

7	Close the Options dialog box. The new window should look something like this:

8	Repeat steps 1 to 6, only this time the window caption should be Inventory Simulator Orders and the window should contain the order sector, as shown below:

9	When you open the Window menu, you should see the following windows listed: Inventory Simulator Overview, Inventory Simulator Orders, and INVENSIM.SIM.

10	Select INVENSIM.SIM and repeat steps 1 to 6, only this time the window should cover the flow diagram horizontally, not vertically. Furthermore, the caption should say Inventory Simulator Flow Diagram, and you should leave the Vert. Scrollbar in the Style group checked. This will allow the users to scroll the window vertically to view different parts of the flow diagram. Result:

So that users will not see the objects on page 2, which are all dynamic and static objects, you will remove those object categories from the diagram view of this window.

11	Open Format Options Diagram View and check the None boxes of Dynamic and Static Objects, as shown in the figure below.


Limiting user access

To prevent users from deleting objects or altering the model, you will take away the edit access from this simulator. That means that users can run simulations and store results, but cannot carry out editing actions on diagram objects or variables.

To limit user access

1	Choose Properties from the File menu.

2	Click Access to open the Access Rights dialog box.

3	Clear the Edit box.

To prevent users from changing this setting, you will protect it with a password.

4	Click the Password button and type a password of your choice.

5	Confirm the password and click OK until you are back in the diagram.

6	Save your document, which is now the final version of your new Inventory Simulator.


The Final Stop of the Tours

Congratulations! You have now completed all four tours in the Powersim Quick Tours series. You have gone all the way around the loop from running a ready-made simulator, through building and enhancing your own model, and finally to converting that model into a simulator. The models and simulators that you have worked with here are of course simple examples of business models and simulators. But they should give you a good idea of the potential that lies in this methodology in general and in the Powersim software package in particular. Only your imagination will limit what models and simulators you may create using this tool. Good luck with your further modeling and simulator building aspirations.