alarm-redist / fifty-states

Redistricting analysis for all 50 U.S. states
https://alarm-redist.github.io/fifty-states/
Other
9 stars 7 forks source link

2010 Alabama Congressional Districts #149

Closed mzwu closed 1 year ago

mzwu commented 1 year ago

Redistricting requirements

In Alabama, districts must:

  1. be contiguous
  2. have equal populations
  3. be geographically compact
  4. preserve county and municipality boundaries as much as possible
  5. preserve communities of interest as much as possible

Algorithmic Constraints

We enforce a maximum population deviation of 0.5%. We add a hinge Gibbs constraint targeting the same number of majority-minority districts as the enacted plan.

Data Sources

Data for Alabama comes from the ALARM Project's 2020 Redistricting Data Files. Data for the 2010 Alabama enacted congressional map comes from All About Redistricting.

Pre-processing Notes

No manual pre-processing decisions were necessary.

Simulation Notes

We sample 20,000 districting plans for Alabama across two independent runs of the SMC algorithm. We set population temperance at 0.05 to avoid bottlenecks. We remove all plans that do not have any district that has BVAP of over 30% and a majority Democratic average vote share, in order to maintain similar standards as the enacted plan. Such plans comprise less than 2% of the original simulation sample. We then thin the sample to down to 5,000 plans.

Validation

image

SMC: 20,000 sampled plans of 7 districts on 1,993 units
`adapt_k_thresh`=0.985 • `seq_alpha`=0.5
`est_label_mult`=1 • `pop_temper`=0.05

Plan diversity 80% range: 0.39 to 0.74

R-hat values for summary statistics:
   pop_overlap      total_vap       plan_dev      comp_edge    comp_polsby      pop_white 
     1.0090493      1.0079287      1.0025388      1.0028105      1.0185280      1.0018146 
     pop_black       pop_hisp       pop_aian      pop_asian       pop_nhpi      pop_other 
     1.0098524      1.0066917      1.0012538      1.0128121      1.0038723      1.0132122 
       pop_two      vap_white      vap_black       vap_hisp       vap_aian      vap_asian 
     1.0022996      1.0019645      1.0097171      1.0035227      1.0020420      1.0025400 
      vap_nhpi      vap_other        vap_two pre_16_rep_tru pre_16_dem_cli pre_20_rep_tru 
     1.0044955      1.0047742      1.0014709      1.0020655      1.0016617      1.0017172 
pre_20_dem_bid uss_16_rep_she uss_16_dem_cru uss_20_rep_tub uss_20_dem_jon gov_18_rep_ive 
     1.0023175      1.0014257      1.0020564      1.0015831      1.0015981      1.0007880 
gov_18_dem_mad atg_18_rep_mar atg_18_dem_sie sos_18_rep_mer sos_18_dem_mil         adv_16 
     1.0015941      1.0081825      1.0013214      1.0020202      1.0016929      1.0019523 
        adv_18         adv_20         arv_16         arv_18         arv_20  county_splits 
     1.0018108      1.0019732      1.0017725      1.0019241      1.0017053      1.0079579 
   muni_splits            ndv            nrv        ndshare          e_dvs         pr_dem 
     1.0044418      1.0023181      1.0018123      1.0003515      1.0003196      1.0002214 
         e_dem          pbias           egap 
     1.0004276      0.9999511      0.9999864 

Sampling diagnostics for SMC run 1 of 2 (10,000 samples)
         Eff. samples (%) Acc. rate Log wgt. sd  Max. unique Est. k 
Split 1     8,307 (83.1%)      9.2%        0.34 6,334 (100%)     15 
Split 2     7,499 (75.0%)     12.6%        0.58 5,804 ( 92%)      9 
Split 3     6,914 (69.1%)     13.6%        0.72 5,648 ( 89%)      7 
Split 4     6,016 (60.2%)     15.2%        0.81 5,462 ( 86%)      5 
Split 5     5,574 (55.7%)     18.0%        0.96 5,115 ( 81%)      3 
Split 6     3,750 (37.5%)      8.3%        0.92 4,519 ( 71%)      2 
Resample       697 (7.0%)       NA%        2.65 2,684 ( 42%)     NA 

Sampling diagnostics for SMC run 2 of 2 (10,000 samples)
         Eff. samples (%) Acc. rate Log wgt. sd  Max. unique Est. k 
Split 1     8,385 (83.8%)     10.7%        0.34 6,357 (101%)     13 
Split 2     7,504 (75.0%)     16.1%        0.58 5,889 ( 93%)      7 
Split 3     6,746 (67.5%)     13.7%        0.75 5,644 ( 89%)      7 
Split 4     5,928 (59.3%)     15.2%        0.86 5,430 ( 86%)      5 
Split 5     5,804 (58.0%)      8.7%        0.97 5,081 ( 80%)      7 
Split 6     3,789 (37.9%)      4.8%        0.90 4,626 ( 73%)      4 
Resample       574 (5.7%)       NA%        2.55 2,812 ( 44%)     NA

Checklist

Additional Notes

BVAP performance plot: image

Total Black performant districts:

  n_black_perf    n
1            1 2665
2            2 2333
3            3    2

@tylersimko

tylersimko commented 1 year ago

Looks good to me! For VRA performance, @mzwu and @christopherkenny maybe we should think about the same Democratic performance filter for BVAP #7 as in 2020?

Maybe it would also be good to double check the Percentage of Democratic seats by BVAP rank — I'll copy what that looked like for 2020 here:

bvap_rank   dem
      <dbl> <dbl>
1         1 0    
2         2 0    
3         3 0    
4         4 0    
5         5 0    
6         6 0.671
7         7 0.807
mzwu commented 1 year ago

Thanks for looking this over @tylersimko! I don't think we ended up doing the Democratic performance filter for BVAP # 7 in 2020 because there was a lot of crossover between BVAP # 6, and that seems to be more of the case in 2010:

bvap_rank     dem
      <dbl>   <dbl>
1         1 0      
2         2 0      
3         3 0      
4         4 0      
5         5 0.00035
6         6 0.727  
7         7 0.718
tylersimko commented 1 year ago

Thanks! Okay, I see we are still doing the filtering here though, which looks the same as what I misremembered from 2020. Thank you!