Skip to main content

Fast, reliable exams scheduler

Project description

Palatable Tests PyPI version

A Fast, reliable Exam Scheduling Algorithm Using Graph Coloring.

About

This package presents a graph-coloring-based algorithm for the exam scheduling application, with the objective of achieving fairness, accuracy, and optimal exam time period. Through the work, we consider few assumptions and constraints, closely related to the general exam scheduling problem, and mainly driven from accumulated experience at various universities. The performance of the algorithm is also a major concern of this package.

Getting started

pip install palatable

Usage

The simplest way to use the package is using this command.

palatable -d files/schedule.txt -c files/courses.txt

For a list of all available options

palatable -h

usage: palatable [-h] [--slots SLOTS] [--days DAYS] [--fairness FAIRNESS] --schedule SCHEDULE --courses COURSES

optional arguments:
  -h, --help            show this help message and exit
  --slots SLOTS, -s SLOTS
                        Number of exam time slots in a given day (determined by the registrar and/or the faculty)
  --days DAYS, -y DAYS  The number of concurrent exam sessions. Bounded by available halls, and the availability of faculty to conduct the exams.
  --fairness FAIRNESS, -f FAIRNESS
                        An Exam schedule should avoid conflicts, in the sense that no two or more exams (this value) for the same student are scheduled at the same time.
  --schedule SCHEDULE, -d SCHEDULE
                        The path of the file for students' enrollments.
  --courses COURSES, -c COURSES
                        The path of the file that hosts courses' data.

Upcoming

We are currently supporting text formatted courses and schedules tables. CSV support is coming up soon.

References

This package is an implementation of the algorithm presented in the paper: A New Exam Scheduling Algorithm Using Graph Coloring by Mohammad Malkawi, Mohammad Al-Haj Hassan, and Osama Al-Haj Hassan.

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

palatable-0.1.2.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

palatable-0.1.2-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: palatable-0.1.2.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.13

File hashes

Hashes for palatable-0.1.2.tar.gz
Algorithm Hash digest
SHA256 3c018a792447d0afc761f98c153e5e3f1bb75077c0d136e1d5fa5010e1d78b1f
MD5 67f69b9b6d85b5e6c537a805482673ed
BLAKE2b-256 79ccd092ba65aba9384499f71827567fe937c655abf8e38e3b65965329038287

See more details on using hashes here.

File details

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

File metadata

  • Download URL: palatable-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.13

File hashes

Hashes for palatable-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 289ab60f2bf19ea5d9dbcb496feb912a47917f168934c0069a8c4e04612cb67e
MD5 8725544758101f992ae9a36160a925a0
BLAKE2b-256 1aefd0b663f48b0a6ce7f47195835da876dfa42964ac0c922a4d9594499e43f8

See more details on using hashes here.

Supported by

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