Optimizing laser cutter layout

Hello everyone, I am looking for a method, plug in, or grasshopper process that can be used to optimize layout of multiple, same shape, curves for use in laser cutting. I can obviously use trial and error for this specific instance, but I’m looking for a process to use.

For example, I want to cut as many 30mm star shapes as possible on a sheet that is 180 cm x 300 cm.

Is there anything like that?

Thanks ahead of time

OpenNest is probably what you are looking for.

download link for component version: