Graph Drawing by High-Dimensional Embedding
|
|
- Mervyn Norton
- 5 years ago
- Views:
Transcription
1 Graph Drawing by High-Dimensional Embedding David Harel and Yehuda Koren Dept. of Computer Science and Applied Mathematics The Weizmann Institute of Science, Rehovot, Israel Abstract. We present a novel approach to the aesthetic drawing of undirected graphs. The method has two phases: first embed the graph in a very high dimension and then project it into the 2-D plane using PCA. Experiments we have carried out show the ability of the method to draw graphs of 10 5 nodes in few seconds. The new method appears to have several advantages over classical methods, including a significantly better running time, a useful inherent capability to exhibit the graph in various dimensions, and an effective means for interactive exploration of large graphs. 1 Introduction A graph G(V = {1,...,n},E) is an abstract structure that is used to model a relation E over a set V of entities. Graph drawing is a standard means for the visualization of relational information, and its ultimate usefulness depends on the readability of the resulting layout; that is, the drawing algorithm s capability of conveying the meaning of the diagram quickly and clearly. Consequently, many approaches to graph drawing have been developed [2, 8]. We concentrate on the problem of drawing undirected graphs with straight-line edges, and the most popular approaches to this appear to be those that define a cost function (or a force model), whose minimization determines the optimal drawing. The resulting algorithms are known as force-directed methods. We suggest a new approach to the problem of graph drawing, relying on the observation that laying out a graph in a high dimension is significantly easier than drawing it in a low dimension. Hence, the first step of our algorithm is to quickly draw the graph in a very high dimensional space (e.g., in dimensions). Since standard visualization techniques allow using only 2 or 3 dimensions, the next step of our algorithm is to algorithmically project the high-dimensional drawing into a low dimension. For this, we have adopt a method called principal components analysis (PCA), which is well known in multivariate analysis. The resulting algorithm is extremely fast, yet very simple. Typical computation times are of less than 3 seconds for node graphs, and are thus significantly faster than force-directed approaches. As to the quality of the drawings, Section 4 shows several very encouraging results. 2 Drawing Graphs in High Dimension Frequently, drawing a graph so as to achieve a certain aesthetic criterion cannot be optimally achieved in a low dimension, due to the fact that several aesthetic goals have to compete on a shared limited space. Thus, being able to carry out the initial drawing work in many dimensions leaves more space for richer expression of the desired properties, and thus makes the entire task easier.
2 In order to draw a graph in m dimensions, we choose m pivot nodes that are almost uniformly distributed on the graph and associate each of the m axes with a unique node. Axis i, which is associated with pivot node p i, represents the graph from the viewpoint of node p i. This is done by defining the i-th coordinate of each of the other nodes as its graph-theoretic distance from p i. Hence p i is located at place 0 on axis i, its immediate neighbors are located at place 1 on this axis, and so on. More formally, denote by d uv the graph-theoretic distance between node v and node u. Let Centers be some set {p 1,p 2,...,p m } V. Each node v V is associated with m coordinates X 1 (v),x 2 (v),...,x m (v), such that X i (v) =d piv. The resulting algorithm for drawing the graph in m dimensions is given in Fig. 1. The graph theoretic distances are computed using breadth-first-search (BFS). (When edges are positively weighted, BFS should be replaced by Dijkstra s algorithm; see e.g., [1].) The set Centers is chosen as follows. The first member, p 1, is chosen at random. For j =2,...,m, node p j is a node that maximizes the shortest distance from {p 1,p 2,...,p j 1 }. This method is mentioned in [7] as a 2-approximation to the k- center problem, where we want to choose k vertices of V, such that the longest distance from V to these k centers is minimized. Function HighDimDraw (G(V = {1,...,n},E),m) % This function finds an m-dimensional layout of G: Choose node p 1 randomly from V d[1,...,n] for i =1to m do % Compute the i th coordinate using BFS: for every j V X i (j) d pij d[j] min{d[j],x i (j)} % Choose next pivot: p i+1 arg max {j V } {d[j]} return X 1,X 2,...,X m Fig. 1. Drawing a graph in m dimensions The time complexity of this algorithm is O(m E ), since we perform BFS in each of the m iterations. A typical value of m is 50. Here now are two observations regarding the properties of the resulting drawing. First, for every two nodes v and u and axis 1 i m, wehave: d uv X i (v) X i (u) This follows directly from the triangle inequality, since: d piu d piv + d uv and d piv d piu + d uv = X i (v) X i (u) = d piv d piu d uv Thus, nodes that are closely related in the graph will be drawn close together. The second observation goes in the opposite direction, and shows a kind of separation between nodes that are distant in the graph. For an axis i and nodes u and v, denote def = min{d piv,d piu}. Then, for every v, u V and axis 1 i m, wehave: δ i v,u 2
3 d uv 2δ i v,u X i (v) X i (u) For the proof, assume w.l.o.g. that δv,u i = d piv. Again, using the triangle inequality: d uv d piv + d piu = d piv + d piv +(d piu d piv) =2δv,u i + X i (v) X i (u) = d uv 2δv,u i X i (v) X i (u) Thus if we denote the minimal distance between {v, u} and Centers by: def ɛ v,u = min d p i {1,...,m},j {v,u} ij, then there exists an axis i such that X i (v) X i (u) d uv 2ɛ v,u. We note that according to the way we have chosen the pivots, we expect ɛ v,u to be fairly small. 3 Projecting Into a Low Dimension At this stage we have an m-dimensional drawing of the graph. In order to visually realize the drawing we have to project it into 2 or 3 dimensions. Picking a good projection is not straightforward, since the axes are correlated and contain redundant information. Moreover, several axes may scatter nodes better than others, thus being more informative. For example, consider a square grid (as in Fig. 3(a)). If we use two axes that correspond to two opposite corners, the resulting drawing will be essentially 1-dimensional, as the two axes convey basically the same information and are anti-correlated. (That is, being near one corner is exactly like being far the opposite corner.) Also, taking an axis associated with a boundary node is very often more informative than taking an axis associated with a central node; the first case causes the nodes to be scattered in a much better way, since the maximal distance from a boundary node is about twice as large as the maximal distance from a central node. To address these issues we use a tool that is well known and in standard use in multivariate analysis principal component analysis (PCA). PCA transforms a number of (possibly) correlated variables into a (smaller) number of uncorrelated variables called principal components (PCs). The first principal component accounts for as much of the variability in the data as possible, and each succeeding component accounts for as much of the remaining variability as possible. By using only the first few principal components, PCA makes it possible to reduce the number of significant dimensions of the data, while maintaining the maximum possible variance thereof. See [3] for a comprehensive discussion of PCA. In our case, we have mn-dimensional variables X 1,...,X m, describing the n nodes in m dimensions. We want to represent the n nodes using only k dimensions (typically k =2), using kn-dimensional uncorrelated vectors Y 1,...,Y k, which are the principal components. Hence, the coordinates of node i are (Y 1 (i),...,y k (i)). Each of the PCs among Y 1,...,Y k is a linear combination of the original variables X 1,...,X m. def Here are the details. Denote the mean of i-th axis by m i = n X i (j) j=1 n. The first stage of the PCA is to center the data around 0 which is just a translation of the drawing. We denote the vectors of centered data by ˆX 1,..., ˆX m, defined as: ˆX i (j) =X i (j) m i, i =1,...,m, j =1,...,n 3
4 We now construct an m n matrix, X, whose rows are the (centered) coordinates: ˆX 1 (1)... ˆX1 (n) X = ˆX m (1)... ˆXm (n) The covariance matrix S, of dimension m m, is defined as S = 1 n XXT We now have to compute the first k eigenvectors of S (those that correspond to the largest eigenvalues). We denote these eigenvectors by u 1,...,u k. The vector lengths should be normalized to 1, so that these k vectors are orthonormal. A simple method for computing the eigenvectors is described below. Now to the projection itself. The first new axis, Y 1, is the projection of the data in the direction of u 1, the next axis, Y 2, is the projection in the direction of u 2, and so on. Hence the new coordinates are defined by: Y i = X T u i, i =1,...,k It can be proved that Y 1 is the 1-dimensional projection of the data that has the maximal variance (i.e., in which the data is most scattered), and also that Y 1,...,Y k constitute the k-dimensional projection of the data with the maximal variance. Moreover, these k axes are uncorrelated. In general, as we shall see in Section 4, it suffices to draw a graph on the plane using Y 1 and Y 2 only, thus scattering the nodes in a maximal fashion. 1 However, sometimes using Y 3 or Y 4 may be useful too. Regarding time complexity, the most costly step is computing the covariance matrix S = 1 n XXT. (In practice we do not divide by n, since multiplication by a constant does not change the eigenvectors.) This matrix multiplication is carried out in a straightforward way using exactly m 2 n multiplications and additions, so the time complexity is O(m 2 n), with a small constant (although matrix multiplication can be done faster in theory; see e.g., [1]). As to computing the first eigenvectors of the m m covariance matrix S (i.e., those that correspond to the largest eigenvalues), we use the simple power-iteration method; see e.g., [12]). Since m<<n, the running time is negligible (taking in practice only a few milliseconds) and there is no need for more complicated techniques. The basic idea is as follows. Say we are given an m m matrix A with eigenvectors u 1,u 2,...,u m, whose corresponding eigenvalues are λ 1 >λ 2 > >λ m. Let x R n.ifxis not orthogonal to u 1 (i.e., x u 1 0) then the series Ax, A 2 x, A 3 x,... converges in the direction of u 1. More generally, in the case where x u 1 =0,x u 2 =0,...,x u j 1 = 0,x u j 0, the series Ax, A 2 x, A 3 x,... converges in the direction of u j. The full algorithm is depicted in Fig Thus, using PCA is, in a sense, incorporating a global repulsive force, in the terms used in force-directed methods. 4
5 Function PowerIteration (S m m matrix ) % This function computes u 1,u 2,...,u k, the first k eigenvectors of S. const ɛ for i =1to k do û i random û i ûi û i do u i û i % Orthogonalize against previous eigenvectors: for j =1to i 1 do u i u i (u i u j )u j end for û i Su i û i ûi û i % normalization while û i u i < 1 ɛ u i û i end for return u 1,u 2,...,u k 4 Examples Fig. 2. The power iteration algorithm Our algorithm was implemented in C, and runs on a dual processor Intel Xeon 1.7Ghz PC. Since the implementation is non-parallel, only one of the processors is used. For all the results given here we have set m =50, meaning that the graphs are embedded in 50 dimensions. Our experience is that the results are not sensitive to the exact value of m. In fact, increasing m does not degrade the quality of the results, but doing so seems not to be needed. On the other hand, picking an overly small value for m may harm the smoothness of the drawing. Table 1 gives the actual running times of the algorithm on graphs of different sizes. In addition to the total computation time, we show the times of the two most costly parts of the algorithm computing the m-dimensional embedding (Fig. 1) and computing the covariance matrix S. We want to stress the fact that since the algorithm does not incorporate an optimization process, the running time is determined completely by the size of the graph (i.e., V and E ), and is independent of the structure of the graph. This is unlike force-directed methods. graph V E total high dim. covariance time embedding comp. matrix 516 [11] [11] elt Crack elt Sphere Sierpinski (depth 10) grid Ocean mrnga grid mrngb Taken from the University of Greenwich Graph Partitioning Archive, at: c.walshaw/partition Table 1. Running time (in seconds) of the various components of the algorithm 5
6 Graphs of around 10 5 nodes take only a few seconds to draw, and node graphs take less than a minute. Thus, the algorithm exhibits a truly significant improvement in computation time for drawing large graphs over previously known ones. Following is a collection of several drawings produced by the algorithm. The layouts shown in Fig. 3 are typical results of our algorithm, produced by taking the first two principal components as the axes. Sometimes it might be better aesthetically to take other components. For example, in Fig. 4(a) the 516 graph is depicted using the first and second principal components, while in Fig. 4(b) the first and third PCs are used, resulting in an aesthetically superior drawing. In fact, the algorithm also produces more information than others, by drawing the graph in a high dimension. Thus, we can view the graph from different viewpoints that may reveal interesting aspects of the graph. This is demonstrated in the drawing of the Sphere graph. Fig. 5(a) shows a drawing using the first and second PCs. The six smooth corners appearing in Fig. 5(a) become really salient in Fig. 5(b), where the third and forth PCs are used. These corners are still clearly visible using the forth and fifth PCs in Fig. 5(c), where a flower shape emerges. (a) (b) (c) (d) (e) (f) Fig. 3. Layouts of: (a) A grid; (b) A grid with 1 of the edges omitted at random; 3 (c) A grid with opposite corners connected; (d) A a torus; (e) Crack (f) 3elt 6
7 (a) (b) Fig. 4. Drawing the 516 graph using: (a) 1 st and 2 nd PCs; (b) 1 st and 3 rd PCs 4.1 Zooming in on regions of interest Drawings in two dimensions reveal only part of the richness of the original high dimensional drawing. Indeed, the 2D drawing must forgo showing some properties of small portions of the graph, in order to get a well balanced picture of the entire graph. This facilitates a novel kind of interactive exploration of the graph structure: The user can choose a region of interest in the drawing and ask the program to zoom in on it. We then utilize the fact that we have a high dimensional drawing of the graph, which possibly contains a better explanation for the chosen subgraph than what shows up in 2D. First we take the coordinates of the subgraph from the already computed m-dimensional drawing. We then use PCA to project these coordinates into 2D. In this way we may reveal properties appearing in the high-dimensional drawing, which are not shown in the low-dimensional drawing of the full graph. For example, we wanted to investigate the corners of the Sphere graph. We zoomed in on one of the corners, and the result is shown in Fig. 5(d). It can be seen that the corner is a meeting point of four faces. Another example is the Sierpinski fractal of depth 7, shown in Fig. 6(a). Note that the left and top parts of it are distorted. In Fig. 6(b) we depict the result of zooming-in on the left part of the graph, revealing its nice structure. The layout of the 4elt2 graph, depicted in Fig. 6(c), resembles the one obtained by [9]. For a better understanding of its structure we may zoom-in on parts of the drawing. Fig. 6(d) shows the results of zooming-in on the bottom strip. In Fig. 6(e) we provide a drawing of the Ocean graph, containing over nodes. To understand its microstructure we zoom-in on it, providing a sample result in Fig. 6(f). The last example is the 4970 graph, nicely depicted in Fig. 6(g). We zoom-in on its top-center portion, as shown in Fig. 6(h). 5 Discussion We have presented an extremely fast approach for drawing graphs. Results of the new algorithm resemble those of force-directed graph drawing algorithms. In terms of performance and simplicity the algorithm has some significant advantages when compared to force-directed methods. A simple implementation of a forcedirected method has real difficulties when dealing with graphs of more than a few hundreds of nodes. Recently, several authors, including work done in our own group, have designed multi-scale enhancements of force directed methods, which considerably improve their running time; see [5, 6, 11, 4, 10]. The fastest of them all, [11], draws a node graph in a typical time of ten minutes. Our algorithm is considerably faster, being able to draw a node graph in less than 3 seconds. Moreover, the implementation of our algorithm is much simpler and is almost parameter-free. Recently, we have designed another algorithm for drawing huge graphs, which we call Ace [9]. Ace draws a graph by quickly calculating eigenvectors of the Laplacian 7
8 (a) (b) (c) (d) Fig. 5. Multiple viewpoints of the Sphere graph: (a) first and second PCs; (b) third and forth PCs; (c) forth and fifth PCs; (d) zooming in one of the corners 8
9 (a) (b) (c) (d) (e) (f) (g) (h) Fig. 6. (a) A depth 7 Sierpinski graph; (b) zooming-in on the squeezed left side of (a); (c) the 4elt2 graph; (d) zooming-in on the bottom of (c); (e) the Ocean graph; (f) zooming-in on the micro structure of (e); (g) the 4970 graph; (h) zooming-in on the top-center portion of (g) 9
10 matrix associated with it, using a special algebraic multigrid technique. Ace can draw node graphs in about 2 seconds. However, this algorithm is quite complicated in comparison to the one described here. Moreover, the running-time of Ace (like that of force-directed methods) depends on the graph s structure, unlike our algorithm, where it depends only on the graph s size. A detailed comparison between the results of the two algorithms has yet to be done. The output of our algorithm is multi-dimensional, allowing multiple views of the graph. This also facilitates a novel technique for interactive exploration of the graph, by focusing on selected portions thereof, showing them in a way that is not possible in a 2D drawing of the entire graph. Applications to information visualization Our algorithm can deal directly with edgeweighted graphs, making it suitable for information visualization tasks. In this case it has an interesting performance-related advantage over other algorithms, including Ace: In a typical case, one is given n objects and a distance function measuring the dissimilarity between two objects. Frequently, computing the distance between two objects is a costly operation; e.g., when the objects are DNA sequences of length k, a common distance measure is the edit-distance, whose computation may take time O(k 2 ).A nice drawing puts similar objects close together, while non-similar objects are distantly located. Hence, force-directed drawing algorithms that can draw weighted graphs are suitable. However, n is typically large in such applications, so one has to consider multiscale enhancements, and these would require the computation of the close neighbors of each of the objects. This, in turn, would require the computation of the distances between all pairs, resulting in n (n 1)/2 distance computations, which is often too costly. In contrast, our method needs only m n distance computations. References 1. T. H. Cormen, C. E. Leiserson and R. L. Rivest, Introduction to Algorithms, MIT Press, G. Di Battista, P. Eades, R. Tamassia and I.G. Tollis, Algorithms for the Visualization of Graphs, Prentice-Hall, B. S. Everitt and G. Dunn, Applied Multivariate Data Analysis, Arnold, P. Gajer, M. T. Goodrich, and S. G. Kobourov, A Multi-dimensional Approach to Force- Directed Layouts of Large Graphs, Proceedings of Graph Drawing 2000, LNCS 1984, pp , Springer Verlag, R. Hadany and D. Harel, A Multi-Scale Method for Drawing Graphs Nicely, Discrete Applied Mathematics, 113 (2001), D. Harel and Y. Koren, A Fast Multi-Scale Method for Drawing Graphs Nicely, Proceedings of Graph Drawing 00, LNCS 1984, Springer Verlag, pp , D. S. Hochbaum (ed.), Approximation Algorithms for NP-Hard Problems, PWS Publishing Company, M. Kaufmann and D. Wagner (Eds.), Drawing Graphs: Methods and Models, LNCS 2025, Springer Verlag, Y. Koren, L. Carmel and D. Harel ACE: A Fast Multiscale Eigenvectors Computation for Drawing Huge Graphs, Technical Report MCS01-17, The Weizmann Institute of Science, Available at: A. Quigley and P. Eades, FADE: Graph Drawing, Clustering, and Visual Abstraction, Proceedings of Graph Drawing 2000, LNCS 1984, pp , Springer Verlag, C. Walshaw, A Multilevel Algorithm for Force-Directed Graph Drawing, Proceedings of Graph Drawing 2000, LNCS 1984, pp , Springer Verlag, D. S. Watkins, Fundamentals of Matrix Computations, John Wiley,
Graph Drawing by High-Dimensional Embedding
Journal of Graph Algorithms and Applications http://jgaa.info/ vol. 8, no. 2, pp. 195 214 (2004) Graph Drawing by High-Dimensional Embedding David Harel Dept. of Computer Science and Applied Mathematics
More informationGRIP: Graph drawing with Intelligent Placement
GRIP: Graph drawing with Intelligent Placement Pawel Gajer 1 and Stephen G. Kobourov 2 1 Department of Computer Science Johns Hopkins University Baltimore, MD 21218 2 Department of Computer Science University
More informationGraph drawing in spectral layout
Graph drawing in spectral layout Maureen Gallagher Colleen Tygh John Urschel Ludmil Zikatanov Beginning: July 8, 203; Today is: October 2, 203 Introduction Our research focuses on the use of spectral graph
More informationDrawing Directed Graphs Using One-Dimensional Optimization
Drawing Directed Graphs Using One-Dimensional Optimization Liran Carmel, David Harel and Yehuda Koren Dept. of Computer Science and Applied Mathematics The Weizmann Institute of Science, Rehovot, Israel
More informationSDE: GRAPH DRAWING USING SPECTRAL DISTANCE EMBEDDING. and. and
International Journal of Foundations of Computer Science c World Scientific Publishing Company SDE: GRAPH DRAWING USING SPECTRAL DISTANCE EMBEDDING ALI CIVRIL Computer Science Department, Rensselaer Polytechnic
More informationSSDE: Fast Graph Drawing Using Sampled Spectral Distance Embedding
SSDE: Fast Graph Drawing Using Sampled Spectral Distance Embedding Ali Çivril, Malik Magdon-Ismail and Eli Bocek-Rivele Computer Science Department, RPI, 110 8th Street, Troy, NY 12180 {civria,magdon}@cs.rpi.edu,boceke@rpi.edu
More informationOne-Dimensional Graph Drawing: Part I Drawing Graphs by Axis Separation
One-Dimensional Graph Drawing: Part I Drawing Graphs by Axis Separation Yehuda Koren and David Harel Dept. of Computer Science and Applied Mathematics The Weizmann Institute of Science, Rehovot, Israel
More informationClustering and Visualisation of Data
Clustering and Visualisation of Data Hiroshi Shimodaira January-March 28 Cluster analysis aims to partition a data set into meaningful or useful groups, based on distances between data points. In some
More informationA Course in Machine Learning
A Course in Machine Learning Hal Daumé III 13 UNSUPERVISED LEARNING If you have access to labeled training data, you know what to do. This is the supervised setting, in which you have a teacher telling
More informationCluster Analysis. Mu-Chun Su. Department of Computer Science and Information Engineering National Central University 2003/3/11 1
Cluster Analysis Mu-Chun Su Department of Computer Science and Information Engineering National Central University 2003/3/11 1 Introduction Cluster analysis is the formal study of algorithms and methods
More informationA GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY
A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY KARL L. STRATOS Abstract. The conventional method of describing a graph as a pair (V, E), where V and E repectively denote the sets of vertices and edges,
More informationChapter 2 Basic Structure of High-Dimensional Spaces
Chapter 2 Basic Structure of High-Dimensional Spaces Data is naturally represented geometrically by associating each record with a point in the space spanned by the attributes. This idea, although simple,
More information1 Graph Visualization
A Linear Algebraic Algorithm for Graph Drawing Eric Reckwerdt This paper will give a brief overview of the realm of graph drawing, followed by a linear algebraic approach, ending with an example of our
More informationLecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1
CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanford.edu) January 11, 2018 Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 In this lecture
More informationThe Simplex Algorithm
The Simplex Algorithm Uri Feige November 2011 1 The simplex algorithm The simplex algorithm was designed by Danzig in 1947. This write-up presents the main ideas involved. It is a slight update (mostly
More informationCurvilinear Graph Drawing Using The Force-Directed Method. by Benjamin Finkel Sc. B., Brown University, 2003
Curvilinear Graph Drawing Using The Force-Directed Method by Benjamin Finkel Sc. B., Brown University, 2003 A Thesis submitted in partial fulfillment of the requirements for Honors in the Department of
More informationWeek 7 Picturing Network. Vahe and Bethany
Week 7 Picturing Network Vahe and Bethany Freeman (2005) - Graphic Techniques for Exploring Social Network Data The two main goals of analyzing social network data are identification of cohesive groups
More information6 Randomized rounding of semidefinite programs
6 Randomized rounding of semidefinite programs We now turn to a new tool which gives substantially improved performance guarantees for some problems We now show how nonlinear programming relaxations can
More informationInteger Programming Theory
Integer Programming Theory Laura Galli October 24, 2016 In the following we assume all functions are linear, hence we often drop the term linear. In discrete optimization, we seek to find a solution x
More informationEARLY INTERIOR-POINT METHODS
C H A P T E R 3 EARLY INTERIOR-POINT METHODS An interior-point algorithm is one that improves a feasible interior solution point of the linear program by steps through the interior, rather than one that
More informationEquations of planes in
Roberto s Notes on Linear Algebra Chapter 6: Lines, planes and other straight objects Section Equations of planes in What you need to know already: What vectors and vector operations are. What linear systems
More informationAMS526: Numerical Analysis I (Numerical Linear Algebra)
AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 1: Course Overview; Matrix Multiplication Xiangmin Jiao Stony Brook University Xiangmin Jiao Numerical Analysis I 1 / 21 Outline 1 Course
More informationCIE L*a*b* color model
CIE L*a*b* color model To further strengthen the correlation between the color model and human perception, we apply the following non-linear transformation: with where (X n,y n,z n ) are the tristimulus
More informationA New Heuristic Layout Algorithm for Directed Acyclic Graphs *
A New Heuristic Layout Algorithm for Directed Acyclic Graphs * by Stefan Dresbach Lehrstuhl für Wirtschaftsinformatik und Operations Research Universität zu Köln Pohligstr. 1, 50969 Köln revised August
More informationTreewidth and graph minors
Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under
More informationThe Curse of Dimensionality
The Curse of Dimensionality ACAS 2002 p1/66 Curse of Dimensionality The basic idea of the curse of dimensionality is that high dimensional data is difficult to work with for several reasons: Adding more
More informationMathematical and Algorithmic Foundations Linear Programming and Matchings
Adavnced Algorithms Lectures Mathematical and Algorithmic Foundations Linear Programming and Matchings Paul G. Spirakis Department of Computer Science University of Patras and Liverpool Paul G. Spirakis
More information/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18
601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can
More informationStraight-Line Drawings of 2-Outerplanar Graphs on Two Curves
Straight-Line Drawings of 2-Outerplanar Graphs on Two Curves (Extended Abstract) Emilio Di Giacomo and Walter Didimo Università di Perugia ({digiacomo,didimo}@diei.unipg.it). Abstract. We study how to
More informationA Simplified Correctness Proof for a Well-Known Algorithm Computing Strongly Connected Components
A Simplified Correctness Proof for a Well-Known Algorithm Computing Strongly Connected Components Ingo Wegener FB Informatik, LS2, Univ. Dortmund, 44221 Dortmund, Germany wegener@ls2.cs.uni-dortmund.de
More informationCSCI-B609: A Theorist s Toolkit, Fall 2016 Sept. 6, Firstly let s consider a real world problem: community detection.
CSCI-B609: A Theorist s Toolkit, Fall 016 Sept. 6, 016 Lecture 03: The Sparsest Cut Problem and Cheeger s Inequality Lecturer: Yuan Zhou Scribe: Xuan Dong We will continue studying the spectral graph theory
More information1. Lecture notes on bipartite matching
Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in
More informationChapter 4. Clustering Core Atoms by Location
Chapter 4. Clustering Core Atoms by Location In this chapter, a process for sampling core atoms in space is developed, so that the analytic techniques in section 3C can be applied to local collections
More information1. Lecture notes on bipartite matching February 4th,
1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)
More informationGraph projection techniques for Self-Organizing Maps
Graph projection techniques for Self-Organizing Maps Georg Pölzlbauer 1, Andreas Rauber 1, Michael Dittenbach 2 1- Vienna University of Technology - Department of Software Technology Favoritenstr. 9 11
More informationPart II. Graph Theory. Year
Part II Year 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2017 53 Paper 3, Section II 15H Define the Ramsey numbers R(s, t) for integers s, t 2. Show that R(s, t) exists for all s,
More informationLecture 3: Art Gallery Problems and Polygon Triangulation
EECS 396/496: Computational Geometry Fall 2017 Lecture 3: Art Gallery Problems and Polygon Triangulation Lecturer: Huck Bennett In this lecture, we study the problem of guarding an art gallery (specified
More informationApproximating Fault-Tolerant Steiner Subgraphs in Heterogeneous Wireless Networks
Approximating Fault-Tolerant Steiner Subgraphs in Heterogeneous Wireless Networks Ambreen Shahnaz and Thomas Erlebach Department of Computer Science University of Leicester University Road, Leicester LE1
More informationSimultaneous Graph Drawing: Layout Algorithms and Visualization Schemes
Simultaneous Graph Drawing: Layout Algorithms and Visualization Schemes (System Demo) C. Erten, S. G. Kobourov, V. Le, and A. Navabi Department of Computer Science University of Arizona {cesim,kobourov,vle,navabia}@cs.arizona.edu
More informationLecture 6: Spectral Graph Theory I
A Theorist s Toolkit (CMU 18-859T, Fall 013) Lecture 6: Spectral Graph Theory I September 5, 013 Lecturer: Ryan O Donnell Scribe: Jennifer Iglesias 1 Graph Theory For this course we will be working on
More informationEuclidean Shortest Paths in Simple Cube Curves at a Glance
Euclidean Shortest Paths in Simple Cube Curves at a Glance Fajie Li and Reinhard Klette Computer Science Department The University of Auckland, New Zealand Abstract. This paper reports about the development
More information6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality
6.854 Advanced Algorithms Scribes: Jay Kumar Sundararajan Lecturer: David Karger Duality This lecture covers weak and strong duality, and also explains the rules for finding the dual of a linear program,
More informationLP-Modelling. dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven. January 30, 2008
LP-Modelling dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven January 30, 2008 1 Linear and Integer Programming After a brief check with the backgrounds of the participants it seems that the following
More informationPlanar Drawing of Bipartite Graph by Eliminating Minimum Number of Edges
UITS Journal Volume: Issue: 2 ISSN: 2226-32 ISSN: 2226-328 Planar Drawing of Bipartite Graph by Eliminating Minimum Number of Edges Muhammad Golam Kibria Muhammad Oarisul Hasan Rifat 2 Md. Shakil Ahamed
More informationUsing Templates to Introduce Time Efficiency Analysis in an Algorithms Course
Using Templates to Introduce Time Efficiency Analysis in an Algorithms Course Irena Pevac Department of Computer Science Central Connecticut State University, New Britain, CT, USA Abstract: We propose
More informationVisualizing Weighted Edges in Graphs
Visualizing Weighted Edges in Graphs Peter Rodgers and Paul Mutton University of Kent, UK P.J.Rodgers@kent.ac.uk, pjm2@kent.ac.uk Abstract This paper introduces a new edge length heuristic that finds a
More informationDiffusion Wavelets for Natural Image Analysis
Diffusion Wavelets for Natural Image Analysis Tyrus Berry December 16, 2011 Contents 1 Project Description 2 2 Introduction to Diffusion Wavelets 2 2.1 Diffusion Multiresolution............................
More informationEulerian disjoint paths problem in grid graphs is NP-complete
Discrete Applied Mathematics 143 (2004) 336 341 Notes Eulerian disjoint paths problem in grid graphs is NP-complete Daniel Marx www.elsevier.com/locate/dam Department of Computer Science and Information
More informationChapter 2 Graphs. 2.1 Definition of Graphs
Chapter 2 Graphs Abstract Graphs are discrete structures that consist of vertices and edges connecting some of these vertices. Graphs have many applications in Mathematics, Computer Science, Engineering,
More informationA new edge selection heuristic for computing the Tutte polynomial of an undirected graph.
FPSAC 2012, Nagoya, Japan DMTCS proc. (subm.), by the authors, 1 12 A new edge selection heuristic for computing the Tutte polynomial of an undirected graph. Michael Monagan 1 1 Department of Mathematics,
More informationEstimating normal vectors and curvatures by centroid weights
Computer Aided Geometric Design 21 (2004) 447 458 www.elsevier.com/locate/cagd Estimating normal vectors and curvatures by centroid weights Sheng-Gwo Chen, Jyh-Yang Wu Department of Mathematics, National
More informationTELCOM2125: Network Science and Analysis
School of Information Sciences University of Pittsburgh TELCOM2125: Network Science and Analysis Konstantinos Pelechrinis Spring 2015 2 Part 4: Dividing Networks into Clusters The problem l Graph partitioning
More informationCOMBINED METHOD TO VISUALISE AND REDUCE DIMENSIONALITY OF THE FINANCIAL DATA SETS
COMBINED METHOD TO VISUALISE AND REDUCE DIMENSIONALITY OF THE FINANCIAL DATA SETS Toomas Kirt Supervisor: Leo Võhandu Tallinn Technical University Toomas.Kirt@mail.ee Abstract: Key words: For the visualisation
More informationProgramming Problem for the 1999 Comprehensive Exam
Programming Problem for the 1999 Comprehensive Exam Out: Monday 1/25/99 at 9:00 am Due: Friday 1/29/99 at 5:00 pm Department of Computer Science Brown University Providence, RI 02912 1.0 The Task This
More informationNetwork Traffic Measurements and Analysis
DEIB - Politecnico di Milano Fall, 2017 Introduction Often, we have only a set of features x = x 1, x 2,, x n, but no associated response y. Therefore we are not interested in prediction nor classification,
More informationJOB SHOP SCHEDULING WITH UNIT LENGTH TASKS
JOB SHOP SCHEDULING WITH UNIT LENGTH TASKS MEIKE AKVELD AND RAPHAEL BERNHARD Abstract. In this paper, we consider a class of scheduling problems that are among the fundamental optimization problems in
More informationLecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1
CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanfordedu) February 6, 2018 Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 In the
More informationThe Square Root Phenomenon in Planar Graphs
1 The Square Root Phenomenon in Planar Graphs Survey and New Results Dániel Marx Institute for Computer Science and Control, Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary Satisfiability
More informationLecture 2 September 3
EE 381V: Large Scale Optimization Fall 2012 Lecture 2 September 3 Lecturer: Caramanis & Sanghavi Scribe: Hongbo Si, Qiaoyang Ye 2.1 Overview of the last Lecture The focus of the last lecture was to give
More informationPlanarity. 1 Introduction. 2 Topological Results
Planarity 1 Introduction A notion of drawing a graph in the plane has led to some of the most deep results in graph theory. Vaguely speaking by a drawing or embedding of a graph G in the plane we mean
More informationExploiting On-Chip Data Transfers for Improving Performance of Chip-Scale Multiprocessors
Exploiting On-Chip Data Transfers for Improving Performance of Chip-Scale Multiprocessors G. Chen 1, M. Kandemir 1, I. Kolcu 2, and A. Choudhary 3 1 Pennsylvania State University, PA 16802, USA 2 UMIST,
More informationDrawing cubic graphs with at most five slopes
Drawing cubic graphs with at most five slopes B. Keszegh, J. Pach, D. Pálvölgyi, and G. Tóth Abstract We show that every graph G with maximum degree three has a straight-line drawing in the plane using
More informationThe clustering in general is the task of grouping a set of objects in such a way that objects
Spectral Clustering: A Graph Partitioning Point of View Yangzihao Wang Computer Science Department, University of California, Davis yzhwang@ucdavis.edu Abstract This course project provide the basic theory
More informationON THE STRONGLY REGULAR GRAPH OF PARAMETERS
ON THE STRONGLY REGULAR GRAPH OF PARAMETERS (99, 14, 1, 2) SUZY LOU AND MAX MURIN Abstract. In an attempt to find a strongly regular graph of parameters (99, 14, 1, 2) or to disprove its existence, we
More informationNearest Neighbor Predictors
Nearest Neighbor Predictors September 2, 2018 Perhaps the simplest machine learning prediction method, from a conceptual point of view, and perhaps also the most unusual, is the nearest-neighbor method,
More informationWiring Edge-Disjoint Layouts*
Wiring Edge-Disjoint Layouts* Ruth Kuchem 1 and Dorothea Wagner 2 1 RWTH Aachen 2 Fakult~t fiir Mathematik und Informatik, Universit~t Konstanz, 78434 Konstanz, Germany Abstract. We consider the wiring
More informationCONNECTING TESTS. If two tests, A and B, are joined by a common link ofkitems and each test is given to its own sample ofnpersons, then da and drb
11. CONNECTING TESTS In this chapter we describe the basic strategies for connecting tests intended to measure on the same variable so that the separate measures each test implies are expressed together
More informationExploring Fractals through Geometry and Algebra. Kelly Deckelman Ben Eggleston Laura Mckenzie Patricia Parker-Davis Deanna Voss
Exploring Fractals through Geometry and Algebra Kelly Deckelman Ben Eggleston Laura Mckenzie Patricia Parker-Davis Deanna Voss Learning Objective and skills practiced Students will: Learn the three criteria
More informationMath 443/543 Graph Theory Notes 5: Planar graphs and coloring
Math 443/543 Graph Theory Notes 5: Planar graphs and coloring David Glickenstein October 10, 2014 1 Planar graphs The Three Houses and Three Utilities Problem: Given three houses and three utilities, can
More informationBipartite Graph Partitioning and Content-based Image Clustering
Bipartite Graph Partitioning and Content-based Image Clustering Guoping Qiu School of Computer Science The University of Nottingham qiu @ cs.nott.ac.uk Abstract This paper presents a method to model the
More informationApproximation Algorithms for Geometric Intersection Graphs
Approximation Algorithms for Geometric Intersection Graphs Subhas C. Nandy (nandysc@isical.ac.in) Advanced Computing and Microelectronics Unit Indian Statistical Institute Kolkata 700108, India. Outline
More informationMSA220 - Statistical Learning for Big Data
MSA220 - Statistical Learning for Big Data Lecture 13 Rebecka Jörnsten Mathematical Sciences University of Gothenburg and Chalmers University of Technology Clustering Explorative analysis - finding groups
More informationGroups, Linear Algebra, and the Geometry of the Torus
Groups, Linear Algebra, and the Geometry of the Torus These are some notes and exercises to help you complete the group project. You should try all the exercises but should not feel pressured to complete
More information( ) =cov X Y = W PRINCIPAL COMPONENT ANALYSIS. Eigenvectors of the covariance matrix are the principal components
Review Lecture 14 ! PRINCIPAL COMPONENT ANALYSIS Eigenvectors of the covariance matrix are the principal components 1. =cov X Top K principal components are the eigenvectors with K largest eigenvalues
More informationAdvanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs
Advanced Operations Research Techniques IE316 Quiz 1 Review Dr. Ted Ralphs IE316 Quiz 1 Review 1 Reading for The Quiz Material covered in detail in lecture. 1.1, 1.4, 2.1-2.6, 3.1-3.3, 3.5 Background material
More informationSection 3.4 Basic Results of Graph Theory
1 Basic Results of Graph Theory Section 3.4 Basic Results of Graph Theory Purpose of Section: To formally introduce the symmetric relation of a (undirected) graph. We introduce such topics as Euler Tours,
More informationCourse Introduction / Review of Fundamentals of Graph Theory
Course Introduction / Review of Fundamentals of Graph Theory Hiroki Sayama sayama@binghamton.edu Rise of Network Science (From Barabasi 2010) 2 Network models Many discrete parts involved Classic mean-field
More informationCS2 Algorithms and Data Structures Note 1
CS2 Algorithms and Data Structures Note 1 Analysing Algorithms This thread of the course is concerned with the design and analysis of good algorithms and data structures. Intuitively speaking, an algorithm
More informationPOLYHEDRAL GEOMETRY. Convex functions and sets. Mathematical Programming Niels Lauritzen Recall that a subset C R n is convex if
POLYHEDRAL GEOMETRY Mathematical Programming Niels Lauritzen 7.9.2007 Convex functions and sets Recall that a subset C R n is convex if {λx + (1 λ)y 0 λ 1} C for every x, y C and 0 λ 1. A function f :
More informationApproximating Square Roots
Math 560 Fall 04 Approximating Square Roots Dallas Foster University of Utah u0809485 December 04 The history of approximating square roots is one of the oldest examples of numerical approximations found.
More informationThe minimum spanning tree and duality in graphs
The minimum spanning tree and duality in graphs Wim Pijls Econometric Institute Report EI 2013-14 April 19, 2013 Abstract Several algorithms for the minimum spanning tree are known. The Blue-red algorithm
More informationMultiobjective Genetic Algorithm for a Graph Drawing Problem
Multiobjective Genetic Algorithm for a Graph Drawing Problem Dana Vrajitoru Indiana University South Bend Computer and Information Sciences South Bend, IN 46617 Abstract In this paper we introduce an application
More informationLecture 19. Lecturer: Aleksander Mądry Scribes: Chidambaram Annamalai and Carsten Moldenhauer
CS-621 Theory Gems November 21, 2012 Lecture 19 Lecturer: Aleksander Mądry Scribes: Chidambaram Annamalai and Carsten Moldenhauer 1 Introduction We continue our exploration of streaming algorithms. First,
More informationNARROW CORRIDOR. Teacher s Guide Getting Started. Lay Chin Tan Singapore
Teacher s Guide Getting Started Lay Chin Tan Singapore Purpose In this two-day lesson, students are asked to determine whether large, long, and bulky objects fit around the corner of a narrow corridor.
More informationImproved Bounds for Intersecting Triangles and Halving Planes
Improved Bounds for Intersecting Triangles and Halving Planes David Eppstein Department of Information and Computer Science University of California, Irvine, CA 92717 Tech. Report 91-60 July 15, 1991 Abstract
More informationChapter 11 Representation & Description
Chain Codes Chain codes are used to represent a boundary by a connected sequence of straight-line segments of specified length and direction. The direction of each segment is coded by using a numbering
More informationA GENTLE INTRODUCTION TO THE BASIC CONCEPTS OF SHAPE SPACE AND SHAPE STATISTICS
A GENTLE INTRODUCTION TO THE BASIC CONCEPTS OF SHAPE SPACE AND SHAPE STATISTICS HEMANT D. TAGARE. Introduction. Shape is a prominent visual feature in many images. Unfortunately, the mathematical theory
More informationLinear Methods for Regression and Shrinkage Methods
Linear Methods for Regression and Shrinkage Methods Reference: The Elements of Statistical Learning, by T. Hastie, R. Tibshirani, J. Friedman, Springer 1 Linear Regression Models Least Squares Input vectors
More informationSeeing Around Corners: Fast Orthogonal Connector Routing
Seeing round Corners: Fast Orthogonal Connector Routing Kim Marriott 1, Peter J. Stuckey 2, and Michael Wybrow 1 1 Caulfield School of Information Technology, Monash University, Caulfield, Victoria 3145,
More informationAlgorithms for Euclidean TSP
This week, paper [2] by Arora. See the slides for figures. See also http://www.cs.princeton.edu/~arora/pubs/arorageo.ps Algorithms for Introduction This lecture is about the polynomial time approximation
More informationLesson 4. Random graphs. Sergio Barbarossa. UPC - Barcelona - July 2008
Lesson 4 Random graphs Sergio Barbarossa Graph models 1. Uncorrelated random graph (Erdős, Rényi) N nodes are connected through n edges which are chosen randomly from the possible configurations 2. Binomial
More informationImage Processing. Image Features
Image Processing Image Features Preliminaries 2 What are Image Features? Anything. What they are used for? Some statements about image fragments (patches) recognition Search for similar patches matching
More informationStraight-Line Drawings of Binary Trees with Linear Area and Arbitrary Aspect Ratio
Straight-Line Drawings of Binary Trees with Linear Area and Arbitrary Aspect Ratio (Extended Abstract) Ashim Garg and Adrian Rusu Department of Computer Science and Engineering University at Buffalo Buffalo,
More informationNonlinear projections. Motivation. High-dimensional. data are. Perceptron) ) or RBFN. Multi-Layer. Example: : MLP (Multi(
Nonlinear projections Université catholique de Louvain (Belgium) Machine Learning Group http://www.dice.ucl ucl.ac.be/.ac.be/mlg/ 1 Motivation High-dimensional data are difficult to represent difficult
More informationCurvilinear Graph Drawing Using the Force-Directed Method
Curvilinear Graph Drawing Using the Force-Directed Method Benjamin Finkel 1 and Roberto Tamassia 2 1 MIT Lincoln Laboratory finkel@ll.mit.edu 2 Brown University rt@cs.brown.edu Abstract. We present a method
More informationLecture #3: PageRank Algorithm The Mathematics of Google Search
Lecture #3: PageRank Algorithm The Mathematics of Google Search We live in a computer era. Internet is part of our everyday lives and information is only a click away. Just open your favorite search engine,
More informationRevised Sheet Metal Simulation, J.E. Akin, Rice University
Revised Sheet Metal Simulation, J.E. Akin, Rice University A SolidWorks simulation tutorial is just intended to illustrate where to find various icons that you would need in a real engineering analysis.
More informationLecture 4: 3SAT and Latin Squares. 1 Partial Latin Squares Completable in Polynomial Time
NP and Latin Squares Instructor: Padraic Bartlett Lecture 4: 3SAT and Latin Squares Week 4 Mathcamp 2014 This talk s focus is on the computational complexity of completing partial Latin squares. Our first
More informationIf you are not familiar with IMP you should download and read WhatIsImp and CoordGenManual before proceeding.
IMP: PCAGen6- Principal Components Generation Utility PCAGen6 This software package is a Principal Components Analysis utility intended for use with landmark based morphometric data. The program loads
More informationInformation Visualization. Jing Yang Spring Graph Visualization
Information Visualization Jing Yang Spring 2007 1 Graph Visualization 2 1 When? Ask the question: Is there an inherent relation among the data elements to be visualized? If yes -> data: nodes relations:
More information