Skip to content

[Idea] Avoid symmetry #80

@rubenhorn

Description

@rubenhorn

The algorithms already avoid evaluating x-axis mirrored folds by always initializing them with [-1].
However, there also exists y-symmetry (and even z-symmetry in 3D).

I wonder if the search tree could be pruned even more by accounting for this.
A naive approach would be to store the "mirrored partial hash" of visited subtrees in a std::set<std::string>.
(E.g.: [-1,2,1,1]$\rightarrow$[-1,-2,1,1])

To conserve memory, and since the effectiveness diminishes with smaller subtrees, this can be limited to a maximum partial hash length.
I wonder if a more sophisticated approach exists.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions