This course provides a comprehensive study of optimization theory and computational methods, from classical linear programming to modern data science applications. Students will learn to formulate real-world problems as mathematical optimization models and solve them using appropriate algorithms — covering exact methods, heuristics, and state-of-the-art techniques used in industry and research.

What You Will Learn

  • Mathematical Foundations — Convexity, gradients, Hessians, and optimality conditions
  • Linear & Integer Programming — Simplex method, duality, sensitivity analysis, branch-and-bound
  • Network Optimization — Shortest path, maximum flow, minimum spanning tree algorithms
  • Nonlinear Optimization — Gradient descent, Newton's method, KKT conditions
  • Dynamic Programming & Metaheuristics — DP formulations, simulated annealing, genetic algorithms
  • Stochastic & Robust Optimization — Decision-making under uncertainty, Monte Carlo simulation
  • Game Theory — Nash equilibrium, mechanism design, and optimization in strategic settings
  • Modern Applications — Machine learning optimization, big data, combinatorial optimization