打字猴:1.700497342e+09
1700497342
1700497343
1700497344
1700497345
1700497346 算法之美:指导工作与生活的算法 [:1700494207]
1700497347 算法之美:指导工作与生活的算法 结语 计算善意
1700497348
1700497349 梅里尔·弗勒德
1700497350
1700497351 我坚信人类最重要的事情是社会性格,而我们现在所要求的具有智力功能的机器,将给人类带来时间和动力学习如何更好地生活在一起。
1700497352
1700497353 任何受制于空间和时间限制的动态系统都是与一组基础的、不可避免的核心问题相背离的。这些问题本质上是计算性的,这使计算机不仅成为我们的工具,也成为我们的伙伴。其中我们可以得出三个简单的智慧道理。
1700497354
1700497355 首先,在某些案例中,计算机科学家和数学家已经确定了很好的算法方法,这些算法可以简单地转移到人类问题上。37%的规则,是最近最少使用算法处理满溢缓存的标准,以及作为探索指南的置信上限都是这方面的例子。
1700497356
1700497357 其次,即使你没有得到你想要的结果,但知道你正在使用最优算也是一种解脱。37%规则在63%的可能里会失败。用最近最少使用算法的标准来维护你的缓存并不保证你总能找到你想要的东西。事实上,也不会有特别的洞察力。用置信上限的方法来探索或利用权衡并不意味着你不会遗憾后悔,只是那些遗憾会随着你的生活慢慢积累起来。即使是最好的策略有时也会产生不好的结果,这就是计算机科学家要小心区分“过程”和“结果”的原因。“如果你遵循了最好的流程,那么你就已经尽了最大的努力,如果结果不顺心,你也不应该责备自己。”
1700497358
1700497359 结果会成为头条新闻(的确,是它们使我们生活的世界变成现在的样子),所以我们容易对结果念念不忘。但是过程是我们所能控制的。正如伯特兰·罗素所言:“看来我们必须考虑到客观公正的概率。”客观正确的行为可能是最幸运的。我将把这定义为最明智的行为。“我们可以希望变得幸运,但我们应该努力做到明智。”我们将其称之为计算克制。
1700497360
1700497361 最后,我们可以在容许和不容许直接解决方案的问题之间划出一条清晰的界限。如果你被困在一个棘手的问题中,请记住,运用启发法、近似值和随机的策略可以帮助你找到可行的解决方案。在我们对计算机科学家的采访中,曾反复出现的一个主题是:有时“足够好”真的已经足够好了。更重要的是,意识到复杂性可以帮助我们选择问题:如果我们能够控制我们面对的情况,我们应该选择那些可以处理的问题。
1700497362
1700497363 但我们选择的不只是我们给自己安排的问题。我们也会选择我们给彼此安排的问题,无论是我们设计城市的方式还是我们问问题的方式。这就创造了横跨计算机科学和伦理学的惊人桥梁——以我们称之为计算性善意原则的形式。
1700497364
1700497365 ※—※—※
1700497366
1700497367 在给本书安排采访时,我们中的两个人观察了一个悖论。平均而言,我们的面试者更有可能前来的预约时间是,比如“太平洋标准时间下周二下午1~2点”,而不是“在这一周任何方便的时间”。一开始,这似乎是荒谬的,就像那个著名的研究,平均而言,人们会捐更多的钱来拯救一只企鹅的生命,而不是8000只企鹅,或者人们报告称,更担心死于恐怖主义行为,而不是其他原因(也包括恐怖主义)。在采访问题中,人们似乎更喜欢受到约束的问题,即使这些约束要求严格,而不是完全开放的。对于他们来说,适应我们的偏好和约束似乎比根据他们自己的方式来计算出更好的选择要困难得多。计算机科学家们会在这里点头,并指出“验证”和“搜索”之间的复杂性差距,这就像你能听出一首听过的好歌曲和在现场写一首好歌曲之间的差距一样大。
1700497368
1700497369 尽管听起来很奇怪,但计算机科学隐含的原理之一便是,计算并不是好事:任何一种好的算法的指令都是把思考的劳动最小化。当我们与他人互动时,我们会向他们展示计算问题(不只是明确的要求和需求,而是隐含的挑战),例如在解释我们的意图、我们的信念和我们的喜好时。因此,对这些问题的计算性理解可以揭示人类相互作用的本质。我们可以通过构造问题来对其他人进行“计算性善意”,从而使深层的计算问题更容易。这很重要,因为许多问题,尤其是社会问题,就像我们所看到的那样,本质上是难以解决的。
1700497370
1700497371 考虑一下这个极为常见的情景。一群朋友站在一起,想决定要去哪里吃晚饭。他们每个人都有一些明显的偏好,尽管可能是弱的。但他们中没有人愿意明确表达这些偏好,因此他们用猜测和半暗示的方法来礼貌地应对社会危险源。
1700497372
1700497373 他们很可能会达成一项令所有人满意的决议,但是这个过程很容易出错。例如,大学毕业后的夏天,布莱恩和两个朋友去西班牙旅行。他们在飞行途中商定了旅行路线,有一点很清楚,他们没有时间去看之前研究和计划过的斗牛表演。三个人都试图安慰另外两人,就在这时,他们突然发现,事实上他们中没有一个人想要看斗牛。每一个人都只是在游戏中采用了他们所认为的其他人的热情程度,从而产生了其他人积极采取的热情程度。
1700497374
1700497375 同样,看似无害的语言比如“哦,我无所谓”或者“你今晚想做什么”实则含有黑暗的计算弱点,你应该三思。它表面上是善意的,却有两件令人震惊的事情。首先,它传递了认知责任:“这里有个问题,你要处理它。”其次,不要说出你的喜好,它会邀请其他人来模拟或想象它们。正如我们所看到的,对他人头脑的模拟是思维(或机器)所能面对的最大的计算挑战之一。
1700497376
1700497377 在这种情况下,计算善意和传统礼仪有分歧。礼貌地克制你的喜好会将推测性计算问题推给组内的其他人来解决。相反,礼貌地表达你的喜好(“我个人倾向于x。你认为是什么?”)有助于承担将团队带到问题解决办法上的认知负荷。
1700497378
1700497379 或者,你可以试着将你给别人选择的数量减少,而不是最大化,比如说,提供2~3家餐馆的选择,而不是10家。如果团队中的每个人都消除了他们最不喜欢的选项,那就会使任务变得更容易。如果你邀请某人出去吃午饭或安排会议,提出一个或两个他们可以接受或拒绝的具体建议,这会是一个好的起点。
1700497380
1700497381 这些行为都不一定是“有礼貌”的,但它们都能明显地降低交互作用的计算成本。
1700497382
1700497383 ※—※—※
1700497384
1700497385 计算善意不仅是行为的原则,它也是一个设计原则。2003年,滑铁卢大学的计算机科学家杰弗里·夏利特研究了一个问题:如果在美国投入流通,多大的硬币面额能最大限度地减少硬币流通所需要的硬币数量。令人高兴的是,答案竟然是18分的面额,但夏利特在某种程度上没有通过计算性的考虑来制定政策建议。
1700497386
1700497387 目前,想要进行变化是非常简单的:对于任何给定的数量,只要尽可能多地使用25美分的硬币,然后尽可能多地使用10美分的硬币,以此类推,面额不断下降。例如,54美分是2个25美分,加4个1美分。有了18美分,这个简单的算法就不再是最佳的了:54美分最好是由3个18美分组成(没有25美分的硬币)。事实上,夏利特观察到,笨拙的面额会把改变的过程变成某种“至少和……旅行推销员问题同样困难的东西”。这个问题跟收银员关系密切。夏利特发现,如果将计算的易用性考虑在内,那么美国货币最好的供应量是只使用2美分或3美分的硬币。这不像18美分硬币这一结果那样令人兴奋,但长期看来几乎一样好,而且在计算上更具有善意。
1700497388
1700497389 更深层次的一点是,设计上的微妙变化可以从根本上改变对人类用户造成的认知问题。例如,建筑师和城市规划者对他们如何构建我们的环境有一些选择,这意味着他们可以选择如何构建我们必须解决的计算问题。
1700497390
1700497391 下面来考虑一个大型停车场,里面有各种不同的车道,这种车道经常出现在体育场馆和购物中心。你可以在一个车道上开车,看一个地点,然后决定让它去(希望是)前方一个更好的地方,但是,你没能找到这样的好运气,到达目的地之后沿着隔壁车道继续走。在开了一段路之后,你必须决定另一个停车位是否足够好,或者你将在第三条车道上搜索很远。
[ 上一页 ]  [ :1.700497342e+09 ]  [ 下一页 ]