Corection, where I said "linear program" below it should say "mixed integer program" because the demographic information is integer. There is no good reason in our current computer era that I am aware of for not removing the politics from districting by using mathematical optimize to objectively determine efficient (small boundary circumference) districts. I previously wrote: My suggestion is to utilize a mathematical optimization hueristic to minimize the district boundary sizes. I think a linear programming model will work. Input the relevant demographic and geographic information and the number of districts and the computer will output the districts. Initially compute results using largest legal maximum district population size variances and then keep re-running with smaller variances until the problem is infeasible or the districts are all exactly the same size.