1700494243
我们知道这个答案,是因为找房子问题属于数学上被称作“最优停止”(optimal stopping)的一类问题。37%法则明确了解决这些问题的一系列简单步骤(计算机科学称之为“算法”)。事实证明,找房子仅仅是最优停止问题在日常生活中的表现形式之一。在面临一连串选择时如何做出决定的难题,经常会改头换面,以不同的形式出现在我们的生活当中。在驶入停车位之前,需要绕整个停车场多少圈?在商业风险中何时套现脱身?在买房子或者停车时,何时是结束观望、做出决定的最佳时机?
1700494244
1700494245
在约会这个更加令人头疼的问题上,人们也经常要面对这样的难题。最优停止理论是一夫一妻婚姻制度催生的科学。
1700494246
1700494247
每天,人们都要面临最优停止问题的困扰(当然,诗人更愿意追逐的话题肯定是求婚带来的烦恼,而不是停车时的两难境地),有时甚至会因此而痛苦不堪。不过,我们大可不必如此,因为这类问题至少可以通过数学方法来解决。借助并不繁复的算法,我们不仅可以解决找房子的问题,生活中遭遇的所有最优停止问题都可以被妥善处理。
1700494248
1700494249
从本质上讲,我们身边经常出现因为租房子、停车、求婚而感到苦恼的人,这些人其实就是在自寻烦恼。他们需要的不是治疗师,而是一种算法。治疗师告诉他们要在冲动与多虑之间找到一个正确的、舒服的平衡点。
1700494250
1700494251
算法告诉他们这个平衡点就是37%。
1700494252
1700494253
※—※—※
1700494254
1700494255
由于我们生活在有限的时间和空间之中,因此所有人都会面临一系列特定的问题,诸如在一天或者十年里,哪些事必须做,哪些事应当放手?如何在尝试新的体验与从事自己喜爱的活动中取得平衡,才能生活得惬意自在、心满意足?
1700494256
1700494257
这些问题看起来似乎都是人类特有的,其实不然。半个多世纪以来,计算机科学家苦苦思考的问题(有很多已经得到妥善解决)与这些日常难题在本质上并无区别。例如,处理器在执行用户请求时应该如何分配自己的“注意力”,才能降低费用、节省时间?在什么情况下应该在不同任务之间来回切换?刚开始应该接受多少任务量?如何利用有限的存储资源取得最佳效果?应该收集更多数据,还是根据已收集的数据采取行动?对人类而言,如何把握今天可能不是一件易事,但是我们身边的计算机可以轻轻松松地把握每一毫秒。显然,计算机有很多值得我们借鉴的地方。
1700494258
1700494259
将算法与人类生活相提并论似乎是一件很奇怪的事。在很多人看来,“算法”这个词意味着神秘莫测的谋划与操作,与大数据、大政府、大企业有密切的联系,正在逐渐变成现代社会基础架构中一个越来越重要的部分。其实,算法指的就是解决问题的一系列步骤,其含义远不限于计算机,存在的历史也远远长于计算机。在计算机开始使用算法之前,人类早就将算法应用到生活当中了。
1700494260
1700494261
“算法”(algorithm)一词得名于波斯数学家花拉子密。公元9世纪,这位数学家写过一本书,讨论用纸笔解决数学问题的技巧。[书名为“al-Jabr wa’l-Muqabala”,其中的“al-jabr”就是后来“algebra”(代数)这个词的前身。]不过,最早的数学算法早于花拉子密。在巴格达附近出土的4000年前的苏美尔人泥板文献上,就刻有一幅长除法示意图。
1700494262
1700494263
但是,算法不仅限于数学。在按照食谱介绍烤面包时,食谱上的所有步骤就是一个算法。按照图样编织毛衣时,这份图样就是一个算法。使用鹿角的末端连续精确地敲打,使石器形成锋利的刃的过程(这是制作精密石器的一个关键步骤),也遵循着一个算法。从石器时代开始,算法就已经是人类生活的一部分了。
1700494264
1700494265
※—※—※
1700494266
1700494267
本书将探讨人类事务算法设计这个概念,以帮助人们更好地处理日常生活中遇到的难题。将计算机科学的研究方法应用于日常生活,可以在多个层面上产生深远的影响。首先,它可以提供切实有效的建议,帮助我们解决具体问题。例如,最优停止理论可以告诉我们何时应该小心观察,何时应该果断行动;探索-利用平衡理论教会我们如何在尝试新事物与因循守旧之间找到平衡点;排序理论可以帮我们判断出是否需要以及如何整理办公室;缓存理论可以帮助我们合理地填充橱柜;日程安排理论则可以提供合理安排时间的高招。
1700494268
1700494269
其次,计算机科学还为我们理解这些领域的深层次运行规则提供了一套语汇。卡尔·萨根指出:“与其说科学是大量知识的汇总,不如说它是一种思考方式。”即使生活中的某些情况非常复杂,我们无法进行严格的数值分析,找不到任何现成的答案,我们也可以考虑这些问题的简单化表现形式,从而得出某些直觉和概念,帮助我们理解其中的关键环节并取得进展。
1700494270
1700494271
从更广泛的意义上看,借助计算机科学,我们可以了解人类思想的本质和理性的意义,学会回答如何度过一生这个最古老的问题。把认知视为一种解决周围环境所造成的问题(从本质上看,都是一些计算问题)的手段,并认真地加以研究,就有可能彻底改变我们对人类理性的理解。
1700494272
1700494273
认为研究计算机内部运行机制能够帮助我们学会思考与决策、判断某个事物是否可信、选择行为方式的观点,在很多人看来,不仅把问题过于简单化了,而且具有误导性。即使计算机科学告诉我们应该如何思考、应该采取哪些行动,我们愿意接受吗?读一读讲人工智能和机器人的科幻小说就会发现,那样的生活似乎都不是我们所向往的。
1700494274
1700494275
之所以如此,部分原因是我们把计算机看成了机械呆板的确定性系统——这些机器借助严谨的演绎逻辑,通过穷举所有可选方案,无论花费多少时间、问题难度如何,它都可以给出完全正确的答案。事实上,在阿兰·图灵当时的想象中,计算机就应该是这样。这位第一个设想出计算机的人通过类比的方式给出了计算的定义,而类比的原型就是认真钻研的人类数学家——他们通过长长的计算步骤,最终得出绝对正确的答案。
1700494276
1700494277
因此,当人们发现现代计算机处理难题的方式与他们对计算机的认识并不一致的时候,他们也许会大吃一惊。当然,简单的算术对现代计算机而言没有任何难度。目前,计算机科学面临的最难解决的问题其实是人机对话、修复破损文件、下围棋取胜,这些问题都具有规则不明确、所需信息不全,或者需要考虑无数种可能性才可以找出正确答案的特点。研究人员已经开发出各种算法,使计算机在解决难度极大的问题时不需要完全依赖穷举计算。要解决这些来自现实世界的任务,就必须正确处理好可能性问题,利用粗略估算,在时间与精确度之间做出某种妥协。
1700494278
1700494279
随着计算机处理现实任务的能力不断增强,计算机算法不仅对于人类自己的生活具有借鉴意义,同时还为人们理解人类认知提供了一个更好的比较标准。在过去的一二十年里,行为经济学对人类进行了非常具体的研究,结果发现,人类是不理性的,很容易犯错误,而问题的源头在很大程度上就是大脑这个古怪而独特的硬件。这种自我贬低的认识越来越普遍,却无法解释某些令人困惑的问题。例如,在完成包括想象、语言、因果推理在内的大量认知任务时,4岁儿童的能力仍然超过成本高昂的超级计算机,这到底是什么原因?
1700494280
1700494281
从计算机科学为日常问题提供的解决方案可以看出,人类思维具有另外一种特点——人生充满了难以解决的问题。人经常犯错误,虽然这可以说明人类大脑容易出错,但是也表明这些问题具有难以解决的本质特点。通过算法来思考我们周围的世界,了解我们所面临问题的基本结构以及计算机给出的解决方案的特性,可以帮助我们真实地了解我们自己,更好地理解我们所犯的那些错误。
1700494282
1700494283
事实上,人类需要不断面对计算机科学所研究的一些高难度问题,在不确定性及时间有限、信息不全、情况瞬息万变等不利因素的干扰下做出决定。针对一些问题,即使最前沿的计算机科学也没能开发出永远不会犯错误的有效算法,有的情形似乎是任何算法都无法解决的。
1700494284
1700494285
不过,尽管有的现实问题异常复杂,人们还没有开发出完善的算法,但是一代代计算机科学家一直在与这些难题斗争,并且在这个过程中得出了深刻而独到的见解。这些来之不易的真知灼见与我们对理性的直觉认识并不一致,与数学家对周围世界的精确描述也迥然不同——数学家一心想要把这个世界变成整齐划一的线条。计算机科学告诉我们:不要总是考虑所有的可选方案;不必每次都追求最佳结果;偶尔犯点儿错误;放下包袱,轻装前进;有的事情可以暂时放一放;相信自己的本能,不要过多思考;放松自己;采用抛硬币的方式;要体谅,但是不能忘记;忠于自我。
1700494286
1700494287
用计算机科学的智慧指引自己的人生之路,这似乎是一条不错的建议。毕竟,与大多数建议不同的是,这条建议有据可依。
1700494288
1700494289
※—※—※
1700494290
1700494291
当初,算法设计在各学科的夹缝中找到了立足之地,它是数学与工程技术糅合而成的怪异混合体。现在,为人类设计算法的工作也面临相同的境遇——找不到一个现成的归属学科。今天的算法设计不仅需要借助计算机科学、数学和工程技术,还需要得到统计学、运筹学等相关领域的帮助。此外,我们不仅需要考虑计算机算法设计与人类思维活动之间的关系,还需要认真研究认知学、心理学、经济学等学科。
1700494292
[
上一页 ]
[ :1.700494243e+09 ]
[
下一页 ]