Skip to main content

A Python Library for CPM and PERT Methods

Project description

pyCritical

Introduction

pyCritical is a Python library for solving project scheduling problems using the Critical Path Method (CPM) and the Program Evaluation and Review Technique (PERT). It offers computational tools and visualizations to help identify the critical path, compute task timings, and assess project duration risks.

Whether you're planning a construction project, coordinating a research effort, or teaching operations research, pyCritical helps you model, analyze, and visualize complex project schedules.


Features

  • CPM Analysis

    • Earliest Start (ES), Earliest Finish (EF)
    • Latest Start (LS), Latest Finish (LF)
    • Slack time for each task
    • Full critical path identification
  • PERT Analysis

    • Support for three-point estimates (Optimistic, Most Likely, Pessimistic)
    • Computes expected project duration and standard deviation
    • Probability-based assessment of project completion
    • Earliest Start (ES), Earliest Finish (EF)
    • Latest Start (LS), Latest Finish (LF)
    • Slack time for each task
    • Full critical path identification
  • Support for Lags and Dependency Types

    • Finish-to-Start (FS): Task B can't start until Task A finishes.
    • Start-to-Start (SS): Task B can't start until Task A starts.
    • Finish-to-Finish (FF): Task B can't finish until Task A finishes.
    • Start-to-Finish (SF): Task B can't finish until Task A starts.
    • Including positive or negative lag times between tasks.
  • Gantt Chart Visualization

    • Clear, professional Gantt charts with critical paths highlighted
    • Dependency arrows with labels (e.g., FS+2)
    • Optional display of task slack

Installation

pip install pycritical

Usage

Try it in Colab:


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

pycritical-1.7.2.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

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

pycritical-1.7.2-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file pycritical-1.7.2.tar.gz.

File metadata

  • Download URL: pycritical-1.7.2.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.9

File hashes

Hashes for pycritical-1.7.2.tar.gz
Algorithm Hash digest
SHA256 2465b48a2878ea5157967b6f494d5173daeb8ac17b39bc9cda87969b13e89cf6
MD5 aebbaed7e4e96fa882030043ee2c0ba1
BLAKE2b-256 1f99af08ece8d6a6b054d10b562a5be6d04b764c18a2f661ed651df9f3f9982e

See more details on using hashes here.

File details

Details for the file pycritical-1.7.2-py3-none-any.whl.

File metadata

  • Download URL: pycritical-1.7.2-py3-none-any.whl
  • Upload date:
  • Size: 7.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.9

File hashes

Hashes for pycritical-1.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9840bd156ce1d4eb5264219d06d1a658201096bb3977c2bf3b4b9986ae0f3b9d
MD5 6ae5ac922953cc42136ef8670439def4
BLAKE2b-256 ef06e714741290cbb3baf895e9d73ed789a84322c858ddd9ba409d7fe4388c59

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