Hi, arpan_sen:
They try to balance length in the early algorithms, for example, H-Tree
Steiner tree tried to balance load (wire load and input gate load). To find the steiner point has different algorithm. You can use n-ways partitioning/clustering to get the points.
Sometimes, people used clock mesh (!!!!) to reduce the skew (but burned power)
For more information, you can check the DAC proceeding in the late 90's. There are tons of those related algorithms.