Temperature Schemes next up previous
Next: Applications in Compiler Construction Up: Force and Energy Controlled Previous: Simulated Annealing

Temperature Schemes

Fruchterman and Reingold [FrRe91] adapted the concept of cooling to the normal spring embedders. Nodes are moved in direction of the force vector instead of randomly. The amount of movement tex2html_wrap_inline2278 is limited by the global temperature T, i.e. the smaller T is, the smaller is the movement distance tex2html_wrap_inline2442 . If T = 0, the nodes don't move anymore. The global cooling function depends only on the size of the graph.

   figure425
Figure 11: Detection of Rotations and Oscillations

Frick e.a. [FLM95] expanded this concept by introducing local temperatures T(v) for each node. The distance of movement of a node v is tex2html_wrap_inline2450 . Thus, the amount of movement may vary for each node. The global temperature is the average of all local temperatures: tex2html_wrap_inline2452 . The simulation is iterated until tex2html_wrap_inline2454 is cooled down to a threshold tex2html_wrap_inline2456 . There is no global cooling function, but the temperature of a node is determined by its movement behavior. The old movement impulse vector tex2html_wrap_inline2458 is compared to the new impulse tex2html_wrap_inline2460 (Fig. 11). If both nearly point into the same direction, the ideal position of node v can probably be found in this direction. Thus, its local temperature T(v) is enlarged in order to move the node v faster (i.e. in larger steps) to its ideal position. If both nearly point into opposite directions, we assume that the node v was moved too much and now starts to oscillate around the ideal point. Thus, T(v) is decreased to damp the oscillation until the node has found its inoperative position. If a node turns several times in the same direction to the right (or to the left, respectively), it probably circles around its ideal point (like a rotation), thus T(v) is decreased, too. Since the local temperature is sensitive to the movement behavior, it is automatically recognized when the simulation can stop without wasting iterations where the layout quality does not change anymore.


next up previous
Next: Applications in Compiler Construction Up: Force and Energy Controlled Previous: Simulated Annealing

Georg Sander
Thu Aug 1 15:27:34 PDT 1996