Should be easy enough with imagemagick through a shell script (Linux). Probably possible with G"mic as well, as you basically need a cli interface where you set the scaling parameters.
After that, it’s a loop, calculations for which can be done within the script. If I had to attack, I’d start with hardcoding all the parameters, except start and end size. Once that works, you can add more parameters to the script, and perhaps have it figure out the start size by itself. Metadata (including tags) should be kept by the program doing the resizing).
But how useful is stair step scaling? I’ve heard about it, but haven’t seen any examples showing its use, let alone any benefits compared to “one-step” methods. And do you use 10% of the difference, or at most 10% of the original image size (yes, I know you use 10% of the difference, but that has some strange consequences for small size reductions…).