To determine the percentage of the area that is visible from your observer locations, you can simply reclassify the output as a Boolean (
not visible=0). Then get the total count of raster as a proportion of the total number of cells in your study area as per this example. If you don't have Spatial Analyst, then an alternative option would be to make one raster as described and another where visible cells are any value and everything else is NoData. Then get the counts of all cells in the study area and visible cells using the Summary Statistics tool.
However, that only gets you the percentage for one scenario, and if I have understood your question, you want to move points to optimise visibility. To determine which points to move, I'd recommend looking at the Observer Points tool. From this you can determine which point(s) are contributing the least
to the total visibility and which ones have the most overlap of visibility (and are therefore a bit redundant - and thus are candidates to be moved). You could then approach the iterative nature of this in a few ways:
- Manually - if you are very familiar with the area, you may be able to move points based on local knowledge that informs you about accessibility, obstructions and terrain height. If a quick improvement rather than maximal optimisation is sufficient, then you could test half a dozen iterations and pick the best.
- Repeatedly test randomly located observers until you find the best positions, probably limiting this to n iterations (where n is large, depending on the speed of your computer and patience). I'd refine this by restricting the locations where the points can be randomly located to higher ground. You'll need to write some Python for this.
- Start with a logical positioning of the observers and then iterate n-times but this time, identify the point(s) contributing the least to visibility (as described above) and then moving it to higher ground within some radius of its current location - you'll need some sanity checks here to prevent the program flip-flopping the point between just two locations.