
[英]克里斯·布利克利
21世紀的今天,我們生活的方方面面無時無刻不在被算法影響和塑造。它們幫我們選擇最 佳的行車路線,向我們推薦我們可能購買的商品,爲我們識別語音和圖像,甚至給單身人士匹配婚戀對象。越發強大的算法也在不斷突破極限,無論是打敗圍棋世界冠軍柯潔,藉助大語言模型與人類會話,還是在200秒內完成超級計算機1萬年才能完成的計算。 然而,算法並非新近纔開始影響人類社會,人類受益於算法已經有數千年的歷史。在《算法簡史:從美索不達米亞到人工智能時代》中,以算法發展過程中的關鍵人物和經典算法爲主線,作者克里斯·布利克利繪出了一幅近4 000年的算法發展簡史:從鐫刻在古巴比倫泥板上求2的平方根的算法,到劉徽和祖沖之父子對圓周率的精確計算;從查爾斯·巴貝奇和艾達·洛芙萊斯試圖建造的機械數字通用計算機,到艾倫·圖靈對算法的正式定義和他構想的圖靈機;從第 一臺可編程的通用電子計算機ENIAC,到第 一個人工智能程序“邏輯理論家”;從互聯網的誕生,訊息的傳輸和加解密,再到亞馬遜的推薦系統、谷歌搜索和社交媒體的動態排序,以及今天無處不在的人工神經網絡……書中豐富的算法實例讓讀者充分感受到算法中蘊含的數學之美以及算法推動人類社會進步的強大力量。 全書語言通俗易懂,幾乎沒有使用一個公式,述及超過20位圖靈獎——“計算機界的諾貝爾獎”——得主及其科學貢獻,爲沒有專業背景但希望瞭解算法的讀者提供了一個絕 佳的窗口。
看完了。這種書真的有一種救贖感,其實我看《數學之美》的時候就已經感覺到救贖了[捂臉]因爲那本書全是現實生活的應用題(吳軍最開始就是搞算法的)。 我喜歡的數學就是跟我活在一個世界的具體的數學,非常有救贖感,我舉個例子,就是那個複利是會無限增長還是會變成一個常數?有了數學你就會知道它是一個常數,就很有救贖感,這個問題不再是一個不可知的東西了,沒有數學你就會覺得它是random的,沒有這種確定性。確定性就是一種安全感救贖感。 那種天靈蓋連着天庭的什麼證明什麼猜想還有數論,哎呀媽,都不是我的基因能支持的,我父母沒給我充VIP。做成年人真好,做未成年人的時候抽象的題我不會還要裝會,老師讓你把公式背下來,成年人就是好[捂臉]終於可以挑食了。直接說,對不起,我是個廢物,這一塊兒跳過。 最好別整xy,直接橫軸是時間縱軸是價格,這種建模最有救贖感[破涕爲笑]傅里葉級數聽起來高級,其實也能看見,比方說泳池裏迴盪的波浪,這種就很好。對對對,只要能看見的,你告訴我一個規律,我照着一抄,那簡直不要太棒。我是真沒想到傅里葉級數提出的時候,竟然還有爭議,這多救贖啊。以及原來傅里葉變換高斯早就搞出來了,沒發表,世界上怎麼會有高斯這種人啊。 這種書我可以多刷刷,萬一有很多可以不用自己想直接抄的呢#不是 數學分析數學建模啥的,感覺能獲得安全感的東西恐怕挺多,那些真·數學還是再見吧,我是成年人了不用挑戰自己了,嗯嗯[耶]
《算法簡史:從美索不達米亞到人工智能時代》以“算法如何塑造人類文明”爲主線,將故事從公元前 18 000 年的符木記數一直講到當代深度學習。下列要點勾勒了全書的主要脈絡與看點:1. 史前到美索不達米亞:算法的萌芽• 舊石器時代的人們用樹枝刻痕記錄數據,這被視爲最早的“算法”雛形;蘇美爾人則在泥板上留下了求解平方根、圓周率等早期算法,奠定了數值計算的傳統。2. 古代中國:精密計算的高峰• 劉徽用割圓術逼近圓周率,祖沖之父子進一步將精度推至小數點後七位,展示了窮竭法與連分數思想,爲後世數值分析奠基。3. 古典歐洲與中世紀:從理論到機械嘗試• 歐幾里得提出輾轉相除法,奠定數論算法基礎;帕喬利、斐波那契等人將阿拉伯數字與十進制位值制帶到西方,使大數運算更高效。• 查爾斯·巴貝奇設計差分機,艾達·洛芙萊斯寫出“乘法”程序,首次揭示通用計算機的潛力。4. 圖靈與現代計算理論• 艾倫·圖靈 formalize 算法概念,提出圖靈機並揭示停機問題,爲可計算性與複雜度理論奠基。• 隨後馮·諾依曼架構、晶體管與集成電路讓算法真正進入電子時代。5. 互聯網與信息時代• TCP/IP、HTTP 等協議把算法延伸到全球網絡;搜索引擎和排序算法重塑信息獲取方式;公鑰加密體系(Diffie-Hellman、RSA)解決數字時代的安全問題。6. 人工智能的崛起• 邏輯理論家、感知器、AlphaGo 等里程碑展示了從符號主義到深度學習的跨越;AlphaGo 與李世石、柯潔的對決成爲大衆認知 AI 的分水嶺。7. 算法的今天與未來• 從推薦系統到自動翻譯,從語音助手到自動駕駛,算法滲透日常生活;Transformer、大語言模型在 200 秒內完成超算 1 萬年才能完成的計算,預示算力與算法的繼續爆發。8. 寫作特色• 全書幾乎不用公式,以人物故事和歷史場景串講算法思想,讓沒有專業背景的讀者也能理解算法之美。通過這條時間軸,讀者不僅能看到算法本身的技術演進,也能洞察它們如何與社會、經濟、文化相互塑造——從美索不達米亞泥板到 AlphaGo,算法的每一次飛躍都回應了當時最緊迫的現實需求,也開啓了人類新的可能性。
《算法簡史:從美索不達米亞到人工智能時代》內容介紹與專業書評 書籍背景與作者專業定位 《算法簡史:從美索不達米亞到人工智能時代》由中信出版集團・新思文化於 2024 年 10 月推出,定位 “文科生友好型” 算法科普讀物。全書無公式、術語通俗化,通過生活化語言解析算法本質,讓零技術背景讀者也能輕鬆理解其歷史與運作機制。 作者克里斯・布利克利(Chris Bleakley)兼具學術與產業雙重積澱:愛爾蘭都柏林大學計算機科學學院教授(曾任院長),擁有近 40 年算法設計經驗,曾任職埃森哲軟件顧問、博通高級研究員等職。這種跨領域背景使其既能嚴謹考據古巴比倫泥板算法等歷史細節,又能融入亞馬遜推薦系統等現代企業實踐案例。 區別於《極簡算法史》側重數學邏輯的傳統寫法,本書以“文明演進”爲暗線,串聯兩河流域、中國、歐美等地域的算法突破,揭示技術全球化的歷史根源。中國工程院院士李國傑等專家推薦,稱其“打通了學術深度與大衆認知的鴻溝”。 內容架構與歷史脈絡解析 《算法簡史》以 4000 年時間跨度爲軸,通過 “技術史三階段” 架構串聯算法從實用工具到社會基礎設施的進化史詩,既呈現關鍵突破節點,又暗藏中西文明思維差異的碰撞與互鑑。 古代至中世紀:生存需求驅動的步驟化思維 公元前 2000 年左右的美索不達米亞平原,古巴比倫泥板上刻下人類最早的算法痕跡 —— 求 2 的平方根的程序化步驟,用六十進制迭代逼近結果,展現解決實際計算問題的原始智慧 1 2 。同一時期的東方,中國魏晉數學家劉徽在《九章算術注》中提出 “割圓術”,以 3072 邊形將圓周率精確至 3.1416,其 “割之又割,以至於不可割” 的迭代思想,與祖沖之父子進一步算得的 3.1415926-3.1415927,共同構成中國古代算法 “實用至上” 的典範 3 4 。而 9 世紀阿拉伯數學家花拉子米的《代數學》不僅系統解決線性與二次方程,更讓其名字演變爲 “algorithm” 一詞,成爲東西方算法思想交融的見證 5 6 。 17 世紀至 20 世紀:理論抽象與機器革命 19 世紀英國發明家查爾斯・巴貝奇的 “差分機” 構想,首次將算法從人腦轉移到機械裝置,其助手艾達・洛芙萊斯的註釋更預見了程序設計的可能性 2 7 。1936 年艾倫・圖靈提出 “圖靈機” 理論,以 “讀寫頭 - 無限紙帶” 模型嚴格定義算法本質,爲現代計算機奠定邏輯基礎 3 6 。二戰的軍事需求成爲技術催化劑:1946 年誕生的 ENIAC 計算機,將彈道計算算法固化爲電子線路,標誌算法正式成爲 “計算機的靈魂”,完成從數學工具到機器語言的質變 1 4 。 20 世紀末至今:社會滲透與決策權力轉移 當谷歌 PageRank 算法用 “鏈接投票” 機制重構信息分發邏輯,當亞馬遜推薦系統通過協同過濾算法預測用戶偏好,算法已從技術領域滲透至社會肌理 2 7 。人工神經網絡的復興更具顛覆性:從感知機到深度學習,算法開始模仿人腦神經元連接模式,在圖像識別、自然語言處理等領域實現 “湧現智能” 4 8 。這一階段的算法不再僅是工具,而是成爲塑造認知、調配資源、甚至影響社會公平的隱形力量。 中西算法思維差異:中國古代算法如祖沖之圓周率計算,始終服務於曆法、工程等實際需求,呈現“問題-解法”的具象路徑;西方如歐幾里得算法,則以公理化表達追求邏輯嚴謹性,形成“定義-定理-證明”的抽象傳統。這種差異在書中化爲文明互鑑的敘事線索,展現算法史既是技術突破史,也是人類思維方式的演進史 3 6 。 全書附贈的 4000 年算法發展摺頁,將這些關鍵節點濃縮爲可視化時間軸,讓讀者直觀感受:從泥板刻痕到硅基芯片,算法始終是人類破解生存難題、拓展認知邊界的核心工具 1 4 。 核心算法與技術演進邏輯 算法的發展史本質上是人類解決問題的思維進化史。從美索不達米亞泥板上的刻痕到今天每秒數十億次運算的 AI 模型,這條演進之路始終遵循 "問題驅動" 的底層邏輯 —— 每個時代的核心算法,都是對當時最緊迫需求的智慧回應。 從生存工具到效率引擎:算法的三次需求躍遷 古代文明的算法誕生於生存剛需。巴比倫人在泥板上記錄求平方根的步驟,以丈量土地分配糧食;古希臘歐幾里得在《幾何原本》中系統化的 "輾轉相除法"(以 n 除 m 得餘數 r,若 r=0 則輸出 n,否則置換 m 爲 n、r 爲 n 並重復),通過明確的迭代步驟簡化貿易中的最大公約數計算 9 。中國《九章算術》的 "方程術" 和秦九韶 "大衍求一術",則將算法思想融入曆法制定與工程測量,展現了古代東方的計算智慧 10 。這些算法如同 "分糖步驟"—— 明確輸入(糖的總數)、規則(每人幾顆)和終止條件(分完爲止),用有限步驟解決特定問題 8 。 工業革命推動算法從 "問題專屬解法" 轉向 "通用效率工具"。1946 年 ENIAC 計算機通過程序化彈道計算,將原本需要數週的 artillery 彈道表生成時間壓縮至小時級,標誌着算法正式進入自動化時代 7 。而真正的理論突破來自 1936 年艾倫・圖靈的天才構想:圖靈機通過 "讀寫頭 - 無限紙帶" 模型,首次定義了算法的 "通用計算" 本質 —— 任何可計算問題都能通過有限指令序列實現,打破了此前 "一個問題一套解法" 的侷限 3 5 。這就像從 "爲每本書定製檢索規則" 升級爲 "圖書館通用分類系統",爲現代計算機科學奠定了哲學基礎。 信息時代的算法則面臨 "複雜決策" 挑戰。當人類被淹沒在數據洪流中,PageRank 算法用 "圖書館排序" 的智慧解決了網頁檢索難題 —— 把每個網頁比作書籍,鏈接數量相當於借閱次數,被權威書籍(高權重網頁)引用的書排名更靠前,通過迭代計算實現全局排序 8 。與此同時,神經網絡從 1958 年羅森布拉特感知器的 "淺層學習",到 2006 年傑弗裏・辛頓提出的深度學習算法,通過多層非線性變換突破特徵提取瓶頸,讓計算機首次 "看懂" 圖像 —— 就像從 "識別單一特徵(如顏色)" 到 "綜合輪廓、紋理、上下文判斷物體",推動 AI 從 "按規則執行" 轉向 "從數據中學習" 3 4 。 兩次範式革命:重新定義算法邊界 1936 年圖靈機與 2006 年深度學習,構成算法史上的兩大轉折點。前者將算法從 "具體操作指南" 升維爲 "通用計算理論",後者則讓算法突破 "人工特徵工程" 的天花板。辛頓團隊通過深度置信網絡(DBN)實現特徵自學習,使神經網絡能處理圖像、語音等複雜數據,這相當於讓機器從 "被動接收人類總結的規律" 轉向 "主動從數據中發現規律" 4 。今天我們熟知的 GPT 大模型,其千億參數背後的 Transformer 架構,正是這一 "數據驅動" 思想的當代延續 11 。 通俗化表達與技術邊界 書籍通過生活化比喻降低理解門檻:用 "圖書館管理員根據借閱量排序書籍" 解釋 PageRank 的迭代思想,以 "俄羅斯套娃" 類比遞歸算法的自我調用邏輯 8 。但技術深度仍有侷限 —— 量子算法章節僅介紹 Shor 算法在大數分解的應用,未涉及量子比特疊加態與量子門操作原理,對比《量子算法導論》對量子傅里葉變換的詳細推導,理論深度略顯不足。這種取捨雖照顧了大衆讀者,卻也提示我們:理解算法本質,既需要 "分糖步驟" 的通俗類比,也離不開對 "計算複雜性" 等底層邏輯的追問。 算法演進的核心啓示:從歐幾里得的"輾轉相除"到辛頓的"深度置信網絡",算法始終在"問題需求-理論突破-技術實現"的循環中進化。圖靈機定義了"能計算什麼",深度學習拓展了"如何更好計算",而未來量子算法的突破,或許將重新回答"計算的終極邊界在哪裏"。 跨學科整合與社會影響分析 算法的跨學科整合是技術演進的核心動力,它融合數學(算術、幾何)、邏輯學(亞里士多德三段論、布爾邏輯)與計算機科學,打破傳統學科壁壘 3 10 。聖塔菲研究所聚集物理學家、經濟學家、生物學家等學者,突破線性還原論思維,如將達爾文進化論應用於經濟系統分析,展現學科交叉的創新力 12 。具體而言,傅里葉變換連接數學與信號處理(天氣預報),貝葉斯網絡結合概率與 AI(垃圾郵件過濾),成爲跨學科協作的典範。 算法對社會的影響呈現 "雙刃劍" 效應:一方面提升效率,如電商推薦系統實現個性化消費,醫療算法優化器官移植匹配;另一方面引發爭議,社交平臺動態排序算法雖改變信息獲取方式,卻可能導致 "信息繭房",算法所有權還可能延長用戶連接時間、創造依賴感 4 13 。 本書獨特價值在於將算法置於文明史語境,不同於純技術著作。如 "穩定婚姻問題" 算法(蓋爾 - 沙普利)被應用於醫療資源分配,展現技術人文維度。對中國讀者而言,書中收錄劉徽割圓術,補充祖沖之圓周率計算在東亞的傳播,更凸顯本土算法智慧的跨時空影響,增強文化共鳴。 讀者反饋與專業評價 這本書以通俗性和歷史縱深感贏得廣泛認可。中國工程院院士李國傑評價其 “既適合缺乏專業背景的普通讀者瞭解算法來龍去脈,也適合專業人士回味歷史”,清華大學馬少平教授稱其 “詳盡而通俗地介紹算法發展史” 1 4 。美國數學協會指出 “任何教授、學習或使用算法的人都會從算法發展史中獲益良多”,尤其強調對無數學和計算機背景讀者的友好 —— 每個專業術語首次出現時均有清晰解釋 1 。讀者反饋印證了這種親和力:非專業羣體通過 “人物故事化” 敘述(如艾達・洛芙萊斯編程先驅事蹟、辛頓深度學習探索歷程)掌握算法概念,甚至有 52 歲讀者表示 “讀完終於理解算法如何塑造現代生活”,展現跨年齡、跨學科覆蓋力。 技術深度的平衡藝術:部分讀者認爲本書存在“技術簡化”侷限,如神經網絡反向傳播僅描述“調整權重”,未涉及梯度下降數學原理;量子算法停留在“加速計算”表層,未解釋量子疊加態與並行計算的關係。這種處理源於定位差異——對比《算法導論》(CLRS)作爲計算機專業教材的學術深度,本書更側重“技術史通識”,通過每章末“算法應用”專欄(如用“穩定婚姻算法”解析大學錄取機制)實現實用性與通俗性的平衡。 專業界普遍認可這種定位。中國科學院瀋陽自動化研究所周曉鋒研究員認爲其 “全面展現算法發展歷程,梳理里程碑事件及行業大咖貢獻” 4 。這種 “以史爲綱、以例爲輔” 的寫法,讓複雜學科變得可知可感,成爲連接技術與人文的橋樑。 適用人羣與閱讀建議 本書精準定位 “知道算法重要但不知其然” 的讀者羣體,尤其適合中學生、文科生等無專業背景者入門 —— 全書幾乎不使用編程語言和公式,通過 “分糖算法”“圖書館排序” 等生活化案例降低理解門檻 。同時,算法初學者可藉此建立系統認知,專業人士亦能通過歷史視角深化對技術演進的理解,實現 “從入門到拓展” 的跨羣體價值 1 。 分層閱讀指南 中學生/通識讀者:聚焦第 1-5 章,通過古代算法到計算機誕生的歷史脈絡,培養算法思維。 技術從業者:重點研讀第 8-12 章,關注谷歌搜索、Facebook 匹配等企業級實踐案例。 管理者/決策者:優先第 13 章,把握算法倫理爭議與監管趨勢,預判行業風險。 閱讀時建議搭配《算法圖解》進行實操練習,用《深度學習》補充神經網絡等技術細節,形成 “理論認知 - 實踐驗證 - 深度拓展” 的完整學習閉環。其核心價值正在於搭建橋樑:既爲普通讀者推開算法之門,又爲專業人士提供審視當下技術的歷史座標系,真正實現 “人人讀得懂,行行皆受益” 的科普使命。 跨文明視角的技術史書寫價值 當我們談論算法起源時,腦海中是否總是浮現希臘幾何學或歐洲工業革命的畫面?《算法簡史》最震撼的突破,正在於打破這種 "西方中心敘事",用 4000 年文明長卷證明:算法從來不是單一文化的獨奏,而是多元智慧的合唱。 書中將古巴比倫泥板上的平方根算法與中國劉徽割圓術並置,讓我們看見公元前 2000 年兩河流域的計數智慧與公元 3 世紀魏晉數學家的圓周率探索,如何在不同時空綻放相似的理性光芒 2 10 。更顛覆認知的是,中國《周髀算經》對勾股定理的文字記錄比畢達哥拉斯早 500 多年,十進位制籌算在春秋時代普及的精密程度,讓同期歐洲計數法相形見絀 10 。這些被主流技術史長期忽略的東方智慧,終於在書中獲得應有的歷史重量。 阿拉伯文明的 "橋樑角色" 同樣令人矚目。9 世紀數學家花拉子密的《算術》不僅系統總結四則運算,其名字更演變爲 "算法"(algorithm)一詞的詞源,通過中世紀翻譯運動將東方數學帶入歐洲,爲文藝復興埋下知識火種 6 9 。這種文明間的知識接力,在印度 "零" 概念經阿拉伯傳入歐洲、最終重塑全球數學體系的過程中,展現得淋漓盡致 15 。 文明接力的當代啓示:當我們在AI時代爭論算法偏見時,這本書早已揭示答案——算法無國界,但開發者的文化基因會嵌入代碼深處。就像祖沖之的圓周率計算蘊含着"割之又割,以至於不可割"的東方哲學,今天的推薦系統也在默默傳遞着不同文明的價值觀偏向。作者在前言中強調的"幾乎每項創新都是團隊合作",恰是對技術史最生動的註解:從蘇美爾人的泥板到硅谷的芯片,人類用集體智慧編織出算法的經緯 7 。 這種跨文明視角不僅還原了歷史真相,更給我們重要啓示:技術進步從來不是英雄史詩,而是無數文明在黑暗中接力傳遞的火炬。當我們凝視 AI 的未來時,或許應該先回望過去 —— 那些刻在泥板、竹簡、羊皮捲上的智慧密碼,早已寫下 "人類共同智慧結晶" 的答案。
兒子最近迷上了一套書,叫做《跟着地理學歷史》。受這個名字的啓發,我將本篇讀書筆記命名爲《跟着歷史學算法》。 算法,是現代社會運轉的基石。網絡購物、出門導航、滴滴打車,這一切便利的背後,都是算法在發揮作用。一位從事IT工作的人,如果不能從嘴裏時不時蹦出“算法”兩個字來,你可能都會懷疑他的專業性。而我,恰恰是這個不專業的人。 爲補上這一課,我今年花了不少時間學習算法知識,從清華大學馬少平教授的公開課,到工信部大數據分析師系列課程,不可謂不用功,但總覺得是管中窺豹,盲人摸象,始終難得要領。 一次偶然機會,我遇到了《算法簡史》,起初並不在意,只是隨手翻一翻,因爲市面上《XX簡史》的書並不少,看書名不是那麼吸引人。但看了幾頁後,我就被裏面的內容吸引住了。通讀下來,雖不能說豁然開朗,但也收穫不少。 01關於《算法簡史》這本書 《算法簡史》作者克里斯.布利克利,英國人(抱歉,我原以爲這類書都是美國人在寫),現任愛爾蘭都伯林大學計算機科學學院教授。也許正是因爲他並未處於當前人工智能發展風暴的最核心,少了些商業驅動,使他能靜下心來,從一個更宏觀、更灑脫的角度,來看待算法問題。 這本書的副名稱叫做:從美索不達亞到人工智能時代。馬少平教授的推薦語是:這本書爲我們打開了瞭解算法的大門,從算法發展的角度非常詳盡而又通俗易懂地介紹了什麼是算法,描繪出了一部近4000年的算法發展簡史。 正如馬教授所說的,本書從鐫刻在古巴比倫泥板上求2的平方根算法,到劉徽和祖沖之父子對圓周率的計算,一直到互聯網路由尋址算法、到今天無處不在的人工神經網絡,像一幅宏偉的歷史畫卷,徐徐展開,娓娓道來,充分展示了人類的智慧之美,和探索宇宙奧祕的勇氣。 很顯然,作者非常的用心,也非常嚴謹。恐怕在我讀過的書或者論文中,這本書的參考文獻數量是最多的,洋洋灑灑275篇,列了整整14面。書中的每一幅照片,都詳細標明瞭時間和出處。 這本書好讀又不好讀。說好讀,因爲他是以歷史爲主線,書中講了很多算法的來龍去脈,以及算法發明人的生平,穿插了一些有趣的故事。假如不去糾結那些算法細節的話,可以當做一本科技史書來輕鬆閱讀。 說不好讀,因爲本書的精髓,就是用比較易懂的語言,將各種算法的核心描述出來了,光看歷史部分不夠過癮。但實事求是的說,如果一點算法基礎知識都沒有,讀懂算法部分還是很費勁的,需要做一些額外的功課。這裏我推薦馬教授的公開課。 02關於算法的再認識 本書對“算法”的定義是:在計算或其他解決問題的操作中,所要遵循的處理過程或一組規則,特別是指計算機的計算過程或規則。 關於“算法”,之前我個人的理解也非常片面,一是認爲“算法”是個現代詞彙,專指神經網絡、決策樹、隨機森林、K-means等一些當前人工智能的主要算法。二是“算法”和“模型”傻傻分不清,當然這和之前自己不懂,一些交流的廠商過度包裝宣傳有關。 讀完本書後,我對“算法”有了新的認識。 算法的英文單詞爲algorithm,該詞來源於阿拉伯語,意思是“來自花剌子模的人”,指的是9世紀一位名叫穆罕默德的數學家,他所著的代數和算術著作被廣泛翻譯,在數學發展史上有非常重要的地位。由此可見,算法是一個跟數學緊密相關的詞。 再回到中文,之所以被翻譯爲“算法”,應該是“計算的方法”的略寫。我認爲可以從廣義和狹義兩個層面來理解。廣義層面,凡是可以用來進行數學計算的方法,都可以稱作“算法”,包括勾股定理、中國算盤的口訣、珠心算口訣等等。 狹義層面,“算法”是指將現實問題轉化爲計算機(包括機械計算機、電子計算機,和未來的量子計算機)可計算問題的方法,當然目前主要還是指馮若依曼架構的電子計算機。具體來說,就是將一個具體問題的解決辦法,抽象爲一組處理過程,這組過程可以用計算機編程語言的判斷、循環、條件語句等來實現。回想起來,我做研究生的時候,學習和運用的有限元(FEM)和時域有限差分(XFDTD)方法,其實也是算法,只是那時都稱爲數值方法。 一般來說,一種算法可以用於解決很多類問題。算法的創造難度較大,其在發展過程中相對穩定,甚至歷久彌新,所以說頂級的計算機科學家也得是數學家。模型,則建立在算法的基礎之上,是用算法解決某一類具體問題的工程化。一個模型有可能只用一種算法,但更多的是用多種算法的組合,即混合算法。 比如,現在正火的自然語言大模型(LLM),其之所以能流暢地與我們對話、寫代碼或進行翻譯,是因爲它背後融合了一系列精妙且強大的算法。其核心算法是Transformer,在模型的預訓練、微調、推理等階段,都還會用到不同的算法。
這本書的英文原名,比中文譯名更直接地透露了作者的用心:《Poems That Solve Puzzles》——解決謎題的詩篇。 爲什麼算法是“詩”? 因爲詩,是用最簡潔的語言,捕捉最複雜的情感;而算法,是用最簡潔的規則,捕捉最複雜的世界。它們都是人類智識的結晶,都是把混沌變得有序的藝術。布利克利——這位從中學就開始編程、擁有四十餘年算法設計經驗的學者——用一本書告訴我們:算法的歷史,就是人類面對未知時,一次次說“讓我算算”的歷史。 一、算法的四張面孔布利克利將算法演化劃分爲四幕劇,每一幕都對應着算法的一次“變身”。 第一幕:算法的萌芽。 在美索不達米亞的泥板上,在古希臘的幾何中,算法是“具象”的——它爲了丈量土地、計算稅賦、預測天象而生。歐幾里得算法流傳兩千年,至今仍在教科書中,因爲它不依賴任何具體數字,是純邏輯的、普適的。算法從誕生之初,就帶着“超越具體”的基因。 第二幕:算法的抽象。 公元9世紀,花拉子米在巴格達寫下《代數學》,讓算法有了自己的名字——“Algorithm”就源於他的名字。帕斯卡和萊布尼茨用齒輪爲算法造出“肉體”,讓計算第一次可以自動完成。算法開始擁有獨立的語言和生命。 第三幕:算法的自動化。 1936年,圖靈用一條無限長的紙帶,劃定了“可計算”的邊界;1946年,ENIAC用18000個電子管,讓算法第一次真正跑起來。算法從“人的技藝”變成“機器的本能”。 第四幕:算法的智能。 今天,算法開始模仿創造它的大腦——識別圖像、理解語言、下棋決策。AlphaGo下出“第37手”,讓所有人類棋手震驚;大語言模型與人自由對話,讓無數人忘了對面是機器還是人。算法不再是工具,它開始做只有“主體”才能做的事。 這條主線清晰可見:算法一步步從“手的延伸”走向“腦的延伸”。它不是一夜之間變成今天這樣的。它走了四千年,走過了無數人的手和腦,才走到我們面前。 二、被遺忘的另一條路讀這本書時,有一個念頭始終揮之不去:在西方這條主線之外,我們自己文明的故事是怎樣的? 於是我做了一個思想實驗——用同樣的“算法視角”,重述中華文明四千年。 我看到了《周易》。陰陽是二進制,六十四卦是狀態空間,爻動是狀態轉移規則,“取象比類”是模式識別算法。而“變易、簡易、不易”——用不變的規則處理變化的世界,輸出簡潔的答案——不正是對算法本質的最高概括?這是三千年前的“元代碼”。 我看到了《九章算術》。246個問題,分九章,每一章都對應國家治理的現實需求:方田(土地丈量)、粟米(糧食兌換)、商功(工程土方)、均輸(賦役分攤)……它不是爲數學而數學,它是爲國家而數學。這是“問題導向、算法歸納”的範式。 我看到了祖沖之。他用算籌迭代逼近圓周率,把精度推到小數點後七位,保持世界紀錄近一千年。沒有計算機,沒有計算器,只有一把小棍子和無數次迭代。這是“迭代算法”的巔峯。 我看到了算盤。它把算籌的“五升十進”變成物理結構,把口訣變成微程序指令,讓計算與身體合二爲一。這是算法的“硬件加速器”。 我看到了科舉、漕運、兩稅法——一套套治理算法,支撐着超大規模社會的運轉。這是一個文明用四千年時間,在回答同一個問題:如何安頓好這世上的億萬人? 這條主線同樣清晰:中華算法傳統沒有走西方“抽象-公理-演繹”的路,而是走了另一條路——問題導向、經世致用、迭代優化。它沒有建成“算法大廈”,但它修成了一條“算法長河”,綿延不絕,滋養衆生。 三、一個悖論與當下的迴響閱讀中有一個問題始終縈繞:爲什麼中華算法傳統沒有走向“抽象-公理-演繹”,沒有建成西方那樣的“算法大廈”? 一個可能的答案是:恰恰是《周易》的“太自洽”,反而限制了突破的衝動。這套系統太完美了——陰陽解釋一切,六十四卦窮舉一切,變易之中有不易。它解釋一切,也就不需要再追問一切。於是,“算的道”被鎖死,“算的術”走向實用。 但悖論的另一面是:實用導向讓中華算法在“術”的層面達到了驚人的高度。曆法精度、工程算法、管理智慧——這是一座“實用算法的摩天樓”。兩條路,各有得失。 這個悖論在今天有了新的迴響。當全球AI創新的“夢之隊”裏華裔面孔頻頻出現——吳恩達、李飛飛、李沐、陳天奇、何愷明——我們不禁要問:爲什麼? 答案或許就藏在這兩條線索的交匯處。中國基礎教育的數學訓練,提供了“教育紅利”;中華算法傳統“問題導向、步驟清晰”的思維模式,提供了“文化紅利”;中國互聯網的超級規模,提供了“場景紅利”。當這三者遇上開放的國際土壤,就結出了豐碩的果實。 種子是好的,土壤正在改良。 四、數的模糊與精確,算的複雜與簡約讀這本書更深層的收穫,是對“數”與“算”本身的理解。 結合《萬物皆數》一書展示數的精確,而歷史中的數從來都是模糊的。甲骨文的“五百六旬”是多少?《周易》的“三天兩地”既是數字又是象徵。而模糊有時比精確更精確——“飛流直下三千尺”比“九千八百七十六尺”更準確地傳達了“極高”。 秦九韶的“大衍求一術”複雜至極,但核心思想極其簡約:反覆迭代直到滿足條件。所有複雜算法背後,都有一個簡約的靈魂——微積分只是“求變化率”和“求累積和”,神經網絡只是“加權求和+非線性激活”的反覆堆疊。 人類最偉大的智慧,發生在“轉換”的瞬間:模糊↔精確,複雜↔簡約。算法,就是轉換的橋樑。 而今天,當算法開始模仿大腦,我們正站在新的轉換點上。不是從“簡單到複雜”“模糊到精確”的線性爬坡,而是螺旋式演化——穿越精確之後,重新擁抱一種新的“混沌”。這種混沌,想把我們習以爲常的“二級思維”(二元對立、層級分明、非此即彼)一鍋端掉。 五、算法視角下的文明讀完這本書,最大的收穫不是知識,而是一個視角——“算法視角”。 這個視角讓我看見文明的“骨架”:那些宏大的敘事——戰爭、革命、王朝更替——是血肉,是皮膚,是衣裳;而算法,是支撐這一切的骨骼。沒有骨骼,血肉無處附着;沒有算法,文明無法運轉。 這個視角也讓我看見:算法不是冰冷的。每一個算法背後,都有人的體溫——巴比倫 scribe 在泥板上刻下數字時的焦慮,祖沖之擺弄算籌時對宇宙秩序的驚歎,圖靈破解Enigma時對千萬人生命的負責,今天寫代碼的工程師對更智能世界的努力。 算法是“詩”,因爲它用最簡潔的規則,捕捉最複雜的世界;算法也是“人”,因爲它記錄的,是人類面對混沌時,那一次次不屈的求解。 四千年前,有人在泥板上刻下第一個數字。他不知道這串符號會走向哪裏。 今天,我們站在算法模仿大腦的門檻上。我們也不知道這扇門後面是什麼。 但我們知道:算法從來不是我們的“他者”,它是我們的一部分。它是我們求知慾的延伸,是我們創造力的結晶,是我們面對未知時,永遠願意說一句 “讓我算算” 的那種精神。 這種精神,還會寫下去。 寫在最後 如果你只想讀一本關於算法的書,這本就夠了。 它沒有公式,不燒腦,但有溫度,有故事,有穿越四千年的視野。它讓你看見:算法不是程序員才需要懂的“技術”,而是每個現代人都該擁有的“視角”。 用這個視角看世界,你會發現:原來我們一直生活在算法之中。
《算法簡史:從美索不達米亞到人工智能時代》是一部面向大衆的算法通史。作者克里斯·布利克利以近 4000 年算法發展的關鍵節點爲主線,串聯起從古代到當代的科技躍遷: 1. 古代起源:泥板上的平方根算法、劉徽與祖沖之父子計算圓周率,展示了早期算法的數學之美。 2. 近代機械計算:從巴貝奇與艾達·洛芙萊斯的差分機,到圖靈機的概念,奠定了現代計算機的理論基礎。 3. 電子計算機與編程:ENIAC 誕生,隨後出現第一條神經網絡、最早的 AI 程序“邏輯理論家”,標誌着算法進入電子時代。 4. 互聯網與信息時代:加密、路由算法支撐互聯網,搜索引擎和社交平臺的排序算法改變信息分發方式。 5. 當代人工智能:深度學習、大語言模型與神經網絡突破,讓算法在 200 秒內完成超算 1 萬年的計算,彰顯算法推動社會進步的強大力量。 全書幾乎沒有公式,通過二十餘位圖靈獎得主的故事和經典算法實例,讓讀者理解算法如何滲透並重塑交通、電商、語音圖像識別、婚戀匹配等日常場景,最終勾勒出一條貫穿古今的“算法簡史”。
一般般,有點浮皮潦草,算法不適合用來講故事,用動畫和圖來解釋還是算法最根本的一種解釋策略。屬於算法與數據結構的第二梯隊甚至第三梯隊的參考書,多看看可視化算法理解起來要更快。另一方面,學科史的關鍵在於學科的motivation,這書這部分寫的不太好,太散了。
算法,即解決問題需要遵循的規則方法,一直覺得這是計算機領域的高深詞彙,但是從古至今生活工作處處充滿算法,從排序,篩選到最短路徑,動態規劃,加密匹配,再到當前的卷積算法(衍生出卷積神經網絡CNN)和自注意力點積算法(衍生出Transformer架構)。 無不感慨每一套解決問題的算法都是天才之作,算法問題表面看是計算機問題實則是數學問題,終於理解爲啥要強調基礎學科的重要性,華爲爲啥要養那麼多的數學家和物理學家,底層算法的一小點突破或許就會在終端產生顛覆性的新變化。 幾點收穫與思考:1> 算法如果被想出,執行就不需要人類智慧。算法由人類的天才“靈感”所想出,同時人工智能也在不斷拓寬人類智慧所能抵達的認知邊界,幫助人類理解“何爲人類獨具的智慧”。圖靈老祖提出“圖靈測試”檢驗計算機是否表現出智能,這項檢驗論跡不論心只對客觀行爲作出判斷但對一堆硅基元件是否有意識不作判斷。或許人類的自我意識和靈感迸發是我們相對於硅基機械地執行算法所展現的智能更加可貴之處。 2> 算法難度可以分爲P問題,NP問題,NP-hard問題後兩者的交集爲NP-c問題,劃分標準爲求解和檢驗是否滿足多項式時間算法,核心是對算法解決問題的效率進行評判。當前對大語言模型的訓練本質上是對神經網絡進行參數調整,屬於NP-hard問題,找解和檢驗解會隨着數據的增加所需算力呈指數增長或階乘增長,脫離了多項式的冪增長。當然這只是理論上,現實中算法工程師的任務當然是放棄全局最優,找出方法使得算力盡量滿足冪增長否則算力消耗成無底洞了。 3> 加密貨幣基於RSA算法(非對稱公鑰密碼算法),通過大質數乘積無法被快速分解建立起安全壁壘,但是這套算法正在逐漸被量子計算所破解,一旦攻克,加密貨幣大廈的“加密”基座蕩然無存。或者往大一點說整個建立在公鑰私鑰體系的密碼學分支都會受到衝擊,包括微信支付寶銀行APP的安全認證,支付校驗,以及淘寶阿里銀行官網等一衆HTTPS網站均會被面臨衝擊。這些年國家政府工作報告對未來新興產業的提法中,總能看見“量子科技”,因爲這真的事關國家安全啊。 4> 量子計算相對於當前的晶體管計算在效率上是降維打擊,是未來計算方式的發展方向。量子向上和向下自旋代表邏輯上的1和0,這與電路的高壓和低壓使得晶體管通斷形成1和0相通,但可貴在於量子是多狀態疊加,計算效率大大增加。不過需要解決量子坍縮問題,即無論中間有多少可能性最終只會隨機輸出一個結果,需要干涉技術進行解決。
《算法簡史:從美索不達米亞到人工智能時代》內容總結 《算法簡史:從美索不達米亞到人工智能時代》是愛爾蘭都柏林大學計算機學院教授、擁有近40年算法設計經驗的克里斯·布利克利撰寫的大衆科普通史,原版書名爲《Poems That Solve Puzzles》,2024年10月由中信出版集團引進國內。全書以近4000年時間爲軸線,以算法發展的關鍵人物和經典突破爲敘事主線,全程無複雜公式、無編程語言,用通俗的語言串聯起算法從兩河流域的泥板刻痕到當代人工智能大模型的完整進化史,同時拆解了算法的底層本質,揭示了其如何從解決具體問題的實用工具,演變爲塑造現代社會、重構人類認知的隱形基礎設施。 一、全書核心敘事框架:算法演進的四大歷史階段 布利克利將算法4000年的發展史,劃分爲四個環環相扣的核心階段,清晰呈現了算法從“思維方法”到“通用智能”的質變路徑,同時兼顧了東西方文明中算法思想的碰撞與互鑑。 第一階段:古代文明的算法萌芽(公元前2000年-中世紀)——生存需求驅動的步驟化思維 這一階段是算法思想的起源期,核心特徵是以解決生存與生產的實際問題爲核心,形成了“有限步驟、明確規則、可重複執行”的算法雛形。 - 人類最早的算法痕跡,來自公元前2000年左右美索不達米亞平原的古巴比倫泥板(如YBC 7289泥板),上面鐫刻着用六十進制迭代逼近√2值的程序化步驟,同時記錄了土地丈量、糧食分配、天文觀測相關的標準化計算流程,印證了算法誕生於人類最基礎的生存剛需。 - 東西方同步誕生了經典的算法思想:古希臘歐幾里得在《幾何原本》中提出的“輾轉相除法”(求最大公約數)、埃拉託斯特尼的“素數篩選法”,奠定了西方算法公理化、邏輯嚴謹的傳統;中國魏晉數學家劉徽的“割圓術”、祖沖之父子對圓周率的精準計算,以及《九章算術》中的“方程術”、秦九韶的“大衍求一術”,則形成了東方算法“實用至上、問題導向”的鮮明特質,始終服務於曆法制定、工程測量等現實場景。 - 9世紀阿拉伯數學家花拉子米的《代數學》是這一階段的里程碑:他系統構建了線性與二次方程的標準化求解步驟,其拉丁化的名字“Algoritmi”最終演變爲“algorithm”(算法)一詞,成爲東西方算法思想交融的核心見證。 第二階段:理論奠基與機械革命(17世紀-二戰前後)——算法從人腦到機器的跨越 這一階段的核心突破,是算法完成了從“人腦的紙筆計算方法”到“機器可執行的指令序列”的關鍵躍遷,同時在理論上完成了對算法本質的嚴格定義。 - 19世紀英國發明家查爾斯·巴貝奇的“差分機”與“分析機”構想,首次將算法邏輯固化到機械裝置中,試圖用蒸汽動力實現自動化計算;其助手艾達·洛芙萊斯爲分析機撰寫的註釋,不僅設計了史上首個機器可執行的算法程序,更預見性地提出了機器不止於數值計算、還能處理符號與藝術創作的可能性,被視爲“程序設計的先驅”。 - 1936年艾倫·圖靈提出的“圖靈機”理論,是算法史上的第一次範式革命。他用“讀寫頭-無限紙帶”的極簡模型,嚴格定義了算法的“通用計算”本質:任何可計算問題,都能通過有限、明確的指令序列實現。這一理論徹底打破了“一個問題一套解法”的侷限,爲現代計算機和算法設計奠定了底層邏輯基礎。 - 二戰的軍事需求成爲算法工程化的核心催化劑。1946年誕生的ENIAC(第一臺可編程通用電子計算機),將原本需要數週完成的火炮彈道計算,壓縮至小時級,標誌着算法正式成爲“計算機的靈魂”,完成了從數學方法到機器語言的質變。 第三階段:信息時代的社會滲透(二戰後-21世紀初)——算法成爲社會運行的基礎設施 這一階段,算法徹底走出實驗室與軍事領域,從專業的計算工具,演變爲滲透到社會生活方方面面的核心基礎設施,重構了人類獲取信息、社交互動、商業交易的底層邏輯。 - 算法的應用邊界快速拓展:理查德·漢明等科學家設計的數值算法,讓天氣預報從經驗預判變爲可精準計算的科學問題;高效排序、搜索算法的突破,解決了海量數據的“大海撈針”難題,爲信息時代奠定了數據處理基礎。 - 互聯網的誕生讓算法的影響力實現指數級躍升:TCP/IP協議相關的路由算法,實現了全球數據的高效傳輸;谷歌的PageRank算法,用“鏈接投票”的機制重構了全球網頁的信息排序邏輯,徹底改變了人類獲取信息的方式;亞馬遜的協同過濾算法、社交媒體的內容推薦算法,則讓算法具備了預測用戶偏好、塑造用戶認知的能力,成爲商業與輿論場的核心力量。 第四階段:人工智能時代的範式革命(21世紀至今)——算法從“執行規則”到“自主學習”的質變 這是全書的敘事終點,也是算法史上的第二次範式革命,核心突破是深度學習讓算法打破了“人工制定規則”的天花板,實現了從“按指令執行”到“從數據中自主學習”的根本性轉變,最終催生了當代的通用人工智能浪潮。 - 布利克利梳理了人工智能的完整演進脈絡:從達特茅斯會議後首個AI程序“邏輯理論家”的誕生,到早期符號主義AI的瓶頸,再到羅森布拉特感知機帶來的神經網絡雛形,以及2006年傑弗裏·辛頓提出的深度學習算法,通過無監督預訓練解決了深度神經網絡的訓練難題,正式開啓了深度學習的革命。 - 書中詳細拆解了深度學習的三次關鍵突破:2012年AlexNet在圖像識別大賽中以碾壓級優勢奪冠,證明了深度卷積神經網絡的強大能力;隨後語音識別、機器翻譯領域相繼被深度學習重構,錯誤率大幅下降;2016年AlphaGo擊敗李世石,讓大衆首次見證了算法在複雜決策領域的超人類能力,而後續Transformer架構的誕生、大語言模型的湧現,則將算法推向了通用智能的新高度。 - 全書也直面了這一階段的核心命題:當算法從“工具”進化爲能自主學習、自主決策的智能體,其帶來的算法霸權、數據隱私、社會公平、通用智能的倫理邊界等問題,成爲人類必須面對的全新挑戰。 二、全書核心洞見與關鍵觀點 1. 算法的本質,是人類解決問題的思維具象化。4000年的算法發展史,本質上是人類思維方式的演進史。從古巴比倫泥板上的計算步驟,到當代AI的千億參數模型,算法的底層邏輯從未改變:用有限、明確、可重複的步驟,解決特定問題。而每一次算法的突破,本質上都是人類對“如何高效解決問題”的思維升級。 2. 算法發展始終遵循“問題驅動”的底層邏輯。每個時代的核心算法突破,都是對當時最緊迫社會需求的回應:古代算法回應生存與生產的計算需求,近代算法回應工業革命與戰爭的效率需求,信息時代算法回應海量數據的處理需求,AI時代算法回應複雜場景的智能決策需求。需求,是算法演進的核心動力。 3. 東西方算法思維的差異,形成了完美的互補。中國古代算法始終以解決實際問題爲核心,走的是“問題-解法”的具象化路徑;而西方算法則以公理化體系爲基礎,追求“定義-定理-證明”的抽象邏輯嚴謹性。兩種思維模式沒有優劣之分,共同構成了算法發展的兩條主線,在歷史中不斷交融互鑑。 4. 算法的演進史,也是權力不斷轉移的歷史。算法從最初數學家手中的紙筆工具,到工程師控制的機器指令,再到如今科技公司手中、能影響社會輿論與資源分配的隱形權力,其邊界不斷擴張。布利克利提醒讀者,理解算法的歷史,本質上是爲了讓大衆看清算法的運作邏輯,避免在算法時代陷入被動與盲從。 三、書籍的核心特色與價值 1. 極致的大衆友好性。全書幾乎沒有使用任何公式與代碼,用生活化的類比、生動的人物故事,把複雜的算法原理講得通俗易懂,即便是中學生、文科生,也能輕鬆讀懂算法的本質與發展脈絡,打破了算法的專業門檻。 2. 人文與技術的深度融合。書中不僅拆解了經典算法的運作邏輯,更講述了超過20位圖靈獎得主、數十位數學與計算機先驅的創新故事,還原了每一次算法突破的歷史語境與個人抉擇,讓算法史不再是冰冷的技術羅列,而是有溫度的人類創新史。 3. 完整的全局視野。全書以4000年的時間跨度,打通了古代與現代、東方與西方的算法發展脈絡,讓讀者不僅能看懂當下AI算法的來龍去脈,更能理解算法與人類文明共生的底層關係,建立起對算法的系統性認知。
原書名爲<Poems That Sovle Puzzels:The history and science of algorithms> ,介紹裏說高中生和文科生也可以讀懂的算法科普史,確實生動有趣!忍不住好奇我們的通識教育,是不是真的支持這樣一本書能讓高中學生讀懂,如果能,真的幸甚至哉!