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.