Triangula uses a modified genetic algorithm which I wrote about on the wiki here [1]. The reason I didn't use simulated annealing is because I ran some tests and found it was generally less effective for my case.
[1] https://github.com/RH12503/Triangula/wiki/Explanation-of-the...