Villyer
Regular
- Joined
- Jul 19, 2012
- Messages
- 25
I've been trying to find a program online that you can input an initial condition and final condition into, and it will return possible algorithms for getting from the starting position to the ending one.
I saw Acube3, and I noticed Acube4 alpha was released on these forums, but the input seems largely text based it seems to have a sharp learning curve.
So I made my own program using visual basic, so that the input could be a little bit more user friendly (well, me-friendly :b).
The only problem is the overhead time, because it uses brute force tactics. It takes the initial conditions and preformes one of twenty seven transformations to it repeatedly. For example, if told to find algorithms two moves long, it would test all combinations from 0.0,0.1,0.2,0.3,...,26.24,26.25,26.26
This initial program was made hastily, and has drawbacks. For one, 0 refers to R, 1 refers to R', and 2 refers to R2. Therefore, anytime 0 1 or 2 are next to each other in the sequence, they can be simplified to a single move (0.2 is the same tranformation as 1). Also, making the move L when all cubies that are in the R face is another useless move.
I also plan to make the program able to restrict possible moves. So maybe when searching for an algorithm, it only tests transformations to the R, U, and F faces.
It is my hope that these things will daractically increase the time needed to find the algorithms.
(Right now, to consider all possible 6 move algorithms takes 27^6 passed through the loop, which is ~30mins.)
I'm wondering if there are any other programs available that have a more visual and user friends interface?
And if not, I would love to take suggestions about how to improve the program that I am working on. I plan to finish it regardless of finding a better one online.
I saw Acube3, and I noticed Acube4 alpha was released on these forums, but the input seems largely text based it seems to have a sharp learning curve.
So I made my own program using visual basic, so that the input could be a little bit more user friendly (well, me-friendly :b).
The only problem is the overhead time, because it uses brute force tactics. It takes the initial conditions and preformes one of twenty seven transformations to it repeatedly. For example, if told to find algorithms two moves long, it would test all combinations from 0.0,0.1,0.2,0.3,...,26.24,26.25,26.26
This initial program was made hastily, and has drawbacks. For one, 0 refers to R, 1 refers to R', and 2 refers to R2. Therefore, anytime 0 1 or 2 are next to each other in the sequence, they can be simplified to a single move (0.2 is the same tranformation as 1). Also, making the move L when all cubies that are in the R face is another useless move.
I also plan to make the program able to restrict possible moves. So maybe when searching for an algorithm, it only tests transformations to the R, U, and F faces.
It is my hope that these things will daractically increase the time needed to find the algorithms.
(Right now, to consider all possible 6 move algorithms takes 27^6 passed through the loop, which is ~30mins.)
I'm wondering if there are any other programs available that have a more visual and user friends interface?
And if not, I would love to take suggestions about how to improve the program that I am working on. I plan to finish it regardless of finding a better one online.