If you have no further constraints then you can randomly assign numbers from 0 to 10 to each location and only show a location if the zoom level if equal or greater than the asigned number. Just make sure the frequencies correspond to how much area is covered (ie. if zoom 9 covers 4 times the area of zoom 10 then there should be 3 times as many 10's assigned as there are 1-9's.)
Of course if you consider some locations more important than others you will need to come up with an algorithm that takes this importance into account when assigning numbers.
If this method doesn't result in an even enough distribution you can divide the map into blocks this ensuring that each area has a certain number of pins with a particular assigned number.