An Extension of Loop Deactivation
in the Behavioural Method
Jinjing Huang, Enda Howley, Jim Duggan
Department of Information Technology, National University of Ireland, Galway
Email: colorfulginger@ hotmail.com, enda.howley @ nuigalway.ie, jim.duggan @ nuigalway.ie
Abstract
The behavioural method is an important technique for identifying the dominant feedback loops
for a variable of interest. The core mechanism of this approach is that deactivating different
loops influences the behaviour of the selected variable to various degrees. Through assessing the
variance of the behaviour between the reference model and the modified model for all feedback
loops, we are able to identify the loops which exert the most significant influence on the variable,
i.e., the dominant loops. An important step in the behavioural method is to deactivate a loop by
fixing its control variable or a unique edge. However, a drawback is where neither the control
variable nor the unique edge is identified. This paper presents another loop deactivation method
which is applicable when such circumstance happens. The new method deactivates a loop by
modifying its unique consecutive two edges which are able to distinguish this loop from other
loops. The long wave model is used to demonstrate the loop deactivation approach and compare
the analysis result with other dominant loop identification methods.
1 Introduction
Exploring the feedback structure in order to explain the behaviour of complex dynamical systems
lies at the heart of the system dynamics. Formal analysis reveals the underlying feedback mecha-
nism that gives rise to the observed system behaviour.
A dominant loop analysis method which is much in line with the classic methods that rely on
hypothesis testing is the behavioural method. The core mechanism of this method is that deacti-
vating different loops affects the behaviour of the variable of interest to a various degree, hence the
one considered as a dominant loop should exert most significant influence to the behaviour, i.e.,
when the dominant loop is deactivated, the behaviour diverts most from its original trajectory.
A crucial step in the behavioural method is to deactivate the candidate loop. Ford proposed
to deactivate a feedback loop by fixing the value of its control variable, i.e., the variable uniquely
belongs to a loop. A drawback is that it does not guarantee that every loop has a control variable,
therefore those loops cannot be deactivated to assess their roles in the behaviour of the variable.
Another factor in its application is Ford did not specify how to select the feedback loops with a
given model. Recently, Phaff (2008) suggested we adopt the shortest independent loop set (SILS)
(Oliva, 2004) as the candidate loop set and deactivate the loop by its unique edge instead of its
control variable. A unique edge is a looser constraint than a control variable for a loop to satisfy,
since the existence of a control variable indicates two unique edges. When a loop does not have
a control variable, it is highly likely to have a unique edge. However, this improvement does not
promise every loop in SILS can be deactivated either, as there are still loops that may even have no
unique edges.
The main contribution of this paper arises from the circumstance when the feedback loop does
not have a control variable or a unique edge which can be deactivated. We propose a loop deac-
tivation method by modifying its unique consecutive two edges which are able to distinguish this
loop from other loops. We organize the paper as follows: first related research work is introduced
in Section 2. After which we clarify the circumstance when the current loop deactivation fails,
(a loop does not have a unique edge) and put forward a three-step methodology with illustration.
With the proposed method, we then demonstrate it on the Long Wave model (Sterman, 1985) and
compare the analysis result with other dominant loop identification methods, i.e., eigenvalue elas-
ticity analysis and the original version of the behavioural method. Finally we end with conclusions
and recommendations for further research.
2 Literature review
We can classify the existing dominant loop identification approaches into three categories: the
behavioural method (Ford, 1999), pathway participation method (PPM) (Mojtahedzadeh, 1997;
Mojtahedzadeh et al., 2004) and eigenvalue elasticity analysis (EEA) (Forrest, 1983; Saleh and
Davidsen, 2000; Giineralp, 2005). The first method is the focus of this paper. It deactivates each
feedback loop and assess its role by comparing the behaviour of the variable of interest in the
reference model with in the modified model. The second one, PPM, starts from the variable of
interest and traces the pathways which contribute most to the selected variable until they forms a
loop. This method is implemented by a software package (Mojtahedzadeh, 2001): DIGEST. The
last one, EEA, establishes the relationship between the system behaviour and the structure ele-
ments (e.g., links or feedback loops) by the eigenvalues. Then it uses the eigenvalue response to
the perturbation of those elements to assess their influence on the system behaviour. EEA is con-
sidered as a highly mathematical approach and it applies only to the linear model or the linearized
model while the other two methods are not constrained if the model is nonlinear. Furthermore, the
behavioural method and PPM are variable-based while EEA is variable-independent.
One important contribution in the development of the behavioural method made by Ford is
formulating the behaviour patterns. He identified three atomic behaviour pattern (ABP) based
on the absolute net rates of the variable of interest (see Eq. (1)), i.e., convergent/logarithmic
behaviour results in an ABP less than zero, divergent/exponential behaviour results in an ABP
greater than zero, linear behaviour results in an ABP equals to zero. Based on the ABP, Ford can
divide the behaviour of the selected variable into intervals for individual analysis. Moreover, ABP
is a qualitative indicator used to assess the role of a loop. Decision on whether it is a dominant loop
is made by checking if the ABP of the variable of interest in the reference model and the modified
model differs.
) at qd)
Recently, extended version of the behavioural approach was introduced (Phaff, 2008). It is
referred to as the Generalized Loop Deactivation Method (GLDM). It improves the method from
the following two aspects:
Ox
ABP = sign|0\|—
sen ($
e Make use of the shortest independent loop set developed by Oliva (2004) and let it be the
candidate loop set to be analyzed. As in the original version of the behavioural method, Ford
did not provide a systematic method to select the candidate feedback loops. Kampmann
(1996) addressed that “the number of loops S;,,, in a maximally connected system with n
state variables and p auxiliary variables grows as 2”’(n — 1)!”. Therefore, it is necessary
to limit the number of feedback loops. SILS controls the number of loops at a reasonable
size and more importantly, Oliva and Mojtahedzadeh (2004) found SILS captures the core
dynamics, i.e., contains dominant feedback loops.
e Deactivate a feedback loop by fixing its unique edge instead of a control variable. A control
variable is a variable which uniquely belongs to a feedback loop and used in the original
behavioural method. Similarly, a unique edge is an edge that belongs to only one feedback
loop. It is easy to verify that a control variable suggests two unique edges, hence identifying
a unique edge is a less strict constraint for a feedback loop. This is an improvement which
makes the behavioural method applicable to a much wider range of models. In conjunction
with the regulation of how to set up the candidate loop set, GLDM offers us an opportunity
to automate the behavioural method.
3 Proposed loop deactivating approach
3.1 Problem statement
In our previous discussion over the behavioural method, we adopt the SILS as its candidate loop
set. However, there is another issue when attempting to deactivate a loop, i.e., the independent loop
set may contain loops that have no unique edges. The definition of ILS from Kampmann (1996)
states: “An independent loop set of a digraph is a maximal set of loops whose incidence vectors
are linearly independent, i.e. every other loop is linearly dependent upon the loops in it”. From
the procedure of constructing SILS (Oliva, 2004), we know that every newly added loop has the
least number of new edges which have not occur in the loop set. Therefore, this process does not
prevent the new loop diminishing the “existing” unique edges for the loops which are already in
the set.
Figure 1: A simple model
To clarify under what circumstance this problem occurs, we use an example which is shown in
Figure 1. Ina strongly connected graph !, the relationship between the total number of independent
loops u, nodes n and edges e are:
u=e-n+1
Hence, the example shown in Figure | has 3 candidate loops: 8 —- 6 + 1 = 3. Table 1 lists the
loop matrix describing the loops and their edges. We observe that the incidence vectors of each
loop (in rows) are linearly independent whereas L2 does not have a unique edge. This is a simple
scenario which renders inefficient to both Ford’s behavioural method and the GLDM analysis.
We can imagine a complex system will cause more loops have no unique edge. Therefore, it is
necessary to find a way to deactivate the loop under such circumstances. In the following section,
we introduce a method to overcome this problem and use the shown example to demonstrate it step
by step.
Lij! 1 1 0 1 1 0 0
12;0 1 1 1 0 0 0 0
L3}/0 1 0 1 0 0 1 1
Table 1: Loop matrix
3.2 Loop deactivation approach with illustration
The idea of deactivating a loop with no unique edge is derived from GLDM (Phaff, 2008). We
consider using the unique consecutive two edges to deactivate the candidate loop. The unique
consecutive two edges refer to two consecutive edges which belong to a loop but not to any other
loops in SILS. We present the procedure of how to deactivate a loop with no unique edge in the
behavioural method as follows. Three steps of deactivating a loop with no unique edge:
1. Identify all the loops using SILS algorithm, and let these be our candidate loops.
2. Select the loops that do not have a unique edge and identify the unique consecutive two
edges which do not lie in any other loops in each selected loops. In order to deactivate these
loops (no unique edge), we follow the steps below to modify the model:
(a) Create two nodes which serve as the representatives of the two variables of the first
edge in pair. Link these two new nodes with the same order as their counterparts in the
reference model.
(b) For the second edge in the unique consecutive edges, switch its tail, ie., the middle
variable in that edge pair, to its newly created representative while keep the head of the
edge unchanged.
(c) Copy all the edges who end with the middle variable in the unique consecutive edges
(except the edge which is one of the unique two edges) to the variable of its new repre-
sentative.
‘A strongly connected digraph G is one in which, for any pair of nodes x, y € G, there is both a directed path from
x to y and a directed path from y to x.
3. Set the new variable who is the representative of the origin of the unique consecutive edges
to be a fixed value. The choice of this fixed value is consistent with the Ford’s behavioural
method, i.e., the value at its deactivation.
To clarify the methodology stated above, we use the model in Figure 1 to demonstrate the
approach.
1. The loops in SILS are depicted in Table 1.
2. Table 1 shows that L2 shares all its constituent edges with the other two loops and does not
have a unique edge. Besides, only the combination of e3 and e4 can determine this loop.
Other combinations, e.g., (e2, e3) € {L1, L2}, (e4, e2) € {L2, L3}, do not uniquely belong to
one loop. Therefore, the unique consecutive two edges are identified as e3, e, or denoted by
nodes in sequence: b, c, a.
(a) Create two nodes b’, c’ as the representatives of b, c. We link these two new nodes
b’ > c’ in the same direction in the original model b — c. This is illustrated in Figure
2.
Figure 2: Loop deactivating process (a)
(b) Switch the tail of the second edge in the unique edges, i.e., c in e4, to its representative,
c’. Figure 3 shows that e4 is removed and replaced by a dash line e.,.
(c) Copy all the edges where the variable c is a tail to c’ except e,,. There is only one
edge satisfying this condition: f — c. In this case, the variable c’ is initialized. It is
constructed in the same way as its counterpart c, except for one edge, e3. The final
modified model for deactivating L2 is depicted in Figure 4.
3. Set node b’ to be a constant at the beginning of each phase. Then, the behavioural method
can be performed to analyze the influence of this particular loop to the behaviour of the
variable of interest.
Compare the model after deactivating (Figure 4) with the reference model (Figure 1), we can see
the removal of e4 impacts L2 and L3 simultaneously. What we do to recover L3 and maintain L2
deactivated is as follows:
Figure 3: Loop deactivating process (b)
Figure 4: Loop deactivating process (c)
1. We identify that c is a joint point of L2 and L3. It is a function of two “inputs”, say, c =
G(b, f), nodes b and f lie in L2 and L3 respectively. In order not to impact L3, we retain all
the inputs to c. However, we have to deactivate L2, so a node b’ is created to be a constant
value of b. Another variable c’ which is a representative of c is created for the purpose of
propagating the information flow passed through the constant b’ when deactivating L2.
2. c’ is connected to a while e4 is deleted. Therefore L2 is deactivated and its modified version
L2’ is: b’ > c' — a. At the same time, L3 is cut by removing e4.
3. In order to recover L3, we add the edge f — c’ which makes c’ = G(b’, f). In comparison
with the reference model where c = G(b, f), we find c’ takes the role of c and flows back to
a with L2 deactivated but f in L3 unchanged. A new loop is formed: a > b > f > c’ > a.
This is L3’ which we consider as a equivalent of L3 in the modified model after deactivating
72.
In summary, Figure 4 shows the final modified model, compared with the reference model, L1
is not changed. Though L3 becomes a new loop L3’, which is regarded as “not deactivated” by
the definition of the original way of deactivating a loop (Ford, 1999), but L2 is indeed deactivated
as L2’. Therefore, we believe deactivating the unique consecutive two edges is a reasonable and
reliable approach to deactivate a loop.
4 Application to the Simple Long Wave model
To demonstrate the proposed methodology with a more complex model, we test our approach
on the Simple Long Wave model. This is a nonlinear economic model developed by Sterman
(1985) to explain the long term economic cycles caused by capital self-ordering in the simplest
possible terms. The model has three state variables (capital, supply and backlog), yet it is highly
interconnected and contains 16 independent feedback loops. Its stock and flow diagram is shown
in Figure 5. Appendix A contains the model equations.
4.1 Why we choose this model?
We choose this model because 1) both Kampmann (1996) and Ford (1999) had studied this model
and reached the identical general conclusion with regard to which loops dominate the behaviour of
variable Desired Production. Therefore we can take their result as a benchmark to test the validity
of our loop deactivation approach; 2) though Ford used the behavioural method to analyze it where
he deactivated all the feedback loops by fixing the values of their control variables but he did not
provide a complete candidate loop set. A drawback is this would affect the validity of the choice
of the control variable. In other words, when we deactivate one loop, we may simultaneously
deactivate other loops as well. As a consequence, the changed behaviour may be caused by more
than the loop as we think of; 3) under the assumption that the SILS is selected as the complete
candidate loop set, some loops including the dominant loops (identified by the behavioural method
from Ford and EEA from Kampmann) do not have a unique edge, thus we cannot use either Ford’s
behavioural method or GLDM analysis. Nevertheless, our loop deactivation approach is applicable
and it is developed to enable the behavioural method under such a particular circumstance.
er
on
om
‘RelativeOrders a s
Supply +$$ap RelativeCrderfiac
CapitalCrdere oN SS
a ie Ks
N\ mes alto \
# wat Capital
a err CH \
CeptlOupitate \ Capacity Utliization
oe
Depreciation
SR \
ae AweLifeOfCapital | \
CapitalA djustmnent
-~ :
j
DesiredCapital
a”
SuppivAdustnent
N A “ Capital djustTime x
* tad pee Dele aromienn
CopitalOrdersBacklog Tre Sie ss \
~ ee
Se wv DesiredSupplyLine~ SupplyAdjustTime
} Se ae”
GoodOrders ee
NemmalDelveryDelay
Figure 5: Stock and flow diagram — the Simple Long Wave model
4.2 Modify the model by the new loop deactivation method
Based on the behavioural method, the first step is to select the variable of interest. In order the
compare our result with EEA, we will not randomly pick a variable of interest. We know that
EEA is variable-independent, i.e., the dominant loops are the same for all the state variables in
the model. However, in the behavioural method, different variables of interest give rise to different
phase partitions. In terms of the similarities of the behaviour pattern in each phase and the durations
of the corresponding phases (indicated by Table 4), we find those in EEA (Kampmann, 1996)
coincide more closely with the variable of Desired Production than with others. Furthermore, Ford
(1999) also chose it as the variable of interest in order to compare the behavioural analysis result
with EEA more accurately. Therefore Desired Production is chosen here as well.
The next step is to set up the candidate loop set and identify the unique edges or the unique
consecutive two edges. We use SILS algorithm to generate the candidate loop set (see Table 2 and
Table 3). Then the unique edge for each loop has to be identified. Within SILS of the Simple Long
Wave model, we find that four loops do not have unique edges. Table 2 and Table 3 list these two
loop categories with their unique edges and the unique consecutive two edges respectively.
We participate the time intervals in the third step. The behaviour of Desired Production and
its atomic behaviour pattern over the entire simulation are presented in Figure 6. We can see it is
periodic and the cycle is approximately 45 years. The cycle in the middle is chosen for its clarity
and completeness. We divide its behaviour into five phases based on the atomic behaviour pattern.
Figure 7 plots the behaviour in that cycle and the value of the ABP according to Eq. 1. Specifically,
we list the time intervals in Table 4 compared with the phase information in Kampmann’s analysis.
Loop no.
Variable sequence
(Loop name)
Unique edge
Li
L2
IA
LS
L6
L7
L&
L10
L12
L13
LIS
L16
Acquisitions, S
(Supply line-order control)
Depreciation, C
(Capital decay)
RelativeOrders, CapitalOrders, S, Acquisitions,
C, Depreciation
(Steady state capital)
DesiredOrders, RelativeOrders, CapitalOrders, S,
Acquisitions, C, Depreciation
(Capital replenishment)
RelativeOrders, CapitalOrders, S, SupplyAdjustment,
DesiredOrders
(Supply line adjustment)
RelativeOrders, CapitalOrders, S, Acquisitions,
C, CapitalAdjustment, DesiredOrders
(Capital adjustment)
Acquisitions, Capital, Depreciation, DesiredSupplyLine,
SupplyAdjustment, Desiredorders, Relativeorders,
CapitalOrders, S
(Steady-state Supply line)
DesiredOrders, RelativeOrders, CapitalOrders, S,
Acquisitions, C, Capacity, Production,
DesiredSupplyLine, Supply Adjustment
(Supply line adjustment via Production)
Acquisitions, C, Capacity, CapacityUtilization, Production
(Demand balancing)
DesiredProduction, Capacity Utilization, Production, B
(Production scheduling)
RelativeOrders, CapitalOrders, CapitalOrdersBacklog, B,
DesiredSupplyLine, SupplyAdjustment, DesiredOrders
(Hoarding)
DesiredProduction, DesiredCapital, Capital Adjustment,
DesiredOrders, RelativeOrders, CapitalOrders,
CapitalOrdersBacklog, B
(Capital Self-ordering)
Acquisition, S
Depreciation, C
Depreciation, RelativeOrders
Depreciation, DesiredOrders
S, SupplyAdjustment
C, CapitalAdjustment
Depreciation,
DesiredSupplyLine
Production,
DesiredSupplyLine
Capacity, Capacity Utilization
DesiredProduction,
Capacity Utilization
B, DesiredSupplyLine
DesiredProduction,
DesiredCapital
NOTE: B-Backlog, C-Capital, S-Supply
Table 2: Feedback loops in SILS — the Simple Long Wave model (a)
Loop no. Variable sequence Unique consecutive edges
(Loop name)
L3 Acquisitions, C, Depreciation, CapitalOrders,S Depreciation, CapitalOrders, S
(Capital expansion)
L9 Acquisitions, C, Capacity, Production Capacity, Production, Acquisitions
(Economic growth)
Lil Acquisitions, C, Capacity, Production, B Production, B, Acquisitions
(Order fulfillment)
L14 Acquisitions, C, Depreciation, CapitalOrders, CapitalOrdersBacklog, B,
CapitalOrdersBacklog, B Acquisitions
(Backlog expansion)
Table 3: Feedback loops in SILS — the Simple Long Wave model (b)
6 - — 05
DesireProduction}
+ Atomic behavior pattem!
5k ‘
0.25
+ i
g a 8
i ode S| on oe edema tall 0 ;
a 9
2 | &§
4 -0.25 *
1 .|
0 i i i i i i 05
0 10 20 30 40 50 60 70 80 90 100
Time (year)
Figure 6: The behaviour of Desired Production
T T 0.5
DesireProduction —S—
Atomic behavior pattem -~ft-~
4 4
5
5 5
ae i
a 3
3
2 5
<
1
0 -0.5
40 45 50 55 60 65 70 75 80
Time (year)
Figure 7: A cycle of Desired Production
Though the timing of shifts in dominance are different 7, the behaviour patterns concur with each
other in each phase and the durations of the corresponding phases are close. One discrepancy
occurs in the end of the cycle, we identify a fifth linear phase while Kampmann attributed it to be
convergent. This can be attributed to their different definitions of the phase.
Phase name I II il IV Vv
behaviour pattern divergent convergent | divergent | convergent linear
Time interval (ours) | (46.5-49.25) | (49.50-58.5) | (58.75-60) | (60.25-69.0) | (69.25-90)
Time interval (zz) (50-53) (54-62) (63-66) (67-95) /
Table 4: Phases and behaviour pattern of Desired Production
We will highlight the analysis on the loops that have no unique edges as other loops can be
analyzed by the current behavioural method. Let us focus on the loops in Table 3 and demonstrate
the new deactivation procedure step by step. L3 is first selected as the candidate loop. The consec-
utive unique edges are Depreciation—CapitalOrder and CapitalOrder—Supply. Its deactivation
is carried out as follows:
1. Create two nodes which serve as the representatives of the two variables of the first edge
in the unique consecutive edges. Two nodes are named DepreciationConstant and Capi-
talOrderTemp and correspond with Depreciation and CapitalOrder respectively. Link the
new nodes with the same direction as their counterparts in the reference model. The screen-
shot of the added edge is shown by Figure 8(b).
°The intervals in our analysis are approximately 4 years earlier than those in EEA, we can adjust our start time of
the simulation 4 years behind the current start time to make the intervals match
RelativeOrders <#—___
Supply eae — so —_—"
‘Acquisitions sai ye
E RelativeOrders ~—_
ue Supply = —"
— CapitalOrders
DepreciationConstant
Capital a
Let Decision
)
aie OR
supply x
wo ae capitals —"
A,
pe | Cop —
Ke bird ee
(c)
Figure 8: Loop capital expansion (L3) is deactivated
2. Switch the tail of the edge from the middle variable in the unique edge pair to its representa-
tive while keeping the head of the edge unchanged. In this model, we delete CapitalOrders >
Supply and add an edge CapitalOrdersT emp — Supply (see Figure 8(c)).
3. Add new edges starting from the variables which have links to variable in the middle of
the unique edge pair (except the variable in the unique edge pair), and ending to the new
representative of that middle variable. We identify only one edge pointing to CapitalOrders
except Depreciation— CapitalOrders, i.e., RelativeOrders— CapitalOrders. Therefore, we
add a new edge Relative Orders— CapitalOrdersTemp. Figure 8(c) shows the finally modified
model after deactivating L3.
The structure of L3 has been modified and the feedback from Capital to Depreciation is cut and
represented by a new loop: DepreciationConstant — CapitalOrdersT emp — S — Acquisitions >
C. Then we have to set DepreciationConstant which is the representative of the origin in the unique
edge pair to be a fixed value and modify equations when simulating the model with L3 deactivated:
CapitalOrdersT emp DepreciationConstant * RelativeOrders
Supply = INTEG(CapitalOrdersTemp — Acquisitions, Supply)
where DepreciationConstant refers to the value of Depreciation at the deactivation time.
Repeated procedures are applied to deactivate L9, L11 and L14. The resulting model is il-
lustrated in a set of graphs (Figure 10, 12, and 14 respectively). Meanwhile, the reference model
which highlights the unique consecutive two edges is also displayed for the purpose of clarification.
We will outline the deactivation procedure on these loops.
sis Capital
CapacityUtiltization
DesiredP
™ Backlog
Production
Figure 9: Highlight of loop economic growth (L9) in the reference model
The unique consecutive two edges in the economic growth loop L9 are Capacity Production
and Production—Acquisitions. Create two nodes (CapacityConstant and ProductionTemp) and
link them in the same direction as their counterparts in the reference model (Figure 10(a)). We
then remove the edge Production—Acquisitions (represented by the dash line) and replace it by
adding the edge ProductionTemp—Acquisitions for deactivating L9 (Figure 10(b)). Finally, all the
variables which have links to Production in the reference model are relinked to ProductionTemp
except for the variable Capacity to recover other loops. Hence, one edge from Capacity Utilitization
to ProductionTemp is added.
L__/ l | Gam
we Capital ra.
an
“ ™ Neo - ¥ yConstant Avg
a Sine
— exc ee
cree
waht Ss hae
eile ran ‘\
* qs, ‘DesiredP
‘DesiedP: PY) Backiog A
=P" Backlog - oe
“~Production 4 e
(a)
Figure 10: Loop economic growth (L9) is deactivated
The changed equations in deactivating L9 are outlined below:
ProductionT emp
CapacityConstant * CapacityUtilization
Acquisitions = Supply * ProductionTemp/ Backlog
where CapacityConstant is the value of Capacity at the shifting time of each phase.
i
/ Ls I Capital. --——=
“Acquisions
aN
a comet
{oe
dog Production
Sec
an
GoodOrders NormalDeliveryDelay
Figure 11: Highlight of loop order fulfillment (Z11) in the reference model
The third loop order fulfillment L11 is selected to be deactivated. Production—Backlog and
Backlog—Acquisitions are the unique consecutive edges which distinguish L11 from other loops in
SILS. To avoid the deactivation of edge Production— Backlog affecting other loops, we maintain
the original edge. However, in order to deactivate L11, we create a new edge ProductionCon-
stant—BacklogTemp (Figure 12(a)) to work as a copy of Production—Backlog. Then, we have
.
CapitalOrdersBacklog
Bi
\
GoodOrders
roductionConst NomnaDe
j svt isis
(a) (b)
Figure 12: Loop order fulfillment (L11) is deactivated
to add “inputs” (i.e., the terms on the right hand side of equation BacklogTemp) to the new node
BacklogTemp. On account of the fact that BacklogTemp’s counterpart is Backlog, we add the same
“inputs” to BacklogTemp (except Production as ProductionConstant serves as an “input”). Finally,
we link BacklogTemp to Acquisitions and delete the edge Backlog—Acquisitions.
Based on the above analysis, we need to change equations by:
BacklogTemp = INTEG (CapitalOrdersBacklog + GoodsOrders ~ ProductionConstant, BacklogT emp )
Acquisitions = Supply * Production/BacklogTemp
where DepreciationConstant and the initial value of BacklogTemp refer to the values Depreciation
and Backlog have at the deactivating time.
NG
Figure 13: Highlight of loop backlog expansion (L14) in the reference model
The final loop is the backlog expansion loop (L14). Its unique consecutive two edges are Cap-
italOrdersBacklog— Backlog and Backlog—Acquisitions. A new constant CapitalOrdersBacklog-
Constant is created to be a fixed inflow of BacklogTemp (Figure 14(a)). We add the other “inputs”
of Backlog to BacklogT emp, i.e., Production and GoodOrders. Finally, this new substructure
replaces Backlog in the input of Acquisitions in Figure 14(b). The deactivation of L14 is im-
plemented by passing the constant inflow of BacklogTemp to Acquisitions without affecting the
edge CapitalOrdersBacklog— Backlog in the reference model (Figure 13). Modifications are made
— | Supply
| _~ CapitalOrders a
> ae
Capital es
1 — we we
Ee
ackdo; Backlog
Liat acy = =~ =e eal
GoodOrder: =
s GoodOrdes——
Tem. &
‘Ppuaawectgoeealas CapitelOrdersBac
(a) (b)
Figure 14: Loop backlog expansion (L14) is deactivated
according to the model in Figure 14(b) by the following equations:
BacklogTemp = INTEG (CapitalOrdersBacklogConstant + GoodsOrders ~ Production, BacklogT emp )
Acquisitions = (Supply * Production)/BacklogTemp
where CapitalOrdersBacklog Constant refers to the value of CapitalOrdersBacklog at its deactivat-
ing time and the initial value of BacklogTemp is corresponding to Backlog at the same time.
4.3 Experiment result
Simulations on the modified model with the above four loops deactivated individually is conducted
in phase I. We observe that none of their atomic behaviour patterns changes. This indicates that
they are not dominant loops in this phase. Furthermore, deactivating the self-ordering loop (L16)
gives rise to the change of behaviour pattern from divergent to linear. Therefore, L16 is considered
to be the dominant loop in phase I. Examine the result from Kampmann’s eigenvalue analysis and
Ford’s behavioural method in the same phase, we find our dominant loop test concurs with the
their conclusion, i.e., we all agree that the self-ordering loop L16 contributes most to generating
the exponential growth of Desired Production in phase I.
In phase II, EEA concludes the economic growth loop (L9) and capital expansion loop (L3)
have the most significant influence on Desired Production growing increasingly slowly (49.50 -
58.5 year). Thus, we initially test L9. The modified model reduces the convergence of Desired
Production, but still maintains a weak logarithmic growth. Then, the capital expansion loop (L3)
is chosen to test. The result is as same as L9. The atomic behaviour pattern sustains convergent
over phase II, although its value is close to zero. Taking into account the possibility of forming
a shadow loop pair, we deactivate L3 and L9 simultaneously. The behaviour pattern now changes
from convergent to roughly linear and we can see the change of the behaviour pattern values in
Figure 15. As it is a numerical simulation and the data has precision limitation, it is difficult to
observe exactly linear behaviour, so our conclusion is derived based on the comparison with others,
it is the most close to zero. Since the dominance test when both loops are inactive is different from
when deactivated individually, we conclude that that the capital expansion loop dominates but has
a shadow feedback loop (Ford, 1999): the economic growth loop. This result is not identical
with Ford’s analysis, which considers the economic growth is the only dominant loop. This is
attributable to the way of deactivating the loop that differs. Specifically, deactivating L9 by its
unique consecutive edges is weaker than by a unique edge. However, this is not a contradiction.
Desired Production
3 and L.9 deactivated. ——
ase behavior patter ow
Figure 15: Comparison of atomic behaviour patterns in phase II
The precipitous decrease of Desired Production in phase III is 3 years in eigenvalue analysis
while we identify it to be much smaller, i.e., 1.25 years. Ford (1999) obtained a similar result as
ours where phase III consists of two phases, divergent and convergent. Eigenvalue analysis iden-
tifies the self-eroding loop (L16) as the dominant loop in the steep decline of Desired Production.
The behaviour patterns are the same (divergent) when we deactivate the four loops. The domi-
nance test over capital self-ordering loop (L16) results in linear and agree with the result with both
Kampmann and Ford.
The gradual recovery of Desired Production characterizes phase IV. An identical analysis is
conducted and the ABP does not indicate any dominant loops identified among these four loops.
The behavioural analysis identifies deactivating the capital decay loop (L2) generates the conver-
gent behaviour. This result reinforces Ford’s and Kampmann’s analysis on the initial part of phase
IV. Moreover, in the late stage of phase IV, the behaviour pattern implies the demand balance loop
(L12) gradually become a dominant loop.
Likewise, in the final phase, which is the late period of phase IV (approximately 83-95) in
eigenvalue analysis, we repeat the dominance tests. The atomic behaviour pattern suggests the
loop capital decay (L2) dominates phase V (the atomic behaviour pattern changes from linear to
divergent) while the loop demand balancing (L12) is also dominant throughout this phase (di-
vergent when loop L12 is deactivated). This result does not fully agree with others because the
reference behaviour pattern disagrees.
To clearly present the dominant loops identified by different method, we organize them in Table
5. In summary, our method of deactivating a loop with no unique edge by the unique consecutive
two edges concurs with the previous analysis using the same model. This helps us to establish
confidence in the new loop deactivation approach.
Dominant loops | EEA | behavioural method (Ford) | behavioural method (new)
I L16 L16 L16
I 13, L9 L9 13, L9
Il L16 L2, 16 L16
IV (V) 12 12 12, L12
Table 5: Dominant loop analysis by different approaches
5 Conclusions and future work
Based on the work from Ford (1999) and Phaff (2008), we proposed a loop deactivation method by
modifying its unique consecutive two edges. The Simple Long Wave model is chosen to demon-
strate this method and test its validity. A main contribution of this paper is that we enhance the
capability of the behavioural method by allowing it to be applicable when no control variable or
no unique edge is identified in a loop (SILS is adopted as the candidate loop set). This improve-
ment makes the behavioural method more robust and helps to automate it, as well as develop a
systematic formal analysis software.
There are some limitations in the proposed approach: 1) When more than one pair of the
unique consecutive edges are identified, it does not specify if using different pairs to deactivate the
same loop would vary the atomic behaviour pattern. 2) It does not guarantee the loop deactivation
is universally possible. A failure case is that the candidate loop cannot find even one set of the
unique consecutive two edge. Though it is unlikely in most cases, it is a potential problem. 3) The
test set is small. Only one example is given to compare the analysis result. It is in need of abundant
models and test examples to validate this alternative loop deactivation approach.
Another drawback associated with the behavioural method is using the atomic behaviour pat-
tern to determine whether it is a dominant loop. This works when the behaviour is convergent
or divergent, but it becomes vulnerable when the behaviour is linear. It is because the simulation
result contains some approximations and varies depend on different simulation tools. Furthermore,
we may use different ways to process the data. Therefore, it is unlikely to get a series of contin-
uous zeros for the values of the behaviour pattern. A possible way is to set a range for the linear
behaviour pattern according to the application, within which we consider it is linear.
The issues we have stated are ideal avenues for the future research.
6 Acknowledgment
The authors would like to gratefully acknowledge the continued support of Science Foundation
Ireland.
References
Ford, D. N. (1999). A behavioral approach to feedback loop dominance analysis. System dynamics
review 15, 3-36.
Forrest, N. B. (1983). Eigenvalue analysis of dominant feedback loops. The 1th International
Conference of the System Dynamics Society.
Giineralp, B. (2005). Progress in eigenvalue elasticity analysis as a coherent loop dominance
analysis tool. The 23rd International Conference of The System Dynamics Society.
Kampmann, C. E. (1996). Feedback loop gains and system behavior. The 14th International
Conference of the System Dynamics Society.
Mojtahedzadeh, M. (1997). A Path Taken: Computer Assisted Heuristics For Understanding Dy-
namic Systems. Ph. D. thesis, University at Albany.
Mojtahedzadeh, M. (2001). Digest: A new tool for creating insightful system stories. The 19th
International Conference of the System Dynamics Society.
Mojtahedzadeh, M., D. Andersen, and G. P. Richardson (2004). Using digest to implement
the pathway participation method for detecting influential system structure. System dynamics
reveiw 20, 1-20.
Oliva, R. (2004). Model structure analysis through graph theory: Partition heuristics and feedback
structure decomposition. System Dynamics Review 20, 313-336.
Oliva, R. and M. Mojtahedzadeh (2004). Keep it simple: Dominance assessment of short feedback
loops. The 22nd International Conference of the System Dynamics Society.
Phaff, H. G. (2008). Generalised loop deactivation method. The 2008 International Conference of
the System Dynamics Society.
Saleh, M. and P. Davidsen (2000). An eigenvalue approach to feedback loop dominance analysis
in non-linear dynamics models. The 18th International Conference of the System Dynamics
Society.
Sterman, J. D. (1985). A behavioral model of the economic long wave. Journal of Economic
Behavior and Organization 6(1), 17-53.
A Equations for the Simple Long Wave model
timestep dt=0.25 years; start time=0.0; Euler integration method.
Stocks
Backlog = INT(CapitalOrdersBacklog+GoodsOrders-Production, NormalDeliveryDelay)
Supply = INT(CapitalOrders-Acquisitions,(Backlog/Production)*Depreciation)
Capital =INT(Acquisitions-Depreciations,
CapitalOutputRatio* AvgLifeOfCapital/(AvgLifeOfCapital-CapitalOutputRatio))
Flows
CapitalOrders = Depreciation*RelativeOrders
Acquisitions = Supply*Production/Backlog
Depreciation = Capital/AvgLifeOfCapital
CapitalOrdersBacklog = CapitalOrders
Production = Capacity*Capacity Utilitization
Auxiliaries
RelativeOrders = RelativeOrderfnc(DesiredOrders/Depreciation)
DesiredOrders = CapitalAdjustment+Depreciation+Supply Adjustment
CapitalAdjustment = (DesiredCapital-Capital)/CapitalAdjustTime
Capacity = Capital/CapitalOutputRatio
DesiredCapital = CapitalOutputRatio*DesiredProduction
Capacity Utilitization = Capacity Utifnc(DesiredProduction/Capacity)
SupplyAdjustment = (DesiredSupplyLine-Supply)/SupplyAdjustTime
DesiredProduction = Backlog/NormalDeliveryDelay
DesiredSupplyLine = Depreciation* Backlog/Production
AvgLifeOfCapital = 20
CapitalOutputRatio = 3
CapitalAdjustTime = 1.5
SupplyAdjustTime = 1.5
NormalDeliveryDelay = 1.5
GoodOrders = 1
RelativeOrderfne = {(-1,0),(-0.5,0),(0,0.2),(0.5,0.5),(1,1),(1.5,1.5),(2,2),(2.5,2.5),
(3,3),(3.5,3.5),(4,4),(4.5,4.4), (5,4.8),(5.5,5.2),(6,5.5),(6.5,5.65),(7,5.7),(7.5,5.75).(8,5.8),(40,6)}
CapacityUtifne = {(0,0),(0.2,0.3),(0.4,0.6),(0.6,0.8),(0.8,0.9),(1,1),(1.2,1.03),(1.4,1.05),
(1.6,1.07),(1.8,1.09),(2,1.1)}