{ "cells": [ { "cell_type": "markdown", "id": "3067f2e0", "metadata": {}, "source": [ "# Optimization Methods of GerryChain\n", "\n", "\n", "\n", "In GerryChain, we provide a class known as the `SingleMetricOptimizer` as well as a\n", "`Gingelator` subclass that allow us to perform optimization runs.\n", "\n", "\n", "Currently, there are 3 different optimization methods available in GerryChain:\n", "\n", "- **Short Bursts**: This method chains together a series of neutral explorers. The main\n", " idea is to run the chain for a short period of time (short burst) and then continue\n", " the chain from the partition that maximizes the objective function within the most\n", " recent short burst. For more information, please refer to\n", " [this paper](https://arxiv.org/abs/2011.02288).\n", "\n", "- **Simulated Annealing**: This method varies the probablity of accepting a worse plan\n", " according to a temperature schedule which ranges from 0 to 1.\n", "\n", "- **Tilted Runs**: This method accepts a worse plan with a fixed probability $p$,\n", " and always accepts better plans.\n", "\n", "\n", "While sampling naively with GerryChain can give us an understanding of the neutral\n", "baseline for a state, there are often cases where we want to find plans with\n", "properties that are rare to encounter in a neutral run. Many states have\n", "laws/guidelines that state that plans should be as compact as feasibly possible, maximize\n", "preservation of political boundaries and/or communities of interest; some even look to\n", "minimize double bunking of incumbents or seek proportionality/competitiveness in\n", "contests. Heuristic optimization methods can be used to find example plans with these\n", "properties and to explore the trade-offs between them.\n", "\n", "\n", "