kcube10
所属分类:人工智能/神经网络/深度学习
开发工具:C/C++
文件大小:56KB
下载次数:16
上传日期:2011-10-30 10:53:55
上 传 者:
test@2017
说明: 魔方还原算法
本算法目前仅供电脑使用,如有人类在最少步数比赛中尝试使用,请深入理解
(Cube algorithm to restore the computer to use this algorithm currently only if the human race at least try to use steps, please in-depth understanding of)
文件列表:
cuba10\KOCICUBE.H (2937, 1997-09-20)
cuba10\KOCIMOVT.H (2768, 1997-09-15)
cuba10\MOVETABL.CPP (3188, 1997-09-15)
cuba10\MOVETABL.H (1909, 1997-09-13)
cuba10\PRUNINGT.CPP (4851, 1997-09-26)
cuba10\PRUNINGT.H (2990, 1997-09-20)
cuba10\SAMPLE.BAT (80, 1997-09-29)
cuba10\SOLVER.CPP (12655, 1997-09-26)
cuba10\SOLVER.H (6991, 1997-09-30)
cuba10\VECTOR.CPP (416, 1997-09-19)
cuba10\VECTOR.H (131, 1997-09-15)
cuba10\COMBINAT.CPP (4444, 1997-09-24)
cuba10\COMBINAT.H (193, 1997-08-22)
cuba10\CUBE.CPP (8986, 1997-09-20)
cuba10\CUBE.H (4538, 1997-09-20)
cuba10\CUBEPARS.CPP (2139, 1997-09-22)
cuba10\CUBEPARS.H (1288, 1997-09-22)
cuba10\FACECUBE.CPP (9212, 1997-09-30)
cuba10\FACECUBE.H (4024, 1997-09-22)
cuba10\KCUBE.CPP (3432, 1997-09-29)
cuba10\KCUBE.EXE (60928, 1997-09-29)
cuba10\KOCICUBE.CPP (14295, 1997-09-29)
cuba10 (0, 2011-10-30)
****************************
* Kociemba Cube Solver 1.0 *
* - written by - *
* - Greg Schmidt - *
****************************
Why write another cube solver that implements Kociemba's
algorithm? Well I wanted to develop a more complete
understanding of the algorithm and, as Mike Reid suggested,
one way to do that is to write a program to implement the
algorithm. So this program was written primarily as a
learning exercise. It offers a simple console interface and
has no fancy graphics although I have tried to make cube
entry simple. However, if you are more interested in the
the algorithm itself, it is my hope that you will find this
program useful as I have tried to document it well enough so
that others may use this program as a reference for under-
standing how the algorithm works. If you are completely
unfamiliar with Kociemba's algorithm, you may first want to
browse through the cube.lovers archive at
ftp://ftp.ai.mit.edu/pub/cube-lovers as there are several
messages there describing the basic principles.
+-------------------------------------------------------+
| Please see cubemain.cpp for instructions on how to |
| invoke this program. Note that the very first time |
| this program is run it will generate several files |
| containing the move mapping and the pruning tables |
| and this will take several minutes to complete. |
+-------------------------------------------------------+
Files
-----
kcube.exe - The executable built for Win95/NT with
Microsoft Visual C++ 5.0.
sample.bat - A batch file that invokes the cube solver with a
sample cube configuration.
kcube.cpp - Kociemba Cube Solver main program
cubepars.* - CubeParser class, parses the command line
facecube.* - FaceCube class, validates the a given cube
configuration in its facelet representation. Also converts
the cube to a cubie permutation/orientation form.
solver.* - Solver class, performs the two phase search
a solution.
pruningt.* - PruningTable class, generates and manages
the pruning tables
kocimovt.* - Contains a subclass of the MoveTable class
for each of the five specific move tables.
movetabl.* - MoveTable class, generates and manages the
move mapping tables
kocicube.* - KociembaCube class, a subclass of Cube with
extensions to support Kociemba's algorithm.
cube.* - Cube class, basic Rubik's cube model
combinat.* - General purpose combinatorial routines.
vector.* - General purpose Vector management routines.
Class Hierarchy
---------------
[CubeParser]
[FaceCube]
[Solver]
[PruningTable]
[MoveTable]
|
+- [TwistMoveTable]
+- [FlipMoveTable]
+- [ChoiceMoveTable]
+- [CornerPermutationMoveTable]
+- [NonMiddleSliceEdgePermutationMoveTable]
+- [MiddleSliceEdgePermutationMoveTable]
[KociembaCube]
|
+- [Cube]
I would like to thank Herbert Kociemba for his patience
in providing me with enough details about his algorithm
to allow me to write this program. I would also like to
credit Dik Winter as I implemented a version of his
choice numbering algorithm in the "KociembaCube" class,
as an alternate approach, for illustration.
Feedback of any kind, both positive and negative, regarding
this program is welcome :)
Greg.Schmidt@ab.com
Work: (216) ***6-3597
Home: (216) 481-6749
Greg Schmidt
4*** Catlin Rd.
Richmond Hts., OH 44143
USA
近期下载者:
相关文件:
收藏者: