- Please be aware of the course's Academic Honesty policy before visiting the files.
- Some large datasets are not included, please refer to the corresponding project page on CS50 AI for link(s) to download the dataset
| Project name | Lecture | Topic(s) | Description |
|---|---|---|---|
| Degrees | 0 | Search (BFS) | Find "degrees of separation" between 2 actors (nodes, where co-starring in a movie is considered an edge) |
| Tic-tac-toe | 0 | Minimax (with |
Apply adversarial search to find optimal move in Tic-tac-toe |
| Knights | 1 | Logical inference | Represent problem statements as propositional logic in knowledge base, runs inference to determine true statements |
| Minesweeper | 1 | Logical inference | Model problem, define inference rules to choose optimal move in Minesweeper |
| Page Rank | 2 | Markov Chain | Ranking pages' relevance by modelling their relations as a Markov Chain, using both Sampling and Iterative method |
| Heredity | 2 | Probability | Compute probability of inheriting trait (by computing joint probability of a Markov model) |
| Crossword | 3 | CSP (Constraint Satisfactory Problem) | Model crossword puzzles as CSP problem and apply AC-3 to find appropriate assignment |
| Shopping | 4 | Machine Learning (KNN) | Classify customer who likely to complete a purchase using KNN model |
| Nim | 4 | Q-Learning | Train AI agent to win Nim game |
| Traffic | 5 | Deep Learning (CNN) | Train CNN model to detect traffic signs |
| Parser | 6 | NLP (pre-processing/ chunking) | Define grammatical rulse to parse sentences as a tree |
| Questions | 6 | NLP (tf-idf) | Return sentences most related to query based on their idf values |