What is the most effective way to arrange rectangles and circles within a larger rectangle without overlapping and taking up minimal space? This is often referred to as the rectangle packing problem or 2D bin packing. However, I have been unable to find any resources detailing how to fit rectangles and circles together. All the resources I have found only cover fitting rectangles or circles separately. It should also be noted that the shapes can be rotated 360 degrees.
To provide context, I am attempting to create a program that arranges electronic components (rectangles and circles) on a rectangular printed circuit board (PCB) with the goal of minimizing space usage.