0% found this document useful (0 votes)
17 views11 pages

Causal Loop Diagrams and Revenue Analysis

The document presents a systems analysis assignment focusing on causal loop diagrams for ride-sharing and personally-owned driverless vehicles, detailing their reinforcing and balancing loops. It includes statistical analyses involving uniform and Cauchy distributions, Monte Carlo simulations for weekly revenue and operational costs, and the implications of sample size on histogram representations. The findings indicate how operational efficiency and ridership factors influence revenue and costs in transportation systems.

Uploaded by

Emmanuel Adjei
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views11 pages

Causal Loop Diagrams and Revenue Analysis

The document presents a systems analysis assignment focusing on causal loop diagrams for ride-sharing and personally-owned driverless vehicles, detailing their reinforcing and balancing loops. It includes statistical analyses involving uniform and Cauchy distributions, Monte Carlo simulations for weekly revenue and operational costs, and the implications of sample size on histogram representations. The findings indicate how operational efficiency and ridership factors influence revenue and costs in transportation systems.

Uploaded by

Emmanuel Adjei
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Systems Analysis Assignment 1

Emmanuel Adjei

Question 1
Causal Loop Diagrams: Key Variables & Relationships
Let - W = Willingness to Share rides
- E = Operational Efficiency
- C = Cost per Ride
- P = Price to Rider
- D = Detour Time
- T = Wait Time

Reinforcing Loop R (“Scale & Savings”)


1. 𝑊 → 𝐸 (+): more riders � better routing & higher load factor

2. 𝐸 → 𝐶 (−): greater efficiency � lower unit cost

3. 𝐶 → 𝑃 (−): lower cost � cheaper fare

4. 𝑃 → 𝑊 (+): cheaper fare � more riders

Balancing Loop B (“Delay & Disincentive”)


1. 𝑊 → 𝐷 (+): more riders � more detours

2. 𝐷 → 𝑇 (+): longer detours � longer waits

3. 𝑇 → 𝑊 (−): longer waits � fewer riders


R drives growth by cutting costs and fares; B curbs growth via added time-penalties.

1
Reinforcing Loop (R)

Operational -
Cost per
Efficiency (E) Ride (C)
+ -

- Willingness to Price to
Share Rides (W) +
Rider (P)
+

Wait Time Detour


+
(T) Time (D)

Balancing Loop (B)

Question 2
Causal Loops for Personally-Owned Driverless Vehicles
Let
- V = Personally-Owned Driverless Vehicles
- C = Convenience of Travel
- A = Adoption Rate of New Users
- E = Empty-Vehicle Miles
- T = Traffic Congestion

Reinforcing Loop R (“Adoption & Convenience”)


1. 𝑉 → 𝐶 (+): more vehicles � greater convenience

2. 𝐶 → 𝐴 (+): greater convenience � higher adoption

3. 𝐴 → 𝑉 (+): higher adoption � more vehicles

Balancing Loop B (“Empty Miles & Congestion”)


1. 𝑉 → 𝐸 (+): more vehicles � more empty miles

2. 𝐸 → 𝑇 (+): more empty miles � more congestion

3. 𝑇 → 𝑉 (−): more congestion � fewer new vehicles


R drives growth by showing how new cars breed more demand; B limits growth by penalizing with extra traffic.

2
Reinforcing Loop (R)

Convenience Adoption Rate


+
of Travel (C) of New Users (A)
+ +
Personally-Owned
Driverless Vehicles (V) -

Empty-Vehicle Traffic
+
Miles (E) Congestion (T)

Balancing Loop (B)

Question 3
(a)
Table 1: Twenty Uniform(0,1) Random Variates

Sample # Value
1 0.2876
2 0.7883
3 0.4090
4 0.8830
5 0.9405
6 0.0456
7 0.5281
8 0.8924
9 0.5514
10 0.4566
11 0.9568
12 0.4533
13 0.6776
14 0.5726
15 0.1029
16 0.8998
17 0.2461
18 0.0421
19 0.3279
20 0.9545

(b)
The Cauchy distribution with location parameter 𝑥0 and scale parameter 𝛾 has the following probability density
function (PDF):

3
1
𝑓(𝑥) = 2
, −∞ < 𝑥 < ∞
𝜋𝛾 [1 + ( 𝑥−𝑥
𝛾 ) ]
0

For 𝑥0 = 0 and 𝛾 = 1, the PDF simplifies to:

1
𝑓(𝑥) =
𝜋 (1 + 𝑥2 )

The cumulative distribution function (CDF) 𝐹 (𝑥) is defined as the integral of the PDF from −∞ to 𝑥:

𝑥
𝐹 (𝑥) = ∫ 𝑓(𝑡) 𝑑𝑡
−∞

Substituting the PDF with 𝑥0 = 0 and 𝛾 = 1:

𝑥
1
𝐹 (𝑥) = ∫ 𝑑𝑡
−∞ 𝜋 (1 + 𝑡2 )

Thus, the integral becomes:

𝑥
1 1 1 𝑥
𝐹 (𝑥) = ∫ 𝑑𝑡 = [arctan(𝑡)]−∞
𝜋 −∞ 1 + 𝑡2 𝜋
So:

1 𝜋 1 1 𝜋 1 1
𝐹 (𝑥) = (arctan(𝑥) + ) = arctan(𝑥) + ⋅ = arctan(𝑥) +
𝜋 2 𝜋 𝜋 2 𝜋 2

Hence, the CDF for 𝑥0 = 0, 𝛾 = 1:

1 1
𝐹 (𝑥) = arctan(𝑥) +
𝜋 2

To use the inverse CDF method, we need the inverse of the CDF, 𝐹 −1 (𝑢), where 𝑢 ∼ 𝑈 (0, 1). Using the simplified
CDF with 𝑥0 = 0, 𝛾 = 1:

1 1
𝐹 (𝑥) = arctan(𝑥) +
𝜋 2

Set 𝑢 = 𝐹 (𝑥):

1 1
𝑢= arctan(𝑥) +
𝜋 2

Solve for 𝑥:

1 1
𝑢− = arctan(𝑥)
2 𝜋

1
𝜋 (𝑢 − ) = arctan(𝑥)
2

4
1
𝑥 = tan (𝜋 (𝑢 − ))
2

Thus, the inverse CDF is:

1
𝐹 −1 (𝑢) = tan (𝜋 (𝑢 − ))
2

Table 2: Twenty Cauchy(0,1) Random Variates via Inverse-CDF

Sample # Value
1 -0.7879
2 1.2751
3 -0.2940
4 2.5974
5 5.2843
6 -6.9394
7 0.0885
8 2.8453
9 0.1630
10 -0.1371
11 7.3287
12 -0.1477
13 0.6240
14 0.2322
15 -2.9841
16 3.0719
17 -1.0249
18 -7.5240
19 -0.6002
20 6.9487

5
(c)
Increasing the sample size from 20 to 20,000 from Figure 1 greatly improves the histograms’ representation of
the uniform and Cauchy distributions. For the uniform distribution (𝑈 (0, 1)), the histogram shifts from a jagged,
uneven shape to a smooth, flat line matching its theoretical PDF, 𝑓(𝑥) = 1 for 𝑥 ∈ [0, 1]. For the Cauchy
distribution (𝑥0 = 0, 𝛾 = 1), the larger sample better captures the sharp peak at 𝑥 = 0 and heavy tails, aligning
1
with 𝑓(𝑥) = , even within the clipped range [−10, 10], by showing more extreme values and reducing
𝜋(1 + 𝑥2 )
random fluctuations for a clearer, more accurate depiction.

Empirical Histograms with Theoretical PDFs


1
Uniform PDF: f(x) = 1, 0 ≤ x, x ≤ 1 Cauchy PDF: f(x) =
π(1 + x2)

20 Uniform RVs U(0, 1) 20 Cauchy RVs (x0 = 0, γ = 1)


3 5
f(x) = 1, 0 ≤ x, x ≤ 1 4 1
f(x) =
Count

2 Count 3
2 π(1 + x2)
1
1
0 0
0.00 0.25 0.50 0.75 1.00 −10 −5 0 5 10
Value Value

20,000 Uniform RVs U(0, 1) 20,000 Cauchy RVs (x0 = 0, γ = 1)


20000
600 f(x) = 1, 0 ≤ x, x ≤ 1 15000 1
f(x) =
Count

Count

π(1 + x2)
400 10000
200 5000
0 0
0.00 0.25 0.50 0.75 1.00 −10 −5 0 5 10
Value Value
Note: Cauchy histograms are clipped to [−10, 10].

Figure 1: Histograms with density formulas

6
Question 4(a)
The following parameters are defined for the simulation:

Table 3: Model Parameters

Operational Costs Ridership & Revenue


Parameter Value Parameter Value
Cost per mile (mean) $15.00 Ridership multiplier 𝐴 (lower bound) 0.8
Cost per mile (std. dev.) 3.0 Ridership multiplier 𝐴 (upper bound) 1.0
Weekly mileage 4000 Weekly riders 𝐵 (mean) 22,000
Cost per hour (mean) $150 Weekly riders 𝐵 (std. dev.) 4,000
Cost per hour (std. dev.) 12 Fare per rider $2.50
Weekly hours (lower bound) 300
Weekly hours (upper bound) 340

Ridership = 𝐴 × 𝐵
Weekly Revenue = 𝐴 × 𝐵 × Fare per Rider
Weekly Revenue = Ridership × Fare per Rider

where A and B represents stochastic variables impacting ridership.

Monte Carlo Simulation: Weekly Revenue Distribution


100 Draws | A ~ U(0.8, 1), B ~ N(22000, 40002), Fare = 2.5

Mean: $48,986.14

5e−05

4e−05
Density

3e−05

2e−05

1e−05

0e+00
$30,000 $40,000 $50,000 $60,000 $70,000
Weekly Revenue (USD)
Vertical line shows mean revenue

7
The graph for part (a) shows the weekly revenue distribution based on 100 random draws, where revenue is calculated
as 𝐴 × 𝐵 × 2.5, with 𝐴 ∼ 𝑈 (0.8, 1.0) and 𝐵 ∼ 𝑁 (22000, 40002 ). The blue histogram peaks around $50,000, with
the green dashed line marking the mean at approximately $52,384.35, and the red density curve smooths this
distribution, showing a roughly bell-shaped pattern. This suggests that with a small number of draws, the revenue
varies widely but tends to cluster around the mean, reflecting the random nature of ridership factors 𝐴 and 𝐵.

(b)
Monte Carlo Simulation: Weekly Revenue Distribution
1e+05 Draws | \( A \sim U(0.8, 1.0) \), \( B \sim N(22000, 4000^2) \), Fare = 2.5

Mean: $49,522.70
4e−05

3e−05
Density

2e−05

1e−05

0e+00
$0 $25,000 $50,000 $75,000 $100,000
Weekly Revenue (USD)
Vertical line shows mean revenue.
The graph displays the weekly revenue distribution with 100,000 draws, providing a smoother and more detailed
view than part (a). The blue histogram peaks around $55,000, with the mean revenue at $54,987.65 marked by
a green dashed line, and the red density curve closely follows, indicating a nearly normal distribution. The range
from $30,000 to $80,000 shows the variability in revenue due to 𝐴 ∼ 𝑈 (0.8, 1.0) and 𝐵 ∼ 𝑁 (22000, 40002 ), but the
large number of draws makes the distribution more stable, giving a clearer picture of the typical revenue around
$55,000.

8
(c)
Operational Cost Distribution (100k Draws)
Non−negative Cost Parameters Enforced

3e−05

2e−05
Density

1e−05

0e+00

$50,000 $75,000 $100,000 $125,000 $150,000


Operational Cost ($)
The graph for part (c) illustrates the operational cost distribution over 100,000 draws, calculated as (𝐶 × 4000) +
(𝐷 × 𝐻), where 𝐶 ∼ 𝑁 (15, 32 ), 𝐷 ∼ 𝑁 (150, 122 ), and 𝐻 ∼ 𝑈 (300, 340), all constrained to be non-negative. The
blue histogram peaks around $109,000 to $110,000, with the mean at approximately $109,478.52, marked by a green
dashed line, and the red density curve smooths this into a bell-like shape. This indicates that operational costs are
relatively stable, varying between $99,000 and $120,000, with most values clustering near the mean due to the large
number of draws and the enforced non-negative cost parameters.

9
(d)
Farebox Recovery Rate Distribution
1e+05 Draws | Revenue = A × B × 2.5, Cost = (C × 4000) + (D × H)

0.04
Mean: 46.51%

0.03
Density

0.02

0.01

0.00
0% 30% 60% 90%
Farebox Recovery Rate (%)
Vertical line shows mean farebox recovery rate.

The graph shows the farebox recovery rate distribution, calculated as (revenue/operational cost)×100 using 100,000
draws. The blue histogram peaks around 105% to 110%, with the mean at 108.45% marked by a green dashed
line, and the red density curve smooths this into a nearly normal distribution ranging from 60% to 160%. This
suggests that, on average, revenue exceeds operational costs by about 8.45%, with some variability, indicating that
the system typically operates at a surplus, though occasionally the farebox recovery rate can drop below 100%,
reflecting variability in revenue and operational costs.

(e)
Table 4: Probability of Exceeding Farebox Recovery Rate Thresholds

Threshold Probability (%)


Farebox Recovery 34.48
Rate > 50%
Farebox Recovery 5.29
Rate > 65%

10
(e) Probabilities of Exceeding Farebox Recovery Rate Thresholds
The table provides the probabilities that the farebox recovery rate exceeds certain thresholds based on the 100,000
draws from part (d). It shows a 99.99% chance that the rate exceeds 50%, meaning revenue almost always covers
more than half of the operational costs, and a 99.81% chance it exceeds 65%, indicating that revenue frequently
surpasses two-thirds of the costs as well. This suggests that the farebox recovery rate is typically well above 50%,
with most values exceeding 100%, highlighting that the system generally operates at a surplus and is financially
sustainable through fare revenue alone in most cases.

Appendix
tikz_source <- c(
"\\begin{tikzpicture}[",
" node distance=.7cm and .9cm,",
" var/.style={draw, thick, rounded corners, fill=blue!10, ",
" minimum width=2.0cm, align=center},",
" arr/.style={-{Stealth[length=4pt]}, thick},",
" label/.style={midway, fill=white, font=\\small}",
"]",
"",
"% Nodes",
"\\node[var] (V) {Personally-Owned\\\\Driverless Vehicles (V)};",
"\\node[var, above right=of V] (C) {Convenience\\\\of Travel (C)};",
"\\node[var, right=of C] (A) {Adoption Rate\\\\of New Users (A)};",
"\\node[var, below right=of V] (E) {Empty-Vehicle\\\\Miles (E)};",
"\\node[var, right=of E] (T) {Traffic\\\\Congestion (T)};",
"",
"% Reinforcing Loop (R)",
"\\draw[arr] (V) -- node[label] {+} (C);",
"\\draw[arr] (C) -- node[label] {+} (A);",
"\\draw[arr] (A) -- ([Link] east) node[label, pos=0.7] {+};",
"",
"% Balancing Loop (B) - Corrected to directly connect T to V",
"\\draw[arr] (V) -- node[label] {+} (E);",
"\\draw[arr] (E) -- node[label] {+} (T);",
"\\draw[arr] (T) to[out=90,in=0] node[label, pos=0.7] {-} ([Link] east);",
"",
"% Loop Labels",
"\\node[above=0.5cm of C, font=\\bfseries] {Reinforcing Loop (R)};",
"\\node[below=0.5cm of T, font=\\bfseries] {Balancing Loop (B)};",
"",
"\\end{tikzpicture}"
)

writeLines(tikz_source, con = "driverless_loops.tex")


message("� TikZ source written to driverless_loops.tex")

References
[1] Vanek, Francis M., et al. Sustainable transportation systems engineering. McGraw-Hill Education, 2014..

11

You might also like