鲁班锁中369的计算方法解密.docx
《鲁班锁中369的计算方法解密.docx》由会员分享,可在线阅读,更多相关《鲁班锁中369的计算方法解密.docx(8页珍藏版)》请在冰豆网上搜索。
鲁班锁中369的计算方法解密
鲁班锁中369的计算方法解密
鲁班锁中6柱实心锁的可用柱有369根。
这个数据应该是由美国人卡特在1978年完成6柱实心锁的计算机分析后提出。
但是30多年来一直没有369根柱的具体资料出现。
直到2013年我按《鲁班锁(孔明锁)的结构分析法之三——“柱”“梁”“檐”三类柱的柱形特点》中的计算方案算出了全部的369根可用柱,并在某贴吧上首次发表。
详见下表:
这个表是我在一个日本人发表的837柱的编码表的基础上为核对369柱的正确性的一个中间过程。
表中白底粗体数字是日本人的837的编码。
837的编码的右侧有色底细体数字是369柱的马丁编码,不同的底色是我对柱的不同的适用位置的分类标记。
马丁编码总比日本人的编码大1。
由于这份表涵盖了837和369这两个鲁班锁的经典数据,所以保留了下来。
表中淡蓝色的底表示此柱只能用于梁这个位置;黄色的底表示此柱只能用于“柱”这个位置;紫色的底表示此柱只能用于檐这个位置;绿色的底表示此柱可以用于梁和柱这2个位置;深蓝色的底表示此柱可以用于梁和檐这2个位置;橙色的底表示此柱可以用于檐和柱这2个位置;淡绿色的底表示此柱可以用于梁和柱和檐这3个位置。
这样的分类直到“N编码”的出现才在此基础上做了更细的分类。
我计算369根可用柱时用了2种不同的方法,但是其指导思想都是《鲁班锁(孔明锁)的结构分析法之三——“柱”“梁”“檐”三类柱的柱形特点》中所提出的计算方案。
方法一:
直接按《鲁班锁(孔明锁)的结构分析法之三——“柱”“梁”“檐”三类柱的柱形特点》中所提出的计算方案用排列组合的方法计算各类柱。
方法二:
在我做好的837根柱中《鲁班锁(孔明锁)的结构分析法之三——“柱”“梁”“檐”三类柱的柱形特点》中所提出的各类可用柱的柱形特点进行筛选。
最后将这2种计算方法的结果综合比较,就可以得到正确结果。
实际上我写《鲁班锁(孔明锁)的结构分析法之三——“柱”“梁”“檐”三类柱的柱形特点》的目的就是为了得到369根柱的具体柱形。
只是当时对此计算方案无法确认其正确性,所以没有明确提出这就是369根柱的具体柱形的计算方案。
而实际上《鲁班锁(孔明锁)的结构分析法之三——“柱”“梁”“檐”三类柱的柱形特点》对各类柱的计算方法已经说得很清楚,只是没有点明。
下面具体说明各类柱的具体计算方法,也算是对《鲁班锁(孔明锁)的结构分析法之三——“柱”“梁”“檐”三类柱的柱形特点》的一个补充说明吧。
一.“柱”的柱形特点,如图一
图一
所有可以用做“柱”的柱的计算就是以图一为基础,按马丁的计算方法对8块淡蓝色的块做排列组合。
这8块淡蓝色的块的编号取“1,2,5,6,9,10,11,12”可以;取“3,4,7,8,9,10,11,12”也可以。
共256种组合。
排除断柱和合并等柱后可得到101根柱。
上表中黄色(34),绿色(52),橙色(4),淡绿色(11)的底的编码表示的柱都是。
二.“檐”的柱形特点,如图二:
图二
同样所有可以用做“檐”的柱的计算就是以图二为基础,按马丁的计算方法对8块淡蓝色的块做排列组合。
这8块淡蓝色的块的编号取“1,2,3,4,5,8,9,10,”。
共256种组合。
排除断柱和合并等柱后得到77根柱。
上表中紫色(32),深蓝色(30),橙色(4),淡绿色(11)的底的编码表示的柱都是。
三.梁的计算是分1+5拼法的上下梁;2+4拼法的上下梁;3+3拼法的左柱梁和右柱梁这6类来计算的。
但在当时的统计中这些都统称为梁。
不过在最近出笼的“N编码”中对这些梁都做了区分。
1.1+5拼法的上梁:
只1#柱(俗称光柱)1根。
2.1+5拼法的下梁:
对图三中的2根柱的毛坯做块切除操作。
左边的毛坯1#,4#,5#,8#块已经切除,其余8块按马丁的计算方法对8块淡蓝色的块做排列组合。
右边的毛坯1#,3#,5#,7#(或者说2#,4#,6#,8#)块已经切除,其余8块按马丁的计算方法对8块淡蓝色的块做排列组合。
对这2次操作结果做排除断柱和合并等柱的工作后得到125根柱。
图三
3.2+4拼法的上梁:
图四中的黄色块可以任意切除,但必须切出一个通道。
此类柱有7根。
图四
4.2+4拼法的下梁:
对图五中2个毛坯各8个淡绿色块按马丁的计算方法做切块工作。
对这个操作结果做排除断柱和合并等柱的工作后得到197根柱。
图五
5.3+3拼法的左柱梁:
对图六下边的2个毛坯各5个淡绿色和绿色块按马丁的计算方法做切块工作。
但是图下右的4个绿色块必须至少切去1个。
对这个操作结果是下左的毛坯可得到32根柱;下右的毛坯可得到28根柱;做合并等柱的工作后得到49根柱。
图六
6.3+3拼法的右柱梁:
每一根3+3拼法的右柱梁都可以在3+3拼法的左柱梁中找到其镜象的柱,所以也有49根。
上述8类柱计算完毕后,有很多柱同时出现在几类柱中。
解决这个问题比较简单:
给计算结果全部编上马丁编码,如果一个编码同时出现在几类柱中,就将此编码的柱提出来再列一类。
例如52#柱可以做2+4拼法的上梁,也可以做2+4拼法的下梁,还可以作为“柱”使用。
于是将52#柱从“梁”和“柱”这2类中提出来,再列一个“梁柱”类将52#柱归入其中。
这样的工作完成后。
369根柱也就出来了。
检验:
按方法二在做好的837根柱中,以《鲁班锁(孔明锁)的结构分析法之三——“柱”“梁”“檐”三类柱的柱形特点》为依据进行筛选。
下图是筛选图之一。
可用柱都涂成绿色。
筛选的结果再与上述计算结果比对。
即可得出正确结果。
以上操作虽然工作量巨大,但是我还是反反复复做了N遍。
收获就是除了得到369以外,还对6柱实心锁的结构规律有了更深的理解。
下图是369根可用柱的分类表。
它除了按柱的用途分类外,还按柱所含有的活动块数做了分组;最下图是含有2,3,4个活动块的柱的45个具体柱形图。