Boundary Constraints in Force-Directed Graph Layout Yani Zhang yanizhang@soe.ucsc.edu Abstract When taken constraints as additional input into graph drawing problem, this will lead to multi-objective optimization problem. The purpose of this report is to summarize the current state of graph drawing and graph layout algorithms that I have learned in this quarter and to discuss some interactive applications of graph layout problems which involve boundary constraints defined by the user. The goal is to allow user to define arbitrary boundaries of a graph and balance the layout of the current nodes of graph in real time within the defined boundaries. This algorithm should take boundary as additional input to graph layout problem, and it should preserve the metal map of the original graph and all users to visualize the process of graph layout. Motivation By examining a range of recently published journal articles, magazine articles and internet sites on the topic of constrained graphs and its interactive applications, I found several interactive constraint-based system have been implemented to achieve the goal of interactively manipulate graph layout, but not many of them try to include outside force or environment force as boundary constraints. For example, the GLIDE (Graph Layout Interactive Diagram Editor) system [1] is an editor for drawing medium-sized graphs that organizes the interaction within a vocabulary of specialized constraints for graph drawing, but it doesn’t involve manipulation of boundary constraints. There is also a graph visualization system CGV (Coordinated Graph Visualization) [2], which incorporates several interactive views that address different aspects of graph visualization. But it didn’t realize interactively defining boundary of graph either. Also there are constrains-driven layout algorithms for network diagrams [3] (also known as node-link diagrams and circle-and-arrow diagrams), which propose a variety of layout techniques to exhibit the Visual Organization Features (VOFs). VOFs are arrangements of related nodes in the diagram including horizontal and vertical alignment, axial and radial symmetries, various shape motifs (e.g., “T”-shaped and hub-shaped motifs), left-to-right and top-to-bottom sequential placement, and simple node proximity. However, it didn’t constrain the area where the graph can be laid. Related Work Early methods to include boundary constraints are trying to control the size of the graph layout by assuming that the boundary of the prespecified drawing region acts as a “wall” [4]. And for allow users to interactively contain constraints, they have a constrained graph layout model which is a generalization of the force-directed model for graph layout [5]. Similar to force-directed methods, these techniques find a layout minimizing a goal function. Dissimilar to force-directed methods, constrained graph layout algorithms allow the goal to be minimized subject to placement constraints on the nodes. Existing research on graph layout has tended to focus on how to layout a graph statically using a fixed pre-defined style [6]. Unfortunately, this model of graph layout is not suitable for interactive applications since when a graph is modified and redisplayed the new layout may not preserve the mental map of the user and the application program cannot add constraints on the layout which take into account the underlying semantics of the object represented by the graph. The layout module takes 3 parameters: the graph G= (V, E), a set of constraints over the x and y positions of the nodes (the constraints may also refer to other variables than the node coordinates.), and a partial assignment of suggested values for the node coordinates. The goal of graph layout module is to find an assignment to variables representing the node coordinates which is feasible, that is satisfies the constraints, gives a good layout, and assigns values to the variables which are as close as possible to the suggested values [7]. Proposed Research Direction The original graph I will consider force-directed approach which uses a physical model where the vertices and edges of the graph are viewed as objects subject to various forces. The boundaries defined by the user will represented by lines which are linked between two nodes, and lines linked together as boundaries. The users can manipulate those nodes to change the shape of the boundaries. I will first try unit repelling forces on the boundary, and push the original graph inside it. And for each node of the original graph, after adding all the forces to it, I will recalculate their positions inside the boundary and show the process of changing to a new layout. Reference [1] Ryall, Kathy, Joe Marks, and Stuart Shieber. "An interactive constraint-based system for drawing graphs." Proceedings of the 10th annual ACM symposium on User interface software and technology. ACM, 1997. [2] Tominski, Christian, James Abello, and Heidrun Schumann. "CGV—An interactive graph visualization system." Computers & Graphics 33.6 (2009): 660-678. [3] P. Eades and R. Tamassia. Algorithms for drawing graphs: An annotated bibliography. Technical Report CS-89-09, Department of Computer Science, Brown University, October 1989. Revised version. [4] Fruchterman, Thomas MJ, and Edward M. Reingold. "Graph drawing by force‐directed placement." Software: Practice and experience 21.11 (1991): 1129-1164. [5] He, Weiqing, and Kim Marriott. "Constrained graph layout." Graph Drawing. Springer Berlin/Heidelberg, 1997. [6] Kamps, Thomas, Joerg Kleinz, and John Read. "Constraint-based spring-model algorithm for graph layout." Graph drawing. Springer Berlin/Heidelberg, 1996. [7] Dwyer, Tim, Kim Marriott, and Michael Wybrow. "Topology preserving constrained graph layout." Graph Drawing. Springer Berlin/Heidelberg, 2009.