6.00.2x 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:
Advanced programming in Python 3
Knapsack problem, Graphs and graph optimization
Dynamic programming
Plotting with the pylab package
Random walks
Probability, Distributions
Monte Carlo simulations
Curve fitting
Statistical fallacies