Projects for Harvard's CS50 Introduction to Artificial Intelligence with Python course.
Week | Topic | Name | Description | How to Run |
---|---|---|---|---|
0 | Search | Degrees | Determine how many degrees of separation apart two actors are | $ python degrees.py large |
0 | Search | Tic-Tac-Toe | Play tic-tac-toe optimally using Minimax | $ python runner.py |
1 | Knowledge | Knights | Solve logic puzzles | $ python puzzle.py |
1 | Knowledge | Minesweeper | Play Minesweeper | $ python runner.py |
2 | Uncertainty | PageRank | Rank web pages by importance | $ python pagerank.py corpus0 |
2 | Uncertainty | Heredity | Assess likelihood a person will have a particular genetic trait | $ python heredity.py data/family0.csv |
3 | Optimisation | Crossword | Generate crossword puzzles | $ python generate.py data/structure1.txt data/words1.txt output.png |
4 | Learning | Shopping | Predict whether online shopping customers will complete a purchase | $ python shopping.py shopping.csv |
4 | Learning | Nim | AI that teaches itself to play Nim through reinforecement learning | $ python play.py |
5 | Neural Networks | Traffic | Neural net to identify which traffic sign appears in a photograph | $ python traffic.py gtsrb |
6 | Language | Parser | Parse sentences and extract noun phrases | $ python parser.py |
6 | Language | Questions | AI to answer questions given corpus of text | $ python questions.py corpus |