> There are 43,252,003,274,489,856,000 ways to arrange a Rubik’s cube. If I could evaluate a million arrangements per second, it would take over 1.3 million years to evaluate all arrangements. So, inspecting every individual arrangement is out.
For people who like powers of 2, that's "only" 2^65.2
That's within the realm of computability in practical timespans, if you can make the code fast and have $$$$$ to spend on compute. (modern CPU cores can do billions of operations per second, and that's not even considering GPUs)
The approach presented in the article is obviously far more efficient, but I wonder if anyone's done a "full search" of all possible cube positions before. I don't think there's any reason to do that, but that hasn't stopped people before (see: pi calculation records).
HappyPanacea•3h ago
IIRC they way they proved you can always solve a cube in 20 moves was essentially a bruteforce (after eliminating symmetries) so this the closest someone have done to full search.
CJefferson•2h ago
The search was a little easier than that, as we knew how to solve every state in 20 moves, so the problem was proving some move that could be solved in 20 moves couldn't be done quicker in some unusual way. While that still took a while, the fact you knew the start and end limits how many moves you have to search.
ramses0•3h ago
Seeing the "bits" that way makes me think there's a way to encode an ssh key into a rubix cube (a-la the "spy shuffle" decks).
Reminds me a bit of the "randomart" seeing the positions and colors of the cube splayed out like that.
kevindamm•2h ago
Except that the transform is relatively easy to reverse (compared to prime factorization) because of the properties of edge and corner pieces and limitations on piece movement that make a kind of spectral analysis possible. Things get a little better if you increase the size of the cube. Things get interesting if you allow un-solvable states (there's a 2:1 ratio of positions that are not naturally reachable) if you include in the protocol something like "always encode any corner rotations first" but it still wouldn't really be strong enough for modern compute.
If you mean to use it exclusively as a real-world key transmission like with Cryptonomicon's Solitaire decks, the problem becomes finding the shortest path or whatever the protocol determines is the normalized form.
Not to rain on your parade, it's a fun approach to think about, like maybe if the properties of a specific face determine which rotations to perform next, and which face to look at next, in addition to being the nonce for decoding the next letter. But even something like that would be too complicated to expect a person to remember all of while not being complicated enough to fluster a computational approach. The nice thing about Solitaire is that it's reasonable to perform the algorithm in your head.
kevindamm•2h ago
This was done in 2010 thanks to the analysis of the symmetries inherent in the underlying group theory, and about 35 CPU-years:
For me, any position which requires the full maximum 20 moves to solve would qualify as the perfect shuffle.
I wonder how many positions qualify (perhaps only 1 discounting symmetry as there is 1 fully solved cube, again discounting symmetry). But that’s a rabbit hole that I am not going down.
But I can appreciate the choice made in the article.
Someone•52m ago
> perhaps only 1 discounting symmetry as there is 1 fully solved cube
I don’t see how ”there is 1 fully solved cube” would even hint at “perhaps only 1”
Also, there isn’t only 1. https://www.cube20.org/: “Distance-20 positions are both rare and plentiful; they are rarer than one in a billion positions, yet there are probably more than one hundred million such positions. We do not yet know exactly how many there are”
kevindamm•50m ago
There are about 490 million of them, the full list can be downloaded from that same cube20 site
You can trim it down by counting in quarter moves.
That is, count a 180° move as two 90° moves. Which it is, though we usually don't think of it that way.
Assuming a random move length distribution, that would only leave a (2/3)^20 fraction of them, which is about 147000 positions.
Aardwolf•2h ago
It actually looks somewhat regular instead of random in the end. Perhaps having only rule 6 and 3, no others, is interesting. Or 6, 3 and 1. Or only rule 3 and take solution with highest entropy
superjan•2h ago
I want to flip coins so randomly that I never see the same face twice in a row.
Par of why this is a strange goal is that two adjacent squares can be the same color, but not be in the correct relative position for an unscrambled cube. Rubik's cube is puzzle of cubelets, not squares
liampulles•1h ago
Its quite a pretty arrangement IMO. There is a mix of randomness and regularity in it.
I'll keep my Rubik's Cube in this position.
divbzero•43m ago
OP’s perfect scramble takes 18 moves to solve. Does that mean all Rubik’s Cube arrangements can be solved in 18 moves or less?
venusenvy47•33m ago
God's Number has been proven to be 20. It can't be any lower.
Retr0id•3h ago
For people who like powers of 2, that's "only" 2^65.2
That's within the realm of computability in practical timespans, if you can make the code fast and have $$$$$ to spend on compute. (modern CPU cores can do billions of operations per second, and that's not even considering GPUs)
The approach presented in the article is obviously far more efficient, but I wonder if anyone's done a "full search" of all possible cube positions before. I don't think there's any reason to do that, but that hasn't stopped people before (see: pi calculation records).
HappyPanacea•3h ago
CJefferson•2h ago
ramses0•3h ago
Reminds me a bit of the "randomart" seeing the positions and colors of the cube splayed out like that.
kevindamm•2h ago
If you mean to use it exclusively as a real-world key transmission like with Cryptonomicon's Solitaire decks, the problem becomes finding the shortest path or whatever the protocol determines is the normalized form.
Not to rain on your parade, it's a fun approach to think about, like maybe if the properties of a specific face determine which rotations to perform next, and which face to look at next, in addition to being the nonce for decoding the next letter. But even something like that would be too complicated to expect a person to remember all of while not being complicated enough to fluster a computational approach. The nice thing about Solitaire is that it's reasonable to perform the algorithm in your head.
kevindamm•2h ago
https://www.cube20.org/
stoneman24•1h ago
I wonder how many positions qualify (perhaps only 1 discounting symmetry as there is 1 fully solved cube, again discounting symmetry). But that’s a rabbit hole that I am not going down.
But I can appreciate the choice made in the article.
Someone•52m ago
I don’t see how ”there is 1 fully solved cube” would even hint at “perhaps only 1”
Also, there isn’t only 1. https://www.cube20.org/: “Distance-20 positions are both rare and plentiful; they are rarer than one in a billion positions, yet there are probably more than one hundred million such positions. We do not yet know exactly how many there are”
kevindamm•50m ago
https://www.cube20.org/distance20s
BurningFrog•41m ago
That is, count a 180° move as two 90° moves. Which it is, though we usually don't think of it that way.
Assuming a random move length distribution, that would only leave a (2/3)^20 fraction of them, which is about 147000 positions.