Skip to contents

The one-step gain of the naive recursion is at most \((\lambda_A-\lambda_B)/4\) divided by the current total count, and the total count grows by at least \(\min(\lambda_A,\lambda_B)\) per step, so after \(N\) steps the share has moved by at most $$\frac{\lambda_A-\lambda_B}{4} \sum_{k<N} \frac{1}{c_0 + k\min(\lambda_A,\lambda_B)},$$ a harmonic sum that grows like \(\log N\) (Research.P4.naiveShare_rate_bound). Use it to state the horizon over which a feedback loop can matter: if the bound is small, the loop cannot have moved the allocation, whatever the limit says.

Usage

morie_feedback_loop_bound(lam_a, lam_b, c_a0, c_b0, n_steps = 1000L)

Arguments

lam_a, lam_b

True crime rates (per patrol visit) of regions A and B; positive.

c_a0, c_b0

Initial discovered-crime counts; positive.

n_steps

Horizon \(N\).

Value

A list with bound (the maximum possible increase of the share to A over n_steps steps, for lam_a > lam_b), share_a_max (c_a0/(c_a0+c_b0) + bound, capped at 1) and theorem.

Examples

morie_feedback_loop_bound(0.21, 0.20, 1, 99, n_steps = 2e6)$bound   # about 0.10
#> [1] 0.1036912
morie_feedback_loop_bound(0.3, 0.2, 10, 10, n_steps = 2e4)$bound
#> [1] 0.663536