Skip to the content

Topics Covered

Modified Exponential Logistic Curve Gompertz Curve Three Selected Points Partial Sums Detrending
On this page
  1. 1. Why Growth Curves?
  2. 2. Modified Exponential Curve
  3. 3. Logistic (Pearl-Reed) Curve
  4. 4. Gompertz Curve
  5. 5. Detrending
  6. Key Take-aways

1. Why Growth Curves?

MOTIVATION

Ordinary linear or parabolic trend, as met in Applied Statistics, extrapolates the same growth pattern forever. Real-world series (sales of a new product, adoption of technology, population of a city, bacterial cultures) typically exhibit an S-shaped (sigmoid) growth pattern:

Three classical curves capture this behaviour: modified exponential, logistic and Gompertz.

The three growth curves compared k — saturation level logistic inflects at k/2 Gompertz inflects at k/e ≈ 0.37k Modified exp. Logistic (symmetric S) Gompertz (asymmetric S) Time t →
Fig 1.1 — All three curves rise toward the same saturation ceiling \(k\), but their shapes differ. The modified exponential just rises and levels off (concave — no S-bend). The logistic is a symmetric S, bending at \(k/2\). The Gompertz is an asymmetric S that bends earlier, at \(k/e \approx 0.37k\), so its slow-down phase is longer.

2. Modified Exponential Curve

DEFINITION

The simplest growth curve. It approaches an upper asymptote \(a\) at a rate proportional to the remaining gap.

EQUATION \[ Y_t \;=\; a + b\, c^t, \qquad 0 < c < 1, \quad b < 0 \]

Here \(a\) = upper asymptote (the saturation level); \(b\) sets the initial gap; \(c\) is the rate parameter.

As \(t \to \infty\), \(c^t \to 0\) and \(Y_t \to a\). The curve is monotone increasing and concave (it does not have the typical sigmoid bend; it just rises and levels off).

2.1 Fitting by Three Selected Points

Choose three equidistant time points \(t_1, t_2, t_3\) with values \(Y_1, Y_2, Y_3\). Then:

\[ c \;=\; \left(\dfrac{Y_3 - Y_2}{Y_2 - Y_1}\right)^{1/(t_3 - t_2)} \] \[ a \;=\; \dfrac{Y_1 Y_3 - Y_2^2}{Y_1 + Y_3 - 2 Y_2} \] \[ b \;=\; \dfrac{Y_2 - Y_1}{c^{t_1}(c^{t_2 - t_1} - 1)} \]

2.2 Fitting by Partial Sums

Divide the series of \(n\) equal-spaced observations into three equal groups of \(k\) observations each (so \(n = 3k\)), and number the years \(t = 0, 1, \dots, 3k-1\) from the first observation. Sum each group:

\[ S_1 = \sum_{t=0}^{k-1} Y_t, \quad S_2 = \sum_{t=k}^{2k-1} Y_t, \quad S_3 = \sum_{t=2k}^{3k-1} Y_t \] \[ c^k \;=\; \dfrac{S_3 - S_2}{S_2 - S_1}, \qquad b \;=\; \dfrac{(S_2 - S_1)(c - 1)}{(c^k - 1)^2}, \qquad a \;=\; \dfrac{1}{k}\left[S_1 - \dfrac{S_2 - S_1}{c^k - 1}\right]. \]

Why these work. Summing \(a + b c^t\) over a group of \(k\) consecutive years gives \(S_1 = k a + b\,\dfrac{c^k - 1}{c - 1}\), and \(S_2\), \(S_3\) are the same with the \(b\) term multiplied by \(c^k\) and \(c^{2k}\). Subtracting consecutive sums removes \(a\): \(S_2 - S_1 = b\,\dfrac{(c^k - 1)^2}{c - 1}\) and \(S_3 - S_2 = c^k (S_2 - S_1)\). Their ratio gives \(c^k\); the first difference then gives \(b\); and \(S_1\) gives \(a\). Because every observation enters a sum, the fit is less sensitive to one irregular year than the three-selected-points fit.

EXAMPLE 1 — Three selected points

Sales data for years 2018–2026 (9 years). Pick \(t = 2018, 2022, 2026\) with values 50, 80, 95.

\(c^4 = (95 - 80)/(80 - 50) = 15/30 = 0.5\); \(c = 0.5^{1/4} = 0.841\).

\(a = (50 \cdot 95 - 80^2)/(50 + 95 - 2 \cdot 80) = (4750 - 6400)/(145 - 160) = -1650/-15 = 110\).

\(Y_t = 110 + b\, c^t\); using point 2018: \(50 = 110 + b\, 0.841^{2018}\). Plug appropriate normalization (shifting time origin to 2018 so \(t = 0\)): \(b = 50 - 110 = -60\).

Fitted: \(Y_t = 110 - 60(0.841)^t\). Saturation = 110.

EXAMPLE 2 — Partial sums (9 data points)

Values: 10, 15, 22, 30, 38, 45, 51, 56, 60. Group sums: \(S_1 = 47,\; S_2 = 113,\; S_3 = 167\).

\(c^3 = (167 - 113)/(113 - 47) = 54/66 = 0.8182\); \(c = 0.8182^{1/3} = 0.9353\).

\(b = 66\,(0.9353 - 1)/(0.8182 - 1)^2 = 66\,(-0.0647)/0.03306 = -129.2\).

\(a = \tfrac13\left[47 - 66/(0.8182 - 1)\right] = \tfrac13\,(47 + 363.0) = 136.7\).

Fitted (with \(t = 0\) at the first value): \(Y_t = 136.7 - 129.2\,(0.9353)^t\). The fitted values are 7.5, 15.8, 23.7, 31.0, 37.8, 44.2, 50.2, 55.8, 61.0 against the data 10, 15, 22, 30, 38, 45, 51, 56, 60. The estimated saturation level is \(a \approx 137\), more than twice the last observation: an asymptote this far beyond the data is an extrapolation and should be quoted with that caution.

3. Logistic (Pearl-Reed) Curve

DEFINITION

The classical S-shaped growth model, used for population biology, market saturation, technology adoption, epidemic spread.

\[ Y_t \;=\; \dfrac{k}{1 + b\, e^{-c t}}, \qquad k, b, c > 0 \]

\(k\) = upper asymptote (carrying capacity); \(c\) = intrinsic growth rate; \(b\) sets the inflection time.

Properties:

Fitting via Reciprocal Transform

Take reciprocals and rearrange:

\[ \dfrac{1}{Y_t} \;=\; \dfrac{1}{k} + \dfrac{b}{k}\, e^{-c t}. \]

Letting \(Z_t = 1/Y_t\) reduces the logistic to a modified exponential in \(Z_t\). Apply either of the methods from Section 2 to \(Z_t\) data.

Fitting by Partial Sums

Compute \(Z_t = 1/Y_t\), form three group sums of \(Z\), then proceed exactly as in modified-exponential partial-sums fitting.

EXAMPLE 1 — Population data

City population (lakhs) for 9 successive years: 5.0, 7.1, 9.9, 13.5, 17.7, 22.5, 27.5, 32.3, 36.6.

Reciprocals \(Z_t = 1/Y_t\), grouped in threes: \(S_1 = 0.44186\), \(S_2 = 0.17502\), \(S_3 = 0.09465\).

For \(Z_t = A + B\,C^t\) (with \(A = 1/k\), \(B = b/k\), \(C = e^{-c}\)): \(C^3 = (0.09465 - 0.17502)/(0.17502 - 0.44186) = 0.3012\), so \(C = 0.6703\); \(B = (-0.26684)(0.6703 - 1)/(0.3012 - 1)^2 = 0.1801\); \(A = \tfrac13\left[0.44186 + 0.26684/(0.3012 - 1)\right] = 0.02000\).

So \(k = 1/A = 50.0\) lakh, \(b = B/A = 9.0\) and \(c = -\ln C = 0.40\): \(Y_t = 50/(1 + 9e^{-0.4t})\), which reproduces all nine values to one decimal. The asymptote \(k = 50\) lakh is read as the city's carrying capacity, and the inflection (\(Y = 25\) lakh) falls at \(t = \ln 9/0.4 \approx 5.5\).

EXAMPLE 2 — Technology adoption

Mobile-phone penetration in a country fits a logistic with \(k \approx 1.05\) (proportion of population) — even higher than 1 because of multiple SIMs per person.

4. Gompertz Curve

DEFINITION

The Gompertz curve is also S-shaped but asymmetric — the inflection point is at \(Y_t = k/e \approx 0.37 k\), not at \(k/2\). Suited to biological growth, mortality and product life cycles where the deceleration phase is longer than the acceleration phase.

\[ Y_t \;=\; k\, a^{b^t}, \qquad 0 < a, b < 1, \; k > 0. \]

Equivalently: \(\log Y_t = \log k + b^t \log a\), so \(\log Y_t - \log k = (\log a)\, b^t\).

Fitting

Take logs: \(\log Y_t = \log k + (\log a)\, b^t\). This is a modified-exponential in \(\log Y_t\). Apply three-selected-points or partial-sums on \(\log Y_t\).

Three selected points (with \(t_1, t_2, t_3\) equispaced):

\[ b^{t_3 - t_2} \;=\; \dfrac{\log Y_3 - \log Y_2}{\log Y_2 - \log Y_1} \] \[ \log k \;=\; \dfrac{\log Y_1 \log Y_3 - (\log Y_2)^2}{\log Y_1 + \log Y_3 - 2 \log Y_2} \]

Then derive \(\log a\) from any single point.

EXAMPLE

Population (10 yrs): 20, 35, 56, 80, 105, 125, 142, 153, 161, 165. Ten values do not split into three equal groups, so drop the first year and use the nine values from 35 onwards (\(t = 0, \dots, 8\)).

Sums of \(\log_{10} Y_t\) in threes: \(S_1 = 5.1953\), \(S_2 = 6.2704\), \(S_3 = 6.6090\).

\(b^3 = (6.6090 - 6.2704)/(6.2704 - 5.1953) = 0.3150\), so \(b = 0.680\); \(\log a = (1.0751)(0.680 - 1)/(0.3150 - 1)^2 = -0.732\); \(\log k = \tfrac13\left[5.1953 - 1.0751/(0.3150 - 1)\right] = 2.2549\), so \(k \approx 180\).

Fitted: \(\log_{10} Y_t = 2.2549 - 0.732\,(0.680)^t\), giving 33, 57, 82, 106, 125, 141, 152, 160, 166 against the data 35 to 165. The saturation level is about 180.

Comparison of the Three Curves

CurveEquationInflection atBest for
Modified exponential\(a + b c^t\)None (no S-shape)Approach to asymptote, no slow start
Logistic\(k / (1 + b e^{-ct})\)\(k/2\)Symmetric S — biological populations
Gompertz\(k\, a^{b^t}\)\(k/e \approx 0.37k\)Asymmetric S — mortality, mature products

5. Detrending

DEFINITION

Detrending means removing the trend (T) component from a time series so the seasonal (S), cyclical (C) and irregular (I) components can be studied separately.

Methods of Detrending

  1. Additive model \(Y_t = T_t + S_t + C_t + I_t\): subtract trend → \(Y_t - T_t\).
  2. Multiplicative model \(Y_t = T_t \cdot S_t \cdot C_t \cdot I_t\): divide by trend → \(Y_t / T_t\).
  3. First differencing: \(\Delta Y_t = Y_t - Y_{t-1}\) — removes a linear trend.
  4. Differencing twice: \(\Delta^2 Y_t\) — removes a quadratic trend.
  5. Logarithmic transform + differencing — removes exponential trend.

Effect of Eliminating the Trend on Other Components

EXAMPLE 1 — Multiplicative detrending

Sales (₹ lakhs) and fitted trend:

YearSales \(Y\)Trend \(T\)Detrended \(Y/T\)
20201201101.091
20211401301.077
20221551501.033
20231651700.971
20241801900.947

The ratio Y/T fluctuates around 1, revealing residual S/C/I components.

EXAMPLE 2 — Differencing

For series \(Y_t = 2 + 3 t + \epsilon_t\): \(\Delta Y_t = 3 + (\epsilon_t - \epsilon_{t-1})\). The deterministic linear trend disappears; only noise remains.

Key Take-aways