Skip to content

GerryChain v0.2.9 (RevRecom + fixes)

Compare
Choose a tag to compare
@maxhully maxhully released this 21 Jan 20:02

This release adds Reversible Recom to GerryChain. This entails

  • A recom proposal that is reversible reversible_recom()
  • A function to produce a uniform spanning tree via Wilson's algorithm
  • a faster memoization algorithm to find balanced edge cuts

All of these above changes were led by @pjrule (thanks!)

There are also some fixes that had been sitting for a while:

  • Assignment validation (#281 & #285 --- thanks @zschutzman!)
  • Non-recursive ReCom, fixing recursion depth errors (#283)
  • Fix a bug in the MarkovChain's acceptance function logic (#290)
  • Fix ignore_errors being ignore in Graph.from_file (#291)

We also moved both the partisan scores (previously in gerrychain.scores) and compactness scores (previously in gerrychain.updaters) to a new gerrychain.metrics submodule. This is a breaking change for anyone using gerrychain.scores.

Note -- even though GitHub says Max released this version, it is only partially true. The RevRecom changes were the doing of Bhushan - who should be blamed for any breaks with this release!