Current interactive graphing systems allow users to rearrange nodes in a graph that was originally constructed by graph visualization software using a data file. These graphs can be clustered by characteristics of the nodes using different algorithms. However, the existing software allows the user to manipulate the nodes, but does not interpret the user's input. If the user wants another layout of the graph, they have to move every node to fit the new layout.

The ultimate goal of this project is to produce a tool which can interpret the user's input and rearrange the nodes accordingly. This will use the k-Means algorithm or a variant of it to cluster the nodes initially, and then use a machine learning technique to gauge the user's intent when they move a node and then recompute the clustering of the nodes using the k-Means algorithm again.

Applications of this research could include the representations of a library, a music collection, a class list and many other types of databases. We will develop test data to determine the usefulness of the product on different types of data.

For this project, we will be using graph visualization tools altered to serve our purpose. Our eventual test will be on data sets up to a few hundred nodes, however it should be scalable up to or beyond thousands of nodes.

Final Report