Syllabus for Part 2 of Nature of Code: "Intelligence and Learning" at ITP Spring 2017
This syllabus is very much in progress. I'm drawing inspiration from this Coding Train community list of resources.
- Daniel Shiffman: daniel.shiffman@nyu.edu
- Section 1: Tuesdays, 9:00-11:30am
- Section 2: Wednesdays, 9:00-11:30am
- Office Hours
- Sign up for Mailing List
- Resources and References
- Basic familiary with p5.js and Processing.
- Fundamentals of computer programming, equivalent to ICM
- While taking Nature of Code Part 1 is not required, I recommend you familiarize yourself with the following chapters before the first day of class.
- I assume no knowledge whatsoever about AI, machine learning, deep learning and the accompanying math required for the algorithms listed below. After all, I barely know this stuff myself.
- Week 1 Notes
- Week 1 Homework
- Class Intro / Overview
- Algorithms
- Big O notation
- Graphs
- Binary Tree
- Breadth-first Search
- Dijktra's Algorithm
- A* search
- Traveling Salesperson
- plus steering agents!
- Search
- Evolutionary Design
- Evolutionary Ecosystem
- KNN
- Linear Regression
- Perceptron
- MultiLayered Feedfoward
- Backpropogation
- Tools: Tensorflow
- Stuff with images
- Stuff with text
- Steering agents
- Submit assignments by the evening before class to the extent possible.
- Come prepared with questions.
- Put away screens during others' presentations.
- Participate!
- Document!
- Grading:
- 40% Class Participation
- 40% Quality of assignments
- 20% Final project
- For a 2-point class, 2 or more unexcused absences is grounds for failure.