Code makes the world a better place

悅讀源碼 (#0):序

悅讀源碼,看見程式之美

悅讀源碼將會是一個嶄新的系列文章,顧名思義就是要快樂閱讀源始碼 (Open Source),多虧於開源的開放性,我們得以觀摩高手撰寫的程式碼,藉此學習和模仿他們的思路和技巧。

Continue reading

資工系所學生的基本素養

一個資工系/所學生畢業該具備甚麼技能?一個資工所畢業的研究生該具備甚麼技能?
除了專業科目所學的知識,我想好好來討論一下資工系所該具備的「基本素養」。

Continue reading

Unix/Linux TOP 指令使用詳解

TOP 簡介

top 指令 (top command) 可以說是使用 Unix/Linux 最基本的工具了,他就像 Windows 系統中的工作管理員,可以監看目前所有程式的執行狀況。top 也是最簡單監控程式的方法,用它來觀察程式運行所花的記憶體、CPU 還有各種其他資訊。類似的程式很多,像是 htopgtop 都是衍伸版,大家有興趣可以去查查看,但以基本需求來說 top 就非常夠用了。

Continue reading

Linux/Unix 用指令設定 DNS

事情是這樣的,從昨天開始我實驗室的主機突然不能上網了,平常我都用那台當作 proxy,因為有時候查論文需要用交大 IP。然後我一開始以為是 Squid 出問題,在那邊弄了老半天設定,才發現問題好像也不是 Squid。接著我很震驚地發現,原來我可以 SSH 進主機,卻不能從他連出去。

Continue reading

傳染病 SIR 模型與機率模型介紹與簡易模擬

1. 簡介

最近武漢肺炎人心惶惶,有台大教授發表化學動力論來模擬傳染變化,而其實我高中時也做過類似的事,就是我的「傳染病之數學模型與個體導向模擬」科展。啟發於科學人雜誌《虛擬城市:天花來了》,文中藉由科學模擬來進行流行病預測與防治,我覺得十分有趣,那陣子對伊波拉病毒想深入研究加上也覺得寫程式好玩,因此就做了那個科展,本篇大致將我高中時的科展報告重新整理。

本文介紹 SIR 模型來做大尺度傳染病預測,同時也用機率函數來做個體導向的微觀尺度模擬,用兩種方式來模擬傳染病的擴散狀況。

公共衛生對傳染病研究有很多理論模型,其中隔間模型(Compartmental Model)藉由假設整個人口被區分成幾個群體,並且在同一群體中所有個體皆有一樣的特性,藉由這幾個假設可以簡化傳染病的社學模型。

在隔間模型中,易感受-感染者-康復者模型(SIR Model)是指由人口由易感受族群(Susceptible, $S$)、已感染族群(Infectious, $I$)、已康復族群(Recovered, $R$)三個部分組成的傳染病模型。模型假設傳染病可以藉由直接接觸傳染,並且每個人會隨機接觸其他人。模型中有兩個重要參數,分別是感染族群傳染給健康族群的傳染力(transmission rate)$β$,以及感染族群恢復的康復力(rate of recovered) $γ$。

機率模型則是本文藉由分布函數去模擬個體互動是否造成感染的簡易模型。

Continue reading