I'd think you can just use the stretch option in the edit window.
It'll stop shrinking once any dimension of any of the prims is down to 0.01m: once you reach that, you'll need to manually resize prims, or accept that the heart that's at that size is your smallest one and size the others up to make your seven.
From: someone
What exactly do I have to do?
This is art. Do it any way that works.
However, to resize prims, the simplest way is to use the stretch option in the edit window. The other options are to enter values into the edit window, or to write a script to resize them.
From: someone
Is there a set formula I should be using?
No. This is art. You 'should' be doing whatever you want to.
That said, if you want to think up a formula, go for it. Maybe the smallest heart is size 1, the next smallest 1*1.1, the next 1*1.2, and so forth. (IE: multiply each dimension by 1.1, 1.2, and so forth.)
But you don't have to. You can just pull it out with the stretch handles until it 'looks nice'. Or you can use the grid and get mathematically precise resizing without having to do any calculations.
From: someone
What about positioning after the resizing?
Make them all match X and Z values, or Y and Z values, and their centres will all be the same height off the ground, and the same X or Y location. Stagger them along the remaining (Y or X) dimension, and you can see them all pretty in a row.