Lab 7 Modeling Oscillation System
Lab 7 Modeling Oscillation System
⌦ denotes a question for which you must hand in an answer, a model, or a plot
denotes a fact that you will want to include in the model under discussion
☺ denotes a tip to help you build the model or answer the question
Oscillations and cyclic phenomena are among the most common and important dynamic
behaviors. The economy as a whole and many individual industries suffer from chronic
instability in production, demand, employment, and profits, with resulting turnover of top
management. Avoiding or tempering the swings of such industry cycles has proven difficult.
This assignment develops your ability to formulate dynamic models of a business situation and
analyze their behavior. The problem of concern centers on chronic instability in the management
of production, inventories, and employment in a manufacturing firm. You will build on the
model of a firm we developed in class and explore the causes of and cures for oscillations. The
assignment also serves as an introduction to model-based policy analysis.
Case Background: A manufacturing firm, Widgets, Inc., has experienced chronic instability in
its inventory level and production rate. Specifically, the production rate and inventory undergo
large, costly variations over time, variations larger than those in incoming orders. Your client,
Widgets, Inc., wants to understand why it has experienced these persistent oscillations, and how
they might be moderated.
1
Developed from “Assignment 7: Understanding Business Fluctuations: The Causes of
Oscillations” for 15.874 System Dynamics for Business Policy, Sloan School of Management,
MIT by Brad Morrison
In the class discussion of this issue, we developed a simple model to begin testing this
hypothesis. Your modeling strategy is to start with the simplest possible model, expand it as
necessary, and never let the model’s complexity exceed your understanding of it.
Summary of model development thus far: Your discussions with management and workers on
the factory floor revealed the following information.
A. Base Model
You have several options for obtaining the base model, called <Widgets>. It is available on the
CD in the textbook in the Chapter 18 folder or you may build it yourselves from the equations
and documentation presented in the book. Although the last option is the most time-consuming,
it can also be the most valuable as going through the model-building process enables you to
better understand the model and its formulations. If you choose the build-from-scratch approach,
you must compare your model listing with that of the model in the CD before you proceed with
the assignment in order to make sure you have the complete and correct version of the model,
with the identical variable names and formulations that appear in the original Widgets model.
IMPORTANT: Change the Manufacturing Cycle Time in the Widgets model from 8 to 4
weeks. Use a value of 4 weeks in your base case.
To begin your analysis, confirm that your model begins in equilibrium by running the model
without any changes in parameters. Do not hand in the equilibrium run.
Now run the base case of the model with a 20% step input in customer orders in week 5 (set Step
Height = 0.20). Examine the behavior.
☺ The model includes a variety of custom graphs to help you understand its behavior. You
may wish to modify these or create new custom graphs to illustrate the points you wish to
make in your write up. In particular, it is interesting to make a phase plot showing the
Production Start Rate as a function of Inventory.
⌦ A1 (0.5 Point) Briefly explain the model’s base case behavior. Describe in managerial terms
(as if you were presenting your results to the client) what happens after the step increase
in customer orders. Present a minimum of graphs to make your points.
⌦ a. Does the Production Start Rate change by less, the same, or more than the change in
orders? Quantify your response by calculating the amplification ratio (refer to Appendix
1 of this assignment for a discussion of amplification and the amplification ratio).
⌦ b. Identify the sources of any amplification.
⌦ c. What are the specific structural reasons for the degree of amplification you find? That is,
what parameters and structures control the magnitude of amplification?
⌦A3. (0.5 Point) Can this model oscillate? Briefly explain why or why not. That is, are there
any circumstances in which this model can generate the reference mode of oscillating
production and inventory?
☺ To answer, you will need to conduct sensitivity tests in which you vary the parameters of
the decision rules and physical structure (see the discussion on sensitivity testing in
chapter 21). As you make these tests, beware of “DT error”—a situation in which the
⌦ A4.(0.5 Point) Can this model oscillate with plausible and realistic parameter values? It is
not enough to generate the behavior of interest in your model. Your model must generate
that behavior for the right reasons. If you find that there are some parameter values which
cause oscillation, are these values plausible or realistic? In answering this question
consider the real-life interpretation of the decision processes of the actors in your model.
Given the parameter values needed to generate oscillations, would real firms behave in
such a way? Explain.
After exploring the behavior of your initial model, you return to management and argue that the
dynamic hypothesis, as stated, is not sufficient to explain the persistent fluctuations plaguing the
firm. You note that the model currently assumes that the production start rate is equal to the
desired production start rate. This assumption was justified by the statement of a member of the
client team from corporate headquarters that there was ample plant and equipment in the factory,
so that production starts can be altered rapidly to equal the rate called for by the schedule.
Nevertheless, you conclude that the initial model must be revised to include a more realistic
representation of the production start rate.
You ask your client how production starts are actually determined, focusing on whether there are
any time delays, and what the sources of delay might be. These discussions reveal that, while the
firm indeed has ample physical plant and equipment, labor cannot be hired and trained
instantaneously.
• First, a target or desired workforce is determined from the production targets developed
by the plant managers. The desired workforce is determined by desired production and
average productivity, which is equal to 20 widgets per worker per week and is quite
constant over time.
• Next, the desired workforce must be reviewed and authorized by corporate headquarters,
a process that requires an average of four weeks.
• There are two inputs to the hiring decision. First, there are replacement hires. Any
workers who quit or retire are replaced immediately. Second, the hiring rate is adjusted
above or below the replacement rate to close any gap between the authorized and actual
workforce. Of course, hiring cannot fall below zero.
Working with your client team, you translate the description of Widgets’ labor policies into the
following policy structure diagrams.
First, the Production Start Rate no longer depends on the Desired Production Start Rate, but
on a new variable, the Normal Production Rate. The Normal Production Rate is the rate of
output achievable by the current Labor Force given Normal Labor Productivity.
Discussion with your client suggests that the labor authorization process can be modeled as a
first-order delay (you will need to decide whether it is an information delay or a material delay).
The Factory Labor Request depends, as described above, on the Desired Production Start
Rate and Normal Labor Productivity. The labor force is increased by hiring and decreased by
the attrition rate. The firm hires to replace attrition and also adjusts the labor force to the
authorized level.
Next, you draw a high-level diagram of the labor supply chain and hiring process.
⌦ B1. (0. 5 Point) Hand in a documented listing of your new model, which should include an
explanation of how the equations for labor acquisition capture the verbal description
above.
⌦ B2. (0 Point) Before running the model, consider how you think the model will respond to
an unanticipated 20% step increase in customer orders in week 5. Draw by hand the
pattern of behavior you expect for inventories, production starts, and labor. Pay attention
to the phase relationships among the variables, that is, the leads and lags of the variables
relative to one another. Hand in your drawing. (Please do this before simulating your
model. Your grade is not affected by your answer to this question).
⌦ B4. (0.5 Point) Explain the behavior produced by the step increase in shipments. You may
find the explanation emerges naturally as you answer the following questions:
• Why isn’t the system in equilibrium when inventory first equals desired inventory?
• Why isn’t the system in equilibrium when production first equals shipments?
• Why does production overshoot its equilibrium value?
• Why does it undershoot?
☺ Your analysis should proceed step by step, explaining at each juncture in the behavior
what is occurring and why. You should refer to your causal-loop diagram and make use
of your knowledge of stock and flow structures. Also, feel free to plot additional
variables (you may find Vensim’s causal tracing feature valuable); but hand in additional
output only if you refer to it in your explanation. Strive for an explanation that a manager
could understand.
Now you can begin to use your model to explore policies to stabilize the firm. Before policy
analysis is meaningful, however, we must be clear about our objectives.
⌦ b. In order to stabilize the system, should the Time to Adjust Inventory discrepancies be
increased or decreased? Write down your answer before simulating the model. Be
honest—your grade does not depend on whether your answer is correct.
⌦ c. Test your intuition by simulating the model with Time to Adjust Inventory lengthened or
shortened by 50%, according to your prediction. Is your intuition confirmed? Try other
values for the Time to Adjust Inventory until you are satisfied you understand its effects
on the behavior of the firm. Explain the effect of the change on stability in terms of the
feedback structure of the system.
⌦ d. Repeat the analysis you did for the Time to Adjust Inventory for the other important time
constants in the model, including the behavioral parameters (e.g., the time to authorize
labor, the time to adjust WIP), and the physical delays (e.g., the manufacturing cycle time
and the time for incremental hires). Be sure to write down your prediction for each
parameter before simulating. Briefly explain (in a sentence or two) how each parameter
affects the model and why. Do all the parameters have the same effect on stability?
☺ In the interest of brevity, you may want to summarize your results in a table.
⌦ e. What policies would you recommend at this point? (Which parameters would you change
and how?)
D. Overtime/Undertime
The model thus far does not permit any overtime or undertime. The Normal Production Rate
represents the rate of production attainable with the current labor force and a standard workweek
(the workweek is held constant). To test the effect of a variable workweek, modify the equation
for the Production Start Rate as follows.
These equations allow production to vary according to the adequacy of the current labor force.
The variable Relative Workweek represents the change in production above or below the
The input, Schedule Pressure, runs from 0 to 2 in steps of 0.2. The output, for the base case, is
constant at 1.0 (no over- or undertime). You can try different policies for workweek by changing
the values of the relationship in the simulation dialog box when you run the model.
☺ Don’t change the workweek table function by editing the model. Instead, use the Set button
in the top toolbar, then enter the values for the table by clicking on it in the diagram.
Examine the response of the complete model to a 20% step increase in incoming orders, using
the base case parameters and the following overtime policy:
⌦ D2.(1 Point) Explain why the behavior would be stabilized or destabilized by flexible
workweeks.
Now, reflect on what you have learned. Think about the high-leverage points to stabilize the
firm. If you were responsible for reengineering the firm, what policies would you recommend?
Try to keep your changes realistic (it is not possible to produce or hire instantly, for example,
though you might be able to make substantial cuts in these delays). Design and simulate your
preferred policy.
⌦ E2. (0.5 Point) Hand in a very brief evaluation of how your policy works in the simulation
model. You might create a table comparing the base case to the your policy run. You
might also include one or two plots comparing the base to the policy run. (Remember to
be explicit about the parameter differences between the two runs—we must be able to
replicate your simulations.)
⌦ E3. (0.5 Point) Hand in the diagram and equations for your full, documented model,
including overtime and undertime.
To figure the amplification ratio, calculate the maximum change in production as a fraction of
the change in incoming orders. For example, if incoming orders rise from 10,000 to 12,000, then
ΔInput=2,000 units. If production reached a peak of 13,150 units, then ΔOutput would be 3,150
units, and amplification A would equal 3,150/2,000=158%.
A model is in equilibrium when all variables are constant. A model is in a stress-free equilibrium
when all variables are unchanging and all actual quantities equal desired quantities (e.g., actual
labor and desired labor are the same). Read section 18.1.5 for more information.
Beginning a model in equilibrium makes analysis considerably easier. Good modeling practice is
to set the initial values of your stocks equal to algebraic expressions and not to numbers. The
algebraic expression is the equilibrium value of the stock expressed as a function of the other
stocks and parameters in the system. Then if you change the parameters, the initial conditions are
automatically re-computed so the model will always begin in equilibrium. For simple models
such as in this assignment, you can easily determine the expressions for initial conditions to put
the model into equilibrium. For some very large models this can be difficult, and a symbolic
math processor helps.
Usually, the equilibrium is specified by providing an algebraic definition for the initial values of
the stocks in the model. The calculation is based on two considerations:
1) For a stock to be in equilibrium, its inflows must equal its outflows.
2) In a stress-free equilibrium, stocks are equal to their desired values.
The second consideration can be used to find expressions for the equilibrium initial value of
Labor and Authorized Labor Force. Set the initial value of labor to its desired value (the
Of course, you cannot define your initial conditions in terms of each other, for this would create
an unresolvable simultaneous initial condition problem. For example, you could not set the initial
value of Labor Force = Authorized Labor Force, and then set the initial value of Authorized
Labor Force = Labor Force. If you did, you would receive an error message indicating
“Simultaneous Initial Values”. One of these stocks (in our case, Authorized Labor Force) must
be set equal to an expression that does not involve the other to resolve the simultaneity (see
section 18.1.5 in the text).