Rubik's Cube Algorithm Finder

Search a Rubik's Cube for short algorithms that solve a scramble or reach a target pattern.

A document to walk you through installing it and getting it running. New to notation? Reference here. Source on GitHub.

Download

Download the binary for your platform from the latest GitHub release:


On macOS, you may need to right-click and choose "Open" the first time, since the binary is unsigned.

Try it

# Print what a given scramble looks like
./rubik-alg-finder show --scramble "R U R' U'"

# Solve a scramble (up to 6 moves by default, use "--depth 4" for up to 8)
./rubik-alg-finder solve --scramble "F R U R' U' F'"

# Find an algorithm that swaps the UF and UB edges
./rubik-alg-finder find --edges "0:2 2:0"

# Same, but only using U, R and F moves, searching up to 5 moves
./rubik-alg-finder find --edges "0:2 2:0" --moves "U R F" --depth 5

What it does

show displays an unfolded net of the cube. solve uses a meet-in-the-middle search to undo a scramble of up to about 12 moves in a reasonable amount of time. find locks any edges/corners into a pattern and searches for the shortest move sequence that produces it.