automated method design

Spencer131

Veteran
Joined
Feb 16, 2016
Messages
527
WCA ID
2017CHUB02
I'm thinking about making a program that can help to automate the process of method design. First and foremost I am wondering if something like this exists.

I am aware of another program (kubesolver I think?) that can generate algorithms and calculate average movecount of a step.

I want to make a program that can do the the following:
  • Step analysis: Take in a start end end state, then compute the number of cases and average movecount to get to the end state. The state would also be able to have wildcards. So for example, you can say the start state is F2L solved and the end state is OLL solved.
  • Use the 'step analysis' capabilities to generate methods that are human-learnable and move-efficient
What exists along these lines, if anything?
 
I might be misunderstanding you, but wouldn't the 'average movecount to get to the end state' 'diverge' (not really diverge as it's not a function with numerical in- and output but you get the point)? Because for every state there are infinitely many ways to just spam random moves and attach 20 or fewer (assuming 3x3 here) moves at the end that solve the cube, or at least the step that you were trying to solve.
Or are you trying to find the average of all move optimal solutions to all cases in a step? In that case, these solutions are often not worth using over non-optimal solutions.

anyway, I don't know if something like this exists, although I would guess not. Human-learnable seems pretty tough to define in coding terms.
 
Or are you trying to find the average of all move optimal solutions to all cases in a step? In that case, these solutions are often not worth using over non-optimal solutions.
Yes the average movecount would be measured in terms of move-optimal solutions.

I agree that move-optimal solutions wouldn't be used in actual speedsolves. But if we compare each method in the same way, that gives a rough idea of how methods compare relative to each other.

Human-learnable seems pretty tough to define in coding terms.
For my purposes, human-learnability will be measured by number of algs (example: 50 algs is easy and 2000 algs is extremely difficult to learn)
 
Back
Top