Skip to content

My codes for the CS50’s Introduction to Artificial Intelligence course

Notifications You must be signed in to change notification settings

samuelralmeida/cs50ai

Repository files navigation

Codeos for CS50’s Introduction to Artificial Intelligence course

Link to course: https://cs50.harvard.edu/ai/2024/

Python

Course asked to use Python 3.11 for fully compatible with some Python modules used in that course. They offer a check50 tool to check code and submit50 tool to submit code.

SEARCH

Course week 0: Search Problems. Depth-First Search. Breadth-First Search. Greedy Best-First Search. A* Search. Minimax. Alpha-Beta Pruning.

PROJECTS

DEGREES

Write a program that determines how many “degrees of separation” apart two actors are.

Details: https://cs50.harvard.edu/ai/2024/projects/0/degrees/

My solution: degrees directory

TIC-TAC-TOE

Using Minimax algorithm, implement an AI to play Tic-Tac-Toe optimally.

Details: https://cs50.harvard.edu/ai/2024/projects/0/tictactoe/

My solution: tic-tac-toe directory

KNOWLEDGE

Course week 1: Propositional Logic. Entailment. Inference. Model Checking. Resolution. First Order Logic.

PROJECTS

KNIGHTS

Write a program to solve logic puzzles.

Details: https://cs50.harvard.edu/ai/2024/projects/1/knights/

My solution: knights directory

MINESWEEPER

Write an AI to play Minesweeper.

Details: https://cs50.harvard.edu/ai/2024/projects/1/minesweeper/

My solution: minesweeper directory

UNCERTAINTY

Course week 2: Probability. Conditional Probability. Random Variables. Independence. Bayes’ Rule. Joint Probability. Bayesian Networks. Sampling. Markov Models. Hidden Markov Models.

PROJECTS

PAGE RANK

Write an AI to rank web pages by importance.

Details: https://cs50.harvard.edu/ai/2024/projects/2/pagerank/

My solution: page rank directory

HEREDITY

Write an AI to assess the likelihood that a person will have a particular genetic trait.

Details: https://cs50.harvard.edu/ai/2024/projects/2/heredity/

My solution: heredity directory

OPTIMIZATION

Course week 3: Local Search. Hill Climbing. Simulated Annealing. Linear Programming. Constraint Satisfaction. Backtracking Search.

PROJECTS

CROSSWORD

Write an AI to generate crossword puzzles.

Details: https://cs50.harvard.edu/ai/2024/projects/3/crossword/

My solution: crossword directory

LEARNING

Course week 4: Supervised Learning. Nearest-Neighbor Classification. Perceptron Learning. Support Vector Machines. Regression. Loss Functions. Overfitting. Regularization. Reinforcement Learning. Markov Decision Processes. Q-Learning. Unsupervised Learning. k-means Clustering.

PROJECTS

SHOPPING

Write an AI to predict whether online shopping customers will complete a purchase.

Details: https://cs50.harvard.edu/ai/2024/projects/4/shopping/

My solution: shopping directory

NIM

Write an AI that teaches itself to play Nim through reinforcement learning.

Details: https://cs50.harvard.edu/ai/2024/projects/4/nim/

My solution: nim directory

NEURAL NETWORKS

Course week 5: Artificial Neural Networks. Activation Functions. Gradient Descent. Backpropagation. Overfitting. TensorFlow. Image Convolution. Convolutional Neural Networks. Recurrent Neural Networks.

PROJECTS

TRAFFIC

Write an AI to identify which traffic sign appears in a photograph.

Details: https://cs50.harvard.edu/ai/2024/projects/5/traffic/

My solution: traffic directory

LANGUAGE

Course week 6: Syntax. Semantics. Context-Free Grammar. nltk. n-grams. Bag-of-Words Model. Naive Bayes. Word Representation. word2vec. Attention. Transformers.

PROJECTS

PARSER

Write an AI to parse sentences and extract noun phrases.

Details: https://cs50.harvard.edu/ai/2024/projects/6/parser/

My solution: parser directory

ATTENTION

Write an AI to predict a masked word in a text sequence.

Details: https://cs50.harvard.edu/ai/2024/projects/6/attention/

My solution: attention directory

About

My codes for the CS50’s Introduction to Artificial Intelligence course

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published