本课程面向非计算机软件专业本科生及相关IT行业从业人士，介绍计算机科学和信息技术理论基础的概念和思想方法。

STARTS

Oct 19th 2016

Taught by:

This course is an introduction to using computation to understand real-world phenomena.

This course will teach you how to use computation to accomplish a variety of goals and provides you with a brief introduction to a variety of topics in computational problem solving . This course is aimed at students with some prior programming experience in Python and a rudimentary knowledge of computational complexity. You will spend a considerable amount of time writing programs to implement the concepts covered in the course. For example, you will write a program that will simulate a robot vacuum cleaning a room or will model the population dynamics of viruses replicating and drug treatments in a patient's body.

Topics covered include:

- Plotting with the pylab package

- Random walks

- Probability, Distributions

- Monte Carlo simulations

- Curve fitting

- Knapsack problem, Graphs and graph optimization

- Machine learning basics, Clustering algorithms

- Statistical fallacies

What you'll learn:

- Plotting with the pylab package

- Stochastic programming and statistical thinking

- Monte Carlo simulations