# Top down vs Bottom up method development strategies



## shadowslice e (Aug 14, 2017)

So this is something that I've been thinking about for a little bit in that the most popular methods (and some more obscure ones) can be classified into two different sorts: top down and bottom up due to what the core idea behind that method is.

Bottom up: where the best step of the method is nearer the start so there are many ways to finish the method after the best steps.
Examples include CFOP (where F2L is the core idea), SSC (<20 moves for the first phase) and ZZ (ZZF2L)

Top down: where the last steps of the method is the best idea so everything leading up to it is created so that the best step is reached as quickly as possible
Examples include Roux (for LSE), M-CELL (for the CELL stuff) and redux (for a non 3x3 example)

Of course, there are a few examples which blur the lines as the initially "weaker" phase is improved to a point where it may become better (SSC is the perfect example of this where initially the second phase was what was initially the step to get to quickly but in the variations of getting to there quickly the first phase became the stronger one). Another example which blurs the line slightly is where the best step of the method is slightly later in the phase such as CFOP where the cross is a quick step to the F2L core or ZZ with EOline and ZZF2L though these are much closer to the start than the end. As a generalisation though the classification broadly holds.

A few observations:

Bottom up methods seem to have many more improvements or extensions as the second phase is arguably the weaker one so it is relatively easy to find options to solve it. This I believe is why CFOP, ZZ and Petrus have so many LSLL variations compared to Roux (and don't even get me started on SSC). It could also be that while the second half of methods have reduced options for solutions, this could actually work to the advantage of method developers as the fewer options lead to more viable options and can have more abstract concepts work (such as SIMPLE).
Top down methods, in contrast are much harder to find good variations as there are so many options that it is only really viable to solve specific blocks or pieces at any one time as otherwise the pieces get in the way (for example try solving FB+UFR+UBR then continuing the solve without going back on your previous process). In addition, there are set pieces which must remain unsolved or else the usefulness of the best step becomes reduced (hence why LSE is much more common than L5E). This is perhaps why only PCMS is a method similar to Roux in both approach and style (arguably waterman or RICE is as well but these are more CF methods that Rouxlike methods).

Interestingly, it appears that 3x3 is the only real puzzle with this distinction as many of the other puzzles more in favour of top down. For example, 2x2 and big cubes methods are usually top down methods. My personal theory on this is that either the puzzles are small and relatively simple so it is easier to get to a good state (hence favouring a top down method) or they are bigger and focus on reduction to get to a state which can be solved easily (also favouring a top down approach). However, 3x3 falls into that grey area where it is reasonably easy for humans to get a handle on it while not being too simple to get to a phase easily and quickly- perhaps it is also because 3x3 is where blockbuilding is effective as a fairly portion can be blockbuilt easily enough without part of the way through being reduced enough for an algorithm step. Megaminx seems to be the main exception here where most methods are more bottom up. However, this seems to be consistent with the blockbuilding reasoning as it is easy enough to blockbuild. Of course, on the other hand it may simply be that 3x3 has had the most development so has had more time for all the options to be explored.

Good/popular methods appear to solve the same number of permutations orientations in their core step (8 permutations and 8 orientations for CFOP, 6 orientations, 6 permutations and 6 centres for Roux, 10 permuations and 4 orientations for ZZ). This may also be a reason why other puzzles are fixed in their approaches as there are either too many pieces to solve in a quick step or not enough for the step to be effective.
Sort of the converse of the previous observation, less "successful" methods either try to solve too many or too few pieces in their good steps. For example, FreeFOP's best step asks the user to solve 8 permutations, 8 orientations and 6 centres arguably causing too much pressure on a human's limited ability. On the other hand, 2GLL only solves only 4 permutations and 4 orientations perhaps not taking full advantage of the solver's potential ability or placing too many constraints to get to such a step causing the rest of the solve to be unwieldy to solve quickly with less thought.

Many methods best step appears to be at least somewhat intuitive. The only real exception to this which I can think of is ZB. On the other hand, a lot of the methods also seem to be slightly algorithmic so fall into a weird category which is somewhere in between. I think that F2L and LSE are the best examples of this (again, ZB is an exception to this as well).
In addition to the previous point, it is common that while many solvers must learn to solve the step braindead without much or any though to the point it is almost instinctive, the best solvers begin to put more thought into it after they get to a certain point to become truly a master. A couple of examples of this would be multislotting in F2L or combining 4a and 4b in LSE or influencing 4c during 4b.
So I would be curious as to thoughts on this idea. Of course when it comes to best steps it can be quite debatable though I think in general the points which I have made are broadly applicable to most speedsolving methods even if you disagree on which step is the "best". Perhaps a better way to refer to the step would be the "core" step or idea.

Sorry if this induces wall of text syndrome but I hope you find it interesting.


----------



## TDM (Aug 14, 2017)

Very interesting, I really like some of your points. I don't have time to write a full reply right now, but just one question: how do you determine what the "best"/"core" is? In your examples, it mostly seems to be the part where you're able to solve some pieces without affecting any other pieces which are already solved. In fact I might say Cross is one of CFOP's best steps since it totally eliminates the need to know what are in the spots which are difficult to see, which sort of matches up with that idea.

Though I guess this does play a part in being "core" to the method, since being able to solve certain pieces without affecting anything else would require the cube to be in a certain state, which would lead you towards that method...


----------



## shadowslice e (Aug 14, 2017)

TDM said:


> Very interesting, I really like some of your points. I don't have time to write a full reply right now, but just one question: how do you determine what the "best"/"core" is? In your examples, it mostly seems to be the part where you're able to solve some pieces without affecting any other pieces which are already solved. In fact I might say Cross is one of CFOP's best steps since it totally eliminates the need to know what are in the spots which are difficult to see, which sort of matches up with that idea.


Personally, I would consider cross less to be a good step in and of itself but rather a good setup for the good step: F2L. I feel like F2L is more the step which is the core due to the fact that it doesn't really set up to any really good state but cross does so it is more that cross is a logical consequence of wanting to use F2L rather than F2L being a logical consequence of cross. There is an argument to be made that F2L+cross should be considered the core in and of itself as both are so intrinsically linked that to separate them is near impossible in a similar way to how the "first phase" of SSC is considered the core even though it is solved in two steps. As I said though the points are somewhat broad and what is the "best/core step" is something that can be debated endlessly- in fact, it seems that the more you have to debate the better the method is as people could argue that LL is better or in Roux that FB is the best instead of LSE etc etc but this is based on my personal subjective feelings.



> Though I guess this does play a part in being "core" to the method, since being able to solve certain pieces without affecting anything else would require the cube to be in a certain state, which would lead you towards that method...


This is actually quite an interesting point that I didn't consider though the more I think about it the more true it seems.


----------



## TDM (Aug 14, 2017)

shadowslice e said:


> There is an argument to be made that F2L+cross should be considered the core in and of itself as both are so intrinsically linked that to separate them is near impossible


Yes, everything I can think of essentially can be explained by this: there's no reason to have ever thought of CFOP's F2L without cross, and at the same time, cross certainly suggests F2L. They're almost inseparable. And yes, I do like FB, but it's also used in a lot of other methods and isn't directly linked to any part of the solve after that, so I wouldn't necessarily say it's "core" to Roux. So yeah, you're right, it's definitely not fixed so I doubt we'll ever get a universal agreement on these things.


----------



## efattah (Aug 15, 2017)

I am still of the attitude that the best method development strategy is to discover ultra-fast TPS sequences, see what they do to the cube, and design methods around them. Extremely ergonomic sequences can have triple the TPS of unfriendly sequences (or more), meaning that a 'new' method even with an average movecount of 60-65 could destroy current methods. Obviously it needs to have excellent lookahead as well.


----------



## tx789 (Aug 15, 2017)

efattah said:


> I am still of the attitude that the best method development strategy is to discover ultra-fast TPS sequences, see what they do to the cube, and design methods around them. Extremely ergonomic sequences can have triple the TPS of unfriendly sequences (or more), meaning that a 'new' method even with an average movecount of 60-65 could destroy current methods. Obviously it needs to have excellent lookahead as well.



Recognition is also important too. ELL has really bad recognition. ZBLL is slower than COLL because of the EO element because it solves more you have to look at more pieces to distinguish the cases. There is a lot to consider for alg sets. It seems very unlikely there is a fast method without an relatively large potential alg set.


----------



## shadowslice e (Aug 15, 2017)

efattah said:


> I am still of the attitude that the best method development strategy is to discover ultra-fast TPS sequences, see what they do to the cube, and design methods around them. Extremely ergonomic sequences can have triple the TPS of unfriendly sequences (or more), meaning that a 'new' method even with an average movecount of 60-65 could destroy current methods. Obviously it needs to have excellent lookahead as well.


Unless you're of the opinion humans can reach 12+ tps through an entire solve with no pauses at all for recognition (so not just burst tps- and this is a solve which will be about equivalent to human times, much less destroy), I'm not sure that there is a viable method which is less efficient than CFOP.

Your point of view, however, does fall in line with the idea I was discussing as the "core" of the idea would be the "ultra-fast move sequences" and everything else would be based on getting to where you can use them as quickly as possible so it would fall more into the top down method approach.

I'm also not necessarily advocating this approach to method development, just making a few observations based on how it appears methods have been developed in the past


----------



## shadowslice e (Feb 11, 2018)

I needed to ramble on something so I decided to ramble on this post.


Spoiler


----------

