AndrewHannigan/quickmatch
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
______ __ __ __ ______ __ ___ .___ ___. ___ .___________. ______ __ __ / __ \ | | | | | | / || |/ / | \/ | / \ | | / || | | | | | | | | | | | | | | ,----'| ' / | \ / | / ^ \ `---| |----`| ,----'| |__| | | | | | | | | | | | | | | < | |\/| | / /_\ \ | | | | | __ | | `--' '--.| `--' | | | | `----.| . \ | | | | / _____ \ | | | `----.| | | | \_____\_____\\______/ |__| \______||__|\__\ |__| |__| /__/ \__\ |__| \______||__| |__| QuickMatch: A Heuristic Algorithm for Computing Edge Colorings on Regular Bipartite Multigraphs By: Andrew Hannigan https://digitalcommons.dartmouth.edu/senior_theses/93/ Getting Started: 1) cd into c/ 2) run "make test" 3) run "./test.out" 4) Select either 2 or 5 to see the QuickMatch algorithm in action C code contains the primary business logic of the QuickMatch algorithm graph.c: Contains all data-structures and helper methods for graphs. quickmatch.c: Implements QuickMatch algorithm alternating.c: Implements all six methods of finding augmenting paths cycles.c: Implements Euler splits color.c: Combines all code to find an edge coloring of a regular bipartite graph testing.c: All testing code main.c: UI for running test code Used to create exacutable tests that are run by bash scripts in the "scripts" directory -alttest.c -dtest.c -ntest.c scripts/ directory generates statistics on QuickMatch trials ALL.bash: Runs all tests. Requires that "thesis" directory is placed in a parent directory with a csv directory stop.bash: Stops all tests. This allows tests that are being run in the background from a previous session to still be stopped easily. Useful when running tests on a remote system. python/ directory contains code for creating plots of data for QuickMatch analysis plot_tests.py Generates all plots used in thesis write up. CSV_DIR contains the directory of the .csv files. The default is that csv/ is in the parent directory of thesis/. This code requires that matplotlib is available to python. This is dependency is not satisfied by icecream.dartmouth.edu
About
A Heuristic Algorithm for Computing Edge Colorings on Regular Bipartite Multigraphs
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published