Showing posts with label book. Show all posts
Showing posts with label book. Show all posts

Monday, February 15, 2016

假太陽

這則《假太陽》我是還在學時閱讀,那時啃完後覺得滿震撼的。故事是說人類最熟悉的天體,每天抬頭就可以看到的太陽,竟然是假的!原本真的那個太陽供應的能源只夠地球演化出猿猴,現在這個「假」太陽是被「人」調包過的!

這則《假太陽》故事有點宗教味道,但又不脫(倪匡筆下)科幻橋段,初次閱讀的應該不少人會跟我一樣,整個腦袋瓜轟轟的吧 XD

GodspeedLee 的分享下得知《時間迴旋》一書也有假太陽的設定。趁年假,花了一天的時間,順手把《時間迴旋》啃完了。

就科幻的部分,《時間迴旋》描寫更細膩,它除了會說明太陽跟地球的演化史外,也針對太陽被替換的方式,提出一系列合理的影響。例如說,夜空沒了星斗,月亮也不見了,甚至極光也消失了。這些是很好的科幻素材,依附在上面的人事物也由此帶出。

不過也因為內容描述太過詳盡,加上敘事方式不是很連貫,所以我是覺得有點囉唆。不符合我啃書喜歡挑重點的習慣 :p

Sunday, September 09, 2007

Machine to Transcendent Mind

Robot: mere machine to transcendent mind

前些日子把讀過的機器人書整理上來後,網友 HuaHua 留言推薦了《機器人:由機器邁向超越人類心智之路》。後來我特地跑一趟政大書城,翻閱後才想起幾個月前也在這翻過。如今再次翻閱,還是沒抱回去好好端詳,最大原因是此書主要內容,我在其他諸如書、網路、或論文等,幾乎都涉獵過。

昨天到國家圖書館,無意間發現該書竟躺在那,頻頻向我招手……嗯,這次當然不能再錯過 ^__^

與其說這是本講機器(人)的書,不如說它是探討人造智能(AI)或電腦及機器智慧(Machine Intelligence)發展潛能的書。

Autonomous Mobile Robots

這本書最合我胃口的是第二章〈小心!前有機器車〉,探討作者對機器自走車的實務經驗。裡面提到作者 Hans Moravec 在 Mobile Robot Laboratory 接受 Denning Mobile Robotics 委託,研究如何以二十四個聲納組成的障礙偵測裝置,量測、取得的距離資料,完成自主機器車導航的任務。

聲納是藉由發射一束以三十度角展開的超音波反射回來的聲波來推測距離的,其得到的距離很精確,回音由哪反射回來卻是未知的(因為有三十度的範圍)。所以採用追蹤影像突出特徵的作法無法適用。

作者和學生 Alberto Elfes 合作設計了個新方法解決這個問題。該方法不嘗試找出物體的位置,改而累積計算每個位置所擁有的物性(objectness):

  • 這個架構下,機器人對周遭「物體」的確切身份、甚至存在與否都存疑,但對周遭「位置」的存在卻不容置疑。
  • 因此每個位置被視為一個個永遠存在的水桶,時時刻刻接受並存積著像是小雨般不斷落下、顯示物體佔據該位置的證據。

其具體的作法如下:

  • 將機器人四周的區域以格線劃分,每一小格都紀錄一個數字,代表目前為止,累積對該位置擁有物體(或是該位置空白)的證據。
  • 每當聲納發射一束新的探測聲波,其掃過區域所涵蓋格子的數據,便不斷修正。
  • 格子若位於回聲源,將獲得更多證據,證明有物體存在該範圍內。
  • 格子若位於回聲源與機器人間,將失去這樣的證據(因為若有任何物體存在其間,回聲會從更近的距離傳回)。
  • 由探測聲源往外,聲波強度及其探測準確度,隨距離遞減。所以證據的修正幅度,也要取決於探測聲波在空間中掃過體積(或面積)的大小。

對自主移動機器人有興趣的,想知道機器人如何知道自己身在何方(Localization),如何藉由路徑規劃(Planning),由某個地方到達目的地(Navigation),強烈建議好好翻翻我之前在 Robot Book 閱讀清單也推薦過的 Introduction to Autonomous Mobile Robots 一書。

Power and Capacity

第三章 Power and Presence 主要探討計算能力與機器心智間的關係。曾經關注過電腦發展的人,對這章的推論應該不會太過驚訝:作者一開始先提提怎麼樣能力(如運算速度及記憶容量等)的電腦能達成怎麼樣的任務,然後粗估了人腦運算速度及記憶容量,既然電腦運算能力每年都要倍增,所以估出 2020 年時,個人電腦的能耐會達到人腦級。無論對這議題感到興趣或心存懷疑的,都非常建議也翻翻《心靈機器時代》,當中提到的時間與渾沌的定律The Law of Time and Chaos),很值得一讀。

作者還在這章提到一個非常有意思的主題--電腦史上不同時間點 PC 的記憶容量(megabytes)與運算速度(MIPS)相除,會粗略維持一個常數,約 1 秒鐘(大概等於電腦將整塊記憶體掃一次需要耗費的時間),原因是電腦跟外界溝通的主要對象是人類,所以要受人類的速度感所束縛,原文對這部份描述得很生動:

The megabyte/MIPS ratio seems to hold for nervous systems too! The contingency is the other way around: computers are configured to interact at human time scales, and robots interacting with humans seem also to be best at that ratio.
On the other hand, faster machines, for instance audio and video processors and controllers of high-performance aircraft, have many MIPS for each megabyte.
Very slow machines, for instance time-lapse security cameras and automatic data libraries, store many megabytes for each of their MIPS.
Flying insects seem to be a few times faster than humans, so may have more MIPS than megabytes.
As in animals, cells in plants signal one other electrochemically and enzymatically. Some plant cells seem specialized for communication, though apparently not as extremely as animal neurons. One day we may find that plants remember much, but process it slowly.

Universal Robots

電腦是 Universal Turing Machine, UTM 的一個良好近似,和 UTM 對應的是 Universal Robots, UR 。不同的是 UTM 專職在虛擬的數位空間發揮運算能力, UR 則落實到現實世界裡的感官及行動上。

萬用機器人是第四章的主題,看看作者對這個議題的看法還滿有趣的。而第四章之後的章節雖很讓人眼界大開,但扯得有點遠了,現在還是將它當作科幻小說的情節,看看就好 :p

Suggested Readings

Tags: [] [] [] []

Tuesday, July 31, 2007

Robot Book 閱讀清單

也許拜大廠效應(例如 Google、微軟及鴻海等相繼投入)所賜,也或者只因為熱門 Robot 商品接續問市所致,總覺得這陣子 Robot 愛好者有增多的趨勢。

碰巧這陣子我也 K 了好些 Robot 相關的書,內容包括理論及實作,涵蓋了電子、電機、機械、機構等,趁空檔把這些書整理整理,上來和大家分享 ^__^

要買 Robot 書,原文部份,天瓏那有專櫃,大家可以去翻閱翻閱;此外,若水堂那有許多相關簡中書,許多甚至是日文或英文書的中譯本,強烈建議去那瞧瞧,絕對不會讓您失望的。

以下就把我認為值得一讀的幾本列出來供大家參考:

更詳細的購買資訊,可以參考我利用 Google Docs and Spreadsheets 所作的整理

Tags: [] []

Tuesday, September 12, 2006

How to Read a Book

How to Read a Book

如何閱讀一本書》,幾年前在書街閒逛時隨便翻過。後來 William 又在其 〈研究方法與論文寫作書單〉推薦。終於趁這次的大閱書,到圖書館抱回來研讀。

其實這些年下來,也讀了好些閒書,早習慣閱讀時運用數個書籤,加上各種註記符號、交叉索引、添加細目等。對陌生的議題,也知道多本輪番瀏覽,再選定本精讀。

現在有本書告訴我以上這些技巧還不夠班。當然值得我好好為它整理整理重點:


閱讀的層次 [pp.25-29]

  1. 基礎閱讀(elementary reading)
  2. 檢視閱讀(inspectional reading):系統化略讀(skimming systematically)
  3. 分析閱讀(analytical reading):追尋理解
  4. 主題閱讀(syntopical):比較閱讀(comparative reading)

主動閱讀的基礎:閱讀者要提出的四個基本問題 [pp.56-57]

  1. 這本書整體說來,到底在談些什麼?
  2. 作者細部說了什麼,怎麼說的?
  3. 這本書說得有道理嗎?是全部有道理,還是部份有道理?
  4. 這本書跟你有什麼關係?

兩種檢視閱讀 [pp.41-]

  1. 有系統的略讀或粗讀
    • 先看書名頁及序
    • 研究目錄頁
    • 簡閱索引
    • 讀出版者的介紹
    • 挑幾個看來跟主題相關的篇章來看
    • 東翻翻西翻翻,唸個一兩段,有時候連續讀幾頁
  2. 粗淺的閱讀
    • 從頭到尾先讀一遍,碰到不懂的地方不要停下來查詢或思索
    • 閱讀一本書時,慢不該慢到不值得,快不該快到有損滿足與理解

三種筆記的方法 [pp.61-62]

  1. structural note-making:檢視閱讀時使用。重點是全書的架構。
  2. conceptual note-making:分析閱讀及主題閱讀時所作。關於書的準確性與意義。
  3. dialectical note-making:專用於主題閱讀。

分析閱讀的三階段 [pp.171-172]

  1. 分析閱讀的第一階段:找出一本書在談些什麼的四個規則 [p105]
    1. 依照書本的種類與主題作分類。
    2. 用最簡短的文字指出整本書在談些什麼。
    3. 按照順序與關係,列出全書的重要部份。
      • 將全書的綱要擬出來後,再將各個部份的綱要也一一列出。
    4. 找出作者在問的問題,或作者想要解決的問題。
  2. 分析閱讀的第二階段:詮釋一本書內容的規則 [p145]
    1. 詮釋作者使用的關鍵字,與他達成共識。
      • coming to terms
      • 找出重要單字,透過它們與作者達成共識
      • 每個知識領域都有獨特的專門用語(technical vocabulary)
    2. 從最重要的句子中,抓出作者的重要主旨。
      • 作者的主旨如果沒有理論支持,就只是在抒發個人想法罷了。
      • 一些句子在表達的是疑問,主旨是這些問題的答案。
    3. 找出作者的的論述,重新架構這些論述的前因後果,以明白作者的主張。
      • 「用你自己的話來說」,是測驗你懂不懂一個句子的主旨最好的方法。
    4. 確定作者已經解決了哪些問題,還有哪些是未解決的。在未解決的問題中,確定哪些是作者認為自己無法解決的。
  3. 分析閱讀的第三階段:像是溝通知識一樣的評論一本書的規則
    • 智慧禮節的一般規則
      1. 除非你已經完成大綱架構,也能詮釋整本書了,否則不要輕易批評
        • 在你說出﹕「我讀懂了!」之前,不要說你同意,不同意或暫緩評論。
        • 當讀者不只是盲目跟從作者的論點,還能和作者的論點針鋒相對時,他最後才能提出同意或反對的有意義評論。
      2. 不要爭強好勝,非辯到底不可
        • 每個人的政治權利是平等的。
      3. 在說出評論之前,你要能證明自己區別得出真正的知識與個人觀點的不同
        • 一場好的辯論是不會為假設而爭吵的。
    • 批評觀點的特別標準
      1. 證明作者的知識不足
        • 缺少某些他想要解決的問題相關的知識。
      2. 證明作者的知識錯誤
        • 理念不正確
      3. 證明作者不合邏輯
        • 推論無法使人信服、推論荒謬。
        • 真正的好書,很少在推論上出現明顯的錯誤。
      4. 證明作者的分析與理由是不完整的
        • 除非讀者能精確指出書中的問題點,才能作這樣的批評。
        • 只能因為這個理由,對一本書暫緩評論。

主題閱讀精華摘要 [pp.337-338]

  1. 觀察研究範圍;主題閱讀的準備階段
    1. 針對你要研究的主題,設計一份試驗性的書目。
      • 你可以參考圖書館目錄、專家的建議與書中的書目索引。
    2. 瀏覽這份書目上所有的書,確定哪些與你的主題相關,並就你的主題建立起清楚的概念。
  2. 主題閱讀的五個步驟;閱讀所有第一階段收集到的書籍
    1. 找到相關的章節
      • 瀏覽所有在第一階段被認定與你主題相關的書,找出最相關的章節。
    2. 帶引作者與你達成共識
      • 根據主題創造出一套中立的詞彙,帶引作者與你達成共識
      • 無論作者是否實際用到這些詞彙,所有作者,或至少絕大部分的作者都可以用這套詞彙來詮釋。
    3. 釐清問題
      • 建立一個中立的主旨,列出一連串的問題。
      • 無論作者是否明白談過這些問題,所有的作者,或者至少大多數的作者都要能解讀為針對這些問題提供了他們的回答。
    4. 界定議題
      • 界定主題及次要的議題。然後將作者針對各個問題的不同意見整理陳列在各個議題之旁。
      • 各個作者之間或之中,不見得一定存在著某個議題。有時候,你需要針對一些不是作者主要關心範圍的事情,把他的觀點解讀,才能建構出這種議題。
    5. 分析討論
      • 分析這些討論。這得把問題和議題按順序排列,以求突顯主題。
      • 比較有共通性的議題,要放在比較沒有共通性的議題之前。各個議題之間的關係也要清楚地界定出來。

Tags: [] [] []

Tuesday, July 11, 2006

腦中的海馬(hippocampus)

創智慧》強烈建議海馬迴(hippocampus)在新皮質區域階層中,扮演最頂層的角色。所以我特地找了《海馬體:大腦真的很有意思》複習複習,更詳細地認識腦中的這對海馬。

本書內容以訪談的對話形式進行。受訪者是專門研究海馬迴的學者,是東京大學藥學系助理教授池谷裕二。其對話過程用了許多比喻。雖某種程度可以幫助人們瞭解相關議題,在我看來,卻有資訊密度過低的缺點。

無論如何,書中確實聊了許多有趣的東西:

page 83 到 page 90 提出一系列很具說服力的盲點(scotoma)實驗,說明即使簡單的視覺,也很大成分是大腦建構出來的東西,不是單純的感光輸入而已。

人類海馬迴的神經細胞大約有一千萬個,用來擔任資訊篩選、分類的任務,以避免大腦被感官送來的大量訊息淹沒。篩選資訊時,海馬迴會參考扁桃核的情緒訊號。

睡夢時,海馬迴會把清醒時所發生的事件作整理、回想(reminiscence)、排列組合。海馬迴和大腦各個皮質區都有廣泛的雙向連接,藉此把篩選的資訊,慢慢轉移到各個皮質區。

成年後,海馬迴是大腦少數神經細胞會不斷再生的地方。大多數的神經細胞在人們成年後,只會不斷消亡;嗅神經細胞是另一種會在人的一生中,不斷消亡、再生,細胞更替的神經種類。

池谷裕二據此提出假設:海馬迴只是製造記憶的地方,並非保存記憶的地方,所以經常更新是必要的。海馬迴為了製造記憶而製造一個模子,但這個模子會被推擠到別的地方。因為模子永久留下來會占空間,所以形成記憶後,就把舊模子丟掉,然後準備製造新的模子。 [page127]

有趣的是,池谷裕二還根據實驗證明,神經細胞間的連結,收訊者握有主導權。 [page198]

……

Friday, July 07, 2006

A Big Buying

既然要再回到象牙塔蹲一陣子,趁機大拜書一下是一定要的啦 :)

除了到各圖書館抱些書過過癮外,買書勢必是免不了的!

說到買書,這年頭誰不是在網路買呢?是吧!(事實是有些書在實體書店找不著 :p)

於是我就逛逛 Amazon ,晃晃若水堂,找些對味的:

Modeling Neural Development
上次被關在塔裡搞論文時,就一直想翻翻這本,跟學校請購卻沒下文;如今再次入塔,當然要抱一本回來當枕頭,也好斷了當年的念 ^_^b

The World in my Mind, My Mind in the World
幾年前拜讀了 Aleksander 的論述後,我整理了〈Weighted and Weightless〉;現在出新書了,當然要忙裡偷閒一下,聽聽他說些什麼 ^____^

Second Nature : Brain Science and Human Knowledge
有沒有搞錯!十月才要出版的書,也到上面兜售,想讓人口水乾流嗎?衝著作者 Edelman 是諾貝爾獎得主, 就值得聽聽他想說些什麼~ Hmm... 不過,我是不預購的,暫時放過這本吧 :p

小小世界
這本是 Duncan Watts 的博士論文,雖說是小世界(Small World)領域的經典,但連這都有人翻譯,會不會太閒了,不不不,是太令人感動了。嗯,給它來個最實際的支持…… :p

深入淺出 ARM7
哇勒,好慫的書名喔,這本是大陸那小有名氣的周立功出的,不久前在街上混吃時翻過,藉這次大採購,順便買本回來存參。

Tuesday, June 20, 2006

On Intelligence

上週四(6/15)經過書街,不小心發現此書,瀏覽之下,驚為天人,二話不說,(當下放棄原本採購 LCD 螢幕的計畫)抱一本回去好好端詳先。

竟然還是洪蘭譯的。哎呀!怎麼以前沒發現這本?哦,原來是今年才上架的。雖稍感安慰,但內心還是怪自己太久沒 update 這方面的資訊了。

有趣的是,作者就是那位發明 PalmPilot 的 Jeff Hawkins;更讓人意外的,這本書還有 WatsonKandel 這兩位諾貝爾生醫獎得主推薦。

  • 註一:Watson 於 1953 年和 Crick 共同發現 DNA 雙螺旋結構,是上個世紀生物學最大的發現。
  • 註二:Kandel 是神經科學的權威,也因為突觸變化的效應及其改變如何影響記憶及學習方面的研究,榮獲 2000 年的諾貝爾獎,他寫了幾本 Bible 級的書,跟人合著的《透視記憶》也很值得一讀。
  • 註三:Crick 在得到諾貝爾獎後,將心力整個投入腦神經科學的研究,寫了一本科普書《驚異的假說》,啟迪了許多人相繼投入該領域的研究。

中譯《創智慧》,原文《On Intelligence》,作者 Hawkins 提出一套大腦新皮質(neocortex)運作的理論:

Hawkins 很賞識 Venon Mountastle (1978) 發表的〈An Organizing Principle for Cerebral Function〉,並推崇該論文為神經科學的 Rosetta Stone 。Mountastle 論文中總結說:整個皮質有著共同的功能、共同的計算規則,並且這些是由整個皮質各區域來執行。「視覺跟聽覺沒有差別,聽覺又跟動作的產生沒有差別。」 我們的基因決定大腦的區域間該怎麼連結,這在功能上或物種間有很大的特異性,但是皮質組織本身無論在何處都在做同樣的事。[p81]

「百步算則」(one hundred-step rule)[p99] 告訴我們,人們在一張照片辨認一隻貓的不到半秒的時間內,訊息只可能走了一百個神經元的長度而已(每個神經元要耗掉 5 ms)。而現代的數位電腦需要幾十億的步驟才能做完這件事 。造成這巨大差異最主要的原因是「人腦並不去『計算』問題的答案,它是將答案從儲存處提取出來」。

Hawkins 強調,大腦不是電腦,而是個記憶系統,用來儲存經驗。這些經驗是種途徑,可以反映世界的真實結構,記憶一連串的事件和它們錯雜的關係,然後利用「記憶」來進行「預測」。

這就是「記憶-預測系統」(memory-prediction system)。記憶-預測系統是智慧(intelligence)、洞察(perception)、創造(creativity),及事件知覺(event consciousness)的基礎。

Hawkins 還強調,新皮質的記憶跟電腦的記憶至少有四個基本的差異:

  • 新皮質儲存的是序列的型態(sequeuces of patterns)。
  • 新皮質是自體連結的(auto-associatively)回憶出型態。
  • 新皮質是以不變的結構形式(invariant form)儲存型態。
  • 新皮質以階層性(hierarchy)儲存型態。

第六章〈皮質如何運作〉是本書的精華,也是我費最多時間閱讀的部份:

  • 你的皮質(cortex)必須有一套方法,以記住過去事件的序列並儲存起來;要能對新奇的事件作預測,皮質必須形成不變的表徵(invariant representations)。你的皮質需要創造及儲存外在世界的模式(model),這個模式必須獨立於你周遭不斷變化的情境送進來的型態(pattern)。 [p147]
  • 當你開始瞭解大腦的核心功能是作預測(prediction)時,就需要將回饋(feedback)加到你的模式中,大腦必須能將訊息送回一開始接受輸入的區域,因為作預測需要比較「現在正發生的」以及「預期將發生的」:現在正在發生的是「向上送的輸入」,預期要發生的是「向下流的預測」。 [p154]
  • 整個皮質、所有的感覺皮質及聯結區都是一體的。 [p161]
  • 運動皮質就像感覺皮質,所以皮質處理往下流動的感覺預測,就像它處理往下流動的運動指令一樣。 [p162]
  • 皮質的每一區都形成不變的表徵(invariant representations)。 [p165]
  • 皮質的階層結構儲存了外在世界的階層結構模式,而構築真實世界的結構就反映在構築皮質的階層性上。 [p167]
  • 你對你家的記憶並非儲存在大腦皮質的某一區上,它是存在皮質的階層性中,反映出的正是你家的階層結構。大規模的關係儲存在階層的頂端,小規模的關係儲存在底端,階層性存在於外界及大腦之中。 [p168]
  • 你對外界物體的經驗會產生一個序列,這個序列反應出外面世界的不變性,你所經驗到的世界各個部份的順序是由世界的結構所決定的,……你對外界經驗的順序正是世界真正的結構,這也是皮質真正想記住的。 [p180]
  • 上行皮質階層是彙集型態,下行皮質階層是擴散型態,透過視丘(thalamus)的延拓回饋…… [p190]
  • 在你學習一個序列前,你可以傳遞細節;一旦習得了序列,能成功預測哪個神經柱將活化後,就應該只傳遞固定的型態。 [p195]
  • 知覺和行為是一體兩面。……運動行為也必須有一個不變表徵的階層結構。 [p203]
  • 觀察到的型態向高階傳送,而預測往低階流動。 [p206]
  • 學習的兩個基本成分是「型態分類」以及「建立序列」 ……將同一物體各個型態部份結合起來的方式之一,是將時間上連續發生的型態放在一起。 [p212]
  • 海馬迴(hippocampus)是新皮質最上端的組織,並非分離的結構。 [p217]
  • ……

在閱讀的過程中,不禁想起《Artificial Minds》第十四章有一段這樣的對話:

Q1) What is cognition?
Ans. Enaction: a history of structural coupling that brings forth a world.

Q2) How does it work?
Ans. Through a network consisting of multiple levels of interconnected, sensorimotor subnetworks.

Q3) How do I know when a cognitive system is functioning adequately?
Ans. When it becomes part of an ongoing existing world (as the young of every species do) or shapes a new one (as happens in evolutionary history).

在我看來, Hawkins 提出的 memory-prediction framework 就是大腦執行 structural coupling 的方法。

Francisco 在接受《第三種文化》採訪時也提到:

整個說來,生物的認知不應該當成是表徵外在的世界,應該想成是持續不斷地在「產生」世界,而憑藉的唯一歷程就是生存本身。 [p240]

當初覺得這段話太過抽象,如今再次玩味,頓時具體起來。

如果你 K 完書後還意猶未盡,《On Intelligence》已有自己的首頁論壇。論壇中,可以看到幾篇有趣的討論:

在神經科學方面, Hawkins 創立了 Redwood Neuroscience Institute, RNI 專門研究新皮質(neocortex)。

在電腦實務上, Hawkins 也成立了 Nemunta, Inc. ,利用新皮質運作的原理,發展新型的電腦記憶系統。讓人興奮的是該機構提出了 Hierarchical Temporal Memory, HTM,並釋出了 HTM 的白皮書,有興趣的,可以共襄盛舉。

其他重要的連結:

一些沒有直接相關的連結:

Friday, May 19, 2006

生物、數學、魔術

Jserv 於〈大自然、數學、魔術〉引介的《大自然的數學遊戲》,碰巧我也有收藏(1996),在多次閱讀後,還是意猶未盡。作者 Stewart 在書中傳達的中心思想是:

Nature's rhythms are often linked to symmetry, and that the patterns that occur can be classified mathematically by invoking the general principles of symmetry-breaking.

Stewart 的另一著作《Life's Other Secret: The New Mathematics of the Living World》,譯本《生物世界的數學遊戲》,在得知也由天下文化出版後,當然二話不說,馬上衝去書街,抱一本回來過過癮(Jan 06, 2001)。

套用 Jserv 的說法,《生物世界的數學遊戲》廣泛介紹生物中的數學模式,行文中,好似魔術師的揮舞:

  • 科學的目的,並不在用極端複雜的方式描述世界,而是要清楚闡述,描述的方式必須容易理解。[p13]
  • 我們很容易把基因視為生物發展的組成定律,但事實並不是這樣,基因扮演的角色其實更接近初始條件。……在基因背後還有更深奧的東西,那就是生物學真正的定律,也就是與遺傳密碼相連接的數學法則。[p37]
  • 對稱系統的不穩定性,常導致模式的變化。[p59]
  • 我們對模式形成的大部分瞭解,主要來自失稱(symmetry breaking)。……對稱(symmetry)不是一件東西,而是一種變換(transformation)--一種移動、一種形變、一種把組成要件四處移動的方法。[p60]
  • 失稱告訴我們:物理性質不同的系統,縱使有明顯的差異,但只要對稱性相同,還是有可能產生相似的表現。[p66]
  • 生物體並不是以一個完全線型的胺基酸鏈開始,然後再摺疊起來--這正是那些可怕的計算所要做的。生物體在建造胺基酸鏈的同時,也在把鏈摺疊起來,一次一步,這樣的確可以減少計算的複雜度。[p102]
  • 我們是不是也跟更複雜的風有關?譬如感情的風、記憶的風、人際關係的風?我們有真正的自由意志嗎?我們自己當然這樣認為,但就某種意義來說,我們卻有偏見,因置身其中而無法冷靜、公平地分析。我認為答案可分成兩個層次來看。從我們所瞭解的宇宙這一方面來看,我們有選擇的自由,而且我們經常利用這樣的自由。不過從物理定律的層次來看,我們的外在自由可能是虛幻的,是一種對內在狀態及環境的機械式回應。[p119]
  • catastrophe theory [p182]
  • theory of complex adaptive systems [p184]
  • Andrew Pargellis' Amoeba [p187]
  • 當你建立任何數學系統時,不管是傳統的動力系統或熱衷人工生命者所用的系統,你也會隱含建立一個相空間。相空間很大,包含了所有的可能性,而不只是特定的選擇。如果法則系統有充分的多樣性,那麼各種的可能性就會潛藏自該系統的相空間裡。[p188]
  • Space of the adjacent possible by Stuart Kauffman [p189]
  • Golden number [p201]
  • L-system [p209]
  • 型態發生(morphogenesis)[p225]
  • Cell programming language, CPL by Pankaj Agarwal [p247]
  • 大量減少資訊的最好方法,不是去尋找更高明的方法來為資料檔註加密碼,而是:用可以產生資料的簡單規則,來替代那些資料檔。[p250]
  • 自然界中最常觀察到的模式和型態,將是那些可由最簡單的細胞規則程序所產生的模式和型態。[p250]
  • 感覺系統通常很有數學結構。……由於外面的物體可以到處移動,所以如果某種視覺能在不同的距離及方向辨認出相同的物體,那麼這種視覺就可以發揮十分有效的功能。[p258]
  • ……比較少人知道神經細胞也可以反過來執行,由腦傳遞到感覺器官,這樣一來,腦就可以微調它的感覺,來挑出它認為是最重要的感覺。知覺是雙向的。[p258]
  • Emergent computation [p260]
  • 從最深層的意義來看,宇宙的基礎是對稱。[p265]
  • 步調(gait) [p278~]
  • 正如負責感覺的神經網路一定會模擬外在世界的模式,因此負責運動的神經網路,必定會模擬動物身體的機械性模式。[p280]
  • 演化偏愛規則本身[p312]
  • Cyberspider by Fritz Vollrath [p317]
  • 若要使行為清楚表現出來,則需要瞭解「行為的微積分」--不管這會是什麼。由規則導出行為,是一種數學問題。也許所需要的數學目前還不存在,但是單靠 DNA 序列、尋找蛋白質或是只求助於分子機制,你將永遠無法解答動物行為的難題。[p324]
  • Symplectic geometry [p333]
  • 軍團(Legion)可以處理二十五萬個個體的群眾。群眾裡的人和他們周圍環境都儲存在電腦記憶體中,每個人都會探問周遭的資訊空間,先判斷出那個空間是另外一個人,一面牆,或真的就是開放的空間,然後根據情形來做反應。[p334]
  • 不管是為了要發現最佳移動步驟而深思熟慮得到的策略,還是隨意採取的策略,都會產生幾乎相同的流動模式,即使個體在兩種情形下所依據的移動規則非常不一樣。最主要的決定因素是:建築物的幾何結構。[p335]
  • 結果很吸引人,融合了彈性和數學模式的混合物也很令人鼓舞,但是我們不能再把未來的五百年,耗費在從模擬來推斷觀察可得的原理。我們必須用更為概念上的方法,來掌握這種結構;我們必須用真實的數學來處理這些結構。[p377]
  • Stuart Kauffman 認為,自主系統會隨時間愈變愈複雜--而且會在系統不至於分解的情形下,盡可能快速進行這個複雜化過程。系統的秩序會在一段時間之後增加,並在受到某些限制的情況下用最快的速度來進行。[p386]
  • 第二定律是個統計的定律,聲明了非常可能發生的事,但它是假設所有的可能性都同樣可能。相反的,自主系統的行為則顯示「不是」所有可能性都同樣可能。[p387]
Tags: [] [] [] [] [] []

Saturday, April 01, 2006

世界,已輾平!

Bill Gates 跟我說,「娘胎樂透彩」已經推翻了,地理和人才間的關係已完全改觀。他說,三十年前如果你可以選,你一定寧願是一名出生在紐約州 Poughkeepsie 的庸才,也不願成為一名天才卻出生在孟買或上海,原因是在 Poughkeepsie 過好日子的機率,就算你是庸才,也比孟買或上海的天才大很多,但世界變平了,連線就可以全球競合,才力甩得掉地理羈絆了。

Bill Gates 說:「現在我寧願當一名生在中國的天才,也不要當生在Poughkeepsie 的庸才。」

摘錄自 Thomas L. Friedman 的《世界是平的》,page174。

Thomas 提到全球化經歷三個階段了:
  • 1492~1800「全球化 1.0」,世界由大尺度縮成中尺度,推動的力量來自國家。
  • 1800~2000「全球化 2.0」,世界從中尺度縮成小尺度,推動的力量來自企業。
  • 2000~now「全球化 3.0」,世界從小縮成微小,推動力則來自個人。


看了 Jserv's blog 對此書的介紹,出於好奇,我也去書店抱一本回來翻閱(2/13/2006)。以下就容我偷偷懶,由書中直接抄錄片段,讓大家聞香聞香吧:

個人的力量大增,不但能直接進行全球合作,也能參與全球競逐。個人與群體之所以能夠如此輕易完美地加入全球競逐,利器不是馬力,不是硬體,而是軟體。是各式各樣的電腦程式,加上全球光纖網路的問世,使天涯若比鄰。如今人人都可以自問,也應該自問,我在當今的全球競逐與機會中,如何佔得一席之地?我如何應用自己的力量,與他人進行全球競合? -- page13

我們接下來的是枝節工,你知道報稅需要甚麼嗎?其實創意非常少,會移到海外的都是不需要創意的業務。 -- page16

所有能夠數位化的事務都可以包給價低質佳的遠距工作者。……人人都要擅長提高自己的附加價值。 -- page17

即使接了那麼多美國的外包業務,印度依然藉著經濟成長增加對美國貨的需求。從哪裡來,就回到哪裡去。 -- page30

市場經濟的規則就是,哪裡有最豐富的人力資源、最廉價的勞工,企業自然就會往那兒去。 -- page36

JetBlue 的創辦人兼職行長 David Neeleman 為這種新的作法取名叫 homesourcing 。JetBlue 現在有四百位訂票員都在鹽湖城地區的家裏上班,一邊幫人帶小孩、運動、寫小說、煮飯,一邊接聽訂票電話。 -- page37

光纖過度投資之所以好處久久,與光纖本身的特性有關。與其他種類的網路過度投資不同的是,光纖是持久的,一旦鋪設,不會有人為了供應過剩的問題,再花力氣去挖出拿掉。……每一條光纜都由很多光纖束成,每一根光纖每秒都能傳送很多資料。最初鋪設時,兩端傳送與接收的轉換器容量使用還沒到達極致。不過隨著年復一年,轉換器漸入佳境,每條光纖都能傳送更多的聲音和資料…… -- page65

本來,我只是偶爾上一下咖啡館,現在有了星巴克,我就把咖啡當成一種需求了,這種需求已孕育出一個新產業。我本來就常想搜尋資料,有了 Google ,我沒搜尋引擎就渾身不對勁。這又是一種新產業, Google 大把大把地僱用數學博士,雅虎與微軟也得跟進。大家一直以為,該發明的都發明了。但是,事實並非如此。……歷史上,每一次人類增加貿易與溝通,經濟活動與生活水準都會大幅提昇。 -- page206

Paul Otellini: 「晶片在特定的應用中效能已經很好,但新應用卻不斷出來,需要更強更複雜的新晶片,正是 Intel 的專長。」 -- page207

……在我的字典裡,碰不得(untouchable)的人,就是工作不能外包出去的人。……你必須太特殊、太專業、太懂得深耕,不然就是太會適應,別人才碰你不得。 -- page212

企業應該建立博才團隊,擁有知識技能的豐富組合,才能追求多重商業目標。專才通常技術有深度,卻視野宰,他們的專業同一個圈圈會承認,圈圈外則少人重視。通才視野廣,技術卻沒深度,需要反應的時候行動快,卻常得不到夥伴或客戶的信任。相形之下,博才則能在日益寬廣的狀況與經驗中應用深度技術,一直能學新技能,建立新關係,擔當新角色。 -- page256

在勞動市場管制很重的國家,雇人解雇人都不容易,找工作也不容易…… -- page278

只要是高度競爭的市場,就應該盡可能簡化或解除管制,消費者及人才的競爭就是最好的壓力來源,讓最佳作法出頭。過度管制只會開啟貪污賄賂的大門。 -- page279

各國愈是把經濟與未來綁在全球的整合及貿易上,想跟鄰國開戰就會愈顧忌。……黃金拱門理論認定,當一國的經濟發展到中產階級的規模已撐得起麥當勞連鎖時,它就變成麥當勞國家。麥當勞國家的人民是不會再喜歡打戰的,寧可排隊等漢堡。 -- page358

the Dell Theory of Conflict Prevention: 世界上,隸屬於某一個全球供應鏈的任何兩國,只要還在相同的供應鏈裡,例如 Dell 之類的,就不會真的開戰。大型供應鏈裡的人不會再想打 old-time 的戰爭了。他們要的是 just-in-time 的出貨或提供服務,享受這樣帶來的生活水準提昇。 -- page359
Tags: [] [] [] []

Wednesday, March 29, 2006

Embedded System Design

許多 embedded system ,如 MP3 player, mobile phone, PDA,都內含 embedded OS;也有很多小型的 embedded system ,如 USB controller, Nand Flash controller,是不必動用到 OS 的。 embedded OS 提供的 services,最基本的是 multitasking ,其他如 memory management, protocol stack, file system... 也很常見。

對一些小型的應用,把 OS 納入,不但多耗用硬體資源,還可能使系統變得複雜許多。

一個好的思考點是,「在甚麼情況下,把 OS 安置到 embedded system 內才變得必要?」。

看了《Embedded System Design》,得到了一些啟發,面對這個議題,我內心也有更明確的答案。

簡單說,當系統會動用到 multitasking(或 multithreading)時,就是該找個 OS 來用的時候。

但 linux kernel 著名的 hacker, Alan Cox 卻說了這樣的話:

Computers are state machines. Threads are for people who can't program state machines.

看來剛剛的確把話講得太過「簡單」了 :p

~~

Embedded System Design》提到許多用來描述 embedded system 的 computation model :

  • sequential program computation model: 由一組用來計算的程式指令及決定指令順序的敘述構成。C 或 assembly 都是設計來作這類描述的。
  • communication process model: 支援多個 process 並行執行。
  • finite-state machine, FSM: 以一組可能的狀態,描述系統的行為,無論何時,系統只能處於一個狀態;狀態的轉移,取決於現在狀態、輸入值;動作或輸出發生在狀態中或狀態轉移時。現今電腦硬體結構,就是 FSM 加上 ALU, memory 及 I/O 。
  • dataflow model: 將系統的行為描述成一組節點與邊,節點代表轉換,邊則代表資料由一節點流到另一節點。每一節點耗用由其輸入邊所得到的資料、執行轉換、並在其輸出邊上產生資料,所有節點可並行執行。
  • object-oriented model: 將軟體切割成一個個物件,每個物件有自己的責任、行為,物件間可以建立關聯、傳訊息、相互委託,或組合成其他物件。

描述系統,可混合使用幾種 model 。實務上可根據系統特性,以最方便的方式描述、設計系統,必要時再譯成開發環境支援的方式描述。

為了方便描述系統, FSM 也有許多擴充:

  • finite-state machine with Data, FSMD: 為 FSM 增加了可指定型別的資料變數,將變數讀取當成特殊的輸入,變數寫入看成特殊的輸出。
  • hierarchical/concurrent finite-state machine, HCFSM: 狀態可以有子狀態,形成階層;任何時刻,多個狀態可以並存。
  • program state machine, PSM: 容許用循序程式碼來定義一狀態的動作。

值得注意的是,系統也有可能是控制系統。控制系統藉由設定一實體系統的輸入,設法使其輸出追蹤所要的參考輸入,一個有名的例子是汽車定速控制器。如果辨別出所遭遇是控制系統,那要用到的技巧是自動控制領域的 open loop 或 close loop control, PID controller 這些東西。

~~

那到底「怎麼判定是否要把 OS 安置到 embedded system 內?」

一個有用的判斷標準是,當描述系統最方便的方式是 concurrent process model ,可以考慮找個有支援 concurrent processes, pre-emptive multitasking 的 RTOS 來用。

當然,在下這個決定前,請再次複習 Alex Cox 那句名言:「Computers are state machines. Threads are for people who can't program state machines.

對 sequential program computation model 而言, 用 C 就可以了; object-oriented model 可以用 C++;finite-state machine 可以很機械地翻譯成 sequential program computation model;data flow model 在許多場合都可以簡單地用 sequential program computation language 來描述。

另一方面,《Embedded C》及《Patterns for Time-Triggered Embedded Systems》都提到, Embedded System 可以是 even-triggered 或 time-triggered 的。作者 Michael J. Pont 強烈推薦使用 time-triggered 的方式,尤其是在重視安全的應用。因為相較於 even-triggered 的作法,time-triggered 具有簡單、可預期的優點。

Michael J. Pont還提到, co-operatively scheduler 除了比普遍使用的 pre-emptive scheduler 更簡單、可預測、安全、可靠外,在記憶體及 CPU 運算方面也更節省。可以列入 concurrent system 的替代方案。

Tags: [] [] [] [] []

Wednesday, January 18, 2006

The Silicon Eye

矽眼

在〈The Fitness of Things〉文末提到的《矽眼》,我這個月初在網路上得知此書,於 8 號溜到政大書城購買,當天就熬夜將它閱讀完畢、畫上重點、附上書籤。原本打算寫個評介的,想想還是把我批註的部份整理整理,將內文摘錄摘錄就好:

  • 視覺不是一種感覺,而是一種訊息理解力。[p22]
  • Carver Mead 和他的研究小組發展出對助聽器極有效用的電子耳蝸,也設計出一系列的視網膜晶片。[p23]
  • 一旦你親手建造某樣東西,你就能發掘到光憑思索或測量所無法觸及的層面。一旦了解真意,並抓住其中的物理基本原則,就能發展出更好的實物。[p23]
  • Foveon 相機的特色是,每一個畫素都將影像的真實特徵記錄下來,揚棄數位模擬的方式。[p24]
  • Foveon 的名稱,是由人體視網膜中具有高度色彩解析能力的中央窩(fovea)而來。[p42]
  • 發明的訣竅就在於尋找及延續模式。「這個世界有很多好東西,只要肯去尋找對稱、尋找模式,你就可以找到好東西。」[p49]
  • Peter Ducker 一反常理且無情的定義:「沒有一種改革能夠動搖既有的系統,除非它更優越十倍」。[p59]
  • 在半導體業,一間公司想達到競爭優勢的方法,並不是申請專利然後公諸於世,而是將它藏在製造過程的關鍵步驟內,藏在層層繁複緊密的線路和矽晶設計中。[p70]
  • 對電晶體來說,絕緣又無法通電的 floating gate 是沒有用處的,因為它不能當作控制元件,然而用在 memory cell 上卻很好,因為 floating gate 可以保存電容器的電力長達數年甚至數十年之久。[p77]
  • 只要是任何能簡化成數字的宇宙萬象,數位電腦都有能力模擬。但數位電腦卻無法和真實世界溝通。它們又聾、又啞、又笨、又無生命…人工智慧最大的挑戰不在操弄數字,無論是高中數學或高等微積分,而是真實世界的感官認知──所有視覺、聽覺、觸覺和動作能力,這些是所有生命誕生之後,第一個要學的。[p86]
  • 大腦並不是跟著抽象的時鐘節奏來運作,而是根據訊息進入的時間,再加上同時抵達的其他事件的時機來做運算。舉例來說,大腦能夠從一連串同時出現的、雜亂無章的各種聲音中,區別字和雜音的不同。[p98]
  • Analog VLSI and Neural Systems》 [p102]
  • Misha Mahowald 她的模型涵蓋整個神經組織中的光及能量的流向,從捕捉色彩的視網膜錐細胞,…最後進入皮質層,綜合一切,形成可辨識的影像全貌。從「大量的輸入」到「大量的輸出」,這就是相互關連,有條有理的視覺影像系統。[p116]
  • Carver Mead 的中心思想就是「從做中學」,除非你親自動手作,否則無法徹底了解真相。[p121]
  • Transducer Physiology [p122]
  • Blind Source Separation [p143]
  • Support Vector Machine [p144]
  • 類比似乎只能用在特定的應用上面,流程或輸入必須固定不變。如果要用到記憶體或寫程式,還是需要回歸到數位。[p147]
  • 訊號的時間常數如果在毫秒左右,用類比是很適合的。電荷在你使用前不會衰減,也不會漏掉… [p159]
  • 類比有著極為重要的地位。不過,如果你只需要計算的話,買台電腦就行了。[p163]
  • 大腦是極端區域性的,只有不到 1% 的線路是屬於遙控性質…神經軸索數目大約只占了神經突觸的十億分之一。大腦 70% 的能量處理樹突。雖然 McCullough 及其他首屈一指的類神經網路學者均認為這是一種被動程序,但 70% 這個數據卻意味著一種積極、有改變型態能力的溝通形式。比起 von Neumann 式的電腦,大腦其實更類似 data flow 或 systolic array 。[p171]
Tags: [] [] [] [] [] [] [] [] [] []

Monday, January 16, 2006

The Fitness of Things

突然發現,書架上有好些書都提到 MIT ,其中更有幾本,是以 MIT 為故事背景的。 1999 年購入的這本《MIT 長廊下的思考》是描寫關於「工程史」和「科技想像」的。書中首先提到,早期的工程界,對其中的菁英份子而言,促使他們與眾不同、促成他們成功的背後,潛藏著一股力量,這股力量就是對事物適性的感受力(A sense of the fitness of things):

在 MIT 長廊停留越久,錦囊空間(solution space)就變成一種直覺。它來自於對宇宙的正確思維方式。遊走於這條長廊,你會發現主觀和客觀、物質和精神、事實現狀和該有的情況、人造和自然、發現和發明、天生和創造之間的差異,逐漸消失。

所謂工程,就是把符合利益、想法和願望的性質加以定位組合;只要做得好、剛剛好、很多次,那麼真實世界和想像範疇之間的差異,就會逐漸淡化。

這種以實務和直覺掛帥的情形,後來發生了重大的演變,堪稱工程史上的「奪嫡」事件。早期工程師設法通過錦囊空間時,其慣用的策略,就是建立模式,觀察它如何失敗。這種策略,後來在許多場合,都漸漸失靈了:

整個製作及測試的方法,只有實驗裝置發揮部份效能時,才能取得一些資料;畢竟飛機飛不上天,就不會墜毀,同樣地,一代代瞎子摸象的實驗裝置是學不到什麼經驗的。尤其微波的輻射非常細微,所以設計一再失敗,無法發生作用。

物理學者在遭遇同樣的情形時,剛開始也一樣顯得無力,但他們的專業傾向和性格,似乎比較適合解決這種難題。

物理學者對挫折的典型反應,不是繼續修正,而是放下一切,利用數學精確地描繪出問題,擴充內容,增大視界。當製作及測試的方法一籌莫展時,這種方式經常能夠提供新的想法和嘗試的門徑。

在數學家過來參上一腳後,事情變得更戲劇化,和傳統工程界的見解完全分道揚鑣,這肇因於一種幾乎是全能機器的發明。理論上這種機器只要閱讀指令,就能夠像人一樣連續操作,無須重新設計。這就是取代所有機器的機器──電腦。不論人類可以利用電腦來做什麼,它已經預示了即將發生在工程界的重大變化。

工程科學和自然科學使用同樣的工具,但目標不同。自然科學一旦能夠回答有關自然秩序的一切問題後,很可能就會無事可做。工程科學則是蒐集一切原理,根據這些原理設計可能製造而為人類所需的物件,不必經過製作及測試階段,直接形成錦囊空間的統一理論。

自然科學的最後產物是「神諭」或「合理的答案」;工程科學的最後產物是「阿拉丁神燈」。工程科學也可以視為工程的分支,是另外一種工具的創造,專門製造「邏輯機器」──公式和模式,而非硬體的橋樑或汽車…

科學方面的貢獻,不同於畫油畫。油畫沒畫好之前,並不存在;而自然問題的答案,唯一不確定的是它們將在何時、被何人發現而已。

當前的趨勢,設計的邏輯盡量擺脫物質結構,採用軟體程式。 Carver Mead 卻採用他所謂的 Systems Assembly 策略著手「生物視網膜工程」。 Mead 認為:

以電腦當人腦的模式,對於神經生理學的貢獻極少。原因不在於人腦無法模仿,而在於類似之點的推展還不夠。換句話說,數位電腦和人腦的相似程度仍然不夠,不足以達到目的。製造一個利用神經生理學運作原理的電腦,更加詳盡的模仿人腦,應該是可能的事情。

Mead 企圖以現代的科技,製造一個最接近人腦的東西。如果計畫成功,我們就可以根據這個複雜的「矽腦」的表現,來研究神經生理功能。Mead 的這個計畫從視網膜開始著手。更詳盡的內容可以進一步閱讀《矽眼》這本書。

Monday, December 26, 2005

提琴、數學模擬、魚

昨天由書架取出了 2001 年購入的《 e 貓掉進未來湯》來複習。在〈數位巴哈〉那章,作者為了描述提琴的虛擬數位化身,而提到數學模擬的方式。有兩種傳統的數學模擬方式: 第一種要考慮到所有相關的物理因素,然後巨細靡遺地模擬,這就好像要畫撒哈拉沙漠時考慮每一粒沙一樣。 另一種方式是為所有的輸入及輸出組合,建立一張很大的表格,然後「查表」。

兩種方法對稍微複雜些的系統,例如提琴,都顯得不切實際……昨天由書架取出了 2001 年購入的《 e 貓掉進未來湯》來複習。在〈數位巴哈〉那章,作者為了描述提琴的虛擬數位化身,而提到數學模擬的方式。有兩種傳統的數學模擬方式:第一種要考慮到所有相關的物理因素,然後巨細靡遺地模擬,這就好像要畫撒哈拉沙漠時考慮每一粒沙一樣。另一種方式是為所有的輸入及輸出組合,建立一張很大的表格,然後「查表」。兩種方法對稍微複雜些的系統,例如提琴,都顯得不切實際……

Gershenfeld 和 Schoner 為了解決這個問題,提出了一個叫做 CWM, Cluster-Weighted Modeling 的概念。 顧名思義,他們把影響提琴演奏的變因在相空間的高維軌跡,利用分群及加權平均的方式來處理。書上還提到:因為高維度的資料不好處理,也因為很難找齊影響提琴的所有變因,所以他們採用了 Packard 和 Takens 的 time-delay embedding 方法,利用合理的低維度測量,來建構出系統的行為。

提起 time-delay embedding ,我就想起 Packard 等四位作者聯名的經典〈Geometry from a Time Series〉,以及 Keelungman 引介我閱讀的〈Embedology〉。還記得,在那幾個月,我抱了好些相關文獻回去說,可惜只讀了一些就擱在那,因為後來時間及精力轉移到其他地方去了。唉,有空一定要好好研讀。

既然提到了 Gershenfeld ,他寫的《When Things Start to Think》,中譯《當鞋子開始思考》,當然也要取下來回味回味。在〈透過視窗看世界〉一章,他提出了對人機介面的見解。 Gershenfeld 比較強調既有介面的功能提昇:例如用「魚」取代「鼠」。因為滑鼠只能在平面上跑,而魚可以在空間中閒逛。原本該項技術是用來感測撥奏虛擬提琴時手指的位置,背後的技術是分析電場分佈,後來他們拿來製造「魚」。

值得注意的是:在人機介面上, Gershenfeld 和同樣待 MIT 的 Michael L. Dertouzos 見解不同,Michael 比較強調語音辨識的重要性,這可以參考我前陣子的 blog〈Human centric, 人本運算〉。

雖然如此,他們都預期電腦發展的趨勢就是消失不見,因為各類運算裝置將不再笨重,而是散裂成無數的碎削,無所不在地融入我們周遭。就好像工業革命的代表發明物之一「馬達」一般,它們從原先構想,少數中央大馬達帶動所有需要驅動的裝置,轉換成許許多多藏在各家電內部的小馬達了。

另一方面,同是工業革命的核心之一「電力系統」雖然也隱藏了,但基本上還是由少數幾個發電廠集中供應。當然啦,情況也在改變中,由於發電及儲電技術的進步,電力系統也有小型化的趨勢:例如小太陽能面板用於驅動許許多多小型的電子裝置;還有那還未實用化的各類家庭號或社區型發電系統,一次只供應少數幾棟住宅的電力需求。

由後見之明,我們可以預期運算能力不管是集中供應或分散各處,我們都會好好地把它藏起來,讓人機介面融入我們生活,宛如「恣意呼吸,每一口都是新鮮的活氧」般。

Tags: [] [] [] [] [] []

Friday, December 16, 2005

Human Centric, 人本運算

Michael L. Dertouzos ,前 MIT's Media Lab 主任; 1999 年發起的活氧計畫,是以他提出的人本運算為核心;於 2001 年出版了《The Unfinished Revolution》,中譯本《科技活氧革命》;遺憾的是,他也在書問世的同一年離開這個世間。 Michael 提出人本五大原力(human-centric forces):語音理解(speech understanding)、自動化(automation)、個性化資訊存取(individualized information access)、協同工作(collaboration)、量身打造(customization)。並說明這五原力如何搭配資訊科技,來為人們服務:

無論從事甚麼活動,人本運算都以自然、幾乎無形的方式,幫助我們事半功倍。不妨想像明日的資訊市集(Infomation Marketplace)中,約十億人和數十億台機器都連線起來。不同的人和不同的機器互動得再多,歸納而言也只屬三類:人對機器、機器對機器、人對人。就算有兩者以上互動,仍然不會脫離這基本的分類。

人機互動需要人盡可能以最自然的方式與機器溝通。對我們來說,這就是指「說」和「看」。人機互動也包括透過機器,在全球資訊網龐大的資料庫中尋找資訊;此時個性化資訊存取便派上用場。而要求機器調整程式和資料,使其適合個人的需求,也就是量身打造的意思。機器對機器的互動意指機器們一起從事我們的工作,這就是自動化。而人對人的互動涉及人與人共事的問題,需要協同工作來支援。

一反大部分科技專家的見解所認為的「視覺和語音一樣重要,甚至功能更強」。 Michael 特別強調語音與視覺,規則不同。自然人身上,兩者扮演的角度不同,也應如法炮製道人本運算上:語音對話應該是人機「交流」的主要方法,視覺則應該是人從機器「接收」資訊的主要方法。

有些情況人機視覺交流比較理想,如機器輔助人們學習滑雪或變戲法。但在人本系統中,我們感興趣的是全部的人類活動都能使人機相互溝通。就像電話,單是語音的交流便無遠弗屆。

值得注意的是,現在資訊科技一些新的發展,如一些 Social Software 等。背後的精神,很大部份都有 Michael 提出的一些概念。

例如他在書中提到的「乾草堆」(Haystack)這項專案研究中,就提出了意義附籤的概念。現在最流行的維基百科,還有 Google Desktop 及下一代的 Windows 等,多多少少也利用這個概念,以建立一個區域性的全球資訊網。

Tuesday, November 08, 2005

A Good Solution is Hard to Find

--

國中生就能理解的畢氏定理,古希臘學者竟將它當作祭品獻給上天;數百萬人都能哼唱第九交響曲,卻少有人渴望成為貝多芬那樣的音樂天才。這就是基本的非對稱性——辨識遠比發現來得容易。
-- 摘譯自《Out of Their Minds》〈A Good Solution is Hard to Find〉

--

我想,需要並非發明唯一的母親。一個人必須對問題的背景資訊有正確的瞭解。我並不是對所有遇到的問題都加以研究。而是對那些我所解決的問題,心中覺得真巧,剛好我有獨特的背景知識,可以用來解決此問題!就像命中註定,也是我責無旁貸的。
-- 高德納

--

人們心裡想要的東西,很少是他們真正需要的。他們想要的和需要的,往往是南轅北轍。而在科學技術的發明中,最重要的事便是能符合人們的慾念與需求。
-- Alan C. Kay

--

Friday, November 04, 2005

Improving The Design of Existing Code

標題都這樣下了,當然要祭出《Refactoring》這部經典囉!

這本書問世到現在,重構已經是成熟的軟體技術了,對程式員來說,裡面的東西就如同空氣和水般,融入每天的編程中。

我只是手癢,上來把這部經典裡面的名句摘錄一番,日後也好隨時端詳端詳:

  • 如果你發現自己需要為程式添加一個特性,而程式碼結構使你無法很方便地那麼做,那就先重構那個程式,使特性的添加比較容易進行,然後再添加特性。
  • 重構之前,首先檢查自己是否有一套可靠的測試機制。這些測試必須有自我檢驗(self-checking)能力。
  • 重構技術係以微小的步伐修改程式。如果你犯下錯誤,很容易便可發現它。
  • 任何一個傻瓜都能寫出計算機可以理解的程式碼。唯有寫出人類容易理解的程式碼,才是優秀的程式員。
  • 重構(Refactoring)(名詞):對軟體內部結構的一種調整,目的是在不改變「軟體之可察行為」前提下,提高其可理解性,降低其修改成本。
  • 重構(Refactor)(動詞):使用一系列重構手法,在不改變「軟體之可察行為」前提下,調整其結構。
  • 事不過三,三則重構。(Three strikes and you refactor)
  • 不要過早發佈(published)介面。請修改你的程式碼擁有權政策,使重構更順暢。
  • 程式碼的壞味道。(Bad smells in Code)
    1. Duplicated Code
    2. Long Method
    3. Large Class
    4. Long Parameter List
    5. Divergent Change
    6. Shotgun Surgery
    7. Feature Envy
    8. Data Clumps
    9. Primitive Obsession
    10. Switch Statements
    11. Parallel Inheritance Hierarchies
    12. Lazy Class
    13. Speculative Generality
    14. Temporary Field
    15. Message Chains
    16. Middle Man
    17. Inappropriate Intimacy
    18. Alternative Class with Different Interfaces
    19. Incomplete Library Class
    20. Data Class
    21. Refused Bequest
    22. Comments
  • 當你感覺需要撰寫註釋,請先嘗試重構,試著讓所有註釋都變得多餘。
  • 確保所有測試都完全自動化,讓它們檢查自己的測試結果。
  • 一整組(a suit of)測試就是一個強大的臭蟲偵測器,能夠大大縮減搜尋臭蟲所需要的時間。
  • 頻繁地執行測試。每次編譯請把測試也考慮進去,每天至少執行每個測試一次。
  • 每當你接獲臭蟲提報(bug report),請先撰寫一個單元測試來揭發這隻臭蟲。
  • 編寫未臻完善的測試並實際執行,好過對完美測試的無盡等待。
  • 考慮可能出錯的邊界條件,把測試集中火力在那兒。
  • 當事情被大家認為應該出錯時,別忘了檢查彼時是否有異常如預期般地被拋出。
  • 不要因為「測試無法捕捉所有臭蟲」,就不撰寫測試碼,因為測試的確可以捕捉到大多數臭蟲。

Friday, October 21, 2005

《奈米獵殺》

  學長推薦的《奈米獵殺》真的蠻值得一讀的。洪蘭翻譯,遠流出版。

  整部小說充滿著“視覺效果”,作者要不是對相關場景有過第一手的接觸、認識,實在很難想像這些視覺效果是如何被營造、描寫地那麼生動、鮮明的。

  此外,作為一部科幻驚悚小說,對於《奈米獵殺》,我反倒多了一分親切、少了一分震撼...

  整部小說節拍緊湊、生動鮮明,又是相關科技想像作品的首創,拍成電影,必定能滿足特效狂的口味--這裡真得蠻期待。

  又由於相關的科技,對一般讀者可能稍嫌陌生,該作者就以第一人的方式將相關的背景由主角的旁白引出來。

  這也是我擔心電影會拍濫掉的部分,最直接的表現方式就是安排主角在那“自言自語”,或是安排作者有寫日記的習慣,也許一次在電影的開頭交代清楚,也或者讓主角三不五時就作作白日夢... :p

  要說還有什麼不足的地方,我只能說這部作品真的較著重在“科”、“幻”,對於故事中人物個性、行為的描寫,多匆匆地帶過,要靠讀者自己來填補。

  -- Yukuan 2003/8/18


Forwarded by Jiang Yu-Kuan
----------------------- Original Message -----------------------

作者: ykjiang (Amorphous) 看板: biology
標題: Re: 關於演化論....
時間: Mon Aug 18 00:45:32 2003

  有生物背景的當然都知道「天擇」。天擇也是最令數學家佩服生物學的地方,因為它提出一個簡單、明確、卻有力的機制,來解釋大自然中,關於創造、設計的迷思。

  生物現象中,更隨處呈現「自我組織」的現象。經過電腦科學、應用數學、及理論生物學家的努力,我們已經知道,自我組織也是造就這個宇宙的深刻原理。

  只要環境中的元素夠豐富,它們之間的反應夠多樣,達到一個臨界之後,自我組織是必然發生的...

  就如費曼所言:

「大自然只用最長的線去編織她的圖樣,
 所以每一小片織紋,都吐露出整塊織錦的組織規律。」

  「自我組織」,再加上「天擇」,就造就了自然界的眾生相,從無生命到有生命,從原始到複雜,從萬物到人類,再從人類思想的形成到文明的發展、科學的進步等,都是基於同樣的原理,是那樣地基礎、普遍,那樣地豐富、深刻,就像其他自然律一樣。

  喔,對了,這次是上來向大家推薦一部關於演化、自我組織、生物群集,也關於奈米科技、基因工程及人工生命,它是遠流出版的科幻小說《奈米獵殺》。

  大家都知道《桃色機密》吧!肯定也看過《侏儸紀公園》。嗯,它們都跟《奈米獵殺》是同一位作者,相信再等一陣子,《奈米獵殺》也會搬到大螢幕上放映--事實上它的電影撥放權也被買斷了...


Original: Yukuan on Mon, 18 Aug 2003 10:52:30

Tags: [] [] [] []

Thursday, October 20, 2005

什麼是佛?


  問曰:「什麼是佛?」答曰:「狗屎是佛。」
  問曰:「如何修佛?」答曰:「餓了就吃,睏了就睡。」

  以上引自朱邦復先生《智慧學九論》中第一論〈天理論〉最前面的引言。

  初看直覺得好笑,於看完〈天理論〉後只覺得有理。 :)

  朱先生是倉頡輸入法的發明人,本身的國學造詣頗深,並有一套自己的見解。《智慧學九論》是他個人對智慧學的心得整理。

   書中序言中提到「智慧學」就是「系統概念學」,係將概念的詮釋系統化。透過這個系統,組成一多相交連的「概念網路」,由單一概念可達於萬,由萬亦能回 歸於一。既能在層層的定義下,將概念精確無誤地微分到用機械指令執行,同時又能反本溯源,通透宇宙真實的本體,形成完整的認知。

  但由於《智慧學九論》字句過於濃縮,所以朱先生又譜了一部長篇的科幻小說《宇宙浪子》,希望讀者在娛樂之餘,也能有效吸收他的灼見。

  我個人的讀後見解是,朱先生的確有他自己的一套作學問的方式或思考模式。可以提供我們一個不一樣的看法。

  雖然大家可能會認為其不過是舊酒新裝。但不可否認的是,其對智慧學確實下了一番功夫。因為我對他的想法也還沒貫通,所以也不好發表太多的評論,有興趣的可以自己看看:

  朱邦復工作室 -> 著作下載

  以上網址有朱邦復著作的電子檔供人下載,有興趣的話台灣的書店也找得到一部分這些著作。


Original: Yukuan on Tue, 15 Oct 2002 21:53:50

Tags: [] []

《電腦也搞不定》


  電腦被一些人認為是神奇、無所不能的,竟能完成許多形形色色的任務...
  相反地,另一些人卻持完全相反的看法,認為其純粹是工具,無論如何都不可能擁有如人腦般的優越性...
  以下這本書,就從數學的角度來探討電腦的限制,及這些限制的應用等。

  • 書名:電腦也搞不定--從數學看計算機科學的罩門(Computers Ltd. -- What They Relly Can't Do)
  • 作者:David Harel
  • 譯者:李國偉
  • 出版:天下文化 2002/8/14
  以下就簡述各個章節的內容概要:

前言

  前言主要是說明研究電腦限制的四大動機。

第一章 到底怎麼回事

  快速地解釋、帶過演算法、程式設計等

第二章 有時候我們辦不到

  提出「計算的侷限性也就是知識的侷限性」並將計算問題分作不可計算的、可計算的等區分;其中不可計算的可再分成高度不可計算的及不可計算的等。
  此外,本章還展示了基本的計算裝置、丘奇-涂林論點、可計算性的強健性。當然也免不了提一下有名的涂林機及停機問題等。

第三章 有時候我們辦不起

  前一章提的可計算的問題又可分為好算的和難算的等。說明有些問題就算是可計算的,但由於可能需要消耗大量的時間、空間等資源,所以顯得不切實際。
  此外,還提出演算法計算時間的上界、下界、演算間隙等評估因素。

第四章 有時候我們就是不知道

  主要是提出有名的 NP-complete 問題及其相關的議題。
  如 P=NP? 、近似算法等。

第五章 嘗試減輕痛苦

  嘗試以各種方法來解決難算的問題,如平行計算、隨機化計算、量子計算、分子計算等。
  還舉了隨機化檢驗質數例子、量子式因數分解、 DNA 式 TSP 解法等例子。
  註解中還提出了 NC, PTIME, NP, PSPACE, RP, QP 等其間的關係。

第六章 轉壞為好

  提出密碼學、公開鑰、信息簽名、 RSA 密碼系統、互動證明、零知識證明等議題。並說明它們如何利用計算的困難性來解決問題。

第七章 我們自己能做得更好嗎?

  快速帶過演算法智能、涂林測驗、 ELIZA、經驗法則、知識的內涵、類神經、專家系統、自然語言的瞭解等議題。
  還說明了「雖然很容易認為我們也是個有限機器,所以可以被模擬。
但是真實狀況是,人類的知識庫是難以想像的複雜...」

後語

  ...

~~

  這裡建議對資訊科學感興趣的同好都可以將本書當作入門的導讀。可幫忙釐清一些觀念。


Original: Yukuan on Sat, 07 Sep 2002 02:38:35

Re: 請推薦值得買回家的好書

我對於值得買回家的書有幾個評判標準:

  1. 內容的主旨要能吸引我的注意,令人感到興趣。
  2. 要能學到新知識、以前所不知道的或未曾想過的東西。
  3. 最好能夠激發思考和想像力,帶來新的思維。
  4. 值得一讀再讀的書。
  5. 內容豐富、論述清晰,可用於相關主題的綜灠,發揮導讀的作用。
  6. 急需對某主題來作運用,而能提供詳細的解答及know how,在加上腦容量一時無法記下那麼多skill方面的細節。
  7. 對於此書非常喜歡,雖然可能過一段時間才可能再次閱讀,但擔心想再次閱讀時此書已無法找到了。

其中第 1, 2, 3, 4 點為必要條件,第 5, 6, 7 點為選擇性條件。

無論如何,先介紹幾本書和大家一起分享:

  • 《開放的心靈》"The Open Mind" by DAWNA MARKOVA, 雅音出版公司

    強烈推薦每一位擔任教職工作者都義務性地將整本書熟讀並充分運用,對於自己和他人學習方式的不同點感興趣的也可藉由本書而有一個全新的視野。

    誤會的釐清來自於對彼此的瞭解,作者透過本書來闡述不同人間認知事物過程的差異性,除了使我們對於不同思考模式的人間能有更大的諒解和包容。也提供了明確的解決方案。

  • 理性之夢》"The Dreams of Reason" by Heinz R. Pagels, 天下文化

    作者對於電腦、複雜性科學、科學方法、人類心理、認知及關於心、物間關係的哲學議題作了一番相當深入的探討。並提出其對於這些新知識綜合體的看法及所持的理由。

  • 第三種文化》"The Third Culture: Beyon the Scientific revolution" by John Brockman, 天下文化

    從本書原文的副標「超越科學的革命」即可約略猜出其是一本探討最新科學研究的書。

    全書分成五部,分別探討「演化觀念」、「人工智慧」、「宇宙起源」、「複雜科學」、「在電腦內的演化中的智能」。

    共二十三章,每章都訪問針對由一個學者來對其研究領域最重要的主題作一翻介紹。章末還訪談了許多學者對於此章學者看法的評論。訪談的學者有威廉斯、古爾德、道金斯、古德溫、瓊斯、艾垂奇、馬古利斯、閔斯基、單克、丹尼特、韓佛瑞、法瑞拉、平克、潘洛斯、芮斯、谷史、施莫林、戴維斯、葛爾曼、考夫曼、蘭頓、法默、奚力思等二十三位。

    趕快翻翻你腦袋裡的科學名人錄有沒有者些學者的名字,挑些你喜歡的主題來看吧。

    你應該知道了吧,這本書編排的架構明確,綜灠型的書。如果對相關主題有興趣的話,可發揮導讀的功能。

Original: Yukuan on Tues, 31 Aug 1999 03:04