Skip to main content

Modern Python package for geographic task allocation, clustering, and routing optimization

Project description

allocator: Efficiently collect data from geographically distributed locations

PyPI version Downloads CI Documentation

Allocator provides a modern, Pythonic API for geographic task allocation, clustering, and routing optimization.

Key Features

  • 🎯 Clustering: Group geographic points into balanced zones
  • 🛣️ Routing: Find optimal paths through locations (TSP solving)
  • 📍 Assignment: Connect points to closest workers/centers
  • 🚀 Performance: Optimized algorithms with NumPy and scikit-learn
  • 📦 Modern API: Clean Python interface + unified CLI

Quick Start

pip install allocator
import allocator
import pandas as pd

# Geographic locations
locations = pd.DataFrame({
    'longitude': [100.5018, 100.5065, 100.5108],
    'latitude': [13.7563, 13.7590, 13.7633]
})

# Group into zones
clusters = allocator.cluster(locations, n_clusters=2)

# Find optimal route
route = allocator.shortest_path(locations)

# Assign to service centers
centers = pd.DataFrame({
    'longitude': [100.50, 100.52],
    'latitude': [13.75, 13.77]
})
assignments = allocator.assign(locations, centers)

Documentation & Examples

License & Contributing

MIT License. Contributions welcome - see Contributing Guide.

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

allocator-1.1.0.tar.gz (25.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

allocator-1.1.0-py3-none-any.whl (34.5 kB view details)

Uploaded Python 3

File details

Details for the file allocator-1.1.0.tar.gz.

File metadata

  • Download URL: allocator-1.1.0.tar.gz
  • Upload date:
  • Size: 25.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for allocator-1.1.0.tar.gz
Algorithm Hash digest
SHA256 59c9708c02cd22fca9718814283f0be2babaf63a9dff1386601780860c21433c
MD5 04e4db96bbadcee23f52c1634b7280ec
BLAKE2b-256 0969ac5cf1d2b882ebcc34ed2686f84f099b6f5a519c4521875dbd6107688401

See more details on using hashes here.

Provenance

The following attestation bundles were made for allocator-1.1.0.tar.gz:

Publisher: python-publish.yml on geosensing/allocator

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file allocator-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: allocator-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 34.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for allocator-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e69c25b49cd892daa3de67ca86af77ca16b390e8f18fc0b20c82efa983d206a2
MD5 8d3c77667ea2b795cdc96deaea29d33c
BLAKE2b-256 fd8d88d6c5418cd66e2c10cb8e3d22acea0154577fd4e105012861228644351b

See more details on using hashes here.

Provenance

The following attestation bundles were made for allocator-1.1.0-py3-none-any.whl:

Publisher: python-publish.yml on geosensing/allocator

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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