It would work. Even unsupervised. Let random programs play against each other. Let the losers die and the winners breed offsprings with mutations. If you let that run long enough, i tend to think that the new world champion would arise with certainty.
The question is how long "long enough" is. Probably "too long" on current hardware.
Would be nice to let this experiment run and draw a graph showing the elo of the best program over time.