yangleader的个人博客分享 http://blog.sciencenet.cn/u/yangleader 教授,博士生导师,北邮信息安全中心主任

博文

棋盘格璇玑图研究(完整版)

已有 6099 次阅读 2013-3-1 16:42 |个人分类:机器文学 |系统分类:论文交流| office, center, namespace, xml, 完整版

棋盘格璇玑图研究(完整版)

杨义先

北京邮电大学信息安全中心主任

灵创团队带头人

 

摘要:本文提出并实现了一种新型的璇玑图,称为“棋盘格璇玑图”,它虽脱胎于历史上著名的五色“苏蕙璇玑诗图”[1]中的红色格状部分,但是,其千变万化的程度又远胜于前者!根据数学理论的精确计算,它可以产生35960首四绝诗(三言、五言或七言),或者说,4294967295(约43亿)篇韵文!基于该类“棋盘格璇玑图”,我们即将推出一款计算机写诗软件,它的玩法如下:玩家只需要任选2个韵,并且选择自己需要的意境(比如,“送爱人”或“送朋友”)和需要的是诗言数(比如,三言、五言或七言),那么,计算机将在瞬间提供数幅“棋盘格璇玑图”,然后,玩家根据自己的爱好,选取其中的一幅或多幅璇玑图,并享受从中阅读出的数万首“回文诗”!

特别说明重新发布本文的原因:1)由于博客编辑器的显示功能太弱,几个关键图表仍然无法显示,因此,请有特殊兴趣的读者,请点击并阅读此附件中的全文( 棋盘格璇玑图.doc  );2)此文是本人即将发布的“破解苏蕙璇玑图”的关键,因此,为确保整体系统的连贯,必须首先确保本文的完整性;3)与前一版本相比,此完整版在计算机实现方面也有进展。

 

 

(一)棋盘格璇玑图案例

 

中国象棋的“帅府”图如下图1所示:

 

1:棋盘格图

1中共有九个交叉结点(分别标为123456789),同时,还有16条线(边),其中含6条横线(边)(分别标为(12)、(23)、(45)、(56)、(78)、(89)),6条纵线(边)(分别标为(14)、(25)、(36)、(47)、(58)、(69))和4条斜线(边)(分别标为(15)、(59)、(35)、(57))。

1.1)三言版“棋盘格璇玑图”例

 

我们的三言版“棋盘格璇玑图”就是在图1的九个交叉结点上各放一个汉字,然后,沿每条直线(横线、纵线、斜线)在交叉点之间(不含交叉结点)再各放两个汉字,使得从任何一个交叉结点出发,沿任何一条直线顺序阅读,到达其后的第四个结点时,便要获得一首“三言四绝诗”,同时,该诗逆向阅读后,也得到另一首“三言四绝诗”。

下面的图2便是三言版“棋盘格璇玑图”的案例。它按上述读法可以读出同一个主题(“瞧这一家子”)的3万余首三言四绝诗和更多(40多亿)的三言韵文。

 

           

                       

                       

           

                       

                       

           

 

2:三言版“棋盘格璇玑图”例子

 

比如,以“妻”开头,便至少可读出如下的“三言四绝”诗:

妻仙嫣,姐懒贱;妾艳馋,爹喘惨。

妻仙嫣,姐廉俭;爷憨变,哥严贤。

妻淡恬,爷叛悍;爹馋艳,妾贱懒。

妻妍腼,弟闲谦;爷俭廉,姐嫣仙。

妻妍腼,弟安健;子贤严,哥变憨。

它们反序阅读后,分别变成:

惨喘爹,馋艳妾;贱懒姐,嫣仙妻。

贤严哥,变憨爷;俭廉姐,嫣仙妻。

懒贱妾,艳馋爹;悍叛爷,恬淡妻。

仙嫣姐,廉俭爷;谦闲弟,腼妍妻。

憨变哥,严贤子;健安弟,腼妍妻。

 

1.2)五言版“棋盘格璇玑图”例

 

我们的五言版“棋盘格璇玑图”就是在图1的九个交叉结点上各放一个汉字,然后,沿每条直线(横线、纵线、斜线)在交叉点之间(不含交叉结点)再各放四个汉字,使得从任何一个交叉结点出发,沿任何一条直线顺序阅读,到达其后的第四个结点时,便要获得一首“五言四绝诗”,同时,该诗逆向阅读后,也得到另一首“五言四绝诗”。

下面的图3便是五言版“棋盘格璇玑图”的案例。它按上述读法可以读出同一个主题(“瞧这一家子”)的3万余首五言四绝诗和更多(40多亿)的五言韵文。(由于读法基本与前面的“三言版”相同,所以,此处不重复列举了)


 

                   

                                                   

                                                   

                                                   

                                                   

                   

                                                   

                                                   

                                                   

                                                   

                   

 

3:五言版“棋盘格璇玑图”例子

 

1.3)七言版“棋盘格璇玑图”例

 

我们的七言版“棋盘格璇玑图”就是在图1的九个交叉结点上各放一个汉字,然后,沿每条直线(横线、纵线、斜线)在交叉点之间(不含交叉结点)再各放六个汉字,使得从任何一个交叉结点出发,沿任何一条直线顺序阅读,到达其后的第四个结点时,便要获得一首“七言四绝诗”,同时,该诗逆向阅读后,也得到另一首“七言四绝诗”。

下面的图4便是七言版“棋盘格璇玑图”的案例。它按上述读法可以读出同一个主题(“瞧这一家子”)的3万余首七言四绝诗和更多(40多亿)的七言韵文。(由于读法基本与前面的“三言版”相同,所以,此处不重复列举了)

 

                           

                                                                               

                                                                               

                                                                               

                                                                               

                                                                               

                                                                               

                           

                                                                               

                                                                               

                                                                               

                                                                               

                                                                               

                                                                               

                           

 

4:七言版“棋盘格璇玑图”例子

 

(二)棋盘格璇玑图的绘制思路

2.1)“三言版”的绘制

  三言版的“棋盘格璇玑图”完全可以由计算机按照如下机械方法快速生成:

第一步:根据用户自行选择的某个“韵”,查出该韵的所有属性为“名词”和“形容词”的汉字,然后,按照如下优先顺序将相关汉字填入图1的九个交叉结点中:人物名词、动物名词、名词、形容词(如果数量不够,这些“汉字”可以重复使用)。

第二步:用户再选择另外1个韵(或2个韵,如果担心备选汉字个数不够的话),按如下优先顺序将相关汉字填入与每个结点紧邻的位置:形容词、名词、动词等(如果数量不够,这些“汉字”也可以重复使用)。

第三步:前面2步完成之后,计算机其实就已经绘制出了多幅三言版的“棋盘格璇玑图”,因此,只需要由人工选出用户自己满意的一幅(或多幅)图就行了。

2.2)“五言版”的绘制

五言版的“棋盘格璇玑图”可以在三言版的基础上扩张而成。比如,选定图1中的某条直线后,把三言版中这条直线两端的“结点汉字”与它紧邻的那个汉字整合,形成两个词AB(每个词两个字),然后,插入另外一个词CC也由两个字组成),使得C能够将AB正向和反向连贯成一个能够读懂的句子就行了。

虽然,目前计算机还不知道如何智能又富有诗意地选择这个C,但是,汉字的这两种韵的个数是极其有限的,完全可以仿照已有的计算机写藏头诗软件《搜搜舞文弄墨》[6],针对所有的AB,先由人工(比如,诗人们)撰写出尽够数量的C,将这些ACB放入诗句库中,然后,用户需要时自取就行了(这也可算作是“计算机自动生成吧”)。当然,图3中的案例是由我(在图2的基础上)自己选的,总耗时未超过半小时。相信,有一定文学功底的网友,会比我做得更快、更好!

2.3)“七言版”的绘制

七言版的“棋盘格璇玑图”可以在五言版的基础上扩张而成。比如,选定某条直线后,按(2.2)节中的标记,把五言版中这条直线上的三个词分别记为ABC,然后,AC之间(或者BC之间)再插入一个词D(它也由两个字组成),使得D能够将AC(或者CB)正向和反向连贯成一个能够读懂的句子就行了。

与(2.2)节中的论述相同,七言版的“棋盘格璇玑图”也可以由计算机自动生成,当然,实际上仍然是从“七言诗句库”(事先建立)中选择那些满足音韵要求的众多例句而已。

 

(三)研究“棋盘格璇玑图”的动机

史上最难的“璇玑图”当数苏蕙绘制的五色“璇玑诗图”。自古以来,许多文人墨客都试图从苏蕙的璇玑图中读出更多的回文诗,但是,作者直观感觉像类似“璇玑图”这样的东西应该是计算机的长项(至少借助计算机,普通人都应该能够比较快捷地绘制出自己的“璇玑图”)。事实也证明,作者确实完全破解了苏东坡的菱形璇玑图[2],并且还解决了“环形璇玑诗图”的计算机自动生成问题[3]。但是,由于苏蕙璇玑图的字数太多,规律性不强,人为因素太多,因此,目前仍然未能够破解。

研究发现,五色苏蕙璇玑图中变数最复杂的部分是所谓的“红色”部分(见图5),显然,只要解决了本文的“棋盘格璇玑图”问题,那么,苏蕙璇玑图的“红色”部分就算解决了。同时,不难看出,本文的“棋盘格璇玑图”远比苏蕙图的“红色”部分灵活多变。

 

5:由五色“苏蕙璇玑图”红色部分脱胎而得的棋盘格图

 

实际上,将图5中每个结点(共25个)上放一个汉字,然后,在每条直线(横线、纵线、斜线,共48条线)的两个结点之间(不含结点)再放6个汉字,如果能够使得从任何一个交叉结点出发,沿任何一条直线顺序阅读,到达其后的第四个结点时,便要获得一首“七言四绝诗”,同时,该诗逆向阅读后,也得到另一首“七言四绝诗”,那么苏蕙璇玑图的“红色”部分也就解决了。

幸运的是,第二节中介绍的七言版“棋盘格璇玑图”绘制方法可以轻松地用于解决图5的问题!但是,由于七言版的图5字数太多,而且也仅仅是阶段性成果,所以,我们就将它简化为图1中的“棋盘格璇玑图”了!

当然,激励我们研究图1所示璇玑图的另一个重要原因是:“棋盘格璇玑图”本身的娱乐性也很强!

我们即将推出一款基于图1“棋盘格璇玑图”计算机写诗软件,它的玩法如下:玩家只需要任选2个韵(比如,AB),并且选择自己需要的意境(比如,“送爱人”或“送朋友”)和需要的是诗言数(比如,三言、五言或七言),那么,计算机将在瞬间提供数幅图1中的“棋盘格璇玑图”,然后,玩家根据自己的爱好,选取其中的一幅或多幅璇玑图就行了!

另外,“机器破解璇玑图”也是本人业余爱好的“技术文学研究”[45]的一个重要组成部分。



本网站(或页面)的文字允许在CC-BY-SA 3.0协议和GNU自由文档许可证下修改和再使用


 

参考文献

 

[1]百度百科之“苏蕙璇玑诗图”, http://baike.baidu.com/view/14008.htm

[2]杨义先,破解苏轼璇玑诗图,

   http://blog.sciencenet.cn/blog-453322-660604.html

[3]杨义先,环形回文诗―――机器文学新进展,

 http://blog.sciencenet.cn/blog-453322-658059.html

[4]杨义先,技术文学初探(1),

http://blog.sciencenet.cn/blog-453322-620434.html

[5]杨义先,技术文学初探(2), 

  http://blog.sciencenet.cn/blog-453322-620437.html

[6] 搜搜舞文弄墨, http://labs.soso.com/app.q?app=makepoem

 

 



https://blog.sciencenet.cn/blog-453322-666253.html

上一篇:棋盘格璇玑图研究
下一篇:破解史上最难璇玑图(1)
收藏 IP: 59.64.255.*| 热度|

1 刘洋

该博文允许注册用户评论 请点击登录 评论 (3 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-12-23 06:02

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部