Skip to main content

No project description provided

Project description

PyPI PyPI - Downloads Checks Coverage code size, bytes GitHub commit activity GitHub closed pull requests

Maze Dataset

Generation, solving and processing of various mazes. Primarily build for the maze-transformer project, which this repo is an offshoot of.

Maze generated via percolation Maze generated via constrained randomized depth first search Maze with random heatmap MazePlot with solution

Installation

pip install maze-dataset

You can run all tests via

make test

(this will take a few minutes)

Usage

Most of the functionality is demonstrated in the ipython notebooks in the notebooks/ folder.

  • demo_dataset.ipynb how to easily create a dataset of mazes, utilities for filtering the generates mazes via properties, and basic visualization
  • demo_latticemaze.ipynb internals of the LatticeMaze and SolvedMaze objects, and advanced visualization

Development

Prerequisites

  • Install Poetry

  • Install Python 3.10

    • It's a good idea to use pyenv to manage python versions
    • If using pyenv, you'll need to update your Poetry config for it to use the pyenv Python version: poetry config virtualenvs.prefer-active-python true
  • Install dev dependencies

    poetry config virtualenvs.in-project true
    poetry install --with dev
    
  • Run unit, integration, and notebook tests

    make test
    
  • (Optional) If you want to work with the jupyter notebooks in VSCode

    • create a jupyter kernel with poetry run ipython kernel install --user --name=maze-dataset
    • Restart VSCode
    • In VSCode, select the python interpreter located in maze-dataset/.venv/bin as your juptyer kernel

Testing & Static analysis

make help will print all available commands.

  • all tests via make test

    • unit tests via make unit
    • notebook tests via make test_notebooks
  • formatter (black, pycln, and isort) via make format

    • formatter in check-only mode via make check-format

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

maze_dataset-0.3.4.tar.gz (42.0 kB view details)

Uploaded Source

Built Distribution

maze_dataset-0.3.4-py3-none-any.whl (50.1 kB view details)

Uploaded Python 3

File details

Details for the file maze_dataset-0.3.4.tar.gz.

File metadata

  • Download URL: maze_dataset-0.3.4.tar.gz
  • Upload date:
  • Size: 42.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.1

File hashes

Hashes for maze_dataset-0.3.4.tar.gz
Algorithm Hash digest
SHA256 ba1a6c81d32e808878e27a74b51e95ddc3cf37a4c8f32fb10844be4cfb228fdd
MD5 e269a2eafc872ad9535c7b833e81bcb7
BLAKE2b-256 d3511cd5aa6c589fc2fe7adb99e49504eaf74e8ead2b74b67f6f17a92b2f651b

See more details on using hashes here.

Provenance

File details

Details for the file maze_dataset-0.3.4-py3-none-any.whl.

File metadata

File hashes

Hashes for maze_dataset-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 7c55492276c9c425e90647450e7b674724ba5c649e931f0310edf9ffad25d14c
MD5 fe3c64be94404e775d9a3bb41c20770c
BLAKE2b-256 78d1dd7c83561d80f6a5b4b276cce332e7d53c245c7d4d564d6522b8844e4630

See more details on using hashes here.

Provenance

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