魔方分类、基础理论

目录

一,个人历程

二,魔方基本要素

三,魔方的结构化

1,魔方的状态

2,魔方的操作

3,复原问题

4,还原任意状态问题

5,子问题

四,魔方分类

1,分类大纲

2,概念澄清

(1)固形

(2)轴

(3)整体旋转

五,魔方分类

1,对称固形遗忘魔方

2,非对称固形遗忘魔方

3,非固形遗忘魔方

4,固形非遗忘魔方

5,非固形非遗忘魔方

6,恒位魔方

7,恒等魔方

六,魔方之间的关系理论

0,为什么要梳理所有魔方之间的关系

1,均匀满射

2,部件分组

3,魔方内部2个部件之间的关系

4,2个魔方的部件之间的关系

(0)默认映射

(1)单个部件和单个部件的关系

(2)一组部件和一组部件的关系

(3)所有部件和所有部件的关系

5,魔方之间的关系

(1)等价

(2)伪同构

(3)一级一类

(4)一级(其他一级相似关系)

(5)子集

(6)双重子集

(7)二级(其他二级相似关系)

(8)三级(三级相似关系)

(9)融合

(10)四级(四级相似关系)

6,二元关系总览

(1)画图原则

(2)六轴对称固形遗忘魔方

(3)其他对称固形遗忘魔方

​编辑

(4)其他魔方

7,几个有趣的关系

(1)三阶空心魔方 VS 三阶魔方

七,魔方差分、恒等式

1,魔方差分

2,恒等式

八,获得魔方复原方法的方法论

1,确认该魔方的结构化

2,找到一个接近复原状态的非复原状态

3,分析出复原方法的梗概

4,找出预期存在的公式


一,个人历程

2020年1月6日,开始系统化地写魔方系列博客。

我从初一开始玩魔方,首先玩的就是三阶魔方,靠自己的理解轻轻松松就能完成正确的一面,但是根本无法复原。

大概在初二的时候在魔方小站学习了层先法,就学会复原了。

然后以此为基础,其他所有魔方都靠自己探索。

首先是二阶魔方和四阶魔方会复原了,而且我知道四阶魔方怎么样操作就不需要最后一步的特殊公式。

高中的时候,在脑海中完成了分析,确定任意阶魔方都会复原,但是对此没有任何记录。

然后我买了7阶魔方,果然7阶魔方是会复原的。

然后大学沉迷学习和看小说,也没什么钱,就没有再探索魔方了。

毕业之后一年半一直没有从事研发类岗位,更没有探索了。

现在是2020年1月6日,我最近转岗重新回到了开发岗,今天重启魔方探索。

二,魔方基本要素

要定义一个魔方,最基本的要素我认为有3个:

(1)魔方的组成部件:中心块,棱块,角块,等等。

(2)魔方的可执行操作:可以执行的操作构成的集合,魔方通行的按轴数分类的方法就属于这方面。

(3)魔方的目标态:要转成什么样子,大部分魔方是有唯一复原态的。目标态包括颜色、组成部件的位置和方向等。

三,魔方的结构化

所有魔方都可以转化成一个结构化的问题。

1,魔方的状态

首先,每个组件分为固定位置和可变位置。

其次,每个组件根据形状和颜色决定有多少种朝向。

最后,一个魔方的状态包括所有组件的位置和朝向

可以把复原状态记为x0

PS:每个部件的位置和朝向都是非常有限的

2,魔方的操作

一个操作其实就是一个A到B的映射函数,其中B是魔方的所有状态构成的集合,而A是B的子集。

f(x)=y表示经过1次该操作,x状态就可以变成y状态

一个魔方的操作集可以表示成{f1,f2,...,fk},一共k种操作

PS:每个魔方的操作数都是非常有限的,不存在旋转123度这种旋转任意角度的情况(能旋转123度的魔方也不能说绝对不存在,但是可能需要几千个部件,现在还不存在这个世上)

3,复原问题

魔方的复原问题,可以表示成一个结构化的图论问题:

魔方的每个状态都是一个点,每个状态下的每种操作都是一条有向边,这样就构成了一个确定的有限的图。

复原问题就是,在这个图中任选一点,找到通向复原状态对应的点的有向路径。

也可以表示成代数的形式,即求函数g,g(x)是一个序列{t1,t2,...,tn},n是复原所需的步数,使得ft1(ft2(...ftn(x)...))=x0成立

4,还原任意状态问题

把魔方从任意状态x变成任意状态y,即求函数F,F(x,y)是一个序列{t1,t2,...,tn},n是复原所需的步数,使得ft1(ft2(...ftn(x)...))=y成立

5,子问题

几乎所有的魔方都有层先法,层先法是把问题拆分成若干子问题,每个子问题都有各自的方法或者公式。

魔方也有其他方法可以复原,层先法是最简单但是步骤比较多的方法。

不同的复原方法,会把复原问题拆分成不同的子问题

四,魔方分类

1,分类大纲

按照魔方能否被打乱位置和朝向,分为普通魔方、恒位魔方(只能打乱朝向)、恒等魔方(位置和朝向都无法打乱)

普通魔方按照魔方操作是否是遗忘操作,即在任意状态下合法的操作集都是一样的,分为遗忘魔方和非遗忘魔方。

普通魔方按照魔方外形是否固定,分为固形魔方和非固形魔方。

其中固形遗忘魔方,按照操作是否具有对称性,分为对称魔方、非对称魔方。

所以一共分7大类:对称固形遗忘魔方、非对称固形遗忘魔方、非固形遗忘魔方、固形非遗忘魔方、非固形非遗忘魔方、恒位魔方、恒等魔方

2,概念澄清

(1)固形

这里的魔方外形,是拓扑的概念,而不是单纯的几何外形。

比如,三阶齿轮和五阶齿轮随便一转就不是正方体的外形,但这只是部件的朝向不同而已,所以还是固形魔方。

但是二阶齿轮我认为是非固形魔方,因为需要拉开和合并。

(2)轴

二阶魔方是六轴,而不是三轴。

那么同理,斜转魔方是八轴,而不是四轴。

(3)整体旋转

一般情况下,我们不把整个魔方旋转当成一种操作。

但是,有时为了提高搜索算法的效率,也可以引入这个操作。

五,魔方分类

1,对称固形遗忘魔方

对称魔方按照旋转轴,分为六轴魔方、四轴魔方、八轴魔方、十二轴魔方、二十轴魔方。

2,非对称固形遗忘魔方

3,非固形遗忘魔方

4,固形非遗忘魔方

5,非固形非遗忘魔方

6,恒位魔方

7,恒等魔方

六,魔方之间的关系理论

0,为什么要梳理所有魔方之间的关系

因为这样才能更深刻的认识魔方理论,更快的破解魔方的复原方法。

举个例子来说,魔方AB很像,怎么样根据A的公式得到B的公式,这个问题抽象出来之后,我们下次再考虑“魔方CD很像,怎么样根据C的公式得到D的公式”这个问题的时候就发现,答案早已有了。

1,均匀满射

如果集合A的元素数是n*m,集合B的元素数是n,且集合A到B的满射f满足,对于B中的任意元素y,在A中恰好有m个元素x使得f(x)=y,则称A到B的映射是均匀满射。

2,部件分组

一般情况下,把一个魔方的所有部件分成若干组的依据,都是“可达”这个二元关系。

以三阶魔方为例,固定位置的中心块和任何块都不可达,那么所有的中心块为一组,而所有的角块之间都是可达的,那么所有的角块为一组,同理所有的棱块为一组。

3,魔方内部2个部件之间的关系

部件之间的非平凡关系是:不可区分关系,即可达且等价

四阶魔方的四个白色中心块之间,就是可达且等价,所以是不可区分的。

但是,四阶魔方复原之后相邻的2个棱块,虽然看起来一样,也是可达的,但却是可区分的,因为一个棱块到底另一个棱块的位置时,必定朝向是反的。

4,2个魔方的部件之间的关系

(0)默认映射

上文提到,部件分组是依据可达关系,所以五阶魔方的所有棱块并不是1组,而是2组,即12个中心棱和24个侧棱。

那么,在讨论2个魔方的深刻联系时,我们讨论的肯定是数量相同的2组部件。

这2组部件如何进行一一对应,一般都是很明显的,毫无争议的,我们称之为2组部件之间的默认映射

(1)单个部件和单个部件的关系

部件之间的非平凡关系有2种:等价、均匀满射

平凡关系就是无关。

(2)一组部件和一组部件的关系

常见的第一类非平凡关系有:全部等价、全部均匀满射、部分均匀满射部分等价。

我们把这一类关系记作两组部件之间的第一类相似关系,即组件可以一一对应,且对应的每2个部件之间都是非平凡关系

常见的第二类非平凡关系是:两组部件的数量一样,一组是每个部件都可区分,一组是部分部件不可区分,如果把一样的这些部件看做一个元素,则2个元素数不同的集合之间是满射关系。我们把这一类关系记作两组部件之间的第二类相似关系

PS:这里我用的术语是2个集合之间是满射关系,而不是2个集合之间存在满射,是因为原意是“2个集合的默认映射是满射”,默认映射的概念参考上文。

常见的第三类非平凡关系是:两组部件的数量一样,且各有一部分组件是不可区分的,且两个部件组的“可区分”这个二元关系是同构的。我们称之为两组部件之间的第三类相似关系。(---------------------------------------只有这个还没找到实例-----------------)

常见的第四类非平凡关系是:两组部件的数量一样,且各有一部分组件是不可区分的,且两个部件组的“可区分”这个二元关系是不同构的。我们称之为两组部件之间的第四类相似关系

(3)所有部件和所有部件的关系

常见的非平凡关系有4种:

第一种,分组数相同,A魔方的每一组和B魔方的对应组,都是相似关系。

第二种,A的分组数小于B的分组数,A魔方的每一组和B魔方的对应组,都是相似关系。

第三种,A的分组数大于n,B的分组数也大于n,A魔方中有n组和B魔方的n组之间是相似关系,俩魔方的剩余组之间是平凡关系。

第四种,所有部件组都是平凡关系,但是复原思路类似。

我们分别称之为一级、二级、三级、四级相似关系

5,魔方之间的关系

(1)等价

一级相似关系中,最特殊的一种就是等价关系。即,各个部件组都是第一类相似关系中的全部等价关系,且操作集也是同构的

如:

三阶魔方和镜面魔方是等价关系。

二阶魔方和二阶镜面魔方是等价关系。

三阶图案魔方A和乾坤魔方是等价关系。

三阶图案魔方D和三阶魔方是等价关系。

香蕉魔方和223魔方是等价关系。

(2)伪同构

伪同构就是,各个部件组都是第一类相似关系中的全部等价关系,但操作集是不同构的

如:

三阶半转魔方和三阶魔方是伪同构关系。

唯棱魔方和八轴三阶魔方是伪同构关系。

(3)一级一类

一级一类就是,各个部件组都是第一类相似关系,但至少1个组不是全部等价关系。

换句话说,一级一类就是各个部件组都是第一类相似关系,但是整体不是等价也不是伪同构。

如:

上古魔方和三阶魔方是一级一类关系,其中,角块是全部等价,棱块是部分均匀满射部分等价,中心块是部分均匀满射部分等价。

棋盘二A和棋盘二B是一级一类关系,其中,角块是全部均匀满射。

三阶图案魔方A和三阶魔方是一级一类关系,其中,角块是全部等价,棱块是全部等价,中心块是全部均匀满射。

三阶图案魔方B和三阶魔方是一级一类关系,其中,角块是全部等价,棱块是全部等价,中心块是部分均匀满射部分等价。

三阶扭曲魔方和三阶图案魔方C4X是一级一类关系,其中,角块是全部等价,棱块是部分均匀满射部分等价,中心块是全部等价。

金子魔方和四轴枫叶魔方是一级一类关系,其中,角块是全部等价,棱块是全部均匀满射。

斜转魔方和斜转扭曲魔方是一级一类关系,其中,角块是全部等价,棱块是部分均匀满射部分等价。

12轴足球魔方和五魔方是一级一类关系,其中,12轴足球魔方的三角形中心块和五魔方的角块是全部均匀满射,12轴足球魔方的五边形中心块和五魔方的中心块是全部均匀满射,12轴足球魔方的三角形中心块和五魔方的棱块是全部等价。

钻石魔方和三阶魔方是一级一类关系,其中,角块是部分均匀满射部分等价,棱块是全部等价,中心块是全部等价。

(4)一级(其他一级相似关系)

即,除了等价和伪同构和一级一类之外,所有的一级相似关系。

即,至少有一组部件不是第一类相似关系的一级相似关系。

如:

棋盘二A和二阶魔方是一级相似关系,其中,角块是第二类相似关系。

棋盘二B和二阶魔方是一级相似关系,其中,角块是第二类相似关系。

棋盘四和四阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是第四类相似关系。

棋盘三C和三阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是第二类相似关系。

棋盘五C和五阶魔方是一级相似关系,其中,角块是第二类相似关系,侧棱是第二类相似关系,中心棱是第二类相似关系,中心块是第四类相似关系。

粽子魔方和三阶魔方是一级相似关系,其中,三阶魔方的角块和粽子魔方对应块是部分均匀满射部分等价,三阶魔方的棱块和粽子魔方对应块是第二类相似关系,三阶魔方的中心块和粽子魔方对应块是全部均匀满射。

苹果魔方和三阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是部分均匀满射部分等价。

三阶百搭魔方和三阶魔方是一级相似关系,其中,角块是全部等价,棱块是全部等价,中心块是第二类相似关系。

三面体魔方和三阶魔方是一级相似关系,其中,角块是部分均匀满射部分等价,棱块是第二类相似关系,中心块是全部等价。

圆柱三阶魔方和三阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是第二类相似关系。

233魔方和圆柱233A是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是全部等价。

六棱柱魔方和三阶魔方是一级相似关系,其中,角块是部分均匀满射部分等价,棱块是第二类相似关系,中心块是全部均匀满射。

三明治魔方和三阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是第二类相似关系。

独角兽魔方和三阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是第二类相似关系。

薯条魔方和三阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是第二类相似关系。

小红帽魔方和三阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是全部等价。

凹凸魔方和三阶魔方是一级相似关系,其中,角块是第二类相似关系,棱块是第二类相似关系,中心块是全部等价。

(5)子集

即,对应组都是第一类相似关系中的全部等价关系,且操作集也是同构的

如:

二阶魔方是三阶魔方的子集

二阶镜面魔方是三阶镜面魔方的子集

三阶空心魔方是三阶百搭魔方的子集

唯棱魔方是三阶空心魔方的子集

二阶五魔方是五魔方的子集

122魔方是123魔方的子集

(6)双重子集

即,对应组都是第一类相似关系中的全部等价关系,且操作集也是子集关系

如:

三阶魔方是五阶魔方的双重子集

五阶魔方是七阶魔方的双重子集

二阶魔方是四阶魔方的双重子集

四阶魔方是六阶魔方的双重子集

棋盘三A是棋盘五A的双重子集

棋盘三B是棋盘五B的双重子集

棋盘三C是棋盘五C的双重子集

棋盘二A是棋盘四的双重子集

棋盘四是棋盘六的双重子集

棋盘六是棋盘八的双重子集

三阶魔方是4叶按钮魔方的双重子集

112魔方是113魔方的双重子集

113魔方是114魔方的双重子集

223魔方是233魔方的双重子集

金子魔方是金字塔魔方的双重子集

三阶半转魔方是2叶按钮魔方的双重子集

(7)二级(其他二级相似关系)

暂无

(8)简化

所谓简化,就是A魔方的部件组数大于B魔方,但是A的若干组部件经过合并之后可以和B的对应部件组形成第一类相似关系中的全部等价关系,且这个合并过程提供了一个非平凡的复原方法。

如:

三阶魔方是四阶魔方的简化

斜转魔方是极光闪蝶魔方的简化

(9)三级(其他三级相似关系)

如:

四轴枫叶魔方和金字塔二重奏魔方是三级相似关系

(10)融合

如:

双心魔方是爱心魔方的融合

(11)四级(其他四级相似关系)

如:

114魔方和转角兽魔方是四级相似关系

一阶魔方和一阶金字塔是四级相似关系

一阶魔方和一阶五魔方是四级相似关系

五魔方和三阶魔方是四级相似关系

二阶五魔方和二阶魔方是四级相似关系

棋盘五A和棋盘五B是四级相似关系

棋盘三A和棋盘三B是四级相似关系

6,二元关系总览

(1)画图原则

不一定会把所有关系都画出来,但是会尽量避免出现孤岛(孤点)

明显具有传递性质的二元关系,有些就不画了,比如二阶魔方是六阶魔方、七阶魔方的双重子集。

所有的等价关系一定都画出来了。

(2)六轴对称固形遗忘魔方

(3)其他对称固形遗忘魔方

(4)其他魔方

7,几个有趣的关系

(1)三阶空心魔方 VS 三阶魔方

一般来说,A的组件是B的子集,那么复原B的方法一定可以用于复原A

但是,复原三阶魔方的方法,用于复原三阶空心魔方,却需要做一点微调。

本质原因是,空心魔方的中心块是存在的,却又看不见,所以只能随便猜一个六色布局,有1/2概率需要处理猜错的情况。

(2)简化

A魔方简化成B魔方,一般需要解决3类问题。

第一类问题:部件如何合并,如果有多组需要合并,可能还涉及合并的顺序问题

第二类问题:最后几个部件无法直接合并的特殊情况处理

第三类问题:合并之后按照B魔方的方法去复原,会出现无法复原的特殊情况

这3类问题,都要求我们对B魔方有着除了知道复原方法之外更深刻的原理认知,才能以不变应万变,迎刃而解。

七,魔方差分、恒等式

1,魔方差分

如果2个魔方是一级相似关系,且复原方法非常接近,那么我们可以用差分来表示子问题关系。

用集合语言来描述,把1个魔方需要需要处理的问题表示成1个集合,则A魔方和B魔方的差分就是A-(A&B),记作D=A-B,即在掌握了B的复原方法之后,只需要知道D如何处理,即可复原A

常见差分:

D1 = 二阶镜面魔方 - 二阶魔方,即不通过颜色只通过形状来确定部件的对应关系和朝向

D2 = 三阶百搭魔方 - 三阶魔方,即隐形中心块的定位问题

D3 = 三阶图案魔方B- 三阶魔方,即中间层4个中心块的朝向处理

D4 = 三阶图案魔方A- 三阶图案魔方B,即顶层中心块的朝向处理

D5 = 三阶扭曲魔方 - 三阶图案魔方A,即中间层棱块的隐形朝向问题

D6 = 三面体魔方 - 三阶魔方,即棱块的隐形区分问题

D7 = 钻石魔方 - 三阶魔方,即顶层角块的隐形朝向问题

D8 = 上古魔方 - 三阶魔方 - D3 - D5,即六面颜色定位问题

D9 = 凹凸魔方,即底层复原问题

D10 = 小红帽魔方 - 凹凸魔方,即中间层复原问题

D11 = 三阶魔方 - 小红帽魔方,即顶层复原问题

PS:D2是6个中心块和整个魔方之间的位置关系,D8是6个面之间的位置关系。

2,恒等式

在已经定义一些差分的前提下,可以提出一些恒等式。

三阶镜面魔方 - 三阶魔方 = D1

三阶空心魔方 - 三阶魔方= D2

苹果魔方 - 三阶魔方 = D3

粽子魔方 - 三阶魔方= D3 + D4

六棱柱魔方 - 三阶魔方 = D3 + D4 + D6 + D7

圆柱三阶魔方 - 三阶魔方 = D3 + D5

三阶扭曲魔方 - 三阶魔方 = D3 + D5

八,获得魔方复原方法的方法论

二阶齿轮魔方为例,介绍一下对于任何一种没见过的新魔方,如何推导出这种魔方的复原方法。

1,确认该魔方的结构化

第一次拿到这个魔方,我花了1分钟左右确定了操作集,从而确定了结构化。

2,找到一个接近复原状态的非复原状态

注意这种接近关系需要是非平凡的,这个概念参考《跨领域的抽象概念》中的“魔方的平凡接近状态”

我花了3分钟,找到了这个非平凡的接近复原状态:

那么此时,我就确定了存在一个公式,可以单独调整大角块的朝向。

3,分析出复原方法的梗概

二阶齿轮魔方只有4个小角块和4个大角块,且已经确定存在一个公式可以单独调整大角块的朝向。

于是,我基本上就确定了复原方法的梗概:

第一步调整正方体外形,第二步调整4个小角块的朝向,第三步调整4个大角块的朝向。

可行性分析:

因为层先法最难的就是最后一步,要保证不会打乱之前的步骤,而这个方法的最后一步是确定可行的,所以整个方法基本上确定是可行的。

4,找出预期存在的公式

这一步我大概花了5分钟。

至此,复原方法就完整的得到了。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值