Skip to main content

modulo

Drive-by sensing is a popular upcoming approach for monitoring large geographic areas using a fleet of vehicles equipped to sense relevant quantities. Prior research has shown the efficacy of drive-by sensing in monitoring air pollution, detecting potholes, recognizing unsafe pedestrian movement, etc.

Assume a scenario in which a sensor network administrator decides to install 10 sensors on vehicles to sense a quantity. The administrator may have a much larger fleet of vehicles, say 100 vehicles, to choose these 10 vehicles from. How does the administrator decide which 10 of the 100 available vehicles to choose, such that his/her choice maximizes the spatiotemporal coverage? We introduce Modulo --- a system for vehicle selection in drive-by sensing.

Installation and Pre-requisites

Modulo is primarily written in Python and supports Python version >=3.6. You can install Modulo using:

pip3 install pymodulo

Modulo also has a few other non-Python dependencies:

  1. MongoDB Please ensure you have access to a MongoDB server (local or remote). If you prefer a quick and simple remote MongoDB server, you can try out MongoDB Atlas. Instead, if you prefer installing a local server, you can do so from here. If you choose to install it locally, we also suggest installing a MongoDB GUI like MongoDB Compass.
  2. Node.js and NPM Modulo uses Turf.js, a JavaScript library available on NPM. You can download the package.json available in this repository, place it in the root of your project, and simply do:
    npm init
    npm install
    
    Please ensure that the Node.js is accessible as the node command on the terminal.

How to Run

Please follow the iPython notebook available in this repository (example.ipynb).

The code is well-documented using Python docstrings. Hence, you can use Python's help() feature on any class or method to know more about what it does.

Download files

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

Source Distribution

pymodulo-0.0.9.tar.gz (13.0 kB view details)

Uploaded Source

Built Distribution

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

pymodulo-0.0.9-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file pymodulo-0.0.9.tar.gz.

File metadata

  • Download URL: pymodulo-0.0.9.tar.gz
  • Upload date:
  • Size: 13.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.6

File hashes

Hashes for pymodulo-0.0.9.tar.gz
Algorithm Hash digest
SHA256 b124215f9a4f39acc8fa2490ee5afa856fff54369ca191bf7f9ef6d62df170fa
MD5 77927d93e1b009143787d0b39cf11d0a
BLAKE2b-256 d5c95cdf1e21c9a7927e8ba962c0c92e182584ef409fc5e579edcac2ea2701d0

See more details on using hashes here.

File details

Details for the file pymodulo-0.0.9-py3-none-any.whl.

File metadata

  • Download URL: pymodulo-0.0.9-py3-none-any.whl
  • Upload date:
  • Size: 17.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.6

File hashes

Hashes for pymodulo-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 9aea9c81e97d24b6f764b3a2d18308a66705ef8c102b8db8a65b5f33d2bbec8b
MD5 ea12b3055c785cac00ea2a221e814883
BLAKE2b-256 4e9b14543d8d9776c3bd38efc2a15cc88fb8c0e2239d804407a1e100c895ab4e

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.0

2 files

This release

0.0.9 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page