Courses 2022-23


Space Empires: summary and full rulebook

Dates
Computation & Modeling
(Matteo)
Machine Learning
Board Pics
(Cohort 3)
Intelligent Systems
Board Pics
(Cohort 2)
3/6-5/19
(final quarter)
From this point onwards, the rest of the main curriculum centers around reimplementing research papers in which neural networks are evolved to play board games. Below are the learning paths:

Canonical and Reduced Game Trees for Tic-Tac-Toe --> Minimax Strategy --> Reduced Search Depth and Heuristic Evaluation for Connect Four

Reimplementing Fogel's Tic-Tac-Toe Paper

{ Heuristic Connect Four, Fogel Tic-Tac-Toe } --> Reimplementing Blondie24 --> Reimplementing Blondie24: Convolutional Version


And here are the final remaining offshoots from the main curriculum:

Simplex Method

Multiple Regression and Interaction Terms

Naive Bayes

Decision Trees
Connect-4 competition

Space Empires -- get combat working

Backpropagation

Introduction to Blondie24 and Neuroevolution

Reimplementing Fogel's Tic-Tac-Toe Paper
Reimplementing Blondie24

Space Empires -- manual player, combat minigame, combat strategy with trainable weights

Reimplementing Blondie24: Convolutional Version
2/27-3/3
Introduction to Blondie24 and Neuroevolution Space Empires - finish converting game to be state-based, begin working on combat & manual player Space Empires - map out training procedure for AI player; begin implementing combat minigame
2/20-2/24
Science project Reduced Search Depth and Heuristic Evaluation for Connect Four - Exercises 3-5 Reimplementing Blondie24 - hook everything up for individual agents
2/13-2/17
Science project Space Empires - converting game to be state-based, and updating UI accordingly Space Empires - begin developing infrastructure for AI player
2/6-2/10
Science project Reduced Search Depth and Heuristic Evaluation for Connect Four - Exercise 2 Reimplementing Blondie24 - revise checkers game to make game tree simpler
1/30-2/3
Science project Space Empires - converting game to be state-based, and updating UI accordingly Space Empires - map out model architecture for AI player
1/23-1/27
Backpropagation In Reduced Search Depth and Heuristic Evaluation for Connect Four, accomplish both of the following. (You should already have one of these completed from last time.)
- Build the Connect Four game tree (with a variable number of ply)
- Finish exercise 1
Debugging week - get checkers game fully working, with ability to play manually against random player.
1/17-1/20
Introduction to Neural Network Regressors

Start on Backpropagation
In Reduced Search Depth and Heuristic Evaluation for Connect Four, accomplish one of the following:
- Build the Connect Four game tree (with a variable number of ply)
- OR, finish exercise 1
Reimplementing Blondie24 - Goal for this week is just to make the checkers game. It should be playable through manual input too, just like the tic-tac-toe game.
1/9-1/13
K-Nearest Neighbors Space Empires - implementing combat and debugging manual player vs manual player Space Empires - begin final push on features before focusing on AI strats
12/19-12/23
Final Exam Final Exam Final Exam
12/12-12/16
Final review Final review Final review
12/5-12/9
Regression via Gradient Descent Decision Trees / Introduction to Neural Network Regressors Fogel tic-tac-toe debugging
11/28-12/2
Power, Exponential, and Logistic Regression via Pseudoinverse Space Empires Space Empires competition
11/14-11/18
Overfitting, Underfitting, Cross-Validation, and the Bias-Variance Tradeoff Catchup week Begin debugging Fogel tic-tac-toe project
11/7-11/11
Regressing a Linear Combination of Nonlinear Functions via Pseudoinverse Finish Decision Trees.

Then, work on Introduction to Neural Network Regressors.
Space Empires
10/31-11/4
Hodgkin-Huxley Model of Action Potentials in Neurons Space Empires Reimplementing Fogel's Tic-Tac-Toe Paper - write your initial draft implementation and get some kind of output curve. (It's okay if the curve doesn't look right yet -- we'll budget for more debugging time during the next quant week.)

Also, check out the introduction and Blondie24 section of this writeup for more context on what we're doing. (You can ignore the exercise in that writeup, since we already did it last year.)

If you want to configure your implementation with an eye towards the future, here are the summaries of the other two papers that we'll be reimplementing:

Reimplementing Blondie24

Reimplementing Blondie24: Convolutional Version
10/24-10/28
Dijkstra's Algorithm for Distance and Shortest Paths in Weighted Graphs Dig this up from last year: Canonical and Reduced Game Trees for Tic-Tac-Toe

Then do Minimax Strategy.
Finish connect four competition, and then Space Empires
10/17-10/21
Breadth-First and Depth-First Traversals

Distance and Shortest Paths in Unweighted Graphs
Space Empires - begin extending game to 2 ships with combat, and get user input through web UI rather than terminal Connect four competition
10/10-10/14
Linear, Polynomial, and Multiple Linear Regression via Pseudoinverse

Hash Tables
Continue Decision Trees.

If you finish early, work on Introduction to Neural Network Regressors.
Prep your strategy for the connect four competition
10/3-10/7
Tic-Tac-Toe and Connect Four

SIR Model for the Spread of Disease
Space Empires - get simple game running (single ship, no combat) Space Empires - wrap up and merge latest updates to UI, economic phase, and manual input player
9/26-9/30
K-Means Clustering

Merge Sort and Quicksort
Complete Simplex Method exercise 4.

Then, make substantial progress on Decision Trees. By the end of the week you should have a decision tree class all coded up and producing predictions for given input data -- though, it doesn't have to actually produce the correct predictions yet (you'll have more time to debug in the next quant week.).
Developing a custom strategy for our connect four competition. We will have the competition at the beginning of the next quant week.

In order to get credit for this week, you'll need to code up an almost-random player that moves randomly unless it has the opportunity to capture a win or block a loss, and then demonstrate that your competition strategy beats this almost-random player.
9/19-9/22
Reduced Row Echelon Form and Applications to Matrix Arithmetic Space Empires Space Empires
9/12-9/16
Euler Estimation Complete Simplex Method exercises 1, 2, 3.

If you finish early, you can either work on Space Empires or the next quant assignment (Decision Trees).
Finish up Reduced Search Depth and Heuristic Evaluation for Connect Four.

If you finish early, work on developing a custom strategy for our connect four competition next quant week.
9/6-9/9
Solving Magic Squares via Backtracking

Estimating Roots via Bisection Search and Newton-Raphson Method

Single-Variable Gradient Descent

Multivariable Gradient Descent

Selection, Bubble, Insertion, and Counting Sort
Space Empires - get to the point where we can manually play the initial version of the game Space Empires - get economic phase working and passing tests
8/29-9/2
Basic Matrix Arithmetic Complete the following:

Solving Magic Squares via Backtracking

Naive Bayes
Reduced Search Depth and Heuristic Evaluation for Connect Four - write the connect four game and construct the heuristic tic-tac-toe player. (You don't have to worry about the heuristic connect four player yet.)
8/22-26
Roulette Wheel Selection

Brute Force Search with Linear-Encoding Cryptography
Get started on Space Empires Space Empires - fix failing tests and implement economic phase
8/15-19
Converting Between Binary, Decimal, and Hexadecimal

Recursive Sequences

Simulating Coin Flips

Cartesian Product
SIR Model for the Spread of Disease

Hodgkin-Huxley Model of Action Potentials in Neurons

Hash Tables
Canonical and Reduced Game Trees for Tic-Tac-Toe

Minimax Strategy
8/11-12
Some Short Introductory Coding Exercises - exercises 1, 2, 3 Cartesian Product Naive Bayes