Skip to main content

A lightweight traffic assignment and simulation engine for networks encoded in GMNS

Project description

TAPLite

TAPLite is a lightweight traffic assignment engine for networks encoded in GMNS. It features a special implementation of the Frank-Wofle algorithm that traces paths for each valid OD pair.

Quick Start

Installation

TAPLite is available on PyPI.

pip install taplite

Traffic Assignment

One-Time Call

import taplite as tap

tap.assignment()

Recursive Call

Recursive call is suitable for multi-scenario analyses with respect to changes in demand, network topology, link capacity, and so on.

import taplite as tap
from multiprocessing import freeze_support

if __name__ == '__main__':
    freeze_support()

    while True:
        # make some changes to the input
        tap.assignment()
        # save your result so that it would not be overwritten in the next run

Build TAPLite from Scratch

1. Build the C++ Shared Library

# from the root directory of TAPLite
cmake -S . -B build -DBUILD_EXE=OFF
cmake --build build

You may encounter a CMake error regarding find_package(OpenMP) if you are on Apple Silicon. It is essential to inform CMake where to find the Homebrew-installed libomp package.

# from the root directory of TAPLite
cmake -S . -B build -DBUILD_EXE=OFF -DCMAKE_PREFIX_PATH=$(brew --prefix)/opt/libomp
cmake --build build

2. Build and Install the Python Package

# from the root directory of TAPLite
python -m pip install .

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

taplite-0.1.2.tar.gz (519.8 kB view details)

Uploaded Source

Built Distribution

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

taplite-0.1.2-py3-none-any.whl (518.6 kB view details)

Uploaded Python 3

File details

Details for the file taplite-0.1.2.tar.gz.

File metadata

  • Download URL: taplite-0.1.2.tar.gz
  • Upload date:
  • Size: 519.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for taplite-0.1.2.tar.gz
Algorithm Hash digest
SHA256 6f77c6aac5419a048a17c674c12c92f21916fe6f8458194bc8b509870f7fd083
MD5 a8736932928020e53e979c792f38818b
BLAKE2b-256 163446fce336ebc239e02a3a0d9739a855f4f6d440ff92f6eaf2a03c2dc50933

See more details on using hashes here.

File details

Details for the file taplite-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: taplite-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 518.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for taplite-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f4a036152cab738c4a13a8266714d74a5110a8ee5e862f776b50f80f4b0fe25b
MD5 1e9cae309fcc08b1b7fbbd3f8f271ba4
BLAKE2b-256 4bc88efd72b427012b6d962d7e3c8af6d11b430b081253415648a3ff391ebcc8

See more details on using hashes here.

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