Spatial disparities in simulated patrol detection: a reproducible generative-model audit across Baltimore and Chicago
Authors: Pronob Kumar Barman, Pronoy Kumar Barman
Organizations: University of Maryland, Baltimore County, Department of Information Systems, Baltimore, MD, USA · Jagannath University, Department of Statistics, Dhaka, Bangladesh
Auditing predictive policing requires distinguishing recorded crime incidents, simulated patrol observations, and the demographic characteristics of places. We present a reproducible spatial simulation audit combining a generative adversarial network (GAN) for patrol allocation with a probabilistic detection model. Using frozen archives of 145,178 Baltimore records (2017-2019) and 234,882 Chicago records (2022), we rebuild geographic covariates from Census tract boundaries and American Community Survey data. We compare GAN allocation with empirical-location sampling and uniform-area deployment under alternative observation streams. Twenty random seeds per condition yield 560 trajectories, each covering February through December. Under detection-only training, mean detection-rate differences between Black-majority and White-majority areas range from -2.03 to 0.75 percentage points across city-years, while total coverage ranges from 1.78% to 7.50%. Paired comparisons with full-record reference trajectories assess observation feedback conditional on the recorded incident archives. In an experiment using a conditional tabular generative model for balanced synthetic replacement, geographic consistency requirements fail in 107 of 220 seed-month fits, leaving no complete annual synthetic-replacement trajectories. Simulated disparities vary with the observation process, allocation policy, training budget, and random seed. These results support reproducible comparisons of modeled scenarios but do not estimate individual racial disparities in police contact or the distribution of unrecorded crime. We recommend reporting absolute detection differences, coverage, synthesis feasibility, and simulation uncertainty alongside ratio-based fairness metrics.
Figures & tables
City
Year
Archived
Retained
Feb.–Dec.
Unknown
Baltimore
2017
51511
51498
46950
330
Baltimore
2018
47856
47843
44129
328
Baltimore
2019
45811
45801
42133
269
Chicago
2022
234882
234073
218814
1433
Table 1: Archived and retained incident records. Retained counts include January initialization. Unknown counts cover the full retained year; they are included in total coverage but excluded from Black/White rate denominators.
City-year
Policy
Training stream
Gap (pp)
Coverage (%)
Balt. 2017
Generative
Detected
0.75 [-0.69, 2.26]
6.41 [6.12, 6.69]
Balt. 2017
Generative
Mixed
0.66 [0.49, 0.86]
4.70 [4.52, 4.88]
Balt. 2017
Generative
Reference
0.75 [0.44, 1.01]
4.73 [4.60, 4.88]
Balt. 2017
Empirical
Detected
0.06 [-0.94, 1.03]
8.79 [8.56, 8.99]
Balt. 2017
Empirical
Mixed
0.50 [0.12, 0.86]
8.50 [8.42, 8.58]
Balt. 2017
Empirical
Reference
0.18 [-0.12, 0.48]
8.26 [8.17, 8.35]
Table 2: Main simulation outcomes by city, policy, and observation stream. Main results: means and 95% whole-trajectory bootstrap intervals over 20 seeds. Gap is Black-area minus White-area detection in pp; coverage is detected records as a percentage of all archived analysis incidents. Conditions are paired by seed.
City-year
Training stream
Absolute-gap change (pp)
Coverage change (pp)
Balt. 2017
Detected
2.02 [1.12, 2.96]
1.67 [1.42, 1.94]
Balt. 2017
Mixed
-0.23 [-0.49, 0.03]
-0.03 [-0.23, 0.17]
Balt. 2018
Detected
1.53 [0.72, 2.38]
2.34 [1.98, 2.68]
Balt. 2018
Mixed
-0.08 [-0.44, 0.30]
-0.09 [-0.36, 0.17]
Balt. 2019
Detected
2.11 [1.25, 3.09]
2.63 [2.34, 2.90]
Balt. 2019
Mixed
0.09 [-0.26, 0.39]
0.18 [-0.03, 0.39]
Table 3: Paired feedback contrasts for the generative policy. Generative-policy feedback contrasts against the same policy’s full-record reference. Values are mean paired differences and 95% whole-pair bootstrap intervals. Absolute gap uses each seed’s magnitude before averaging.
Condition
Feasible fits
Complete seeds
Gap (pp)
Coverage (%)
Raw
220/220
20/20
0.54 [0.24, 0.88]
4.87 [4.72, 5.03]
Simple replacement
220/220
20/20
0.15 [-0.20, 0.49]
5.12 [4.92, 5.34]
CTGAN replacement
113/220
0/20
Not estimable
Not estimable
Table 4: Synthetic-replacement feasibility and outcomes. Baltimore 2019 rolling-reference replacement experiment. Annual estimates require complete 11-month trajectories. Failure to synthesize valid samples is not imputed or replaced by a selected-month estimate.
City
Training stream
Odds ratio [interval]
Tracts
Tract-months
Baltimore
Detected
0.866 [0.773, 1.014]
196
6456
Baltimore
Mixed
0.973 [0.938, 1.038]
196
6456
Chicago
Detected
0.999 [0.941, 1.071]
817
8703
Chicago
Mixed
0.997 [0.969, 1.025]
817
8703
Table 5: Exploratory tract-level demographic associations. Exploratory Black-share association per 10 pp in actual tract-month simulated detection. Odds ratios and 95% seed/spatial-block resampling intervals use 3 km blocks, 250 resamples, and covariate-adjusted fractional-binomial models. These are not individual-race or causal effects.
Figure 1: Detection gaps across allocation and observation conditions. Mean pooled detection gap in each city-year; corresponding coverage estimates appear in Table 2 . Points compare the generative and empirical policies under patrol-detected, mixed, and full-record reference training. Error bars are 95% whole-trajectory bootstrap intervals over 20 seeds. Dotted horizontal lines show uniform-area means. The gap denominator is recorded incidents in each area category, not residents.
Figure 2: Monthly detection gaps for the generative policy. Monthly generative-policy detection gaps. Lines are means across 20 trajectories, with pointwise 95% whole-trajectory bootstrap bands. The trajectories share a January initialization but evolve separately by observation stream. A positive value indicates greater modeled detection of recorded incidents in Black-majority tracts.
Figure 3: Feedback contrasts in disparity magnitude and coverage. Paired differences between observed-input generative trajectories and their full-record references. Positive absolute-gap changes mean greater disparity magnitude within this simulation. Coverage differences are percentage points. Error bars resample whole paired trajectories; these are not real-world causal effects.
Figure 4: Replacement outcomes and incomplete synthetic-generation trajectories. Rolling-reference replacement experiment in Baltimore 2019. Annual outcomes are plotted only for complete 11-month seed trajectories. Conditional-generative synthesis failures are recorded in Table 4 ; missing annual estimates are not replaced by results from selected feasible months. Error bars describe trajectory bootstrap variation.
Department of Information Systems University of Maryland, Baltimore County Baltimore, MD, USA · Department of Statistics Jagannath University Dhaka, Bangladesh · MBBS Shaheed M. Monsur Ali Medical College Sirajganj, Bangladesh