Last time we looked into the number of moves required to optimally solve two 3x2x1 blocks, one after the other. Now we’re going to split that up in to more bite-size steps.
Inevitably this is going to increase the move count, but it will also make the block building process a lot easier to conceive.
Splitting up 3x2x1 blocks
The best way to see how you can gradually build one 3x2x1 block is to look at the various ways in which you can break it up. You will find that there only two ways, really.
The first way is to build a 2x2x1 block on the side and connect it with a 2x1x1 block that is in the top layer.
Solving 2x2x1 block followed by 2x1x1 block |
The other way is to build a line consisting of 2 edge pieces on the side and connect it with a 3x1x1 block that is in the top layer.
Solving line followed by 3x1x1 block |
Clearly the latter option of making a line followed by a 3x1x1 block is rather limiting, especially with the line greatly blocking our freedom of movement.
Also, if we look at the results of the last analysis into more detail, it turns out that the majority of the optimal solutions of a full 3x2x1 block follow the first route, which is to build a 2x2x1 block and connect it with a 2x1x1 block. For instance, for building the second 3x2x1 block, 65.5% of the cases have an optimal solution that start off by making a 2x1x1 block.
Building a 2x2x1 block followed by a 2x1x1 block seems the best way to go and that’s the strategy we’re going to analyze.
Solving first 2x2x1 block
In this step we want to build a 2x2x1 block consisting of one corner piece and two edges pieces around any of the four bottom layer corners.
Let’s assume that we always build the first 2x2x1 block around a fixed corner.
Solving first 2x2x1 block (fixed corner) |
In this scenario, there is 1 corner piece that can be placed in 8 positions and 2 edge pieces that can be placed in 10 positions, adding up to a total of 3 x 8 x (10 x 9) = 2,160 cases.
Moves* | # cases | Distribution | Cummulative |
0 | 1 | 0.05% | 0.05% |
1 | 3 | 0.14% | 0.19% |
2 | 6 | 0.28% | 0.46% |
3 | 30 | 1.39% | 1.85% |
4 | 96 | 4.44% | 6.30% |
5 | 312 | 14.44% | 20.74% |
6 | 632 | 29.26% | 50.00% |
7 | 704 | 32.59% | 82.59% |
8 | 342 | 15.83% | 98.43% |
9 | 34 | 1.57% | 100.00% |
Weighted average: 6.39 moves* | |||
*Quarter turn metric using only R, U and L faces |
One can also build the first 2x2x1 block around any of two corners on a fixed side of the cube, which gives us slightly more options.
or | ||||
Solving first 2x2x1 block (fixed side) |
Now there are 2 corners that can be placed in 8 positions and 3 edges that can be placed in 10 positions, leaving us 32 x (8 x 7) x (10 x 9 x 8) = 362,880 cases to be explored.
Moves* | # cases | Distribution | Cummulative |
0 | 335 | 0.09% | 0.09% |
1 | 1,005 | 0.28% | 0.37% |
2 | 2,007 | 0.55% | 0.92% |
3 | 9,954 | 2.74% | 3.67% |
4 | 30,773 | 8.48% | 12.15% |
5 | 89,694 | 24.72% | 36.86% |
6 | 137,039 | 37.76% | 74.63% |
7 | 80,990 | 22.32% | 96.95% |
8 | 11,001 | 3.03% | 99.98% |
9 | 82 | 0.02% | 100.00% |
Weighted average: 5.74 moves* | |||
*Quarter turn metric using only R, U and L faces |
Finally, one could solve the first 2x2x1 block around any of the four corners of the bottom layer, leaving even more options open to find a short solution.
or | or | or | ||||||
Solving first 2x2x1 block (any corner) |
With all remaining pieces of the first two layers involved, there are 20,575,296,000 cases in total, as we’ve worked out before.
Moves* | # cases | Distribution | Cummulative |
0 | 37,956,899 | 0.18% | 0.18% |
1 | 113,485,485 | 0.55% | 0.74% |
2 | 225,671,915 | 1.10% | 1.83% |
3 | 1,100,120,140 | 5.35% | 7.18% |
4 | 3,205,366,460 | 15.58% | 22.76% |
5 | 7,615,753,805 | 37.01% | 59.77% |
6 | 6,866,246,206 | 33.37% | 93.14% |
7 | 1,382,529,775 | 6.72% | 99.86% |
8 | 28,160,218 | 0.14% | >99.99% |
9 | 5,097 | <0.01% | 100.00% |
Weighted average: 5.15 moves* | |||
*Quarter turn metric using only R, U and L faces |
Solving first 2x1x1 block
With the first 2x2x1 block in place, we can now connect it with the 2x1x1 block that matches it. This completes the first 3x2x1 block.
Solving first 2x1x1 block |
In this scenario, there is 1 corner that can be placed in 7 positions and 1 edge than can be placed in 8 positions, adding up to a total of 3 x 8 x 7 = 168 cases.
Moves* | # cases | Distribution | Cummulative |
0 | 1 | 0.60% | 0.60% |
1 | 0 | 0.00% | 0.60% |
2 | 0 | 0.00% | 0.60% |
3 | 3 | 1.79% | 2.38% |
4 | 10 | 5.95% | 8.33% |
5 | 25 | 14.88% | 23.21% |
6 | 47 | 27.98% | 51.19% |
7 | 59 | 35.12% | 86.31% |
8 | 21 | 12.50% | 98.81% |
9 | 2 | 1.19% | 100.00% |
Weighted average: 6.28 moves* | |||
*Quarter turn metric using only R, U and L faces |
Solving second 2x2x1 block
With one side of the first two layers solved, we can now go on to solve a 2x2x1 block on the opposite side.
Again we can elect to always start with the same corner.
Solving second 2x1x1 block (fixed corner) |
In this situation, there is 1 corner that can be placed in 6 positions and 2 edges that can be placed in 7 positions. Hence, the total number of cases is 3 x 6 x (7 x 6) = 756.
Moves* | # cases | Distribution | Cummulative |
0 | 1 | 0.13% | 0.13% |
1 | 3 | 0.40% | 0.53% |
2 | 6 | 0.79% | 1.32% |
3 | 18 | 2.38% | 3.70% |
4 | 38 | 5.03% | 8.73% |
5 | 102 | 13.49% | 22.22% |
6 | 150 | 19.84% | 42.06% |
7 | 224 | 29.63% | 71.69% |
8 | 138 | 18.25% | 89.95% |
9 | 66 | 8.73% | 98.68% |
10 | 10 | 1.32% | 100.00% |
Weighted average: 6.61 moves* | |||
*Quarter turn metric using only R and U faces |
Alternatively we can choose to build the second 2x2x1 block around any of the two remaining corners.
or | ||||
Solving second 2x2x1 block (any corner) |
Now there are 2 corners that can be placed in 6 positions and 3 edge pieces that can be placed in 7 positions, meaning that there are 32 x (6 x 5) x (7 x 6 x 5) = 56,700 cases in total.
Moves* | # cases | Distribution | Cummulative |
0 | 149 | 0.26% | 0.26% |
1 | 447 | 0.79% | 1.05% |
2 | 891 | 1.57% | 2.62% |
3 | 2,633 | 4.64% | 7.27% |
4 | 5,311 | 9.37% | 16.63% |
5 | 12,882 | 22.72% | 39.35% |
6 | 15,395 | 27.15% | 66.50% |
7 | 14,503 | 25.58% | 92.08% |
8 | 3,972 | 7.01% | 99.09% |
9 | 505 | 0.89% | 99.98% |
10 | 12 | 0.02% | 100.00% |
Weighted average: 5.75 moves* | |||
*Quarter turn metric using only R and U faces |
Solving second 2x1x1 block
All that is left to do now is to solve the last 2x1x1 block to complete the first two layers.
Solving second 2x1x1 block |
There is 1 corner that can be placed in 5 positions and 1 edge that can be placed in 5 positions, adding up to 3 x 5 x 5 = 75 cases for this final step.
Moves* | # cases | Distribution | Cummulative |
0 | 1 | 1.33% | 1.33% |
1 | 0 | 0.00% | 1.33% |
2 | 0 | 0.00% | 1.33% |
3 | 3 | 4.00% | 5.33% |
4 | 5 | 6.67% | 12.00% |
5 | 0 | 0.00% | 12.00% |
6 | 0 | 0.00% | 12.00% |
7 | 20 | 26.67% | 38.67% |
8 | 36 | 48.00% | 86.67% |
9 | 8 | 10.67% | 97.33% |
10 | 2 | 2.67% | 100.00% |
Weighted average: 7.32 moves* | |||
*Quarter turn metric using only R and U faces |
Cancellations
We have now established the move counts for each step individually. However when trying to apply this strategy in practice, you will often see that there are some ways to save a move here and there. Particularly during the transition between the 2x2x1 block and the 2x1x1 block, there is usually an opportunity to cancel out at least one move.
The move counts we have come up with are for solving the 2x2x1 block and aligning it with the Line on the bottom layer. The last move of such a solution will always be an L move when building the block on the left hand side and an R move when building the block on the right hand side. The only exception to this is when you completely skip this step.
The ending to any 2x2x1 block |
Let’s assume for a while that we’re building a block on the right hand side. When you look at the optimal solutions of the 2x1x1 block, it very often also starts with an R move and thus cancels out with the last part of the 2x2x1 block, which always ends with an R move.
For the first 2x1x1 block, 98 out of the 168 cases have an optimal solution that starts with R. This means that in we can save 98 / 168 = 0.58 moves on average by looking for opportunities to “merge” the 2x2x1 and 2x1x1 blocks.
For the second 2x1x1 block, 31 out of the 75 cases have an optimal solution that starts with R. Here we can save 31 / 75 = 0.41 moves on average.
The way this would work out in practice is to keep the 2x2x1 block misaligned with the Line until the pieces of the 2x1x1 block are located. One can then go on to solve the 2x1x1 block without unnecessarily having to align and misalign the 2x2x1 block that was already there.
Thoughts
We have gathered enough statistics to be able to come up with an overall move count for this approach of making a 2x2x1 block followed by a 2x1x1 block twice.
There are three strategies we can follow:
- Solving the blocks always starting with the same corner averages 25.61 moves
= 6.39 + 6.28 - 0.58 + 6.61 + 7.32 - 0.41 moves
= 12.09 moves (first side) + 13.52 moves (second side) - Solving the blocks always starting with the same side averages 24.10 moves
= 5.74 + 6.28 - 0.58 + 5.75 + 7.32 - 0.41 moves
= 11.44 moves (first side) + 12.66 moves (second side) - Solving the blocks starting with any corner averages 23.51 moves
= 5.15 + 6.28 - 0.58 + 5.75 + 7.32 - 0.41 moves
= 10.85 moves (first side) + 12.66 moves (second side)
With only a maximum of three pieces to solve at the same time, we could say that these figures are very good targets even for a human solver.
Again, to compare: the average move count for God’s Algorithm is 15.64 moves and the average move counts for solving two 3x2x1 blocks are 19.12 moves (any order) and 19.72 moves (fixed order).
The next step
We could continue this road and split up the building of the 2x2x1 blocks even further, like solving one edge piece followed by two 2x1x1 blocks. However this seems be rather incongruent with the philosophy of block building and will most likely yield poor results.
Rather than do that, we are going to challenge one restriction that we have assumed so far, namely completely solving one side before going on to solving the opposite side.
The beauty of ZZF2L is that you’re never short of options. After solving the first 2x2x1 block, there’s the option of adding a 2x1x1 block on the same side but there is also the option of building a 2x2x1 block on the opposite side straight away and then continuing from there.
This will be the focus of the next post.