2006-10-21

從政治當中可以學到很多東西

我認為自然科學與社會科學很大的一個差異是,自然科學很多事是可以實驗的,透過實驗來觀察你的假設條件及變數之間的關係是學自然科學的人常做的一件事。像是,演算法設計的好不好,除了用數學證明它正確之外,另一個簡單但不周全的方式就是不然就餵它幾個測試資料來跑跑看正確與否,就連醫學都有臨床實驗了,可見得實驗在自然科學當中的重要性。

但社會科學很多事就不能實驗了,像是,我能不能把所得稅從7%提高20%來實驗看看對社會大眾的反應是如何?我認為單一選區二票制比一票制的設計來得好,我能不能今年實驗一下單一選區二票制,不通再換回來?很多情況是不行的,也就因此,在做任何決定的動作時,就得預先把所有情況都考慮過模擬過,確定沒問題再放手去做。

政治尤其是如此,什麼話可以講,什麼話不可以講,什麼事可以做,什麼事不可以做,任何的操作都是一門學問,有時候在看這些政治人物面對一些問題的操作,我都會先問自已,若我是他們面對這些問題,我會怎麼做?

最近發生馬英九與宋楚瑜的馬宋會事件,後來馬英九在外國記者面前爆料把他們密會之間談的東西講出來,這不只在政治上,就算是人與人之間的交往,這事也不宜這樣做,更何況是發生在動見觀瞻的這些政治人物上面,更不要說還有媒体天天把這些事拿出來吵,影響非同小可。

看這些政治人物對議題的操作,再想想自已面對這些事會怎麼操作,還的確能學到一些事。

2006-10-10

hanoi tower

高等演算法作業其中一題要設計一演算法來以最少的步數移動 hanoi tower,與一般 hanoi tower 不同的是,這個 hanoi tower 的碟子是隨便擺的,不是都在同一碟子上面,作業是沒有要求寫程式,不過我還是寫了一程式來測我演算法。左圖是我測試用的 hanoi tower,右圖是排到最後所需的步數,像這樣排列的測試資料花了我程式28步才排完,但發現我的演算法不夠強悍,測試資料一換我的程式就錯亂了,無法正確排列 hanoi tower,原因在於我寫程式常常都是用測試資料來套程式,導致寫出來的程式往往只能處理某一類性質的資料,看來,我的習慣還是沒改過來。