SAT solver
Write a Boolean satisfiability solver (DPLL) and use it to solve sudokus.
Theory-minded learners drawn to logic, reasoning and graphical models.
Logic and mathematics for computing, proofs and graphs, algorithms, then Bayesian networks and inference.
Skill labels as listed on Coursera.
| Course | Level | Length | Rating (reviews) |
|---|---|---|---|
| Mathematical Foundations for Computing | Beginner | 20 h | — |
| Applied Mathematical Methods for Computing | Beginner | 19 h | — |
| Geometry and Calculus for Computing | Beginner | 15 h | — |
| Logic and Reasoning for Computing | Intermediate | 18 h | — |
| Algorithms and Complexity | Intermediate | 19 h | — |
Stated prerequisites: Basic math (fractions, squares), basic Python (functions, loops, recursion)
| Course | Level | Length | Rating (reviews) |
|---|---|---|---|
| Mathematical Thinking in Computer Science | Beginner | 42 h | 4.4 (2,289) |
| Combinatorics and Probability | Beginner | 23 h | 4.6 (874) |
| Introduction to Graph Theory | Beginner | 21 h | 4.5 (1,073) |
| Number Theory and Cryptography | Beginner | 17 h | 4.5 (610) |
| Delivery Problem | Beginner | 13 h | 4.7 (376) |
Stated prerequisites: Programming in at least one language (C, Java or Python); familiarity with proofs (induction, contradiction); discrete probability
| Course | Level | Length | Rating (reviews) |
|---|---|---|---|
| Divide and Conquer, Sorting and Searching, and Randomized Algorithms | Intermediate | 15 h | 4.8 (5,342) |
| Graph Search, Shortest Paths, and Data Structures | Intermediate | 14 h | 4.8 (2,002) |
| Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming | Intermediate | 15 h | 4.8 (1,279) |
| Shortest Paths Revisited, NP-Complete Problems and What To Do About Them | Intermediate | 13 h | 4.8 (832) |
Stated prerequisites: Abstract thinking and math skills, programming in at least one language, basic discrete probability (independence, conditional independence, Bayes' rule)
| Course | Level | Length | Rating (reviews) |
|---|---|---|---|
| Probabilistic Graphical Models 1: Representation | Advanced | 67 h | 4.6 (1,445) |
| Probabilistic Graphical Models 2: Inference | Advanced | 38 h | 4.6 (491) |
| Probabilistic Graphical Models 3: Learning | Advanced | 66 h | 4.6 (305) |
This path takes 435 hours, about 10 months at 10 hours a week. A Coursera Plus subscription gives access to most of its courses during that time.
Write a Boolean satisfiability solver (DPLL) and use it to solve sudokus.
Program a planner that finds a sequence of actions to reach a goal, using A* search.
Model a small diagnostic domain with a Bayesian network and explain its conclusions.