To answer my replies,
I'm running Trainz 2006. I was having a problem with a simple layout that included 2 ovals that shared a section of track (so it required 2 junctions). 1 train runs the outer loop, the other the inner loop.
The AI just couldn't seem to figure out how to throw one switch to allow the "outer loop" train to stay on the outer loop. For some reason, after setting that switch in Surveyor to the outer loop, the AI now works and changes both junctions as required...