title: "Combinatorial Optimization: Bin Packing & Scheduling" description: "Use Google OR-Tools to solve bin packing and job scheduling problems. Master CP-SAT modeling to automatically optimize resource allocation!" duration: "120 minutes" difficulty: "Advanced"
Combinatorial Optimization: Bin Packing & Scheduling
Combinatorial Optimization is a core field in computer science and operations research. Its goal: find the best arrangement under limited resources.
- Bin Packing: how to pack items into the fewest bins?
- Job Scheduling: how to arrange tasks to minimize total completion time?
- Resource Allocation: how to distribute limited resources optimally?
These problems are everywhere in logistics, manufacturing, cloud computing, and HR management.
Course Outline
Chapter 1: Bin Packing
Fit items into minimum bins. CP-SAT exact solution + FFD/BFD approximation.
Chapter 2: Job Scheduling
Arrange tasks on timeline to meet deadlines and resource constraints.
Chapter 3: Traveling Salesman Problem (TSP)
Find shortest route visiting all cities. 2-opt, Lin-Kernighan heuristics.
Chapter 4: Cutting & Packing
2D and 3D bin packing extensions. Bottom-Left, Guillotine heuristics.
Chapter 5: Knapsack Selection
Select projects under budget constraints. Dependencies, exclusions, portfolio optimization.
Course Overview
This course teaches you four classic combinatorial optimization problems, their CP-SAT formulation, and practical heuristic algorithms. Although NP-hard, you can get "good enough" answers in acceptable time.