Add POC for "layered randomization" big cube scrambles #40
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Based on a discussion about allowing 5x5 misscrambles, which pointed us back to #17
Currently, this scrambles all layers that have centers using 3x3 random state scrambles from outside to inside, except for the innermost layer of even NxN, which resorts to using a 2x2 random state scramble. The model scales to any NxN automatically, meaning we can apply the concept to 6x6 and 7x7 on a whim.
As of the intial PR, the outermost layer (the "reduction stage") is not scrambled with a 3x3 random state, although this can be fixed by literally changing one character in the source code (changing a one to a zero in the constant
EXCLUDE_OUTER_LAYERS
definition)Obviously this is not tested thoroughly because it's intended as a proof of concept at this stage. These scrambles are not WCA-legal! We also have not had a second pair of eyes to check the original mathematical analysis that prompted this approach.
Feel free to discuss!