Different results from same data set?

If we have a large number of addresses (~70) in a very compact area, we don’t always get the same results when calculating the drive order. For example: the first request to optimize the order returns 1, 2, 3. A second request might return 3, 1, 2 and a third 3, 2, 1. Is this expected behavior? Is it because the addresses are so close together that there’s no one right answer? Or should the GH algo always return the same results?