3X3X3 RUBIK’S CUBE SIMULATOR AND GROUP THEORY
Do, Tiep (2016)
Do, Tiep
Centria-ammattikorkeakoulu (Keski-Pohjanmaan ammattikorkeakoulu)
2016
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201601201464
https://urn.fi/URN:NBN:fi:amk-201601201464
Tiivistelmä
The aim of the thesis was to write a software program to simulate the traditional 3x3x3 Rubik’s Cube and also introduce and explain the algorithm for solving the cube by means of group theory. The virtual cube was created using OpenGL/SDL which are C++ graphic libraries for rendering and defining 2D, 3D images.
Rubik’s Cube is not only well-known as a best-selling toy all over the world but it can also be used as a tool to employ a rich underlying mathematical structure. And in this thesis work, we show that Rubik’s Cube can be explained using group theory which is a brand of modern abstract algebra.
The thesis first introduces the structure and notations of the Cube and the mathematical background including permutation and group theory. The next part provides the architecture and the essential features of the software. After that, the strategy for solving the cube and the explanation of the application of the virtual cube for applying the algorithms will be described. The final part shows some of the lacking features that need to be improved in the future.
Rubik’s Cube is not only well-known as a best-selling toy all over the world but it can also be used as a tool to employ a rich underlying mathematical structure. And in this thesis work, we show that Rubik’s Cube can be explained using group theory which is a brand of modern abstract algebra.
The thesis first introduces the structure and notations of the Cube and the mathematical background including permutation and group theory. The next part provides the architecture and the essential features of the software. After that, the strategy for solving the cube and the explanation of the application of the virtual cube for applying the algorithms will be described. The final part shows some of the lacking features that need to be improved in the future.