• Welcome to SpeedSolving.com — the world’s largest puzzle community!

    You’re currently browsing as a guest, which means you have limited access to discussions, resources, member profiles, and community features.

    Join 50,000+ cubers and puzzle enthusiasts from around the world to ask questions, share solves, improve faster, and be part of the community.

    Registration is free, fast, and easy — create your account today.

    Already a member? Log in here to hide this message and start participating.

How to create algorithms ?

Alex Gold

Member
Joined
Nov 29, 2018
Messages
21
How do people create algorithms for new methods? Even for CFOP, someone must have come up with the algorithms for all the OLLs and the PLLs in the first place. Do you just have to mess with your cube a lot until you figure it out?
 
Sometimes we use destruction and restoration, mostly in the form of commutators, and we normally use these in conjunction with 'triggers'. E.g


 Twizzle link 
R U R' U'


Or

 Twizzle link 
R' F R F'


And add some extra moves and you get a T Perm!

 Twizzle link 
R U R' U' R' F R2 U' R' U' R U R' F'
 
Some algorithms are also just conjugations of other break/replace algorithms, meaning that you do some setup moves, do an algorithm, and undo those setup moves. The standard Na perm is a good example, R U R' U is the setup, Jperm is the alg, and then 1 U move cancels and you do U2 R U' R'.

Jperm also has a good video on algorithms:
 
Do you just have to mess with your cube a lot until you figure it out?
If you are not using a solver, then yes. I recommend messing around with a virtual cube like CubeTwister so that you can reset the cube as often as you like (save a lot of time). (It's powered by Java, so you may have to reduce security settings on your computer to be able to use it. It does run on Windows 10.)

You can use repetition, commutators, conjugates, cyclic shifting, or some combination of. But speaking of commutators and conjugates, just because someone can represent an algorithm in terms of them does not make them understandable. For example, in 2012 I decomposed all 2-cycle PLL algorithms (for all 2-cycle cases) that were on the PLL wiki page at the time. Post. But most (if not all) of those didn't really to help understand them. And it gets tricky. Don't think that just because an algorithm is optimal (in moves/length), that means it's not very easy to understand. But at the same time, two algorithms can have the same length: one is easy to understand and the other is almost incomprehensible!

You may enjoy the topics (in order from easiest of concepts to more complex):
Creating a Rubik's Cube Algorithm
Constructing Algorithms (not a how to, sorry)
Algorithm Thread
How does R2 D2 L2 F U2 L2 D2 B (and similar algorithms) work?

And only for the biggest nerds:
Solving without U turns?
looking for short edge flip (commutator) algorithm

(If you want to possibly learn about commutators from me, I wrote a rather detailed (and liked) post here some years ago: https://math.stackexchange.com/ques...es-and-commutators-for-twisty-puzzles-so-what )

I was going to post threads about parity algorithm theory (the second topic list above touches on it a little... so does the commutator post just provided), but the it appears that you are referring to 3x3x3 algorithms.
 
If you are not using a solver, then yes. I recommend messing around with a virtual cube like CubeTwister so that you can reset the cube as often as you like (save a lot of time). (It's powered by Java, so you may have to reduce security settings on your computer to be able to use it. It does run on Windows 10.)

You can use repetition, commutators, conjugates, cyclic shifting, or some combination of. But speaking of commutators and conjugates, just because someone can represent an algorithm in terms of them does not make them understandable. For example, in 2012 I decomposed all 2-cycle PLL algorithms (for all 2-cycle cases) that were on the PLL wiki page at the time. Post. But most (if not all) of those didn't really to help understand them. And it gets tricky. Don't think that just because an algorithm is optimal (in moves/length), that means it's not very easy to understand. But at the same time, two algorithms can have the same length: one is easy to understand and the other is almost incomprehensible!

You may enjoy the topics (in order from easiest of concepts to more complex):
Creating a Rubik's Cube Algorithm
Constructing Algorithms (not a how to, sorry)
Algorithm Thread
How does R2 D2 L2 F U2 L2 D2 B (and similar algorithms) work?

And only for the biggest nerds:
Solving without U turns?
looking for short edge flip (commutator) algorithm

(If you want to possibly learn about commutators from me, I wrote a rather detailed (and liked) post here some years ago: https://math.stackexchange.com/ques...es-and-commutators-for-twisty-puzzles-so-what )

I was going to post threads about parity algorithm theory (the second topic list above touches on it a little... so does the commutator post just provided), but the it appears that you are referring to 3x3x3 algorithms.
I would love some parity algorithm theory as well. Like for example, a 4x4 needs a T perm and a parity algorithm to be solved but another algorithm solves the whole case and you don't have to use two algorithms
 
It sounds like you're interested in 2 corner swap PLL parity algorithms? If so, I summarized what I know about them with 10 Ways to Swap Two Corners on a 4x4x4. (There are links you can follow from that post... and follow those links to other links.)

From 2009-2013, I was developing parity algorithm theory (probably one hour a day on average), so for me to list everything I know would be overwhelming. So instead, I will (for once) just let you ask me what you're interested, and I will just show you that.

But probably anyone who wants to learn about fixing edge (OLL) parity would want to know about how to do it intuitively. So I am sure my video Solving 4x4x4 Parity Intuitively (FOR REAL) will be of interest to most (more than how to find optimal algorithms by hand).

But please, if you have a specific algorithm that you want broken down, if I have already made a video or written explanation about it, I can quickly point you to it. (Or if not, I will try to break it down in a meaningful way, or say that I can't upfront.)

(And for those who would be tempted to post a (2R U2)4 2R + 3-cycle + 3-cycle and call it intuitive, be prepared to explain how (2R U2)4 2R affects both the centers and the wings... or please refrain, as if you cannot explain that simple 4-cycle, it's not intuitive after all.)
 
I don't really have a specific algorithm in mind but the links you've given me are very useful. Thanks
 
What do we mean by we can't fail in genning MU ELL algs?
I'm not sure if this is what he meant, but if you have all corners solved and only ELL left and spam M and U moves, the only pieces that will be broken up are 2 edges, which are easy to put back in. This makes creating the algs very easy.
 
As @Christopher Mowla said, you can get pretty far with commutators, conjugates, and cyclic shifts.
Commutators are algs of the form A B A' B'. The key idea is that anything not in the overlap of A and B are unaffected.
Conjugates are algs of the form A B A'. (Group theory you don't need to know: All the states that are conjugates of each other form an equivalence class called the conjugacy class. The center of a group is the subgroup of elements that commute with all elements of the groups, i.e. the conjugacy class is just the set of the element itself. The centralizer of a subset of a group is all the group elements that commute with each member of the subset.)
 
I'm not sure if this is what he meant, but if you have all corners solved and only ELL left and spam M and U moves, the only pieces that will be broken up are 2 edges, which are easy to put back in. This makes creating the algs very easy.
That's what I meant. If the FD and BD edges are put in, it does something. That something is always an ELL algorithm.
 
How do people create algorithms for new methods? Even for CFOP, someone must have come up with the algorithms for all the OLLs and the PLLs in the first place. Do you just have to mess with your cube a lot until you figure it out?
Lots of time, a ridiculous amount of patience a spreadsheet, a very analytical mind and alg.cubing.net
 
Back
Top