九味书屋 > 文学经管电子书 > 阿基米德的报复 >

第18部分

阿基米德的报复-第18部分

小说: 阿基米德的报复 字数: 每页4000字

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!



恿鞑砜谥胁康囊豢橄脸ぢ降亍3鞘械�4个区域由7座桥梁的网络连接起来。

    据说,伊曼纽尔。坎特习惯于环绕城市进行长路程的保健散步运动,而且居民们也都想知道,是否可能有一条进行散步的来回路线,可以穿过所有7座桥梁,而每座桥梁只能穿过一次。由于桥梁的数目很小,这个问题可以用列举所有可能路线的方法(否定的方法)去求解,也就是说采用类似于旅行推销员这个小问题的、没有预见性的穷举法。

    这个问题由多产数学家欧拉去解,欧拉是一位有13个孩子的父亲,同时还著有80本书的数学研究成果。传说,许多研究报告都是在第一次与第二次叫他去吃饭之间的30分钟时间内写出来的,他预见性地证明这种路程问题无解。数学的灵魂大力提倡分析最普通的例子。因此,欧拉不仅想为柯尼斯堡的居民,也想为各地喜欢桥梁散步的人们解决问题,他试图解答一个普遍性的问题:“有若干河流及其分支穿过某一地区,并在其上架设任意数量的桥梁,已知河流与桥梁的布局,求是否有可能在每座桥梁只穿过一次的情况下,穿过所有的桥梁。”如果你把陆地区域看成城市,把桥梁看成公路,那么你就可以认为,这个一般性问题与公路检查员所面临的问题相同。

    为了解柯尼斯堡桥梁问题,欧拉用几何线表示每座桥梁,用几何点表示每块陆地。

    在这幅图中,欧拉已把问题简化成基本线条,去掉了所有无关紧要的内容。比方说,线与点的表示无法区别桥梁是宽还是窄,是特定的桥梁还是连接同一陆地区域的其他桥梁,是大块陆地还是小块陆地,乃至是岛屿还是河岸等。这些区别也许在其他方面非常重要,但与穷举的非重复性散步方法无关。这是一种漂亮的数学表示法:它仅需要在手边保留那些有关的情况,从而使数学家免受枝节问题的干扰,更能集中注意力于问题本身。

    欧拉已能证明,只有当点(陆地区域)为0或2,形成的线(桥梁)为奇数时,才可以进行穿过所有桥梁的非重复散步。你只要稍加思考就可支持这一结论。如果你穿过一座桥梁到另一处陆地去,必须还有一座桥梁让你离去,否则你将被困在那里。大片陆地需带有偶数桥梁才能确保那里有一条进去的路,另有一条离去的路。要是大片陆地只带有奇数的桥梁,那只有在旅程的终点(在那里你不需要一座桥梁离去)和旅程的起点(在那里你不需要一座桥梁进去)才有可能进行非重复的旅行。由于只有一个起点和一个终点,因此只有两处陆地才能有奇数的桥梁。在柯尼斯堡,4处陆地区域的每一处都连接了奇数的桥梁,即使没有比较严格的来回旅程条件,那么完全的非重复散步显然是不可能的。

    欧拉关于任意数桥梁与任意数陆地区域的结论要比归纳成普通的常识重要得多,认识到这一点很重要。我们的推论只是简要地说明,如果欧拉所断定的条件不能够满足,则非重复的旅行将是不可能的。欧拉的结论是很强有力的,直观上却不是很明显的:他证明了,如果这一简单条件得到满足,也就是说,当陆地区域数为0或2,而且连接它们的桥梁数为奇数时,非重复的行程总是可能的。

    要把欧拉的分析应用于一般情况,需要数出每处陆地区域的桥梁数。由于每座桥梁都要连接两处陆地区域,因此桥梁要两倍计数。如果桥梁数为n,那么欧拉的分析需要2n个步骤。桥梁的计数可以作为一种算法列出公式,而且它将成为一种非常有效的算法,因为虽然问题变得越来越复杂,演算所花费的时间却仅多了一倍。而从另一方面看,所有可能旅程的穷举搜索法则将成指数地迅速增长为2n。在旅行推销员问题中,对效率很低的穷举搜索法仍无简捷的方法。比方说,你仍不能计数出连接于每条公路的城市数,并根据这些数是奇数还是偶数来做出某种结论,或者就此而言,也不能根据这些数的其他性质得出结论。而且,这还不仅是我们不知道寻求那些性质的问题。还有可能是这些性质本来就不存在。这正是综合性理论学家都在努力证明的问题。

    旅行推销员问题不仅仅是惟一的计算问题,许多数学家都不理解其快速算法。还有一整套叫做NP…完全的问题,对于这类问题,人们仅知道其计算所需时间以指数方式激增。①在NP…完全的问题中,另有一个众所周知的例子称为人群问题:已知有一大群人,比方说,共100人,他们之间是否有许多人,比方说,有50个人,全都彼此认识吗?

    “你可以解这种问题,”美国麻省理工学院综合性理论学家迈克尔。赛普泽说道,“先投出   100个点,每点表示一个人,然后在相应的彼此认识的两人的点之间划一直线。”于是你将希望这组的50个点全都有连线。赛普泽接着又说:“看起来它很像一个有关计算机方面的重大问题,然而它不是。我们知道,如何去解这种问题,仅有的一种方法实质上是查看50人小组的所有连线,它们的数量非常多,就像10的29次方。要解出这个问题,即使应用快速的计算机,也要好几百年。”

    旅行推销员的问题、人群问题、以及所有其他NP…完全的问题,都有难以理解的共同特点:如果有人声称,他对于这类问题中的任何一个特殊事例已经有了解法,那么要检验这个解法则是很容易的事。对于旅行推销员问题,只要检查所提出的旅程,并查明是否包括了每个城市一次。对于人群的问题,则要双向检查已被辨认全都互相认识而成群体的50个人。美国伯克利市加利福尼亚大学计算机科学教授理查德。卡普把  NP…完全的问题比作拼图玩具:“它们可能难于组合,但是当有人向你展示一幅完全的拼图时,你就能一下子知道问题已有正确解。”

    NP…完全的问题还有一个醒目的特点,如果这类问题中的任何一个问题能够用快速算法求解,那么其他问题也都能用此法解出。而且,对于某类NP…完全问题采用快速算法毫不费力,而且稍加改进,就可用于解任何其他NP…完全问题。例如,如果人们发现了一种用于解旅行推销员问题的快速算法,那么数学家们就会自如地运用快速方法去解人群问题和所有其他的NP…完全问题。因此,旅行推销员问题是否有快速解法与NP…完全问题是否真的像看上去那样难这一较大问题有关。

    美国电话电报公司的戴维。约翰逊说道:“我认为,现在每位数学家实际上都认为NP…完全问题有内在的困难。”约翰逊是这一领域的权威人士,著有《计算机和难处理性:NP…完全理论指南》一书。他还说:“真正的问题是证明它。”

    这种论点动摇了一些数学家的想法,他们认为他们也许能够证明旅行推销员问题及同类的其他问题都不会有快速解法——从来就没有过——即使未来让爱因斯坦一类大师来绞脑汁也不会有。他们怎么会提出要证明这样的问题?

    目前的工作都集中在逻辑门上,它已被认为是计算机硬件中最基本的单元。在电子计算机内,逻辑门是一种组件,由任意数目的输入引线与一根输出引线组成。逻辑门也是一种二进制器件:每根引线中的信号都被认为或是1、或是0。(在电子学术语中,高电平对应于1,低电平对应于0。)

    每一个逻辑门都能完成3种基本运算中的1种:“非”、“与”或“或”。这3种运算的名称都是根据布尔代数中已经使用的词“非”、“与”和“或”而得来的。布尔代数是19世纪40年代由乔治。布尔研究出来的一种开拓性的形式逻辑体系。布尔是一个贫穷补鞋匠的儿子,他自学数学,研究出符号逻辑体系,其中1表示真的,0表示假的。尽管布尔的研究工作使他获得了爱尔兰科克大学的数学教授职位,但直到100多年后第一部电子计算机问世之后,他的逻辑体系才得到数学界的完全赏识。

    在形式逻辑中(和日常的英语中),词“非”加在前面可把真语句变成假语句,而且反过来也一样。把它换成布尔代数的术语,则是“非”可把1转换为0,0转换为1。因此,“非”逻辑门有一根输入引线,并把输入信号转变为其相反信号,即如果输入是1,则输为0,而如果输入为0,则输出就为1。当然,词“与”用于连接单个语句成为复合语句,即如果每个组元都是真的,那么复合组元也是真的。现举一简单例子,“朱尔斯吃豆腐与吉姆吃多夫条形面包”,只有当朱尔斯和吉姆两个人都在吃上述的食物时,它才是一个真实语句。由于同样的理由,“与”门可接受两个或多个信号输入,如果所有的输入都是1时,那么输出也是1,否则,则输出为0。词“或”也是用于连接语句成为复合语句,但只要一个或几个组元都是真的,则其复合组元也是真的。如果朱尔斯或者吉姆(或者他们两人)在吃他们各自的食物,那么“朱尔斯吃豆腐或吉姆吃多夫条形面包”才是真语句。同样地,“或”门可以接受两个或几个信号输入,但只要至少输入之一是1时,则其输出也是1。布尔代数的绝妙之处在于,1和0不仅表示真的和假的,而且还可以表示任何两种不同的状态。例如在旅行推销员问题中,0和1可以表示城市之间的相应关系:如果两个城市由一条公路连接,则以1表示,如果它们没有公路连接,则以0表示。在人群的问题中,1可以表示两个人成为朋友的状态(或者在该问题的图解表示法中,表示由一条线连接的两点),0表示他们不是朋友的状态(表示没有线连接的两点)。

    在计算机中,任何数目的“与”门、“或”门和“非”门都可以连接在一起,形成一种电路。例如下图示出4个“与”门和1个“或”门组成的一种小型电路,它可以用来求解人群问题的普通实例:在4个人的一组中,有3个人是朋友吗?

    然而,随着人群问题的人数增加,用于已知解法的电路大小(也是逻辑门的数目)将按指数方式激增。如果数学家们能够证明,对于任何可能已知或未知解法,电路必按指数方式增大,那么他们就能证明人群问题没有快速算法。

    数学家们还不知道如何开始这样的证明,已经转而考虑另一特殊的问题,这就是通常都有快速算法的奇偶函数,而且他们还试图以某些基本方式来限制电路,使得快速算法不再产生作用。(奇偶函数可在一串的0与1中确定是否产生偶数或奇数。)这种方法看来也许有些怪,其实它并不怪。数学家们对于如何证明电路必须是大型的了解甚少,因此为此目的而做的任何证明,甚至是某种人为的情况,也都将会有所进展,而且可以提供证明真正论点所需的数学工具。赛普泽说道:“这是数学中的普通方法。如果问题很大,可试图把它限制到某些范围,并求解其中一部分,希望这种分部解法使人们对原来的问题会有更深的了解。”

    在这一领域内,早期的工作限制了电路的研究工作的深度,这里的深度是指逻辑门的层次数目。1981年取得了第一批成果,当时美国卡内基…梅隆大学的赛普泽及其两位同事证明了,如果他们限制用于奇偶函数的电路深度,那么电路宽度的扩展快于任何多项式。198

返回目录 上一页 下一页 回到顶部 赞(0) 踩(0)

你可能喜欢的