Neato is a program in the graphviz toolkit for generating visual layouts of undirected graphs. Its layout heuristic creates virtual physical models and runs an iterative solver to find low energy configurations. Neato has a wide variety of uses, but its intended applications are in telecommunication networks, computer programming and software engineering.
From the NEATO
User's manual...
NEATO is a utility that draws undirected graphs, which are common in telecommunications and computer programming. It draws a graph by constructing a virtual physical model and running an iterative solver to find a low-energy configuration. Following an approach proposed by Kamada and Kawai [KK89], an ideal spring is placed between every pair of nodes such that its length is set to the shortest path distance between the endpoints. The springs push the nodes so their geometric distance in the layout approximates their path distance in the graph. This often yields reasonable layouts [Ead84][FR91]. (In statistics, this algorithm is also known as multidimensional scaling. Its application to graph drawing was noted by Kruskal and Seery in the late 1970s.)
NEATO is compatible with the directed graph drawing program DOT in sharing the same input file format and graphics drivers [KN91]. Since the file format includes both undirected and directed graphs, NEATO draws graphs prepared for DOT, and vice versa. Both programs have the same options for setting labels, colors, shapes, text fonts, and pagination, and for generating code in common graphics languages (PostScript, raster formats such as GIF and PNG, SVG, FrameMaker MIF, HPGL/2, and web click maps). Both work with DOTTY, an interactive graph viewer for X windows. (The lneato command script runs neato from an interactive window.)