My attempt at solving the 3x3 Rubik's cube (by programming the computer to do it for me).
Note: in the evaluation function at 22:32 I mention that it falls back to the 'Greedy' evaluator shown previously. However, I forgot that I had made a small change to that function, which is to give a bonus to correctly oriented corners. Apologies for the error!
Support my work (and get early access to new videos and source code) on Patreon: https://www.patreon.com/SebastianLague
Project files:
Currently in early access to patrons (see link above). Will be available to everyone ~26 May.
Resources and credits:
https://en.wikipedia.org/wiki/Optimal_solutions_for_the_Rubik%27s_Cube
https://raw.githubusercontent.com/SebLague/Misc-Project-Info/refs/heads/main/Coding-Adventures/RubiksCube.txt
Chapters:
00:00 Creating the Cube
02:00 Rotation Time!
04:39 Binary State
08:15 Making Moves
12:47 Search and Optimization
15:34 The Greedy Solver
17:53 The Sandwich Solver
20:21 The Oriented Solver
23:39 Final Thoughts