Introduce linear programming
Introduce Integer programming
Formulate and solve some example toy problems live in a jupyter notebook using the PuLP modeling library.
Discuss briefly how these are being solved (Branch and Cut algorithm)
Provide overview on how to model more complex problems
Discuss pitfalls, why some programs are solvable and why some take a lifetime