首页 > 悬疑推理 > 四进制造物主 非奇异矩阵

第四十二章 DNA计算机

小说:

四进制造物主

作者:

非奇异矩阵

分类:

悬疑推理

半个月后,

3号楼503寝室的就寝率直降为零。

因为艾达否也终于开始夜不归宿了。

易天霖本就神出鬼没。自上次外场试验失败后,便一头扎进实验室里,试图将他的烫手大肠杆菌提升一个档次,进化为烈焰大肠杆菌。

卢赫自打下了定了决心后,经常在实验室抱着锌指平台睡到后半夜,把结果做完电泳之后,再回寝室睡一个不超过3个小时的回笼觉。

于是艾达否经常独享一个二十多平米的大单间,一人霸占三张椅子,半躺着对着三个屏幕敲敲打打。有时是在世界第一程序员交友平台gayhub上攒绿格子;有时是接下了几个私活,用和他同名的小软件,反编译几个小程序,挣点零花钱;而更多的时候,则是徜徉在游戏的海洋里。

每每看到卢赫披着月光进门,或者顶着白露出门,他都要嘲讽一句:

“卷王!”

而如今,他却成为了503乃至全学院的卷中卷中卷中卷。

这天,卢赫又一次披星戴月地返回寝室,半路上看见隔壁计算机学院院楼的小广场里,半人多高的茂盛万年青上,飘着一个人头。

那人头缓缓地沿着绿化带,从南飘到北,又从北飘到南。如此反复几趟,然后越飘越远,直至只露出头顶上几缕被风掀起的头发。伴随着噗通一声,人头彻底消失在视线。

卢赫连忙上前查看,发现艾达否正跪拜在花坛中央的铜制的艾伦·麦席森·图灵的全身雕像前。

他悄声走到艾达否身后,把手从衣兜里抽出,轻抚对方的肩膀,“平身。”

艾达否被惊得一得瑟,转头发现是卢赫,便立刻起身照着卢赫的屁股揣了一脚,“瞅你那揍性,竟敢占我便宜。你脑袋里有哏丘还是咋地,大半夜的不睡觉,到处瞎转。”

“你脑子才有毛病。”卢赫连连躲闪,“闲得没事拜那玩意儿干啥,知道那位神死得有多惨吗?不如去拜数学院的那尊祖冲之。”

“祖冲之太远了,懒得走过去。”艾达否抬脚又踢了个空,“让你侮辱我偶像。”

两人嬉闹地绕着花坛追逐了两圈,随后一同瘫在长椅上喘气发呆。

“老艾,说正经的,你最近抽什么风,怎么突然就那么卷?”卢赫从背包中掏出一瓶矿泉水,咕咚灌了一口。

艾达否仰面望着天空上的半轮月,砸了砸嘴,“我遇见难事了。dna计算机听说过没?”

“什么玩意儿?”卢赫被水呛了一口。

“dna计算机,这是我的研究方向。”艾达否的脸上闪过一丝得意,“我告诉这东西可牛了,理论上与量子计算机比肩,可以解决np完全问题。”

“噗。”卢赫听后嘲讽道,“民科。”

艾达否被激得起身坐直,正言道:“你知道什么是np完全问题吗?”

“知道啊。”卢赫把水瓶拧好,捏在手里心不在焉地晃着,“如果一个问题可以在多项式时间内猜出它的一个解,那它就是np问题。如果一个np问题可以被其它所有np问题约化到,那么它就是一个np完全问题。”

艾达否听后,连忙竖起大拇指,“牛啤啊,你还知道多项式时间和约化?”

“切。”卢赫得意地扬起下巴,“多大点事儿,当谁没编过程似的。不就是时间复杂度里的n出现在底数位置吗?非得给人重起个名叫多项式时间,故弄玄虚。”

“至于约化,不就是解决不了一个问题,就绕过它,去研究一个更复杂的问题,对其进行降维打击吗?举个例子,你脑子不好使死活解不出一元一次方程,灵机一动想出了个点子:

既然我解不出一元一次的,那我干脆去研究二元一次的。一旦我把二元一次的给解出来,那一元一次的就该像喝水一样简单了。”

“至于你说得什么np完全问题,那不就是以多项式时间作为上限,无限去做约化。我解不出一元一次的,我就去解更复杂的二元一次;解不出二元一次,就去解更复杂的三元一次。

这样无限套娃下去,约化到一个无限复杂的问题,你拍着胸脯说:嘿,只要把这道题解出来,世界上所有问题就都难不倒我了!”

卢赫说完,右手搭在艾达否肩膀上,左手指着天空:“老艾啊,哥送你一句话:仰望星空,脚踏实地。左脚蹬右脚永远都上不了天。”

艾达否听后不屑地笑了笑,“你可去拉倒吧,你个思想落伍的保守分子。dna计算机是怎么工作的你知道吗?”

“怎么工作的啊?”卢赫来了兴致。

艾达否一脸认真地娓娓道来:

“你知道哈密顿问题吗?图论里面的最着名难题。不知道也没关系,给你简单点描述一下:

假如你是一个时间管理大师,同时交往着5的女朋友,这些女朋友分布在5个不同的城市。有一天,你被老板派到另一个城市出差。好巧不巧,在那个城市你一个女朋友都没有,而你非常想念她们,想借着公费出差的机会,

把这5个女朋友都见一遍。

由于经费有限,你又很抠门不想多掏机票钱,所以每个城市只能去一次。同时这些城市之间又不全部都有

双向直飞航线,你该怎么做呢?

你可以想想,但我告诉你不论你怎么想都没用。因为这类问题的解法只有一个,那就是试!和我们暴力破解密码一样,一个一个试!

进一步的,如果你不只五个女朋友,而是有50个、500个、5万个、无穷个,你该怎么办?”

卢赫对着艾达否逐渐由认真转为嬉笑的脸,思索片刻,答道:“我觉得这个问题我不需要考虑。5个女朋友大眼一瞅在纸上画画也就出来了,如果再多,我肯定会先死在床上。”

“你个死变态。”艾达否一脸嫌弃道:

“很难对吧?这其实是一个时间复杂度为n!的问题,也就是说,如果你有n个女朋友,就要尝试n的阶乘次。如果你女朋友多达万个,就算是拥有4万个核心天河三号,也要算到你年过花甲。

可这个问题对于dna计算机来说,却是小菜一叠。它是这么算的:

假如你现在刚见完1号女朋友,准备奔赴到2号的怀抱。那么你离开1号女朋友的行为,就被编码为acac;奔赴2号女朋友的行为,被编码为gtgt。把这两串编码合起来,acacgtgt就代表你从1号到2号的路径。

接下来,你见完了2号女朋友,又匆匆赶往3号。这个过程可以再用编码表示为tctcagag。

也就是说,8个碱基就可以用来表示你和其中一个女朋友从见面到拜拜的全过程。这个时候你肯定就要问了,我要你规划一条连续的路径,可acacgtgt、tctcagag是分离的两条链,这还怎么能玩儿的下去?

很简单嘛,碱基对是可以互补的。你再找一条cacaagag,不就可以跟胶水一样,把那两条毫不相关的链给粘起来了吗?

接下来的事情就更简单了。你有几个女朋友,就用几串8位编码来表示和她们的见面和拜拜的过程。然后你把你的女朋友和胶水都合成一下,扩增个几万亿条,放在一起,养蛊。

根据碱基配对原则,胶水分分钟就能发挥作用,把各种女朋友给粘起来。这个时候,你会得到几万亿条路径。这就是路径遍历的所有结果。

那你又要问,我怎么把最省钱的那一条路径给筛选出来呢?

这也很简单,你的起点和终点是固定的。只要拿起点和终点作引物,扩增一下,起终点正确的路才能被扩增,不正确的会被逐渐稀释掉。至于有些路径上,你少见了几个女朋友,或者重复多见了几个女朋友,这些链的长度肯定是不对的。

最终,你把它们电泳一下,链长的和链短的分开,挑出长度刚好的链,测个序,答案不就出来了吗?”

艾达否说完,抢过卢赫手里的水,猛灌了几口,“要知道,1克的dna可以存储215pb的数据,相当于2亿部小电影。这还不算完,由于碱基配对的速度不慢,这215pb可以直接当作内存用,有几条链就相当于有几个线程并行运行。

有个神仙已经设计出了多项式时间的、基于dna算法的np完全算法,只不过减少时间复杂度的时候,牺牲掉了空间复杂度。这个算法实现起来,需要有指数数量的编码方式,和巨额的存储空间。

可这些对dna来说都是洒洒水,刚才都说了,dna的存储效率极高。因此,dna解决np完全问题,指日可待!”

【当前章节不完整】

【阅读完整章节请前往原站】

【ggd8.cc】