A genetic algorithm to design satellite constellations for regional coverage