Is this a good way of generating diverse solutions to a problem using a genetic algorithm? Imagine a complicated blackbox-esque system that has 20 inputs and 5 outputs. I have a set of criteria I am able to use to construct a fitness function. I run a genetic algorithm to deduce values which maximize my fitness function, and I keep iterating until a solution emerges which passes a threshold. Once this threshold is met, the genetic algorithm starts afresh except the fitness function now includes a positive term proportional to the euclidan distance between the candidate solutions and the previously determined solution (the one that exceeded the threshold earliar.) 

Once a second set of inputs is found which matches exceeds the threshold, the fitness function is updated to also include a term proportional to the euclidian disance from the second solution. Both terms are divided by two to prevent this euclidan distance derived terms in my fitness function from overpowering the others.

Would a process like this, iterated sufficiently, be an efficient way of generating a diverse set of inputs, each of which represents a set of inputs which achieve a high fitness score?

(Please assume that a diverse of solutions exists for the problem at hand; the goal of the algorithm is to find them)
The success (or otherwise) of your proposed scheme may well be highly problem dependant, so I would urge you to consider diversity-promoting methods such as 'niching' or 'island models' that have proved useful across a wide-range of problems.

Island models, for example involve partitioned populations that are evolved separately, with only occasional gene transfer.

More details on diversification methods can be found in the (freely downloadable) 'Essentials of Metaheuristics'