2008年12月16日 星期二

奚力思 - 電腦如何思考

如果你是從事計算機相關工作或是有點底子的人,我並不推荐這本書。這本概略的帶過了電腦的一些運作方式,以一部介紹書來說算是稱職。但我總覺得講的太淺,感覺沒看到什麼就結束了。

本書分成三部份,第一部份:說明近代電腦工程的其中一個準則,就是功能分離,因果階層架構。第二部份:通用電腦,只有一種電腦,進一步來說,要電腦如人腦一般思考,僅僅是程式設計的正確與否,不需要考慮用在哪個電腦上。第三部份:未來的幾個新方向,全新的電腦設計方式,完全不根據標準工程方式來設計電腦。採用類似生物演化的設計程序,它的系統行為是由許多單純的交互作用累積而成。

接下來帶過書中的一些概念:
1. 提出訊息的定義:造成顯著改變的差異。

2. 設計一個計算機要滿足的條件:可以不管使任何材料,只要有開關跟連結器。開關設計上要是單向的,輸出不可影響到輸入,必須要有還原輸出訊號的能力,才能經過很多級的傳輸,依然保持訊號的完整。連接器要有分支的功能,如此才能輸出給多個輸入。

3. 演算法:作者認為在程式和演算法方面,寫的好的程式,能凸顯自己的風格、策略與幽默,甚至能有與最好的散文匹配的清晰度。

4. 量子計算:電腦之所以要花這麼多時間計算量子問題,是因為它必須考慮無限多種可能。但如果是量子的方式,如水分子的例子,水分子何以能進行那樣了連結,我們想像他是同時嘗試所有可能的組態。我個人是認為水分子連結應該比較像啟發式解法的方式,有點像達爾文的漸進演化,當水分子隨機移動後,進入到鍵結的範圍後,就會不斷的震盪,然後到最佳位置。

5. 啟發式解法:有時問題非常複雜,且不一定有解,這時使用啟發式解法,可以達到幾乎正確的解,使用啟法式的方式要電腦找出最佳解,就好比攀爬高峰,只有不斷往上爬,才有可能登上峰頂;這解法的另一個範例就是生存樹,跟生物學上的漸進演化有著類似的比喻,每次的演化起點是上一次的勝利者,每次跨出一小步,並找出生存下來的路徑。

6. 自我學習系統:所有的學習系統,都是以回饋作為基礎,透過校正錯誤來學習;然後點出現在遇到的困難和未來可能的目標,現有的工程方法,使用分離架構是建構在每件事都按照預期的交互作用。但其中一個環節很容易就整個不能運作,但人腦即使部份受傷也能在不影響生活下繼續運作,使用演化和物競天擇的方式,由競爭選出勝出的軟體,這種演化出來的人工電腦,以排序來說,其速度比現有的所有algorithm還要快,但是程式碼已經是人類不可理解的。如此一來我認為演化出來的程式,很可能超出人類的掌控範圍,這是一個隱憂。

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。