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.4.0.tar.gz (43.1 kB view details)

Uploaded Source

Built Distribution

maze_dataset-0.4.0-py3-none-any.whl (51.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: maze_dataset-0.4.0.tar.gz
  • Upload date:
  • Size: 43.1 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.4.0.tar.gz
Algorithm Hash digest
SHA256 a2dcaa18b55c2f61894b2aa9f5d16ab9177be918e5df3db134264a55282c8332
MD5 5e8affd910bd7e94dd557aa61d5a3e6f
BLAKE2b-256 59c3ff4a81c173225065d8497c230a67cf212e2c9b3e06e1c467e47c3a9e98d1

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: maze_dataset-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 51.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.1

File hashes

Hashes for maze_dataset-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8677f13ab533caabdafc3ee92b0434d3794303c19a7cca6b803e97172347ebab
MD5 01d67f3f72d4bdd92900a10e7e778d8f
BLAKE2b-256 fac4cbec1fbfb63d3602ca766a14337089a58d19111b7969a2f819c531e48152

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