Redistricting on the Internet

The World Wide Web meant easy access to previously hidden information. No longer was it necessary to hunt through libraries to find information on unusual subjects, such as redistricting. I found that there were a few others out there currently pursuing computerized redistricting. Better yet, blogging offers the chance to make my findings available to the world. But the hope of finding others to help me in my pursuit of redistricting has not happened. Academic libraries don’t make all their materials available to the public, even though their research is funded by taxpayer dollars. What I have seen from the Ivory Tower is about how computerized redistricting is such a difficult problem to solve. Nothing about how to download and use the census data.

Over the decades, I have reached some different conclusions from  others in this niche. I consider it impractical to achieve some perfect redistricting plan. The gerrymanderers can simply have the computer analyze millions of plans to find one that steals the most votes in their favor. I reject the idea that there is a comparable easy measurement that measures the ” goodness” of a redistricting plan. A minimum district perimeter plan does not take into account the city and county boundaries, which I consider to be a terrible weakness. There is no perfect value of how much account should be taken. The values I have chosen are a bit arbitrary. Experimentation will reveal whether or not the chosen value is practical. Too little account would lead to a redistricting plan similar to that created by a minimum district perimeter algorithm. Too much account could lead to stretched out uneven districts, though I doubt they would look as brutally mangled as typical gerrymandered districts. The trick then would be to get a consensus on a practical value that could be enacted into law.

Simulated Annealing redistricting is too heuristic for me. Splitline redistricting is another algorithm which I consider to be a competitor. It ignores census blocks in favor of smooth straight lines. Sandboxwalls grows districts from a seed. Originally, the idea was to plant the seed in the center of the existing districts. Unfortunately, the present existing districts are mangled by gerrymandering. Thus, an awful lot of evolution would be required by Sandboxwalls to produce good districts from bad. It has occurred to me to start with something better than such mangled districts. A lot of time could be saved by planting the seed in the center of each of the Splitline districts. I have no idea how to get the latitude and longitude out of the Splitline districts. Even if I did, I am not interested in a fight with whoever or whatever owns Splitline.

But experimentation is a long way off. Concepts have to be turned into working FORTRAN code. That takes time, and staying employed is more important than playing with lost causes like computerized redistricting. Somehow data has to be extracted from the Census Bureau files. In my next blog, I will ask for clues on how to do this.

The Joy and Toll of Moore’s Law

Redistricting was also affected by Moore’s Law.  I saw no reason that Gordon Moore’s prediction should be a law, as I saw it as a mere coincidence that would be temporarily true. I still don’t understand why Moore’s Law is true, but I was obviously wrong about it being temporary.  The result of ever increasing computer power was not just that a computer could win a chess game.   Somehow, the promise of more computing power on everyone’s desktop (even mine!) didn’t mean I had the computer power to do automated redistricting.  The reality was major gains for gerrymandering.   It gave those who gerrymander an increasingly powerful tool.  By having the Census Bureau include voter districts, the GIS companies could more accurately correlate voter data with census data.  The addition of voter data made gerrymandering software stunningly accurate, so that most incumbant candidates for district office won before the first vote was cast.

Politicians have strained to ignore that a computer can do redistricting.  Ironically, the precision of gerrymandering  is made possible by gerrymandering software.  Redistricting software is limited to curious academic research and hobbyists, even though gerrymandering software is more difficult to write since it must also include voter registration data.  The difference is that gerrymandering software is profitable, since there is a strong demand for it from politicians.  Thanks to increased computer power, the purchase price of a safe seat is way less than the cost of an election campaign.

 Another problem was the fragility of software.  If the software is to be widely understood, a high level language is needed.   More powerful computers were an excuse to upgrade software, making previous software obsolete.  Digital decay and data rot set in.  BASIC went from MSBASIC to QBASIC to VBASIC which demonstrated a problem for redistricting software. A decade from now, software written today could be useless just because of a language change.  If a computer program to do redistricting is actually used, it would have to be backed by law. What was needed was a computer language would be stable for decades, not merely years.   Otherwise, the law would be useless as the computer program it was based on couldn’t be run in the future.   I decided to abandon BASIC in favor of FORTRAN for that reason.  FORTRAN isn’t dependent on a particular operating system.  It  runs on open source operating systems which are more stable as well.  Of course, FORTRAN is out of the mainstream where obscuring the software code contributes to profits.  And yes, FORTRAN has been around so long that many FORTRAN programmers are now in graveyards.

But the huge increase in computer power was just one revolution, and  Moore’s law says that revolution will continue.  But another bigger revolution is my next topic.

From Bubbles to Sand

Redistricting based on soap bubbles wasn’t good enough. Finite element analysis to simulate surface tension of the bubbles was too computationally intensive. Such redistricting also did not take into account county or city boundaries. Although the starting and growing from a seed point seemed correct, a better apportioning method was needed.

I considered a pile of sand. If the sand was coming from a funnel in the sky, it would fall to the surface and form a cone. The base of the cone would grow in a circular manner similar to the soap bubble analogy. Instead of a completely flat surface, consider what would happen if there was a wall wherever there was a county or city boundary. The sand would hit the wall and stop expanding there, causing the base of the sandpile to assume the shape of the boundary. Eventually, the sandpile would overflow the wall and start filling the next compartment. Software using this analogy could grow districts in a compact manner, but also take into account the county and city boundaries. The key question then was how high the wall should be. After much thought, I concluded that what was really desired was districts with a set maximum value of eccentricity. For example, a city could have its wall low enough that the widest part of the base would not exceed double the narrowest part for an eccentricity of two. County walls would be higher with an eccentricity not exceeding three.  It is easy to visualize a sandbox with slightly higher walls for county boundaries, and within those county boundaries are slightly lower walls for city boundaries. Sand falling from the funnel in the sky still has a roughly circular base, but modified by the wall boundaries. The eccentricity determines that roughness.

With software we don’t have to strictly follow the model of our physical world. When a particular cone of sand reaches a wall, the height of the wall can be set for the desired eccentricity. If a different cone of sand reaches the other side of the same wall, a different height will be computed. Thus, the inside of the wall will have a different height from the outside of the wall. For those who demand an analogy, see the explanation for TARDIS in the Dr. Who episode “Robots of Death” from the BBC.

One of the nice things about soap bubbles was that they would push away from each other on contact. To keep this nicety, when two sand piles touch, vector forces can move the sky funnels away from each other. Actually the software would keep the funnels fixed in place while the vector forces accumulate, and then all the funnels would move to their new location at the same time.  The movement would be triggered by events, such as the program having assigned to districts a certain percentage of the State’s population.

But time marches on, bringing progress both good and bad whether we want it or not. The next computer revolution changed everything yet again.

How I Got Interested

     Back in ancient times when I was in college, I was taking a couple of very different courses.  One course was Computer Science, where I learned a computer language called Fortran II-D.  Yes, that’s II meaning two in Roman Numerals, it was that long ago.  The other course was Political Science, where I learned about ReDistricting.  It occurred to me that someday computers could do ReDistricting.  My PolySci Professor pointed out to me where in the textbook it said that because there were so many possible combinations, it would be impossible for a computer to do ReDistricting.  That same sort of argument also explained why a computer could never hope to play a winning game of chess.  True enough in those ancient times.
    Back then, my thought was having the computer start each district growing from a spot.  The district would expand by acquiring the nearest blocks.  By keeping a tally of the population of each district, the district with the lowest population would grow next.  That way, the population of all the districts would stay roughly equal as they grew.
    The districts would eventually grow into each other.  Some sort of apportioning process was needed.  The vision I had was of soap bubbles.  You have to try playing with bubbles  to really see their beauty.  Bubbles of different sizes form a membrane between themselves in an almost magical manner.  By carefully inserting a small straw into a bubble, you can blow into the bubble to enlarge it, or suck out some of the air to make it smaller.  Imagine instead of 3 dimensional bubbles, you could make 2 dimensional bubbles.  Place those bubbles on top of a map of the State, with each bubble being a district.  The membranes between the bubbles would form the ReDistricting boundaries.  Magical indeed!
    I was surprised that I could find no one that had any interest at all in trying to ReDistrict by computer.  I could understand why politicians would have no interest, but academics and software writers also had no interest.  This was a puzzle that I didn’t have the pieces to solve, much less a mainframe, so I quit thinking about it.
    Then a new revolution happened.  The Personal Computer, or PC was born.  I taught myself a new computer language called BASIC, which was serving me well with other puzzles.  It was a long time before I reconsidered the ReDistricting puzzle.  But, yes, I finally did. 

Hello world!

Welcome to This is your first post. Edit or delete it and start blogging!