1.如果一个分子量为34000的蛋白质,含12种氨基酸,并假设每种氨基酸在该蛋白质分子中的数目相等,问这种蛋白质有多少种可能的排列顺序?(《生物化学》第二版,沈同)
答案:10^304。
2. 如果一个分子量为12000的蛋白质,含10种氨基酸,并假设每种氨基酸在该蛋白质分子中的数目相等,问这种蛋白质有多少种可能的排列顺序?(《生物化学》第三版,王镜岩)
答案:10^100。
但两者均为北京大学生命科学院徐长法教授所编写。
此题按正常理解,刻划为数学模型,即有N种氨基酸,每种M个,故有N*M个氨基酸残基组成蛋白质,进行可重复全排列,根据《组合数学》,研究生系列教材,姜建国、岳建国编,2003.9,第1版,西安电子科技大学出版社。P5,不尽相异元素的全排列:有i种元素,每种ni个,且Σni=n,则全排列RP(n,n)=n!/Π(ni!)。则当ni≡M时,有RP(N*M,N*M)=(N*M)!/(M!)^N。设蛋白质平均氨基酸残基分子量为K,K*N*M=Mt(蛋白质总分子量),RP=(Mr/K)!/((Mr/N*K)!)^N。但从实际出发,Mr/N*K为正整数(正常情况下M应该是正整数),K一般取110-118之间,而《生物化学》均推荐110,是通过对大量蛋白质数据进行统计后得到的,故合理的K取值应该尽量靠近110。而34000/110=309,34000/118=288,符合题意的取值为312,300,288;相应的K值为109,113,118;RP为9*10^324,1*10^313,3*10^299。如果K值取教材推荐的110及陈硕贞的120(见后),RP为9*10^321,2*10^294。如果按照答案的10^304则K为116。而本题的关键是M是否必需取正整数,用EXCEL计算时M必需为正整数,否则无法计算,而且只能计算199!以下的值,199以上必须通过近似估计得到,而本人通过Maple9进行计算,M可以不取整数,且可计算十分巨大的数值。综合上述,本题的答案K=110-118,RP=9*10^321 - 3*10^299,答案的值也在此范围之内。
而按照陈硕贞的意见,认为K值取120,N*M=283,故RP=12^283=3*10^305。虽然计算值与答案相近,但这种算法认为283个氨基酸位点可以等概率取到12种氨基酸中的任何一种,这样显然会出现一种极端的情况,即283个位点均取同一种氨基酸,这显然与题目条件矛盾。其算法为RP=N^(Mr/K),如果按照这样的算法,题目就应当改为“每种氨基酸在该蛋白质分子的出现概率相等”,而不是“每种氨基酸在该蛋白质分子中的数目相等”,这是明显的区别,不知硕贞何以会理解为前者。于是就提出K取值120来进行计算,如果以K=110计算,RP=12^(34000/110)=4*10^333。
当然符合现实情况的模型应该是“每种氨基酸在该蛋白质分子的出现概率相等”,因为一般而言理论上蛋白质分子的某一位置上的氨基酸可以取20种氨基酸中的任何一种,出现概率相等,此时取20种氨基酸残基平均值118(硕贞取120也接近)进行计算。不过需要指出这也是理论上的模型,在经过统计大量蛋白质数据后得到的氨基酸残基平均出现概率并不是相等的(具体不在此作列举),因此就出现如上所述蛋白质平均氨基酸残基残基分子量为110(实际要比110略大)。
但既然题目的题设已经表达清晰是“每种氨基酸在该蛋白质分子中的数目相等”,就不必再以是否符合现实情况作为借口进行辩驳,而应当用“不尽相异元素的全排列”算法进行计算,同时也考查基本的组合数学知识(此内容是组合数学中最为基本的算法)。对此题算法的不同见解的根源是对“每种氨基酸在该蛋白质分子中的数目相等”这一题设的理解,但本人认为这样的表述应该不存在疑异。无论哪种表述方式都可以展示蛋白质多样性这一不容置疑的现象,就无需固执于“每种氨基酸在该蛋白质分子的出现概率相等”这一种表述方式,也可以适当多样化。
另外可以将问题简化为共有4个氨基酸,2种氨基酸(A、B),每种2个。
按本人算法:4!/(2!)^2=6
N端 AABB C端
ABAB
按硕贞算法:2^4=16
N端 AAAA C端
AAAB AABA ABAA BAAA AABB ABAB ABBA BAAB
BBAA BABA BBBA BBAB BABB ABBB BBBB
显然后者难以满足题设。
本人以为从生物化学、数学观点出发,M应当取正整数,K应该比较接近110,故取K=113,M*N=300,较为合理,计算得到 RP=1*10^313,不必非要往10^304一致,关键在于算法而非结果。另外本人怀疑10^304是10^300之误,因为在第二版、第三版的正文中均提到10^300,疑心此答案并非实际结果,而是取整近似结果,如果是真实值应该写出完整的科学计数表达式,如a*10^3##(a可以取整数)。
同样对于第三版的题,K=110,RP=2*10^101,K=118,RP=1*10^94,而取K=111,RP=2*10^100,与结果最接近。而按硕贞的解法,K=120,故RP=10^100,与答案一致。而从实际出发12000/110=109,12000/118=101。故K=109,120时符合实际,RP分别为2*10^102,2*10^92。
基于Maple9可从容进行非整数的阶乘计算,故本文建议一致采用K=110(其实110-113均可),应用“不尽相异元素的全排列”算法进行计算。
如果将来有题设改为“每种氨基酸在该蛋白质分子的出现概率相等”的情况,K=118(118-120均可),应用指数算法进行计算。
因为对于题1而言(2πMr/NK)^(1/2)]^(N-1)/ N^(1/2)≈4*10^11 – 3*10^11,K取[110,120]。对于题2而言≈3*10^7 – 2*10^7,K取[110,120]。故当RP计算值较大时(一般大于300),两种计算的结果会比较相近,但毕竟是代表不同意义的算法。
今将此陈年旧题再次勾沉出于多方面原因,首先本人曾在2003.8.8与陈硕贞(在BIOON中为上官婉儿)讨论此事,而之前在OKHERE又有多次针对此问题的讨论,硕贞的误解显而易见,但至今在BBSEXPLORER中偶尔提及时仍然坚持己见。在与之讨论之初本人也对自身的算法思之再三,经再三验证确认无误,其实这一算法本人在小学数学奥林匹克培训时就已经掌握(强调此知识的基础性),何以在生物论坛中此算法变得如此陌生。也由此引发对本人对中国生物化学及分子生物学界以至生命科学界人士普遍缺乏(仅指整体而言,当然例外者大有人在)数学常识的担忧。
另外对北大生命科学院学生的过分自信、固执己见、妄自尊大、盲目崇拜感到不可理解,本人并不认为主要由北大教授编写的《生物化学》第三版有何过人之处,只不过框架较全面,其更新部分也基本引用国外类似教材的观点,且较为集中。相信在当今教学、科研水平下只要有相近的资金、人力投入(甚至更少,但只要专心致志),编写这样水平的教材并非十分困难。而且国外的教材在编排方式、编著态度上大有过之者。从第二版到第三版事隔十余年后,两者在较多部分几乎雷同,甚至有不作更改的(当然也有经典生物化学的发展已臻成熟有关),可见编写的态度如何。据陈硕贞声称其算法得到徐长法教授的首肯(不知事实是否如此),那就更让本人觉得遗憾,命题人连自己的编制(或选定)的习题的题意也未加以参详,又可见其态度,而对算法的误解就更令人难以相信其在数学方面的能力。另外在编写教材时对“生物化学文化”方面的介绍较第二版更加缺少,而国外教材中比较注重“生命科学人文”的介绍,系统学习科学发展史可以帮助学生对教材内容的层次性、局限性及发展方向有更加准确的把握。
附录:新语丝论坛上的高手探讨
关于wengjensen一文
送交者: qtl 于 November 24, 2004 10:18:06:
我对weng在文中计算排序总量的方法没有异议,实际上我觉得整篇文章可取之处也即他/她引用了《组合数学》中RP(n,ni)=n!/Π(ni!),即便如此,这个公式似乎引用错了(或者是我错了,RP括号中一个n似乎应有下标i,我对这种表达方法不太清楚)。文中提及国内生命科学界的数学常识缺乏我同意,但是通过这个例子似乎说服力不强。事实上作者也因在文中两次标榜Maple能够计算非整数阶乘而露了怯。
我非常同意Numerical
Recipes作者们说的话,你可以把计算软件当作黑盒子来用,但是你最好知道一些背景(原话忘了怎么说了)。按我的经验,有些背景不知道是很危险的。各种软件包中非整数的阶乘一般都来自伽玛函数的推广,由G(x+1)
=
xG(x),(抱歉我这里敲不出希腊字母来)实际上伽玛函数的定义域可以推广到除0,
-1, -2
…以外的任何实数。至于伽玛函数的算法,直接利用Sterling公式计算的恐怕找不着,虽然有算法是基于Sterling公式的。
国内学生物的基本数学知识缺乏我通常喜欢举育种中选择的一个例子。设一个座位有两个基因A,
a, 基因频率分别为 (1 – p), p,
根据哈代-温伯格定律,平衡群体中aa基因型的频率为p*p。如果将每一代中将所有的aa基因型全部淘汰,假定群体足够大并保持随机交配(没办法,这些条件必须交代清楚,习惯了),则连续世代中a基因频率的倒数构成一个等差数列(级数)。最后一句话是我的结论,我认为这是任何一个正规高中毕业的人所能接受的最简练、最明确、也最容易理解的结论。但是国内育种书上从来没有这么说的,更有甚者,有的书上罗罗嗦嗦,先讲一代后如何,再二、三代后如何,然后眼睛一瞄,原来前后代之间有这样的关系(1/q(i+1)
=
1/q(i)+1),罗嗦了还不算,而且不严密,最后等差数列的结论仍然没有说出来。
当然这事情也不能全怪老师们,这其实是我们上一代人的通病,也并不只限于数学。