封存 Archive
封存 Archive
科普系列 - 計算科學不是計算機科學(一)
- 取得連結
- X
- 電子郵件
- 其他應用程式
我想對大部份在中學的同學對「科學」的想法一般都是對生物科,化學科和物理科的認識。 可是對我來說,慢慢發覺科學並不只是這幾們科目那麼簡單,而是一個理解日常生活的一個方式。什麼是「科學」呢?這是一個聽起來很簡單,可是想起來十分難以解答的問題。 我覺得科學是一套理解自然界所有事物的方法。科學的目的,就是嘗試去理解日常生活上面不同事情發生的原因,經過的原理,和所可能導致的結果。所以,科學就是一套嚴謹的辯證系統,希望對人類世界所看見的事情有一套正確的解釋。
傳統的科學,分為理論和實驗兩個步驟。理論就是說,從日常觀察得到的現象運用邏輯推理的方法,從而得到的一門學說。然後再經由實驗不斷的進行測試,如果從無數的測試裏面,這門學說都可以給予一個圓滿的解釋,這個科學理論就得到證實。這個傳統的科學方法,在一些生活問題上有些時候比較難以實踐。譬如說,有一些實驗非常昂貴。我們希望設計一款新的飛行工具,可以用更小的燃料達到更好的效能。如果我真的要把這個飛行工具真實地做出來,然後慢慢研究他的形狀如何影響飛行效能,非常不切實際。以往的辦法,是將飛行工具的形狀按比例縮小,然後放到風洞裏面進行測試。可是如果我們真的要慢慢改變不同形狀去做這個實驗,聽起來也非常花時間。然後也可能有一些非常危險的實驗,不可能無了期的不斷進行測試。譬如說,我要設計核彈,看看他組合成份跟他爆炸威力的關係。根本不可能做任何的實驗。
所以由於這幾十年來電腦發展的速度,就造就了一門叫做計算科學的科學方法。這裏談的計算科學,並不是計算機科學。計算機科學,是對電腦本身的一門學科。可以是關於軟件的製造,也可能是關於編寫程式方法的研究。這裏所說的「計算科學」,是希望運用電腦,幫忙測試和理解科學的一門新方法。上面飛行工具設計的例子,就是一個很好的示範如何可以用計算科學的方法幫我們發展一些新的科技。以數學為例,這個飛行工具設計的例子裏面就包含了很多數學技巧。其中一個是如何解決複雜的偏微分方程。複雜的地方不只在於方程組本身,而且也要考慮邊界條件(就是說機身本身)跟流體之間的互相影響。這些影響就反映在對飛機阻力和承拓力大小上面。而且,如何改變飛機形狀去增加承拓力,也是一個困難而且重要的優化問題。
我們科大化學系教授,嘗試運用計算技巧去認識一些複雜的生物系統是如何運作,從而幫助我們了解如何控制裏面的過程。其中一個曾經聽過的例子,是關於蛋白酶運作原理的研究。蛋白酶對DNA自我複製非常重要。一般我們認識的,就是說「細胞分裂,細胞核內的DNA就會自我複製,細胞從此一分為二」。可是,中間的原理是什麼?需要什麼材料?經過什麼過程?中間的這些問題完全沒有討論。所以如果我們有方法,可以從蛋白酶和DNA的成份結構裏面研究出一個運作原理,對我們了解生命的創造過程非常重要。其中一個研究的方式,就是運用計算技巧,將DNA和蛋白酶這些巨大的分子結構用數學模型的方式表示出來。而他們進行化學反應的原理,就只是一些能量遞減(Energy minimization)的過程。由於方程式非常複雜,所以就沒有方法用人手的方式把能量遞減的過程找出來。可是這些問題對電腦來說就「輕而易舉」(雖然這樣說,我聽回來的,這些計算都需要使用到超級電腦幫助找出這些化學反應中間的過程!)。
- 取得連結
- X
- 電子郵件
- 其他應用程式
留言
發佈留言