Systems Thinking with AI, illustrated chapter reader ยท Chapter 36

36Elective Backlogs as a Stock

A waiting list is a level, and the chapter fits one to a public record without forecasting it.

Four small demonstrations on the England waiting list record that the chapter's pack reads. Check the stock arithmetic, see a fit pass and a holdout fail, rank what moves the long-wait stock, and read a recovery date that can honestly be None. Fitted values are inferred from the committed record. Varied values are constructed and are labelled so.

Every example in these readers is a constructed teaching example built from the chapter's own numbers. Chapters 36 to 39 start from committed public records; their fitted values are inferred from those records, and nothing here is a forecast.

1Demonstration 1 of 4

A gap held open is the growth

How much of the list's growth does a steady gap between arrivals and departures explain?

A stock changes by the net flow times the time it runs. The record's average gap, taken from its own start and end, times 44 months rebuilds the growth, and a shorter or scaled gap shows how far a straight line sits from the month by month record.

Equation: a gap of 18,439 pathways a month between what arrived and what left

The list is incomplete pathways. The gap is arrivals minus all departures, in pathways per month. Months is how long the gap is held open, counted from April 2016.

Predict first. If the record's gap is held open for 44 months, does the straight line end on the December 2019 count?

Choose an example

Figure: A gap held open is the growth. Line chart of the record's incomplete pathways rising from 3.60 to 4.41 million over 44 months, with a dashed straight line that ends at 4.41 million after 44 months.
Months the gap is held open: 44, Gap as a multiple of the record's: 1
Constructed example on the committed public record: the gap is computed from the record, and the scale factor is a constructed value.

Calculated values

Gap per month in the record
18,439 pathways
Gap used in this state
18,439 pathways (x 1.0)
Months the gap is held open
44
Change in the list
811,305
List after those months (constructed)
4,414,911
List in the record at that month
4,414,911
Constructed minus record
0
Referrals, first year to third (percent)
7.5
Completions, first year to third (percent)
5.6

The record's list moves from 3,603,606 to 4,414,911 in 44 months, so the average gap is (4,414,911 - 3,603,606) / 44 = 18438.75 pathways a month. This state uses 1.0 x 18438.75 = 18438.75. Held open for 44 months that is 18438.75 x 44 = 811,305, so the list reads 3,603,606 + 811,305 = 4,414,911. The record at that month reads 4,414,911. The straight line lands on the record's December 2019 count because the gap is defined by it.

Use the idea

Before arguing about referrals or activity, multiply the net gap by the months it has run.

Where the conclusion applies

One average gap for the whole window and no other flow. It fails when the gap changes sign inside the window, as it does in the record around 2020.

Check your understanding: If the gap were half the record's, what would the list read after 44 months?
Half of 18,438.75 is 9,219.375, times 44 is 405,652.5, so the list reads 3,603,606 + 405,653 = 4,009,259 (rounded).

Chapter 36 source: section "The list did not grow because referrals grew". Demonstration C36-D01.

2Demonstration 2 of 4

A fit that passes and a holdout that fails

Does a small error on 2016 to 2019 say anything about 2021 to 2026?

The fit scores only the 45 fit months. The holdout months sit outside that window, so the same model can pass one and miss the other by a large factor.

Equation: mean absolute percentage error on total incomplete pathways

The model is the chapter's three stock structure started in April 2016. The validation rate is the share of the list removed each month without a recorded treatment. System growth is the shared monthly growth of capacity and referrals.

Predict first. At the fitted values, will the error over the holdout months be closer to 4 percent or to 36 percent?

Choose an example

Figure: A fit that passes and a holdout that fails. Error at one month is |model - record| / record. December 2019: |4,206,670 - 4,414,911| / 4,414,911 = 4.7 percent. June 2026: |4,676,007 - 7,147,562| / 7,147,562 = 34.6 percent. The mean of that ratio over the 45 fit months is 3.63 percent, inside the 5 percent tolerance set before the search, and over the holdout months it is 35.57 percent. These values are read off a grid of constructed settings around the fitted ones, not refitted.
Validation rate per month: 0.06, System growth per month: 0.004
Constructed example on the committed public record: the fitted values are inferred from it, and the neighbouring settings are constructed.

Calculated values

Validation rate (per month)
0.06
System growth (per month)
0.004
Fit window error (percent)
3.63
Against the 5 percent tolerance
inside
Holdout error (percent)
35.57
Model, December 2019
4,206,670
Model, June 2026
4,676,007

Error at one month is |model - record| / record. December 2019: |4,206,670 - 4,414,911| / 4,414,911 = 4.7 percent. June 2026: |4,676,007 - 7,147,562| / 7,147,562 = 34.6 percent. The mean of that ratio over the 45 fit months is 3.63 percent, inside the 5 percent tolerance set before the search, and over the holdout months it is 35.57 percent. These values are read off a grid of constructed settings around the fitted ones, not refitted.

Use the idea

Report the holdout error beside the fit error every time, even when it fails.

Where the conclusion applies

The tail steepness is held at its fitted value of 4.5, the top of its searched range. The comparison fails if definitions in the record change between windows.

Check your understanding: If the model reads 5,000,000 where the record reads 4,000,000, what is that month's error?
|5,000,000 - 4,000,000| / 4,000,000 = 0.25, which is 25 percent.

Chapter 36 source: section "The record, month by month". Demonstration C36-D02.

3Demonstration 3 of 4

Which parameter decides the long-wait stock

Which assumed or fitted parameter moves the over 52 week stock most, and does that depend on where the rest are held?

The swing is the gap between two runs that differ in one parameter. How big it is depends on how much of the stock the run still holds, which depends on the other settings.

Equation: long share, 126,362 pathways of swing

Long waiters are pathways over 52 weeks, counted in the stock of that name. Each parameter is swung across a range somebody would defend, with the others held at the stated place, and read at month 20.

Predict first. With the others at their midpoints, which of long_share and tail_steepness moves the stock more?

Choose an example

Figure: Which parameter decides the long-wait stock. Two paths of the over 52 week stock for twenty months from June 2022, one at the low and one at the high end of long_share, ending 126,362 pathways apart.
Parameter swung: long_share, Others held at: Midpoints of their ranges
Constructed example on the committed public record: ranges are the chapter's chosen ranges, and the fitted-values hold is a constructed variant of the midpoint hold.

Calculated values

Parameter swung
long_share
Range swung
0.020 to 0.150
Others held at
midpoints of their ranges
Long waiters at month 20, low end
142,700
Long waiters at month 20, high end
16,339
Swing (pathways)
126,362

Swing = |high end - low end| = |16,339 - 142,700| = 126,362 pathways at month 20. This is a one-at-a-time swing with the others held where stated, so it ranks parameters for this setting only. It is a chosen range, not a confidence interval.

Use the idea

Treat a ranking as a statement about where to measure first, under stated settings.

Where the conclusion applies

One parameter moves at a time and the ranges are chosen, not estimated. The ranking changes with the hold setting, so it does not rank the parameters in general.

Check your understanding: If the high end reads 130,000 and the low end 4,000, what is the swing?
|130,000 - 4,000| = 126,000 pathways.

Chapter 36 source: section "Which parameter decides it". Demonstration C36-D03.

4Demonstration 4 of 4

A recovery date, or the honest None

When does the modelled list first reach a threshold, and when does it never?

The function scans the run from the start and returns the first month at or under the threshold. If no month qualifies it returns None rather than a date.

Equation: recovery date of a result with a threshold of six million

The list is total incomplete pathways. A threshold is a count. recovery_date returns the first month the list is at or under the threshold, counted from June 2022, or None.

Predict first. Under the unchanged model, does the list reach 4 million within 48 months?

Choose an example

Figure: A recovery date, or the honest None. The first step at or under the threshold is model month 9.5: 5,983,210 - 6,000,000 = (-16790), while the step before reads 6,016,644 - 6,000,000 = 16644. Adding 10 months to June 2022 gives 2023-04. This is a property of the fitted structure, which failed its holdout, so it is not a forecast.
Policy: Unchanged model, Threshold (incomplete pathways): 6 million
Constructed example on the committed public record: policies and thresholds are the chapter's constructed values, run on the fitted structure.

Calculated values

Policy
baseline
Threshold
6,000,000
First month at or under it
2023-04
List at month 0
6,760,060
Lowest list in 48 months
5,340,226

The first step at or under the threshold is model month 9.5: 5,983,210 - 6,000,000 = (-16790), while the step before reads 6,016,644 - 6,000,000 = 16644. Adding 10 months to June 2022 gives 2023-04. This is a property of the fitted structure, which failed its holdout, so it is not a forecast.

Use the idea

Ask for the None branch whenever a tool hands out a date.

Where the conclusion applies

The fitted structure, reset to June 2022, which failed its holdout. A date here is a property of that structure and is not a forecast of the record.

Check your understanding: If a run starts at 6,760,060 and its lowest count is 5,430,712, does it reach 6,000,000, and does it reach 4,000,000?
Yes for 6,000,000, since 5,430,712 is below it. No for 4,000,000, since 5,430,712 - 4,000,000 = 1,430,712 above it, so the result is None.

Chapter 36 source: section "The exported artifact: recovery_date". Demonstration C36-D04.