What would be a good way to achieve this array?

Just out of curiosity, what would be a good way to achieve something like this. I have an object arrayed along a path, but I’d like to duplicate with an offset 3 or 5x (kinda like the sketch) but test out different families at each polycurve. Do I make a duplicate group in the same script, select the various elements, and run them all at the same time?

Perhaps use generative design to find the optimum combination of offset and family?

The only question is what do you evaluate for? Lost material? Deviation of the endpoint from curve? Overlap? Open space? Coverage of adjacent space?

With that little bit of insight on the “goal” you have a pretty clear cut case for an application of Generative Design (the best possible result from near infinite possible offset and family type applications)