生命科学的底层代码(三:从PCR到3进制计算)

从PCR结果到三进制计算机的思考

写在前面的
因为生命科学中的底层代码专题本身是一类具有科学哲学思想类型的专题,在科学哲学这方面我也是刚涉足,也谈不上专业。因此这一类推送,我并不会聚焦于讨论某一专业性科学问题,我反而会将科学研究中交叉学科的思想观念进行发散,一些相对浅显的交叉学科知识进行传播。一方面增加推送的多样性,一方面增加推送的趣味性。这一次推送我将分子生物学常规实验中的PCR结果与三进制计算机进行联立。

问题的背景

        最近师妹在实验室检测一批工厂环境样本。由于这批样本采样时间距离我们收样时间有半个月之久。加上采样结束时原采样人员没有正确保存样品。所以师妹的检测结果中存在几类情况:有的样本中目的病原核酸阳性,有的样本为核酸阴性结果,有的样本只能得到翘尾的结果。

生命科学的底层代码(三:从PCR到3进制计算)

图1.师妹的PCR翘尾曲线

        师妹比较苦恼,对于那些翘尾的结果,她还得进行复测。她无意的一句话让我突然有了一些感想,她说要是PCR仪器有这样一个程序就好了:对于阳性结果直接报1,阴性结果直接报0。不确定结果报一个0.5,这样她每次做完PCR不用再调基线或者查看结果就能知道哪些可以直接上报,哪些需要复测了。如果程序再高级一点,甚至可以自己计算这个样本翘尾原因就好了。我听完一想,师妹说的很有道理,在分子诊断中诊断结果基本可以分为三类:阳性、阴性和不确定。(因为实验错误导致的无信号结果暂不考虑)。由于现在的计算机是二进制计算机,一个事件只有两种可能:真(1)和伪(0),这分别对应检测中的阳性和阴性。而对于翘尾(师妹话中的0.5)如何表示呢?二进制计算机似乎办不到。我突然想到曾经存在于这个地球上的某超级大国解决过这个问题。那个红色的国家曾想到用-1,0,1分别表示事件的伪、不确定和真。于是三进制计算机就这样被开发出来过。

科普背景:什么是进制

        进制是人类发明的计数方式。原始生活中因为人类只有10根手指,所以人类在早期计数采用的10进制,即逢10进1,因此数字0,1,2、3、4、5、6、7、8、9被发明,后来随着文明的发展,人类发明了第一台计算机(这台计算机是10进制计算机),但是由于这个机器的计算速度实在太慢了,以致于刚被发明出来的时候某些程度上比人的口算速度还慢。所以科学家和工程学家为了找到更快速的计算方式2进制计算机被发明出来。说到这里,大家可能好奇为什么2进制计算机就比10进制计算机快呢?这是因为在计算机被发明的年代,人类工程学中最容易被操控且速度快的工程学是电学,而电学里面电路只有两种方式:一种是开(对应1),一种是关(对应0)。后来计算机之父冯洛伊曼就逻辑电路的特征提出了计算机的冯洛伊曼结构。再后来,计算机工程学的发展都是基于冯诺依曼结构进行的,因此最后2进制计算机真正被普及开。到目前为止,你从计算机上看见的所有信息如:蛋白质结构、核酸序列甚至是视频在计算机底层原件中都是以01构成的庞大字符串记录的。

生命科学的底层代码(三:从PCR到3进制计算)

图2.当前计算机中的一切图片、信息在其底层原件中都被转换为01组成的信息

2二进制计算机是否是最好的计算机呢

        从根本上评价计算机的好坏,运算速度是一项非常重要的考量指标,而运算速度中运算效率又是其重要表征之一。那么什么是计算机的效率呢?计算机效率通常以表达相同信息量所用底层原件多少来衡量。哪一种模式计算机消耗的底层原件越少,那种计算机效率越高。比如,如果我们要表示0~999中的1000个数,在10进制的模式下,我们一共需要30个原件表示。因为从000~999中,有3位,每位可以用0~9数字表示,3位总共需要310个数字,也就是30个原件表示,恰好可以表达完0~999。如果换算成2进制,那么0到999在2进制模式下是0~1111100111。其中1111100111总共10位,但是每位可以用数字0和1表示,那么10位一共可以使用102个数字,即20个原件表示。但是,细心的你一定会发现,1111111111(10进制为1023)这个数超过了1111100111,但是20个原件可以表示的数字包含了1111100111~1111111111(10进制为1000~1023)这部分。也就是说如果在2进制模式下表示0~999,实际使用的原件数可以比10进制模式下多表达24个数值,相比之下2进制用20个原件比10进制用30个原件还可以多表达24个数值,也就是说2进制计算机效率比10进制计算机高。以此类推,当用3进制表示0~999数字时一共需要3*7也就是21个原件表示,而3进制的21个原件一共可以表示到10进制模式下2186的数值,相比之下3进制用21个原件可以比10进制多表达1187个数值,这效率更高了。因此从一般情况考虑,在X进制下表示N个数值(X可以不是整数),一共需要的原件数为

对于上面的方程科学家定义了计算机效率E的计算方程

对其求导得

        当X=e(自然常数,约等于2.718)时,效率E取最大值。也就是说当取e进制时,计算机效率可以达到最大,由于工程学上很难完成这种工业设计,所以上世纪50年代苏联的计算机科学家С·Л·Соболев所在团队选择了3进制作为他们的发明计算机中的运算模式。因此计算机Сетунь被发明出来。当时这种计算机在运算速度和使用寿命上吊打美帝的2进制计算机。这也是社会主义阵营与资本主义阵营在自然科学和工程学领域较量中的一场完胜!但是,非常不幸,在后来的苏联政治体系变革中,苏联严重的官僚主义将这一他们认为的“科幻产物”给予了否定态度,以不符合计划经济发展为由扼杀了3进制计算机的发展。后来,美帝阵营中2进制计算机得到了良好的发展,随着后面工艺的进步,2进制计算机利用后天的先进工艺也提升了运算速度。但是从底层的角度说,如果3进制计算机诞生之初得到了大力的支持,那么现在就没有2进制计算机的事情了。

图3.莫斯科国立大学保存的苏联时代发明的3进制计算机

2进制计算机在当前自然科学研究中的弊端

        科普了一大堆计算机底层知识,现在回到生命科学主题上。如大家所知,计算机的到来确实为多个自然科学领域的发展带来了大量的帮助。比如,生化环材四大天坑专业中的生命科学专业,也因为计算机的到来诞生了一个坑口专业:生物信息学。当前的生物信息学蓬勃发展确实为生命科学中的核心科学问题的解决提供了不可忽视的帮助!但是,以2进制计算机为底层运算模式下支撑的生物信息学,也很难解决一些科学问题。比如,我师妹的问题。PCR翘尾,如何不做实验才可以给予一个判定?可能有的人想通过一些算法对翘尾曲线进行解读,然后给予一定的统计学判断。这样是否太复杂了?又比如在量子物理学领域,2进制计算机如何表示薛定谔的猫?因为2进制计算机的逻辑中没有又真又伪。

图4.量子力学发展早期曾被人质疑,更有人以观测者在未观测到猫之前,猫处于又死又活状态来嘲笑量子力学中不确定的观点

3进制计算机的重生

        在量子力学领域,2019年IBM Q System One量子计算机作为3进制在量子计算领域的新尝试被开发。3进制计算由于其底层优势-1代表伪,0代表不确定,1代表真。更符合现代自然科学,特别是以实验为主的生命科学、化学、实验量子物理学中不确定性实验结果的分析。更符合人工智能逻辑。我相信,3进制计算机的重新推广势必为新一代生命科学研究打开新的大门。

图5.以3进制运算为模式的首台量子计算机诞生

回到现实:如何避免qPCR的翘尾

对于PCR翘尾的现象,需要从多方面分析
(1)阴性样本扩增曲线翘尾,通常表示存在污染;

(2)阳性样本扩增曲线翘尾,表示样本浓度低或者加样量不准确。

解决方案:
1.排除是否存在污染;
2.排除污染原因后复检样本,如果复检后曲线为阴性直线则说明之前的翘尾为非特异性扩增,如果重新提取样本复检后曲线仍与之前一致则表示该样本中待检病毒核酸的浓度偏低。

参考:

https://www.zhihu.com/question/20194670

生命科学的底层代码(三:从PCR到3进制计算)》来自互联网公开内容,收录仅供学习使用,如侵权请联系删除。本文URL:https://www.ezixuan.com/1021363.html

(0)
上一篇 2023年 2月 3日 上午9:16
下一篇 2023年 2月 3日 上午9:16