AutoLayout Force Directed

Is there any particular reason that when using ForceDirected AutoLayout, given the same data set each time, the layout appears different?
Also, is there a way to prevent links from overlapping? Do I have to override a specific property? If so, are there any examples on how to do that?
Any help is appreciated!

Force-directed autolayout has a built-in randomizer that is needed to handle cases where two nodes have zero distance between them. They need a “nudge” to get moving, and randomizing the nudge is essential to avoid degenerate behaviors.
We have added a GoLayoutForceDirected.RandomNumberGenerator property in 2.2; you can try in the 2.2 beta that is currently available.
The force-directed autolayout is not designed to consider the positions of the links.