前些天看到一篇文章有点意思。假设,人口的数目不变,儿子的姓氏随着父亲,那么随着时间的推移一代一代的演化,最后所有的人都只有一个姓了。具体用个例子描述就是:100个父亲,按照上面的假设会有100个儿子,也就是平均每个父亲在下一代会有一个儿子,假设某个父亲姓"王",并且王在父亲这一代所占的比例是7%,那么概率上来说这个儿子姓"王"的概率为7%。你不能说我姓王,我儿子肯定随我姓呐,概率上的说法都是放在一个大的数目下。上面那句话的意思就是,平均来说占7%姓"王"的父亲在下一代能产出7%姓"王"的儿子,这是合理的吧。那么最后人们只剩下一个姓氏了么?对于这么简化的模型是很好模拟的,比如下面这段python的代码:
def run(populationSize): generations = 0 cur = [x for x in range(1, populationSize+1)] count = 0 while max(cur) != min(cur): count = count + 1 next_generation = [] most_occur_name(cur) for x in range(0, populationSize): son = cur[random.randint(0, populationSize-1)] next_generation.append(son) cur = next_generation print "finished through %d generations, last name is %d"%(count,cur[0])
初始化每种姓氏都有一个,最后只剩下一个姓氏,具体是哪个不确定,要花费多少代的演化也不确定,这一切都是随机的。那可以从上面的模型看出,如果在某个代中某个姓氏所占的比例相对而言比较大,那这个姓成为最后剩下的那个的概率也更大,我觉得这是个合理的结论。就我国目前的姓氏分布来说,这一个结论看起来是被验证了, 据统计我国大小姓的悬殊是十分明显的,这种悬殊还在有逐步增大的趋势,其发展的结果可能是大姓人口越来越多,很多小姓越来越少甚至被淘汰。我国目前使用着3000多个姓氏,但经常使用的仅有500个左右,占人口总数87%以上的人只使用100个姓氏,"王"姓最多占了7.25%,"张"占了6.7%。原来和同学讨论这个问题,对方一副自己将会儿孙满堂的模样"我们姓'王'"的是最多的,这看来是有依据的,而且很有可能会有更多。
继续想想,这也是进化的一个简单模型吧。不论进化论到底是真是假(进化论本身也只是个假说而已),事实中会有这么一个现象:基数大的物种在下一代会有增大的趋势。而且姓氏看来比其他东西遗传得更坚固,对于单个人而言,后代随着父亲姓的概率应该远远大于身高随着父亲的概率吧,所以理论上看来姓氏的消失应该是比较快的。那到底是哪个姓氏会坚持到最后呢?这个不确定,而且也许在多少年内这都不会发生。我国目前的姓氏分布有地域关系,比如湖南可能姓陈的比例比较大,北方姓王的比例很大,这种不是完全随机的分布可以延缓姓氏的消失吧。
张学友有首歌叫做《你的名字我的姓氏》里面的歌词是“可用你的名字和我姓氏 ,成就这故事,从此以后无忧无求”,可见,男人对于自己的姓氏留下来的愿望是多么强烈!哈哈,一点浪漫感都没了。