Given node connections, how to draw a graph in order to ease visualization?

Algorithms for node and edge positioning according to aesthetic criteria (e.g. no edge crossing and compact).

The following figure depicts a graph with arbitrary node position (left) and with optimal node position (right).