I think there's not (yet) such addon, the only 3d printing related one (included by not enabled by default) has not this feature, but I guess it also depends on some printer spec, like the printing area shape, maybe other things, like the printer type (a powder sintering printer can print things in a very different way than a fdm printer, eg).
The only thing you can do now in Blender, if it helps you, is to use the UV map "pack island" tool to simulate the best layout from the objects you have in the scene, maybe.
If you can find out what is the shape for each object that has to fit (it could depend a alot on the objects shapes), you can create a plane for each object shaped like its limits.
Then merge those separate planes together, in a single object and then UV unwrap them. The UV/image has a "pack islands" that can optimize the UV maps on the texture space.
Here I did it with some basic shapes, just to get you the idea:

I just used the largest horizontal face for each separate mesh. I know it could not be realistic, is just to give you the idea.
If you can consider the texture space as your printer printing bed (ie: only square print beds), the UV can be optimized to fill it (you can also scale them).
then the "pack islands" could help you to find the best way to pack them in that space. eg going from

to

then, of course you have to replicate that layout in the 3d view to get the same suggested placement. If this helps you you can also export the uw layout as .svg and then import tht svg into blender, to help you as a reference (eg: snapping)

