Skip to main content

A Python Spatial Optimization Library

Project description

Allagash

build status MIT License Install with conda

A spatial optimization library for covering problems. Full documentation is available here


Installing with conda

To install with geopandas run:

conda install -c conda-forge allagash geopandas

To install with arcgis run:

conda install -c conda-forge -c esri allagash arcgis

To install without a spatial library run:

conda install -c conda-forge allagash


Installing with pip

To install with geopandas run:

pip install allagash[geopandas]

To install with arcgis run:

pip install allagash[arcgis]

To install without a spatial library run:

pip install allagash


Running Locally

  1. Clone the repo git clone git@github.com:apulverizer/allagash.git
  2. Create the conda environment conda env create --file environment.yml
  3. Activate the new environment conda activate allagash
  4. Install pre-commit hooks pre-commit install
  5. Install allagash locally pip install -e . --no-deps
  6. Launch jupyter notebook jupyter notebook

You should now be able to run the example notebooks.

You can choose to install and use another solver that is supported by Pulp:


Running Tests Locally

  1. Run tests pytest --nbval

Building Documentation

  1. From the repo directory run sphinx-build -b html ./src-doc ./docs -a

This will deploy html documentation to the docs folder.


Running with Docker

You can build the local docker image that includes Allagash, Python, Jupyter, GLPK, and COIN-OR CBC.

  1. Builder the docker image docker build . -t apulverizer/allagash:latest
  2. Launch Jupyter notebook docker run -i -t --user=allagash -p 8888:8888 apulverizer/allagash:latest /bin/bash -c "jupyter notebook --ip='*' --port=8888 --no-browser"

You should now be able to run the example notebooks.

You can test the notebooks as well by running docker run --user=allagash apulverizer/allagash:latest /bin/bash -c "py.test --nbval"

If you'd like to mount a directory of local data/files into the container, you can add -v <your-local-dir>:/home/allagash/<dir-name> when running docker run


Running Tests with Docker

You can build a docker container that will run the tests (mounted into the container)

  1. docker build . --file build.Dockerfile --tag apulverizer/allagash:build
  2. docker run --user=allagash -v $PWD/tests:/home/allagash/tests -v $PWD/src-doc:/home/allagash/src-doc apulverizer/allagash:build /bin/bash -c "py.test --nbval"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Allagash-0.4.3.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

Allagash-0.4.3-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file Allagash-0.4.3.tar.gz.

File metadata

  • Download URL: Allagash-0.4.3.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for Allagash-0.4.3.tar.gz
Algorithm Hash digest
SHA256 065b9b845180db59c03a72ff6f381361378e30907502c01191474e43116c2648
MD5 1cfb0ba18538b8e31e59dca5b19a7b66
BLAKE2b-256 5dd6c57695fec0ceb38f060ba9b02e94ea560e8822a8d933372a44d1d8ef16c2

See more details on using hashes here.

File details

Details for the file Allagash-0.4.3-py3-none-any.whl.

File metadata

  • Download URL: Allagash-0.4.3-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for Allagash-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d605cfb2a6ed3534a93e0e069cd542ee95d5cb2bf72e3f9f2580f34151dbe77a
MD5 fce10f98c853b91bef6f75f98a0d082b
BLAKE2b-256 b329c76ddde54db3b81f7cd46ebf1af1569a6aee7cfea8dc8fbfbe20c1f662a3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page