Commit cfd0da09 authored by Matthew Fernandez's avatar Matthew Fernandez
Browse files

implement an alternative form of symmetry reduction

This commit implements an optimistic algorithm for symmetry reduction based on
sorting the state with respect to scalarsets. The advantage here is that we do
a single pass -- no dynamic allocation or comparing against multiple alternative
states -- so this is significantly faster than the previous exhaustive
algorithm. The disadvantage is that this algorithm is not guaranteed to find the
minimal canonical set of states; we may explore more states than necessary. In
practice, this heuristic seems to work reasonably well though. Note, there is no
perfect algorithm here as the problem is NP complete.

Github: related to #12 "symmetry reduction"
parent 49f8939c
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment