A C++17 project implementing greedy and local search optimization algorithms for the 2D rectangle bin packing problem: minimize the number of equal-sized square bins needed to pack a set of rectangles (rotations allowed). The greedy family covers Bottom-Left, Shelf, and MaxRects placement strategies combined with two rectangle-ordering strategies; the local search family provides geometry, permutation, and overlap neighborhoods with pluggable selectors and scoring heuristics. An interactive SDL2 + Dear ImGui GUI visualizes the algorithms step by step, complemented by a headless CLI for debugging.
Technologies: C++17, CMake, SDL2, Dear ImGui
