MATLAB程式設計

Matlab為眾多高階語言中的一種,其優點為語法簡單、強大的數學能力與圖形支援,適合從事演算法開發、數據分析、科學(數值)計算、多媒體(影音)處理與自動化處理等需求的科學家和工程師使用。除了高效能的矩陣運算與豐富的繪圖能力外,Matlab亦提供豐富的函式庫,可快速建立使用者介面與跨平台呼叫他類語言編寫的程式。本課程將完整介紹Matlab的語法與重要的程式設計概念,輔導學員可以獨立完成Matlab程式撰寫,以利解決自己的研究課題;更希望透過本課程傳授的內涵,強化學員在資訊領域內的自我學習能力。

課程大綱

% Essentials
1. Computer science basics: computation model, briefing algorithms
2. Variables, data types, operators, vectorization
3. Common data structures: arrays, cells, structures
4. Flow controls: selections, repetitions, error handling
5. Analysis of algorithms, performance analysis, and speedup
6. 2D/3D graphics
7. File I/O
8. Functions and recursion
9. Matrix computation
10. GUI design tutorial
11. Simulink tutorial
12. Symbolic programming tutorial
13. Parallel computing tutorial

% Applications (下述項目將以簡單的模型當作範例作為課堂教材。)
1. Numerical methods: finite difference, numerical integration, method of least squares, interpolation, polynomial fitting
2. Computational statistics: Monte Carlo simulation, principal component analysis (PCA)
3. Financial computing: internal rate of return (IRR), pricing derivatives, value at risk (VaR)
4. Digital image processing
5. Optimizations
6. Machine learning: K-mean, SVM

註1:updated on 2018/9/10
註2:夜間班以期末專題為評分依據;密集班以期末考為評分依據。下列為課程學員完成的題目:

  • 房貸精算、紅外線成像晶片抓壞點、信用風險模型、油壓被動阻尼的計算(101大樓防風抗震技術)、主動濾波器的阻抗匹配 (impedance matching for power amplifier)、PET-MRI、Capital Asset Pricing Model (CAPM)、圖論應用於台指與電網分析、高頻被動元件模擬 (S21 parameters與curve fitting)、主動濾波器設計 (Butterworth filter)、模擬Van der Waals Equation、利用蒙地卡羅計算連動債價值、以MATLAB進行鋰離子正極電池之充放電數據整理與壽命預測、Semiconductors Band Diagram by using MATLAB、Signal Integrity Analysis、有限元素法 (finite element method)計算應力問題、多維無阻尼震動之特徵頻率 (modal analysis)、IC製程與成本分析、心像旋轉實驗與分析、資產配置、申請美國大學之落點與財務分析、指紋辨識之資料萃取、六年期儲蓄險保單IRR、四連桿機構模擬、BOM表內相同物與相異物檢索、地震衰減式之應用、房屋貸款試算、Calibration of CNC Graving Depth、利用Matlab對公開觀測資料做圖表呈現、利用Matlab進行系統交易策略之權益曲線分析、Simulink之三階微分方程式數值模擬、Edge Detection of Images、Automated pupillometry in Critical Care、Estimation of Packaging


註3:課程教材主要以英文為主,授課過程以中文為主。英文目前仍為科技領域主要語言,想長期進入資訊領域者,應具備"透過英文學習"的基本能力。

適合對象

1. 無程式撰寫經驗的程式初學者 (本課程使用較多數學與演算法,故學員須具備高中數學程度,例如:向量、矩陣、線性方程組);或是自行參考Essence of linear algebra by 3Blue1Brown。)
2. 有繪圖、自動化處理或科學/工程計算等之需求者

開發環境

MATLAB R2010b or later

近期班次

  • 第305期 開課日期:2018.10.13 停開一期

    上課時間:每週(三)(六)
    7:00 PM ~ 10:00 PM
    上課日期:2018.10.13 ~ 2018.11.14
    學費:新生新台幣5000元整

    停止報名 詳細資訊

  • 第306期 開課日期:2018.11.21 招生中

    上課時間:每週(三)(六)
    7:00 PM ~ 10:00 PM
    上課日期:2018.11.21 ~ 2018.12.26
    學費:新生新台幣5000元整

    詳細資訊

  • 注意事項

    • 上課地點:台灣大學資訊工程學系系館 詳細位置;教室號碼將於開課前一日公佈於官網"最新消息"中。
    • 上課教材:開課後將公布教學網站給同學查閱。
    • 結業狀況:請上官網”結業名單”查閱是否合格及可領取證書進度。

    講師介紹

    • 臺灣大學資訊工程學系 博士班
    • 交通大學電信工程研究所 碩士
    • 中央大學電機工程學系 學士

    // 服務經驗

    • 在本班已教授超過100個班,累計教學時數3,000個小時
    • 國立台灣大學 腦與心智科學研究所 兼任研究助理 (2014.8--present)
    • 中國信託商業銀行 全球金融商品交易處 期貨自營部 實習研究員 (2014.1--present)
    • 國立台灣大學 資訊工程學系 資訊系統訓練班 講師 (2014.1--present)
    • 國立台灣大學 資訊工程學系 課程助教:計算理論、離散數學、財務演算法 (2012.9--present)

    // 研究興趣

    • Financial computing
    • Analysis and design of algorithms
    • Quantitative finance, econometrics, and algorithmic trading
    • Statistics and machine learning
    • Computing theory and programming language design

    // 程式語言

    • MATLAB, Java, C, C++, Python

    // 教學特色

    • 中文授課,課程教材以英文為主。適合規劃出國求學或對科學/技術理論有興趣的學員。