Skip to main content

A course scheduling optimization tool using integer linear programming

Project description

Satisfaculty

A course scheduling optimization tool using integer linear programming.

Installation

python3 -m venv venv
source venv/bin/activate
pip install -e .

Usage

from satisfaculty import InstructorScheduler, MinimizeClassesBefore

scheduler = InstructorScheduler()
scheduler.load_rooms('example/rooms.csv')
scheduler.load_courses('example/courses.csv')
scheduler.load_time_slots(`example/time_slots.csv')

objectives = [MinimizeClassesBefore("9:00")]
scheduler.lexicographic_optimize(objectives)
scheduler.visualize_schedule()

This will output a complete schedule:

Example schedule output

Documentation

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

satisfaculty-0.1.0.tar.gz (13.9 kB view details)

Uploaded Source

Built Distribution

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

satisfaculty-0.1.0-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file satisfaculty-0.1.0.tar.gz.

File metadata

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

File hashes

Hashes for satisfaculty-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b85c6efbcdd8c7df5a89fd9913b4821038dc3aa658ff0cdeb45cff6dddb1f29f
MD5 da49f4d17f98f8cb9285afdf337bcad1
BLAKE2b-256 35d7b055f207282334dc6786546fa693447cd9ced474e5bfbbc8ca8c892974a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfaculty-0.1.0.tar.gz:

Publisher: publish.yml on zsunberg/satisfaculty

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

File details

Details for the file satisfaculty-0.1.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for satisfaculty-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5c2491a3c37f4b5ff1f5cfe037ed9cf1d4f84b669498e65c6a70aa4aba67afd6
MD5 8f958a093f4316bce0028b3869959d63
BLAKE2b-256 9ef5ed80fb650c9123f409104f4969a0ebb80d7bb4c7a3b6f6ad5161cdaf10e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfaculty-0.1.0-py3-none-any.whl:

Publisher: publish.yml on zsunberg/satisfaculty

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