Skip to content

v0.3.2

Latest
Compare
Choose a tag to compare
@peterrrock2 peterrrock2 released this 29 Apr 21:51
· 4 commits to main since this release
6c9fb6b

This release patches a bug in one of our core functions, and adds some common optimization methods that we use to the main GerryChain library

What's Changed

  • Added SingleMetricOptimizer and Gingleator classes so that we can run short-burst, simulated annealing, and tilted runs
    • Added documentation with examples on how to work with these new classes. See our ReadTheDocs for more information
    • Special thanks to @jenni-niels for their work on this!
  • Fixed bug in the way that find_balance_edge_cuts_memoization and find_balance_edge_cuts_contration work. Now you must specify if you are intending to cut off a single epsilon-balanced district via a one-sided-cut or if you intend to split into two epsilon-balanced districts.
    • This primarily affected the gerrychain.tree.recursive_tree_part and gerrychain.tree.recursive_seed_part_inner functions.
    • There is now a bespoke epsilon_tree_bipartition function that deals with the case where we would like to split a subgraph into two epsilon-balanced districts.
  • Updated the way that the region-aware code works so that we also surcharge things that do not belong to any specified regions.
  • Updated the documentation for region-aware and improved the installation/reproducibility instructions.

Resolved Issues

  • Provided fix for #417. The method from_geodataframe will now attempt to allow you to continue without a crs set. You may also optionally provide an override for the given crs.

Full Changelog: v0.3.1...v0.3.2