Skip to content

Hybrid Algorithm Refactor #29

@brrcrites

Description

@brrcrites

The hybrid algorithms that were originally implemented were not implemented correctly, and so they have been refactored to be functional but essentially useless in their current form. Right now, they run either LMXRLF or DSATUR to find an initial coloring, and then use that coloring number as a condition to the Tabucol algorithm. The problem is that when that happens, Tabucol re-colors the entire graph to try and meet (and iteratively beat) the original coloring that was found. Instead, it should use the coloring that is generated from LMXRLF or DSATUR as an input, and then attempt to run tabu iterations on that initial graph rather than the random initialization that tabu would normally provide.

This will require a refactor of the Tabucol algorithm to have a separate initialization step, tabu step, and post-processing step. This way steps can be called when issuing a generic color() function call and a subset of steps can be called within other algorithms. We may want to make the tabu part public in case other people want to perform this process.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions