庫存狀況
「香港二樓書店」讓您 愛上二樓●愛上書
我的購物車 加入會員 會員中心 常見問題 首頁
「香港二樓書店」邁向第一華人書店
登入 客戶評價 whatsapp 常見問題 加入會員 會員專區 現貨書籍 現貨書籍 購物流程 運費計算 我的購物車 聯絡我們 返回首頁
香港二樓書店 > 今日好書推介
二樓書籍分類
 
決斷的演算:預測、分析與好決定的11堂邏輯課(熱銷經典版)

決斷的演算:預測、分析與好決定的11堂邏輯課(熱銷經典版)

沒有庫存
訂購需時10-14天
9786267771211
布萊恩•克里斯汀,湯姆•葛瑞菲斯
甘錫安
行路
2025年9月03日
197.00  元
HK$ 167.45  






ISBN:9786267771211
  • 叢書系列:FOCUS
  • 規格:平裝 / 384頁 / 17 x 22.5 x 2.5 cm / 普通級 / 單色印刷 / 初版
  • 出版地:台灣
    FOCUS


  • 商業理財 > 職場工作術 > 思考邏輯/決斷/創意











    遠比賽局理論更強大、更全面的分析與決策思維!

    甫一上市,便直取亞馬遜書店「電腦科學類」暢銷榜Top 1

    強勢擠下《快思慢想》,榮登「認知科學類」暢銷榜Top 1

    出版十餘年,取得六千多則評價、平均「四星半」高分,

    長踞亞馬遜「商務決策與問題解決類」暢銷榜Top 50!

    「第一屆台灣人工智慧年會」暨「第四屆台灣資料科學年會」紀念贈書

    《麻省理工學院技術評論》年度最佳書籍�亞馬遜書店年度最佳科學書籍

    **********



      為什麼電腦科學家說,賽局理論「奈許均衡」的地位言過其實,

      榮膺諾貝爾經濟學獎的「現代投資組合理論」也不是好主意?

      這本書訪問近五十年來最知名演算法的設計者,顛覆你對於「合理」的看法!



      說到演算法,你想到的是政府和大企業如何利用數學模型算計你?

      其實,演算法的本質是「解決問題的一連串步驟」,它長期為各領域帶來洞見與重大變革,還能幫助個人跳脫盲點與錯誤直覺。



      說到電腦,你認為它冰冷且毫無彈性,思考方式跟人腦南轅北轍?

      事實上,我們面臨的許多挑戰,源頭跟電腦科學家的困擾一樣,因此電腦解決問題的方式,能在極大程度上與人們的作法融合。



      本書訪問近五十年來最知名演算法的設計者,了解他們如何教電腦發揮最大效用,自己又從中學得什麼生活智慧,書中各章以日常問題開場,釐清它們的演算結構後,探討研究者找出什麼解決方案,以及這些方法對學術、產業及個人生活帶來什麼幫助,像是:



      ?證明「所有雙人賽局至少有一個均衡狀態」的奈許均衡,讓約翰.奈許拿下了諾貝爾經濟學獎,但它的地位可能言過其實。為什麼?(賽局理論)



      ?自動駕駛汽車能改善交通阻塞,打造交通天堂?你可能要失望了。現在自私駕駛人各行其是的情形其實已接近最佳狀態。(賽局理論,自主行為代價)



      ?棉花糖實驗證明了意志力對日後的成就有深遠影響?事情沒這麼簡單。抵擋得住誘惑的關鍵可能是「期望」……(貝氏法則)



      ?以現代投資組合理論榮獲諾貝爾經濟學獎的馬可維茲,居然把自己的退休金平均投資在債券和股票上!這未免太不聰明了?未必。(過度擬合)



      ?2010年5月6日,美國股市發生閃電崩盤,短短幾分鐘內有幾家公司股價飆漲、另幾家則直線崩跌,這是怎麼回事?(賽局理論,資訊瀑布)



      ?你打算在十八歲到四十歲期間覓得人生伴侶,那麼幾歲時選定的對象可能最好?(最佳停止點,37%法則)



      ?紙本資料用完隨手往旁邊疊,既沒條理又沒效率?不,根據演算法原理,這是目前已知最精良、效率最佳的資料結構。(快取)



      ?什麼情況下,隨便挑一封電子郵件回覆,會好過先回覆最重要的郵件?(排程,往復移動)



      ?為什麼玩吃角子老虎時,贏錢繼續玩同一台是好策略,但是輸錢就換一台則太過輕率?(開發與善用)



      電腦科學還能協助我們清楚劃分哪些問題有明確解答、哪些則無,藉以選擇自己要面對什麼,以及要讓其他人面對什麼,從而增進雙方互動的效率。(更詳盡的內容介紹可參閱目錄引文)



    推薦人士與各界好評



      洪士灝�台灣大學資訊工程系教授  

      賴以威�數感實驗室共同創辦人

      林錦宏�高醫大心理系助理教授  

      鄭國威�泛科知識公司知識長

      黃貞祥�清華大學生命科學系助理教授 

      雷浩斯�專職投資人及投資講師?

      (「得到」說書App萬維鋼老師書評介紹《指導生活的算法》 )



      ?我一直期待有書能把運算模型和人類心理學結合起來,這本書遠超乎我的期望,寫得精彩極了,而且淺顯易懂,讓所有讀者都能輕鬆理解掌控世界運作的電腦科學,更重要的是,了解電腦科學對我們的生活有何影響。——《大腦解密手冊》作者伊葛門



      ?非常出色。除了行文中解釋的電腦科學對於個人和管理都很實用,本書也是演算法和電腦科學以及作者所稱的「運算的斯多葛派」和「運算的善意」這種哲學論述的極佳入門書。——科技網站Boing Boing創辦人柯利•多克托羅:



      ?精彩有趣而且提供許多實用建議,告訴我們如何更有效率地運用時間、空間和心力,寫得趣味橫生。——《為什麼我們這樣生活,那樣工作》作者查爾斯•杜希格



      ?深入淺出又有趣,讓人讀得欲罷不能。我們都聽說過演算法威力強大,但《決斷的演算》深入淺出地解說它們的運作方式,以及我們可以如何運用它們,在日常生活中做出更好的決定。——《搖籃裡的科學家》作者之一艾莉森•戈普尼克



      ?年度必讀大腦類書籍。這是一本以學術研究為基礎,又可應用在實際生活上的好書。作者探討的演算法在生活上的實用程度,超乎我的預期,值得好好研讀。——《富比世》雜誌



      ?我超迷這本書!年輕學生學數學時常說:「數學有什麼用?實際生活上又用不到!」這本書就是最好的答案。書中的概念,無論是37%法則的相對單純性或賽局理論中讓人費解的機率,都相當實用,而且寫得十分有趣,大推!——《大眾科學》雜誌英國版



      ?眾多讀者好評:醍醐灌頂!我學的是經濟,讀了這本書之後超想去讀個電腦科學學位。可以的話,我想給這本書十顆星。�好驚人的書,它改變我對許多真實日常問題的看法。�了不起的書。不論是一般人或高科技迷都會讀得津津有味。�很有意思。讀完這本書過了幾個月,我還不時想到它,它提供了很棒的觀點看待世界。�有趣極了,我已經借給好幾個同事讀。�超讚。我重讀這本書好幾次,裡頭有很多很棒的資訊!�真是過癮!



      ?眾多讀者好評:醍醐灌頂!我學的是經濟,讀了這本書之後超想去讀個電腦科學學位。可以的話,我想給這本書十顆星。�好驚人的書,它改變我對許多真實日常問題的看法。�了不起的書。不論是一般人或高科技迷都會讀得津津有味。�很有意思。讀完這本書過了幾個月,我還不時想到它,它提供了很棒的觀點看待世界。�有趣極了,我已經借給好幾個同事讀。�超讚。我重讀這本書好幾次,裡頭有很多很棒的資訊!�真是過癮!


     





    ◎前言:為什麼我們能跟電腦學決策?

    演算法的本質是「解決問題的一連串步驟」,人類面臨的許多挑戰跟電腦是一樣的:如何運用有限的空間、有限的時間、有限的注意力、未知的事物、不完整的資訊,以及無法預知的未來,並且如何輕鬆而自信地做到;以及如何在此同時與其他目標相同的人溝通。人類和電腦的解決方式融合程度極高,電腦科學不只能協助我們簡化問題以取得進展,甚至能提供具體的解決方法。本書將介紹前述難題的基本數學結構,以及工程師如何教電腦發揮最大效用,並了解人腦如何克服相同限制。作者訪問了近五十年來最知名演算法的設計者,談談他們的研究對自己的人生有何影響,以及他們怎麼將所學用於生活。



    ◎第一章 最佳停止點——什麼時候該見好就收?

    ?祕書問題 ?為什麼是37%? ?把握最佳伴侶

    ?孰優孰劣一目了然──完全資訊賽局 ?什麼時候賣出房子最好?

    ?什麼時候該停車? ?何時應該見好就收? ?隨時準備停止

    盡量羅列選項,小心權衡後選出最好的一個,才是理性決策?實際上由於時間有限,決策過程最重要的面向是:何時應該停止。聘人、租屋、找車位、賣房子,以及尋覓伴侶和投資獲利時見好就收等,都是要在選項逐一出現時做出最佳選擇,它們真正困擾人的是可以考慮的選項有多少。依各狀況條件不同(比如能否吃回頭草、是否有明確標準),這章解釋了37%法則、思而後行法則、臨界值法則等,教你如何避免太早決定或找太久,以及何時該降低或提高標準、還有標準該調整多少……



    ◎第二章 開發與善用——嘗試新歡?還是固守舊愛?

    ?開發與善用 ?把握時間 ?贏錢繼續玩、輸錢換一台

    ?吉廷斯指數 ?遺憾與樂觀 ?網路上的土匪

    ?用演算法審視臨床試驗 ?變化不定的世界?

    ?開發…… ?……以及善用

    開發是蒐集資料,它能提高發現最佳選擇的機會;善用則是運用現有資訊,取得已知的良好結果,兩者各有利弊。人們大多把決策視為彼此孤立,每次分別尋找期望值最高的結果。其實決策極少是孤立的,如果你思考的是日後面對相同選項時要怎麼做,那麼權衡是要開發還是善用,就非常重要。本章以電腦科學中最能體現這兩者之矛盾,名稱取自吃角子老虎機的「多臂土匪問題」,闡述應該如何隨時間而改變目標,並且說明為何合理的行動過程多半未必會選擇最好的目標。



    ◎第三章 排序——依照順序排列

    ?排序的大用處 ?排序的苦惱 ?大O記號──衡量最差狀況的標準

    ?兩種平方:氣泡排序和插入排序 ?破除平方障礙:各個擊破

    ?比較之外:贏過對數 ?亂得有理─照順序排好之後,要幹嘛?

    ?名次未必反映實力──運動賽事裡的演算法

    ?排序效率差的價值──穩固 ?血腥排序:啄序和優勢階級

    ?以競賽取代打鬥

    排序對於處理各種資訊都十分重要。電腦科學家經常要權衡「排序」和「搜尋」兩者,這項權衡的基本原則是:花心力排序資料,目的是讓我們日後不用花費心力搜尋資料。於是這個問題變成:如何事先評估資料未來的用途?電腦科學指出,混亂和秩序造成的危險都可以量化,它們的成本都能以「時間」這個基準來呈現。Google搜尋引擎之所以強大,其實是拜預先排序之賜;但對於另外一些狀況,保持混亂往往更有效率。另外討論演算法的最差情況表現(以排序而言是「最差完排時間」),可以讓我們確定某個程序能在期限內完成,排定運動賽程便是一例。



    ◎第四章 快取——忘掉就算啦!

    ?把常用的東西放在手邊──記憶體階層

    ?把隔最久才會再用的資料剔除──貝雷迪演算法

    ?把圖書館內外翻轉 ?街底的那片雲──距離非常重要

    ?家中的快取──收納空間

    ?關於書面資料怎麼歸檔,收納專家大多說錯了

    ?為最可能用到的東西騰出空間──遺忘曲線 ?經驗的反效果

    你的收納問題其實與電腦管理記憶體時面臨的挑戰類似:空間有限,要如何既省荷包又省時間?快取的概念是把常用資料放在手邊備用,快取裝滿時為了騰出空間放新資料,得剔除一些舊資料——但剔除哪些好呢?電腦科學家探究了「隨機剔除」、「先進先出」(先剔除最舊的)以及「最近最少使用法」等,甚至發展出能預測未來並執行已知最佳策略的演算法。這方面的研究啟發了亞馬遜書店的「預測包裹寄送」專利,還扭轉了心理學家對於人類記憶的看法。



    ◎第五章 排程——優先的事情優先處理

    ?「花時間」如何成為一門科學 ?如果「在期限內完成」最重要

    ?要是「劃掉待辦清單上越多項目越好」

    ?先搞清楚用什麼標準來評量成果

    ?腳麻掉是要怎麼逃!──優先權反轉與優先權約束

    ?第一道障礙 ?先擱下手上的事──占先與不確定性

    ?讓其他工作插隊的代價──上下文交換?

    ?忙到變成在空轉──往復移動

    ?錯過這次,就等待下回─中斷接合

    重要且緊急、重要但不緊急、不重要但緊急、不重要但不緊急……,時間管理大師總教人照這順序處理事情,但電腦科學家會要你先搞清楚「用什麼標準來評量成果」。是在期限內完成最重要?還是盡量縮短讓客戶等待的時間?抑或劃掉待辦清單上越多項目越好?不同的評量標準得採用不同的作業策略。本章還用電腦的「上下文交換」探討讓其他工作插隊的代價,用「往復移動」提醒忙到變成在空轉的徵兆;並告訴你如何在「反應能力」和「處理能力」間取捨,為何有時完成工作的最佳策略反而是慢下來。



    ◎第六章 貝氏法則——預測未來

    ?與貝斯牧師一起逆向推理 ?拉普拉斯定律

    ?貝氏法則和事前看法 ?哥白尼原理 ?當貝斯遇見哥白尼

    ?真實世界的事前機率…… ?……以及預測它們的規則

    ?小數據與心靈 ?我們的預測如何讓我們認識自己

    ?機械複製時代中的事前分布

    十八世紀的英國,賭博這個領域不僅深深吸引傑出數學家,也吸引了牧師湯瑪斯.貝斯,他由於研究彩券的中獎率,而對於「在不確定下進行推測」的歷史帶來重大影響。他認為由過去的假設狀況進行正向推理可提供基礎,讓我們逆向推出最可能的答案。其他科學家繼續研究預測事情的各種方法,像是:如何把各種可能假設狀況濃縮成單一期望值、根據事件類型提供適當的事前機率。其實我們腦中已儲存許多精確的事前分布,因此經常可由少量觀察結果做出不錯的預測,換句話說,小數據其實是偽裝的大數據。



    ◎第七章 過度擬合——少,但是更好

    ?考慮得更複雜,卻預測得更不準 ?資料的偶像崇拜

    ?舉目所見盡是過度擬合 ?揪出過度擬合─交叉驗證

    ?如何對抗過度擬合──懲罰複雜 ?少就是好─試探法的優點

    ?歷史的權重 ?什麼時候應該少想一點?

    談到思考,我們往往覺得想得越多越好:列出的優缺點越多,做出的決定越好;列出的相關因素越多,越能精準預測股價。實際上統計模型倘若太過複雜,使用過多參數,會太容易受我們取得的資料影響,可能隨參與者不同而出現大幅差異。這就是統計學家說的過度擬合(又譯為過度配適)。機器學習的一大重要事實是:考慮因素較多、比較複雜的模型,未必比較好。這章演示了過度擬合如何扭曲我們對資料的解讀,點出日常生活中俯拾皆是的過度擬合事例,並且教你如何藉由交叉驗證等方法揪出過度擬合(像是怎麼分辨真正的人才和僅是懂得揣摩上意的員工?)並且對抗它。



    ◎第八章 鬆弛——放鬆點,不求完美才有解

    ?最知名的最佳化問題─業務員出差問題?

    ?量化難度──用「不可能程度」來解答

    ?放鬆問題,提供解題的起點 ?無限多的灰階:連續鬆弛法

    ?拉氏鬆弛法──只要你願意付出點代價 ?學習放鬆

    過去幾十年來電腦科學家發現,無論使用多快的電腦,或程式設計得多厲害,有一類問題就是不可能找出完美解方。面對無法解決的挑戰時,你毋須放棄,但也別再埋頭苦幹,而該嘗試第三種作法。電腦科學會界定問題是「可解」還是「難解」,遇到難解問題時會先「放鬆問題」:也就是先去除問題的某些限制,再著手解決它。最重要的放鬆方法比如「限制鬆弛法」、「連續鬆弛法」,以及付出點代價、改變規則的「拉氏鬆弛法」……



    ◎第九章 隨機性——什麼時候該讓機率決定

    ?抽樣 ?隨機演算法 ?禮讚抽樣

    ?取捨「確定程度」──電腦給的答案不一定對 ?山丘、山谷和陷阱

    ?離開局部最大值 ?模擬退火 ?隨機性、演化和創造力

    乍看之下,隨機性似乎和理性正好相反,它代表我們放棄這個問

    隨機性乍看之下似乎和理性相反,代表我們放棄這個問題,採取不得已的手段。但你若是知道隨機性在電腦科學中扮演多吃重的角色,可能會非常驚訝。面對極為困難的問題時,運用機率可能是審慎又有效的解決方法。隨機演算法未必能提出最佳解,但它不用像確定性演算法那麼辛苦,前者只要有計畫地丟幾個硬幣,就能在短短時間內提出相當接近最佳解的答案,它解決特定問題的效果,甚至超越最好的確定性演算法。這章將要告訴你依靠機率的時機、方式,以及仰賴的程度。



    ◎第十章 網路——我們如何互通聲息

    ?封包交換──為了非連續交談而創?

    ?應答─怎麼知道訊息有沒有送達?

    ?指數退讓──寬恕的演算法 ?控制流量和避免壅塞

    ?祕密管道:語言學中的流量控制?

    ?緩衝爆滿──笨蛋,問題出在延遲! ?既然遲了,不如就別做了

    人類互通聲息的基礎是「協定」,也就是程序和預期的共通慣例,例如握手、打招呼和禮貌,以及各種社會規範。機器間的聯繫也不例外。在人際關係中,這類協定是微妙但長久存在的焦慮來源。我前幾天傳了個訊息,從何時開始我會懷疑對方根本沒收到呢?你的回答怪怪的,我們之間是不是有什麼誤會?網際網路問世後,電腦不僅是溝通管道,也是負責交談的聯絡端點,因此它們必須解決本身的溝通問題。機器與機器間的這類問題以及解決方案,很快便成了我們借鏡的對象。



    ◎第十一章 賽局理論——別人是怎麼想的?

    ?遞迴 ?奈許,就是賽局達到均衡 ?不採取「均衡」作法的代價

    ?公有地悲劇 ?機制設計:改變賽局 ?演化進行的機制設計

    ?資訊瀑布:悲慘的理性泡沫 ?忠於自己

    賽局理論廣泛影響經濟學和社會科學領域,然而除非賽局參與者找得到奈許均衡,它的預測能力才會造成影響,但是電腦科學家已經證明,純粹尋找奈許均衡是難解問題……

    另外傳統賽局理論有個見解:對一群依據自身利益採取理性行動的參與者而言,「均衡」或許不是最好的結果。「演算法賽局理論」依據電腦科學原理,採用了這個見解並加以量化,創造出「自主行為代價」這個度量,結果發現某些賽局中,自主行為的代價其實沒有很高,這意謂著該系統不論細心管理或放任不管都差不多。



    ◎結語:運算的善意

    對於人類的某些問題,如今已經找到解決的演算方法;即使尚未得到所需結果,但知道自己使用最佳演算法,也會讓人感到放心。此外電腦科學還能協助我們,清楚劃分哪些問題有明確解答、哪些問題則無,從而選擇要面對什麼——包括自己要面對什麼,以及要讓別人面對什麼,其原則便是運算的善意。現今的電腦做的,並非「盡量羅列選項,找出最好的一個」。有效的演算法會做出假設,偏向選擇較簡單的解答、權衡誤差代價和延遲代價,接著冒險一試。這些都不是我們難以理性面對時的讓步,它們本身就是理性的方法。





    前言



    為什麼我們能跟電腦學決策?




      想像你正在舊金山找房子。這城市可說是全美最難找到房子的地方,有繁榮的高科技業,加上嚴格的分區使用法規,因此房價跟紐約一樣昂貴,很多人認為甚至不輸給紐約。新物件出現沒多久就下架,房地產公開說明會人山人海,往往得私下先塞訂金支票給屋主才買得到。



      由於市場如此熱絡,很難容許理性消費者先蒐集資料,深思熟慮後才下決定。四處閒逛或透過網路買屋的人,可以比較許多選擇後再下決定,但想在舊金山買房子的人,要不就買下眼前這棟房子,拋下其他選擇,要不就馬上走人,不再回頭。



      為了簡化起見,我們姑且假設你只想盡可能提高買到最好房子的機率。你的目標是把在「錯過好機會」和「說不定還有好機會」之間徘徊的機率降到最低。你立刻發現自己陷入兩難:如果沒有判斷基準,要怎麼知道某棟房子是不是最佳選擇?但如果看過的房子不夠多,又怎麼知道判斷基準在哪?你取得的資訊越多,越能掌握真正的好機會,但在此之前錯過好機會的機率也越高。



      那麼你該怎麼做?倘若蒐集資訊反而可能不利,那麼該如何做出明智決定?這種狀況十分殘酷,簡直可以說是矛盾。



      大多數人面臨這類問題時,直覺上通常認為必須在取捨間取得某種平衡,得看過夠多的房子才能建立標準,再依據標準找出想要的房子。這種權衡概念非常正確,然而大多數人沒辦法明確說出平衡點在哪。所幸這確實有明確答案:



      是37%。



      如果你希望達成買到最佳房子的最佳機率,請把總時間的37%拿來看房子(如果打算花一個月找房子,那就是十一天)。把清單留在家裡,單純用來設定標準。但是花了37%的時間後,就要準備出手,只要一發現比已經看過的房子更好的選擇就買下來。這不只是尋找和放棄之間的平衡點,也是經過驗證的最佳解決方案。



      我們之所以知道答案,是因為找房子屬於數學中的「最佳停止問題」。37%法則定義出一連串解答這類問題的簡單步驟,電腦科學家稱之為演算法。其實最佳停止問題可以用來解決生活中的許多狀況,找房子只是其中一例。生活中我們經常遇到選擇或放棄一連串選項的情形,比方說:要在停車場繞幾圈才找得到車位?投資高風險事業要多久才會開始回收?賣房賣車時要忍耐多久才能等到更好的價錢?



      還有一種更難抉擇的狀況亦屬此類問題,那就是約會。最佳停止是連續單偶制的科學原理。



      簡單的演算法不僅能協助你找到好房子,還適用於遭遇最佳停止問題的各種狀況。



      我們每天都在跟這類問題纏鬥不休(只不過比起停車,詩人花比較多墨水描述愛情的磨難),有些狀況也真的很折騰。但其實沒必要這麼糾結,有些問題數學已經解決了。心急如焚的房客、駕駛人和忐忑不安的求婚者,其實都沒必要煩惱;他們不需要治療師,只需要演算法。治療師可以教他們如何避免過於衝動和過度思考;演算法則能明確告訴他們,這個平衡點就是37%。



      ******



      由於我們生活的空間和時間都有限,每個人都遭遇到一類問題。在一天或十年中,我們應該做什麼、或應該不做什麼?應該容忍什麼程度的混亂?什麼樣的秩序算是過度?新事物和心頭好各佔多少比例,才能使生活最讓人感到滿足?



      似乎只有人會面臨這類問題?其實不然。半個多世紀以來,電腦科學家一直在探究這類日常困境,有時還試圖解決,像是:處理器該如何分配它的「注意力」,以最少時間執行使用者要它做的工作,同時盡量少做白工?它什麼時候應該轉而處理不同工作,一開始又應該接受幾項任務?怎麼運用有限的記憶體資源最好?它應該蒐集更多資料,或是依據已有的資料採取行動?



      人類要把握每一天已經很不容易,電腦卻能輕鬆寫意地把握每一毫秒。電腦的工作方式可以帶給我們許多啟發。



      討論演算法對人類生活有何助益似乎有點奇怪。說到「演算法」,許多人想到的是大數據、大政府和大企業神祕難解的算計,這類算計在現代世界基礎建設中的比重越來越大,但稱不上實用智慧或人生指南。不過演算法其實是解決問題的一連串步驟,而且範圍比電腦更廣,歷史也更悠久。早在機器使用演算法之前,人類就開始使用它們了。



      「演算法」這個詞,源自撰寫手算數學書的九世紀波斯數學家阿爾花拉子模(al-Khw?rizm?)。他寫的書名為《還原和對消的規則》(al- Jabr wa’l-Muq?bala),其中的al-jabr後來演變成代數(algebra)。然而目前已知最古老的數學演算法,其實早於花拉子模的著作。有一塊巴格達附近出土、歷史長達四千年的蘇美黏土板,上頭就記載了長除法。



      不過用得上演算法的領域不只數學。你參考食譜做麵包、依照圖樣打毛衣,或是以一定方式用鹿角末端敲擊燧石,在燧石上形成尖銳邊緣(這是製作精細石器的重要步驟),都是依循演算法在做事。早從



      石器時代開始,人類科技中就蘊含著演算法。



      ******



      本書將探討人類演算法的設計概念,也就是:針對每天面臨的挑戰尋找更好的解決方案。把電腦科學解決問題的方法套用到日常生活上,會影響許多層面。首先,演算法能提供實用且具體的建議,協助解決特定問題。最佳停止問題告訴我們,何時該大膽跳過、何時又該留意機會。開發與利用取捨告訴我們,如何在嘗試新事物和享受喜愛的事物間找到平衡點。排序理論教我們如何(以及是否應該)整理辦公室。快取理論教我們如何把物品收進櫥櫃。排程理論則教我們如何安排工作。



      到了下一個階段,電腦科學告訴我們一套字彙來了解這些領域中更深入的原理。卡爾.薩根(Carl Sagan)曾說:「科學不只是知識,更是一種思考方式。」即使是混亂得難以進行嚴謹數值分析或有現成答案的狀況,運用直覺和化簡問題後加以思考所得到的概念,也能讓我們了解關鍵問題並獲得進展。



      更廣泛地說,以電腦科學的眼光看問題,有助於我們了解人類心智的特質、合理性的意義,並且探究一個最古老的問題:人類如何求生。把認知當成「解決環境造成的基本運算問題的方法」仔細探討,可能徹底改變我們對人類理性的看法。



      就算電腦科學真能教我們如何思考以及該怎麼做好了,但我們想照著做嗎?看看科幻片裡的人工智慧和機器人,你該不會真的想要像它們那樣過活吧?說到研究電腦內部運作可能教我們如何思考、下決定、該相信什麼以及怎麼做好,許多人不只會把它想得太簡單,實際上是會想錯方向。



      部分原因是,說到電腦,我們想到的是冰冷的機械化確定性系統——機器套用死板的演繹邏輯,點滴不漏地羅列所有選擇,琢磨出正確答案,無論必須思考得多久、多辛苦。的確,最早構思出電腦的人就希望電腦是這樣:艾倫.圖靈(Alan Turing)定義中的運算就像數學家一樣,仔細執行一連串冗長運算,得出萬無一失的正確解答。



      因此說來你或許會驚訝──現代電腦面臨難題時,其實不是這麼做的。當然,直截了當的計算對現代電腦而言輕而易舉。跟人類交談、修復損壞的檔案或下贏一盤圍棋等,這類沒有明確規則、缺少必要資料,或是必須考慮多如繁星的可能才能找出正確解答的問題,才是電腦科學最大的挑戰。研究人員為了解決極端困難的問題而開發的演算法,已經使電腦不再需要依賴繁重的計算。相反地,執行實際工作必須接受機率,以時間換取精確性,還要懂得運用近似法。



      電腦解決真實世界問題的能力越來越強,不僅提供演算法給人運用到生活上,還定下更好的標準讓我們得以比較人類認知本身。近十幾二十年,行為經濟學主張:人類既不理性又容易犯錯,主因是人類大腦結構缺陷重重且各不相同。這個妄自菲薄的說法日益流行,但仍有些問題有待探討。舉例來說,為什麼即使是四歲小孩,執行視覺、語言和因果推論等認知任務時,



      依然能超越超級電腦?



      電腦科學衍生的日常問題解決方案,則對人類心智提出完全不同的看法。它們認為生活本就困難重重,人們犯下的錯誤透露的,是問題本身的困難之處,而非人類大腦不可靠。用演算法思考世界,學習我們所面



      臨的問題的基本結構、以及其解決方案的屬性,能讓我們了解人類其實已經很了不起,同時更加理解我們所犯的錯。



      事實上,人類經常面對電腦科學家傷透腦筋的許多難題。我們經常得克服不確定性、時間限制、資訊不足和變動快速的世界,做出決定。對於當中的某些情況,即使是最尖端的電腦科學,也還沒找出高效率又永遠正確的演算法;而某些情況則根本不存在這樣的演算法。



      然而即使在尚未找到完美演算法的領域,一代代電腦科學家和棘手真實世界問題纏鬥多年後,也得出了許多心得。這些得來不易的規則違反我們心目中的合理性,聽起來也不像數學家描述世界的那些條理分明的嚴密規則。這些規則說:不一定要考慮所有選擇,不一定非得追求看來最好的結果,偶爾可以製造混亂。看到紅綠燈就等一下。相信直覺,別思考太久。放鬆,拋個硬幣。寬恕,記住這個教訓就行。誠實對待自己。



      依據電腦科學知識過生活說來沒那麼糟,何況它有證據支持─許多忠告可是無憑無據呢



      ******



      設計供電腦使用的演算法,原本就是介於兩個學科之間的專業──它是數學與工程學的奇特混合體,因此設計供人類使用的演算法自然也沒有明確隸屬哪個學科。今天,演算法設計不僅必須藉助電腦科學、數學和工程學,還要藉助統計學和作業研究等。我們思考為機器設計的演算法與人類心智的關聯時,也需要參考認知科學、心理學、經濟學和其他學科。



      我們作者都很熟悉這個跨學科領域。布萊恩念過電腦科學和哲學,念研究所時主修英文,後來的工作則跨這三個領域。湯姆念的是心理學和統計學,後來成為加州大學柏克萊分校教授,花很多時間研究人類認知和運算間的關係。不過沒有人通曉為人類設計更佳演算法的所有相關領域,因此我們在尋找過好生活的演算法時,訪問了近五十年來最知名演算法的設計者。他們個個頭腦頂尖,我們問他們,他們的研究對自己的人生有何影響,例如尋找配偶到整理襪子等等。



      從下一章開始,我們將探討電腦和人類面臨的最大挑戰:如何運用有限的空間、有限的時間、有限的注意力、未知的事物、不完整的資訊,以及無法預知的未來,並且如何輕鬆而自信地做到;以及如何在此同時



      與其他目標相同的人溝通。我們將會了解這些難題的基本數學結構,以及工程師如何教電腦發揮最大效用(他們的方式往往出乎意料)。我們還將了解人腦如何運作,了解它如何處理相同問題和克服相同限制,這些方法與電腦的方法不同卻關聯極深。最後,我們不僅將深入了解各類日常問題、以全新方式觀察人們遭遇的各種困境背後的美麗結構、認識人類和電腦的解決方式融合程度極高,還將獲得更深刻的東西──我們會有描述周遭世界的新語彙,並且有機會重新認識自己。




    其 他 著 作
    1. 決斷的演算:預測、分析與好決定的11堂邏輯課(暢銷紀念精裝版)