Archive for 09月, 2009

Sep 26 2009

硝烟背后的人性写照

Published by 欧阳峰 under 书山有路

在人类活动中,有不少违背人性的行为,而最重要的恐怕就是战争了。不仅作为战士必须变成杀人机器,就是在战争地区生活的平民,也不能过上正常人的生活。我们关注战争,谈论战争,往往注重的是该不该打,胜负消长,战略战术。而战争涉及到的人,特别是战区的平民,就往往只是统计数字的一部分了。

在阿富汗,有这样一位村民。他每天坐在一个地雷区旁边守候。有野羊跑到雷区里被炸死,他就去拖出来,拿去卖钱,维持生计。那他会不会碰上地雷呢?总有一天会。但是在那之前,他还需要吃饭,所以还得与地雷共舞。在那个国度,战争持续了几十年,已经成了生态的一部分了。

也是在阿富汗,一个受凯达训练的沙特“战士”被北方联盟俘虏了。他和记者谈话的最后一句是:要求记者在他被处死前联系上他的父亲。“理想”和亲情,最后谁胜谁负?

在伊拉克,一个摄影记者想到一幢小楼去拍摄抵抗者的尸体,一班陆战队员随行保护。在小楼里,他们遭到了袭击,一名战士被击毙。经过激烈枪战,陆战队战士们终于抢回了战友的遗体撤出了小楼。调来飞机轰炸后,战士们在废墟中发现了两具抵抗者的尸体,原来对方只有一个枪手。双方殊死搏斗,都是因为不肯丢下死去的战友。

在伊拉克街上跑步,也是不平常的经历。有时邻里小孩会陪着一起跑完全程然后挥手告别。伊拉克的警察看不惯西方人穿短裤的样子,就送给他一套伊拉克足球队的制服。是敌是友,有时并没有那么重要。

但是伊拉克也充满了变幻莫测的杀机。“抵抗者不是躲在阴影里,他们就是阴影。”昨天跟着你拿糖的孩子,今天就可能站在屋顶上把迫击炮弹引向你的汽车。为了修水渠和你讨价还价的农民,家里也许就藏着瞄准你的步枪。被绑架更是西方人的噩梦。那里甚至有职业的绑架队,和拍卖“肉票”的市场。至于自杀炸弹留下的头颅和内脏,待久了的人也已经习以为常了。

哦,还有那翻云覆雨的政客,忠厚又狡诈的商人,混迹于正邪之间的线民,和冒着生命危险为西方人工作的伊拉克人。。。

所有这些,还有更多更多,这就是《没完没了的战争》(The Forever War by Dexter Filkins, 2008)中描写的图景。作者是《纽约时报》驻伊拉克记者,2009年普列策奖得主。这是作者的第一本书,也是一本畅销书。书中不谈全球政治和正义公理,只是作者经历的一个个故事。就像伊拉克错综复杂的局势一样,这本书也没有明确的逻辑线索,甚至时间顺序也被刻意打乱。就像电影中的蒙太奇一样,这些故事的总体投射着作者的感情和感受。虽然作者不作道德判断和分析总结,但这本书给我提供了理解其他关于伊拉克战争的言论报道所需要的背景和语境。这是一本需要用“心”去读的好书。

作者有个演讲也值得一看:http://www.youtube.com/watch?v=fa-oXcft0RY

没有评论

Sep 15 2009

奥巴马能完成医疗改革大业吗?

Published by 欧阳峰 under 政治经济

在医疗改革陷入难产,各方各派莫衷一是的情况下,奥巴马总统在九月九日对国会发表了演讲,推销他的医疗改革方案。演讲一开始,他就豪气千云地说:“我不是第一个从事这个事业的总统,但我决心要成为最后一个。”但纵观他提出的方案,其中未见解答的问题甚多。不管是可行性还是效果,都值得进一步思考研究。

奥巴马讲话的实质内容,包括三个措施。以下我就来谈谈对这些措施的初步看法。

第一个措施,是通过立法规范保险公司的行为:不准以“已有问题”拒绝保险人,不准设保险支付上限,限制病人自付额,以及要求保险涵盖常规检查。这个措施的目标是阻止奥巴马所说的目前保险公司坑害保险人的做法。

初步看,这个措施应该是争议不大的。立法不需要纳税人出钱,民众也希望得到这些规定所提供的安全感。但仔细想想,这里面也有不少问题。最重要的,是奥巴马反复宣称,他的改革不会改变已有保险的人的福利。“如果你愿意,你完全可以保持现在的医疗保险”。但这些立法,肯定会影响到现有的保险。例如,不少公司的保险是“自负盈亏”型的,把员工的保险费存起来支付福利,保险公司只是代为管理。如果没有保险支付上限的话,这种形式的保险就不能存在了。对于传统的,由保险公司财力所保证的保险,没有支付上限的话也会影响精算的结果而导致保险费用上涨。而且,目前公司提供的保险都有不同保费和不同支付额的选择,以适应不同家庭的需要。如果限制自付额,有些选项就要取消了。

撇开以上问题不谈,这几个立法倒是颇有道理的。医疗保险的规定和政策太复杂,一般投保者平时根本不会花力气去比较研究。而等生了病发现保险靠不上,就会生出种种悲剧。如果政府能使得保险规定相对规范化,应该说是有益的。但太多的规定又会影响竞争和创新。就拿涵盖常规检查来说吧。现代医学技术日新月异,什么检查算“常规”,什么不算?要让政府说了算,不是一个好办法。

其实,保险业与其他服务业一样,它的服务质量是由政府管制和市场竞争两方面来保障的。目前关于医疗保险的规章在联邦和州两级都已经很多。我看不出多加这几条有怎样的关键作用。奥巴马关于这一部分的演讲,基本上是假定保险公司是在不受市场限制的情况下胡作非为牟取暴利。我还需要更多事实来支持这种说法。

第二个措施,是建立一个“保险市场”,帮助人们选择医疗保险。也可能提供“公立”保险或非营利的保险服务。这个“公立”或非营利的保险不受纳税人资助。但它的运作可以帮助迫使保险公司接受市场竞争。这个措施的目的是以“市场机制”降低保费,以解决几千万美国人没有医疗保险的问题。

用“保险市场”来帮助人们选购也许是个好主意。几年前布什政府开始提供Medicare配方药保险(Medicare D)后,就设立了帮助人们选择的网站。你输入自己常用的药物,网站会告诉你哪些公司的保险涵盖这些药物。你进一步可以查到保费等信息,然后就能直接加入。那的确是非常方便民众的服务。把这个服务扩展到选择医疗保险,应该不会有太大争议。至于“公立”保险,如果政府不出资,又能有多少控制?与目前的保险公司有何不同?另一个问题是,如何保证“公立”保险不成为事实上的垄断,而变成英国,加拿大那样的医疗制度?

更重要的问题是,通过完善市场运作,能在多大程度上降低保费?这又回到前面的问题:保险公司是否在牟取暴利?有报道说,保险公司的操作费用和盈利占医疗费用总数的一大块(有人说百分之三十),而政府经营的Medicare操作费用要低得多。如果这是事实,那说明其中的确有降低保费的空间。但我觉得问题不那么简单,还是需要深入研究一下。

另一个问题是:就算把保险公司的盈利降到零,是不是就人人买得起保险?抑或主要问题是个人买保险比公司买贵得多?贵的原因是什么,是否仅仅因为没有一个统一的市场?这些都是没有回答的问题。所以,“保险市场”是好的,但能解决多少问题,存疑。

第三个措施,是“要求所有人拥有健康保险”,对穷人提供例外或提供补助。这个从经济学上来说是好主意:保险的目的就是分摊风险。也只有做到这点,前面说的不用“已有问题”来拒绝保险人才有意义。否则每个人都等到出了“问题”再投保,保险公司就要关门了。

但进一步,是否还是像现在一样允许不同价格和质量的医疗保险?奥巴马要求每人拥有的是“基本保险”。那么“基本保险”不涵盖的医疗服务,是否就可认为不属于基本人权,所以政府和社会没有责任提供给不能负担的人?在这方面形成社会共识是很重要的。其实“全民保险”今天在美国就有,就是Medicaid。但是一个人需要花完几乎全部的储蓄,而且收入低于一定水平才能享受。而且它本身的服务也很糟糕(很少一部分私人医生接受Medicaid)。显然社会的共识是:一个人因为生了病而落到接受Medicaid救济是不能接受的。那么可以接受的底线在哪里呢?

医疗改革的一个重大问题,就是其中的花费从何而来。通常的估计是:十年之内需要花费九千亿到一万亿美元(奥巴马说的是九千亿)。奥巴马声称,这个改革不会增加预算赤字。那么如何支付这个花费呢?这一点,我觉得奥巴马还是语焉不详。

奥巴马提到Medicare,说要减少Medicare中的浪费和Medicare中对保险公司的“补贴”。我想后一句话是指媒体报道过的扣减Medicare对医院的支付额的想法。且不说如何保证这样“精简”不会影响服务质量,我弄不懂的是为什么对Medicare的改变会帮助医疗改革。根据奥巴马的说法,医疗改革要解决的问题是:保险公司胡作非为,很多人没有保险,医疗费用飞涨,这些都与Medicare无关。(Medicare会受医疗费用的影响,但Medicare有自己的基金和自己的定价,与商业保险有很大不同。)奥巴马许诺过不会用Medicare基金来支付医疗改革的成本。但他又说Medicare的改进能支付大部分的医疗改革花费。到底这里变的是什么戏法?

另一个经费来源是减少现有医疗体系里的浪费。这一点奥巴马在竞选时就反复提到过。他最津津乐道的是建立电子医疗档案。我没有研究过这个技术能省多少钱,但很难相信这会足以支付医疗改革的成本。而且,医院和保险公司省下的钱如何能到政府手里支付政府的费用?我想奥巴马可能是把控制医疗费用上涨和支付医疗改革的费用(其中主要是补贴没有保险的人群)混为一谈了。

奥巴马还提到要向提供高档医疗保险的保险公司收费。媒体以前也报道过对公司提供的高档医疗保险取消免税待遇的计划。但这样一来,那些保险的实际费用就会上涨。这与奥巴马“不影响现有保险”的承诺矛盾。

最后,奥巴马承诺道:“中产阶级将得到更多保障,而不是更高的税。”那么谁会得到更高的税?高到多少?这些没说出的话才是令人担心的。

总之,我认为奥巴马在这次演讲中提出的改革方案听起来振振有词,但细节中还是有很多问题。更重要的是,这些改革措施到底是否能纠正目前医疗系统的痼疾,并没有很好的证明。目前美国医疗系统中涉及到每个人的问题就是费用飞涨。奥巴马在演讲中也承认这是个严重问题。但他提出的改革措施中,没有一条是针对控制费用的。他后面花了很多时间谈论“消除浪费”,“提高效率”等。但关于具体的措施和预期的效果远远没有前面三条明确。其实,我认为医疗费用问题才是关键。控制住医疗费用,其他问题至少就不会恶化,而且解决起来回旋余地也就更大。而按照奥巴马的思路,控制医疗费用只要“节约”就行了,并不需要触动目前的保险体制。那何不先从这里着手,既为后续改革打好基础,也为自己建立信用?目前奥巴马“一举完成”医疗改革大业的做法,雄心可嘉,但效果恐怕是欲速则不达。

没有评论

Sep 08 2009

千里送鹅毛的心理学

Published by 欧阳峰 under 学海无涯

中国有句古话:“千里送鹅毛,礼轻情意重”。就是说,即使没有金钱价值的礼物,也能表达深厚的情谊。现在设想一下,如果送来的不是鹅毛而是一张一元的钞票,你会怎样想?你会不会觉得,虽然一元钱很少,但毕竟比鹅毛更有价值,所以情谊更重?多半不会吧。你更可能觉得这样的礼物莫名其妙。那么问题出在哪里呢?

在回答之前,我再讲个故事吧。有一个托儿所,时常有些家长接孩子时会迟到。虽然他们总是很抱歉,但这样的事总有发生,而使得护理员不能按时回家。于是所方就订了条规定:迟到的家长要罚款。不料这样一来,迟到的人更多了。所方一看苗头不对,连忙取消罚款规定。但是迟到的情况还是没有恢复到以前。

这是怎么回事呢?心理学家发现,“金钱”对人的心理有着微妙的影响。原来人有两套行为准则,一套是社会准则,一套是市场准则。在社会准则中,人的道德价值起主导作用。助人为乐,舍己为人等品质就是这套准则下的行为。而在市场准则中,商业原则挂帅。人的行为主要是等价交换,按劳取酬。那么遇到具体情况,哪套行为准则起作用呢?有时候是基本固定的,比如在商店买东西,与家人的互动等。但在很多场合,行为准则是可以改变的。而“金钱”的介入,就很有效地让人接受了市场准则。而且一旦接受了,再要改回来就不容易了。

这个想法可以用很简单的实验来证明。实验者假装需要搬重物,请路过的学生帮忙。如果不给任何报酬,和给价值分别为50分和5元的巧克力作为感谢,对方愿意帮忙的程度相差不大。但如果给50分钱,愿意帮忙的人就少得多了。如果给5元钱,情况会好一些,但还是不如不给报酬的情况。而且有趣的是,如果给巧克力但提到它的价格,那效果就和直接给钱一样了。这说明,一旦涉及到钱甚至只要提到钱,人们就进入了“市场准则”,不想“助人为乐”,而想“按劳取酬”了。所以如果给的钱低于公平的市场价格的话,他就不愿意干了。“千里送鹅毛”的例子也一样。本来送礼是“社会准则”下的事情,但如果直接送钱,就带来了“市场准则”的感觉,难怪有点不伦不类了。(当然如果送得多,作为“市场准则”下的公平交换,那就是另一回事了。)这样一说,托儿所里发生了什么也就很清楚了吧。

这个实验结论与我们的生活直接相关。在我们与人交往时启动哪个“准则”,往往就在待人接物的细节之中。中国古训还说“君子之交淡如水”,就是希望“社会准则”挂帅的场合不要掺进利害关系。这真是非常有智慧的见解。朋友之间相互帮助尽量不要涉及金钱往来,也不要请朋友用职业技能来免费帮忙,是保持纯洁友情的诀窍之一。

而这两个原则最容易搞混的地方,就是工作场所了。工人干活,公司付酬,是一种“市场准则”下的关系。但同时工人还可能因为兴趣,对公司的忠诚,团队精神等作出额外的贡献。而公司也会在约定的工资以外给工人提供荣誉,成长机会,社交条件等回报。这个“社会准则”下的关系有时也称“社会契约”或“心理契约”。虽然没有白纸黑字,但双方都对自己和对方的行为有所期待。有的单位“市场准则”成分多些,有的“社会准则”成分多些,都能正常有效地运行。但是,如果把两者混起来就会出麻烦了。就说说我经历过的两件事吧。一次公司新的总裁上台,就给大家发了Email,希望人人对公司有commitment,尽力作贡献而不是干一天活拿一天钱。但他同时又宣布将进行外包,把工作移到海外去。开大会的时候就有人问:外包对本地工人的冲击,公司将如何应对?总裁回答说:公司必须基于经济效益行事,而考虑自己职业前途是每个工人的责任。他的Email是按照“社会准则”来提要求的,而公司在外包问题上却按“市场准则”办事。这两句话都没错。但合在一起,大家就可以想象到总裁所希望的commitment能得到多少了。另一件事是,原来公司里因为大家平时都忙,就常常利用午饭时间开会。这些会上往往提供简单的午饭如三明治,苏打饮料和饼干。后来有一天公司发了通知说,午饭应该是职工自费的,因此以后开会不管饭。其实,工人们开会所花的时间远远比饭钱可贵。大家是为公司的业务着想才放弃午休来开会。而公司提供午饭,也是表示感谢和照顾的意思。这是“社会准则”下的互动。但公司为了控制花费取消午饭,就“转轨”到“市场准则”下了,这必然会改变工人的行为。幸好,中层经理们也看出这是个蠢主意,让它无疾而终了。其实,所谓“企业文化”中重要的一环,就是平衡这两种“准则”之间的关系。管理人员处理公司与员工利害关系的一举一动,都对企业文化有着长远的影响,不可不慎重行事。

再举一个例子吧。在处理病假问题时,公司A的规定是:不限制员工病假的天数(当然一次时间太长就要按disability insurance案子处理)。对于滥用病假的人个案处理。公司B则规定每年最多病假天数,而这个限制当然是远远超过平均值的(否则很多人要超过限制,大家都会很不高兴)。猜一猜哪个公司的平均病假天数会更多?

其实,在“金钱挂帅”的地方,也不是绝对没有“社会准则”的空间。我以前在讨论“免费”时,提到很多时候一点小恩小惠会给人带来很温謦的感觉,如卖鱼的送上一把葱,饭店免费给碗甜汤等。这种做法把买卖双方的互动中加入一点社会准则,就使得双方的关系更加丰满。当然,这种社会准则也很脆弱。当顾客滥用商店好意提供的免费服务,或者某种“免费”的做法已经成为行规而整合到顾客期望之中,这种效果就没有了。

当然,以上的例子都是在本来该用哪种准则比较模糊的情况下,金钱的出现使得人们社会准则换到市场准则。和其他心理学现象一样,金钱的影响只是一个偏向而不是绝对的决定因素。例如,如果你的好朋友千里之外给你送来一块钱,你会感到奇怪或啼笑皆非,但不会从此就把这位朋友当成生意伙伴来相处了。家庭成员中合伙做生意的也很多,有时这两种准则不但不矛盾,还是互补的呢。

可见,有意识地处理好这两种行为准则之间的关系而避免混淆,对个人,组织和社会都是值得重视的一件事。资本主义制度的特色就是“金钱挂帅”,现代经济学也是基于“理性人”。“理性人”的需求的确包括了精神需求。但上面谈到了这种精神需求并非固定的,而是与事情的context有关。这个,通常需要think out of the box才能很好把握。

最后,再留一个作业吧。开车的人,总免不了遇到违规罚款的事。通常接到罚单会有懊恼的感觉,也就注意下次不再犯规。但罚款太经常了,人们会就视之为开车的“附加开支”而忍受下来了。比如大城市的停车违规罚款就往往是这个局面。人们决定在哪里停车,就是在停车费和罚款的风险两者间权衡。有的国家把罚款与违规人的收入挂钩,以求起到“公平”的警示作用。让我们来想想,有没有这样的可能:不是引入使得人们在遵守规则与罚款之间进行“成本比较”的“市场准则”,而是让人们在“社会准则”的范畴内得到遵守规则的有效动力?

【参考读物】:Heman, J. and Ariely, D., “Effort for Payment: A Tale of Two Markets”, Psychological Science, Vol. 15, No. 11, p. 787 (2004)

目前有4条评论

Sep 03 2009

数字通信介绍(3)信道编码

Published by 欧阳峰 under 学海无涯

前面介绍过,香农在1948年发表了《通信的一个数学理论》完整地解决了通信速度上限的问题。“信息论”(Information Science)从此诞生。(见上文《数字通信介绍(2)香农与信息论》,http://www.de-sci.org/blogs/fouyang/archives/19714http://www.mitbbs.com/pc/pccon.php?id=2721&nid...http://blog.sina.com.cn/s/blog_48dcfed30100chf2.htm... )。但是香农也留下了一个巨大挑战:怎样才能达到这个速度上限?这个挑战,就开辟了后来五十年来十分热门的研究领域:信道编码。在继续读下去以前,建议读者先复习一下上文的内容。

在数据传送时,我们不是直接把一个一个数码(比特)送去调制,而是只传送一些预先选定的序列(称为码字,codewords)。要传送的数据被对应到相应的码字来传送。在接收方,根据收到的码字就能恢复出原始数据。这种传送的方法就称为编码。编码的目的可以有多种。一个目的是保密,这里不讨论。另一个目的是加快数据传送速度。把不常用的数据编成长码,常用的编成短码,就能降低码的平均长度,而传送更多的数据。上文开始时介绍的摩斯码就是这个原理。我们现在常用zip程式来压缩文档,也是如此。在通信中,这种编码叫做源编码(source coding)有时也称数据压缩。香农在这方面也有开创性的工作,按下不表。第三个目的,就是纠正噪声引起的传送错误。这在上文中也有简单介绍。这种编码就叫信道编码(channel coding),也叫纠错码(forward error correction, FEC)。信道编码就是本文的主题。

香农在证明他的信道容量定理中,引进了“典型序列”的概念。典型序列就是指序列中的符号出现的比例与符号的先验概率相同。对于足够长的序列,所有出现机率不为零的序列都是典型序列。通过选取一些典型序列作为码字,香农证明了最大传送速率。但是这个概念实行起来有困难。很长的序列在编码和解码两方面都会非常困难。而如果序列不长的话,就无法利用“典型序列”的概念。所以,香农给出的传输速率,在几十年中都不能达到。

最早的编码类型是分组码(block code)。这也是最容易理解的一种码。顾名思义,分组码这种编码方式就是把输入数据(二进制)分为长度固定的组,对每一组分别编码。比如,最早的分组码是海明码,写为(7,4,3)。它的意思是把数据分成4个比特一组,所以共有2的4次方,也就是16种可能的序列。每个序列对应了一个7比特的码字。它的编码率(code rate)是4/7,也就是说在每7比特传送的数据中,有4比特的有效信息,剩下3比特称为冗余(redundancy)。当然,一般说来我们并不能说7比特中哪个比特是信息哪个比特是冗余,它们是组合在一起的。

(7,4,3)中最后那个数字3,是码字间的最小距离。码字间的距离(称为海明距离)是指它们之间不相同的比特数。比如,两个码字A(0010110)和B(0110011)的海明距离是3,因为它们有三个比特不同(从左数起比特2,5,7)。如果我们收到了(0110110),我们可以知道传送的更可能是A,因为它与A只有一个比特不同(比特2),而与B有两个比特不同(比特5和7)。换句话说,如果传送的是A而接收时错了一位,我们能纠正这个错误。如果错了两个比特,那它就可能更接近B而导致我们的判断错误。但它还是不等于B,所以我们还是知道出了错。假如错三比特的话,那我们就可能认为发射的是B而无法纠正或检测到错误。所以如果码字间的最小海明距离是3的话,这个码就可以纠正1比特的错误,检测2比特的错误。这里面的关系,读者自己想一下就明白了。

由此可见,分组码的性能是由编码率和最小距离决定的。编码率决定了同样调制方式下信息传输的速度。最小距离决定了纠错的能力。纠错能力越强,就能在越强的噪声下(也就是越低的信噪比下)保持很低的误码率(也就是每一比特信息出错的几率)。所以,性能优越的码,就是要在同样的编码率下达到尽可能高的最小距离。我们还记得,香农定理说,在给定的信噪比下有一个最大传送速率。只要数据转送速率在此限度以下,就可以做到没有错误。或者反过来说,给定传送速率时,有一个最小的信噪比,只要信噪比大于这个限度就可以做到没有错误。而对于现实的编码来说,绝对没有错误是不可能的。对于一个特定的码,它的传送速率是固定的。在不同的信噪比下,它有不同的误码率。我们可以在一个可以接受的误码率(如10的-7次方)下比较它所需要的信噪比与不编码情况下(同样的信息传送速率)的信噪比。这两者的差称为编码增益(coding gain)。编码增益越大,这个码的性能就越好。而香农定理给出了编码增益的上限,这个上限同时也是研究者的努力目标。

图1 给出了描写编码性能的一个例子。纵坐标是误码率(每个比特出错的几率)。横坐标是信噪比(这里用分贝即dB来表示。3个分贝的区别意味着噪声功率差一倍)。这里信噪比的定义已经考虑了信号传送速率的区别,所以对各个码来说是一个公平的比较。对于每个码,都有误码率与信噪比关系的一条曲线。我们可以看到,在较高信噪比的情况下,编码增益分别约为1分贝,1.5分贝和2.2分贝。而这些码的性能与香农上限还相差很远。

对实际应用来说,除了纠错性能外,一个码要求的运算复杂度也是很重要的。我们上面其实已经给出了一个最直接的,也是最优的解码方法(称为最大似然法,Maximum Likelihood):把收到的数据序列与所有码字比较,找出海明距离最短的那个作为解码结果。这样,运算量就与码长(上面例子中的4)成指数关系。这对于稍长的码来说就很难实现了。而实用的分组码是基于种种数学结构而产生的,编码和解码都使用某些数学运算而不是硬性搜寻。这样运算的复杂度就会低很多。人们为此发展了种种技术。目前通用的也只是普遍认为最好的几个系列。一般来说,码越长,纠错能力就越强,但需要的运算量也就越大。

channel_coding_1
图一:编码性能举例(引自[1]图4)

除了分组码以外,另一类编码是卷积码。它是基于卷积运算,如图二所示。图中输入数据进入移位寄存器。在每一个时钟点,移位寄存器里储存的比特依次向前移一位,也就是得到一位(比特)新的输入数据,同时丢掉一位最老的数据。同时,寄存器里的数据与两个系数序列(图上标为码1和码2)逐位相乘,结果相加后成为输出比特。在输出端,两个码产生的两个输出比特被依次输出。注意,以上说的加法是以2为模的。即0+0=0,0+1=1,1+1=0,没有进位。

在这种情况下,每个输入比特产生两个输出比特。所以编码率是1/2。对于一个传送序列,开始的一段和最后的一段是收,发双方约定的,用来帮助解码。我们也可以说卷积码是一种很长的分组码:一个传送序列就是一个码组。当然,由于卷积结构的限制,卷积码的性能并不是同样长度分组码中的最优。

channel_coding_2
图二:卷积码编码器举例

卷积码没有复杂的代数结构,其解码方法就是上面描述过的最大似然法。上面说过,这种方法的复杂度与码长成指数关系。幸运的是,1967年维特比(Viterbi)提出了著名的维特比算法。它遵照最大似然法的原则(因而也是最优的),但利用了卷积码的结构,而使得解码器的复杂度与序列长度成线性关系。这个发明使得卷积码成为一种实用和有吸引力的编码方法。

维特比算法的基本原理可以用一个简单的例子来说明。假如我们要找一条从A到B费时最短的路。这就是最大似然法的基本要求。从A到B要经过一座桥C。从A到C有5条路,从C到B有4条路。这样组合一下就有20(5×4)种走法,需要做20次测量来找出费时最小的选择。但是,维特比指出了另一种方法:我们可以先找出A到C的最好路程,需要做5此测量。然后再找出从C到B的最好路程,4次测量。总共测量9次(5+4),就解决问题了。这个乘法到加法的转变,就把复杂度从指数增长变成了线性增长。这个问题可以简化的关键在于:我们要优化的参数(时间)是每段路程之值的线性相加。而卷积码正具有这个特性。

以上说的解码方法,都是基于已经解调的信号(也就是收到的比特序列)。但解调过程中已经丢掉了一些信息。如果我们规定收到-1V为0,1V为1,那么如果收到0.1V或0.9V,解调的结果都是1。但是这两种情况下这个“1”的确定程度是不同的,前者更有可能出错。要提高解码增益,就要试图利用这个附加信息,也就是把解调与解码结合起来。对于分组码,这样做法需要特殊的设计。而对于卷积码,这个要求可以在维特比算法下自然完成。这也就是卷积码的主要吸引力。

卷积码的另一个特点,就是它在低信噪比条件下解码增益高,而在高信噪比条件下表现就不那么好。也就是说,在输入数据含有很多错误时,它可以把误码率降低。但在低误码率的输入情况下,它的进一步的纠错能力就不高了。于是,人们把两种编码方法合起来使用。把分组码作为“外码”,即最先编码,最后解码。而卷积码作为“内码”。这样,在接收器中,收来的信号先经过维特比算法的解调/解码,产生较低误码率的比特序列。这个序列再经过分组码解码,进一步降低误码率。

以上谈到的分组码和卷积码有一个共性,就是码字是经过精心设计的,使得码字之间的最小距离尽可能大,来增强纠错能力,降低误码率。分组码有着种种特别的数学性质,以便使用巧妙的解码方法。而卷积码通常用维特比算法来解码。另外,还有把调制和卷积码编码结合在一起的“格状编码调制”(Trellis Coding Modulation, TCM),这里就不细谈了。这些码的性能离开香农极限都有几个分贝。在一段时间内,人们认为要达到香农极限即使可能也是非常困难的。

但是柳暗花明,九十年代初期人们走出了另一条路。回到香农定理的证明,那里的“码字”就是“典型序列”。而如果我们随机产生序列的话,只要足够长,绝大多数结果都是典型序列。所以随机产生的码字就是好码字。问题是,这样没有结构的码没有好的解码方法。所以长的随机码是不现实的。但是人们发现了具有一定结构的码也可以具有这样随机的特性。而它们的结构可以帮助解码。首先发现的是turbo码。它也叫乘积码。编码方法是把两个短码(分组码或卷积码),一个编码后把次序按一定规律打乱,再编一次码。这样,最后的码长是两个短码长度的乘积。解码时,也是对于两个短码分别解,但采用迭代的办法。第一次解码,只是得到一个“可能”的结果。把这个结果及其相关的概率再输入解码器一遍,就得到一个更加“可靠”一些的结果。如此反复,就能提高解码增益。从理论上讲这种方法不一定是最优的,但实际上最后性能非常接近香农极限。Turbo码也是有结构的,但这个结构不是为了增加码字间的最小距离,而是为了给解码提供方便。在Turbo码的码字中,可能有距离很近(也就是很容易出错)的码字。但这些码字只占总体的很小一部分,所以总的来说误码率还是很低。而在分组码,卷积码中,不同码字出错的几率是差不多的。可见,Turbo码的思路与以前的编码技术有很大区别,可以说是一场革命。在此启发下,又有人重新发现了另一种随机码——低密度奇偶校验码(LDPC)也有类似的特征。LDPC码也可以用迭代方法解码,性能也接近香农极限。LDPC码早在1960就被提出了,但后来几十年间这个技术慢慢被人遗忘了。直到1990年代中叶,人们用图论重新诠释LDPC码,找到了系统的设计方法和有效的解码技术,才使得LDPC重振雄风。

随机码的发明使得编码增益大大提高,基本达到了香农极限。到2000年代,这些码已经被现代通信系统采纳了。当然,它们的实现还是比较复杂,所以常常是作为可选功能。

从香农的信息论提出后的半个多世纪,人们为了实现香农预言的传送速度极限作出了巨大的努力,发展了很多精致有效的数学工具,也进行了很多大海捞针式的搜寻。随着香农极限的基本达到,编码的研究是否到了终点呢?当然,性能和复杂性的权衡总是有工作要做的,特别是在硬件性能突飞猛进的今天。另外,除了香农所研究的基本信道外,还有许多更加复杂有趣的信道。特别是无线通信的发展,产生了多天线通信,协同通信等新技术,给信道容量和实现信道容量提出了很多新课题。这些方面我们以后会继续介绍。

【参考文献】
[1]D. J. Costello and D. Forney, “Channel Coding: The Road to Channel Capacity”, Proceedings of the IEEE, vol. 95, No. 6, June 2007 p. 1150

只有一条评论