文章

顯示從 2020 起發佈的文章

目錄

20200718 想法源起 20200719 我們在做什麼(一) 20200722 我們在做什麼(二) 20200725 竟然成為數學家(一) 20200729 竟然成為數學家(二) 20200801 竟然成為數學家(三) 20200805 不同職級(一) 20200808 不同職級(二) 20200812 趕客系列(一)為什麼讀大學? 20200815 趕客系列(二)不同大學學位跟工作的關係 20200819 趕客系列(三)大學的目的 20200822 趕客系列(四)大學為什麼要有主修 20200826 趕客系列(五)要挑選一個什麼樣的主修 20200829 沒有無緣無故的恨(一) 20200831 科普系列 - 數學與電影動畫製作(一) 20200902 沒有無緣無故的恨(二) 20200905 沒有無緣無故的恨(三) 20200907 科普系列 - 數學與電影動畫製作(二) 20200909 終身職位的評核 20200912 學術界吸引人的地方 20200914 科普系列 - 數學與電影動畫製作 (三) 20200916 學術界辛苦的地方(一) 20200919 學術界辛苦的地方(二) 20200921 科普系列 - 數學與電影動畫製作 (四) 20200923 大學的讀書成績有多重要 20200926 本科生研究機會 20200928 科普系列 - 數學與圖像修復(一) 20200930 用創新的方法去教育科學 20201003 參加研討會的重要 20201005 科普系列 - 數學與圖像修復(二) 20201007 教授與教學 20201010 研究是什麼(一) 20201012 科普系列 - 數學與圖像修復(三) 20201014 研究是什麼(二) 20201017 研究是什麼(三) 20201019 科普系列 - 數學與圖像修復(四) 20201021 如何閱讀研究論文 20201024 研究生應該修什麼課 20201026 科普系列 - 數學與圖像修復(五) 20201029 本科生的多主修多副修 20201102 科普系列 - 數學與數獨(一) 20201105 幾位教授(一) 20201109 科普系列 - 數學與數獨(二) 20201112 幾位教授(二) 20201116 科普系列 - 數學與數獨(三) 20201119 幾位教授(三) 20

封存 Archive

顯示更多

總結2020和展望2021(警告, 3000字特長文!)

圖片
來到2020年最後一篇文章,總結一下今年發生的事情,也寫一下對2021年的展望。 我猜想2020年對大部份人來說,都是過得非常快,也是非常難過的一年。疫情的關係,全年大部份時間都會留在家。無論是工作,還是上課,很多時候都會在網上進行。記憶裏面的大部份事情,都是在家上網授課或上課,看Netflix,看YouTube,根本沒有太多時間出外遊玩,旅行,或到外國參加會議。記憶裏面根本沒有什麼太多重要的事情,只是一些生活上一點點的瑣碎小事。 今年內最後一次離開香港旅遊,應該是農曆新年到了日本東京幾天的旅遊。還記得那個時候香港和日本還沒有什麼疫情。是有聽到附近某地方隱約傳出好些染疫的例子,大家都開始小心防範。新聞上看到香港很多地方都在爭相採購口罩。那幾天在日本,還是可以在藥房慢慢看一下口罩的產地,然後少量購入。所謂少量,只是指跟在那邊看到其他遊客一箱一箱購入有所不同。那幾天的旅程也一共購入了三百多個口罩。也佔了大約半個行李箱。給了家人和朋友一些,自己終於在幾個月前把這些日本買來的口罩都用完了。 全年上課也是在網上進行。無論是其他教授或者同學,都已經熟習了網上授課的技巧和方式。對科大來說,開始網上授課並不是在農曆新年以後,而是在去年2019年年底,我們有一名同學死亡以後,全校已經開始加強了保安。不但不容許校外人士進入,也不鼓勵同學回校上課。所以在去年秋季學期下半開始,已經開始使用Zoom來上課。當然由於疫情關係,網上教學亦都順理成章的繼續進行。對自己來說,因為這幾個學期所教的科目都不需要進行考試,所以對我來說也是比較簡單。不需要考慮如何更改考試模式,減少不必要的評核過程。也不需要考慮如何設計考題,防止作弊的發生。對其他同事來說,網上授課的好處也漸漸顯現。當你熟習了軟件和教育的方法,大家都開始得心應手,發覺自己可以選擇自己喜歡的地方上課。幾個月前,香港的疫情有一刻是相對平穩,沒有太多的染疫。學校有一刻要求我們決定是否選擇返回面對面的授課模式,有不少同事反對。 由於不需要經常返回辦公室,多了一點時間靜下來想一想自己的工作。在六月時,開始了在網上寫一些文章(https://mathematicsasaprofession.blogspot.com/和https://www.instagram.com/mathematicsasaprofession/),做一下「KOL」。回憶一下自己由

科普系列 - 數學與基因排序(二)

圖片
這個傳統的程序,就好像我們在自己手提電腦上跑程式一樣,只有一部電腦幫你做所有運算。在數學領域裏面,有很多問題如果只用一部普通電腦,可能需要花以年計的時間去運算,才可以得到一個測試結果。如果要加速這個過程,就有可能需要運用超級電腦(Super Computer)幫忙計算。所謂超級電腦,並不是這個電腦可以運行得「超級」快,而是由於電腦有非常多的處理器可以同一時間進行計算運作。用家需要編寫特定的程式,將計算工作盡量平均分給不同的處理器。如果有100個處理器同事運作,理論上一個很好的程式可以只用原來1%的時間就可以得到答案。當然要撰寫這些給超級電腦使用的程式,有時比較麻煩,也可能在實質運用上未能達到期待的加速效果。比較麻煩,是由於程式編寫員有時候需要想像一下如何要不同的處理器分工合作,將整個數學問題解決。這裏已經有非常多的研究去將不同的數值方法進行平行化(Parallelize)去給超級電腦使用。另外一個問題,是由於不同處理器還是需要溝通將計算出來的答案互相使用,所以實質運用上很多時候不一定可以「事倍功半」(花多了一倍的處理器的數目,就可以用少一半的時間)。 返回剛剛DNA排序討論,如果我們想將這個過程加快,一個方式就是希望有一個「超級排序」的方式,可以將一整條DNA分成不同部份及不同儀器進行排序。這個想法,在國際人類基因組計劃裏面亦有出現。計劃裏面,將DNA分成很多不同部份,不同研究組織就會用自己的儀器將分到的DNA部份進行排序過程。當所有的實驗室將這個過程做完,人類基因圖譜亦都大功告成。那現今的DNA排序是如何執行的呢?在坊間經常聽到一些個人的DNA排序,好像不需要全球20多個實驗室幫我們做測試。那如何將15年的時間,縮短成現在所需要的數天呢? 想法其實也差不多。原理是我們將DNA分割成很多不同小段,然後將每一小段發送到不同的儀器同一時間進行排序。仔細執行時可能會有很多不一樣的方法,但這些不同的方法都歸納成稱為次世代定序Next Generation Sequencing (NGS)。這裏有一個問題,在生物課程裏面可能沒有指出過。而且,就算同學是生物科專業,也不一定知道如何把這個問題解決。對,每一小段我們都有方法將它準確地排序出來。可是,過程裏面,我們將一整組DNA隨機分割成很多不同長度的小段,然後又隨機地將這些不同小段依附到晶片(Flow Cell)上面進行複製,最後

本科生時期學習到最特別的知識(二)

圖片
數學考試也要作文 另外一個比較特別的經歷,就是認識到,在數學科的考試裏面也不一定要「計數」或者寫證明。記得在本科生最後一年的時候,終於可以修讀一課在數學系裏面的流體力學課程。老師是我以後在碩士時的指導老師。那個課程內容,我也覺得對本科生來說有點困難。除了需要掌握偏微分方程,亦需要使用到複函數去解決一些流體力學裏面二維空間相對比較簡單的情況。所以課程內容,對同學的數學能力要求也相對比較高。甚至乎還記得,有一些功課我們全班20人都不懂得怎麼做。我要跟TA去討論好幾個小時才把一條題目解決。雖然如此,還是覺得那些時間花得非常值得,非常欣賞這門課以及裏面提到的所有數學技巧。因為課程內容非常豐富也很有挑戰性,我對過去幾百年人類對這科目的貢獻也是衷心佩服。 這門課的後半,介紹了雷諾數(Reynold’s number)如何影響着流體本身的黏度(Viscosity)。指出當這個參數趨向無限大時,流體的黏度就趨向零,流體就會變成無粘性流(Inviscid Flow),數學上就可以用歐拉方程(Euler Equations)去表示。而其他的情況,我們就可以用納維-斯托克斯方程(Navier–Stokes Equations)去模擬流體不同的狀況。 還記得考試的時候,除了要求計算一些複雜的情況,找出不同狀況下流體對飛機機翼所產生的承托力,最驚訝及困難的,是有一條寫文題目,要求我們寫出所有關於這個雷諾數的相關知識。這條題目是一個全新的考試模式。以往從來沒有搭過一份考試卷需要我們用文字作答。看見這條問題的時候,感覺好像在考英文卷一樣,需要寫一篇文章。發呆了一下,便馬上組織一下文章的結構。 現在回想起來,這個經歷其實對我也有一點影響。很多時候我們做數學,以為只需要把數學問題解決,所有事情便完結了。可是在學術界,更重要的是把自己了解到的知識用一個清晰,有條理的方法展現給其他人觀看。所以寫文章,就不可或缺了。如何將自己發掘到的知識清楚地介紹給讀者,需要一些非常困難的技巧。如何由一個想法引領到另外一個題目,需要的,是對知識清楚的掌握。由淺入深,一步一步引領其他人了解到你發掘到的新知識。這些知識和技巧,其實就算以後沒有留在學術界,也是非常重要。寫文章,就是與其他人溝通。沒有解釋自己的能力,在其他工作崗位上面要有良好的發展也會有一點阻力。所以如果可以早一點,把寫文章的技巧掌握到,這對無論是否希望留在學術

科普系列 - 數學與基因排序(一)

圖片
理學院因為看見數據科學在社會上不同地方都有非常多的應用,而且我們的同學好像對數據科學的興趣也非常之大,所以在這學年,我們推出一個全新的本科生課程,叫做「科學數據分析」(Data Analytics in Science)。同學會先在JUPAS進入理學院A組,在第一及第二年修讀一些科學基礎課程和數學課程以後,將可以從四個不同專修(Track)裏面挑選一個自己有興趣的科學科目,然後將學懂的數據分析技巧應用在那一專修項目內的大數據上面。有興趣的同學可以到相關的網頁仔細了解課程內容。我在這裏就不再仔細介紹這個課程。 在那四個專修裏面,有一個叫應用生物科學(Applied Bioscience)。可見在不同生物學相關的領域,也需要用到很多不同數學的技巧。這跟大部份我從中學生聽回來的感覺很不一樣,大部份主修生物科的同學,可能對數學完全沒有興趣。同樣道理,修讀數學科目的同學,會覺得生物學非常困難。給大部份人的感覺這兩個項目完全不相關。可是這幾年我看見不同地方的研究項目,生物學跟數學科可以是息息相關。尤其現代的科學研究,非常着重跨學科研究。目的是希望可以運用不同科目研究的技巧和看問題的不同角度,可以突破一些傳統研究項目的困難。所以在這篇文章裏面,我希望介紹一些跟生物學相關而又運用了大量數學技巧的研究項目,希望鼓勵中學同學可以同時修讀多幾門科學科目。但是由於自己並不是生物專科,中間實驗所需要的原理和程序,可能沒有辦法給予一個仔細的介紹。只能用我都中五程度的生物知識,盡量把我所知道的介紹出來。如果有任何更正,歡迎指出。 前幾年在外國娛樂圈有一宗比較震撼的消息,指出安祖蓮娜祖莉(Angelina Jolie)因為根據自己家族遺傳病的病史,為自己的DNA進行了測試,因而發現了自己患上乳癌的機會相當高。所以在2013年,還沒有發病之前,進行了乳腺切除手術,令到自己不會因為患上癌症而備受折磨 [ 1 ]。這裏不會討論這種手術是否有需要,主要希望討論這個DNA測試裏面所見到的數學。 DNA測序或者排序(DNA Sequencing)本身就是一個非常有趣的科學題目。到底我們如何可以得到一顆細胞裏面DNA這個序列呢?人類一條DNA裏面,有高達30億個核苷酸(Nucleotides)。所謂核苷酸,是DNA或者RNA的組件,也就是我們經常會提到的A/C/G/T符號。傳統的DNA測序過程,需要將整條DNA

本科生時期學習到最特別的知識(一)

圖片
回想大學時學過的知識裏面最特別的,其實還不是在數學系裏面學懂的。當然在三年的大學課程,看見很多有趣的數學發現和應用數學的技巧,在以後的研究生涯裏面得益不少。可是,要說一些比較特別的知識,大部份並沒有跟自己的研究有太多關係。 自私的基因 最特別的知識,可以說是一門課程中學到的一些數學生物學。詳細已經不太記得了。可是最中心的思想,是說所有生物的最終目的,只是把自己的基因傳達到下一世代。當「任務」完成,生命就不需要逗留在世上。最主要的原因,是因為所有生物都必須要消耗有限的資源用以維持生命。所以如果「傳宗接代」的任務完成,就不再應該跟年輕一代爭奪維生的資源。這個理論,亦用來解釋為什麼有些物種會互相幫忙,互惠互利。如果兩個物種他們的基因關係非常接近,「自私的基因」就會指令他們互相幫助,令到這種相似的基因更能在長時間後散播開來。這種論述,亦都可以用來解釋為什麼一些物種甚至不怕獻出自己的生命都要進行交配。在一些動物頻道看見一些雌性蜘蛛,在得到雄性蜘蛛的「基因」後便會將這頭雄性蜘蛛吃掉。雄性蜘蛛當然知道自己在完成「任務」以後很有機會被殺,但為什麼他都甘願進行這個危險任務呢?這套「自私基因」的論述,就可以幫助解釋一些生物學上見到的情況。 這個想法,對我來說是非常衝擊。到底人作為人,最終目的是否只是作為一個「生仔機器」,只希望將自己「優秀的基因」傳到下一代?那個時候,對在中學時候的文化科還是有一點印象。都希望可以從四端的論述裏面,找出一些支持人禽之辨的地方。所以在一門這麼理性的科學科裏面聽到一個那麼赤裸裸的理論,指出甚至人類亦是受着「自私基因」的影響,還是有點震驚。 對自己價值觀衝擊的知識,在其他科目裏面亦都有碰到。在一門社會科學部關於博弈論的課程裏面,亦都提到一些政府制定政策時,如果牽涉到自己國民生命的,可能會直接將每一條人命換成價錢,然後就會衡量這個政策是否值得推行。舉個例子,興建一座核電廠,有某百分比的機會造成核洩漏事故,因而對附近環境造成污染,亦可能令一些人無辜喪命。另一方面,亦有可能減少用煤炭發電令環境污染減少,而且成本亦相對穩定,因此可以帶來很好的經濟收益。那我們如何衡量應否興建核電廠呢?一個方法,就是將所有的影響換成金錢(或者用一個比較學術的字眼叫做效用utility)。如果將所有這些不同結果換成價錢,再用出現的機率作為權衡,我們可以計算興建這座發電廠對國家會造成的效用是

奮發時刻 DSE#13 香港科技大學理學A組 – 延伸主修人工智能和工程學 – 延伸主修人工智能

 11月中的時候,又再受到香港電台奮發時刻DSE的邀請,講解一下科大這個延伸主修的設計。這一次是跟工程學院Albert一起參與,介紹一下理學A組 – 延伸主修人工智能和工程學 – 延伸主修人工智能兩個科大課程。 訪問那天,早上到了一間中學介紹理學院課程,然後參加了一個網上的研討會,下午再參與了數學系一個跟本科生交流的會議。到了晚上參加這個電台訪問已經非常疲累。再加上戴上口罩,可以聽得出上氣不接下氣。 https://www.rthk.hk/radio/radio2/programme/dse_2012/episode/718925

科普系列 - 數學、社會隔離與生命遊戲(四)

圖片
上面這個研究社會隔離現象的數學模型,跟一個叫做「生命」 (Game of Life)的遊戲非常相似。記得有一次到日本旅遊參觀一個藝術館時,看見這樣子的一個裝置藝術。那個展覽廳佈置得像一個生物實驗室似的,保溫裝置裏面有一些細菌培養器,然後有一些投影機有影像投放到螢光幕上。光點會隨着時間而改變。這個裝置藝術的名稱為I’m Humanity,我猜想容易是要參觀的人仔細想一下到底什麼定義生命。在螢光幕上,隨着時間「出生」,「生長」或「死亡」的「細菌」或者光點,到底符合生命的定義嗎?而整個展覽,就圍繞着生命和人性如何在這個大數據年代被機械學習所衝擊。這個展覽裏面的那一個螢光幕上的細菌培養起,細菌變化的方法,看起來就是這個「生命」的遊戲。 這個生命遊戲在1970年被John H. Conway 所發明。遊戲的設定,跟上面社會隔離現象研究的設定差不多。我們也是在一個「細菌培養器」的區域裏面進行計算。跟上面那個應用有點不同在這個生命遊戲內,每一像素點只會有「生」或者「死」兩個狀態。「生」代表着的可能是這一小方格內充滿着細菌或者生命,「死」就代表着這一小格內並沒有生命跡象,可能只有培養液的存在。隨着時間的發展,每一個像素點狀態的改變,都會根據他附近8個像素點的狀態而有所不同。生命可能從一個像素點產生,也可能有細菌在某一小格內死亡。所以遊戲的目的就是看看在不同設定下,生物群組是如何隨着時間發展而演變。 最簡單的生物進化設定,是模擬在真實環境下,細菌是如何根據附近環境而生長。可以歸納為下面幾個規則。 假設一個像素點是在「生」的狀態, 情況一,如果旁邊八個像素點只有少於兩個「生」的狀態,我自己就會死亡(可能是沒有朋友而悶死); 情況二,如果旁邊八個像素點有多過三個「生」的狀態,我自己也會死亡(可能是沒有養分而餓死); 情況三,只有當旁邊八個像素點有兩個或三個「生」的狀態,我才可以維持着「生」的狀態。 假設這一個像素點是在「死」的狀態而且旁邊八個像素點裏面有三個「生」的狀態,我這個像素點在下一個時間就會生出一個新的生命,而狀態亦會從「死」改變為「生」。 這個遊戲的設定相當簡單,如果同學可以編寫程式模擬社會隔離的狀況,這個生命遊戲要編寫起來更加沒有困難。其中一個遊戲的玩法,是同學隨便挑選一個任意的初始條件,然後根據上面提到的生長條件將這一群「生命」進行演化,看看他們生長狀態如何隨着時間改變。這

我的上莊經歷(三)

圖片
  十大傑出講師選舉 另外一個是幫忙舉辦「十大傑出講師選舉」[ 1 ]。這個選舉,科大所有同學會有一人一票,從以往上課的講師裏面投選一名自己認為教學表現最好的。我們會挑選大約10名頒發獎狀。這個選舉,並不是由我們那一屆莊開始舉辦的,應該在我們當選前一屆,已經有這個選舉了。我們那一屆莊認為,以往選舉方式並不公平。其中一個原因,就是由於科大有一些科目,選修同學人數非常多,就算講師表現平平,由於接觸同學的基數比其他人大,當選的機會也會比其他人更多。由於舉辦這個選舉的目的,是希望鼓勵教授加強教育方面的能力去令同學更喜歡他的課,所以我們就決定不再採用一人一票直接選舉的模式。雖然這個模式更簡單,可是如果你看見選舉前幾年的賽果,你就會很清楚見到大部份當選的最佳講師,都會負責全科大一些當年最熱門,最多同學選修的課堂。 所以我們舉辦的那一年,幹事會希望我這個數學系的學生,可以在數學系找一位教授幫忙設計一個比較好的選舉方法。所以自己亦膽粗粗,走到數學系系主任的辦公室,跟鄭紹遠教授問一下有什麼好方法可以重新設計這個選舉的模式。仔細的選舉方式,已經不記得了。我記得我們好像把這10個獎項分成兩部份。其中一部份直接由同學一人一票選舉誕生。另外一小部份名額,我們會根據課堂人數將得票數目加以權重,希望鼓勵一些從來沒有得過獎的學系,或者是一些一直以來都只會做小班教學的教授。所以那一年,我們希望會有一些以前沒有出現過的學系也可以拿得到獎,亦都會有新面孔在那年出現。 那一年選舉的結果對我來說不是最重要。反而是,在組織這個活動裏面,我學習到的反而可能是一些更學術方面的知識。就是說,選舉得出來的結果很可能會根據選舉的模式而有所不同。這個在現時的社會看來,結論毫不特別。我們會看見不同議會會有不同的組成方式,不同投票的方式,和他們所得到不同的權利。這些通通都是制度設計出來的結果。關於選舉制度的討論,一個有趣的數學定理,叫做「阿羅不可能定理」(Arrow's Impossibility Theorem)[ 2 ],網上有很多仔細而且有趣的討論 [ 3 , 4 ],同學有興趣的話可以去找找來看。我在這裏就不再仔細討論不同選舉方式,數學系有一門課,亦都會介紹不同選舉模式和他們背後數學的理論。有興趣的同學可以嘗試拿一些課堂材料自己去學習。以後有機會在這裏分享一下。

科普系列 - 數學、社會隔離與生命遊戲(三)

圖片
基本上這個數學模型已經大致完成,同學已經可以慢慢模擬這個社區的環境如何隨着時間k越來越大時發生改變。這裏可以研究的問題已經有好幾個。這裏我隨便指出幾個。 第一, 這個參數Y*如何影響着隔離的發生。 第二, 是剛起始時標籤A ,標籤B,跟空置房屋這三個的比例,如何影響着最後隔離情況的嚴重性。 第三, 隔離現象出現所需要時間的長短,是如何受到不同參數或不同比例所影響。 第四, 仔細的一點看,我們可以發現隔離區域的形狀很可能會受到不同參數而有所影響。會不會說,參數的席會影響不同區域邊界的長度呢? 第五, 在編寫程式時,會不會有一些更有效率的編寫方式呢?當區域內防止越來越多,我們有時發現程式執行的時間變得非常長。所以對一些編寫程式有興趣的同學來說,程式的執行效率也是一個研究的方向。 上面這幾個研究細項,不需要對模型本身作出任何的改變。上面所有的假設及定義都可以沿用。所以如果同學已經把基本的程式編寫完成,解決上面幾個小問題並不會花太多時間。下面有幾個對數學模型的改變,同學也可改動一下電腦程式,然後看看這些模擬的結果會不會受到很大的影響。 第一, 如何定義「鄰居」。很多時候我們不一定只看貼着我們居住的八個房子,而是可能看得更遠一些。比如說看兩個路口附近的所有房子,我的喜好可能也會受到這一共24個房子的影響。如果每個家庭都看遠丁一點,這樣如何影響這個隔離現象的發生呢? 第二, 社區內每個家庭關於喜好的參數也很可能不一樣。上面定義那個參數Y*為一個常數,不受家庭而有所影響。這個假設可能也不一定完美。反而,更合理的假設,是這個參數會因家庭而變化。我們可以假設這個參數是一個隨機數字跟隨着一個正態分佈(Normal Distribution),而且這個隨機的參數會跟着家庭而搬遷。更複雜一點,這個隨機數字很可能也會隨着時間慢慢改變。始終,人的喜好也可以慢慢被同化。 第三, 當然一般居住區域不可能真的是一個像素點一個像素點這樣的安排。所以如何將居住區域分成不同的形狀,也可能會影響到社會隔離情況的出現。如果我們選用一個複雜一點的區域分割。這個數學模型如何受影響呢?程式編碼時會不會很困難呢? 第四, 不單是「大屋搬細屋,唔見一羅穀」,搬遷本身還是會牽涉金錢。在這個數學模型裏面,我們並沒有考慮任何關於搬遷所涉及的費用。有可能搬遷距離比較遠,費用亦都相對比較多。這

我的上莊經歷(二)

圖片
幹事會所舉辦的活動 我們幹事會那一年,其實也為整個學會做了好幾個活動一路沿用至今。其中一個就是我們的會歌。這首歌在網頁上仍然可以聽到。當然這首歌的作曲及填詞與我完全無關。可是我亦見證着他的誕生。前幾年,學會舉辦了每年一次的「囍宴」(雖然現在已經變成每年一到新生入宿飯),邀請了我們一屆回去參與。聽見差不多100人一起唱這首歌,也有點感動。感覺到就算橫跨了20年,我們還是有一點東西連結着似的。說起這個喜宴的動,好像也是從我們那一屆開始舉辦的。雖然舉辦這個活動的地點,仍然是在社二旁邊的空地,可是那個年代,那塊空地應該是佔據了整個重Hall 2到Hall 4的所有地方(也就是說,應該是現在Hall 6大部份的位置)。在那個年代,整塊地其實是一個很大的停車場。所以如果要在那個地方舉辦一個露天的活動,可以想像難道其實亦非常之高。所以現在想起來,在幹事會裏面那一些工程學系的同學可以從宿舍配電一直到停車場,實在是非常厲害(現在的同學絕對絕對絕對不要做)。 另外一個一直到這幾年還仍然繼續的活動,就是「翱峰嘉年華」。可是由於種種不同的原因,無論是活動的對象和活動的規模,也跟我們年代大大不同。那個年代,由於我們社二學生會不但要照顧Hall 2宿生,也希望舉辦一些活動可以給科大大約¼的會員,我們便決定舉辦了這個嘉年華會,希望在Atrium有一些活動給科大的同學參與。所以這個嘉年華並不會好像現在一樣,只有一個中午的時間有一些表演活動,反而是差不多一整星期,會安排不同的攤檔,Fashion Show,頒獎典禮等等。所以從舉辦這些活動的過程裏面,我們就真的可以有很多機會跟學校不同部門或者校外的不同機構有所接觸。從Atrium和Concourse的預訂,到表演場地的搭建,宣傳物品的購買和佈置,到校外找服裝和化妝的贊助等等,這些都需要很多待人接物技巧的訓練。而這些練習通通都不會在課堂裏面有機會教導同學,亦不可能從功課裏面令同學學習得到。 而那一年最辛苦的,我覺得就是我們需要舉辦兩個給新生的O’Camp(Orientation Camp迎新營)。其中一個是舉辦給全校所有社二的新會員。有很多剛入科大的同學由於沒有機會參與任何迎新活動,所以這一個Camp的目的就是介紹科大給這些同學認識。而另外一個迎新營,是給剛搬進Hall 2的新同學去參與。所以兩個迎新營活動的模式其實差不多,可是作為幹事會會員,就必須安

科普系列 - 數學、社會隔離與生命遊戲(二)

圖片
這個模型相當簡單。裏面只需要運用一些判斷(Conditioning)的技巧,經過時間的演變就會發覺隔離現象的出現。一般同學,都可以了解運作的原理,用一點點時間就可以編出一個電腦程式去模擬這個隔離的現象。 任何數學模型開始時都必須要清楚定義一些假設及設定。假設我們希望了解在社區內兩個不同群體的隔離現象。而我們有興趣的社區是一個在二維空間裏面的一個正方形區間(所以我們不會考慮一些40層高大廈,不同單位對整個社區的影響)。這個區間裏面都蓋滿了平房,道路都縱橫交錯,將整塊區域分隔成一小格一小格的。所以這塊土地,從高空看起來,就好像一張圖像似的。圖像內都是一個像素點,一個像素點的。每一個像素點就代表着一幢平房。平房裏面所住的家庭都用一個標籤界定。由於我們假設在這個社區內只有兩個不同的群體,我們就用標籤A跟標籤B表示這兩個不同的背景群體。所代表的,可能是貧與富,也可能是華人與白人,也可能是喜歡自由黨或喜歡民主黨的。標籤A和標籤B所真實表示的,在這個最簡化了的模型上面並不重要。到後面如果需要在這個模型上加以演變,標籤所代表的才會有少許分別。所以數學上,這個社區內所有的標籤,我們都可以用一個矩陣外表是,我們將它寫X(i,j)。這一個矩陣X裏面這個成員X(i,j),我們可以用1表示這個平房內的家庭有着標籤A,用2表示這個房間內家庭都有着標籤B。而如果這個房子還沒有成交,沒有人居住,我們就可以用0表示。 這裏是一個簡單的初始情況。假設我現在有一個100×100的區域。裏面40%的家庭標籤為A,另外40%的標籤為B。所以整個區域內有20%的房子是空着。剛開始的這個社區並沒有隔離現象,所以標籤A跟標籤B出現的地方都是隨機的。用圖像代表是,我用紅色畫出標籤A所在的像素點,用藍色代表着標籤B家庭住着的房子。而綠色的就是沒有人居住的地方。由於剛開始出現時,不同標籤出現的地方都是隨機,所以可以看見並沒有任何隔離現象的出現,分布都相當平均。紅色和藍色的都沒有聚在一起。 那隔離現象到底是如何出現的呢?Schelling指出,社區內的家庭只需要每人有對鄰居的喜好,隨着時間過去,家庭從一房子搬到另一個居住地方,隔離現象就會自動出現。而這個喜好本身並不需要非常強烈,只需要有那麼一點,我們就會看見不同群眾會自動聚在一起。 跟圖像處理那一系列文章一樣,我們也需要定義「鄰居」在這應用上的解釋。最簡單,我們可以用上

新聞短評

圖片
話說政府新一年施政報告提到,將會放20億元招聘世界科研和創科學者到香港。目的是希望幫助香港的科研和創科發展。 要做研究,當然錢越多越好,人才越多越好。話說兩年前施政報告已經「用了280億元發展創科」 。可是在國際上科研和創科出色的人才,錢,並不是唯一最主要為什麼他要來香港的原因。很多時候,還是要想,我來了這裏,是否有一個環境可以幫助我長遠事業的發展。我放棄了外國的東西,來到香港,是否可以做到一些我喜歡做的事?我有新的想法,是否很多不合理的政策妨礙我? 還是會有不同的配套,幫助我事業發展?香港這些年來所謂創科的發展,根本沒有看見一個什麼好的土壤。用了那麼多錢,成立了一個創科局。這幾年也聽不到他有任何貢獻。 一個經常跟外國朋友說的例子, UBER在香港竟然是非法的。每一個海外朋友聽到時都不敢相信。一個已經存在了這麼久的行業,在香港仍然沒有一個什麼政策幫助他的發展。  這個新聞有兩個比較特別的地方。第一個,根據星島日報報道, 20億元是已經包括了政府對大學每年的撥款和外界捐款。 明報報道就說,這些錢其實是由創科局、教育局和各大學出資的 。到底政府實質額外投放了多少錢做這個項目呢?根據政府新聞處自己發表的資料 ,「預留約每年1.9億元經常開支,支持研究資助局增設三項恆常的傑出學者計劃」。 不是吧,說了這麼多,額外兩億元可以如何幫助香港的科研發展?  更重要的是另外一個問題,根據明報報道,這個特別資助計劃將會由學者,創科業界和政府組成的委員會評審。所以是否就是說,大學現在招聘新教授,如果需要用到這個由大學自己有份出錢的項目,需要由校外人士評核他? 香港真係好支持科研和創科發展。

我的上莊經歷(一)

圖片
自己每一年在新生輔導時都會問他們有沒有興趣「上莊」(就是說組織學生學會,成為幹事會成員)。然後很多時得到的回答,都是說,上裝會很忙,沒有時間,又要付很多錢。自己都明白可能由於「老鬼文化」,要上莊可能亦不是一件那麼容易的事。上莊都必須要付出很多的心機,去計劃一下每年的活動安排,也要應付來自不同地方的挑戰。所以如果同學有想過這個事情,我已經覺得很好了。只要他們會多花時間參與課外的一些活動,我覺得在大學時期有所得着了。 我的上莊生活 回想自己在大學時期,也跟一班同學一起上莊。對,我曾經是科大社二翱峰的莊員(就是說幹事會成員)[ 1 ]。還記得自己剛入科大那一年,我想應該有差不多10位都是從南官(南屯門官立中學)入科大不同學系的舊同學。由於是從屯門到科大就讀,那時基本上一定會有宿位。有好幾個舊同學亦都同一時間被分配到Hall 2。有一天其中一個朋友問我有沒有興趣一起上社二那一支莊,那個時間其實真的沒有想太多。因為剛剛入大學,有太多不同的事情需要熟習,根本沒有時間再去想是否會組織學會。但是,既然是朋友邀請,如果有機會,跟舊朋友一起組織在科大的活動,自己又覺得也不錯。所以其實,亦都是誤打誤撞認識了一大班在科大不同學系和有着不同背景的一些朋友。那一年,社二莊員一共有16位幹事,來自南官的就有四位了。除了我以外,外務副主席,Promotion Sec和Recreational Sec都是我的舊同學。 同一個幹事會裏面,Dr. Karen Mak亦在裏面。所以那一屆幹事會人才濟濟。 我們上莊以前是否需要花很多時間拉票呢?現在想起來也真的沒有太多記憶。我應該從來沒有「走過堂」和Tutorial,甚至乎功課當然也交足。宣傳活動想來想去也真的沒有太多。可能也只是在電梯旁發發傳單,介紹一下自己的莊員,介紹一下自己,希望當選成為社二翱峰的莊員。可能那個時候科大還是非常新,沒有所謂的學會傳統。我們基本上從來沒有任何關於Chanting的行為,也從來不需要花很多時間去建造一件很大的宣傳物品參加Pro-P(Promotion Period)的比賽。我們也沒有需要做2-30次AGM(Annual General Meeting)去得到認同才可以上莊。所以自己那個時候組織學生會,可以說是相當輕鬆自在,也不需要花很多時間和金錢就可以得到一個Title。 自己在莊裏面是非常不活躍的一員。大家都明白,作為一個

科普系列 - 數學、社會隔離與生命遊戲(一)

圖片
應用數學的目的,是希望用數學的方法去了解或解釋一些在日常生活上面看見的問題。中間的過程有好幾步,首先我們需要將日常生活上面見到的問題作出一些設定或者假設,將生活問題幻化成一個數學問題。這個問題可能不會有一些簡單的數學解決方法,所以我們必須要作出一些簡化,令到這個數學問題可以有一些相對比較簡單的解。當然這些解可能將問題過分簡化,在日常生活上,就不會提供到太多重要的解釋。要洞察到這個問題的本質,我們可能需要將這個過分簡化的數學問題作出相應的演變,令到得出來的解更符合日常生活所觀察到的。這一個簡化,解答,再跟生活觀察比較,然後將問題演發再解答的過程,叫做「數學建模」。 這個數學建模的過程在很多不同範疇裏面都可以見到。在這篇文章裏面,我們找來一個在經濟學上的應用,看一下到底數學如何用來解釋在社會學上的隔離(Segregation)現象。所謂社會隔離(Social Segregation),就是指我們在社會上很多不同情況下都會看見一些群眾自我分隔的行為。比如說不同城市,我們都可以看見富人區跟貧民區自動分隔開來。政府當然不會有一些主動的政策將人們分開,可是人們會「自動自覺」,富有的人會更富有的人居住在一起,相對貧窮的人自自然然會走在一起。當然每個社區的人口分布,或者每個城市的歷史背景不同,都會影響到這些貧民區的出現。可是,會不會有一些數學的模型,可以嘗試解釋這個問題的出現,然後可以令我們制定到一些可以幫助貧困人口的政策呢? 另外一個例子,就是在不同國家,不同城市我們都可以看見一些因為種族而出現的小社區。譬如說在美國不同大城市我們都會看見中國城(China Town),日本城(不是說那個$10商店,而是Little Tokyo),越南城等等的小社區。圖內可以看見在洛杉磯不同地區人口種族的分布 [ 1 ]。可以看見大部份區域都是西班牙裔(Hispanic,其實是墨西哥裔),在洛杉磯市中心東面,可以看見一群亞裔人士的居住地。那個Monterey Park,Alhambra,一直到Acadia的地區就是新的中國城,裏面居住着大部份華人。還記得在UCLA唸書時,我們一班香港來的同學,差不多每一個星期都會往哪個地區跑一次,到港式茶餐廳吃一下焗豬扒飯,喝一杯凍檸茶,或者到那邊「飲茶」吃一下點心,都是我們每星期不可或缺的生活。當然這些因為種族關係而出現的小社區,不單在洛杉磯可以找到,在美國大部

幾位教授(三)

圖片
Prof. Jianliang Qian 反而在博士研究的時間,花了最多時間和Stan的那時候的一個博士後Prof. Jianliang Qian [ 1 ] 一起做研究。所以如果看研究成果,Jianliang也可以說是我半個指導老師。那個時候其實他提議我一起做一些關於高頻波(High Frequency Wave Propagation)計算的問題。裏面亦都用了一些水平值計算。由於自己對這研究方向就蠻有興趣,而Stan亦沒有太大的反對,所以我們就一起做了好幾篇關於高頻波計算的文章。然後我就提議不如我們做一些相關的反問題。由於我們有一些很好的前向問題計算方法,在解決返問題是就能有很有效率的解決辦法。以探石油為例子,如果地底下面的土壤結構是已知的,我們就可以在計算區域內找到所有的聲音傳播速度。所以正向問題的例子,就是說重計算邊界的一點聲音傳播到另外一點的時間是什麼。而相對應的反問題,就是問,我們可不可以從這些聲音傳播的時間找出區域內每一點聲音傳播的速度。 由於這幾篇反問題的文章,亦令到我有機會第一次到侯斯頓參加一個地質學的學術會議。因為舉辦會議的組織是Society of Exploration Geophysicists(SEG),我譯作勘探地球物理學家協會,這個經歷讓我看見不同研究領域的人一些不一樣的研究方式。他們大部份所做的例子,都是從真實探油的數據所獲得,而我們做的例子大部份都是一些很簡單自己做出來的數據。所以看起來,我們做的研究就好像玩具模型一樣,看起來非常簡單。而他們所做的,就是一些實際應用上面得到的例子,對人類生活可能有更重要的影響。可是對我而言,研究的目的是去建立一些新的知識,重點並不一定在於測試是數據是否充滿噪音,或者是否從實際生活上拿過來。後來Jianliang跟我仍然繼續設計不同關於高頻波計算的方法,也做了好幾篇有意思的研究論文應用到波方程(Wave Equation)以外譬如薛定諤方程式(Schrödinger Equation)的計算方式。這些都對我日後的研究方向有很大的影響。 Prof. Hongkai Zhao 前面提到好幾次我跟UC Irvine的淵源,那時候博士課程畢業在找博士後的時候,剛巧UC Irvine的Prof. Hongkai Zhao [ 2 ] 在找博士後。他是2007年第七屆馮康數學獎的得主 [ 3 ](同年的得獎者也

科普系列 - 數學與數獨(三)

圖片
總括來說,我們到現在為止一共收集了64條方程式,裏面一共有64個不同的變數。看起來好像方程式的總數跟要解決的變數數目是一樣,我們可能馬上就會猜想可以從這個64元一次方程組裏面找到解決這個Shidoku的答案。我是這裏有個問題, 64條方程式裏面其實並不包括任何有關遊戲開始時所給予的任何提示。所以我們根本不可能從這64條方程式裏面找出一個解。我們要解決的線性代數問題,其實是必須要從這64條方程式裏面再加上開始時提到的提示,所以假設遊戲開始時有\(N_c\)個提示,我們要解決的方程組就會有\(64+N_c\)條方程式。 這一段的討論,可能需要有一點數學的背景。如果同學有修讀過本科生的線性代數,另外一個數學問題,就是左手邊的矩陣並不是Full Rank的。如果我們並沒有任何提示(是說 \(N_c=0\) ),左手邊這個64×64的矩陣,Rank只得40。所以這代表着,如果這個代數問題需要找到唯一的解,我們就必須起碼多加上24條linearly independent的橫行。這樣,我們才可以找得到一個Full Rank的問題然後得到一個唯一的解。根據同樣的演示方式,一個9×9的數學問題,我們可以把它還化成一個 \(324+N_c \)的方程組,而每一條方程式都會有729個未知數。不理會遊戲開始時所給予的提示,那一個324×729的矩陣,Rank只會有249。也就是說,我們必須要多追加起碼729-249=480條linearly independent的橫行,我們才可以找得到一個Full Rank的問題然後得到一個唯一的解。 當然,在Shidoku這個遊戲裏面,一共只有16小方格,所以根本沒有可能多加24條方程組給那個線性代數問題。在Sudoku裏面,要有另外480條提示也非常之不合常理。所以在這個討論裏面,有什麼問題呢? 最主要的問題,是在本科生的線性代數討論裏面,我們容許答案存在於高維空間裏面的任何數值。要記得,我們這個演示方式只容許每一個未知數不是等於0就是等於1。所以,我們其實只容許答案存在於一個很小的空間裏面。雖然說很少,這些非0即1的答案,卻會有\( C_{16}^{64}=4.8853\times{10}^{14} \)(Shidoku)或者 \(C_{81}^{729}=1.2950\times{10}^{109} \)(Sudoku)個。由於可能的答案數目相

幾位教授(二)

圖片
Prof. Stanley Osher 至於自己的研究指導老師Prof. Stanley Osher [ 1 ],其實有在科大碰過面。在美國的第一年,也認識Stan做的研究課題。知道他是計算流體力學的專家。有很多計算方法也用他的名字命名。自己在科大碩士時做的研究,也見過他的名字。所以在學術界上面Stan是非常有名的。記得在UCLA讀完第一年,暑假回到科大跟碩士時的指導老師許為厚教授作研究員,嘗試再把以前碩士時做的東西多做一下,看看有沒有一些研究成果出來(很可惜是沒有)。那個暑假,Stan剛巧也在科大訪問。所以找了一天,膽粗粗的,走到他辦公室裏面跟他聊天。跟他說我也是在UCLA的博士班。那當然,他完全不知道UCLA的學生有誰。所以聊了一會,也沒有太多話題,然後我就離開了。離開以前,他只是要我把名字寫在白板上,我猜想或許他之後就跟鄭紹遠教授或者許為厚教授問了一下我的背景說不定。由於對他做的研究方向很有興趣,所以那個暑假也特別找來了一些關於水平值計算的研究文章來看一下,看看到底是什麼一回事。 Stan的研究範圍非常廣,不單每隔幾年都會從一個研究方向轉到另外一個研究方向,而且每一個研究方向他都會有一個非常大的發現,對整個發展的方向會有重大而且深遠的影響和改變。前面提到他對計算流體力學研究的貢獻,之後,他已經跳到水平值計算方面。所謂水平值計算,是一個數值方法去代表一個運動中的介面。通過不同運動的模式,這個介面將會隨着時間的過去形狀而會有所不同。比如說,你在模擬一個氣泡在水裏面運動的過程,不可避免地需要有一個介面表示方法去代表着介面的位置。由於水流的關係,這些氣泡有可能將會幾個融合在一起,也有可能從一個大氣泡變成很多小的氣泡。所以介面表示方式就必須要能夠簡單而且容易地去改變他的狀態。這個研究方向,亦都慢慢從流體力學那方面,發現到很多不同的應用。而自己的一個主要研究方向,正正是運動中介面計算的方式。在我唸博士班時, Stan都從水平值方法的應用,跳到圖像處理的研究方面。那時候,他剛剛發現到一個辦法解決自己以前圖像處理方法裏面的一個問題。他設計的ROF (Rudin-Osher-Fatemi)方法應用在圖像去除噪音的問題試後,會發現圖像裏面有部份資訊會同一時間被消除。所以在去除噪音後,除了噪音亦有某一部份圖像的訊息會不見了。那個時候剛巧他從一個優化問題的解答裏面發現了解決自己問題的

科普系列 - 數學與數獨(二)

圖片
這個方法的第一步,是需要把這個數獨遊戲的問題作出改變,將他變成一個我們有其他方法解決的數學問題。這種解決問題的辦法在數學界非常常見。如何把一個問題重新寫成另一個我們可以解決的問題,這需要數學家對問題掌握的能力和他對不同數學範疇的理解。 為了簡化之後的討論,我們先從一個比較簡單的數獨遊戲着手。我們考慮一個4×4 數獨遊戲,英文叫做Shidoku。遊戲原理跟9×9的一樣。只是我們要填進去方陣的數字改變為一到四。遊戲條件裏面的九個宮就改變為四個宮,每個宮的定義也改變為一個2×2的小方塊。每一個方陣的數字我們會用x(i,j)表示,代表着由上面數起第i橫行,又左手面起第j直列的數值。這個數值是從一,二,三和四裏面挑選。這個表是發,我們只需要儲存起最多 16個小格的數字。當然並不是所有16格的數字我們都從一開始便知道,所以如果真的需要在電腦裏面儲存起這個數獨,我們可以用一個拉丁方陣的表示方式,只需要儲存i,j,和在這個位置相對型的的值。用左手面這個例子,我們只需有用一個8×3的方陣就可以代表這個遊戲。八,是由於我們有八個提示。三,是由於相對每一個提示,我們必須要儲存三個數字。 1,4,3 2,1,3 2,2,2 2,3,4 3,2,4 3,3,3 3,4,2 4,1,2 這個表示方式聽起來好像要儲存的數字比原來的更多,可是在原來9×9的數獨遊戲裏面,我們只需要用N×3的方陣就可以代表一個遊戲。如果遊戲給予的提示是少於27個,這個新的儲存方式所需要代表的數字就比原來的小。 我們也可以用標籤作為一個遊戲的表示方式。由於每一格的數字都必須是由一到四其中一個整數,除了把這個數值儲存起來,我們也可以想像在每一小格向上延伸多四個小格,標示着這個遊戲小格所代表的數字。數學上來說,我們假設x(i,j,k)是小格x(i,j)是否等於k的表示。如果x(i,j,k)=1,就是說x(i,j)=k。如果x(i,j,k)=0,就是說x(i,j)≠k。以上邊x(1,4)這方格為例。由於所給的提示說這方格儲存的數值為3,所以這個用標籤作為表示的方式,我們得到x(1,4,1)=0, x(1,4,2)=0, x(1,4,3)=1, x(1,4,4)=0。又以x(2,2) 這方格為例。由於所給的提示說這方格儲存的數值為2,所以這個用標籤作為表示的方式,我們得到x(2,2,1)=0, x(2,2,2)=1, x(2,

幾位教授(一)

圖片
在美國讀書時碰到過很多不同的教授,這裏分享一下認識其中幾位的經過。 在UCLA的第一年的時候,因為收了很多不同的研究生課,所以,其實都比較認識學校裏面各位教授自己的研究課題。有一些是特別解釋老師研究的科目,也會有一些博士後講解自己以及他們指導教授的一些研究。裏面就有提到水平值計算(Level Set Method),Hamilton-Jacobi Equations的數值方法以及一些關於圖像處理的科目。而這些題目都跟現在我自己的研究多多少少有一點關係。 Prof. Russel Caflisch 除了有博士後教的研究生課外,也有一些學系裏面教授所教導的科目。所以通過這些課,我們就有機會了解老師的研究題目和有機會親身接觸一些教授去認識他們的性格。記得Prof. Russel Caflisch [ 1 ] 教過我3門有關線性代數計算方法的科目。他研究的題目不在這範疇裏面,所以基本上我們也知道在這幾門科目裏面沒有辦法接觸到在這研究範疇裏面最前瞻的課題。可是我比較喜歡他講課的風格。他準備得不是太多,可是你都可以看到他每一堂課都會準備一張小小的「貓紙」,讓自己記得那一堂課要講解的題目。雖然不太流暢,但是他會有自己的節奏。功課及考試都會是一些很特別的問題,我們都會需要花很多時間去把背後的思想弄清楚才有辦法辦理些問題解決。所以特別喜歡他教學。Russ的研究有好幾方面,他有一門科目就是去解釋自己的研究項目,裏面有提到一些關於金融數學和Monte Carlo Simulation的課題。可是自己對這方面沒有太大的興趣,所以雖然我非常喜歡他做事和與學生交流的方式,自己卻沒有太大的興趣跟他一起做研究。 雖然沒有找Russ作為自己博士研究的指導老師,可是我們還是有很多機會在不同的地方有合作。在2011年科大開始跟UCLA Institute of Applied and Pure Mathematics(IPAM)合作,舉辦了一個本科生暑期研究活動。每年有大約八名美國不同地方的本科生會跟我們科大找來的八名本地本科生,分成四組去做一些本地公司提供的本科生研究項目。而在舉辦那研究項目時,Russ就曾經是IPAM的主任(Director)。所以我們都會有很多不同的溝通,研究怎樣可以把我們的活動搞得更好。而在去年九月,自己也曾在波蘭的一個會議上碰到他。那時他已經從西岸搬到東岸,成為了NYU Cou

科普系列 - 數學與數獨(一)

圖片
除了電影和圖像處理這些比較可以直接用肉眼看見的數學應用外,還有一些無論是在媒體上,還是從不同用家口中,都經常提到的一些可以聲稱段練數學思維的遊戲。在這一篇文章裏面,希望可以「從遊戲中學習」,透過討論一些遊戲裏面可能會用到的數學,介紹一下一些比較抽象的數學工具如何可以應用在日常生活裏面。 遊戲也可以用來吸引大眾對數學的興趣。其中一些遊戲,包括了題目所提到的「數獨」(Sudoku)[ 1 ]。相信大家也有玩過這個遊戲。遊戲開始時,將會在一個九格乘九格的Excel數表內給予一些從一至九選定的數字。這一共81個小方格,遊戲會用三種不同的方法將他們聯繫起來。第一款是橫行(Row),第二款是直列(Column)。所以每一個數獨遊戲,一共會有九個橫行,以及九個直列。第三款是一些三格乘三格的宮(Cell)。遊戲考慮的一共有九個宮,包括最左上角的3×3小方格,最想三行中間的3×3小方格,最右上角的3×3小方格,然後是中間三橫行會分成三個宮,最後是下面三行亦都會分成三個宮。遊戲的目的,遊戲玩家必須要把剩餘的空格填滿,令到每橫行,每一直列,和每一個三格乘三格的宮,都有一至九這九個數目字。由於每橫行,每一直列,和每一個三格乘三格的宮,一共有九個小方格,所以我們填進裏面的九個數目字都不會重複。 遊戲剛出現時,經常會聽到不同報道都說這遊戲可以訓練玩家的邏輯思維,數學能力等等。說起來好像很厲害似的。可是想來想去,也想不出到底數學的訓練在哪裏。簡單的來說,對訓練玩家的推理能力應該也有一定的關係,可是從數學的角度上來看,可以有什麼更加直接的關連呢?如果從一個數學研究的角度來看,應該可以做出一些什麼樣的數學結果呢? 這遊戲的出處好像已不可考[ 2 ],但在數學歷史裏面,有一個相關的數學問題叫做拉丁方陣(Latin Squares)[ 3 ] 由非常出名的數學家歐拉(Euler)[ 4 ] 所討論過。拉丁方陣的設計,比數獨遊戲「簡單」了一點。給予一個N×N的方陣,拉丁方陣的數字並不需要遵從與「宮」相關的那個限制,而只要每一橫行以及每一直列都填進了一至N的數字令到他們不會重複。由於數獨比拉丁方陣多了一個需要滿足的條件,所以所有數獨的答案,都是一個拉丁方陣。由於數獨遊戲多了一個條件,而且玩法亦不單單只是把整個拉丁方陣列出來,而是從一些已經給定了的條件裏面找出一個滿足遊戲三個條件的答案。這遠比確定了N,然後找

本科生的多主修多副修

圖片
有很多時候到外面給收生講座時,都會常想聽到有中學同學問到, 雙主修或者副修是什麼一回事。這些問題在對於一些有興趣「國際科研」(IRE)裏面好像相對比較多。當然這些同學的能力都相對比較強,對他們來說很可能覺得自己多一門主修也不是大問題,所以他們特別對這些申請特別有興趣知道。 科大採用學分制,同學都畢業是收滿120學分,滿足了自己主修的畢業要求,學院要求,以及大學要求等等不同的條件就可以拿到主修學位。而四年裏面,同學可以按着自己的興趣去選修一些科目。所以我在講座時,都會經常提到科大是一個學習非常自由的地方。學生可以盡量按着自己的興趣,去修讀不同學系或者學院提供的課程。自由的地方起碼有以下這些。本科生可按着自己的能力,向研究生課程的老師提出選修的要求。只要那研究生課程的教授認同本科生同學有修讀那一門課的能力,同學甚至可於本科生第一年修讀研究生課程。這可能對能力特別強的同學來說非常吸引,而且我好像沒有在其他大學聽到過。另外一個自由的地方,就是同學可以按着自己的興趣和能力去多拿取一個,或者一些, 副修或者主修。 在2020年,全科大有25個副修課程同學可以選擇。以數學系為例,我們提供兩個副修課程給科大所有同學選擇。其中一個為數學副修,另外一個精算數學副修。同學在畢業時只需要滿足18個學分的要求,就可以在自己的主修以外多拿取一個副修。而這18個學分並不一定是在你自己主修的120學分以外拿取的。我們容許同學用這18學分的9個學分來符合自己的主修要求。所以如果自己主修是與數學相關的,很可能只需多修3門數學系(9學分)的科目就已經可以多拿取一個副修。而如果同學覺得自己的能力非常強,學校其實沒有限制同學輔修的數目。到畢業時同學可以拿取自己一個主修,加上好幾個不同的副修。這其實也不是太稀奇。 甚至乎,同學覺得除了自己的主修以外對另外一個主修也有興趣,同學其實可以向第二主修申請。只要另外那一個主修認同同學的能力,你就可以在科大所有主修裏面挑選一個(甚至多個)主修去修讀。同樣,我們亦容許同學修讀一門科目用來滿足兩個不同主修課程的畢業條件。所以,如果同學打算在畢業時拿到兩個主修(就是常說的雙主修),其實是不需要修讀240個學分。數學系有很多同學都有差不多的安排。由於他們看到計算機科學對自己長遠前途可能有幫助,很常會看見數學系學生多申請一個計算機科學的主修,也很想看見計算機科學的同學會多收一個數

科普系列 - 數學與圖像修復(五)

圖片
上面提到,這個函數f所定義的並不是找出一個最接近這個數值集的數字。如果我們真的想找出距離,我們就必須要把每一個項目裏面的平方拿走。可是,拿走後如何可以保持距離都是正數的特性呢?簡單的方法,就是取絕對值。所以我們可以去定義一個新的函數 \[ g(x)=|a(1)-x|+ |a(2)-x|+…+ |a(m)-x| \] 要優化這個函數,我們就沒有辦法使用微積分的方式。主要是由於絕對值這個函數在x=0的地方「起了角」(這裏不是數學課,所以容許我只簡單地用直覺的方式講解一下就算),所以他並不是一個可微分的函數。雖然如此,要優化這個函數,我們有一個更簡單的辦法。舉一個簡單的例子,假設我們只有五個已知數(m=5),而且他們是按着由小自大的排列,a(1) < a(2) < … < a(5)。根據這個函數知的定義,g所輸出的值就是等於5段線段長度的和。所以去解決上面那個優化問題,我們就只需要不斷改變函數g的輸入值,然後看看5段線段的總長度,再找出一個輸入值令到總長度最短。 我們說現在考慮兩個給予g不同的輸入值,一個在a(1)的左手邊(假設這點叫y),另一個等於a(1)。我們可以發現 g(y) = |a(1)-y| + |a(2)-y|+ … + |a(5)-y| = |a(1)-y|+ |a(2)-a(1)| + |a(1)-y| + … + |a(5)-a(1)| + |a(1)-y| = g(a(1)) + 5|a(1)-y| > g(a(1)) 所以我們可以發現,如果我們將函數的輸入值從a(1)左手邊向a(1)移動,函數的書出席就會相對減少。如果你不喜歡這個代數的證明,另外一個可以看見這現象的方法,可以直接從數線上看到。我們可以看見當輸入值從a(1)左手邊移動到a(1),線的總長度會少了五小段。同樣道理,我們可以發現如果輸入值從a(1)往右面移動到a(2), 線的總長度可以再少了三小段。當我們把輸入點逐漸往a(3)靠近,我們會發現線段總長度還是會一直減少。可是,一直到輸入點超越了a(3),我們就會發現線段的總長度會慢慢又開始增加起來。從這個方法,我們就很簡單地找到一個決定函數g最小值的答案,就是當我們的輸入值是等於a(3)的時候, 5段線段的總長度就會是最短。聰明的讀者就會發現,要優化這個函數g,我們就只需要將輸入值調校到這五個數目字的中位數。 上面我

研究生應該修什麼課

圖片
很多時候,自己的研究生都會非常苦惱每個學期應該修些什麼科目。有一些新收進來的研究生,會走過來問我下一年應該修些什麼科目。由於經常要回答這些問題,所以在這一篇文章,希望可以幫助一下研究生課程的學生去安排自己的時間。 大部份數學系對研究生的學分要求還是比較看重的。以科大為例,一個碩士學生在兩年裏面必須要有24學分,博士生在四年裏面必須要儲存夠36學分。以平均每一門科目3學分計算,一個碩士學生就必須要在畢業之前收8門科目,一個博士生就必須要有12門科目。如果同學希望盡快完成這些學分要求,然後多花一點時間做研究和撰寫自己的畢業論文,每一個學期通常需要上大約三到四門課。UCLA的博士課程,同學必須要修讀18門科目。可是由於UCLA並不是採用我們一年兩個教學學期(Semesters)而是三個Quarters,同學每一學期基本上也是選修3門科目。 我對應該修什麼課這問題的答案,很簡單,「修什麼都沒有所謂,你喜歡就好」。 這要回看研究生課程的目的是什麼。修課的目的,並不是幫助同學做研究。因為正如以前所討論的,如果研究方向已經可以成為一門課,在知識面方面本身已經非常成熟。那可以做研究的地方也沒有太多了。所以研究題目本身是需要非常專門的知識才可以開始。那這樣就是說,如果要先由上課開始,到掌握了整個研究方向當下的結果,才開始自己的研究,那根本不可能在兩年,或者四年,裏面完成一篇研究論文。如果要先把所有東西都學會才開始做研究,那就不用做了。所以一個研究方向的基礎,絕對不能依靠上課來學懂,而是需要研究生自己找不同的書本或者研究論文,從不同的地方找來自己需要的知識和工具。 如果是這樣子,修課對研究本身就沒有什麼所謂了。聽起來好像很嚇人。研究生除了要做助教幫忙輔導班,然後做自己的研究,還要花這麼多時間在上課。你竟然跟我說想,原來什麼課都跟研究沒有任何幫助。對,可是我並不是說你根本不需要上課。我只是說你挑選什麼科目並不會影響你研究的成果。 選修科目的目的是什麼呢?為什麼大部份研究生課程,還是需要學生修讀不同的研究生科目呢? 儘管是研究生課程,大部份研究生科目的內容還是相對比較基礎的。作為一個數學系的碩士或者博士生,我們還是希望同學對自己主修科目有比較闊一點的基礎認識。所以每個學期3門課的要求,是幫助同學多認識自己主修的一些基礎知識。以應用數學為例,研究生課程裏面有兩門是關於偏微分方程的數值方法,也

如何閱讀研究論文

圖片
作為一個研究生,其中一個很重要的工作就是要不斷的去閱讀其他人撰寫的研究論文。有很多不同的原因,除了是去擴闊自己的知識面以外,亦需要認識一下一些研究結果是怎麼用一個嚴謹的學術方法介紹給其他人認識。可是,到底應該要如何閱讀一篇其他人撰寫的論文呢?這個其實一直以來都沒有人去教導我們。跟上課不一樣,就算在一門教授比較近代一些研究知識的研究生課,老師很可能已經把好幾10篇論文重組,分門別類,在堂上仔細解釋他們背後的原理及研究技巧。可是,如果真的是一些關於研究生自己的研究項目,就沒有任何一門研究生課可以詳細解釋背後的知識。這樣子,研究生就必須要自己多看一些研究論文,看一下其他人是如何做這研究的。 由於自己做的研究都是偏向計算數學或應用數學的。所以下面有一些討論的方向可能在其他研究領域並不適用。所以讀者就要加上一點變化而應用在自己的研究領域上。 文章目的 最重要要掌握的,說到底這篇論文要解決一個什麼問題。文章裏面的數學方程式可能還不是最重要的,看一篇研究論文最重要的還是要知道,他是希望提出一個問題?嘗試解決一個在研究方向裏面已經存在的問題?是提出一個新的計算方法?還是增加某些數值方法的準成度?還是增加那計算方法的計算效率?這些問題不太難解答。很多時候在文章的題目,或者在提要(Abstract)裏面已經有很充分的解釋。 提出的研究 第二個問題需要清楚知道的,是到底他是怎樣解決文章所提到的問題。這部份是看文章最花時間的地方。因為當我們看論文時,所認知的背景跟文章所假設的,可能有一點落差。因為在寫論文時,作者不一定可以把所有背景資料都放進自己的文章裏面,所以有一些讀者就必須要花更多的時間去把一些背景搞清楚。為了要顯示那一篇文章所提出的方法有可能比其他更優秀,很多時候這些文章都會有很多例子去跟不同的方法作一些比較。讀者就可以從這些例子裏面更加認識該論文。 方法的好處跟壞處 有些時候,學生看論文會太被文章裏面說故事的方式引導,而忘記了自己看文章的原因並不是單單去認識那個方法那麼簡單。更重要的,是我們要掌握那方法的好處跟壞處。而這些比較並不一定會在論文裏面清楚解釋。你可能會覺得,這是所有論文必須要提出的討論。可是很多時候我們做研究都會喜歡「隱惡揚善」。都會盡量將自己研究出來的好處多加宣揚,不好的就會盡可能都不詳細討論,等將來繼續研究之用。所以當我們看一篇文章的時候,就必須要多想一想,到底文章

科普系列 - 數學與圖像修復(四)

圖片
用平均值修復圖像的問題 返回圖像處理的問題。我們希望修復回來的圖像是比較清晰,而不是模糊的。所以如果我們假設在邊界上只有兩種顏色,在圖像一邊是全黑(用力代表顏色),令一面是同一種灰色(在前面的例子我們用128代表),我們就會希望修復回來的圖像的象素點都只有全黑或者是在邊界上面的那一種灰色。可是,另外一個橢圓形偏微分方程的特性,就是說所有找回來的答案都會是順滑的(Smooth)。所以,我們就可以知道用這個平均值方式找回來的顏色將會分布在零跟128之間。就是說,即使在邊界上只有兩種顏色,使用平均值的方法來修復圖像總是會出現新的顏色。這兩個效果,在圖像修復的應用上都會令人非常失望,因為修復回來的圖像跟我們腦海中認知和希望找到的都非常不一樣。 上面我們提到,定義「類似」的方法可以用統計學裏面的眾數,中位數和平均值。在剛剛討論的情況,我們只是運用了平均值的方法。在簡單一個像素點的情況,我們看見眾數和中位數的表現好像很好。所以都可以直覺地認為找回4×4的圖像中間2×2位置的顏色,眾數和中位數的方法應該可以更有效地找回一幅跟我們腦海中認知所符合的圖像。但這兩個方法的問題,是我們需要解決一個非線性(Nonlinear)方程組。所謂非線性,就是說他不是線性(Linear)。這句說話聽起來非常廢話,可是這確是「非線性」的定義。只要我們定義了何謂線性,就知道這個方程組是否非線性了。我在這裏就不再仔細定義何謂線性,而只是簡單介紹為什麼眾數和中位數都不是一個線性的問題。主要原因,是因為這兩個計算裏面,我們都必須要將一些數字作出排列。這個按大至少或小自大排列的過程,並沒有方法將答案寫成某些係數乘那些數字再作加減。 當然,要解決非線性方程組也不是沒有辦法的。如果有修讀數值方法的,就知道牛頓也創造了一個用微積分方法找方程式的根的辦法 [1] 。可是要使用這牛頓法,我們就必須要計算方程式的導數(Derivative)。而眾數及中位數這兩個函數,卻是不可微分(Non-differentiable)的。所以一般的牛頓法並不適合解決這兩個問題。 那有什麼辦法呢?其中一個方法,就是將這些問題重寫,將他們變成一個優化問題處理。 三個優化問題 我們先從比較簡單的情況討論。最簡單的情況,就是一個3×3圖像找回中間一個像素點顏色的問題。對用平均值定義「類似」的方法,我們可以將它寫成以下的優化問題。假設我們已知附近的

研究是什麼(三)

圖片
我覺得自己其中一個可以被定義為low-hanging fruit的研究成果,其實是一篇被引用得最多的研究論文。我們提供了一個方法去解決一個在地質學上面的反問題(Inverse Problem)。一個簡化版的介紹是這樣子的。假設在一個區域內,我們可以探測到在邊界上一點到另一點聲音傳播的首次到達時間。反問題是問,我們是否可以把中間不同點的傳送速度找出來。如果我們有方法把這個速度找出來,我們就有機會知道區域內地質結構的變化,從而找出地下石油的位置及儲存量。在行內一般的做法是模擬聲音在區域內運動的軌跡(就是說Ray Tracing Method),然後將區域內每一點的傳送速度加以改變,嘗試找出令走完這些軌跡的時間跟儀器探測出來的時間互相吻合。所以,這些計算都必須要解決大量微分方程(Ordinary Differential Equations)。可是由於我們研究背景不一樣,我們在那篇文章就用偏微分方程(Partial Differential Equations)的方法去找出所有在邊界上的首次到達時間。然後,用來解決這個反問題的方法,就是去決定這個偏微分方程裏面相對應的速度函數。而文章裏面提到的方法非常簡單,而且方法本身亦存在了很長的一段時間。這篇文章的結果對我們來說,是非常有效而且簡單。我們在投稿時其實亦有擔心,會否有其他人已經把這方法做了出來,只是我們沒有發現而已。 更有趣的是,這篇文章想法的來源,其實是源於另一份更複雜的文章。最先的想法其實並不是用首次到達時間去研究這個反問題,反而是希望用偏微分方程的方法去設計一個可以把所有到達時間都有效運用到解決反問題的方法。當我們把這個那麼複雜的反問題做了出來,回想一下,不知道是否有一些更簡單的方法只用首次到達時間呢?如果有的話,我們也可以比較一下計算的結果,看一下是否多一些探測的數據就可以找到更準確的速度函數結果。然後,我們就只用了大約一星期的時間就把之後那一篇文章完成了。對我們來說,那一篇更複雜的文章數學水平更高,簡單那一篇的困難程度可能只等於一個普通練習而已。可是這麼多年過去了,複雜那一篇文章的引用數目只是另外那一篇low-hanging fruit的大約五分之一。 所以有些時候,研究可能也需要一點運氣,誤打誤撞找出來。 世紀難題 有另一派做研究的人會覺得應該期望高一點,所謂aim-high。如果期望已經很低,將眼光只看下看

研究是什麼(二)

圖片
  基礎研究與應用研究 所以簡單來說,可以將研究這個事情分為兩大範疇。一面是所謂的基礎研究。研究課題本身可能沒有實質日常生活的應用。完全沒法(其實也不需要)用對人類社會有什麼貢獻來解釋他的研究目標。研究成果完全是基於對人類知識圖的增長為目的。雖然這樣說,我完全沒有覺得這是對這類型研究的貶低。我是非常敬佩做這方面研究的學者。他們完全是為人類知識增長而努力,而不是(或者不主因)為自己的名或利去做這些研究。 另外一方面是所謂的應用研究。主要是以應用為主。他們可能是找出一個跟人類生活比較相關的議題進行改善。這方面的研究,有些人會覺得相對比較容易。看起來只是將A應用到B,或者將A跟B加在一起變成C。可是,怎樣將A應用到B或者怎樣將兩個完全不相關的A和B連在一起,困難程度也不等於「1+1等於2」那麼簡單。你還是需要掌握不同工具,和將不同的想法連繫起來。解決中間所牽涉到的技巧,有可能不下於基礎研究所需要的能力。這一類型的研究對人類社會的進步會更加明顯。一個非常重要的例子,就是我們現今的智能電話。以往的手提電話功能只是電話。可是智能電話就將日常不同的工具聯繫在一起。中間也需要經過研究的過程。中間經過無數的創新成份。需要解決很多將不同事物融合的過程。雖然說有硬件和軟件可能已經發展了好幾十年,可是智能電話仍然是一個非常出色的應用研究。大大改變了人類生活的習慣。 研究的好與壞,絕對不可能只看他是基礎研究還是應用研究。你可能會聽見基礎研究的學者會說應用研究的學者水平低,應該是沒有能力做基礎研究才會去投身應用研究的範疇。也可能會聽到應用研究的學者批評做基礎研究的教授十分離地,做些完全沒有用途的研究。其實兩面都說得不對。只要是研究,本身已經充滿挑戰性。自己覺得,只要是可以增進人類對未知世界的認識,已經是一個非常高尚和值得尊敬的事業。沒有說那一個比另外一個更高尚,或者另外一個比這個更值得尊敬。 簡單與複雜 有一些研究結果看起來相當簡單。隨便一個學生都可以清楚了解他研究成果。很可能就是一些像是「阿媽是女人」的結果。可是我自己覺得,很多時候,越簡單的研究結果,有時可能越是重要。這些問題都是我們經常說的low-hanging fruit。就是說,這些研究項目好像一些樹上的果實可能因為多汁肥美,重重墜了下來,只要我們走過去就很容易把這些果實摘下來。 返回研究的最終目的,是需要找出到現在為止沒有人知道的知

科普系列 - 數學與圖像修復(三)

圖片
同樣的道理,如果我們現在需要找回的,是在圖像中心 n×n 的像素點,用同樣的方法,我們就必須要解決一條 N 元一次線性方程組。而這個線性方程組左手邊的矩陣將會有一個很特別的結構。如果同學有修讀過偏微分方程的數值解,可以看到,這個矩陣是跟用 Finite Difference Method 去解決 Laplace Equations with the Dirichlet Boundary Condition 是一樣的。這個關係我們之後會再花一點時間討論。同學亦可以憑這個關係聯想到用平均值解決圖像修復問題時所遇到的後果。其中一個後果,就是我們找回來的顏色都必定會大於或等於邊界上顏色的最小值,亦同時會少於或等於邊界上顏色的最大值。這個特性在橢圓型偏微分方程( Elliptic Partial Differential Equations )經常出現。所以有這樣子的效果,也不會太過令人奇怪。   解決多元一次方程組的辦法   要解決上面那一個四元一次方程組不太困難,一般同學多花一點時間也可以把答案找出來。只需要將不同方程式做一些加加減減,把方程式的左手邊排除掉多餘的變數,都剩下只有一個未知數,一步一步的就可以把四個未知數都找出來。這個方法叫做消除法( Method of Elimination )。網上有太多對這個方法的介紹,我在這裏就不再仔細講解 [1] 。當然,人手去做這個消除法,那一條方程式跟那一條方程式作加減,也沒有太大關係。可以根據自己興趣,找不同的方程式去做計算。那到底找那一條放晴色跟那一條方程式做運算可以更有效的消除一些變數,其實就要靠經驗的累積。一般在中學課堂上,我想老師也不會有一個一般的解釋。如果可以把未知數消除,那就是一個好的方法。我猜想,這其實也是一個為什麼中學同學不喜歡數學的原因,有些時候他們用一些方法可能需要花更多的時間才可以把答案找出來,這可能會加深了同學對數學的挫敗感。可是,反過來說,這不唯一性其實也是數學有趣的地方。同學們可以有不同的「創意」去解決同一個問題,每個人解決問題的方法都可能是不相同。可是如果每一部都做對了,最後的答案也會是一樣的。而且,答案最後也會是滿分。   雖然說, 四元一次方程組還是可以用手解決,可是就算在大學課程,我們一般都不會要求同學用手計算(其實自己也不可能把所有計算準確做出來,所以我也不會要求同學