The Hitchhiker's Guide to Graph Exchange Formats
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Practical Parallel Hypergraph Algorithms
Practical Parallel Hypergraph Algorithms Julian Shun [email protected] MIT CSAIL Abstract v While there has been signicant work on parallel graph pro- 0 cessing, there has been very surprisingly little work on high- e0 performance hypergraph processing. This paper presents v0 v1 v1 a collection of ecient parallel algorithms for hypergraph processing, including algorithms for betweenness central- e1 ity, maximal independent set, k-core decomposition, hyper- v2 trees, hyperpaths, connected components, PageRank, and v2 v3 e single-source shortest paths. For these problems, we either 2 provide new parallel algorithms or more ecient implemen- v3 tations than prior work. Furthermore, our algorithms are theoretically-ecient in terms of work and depth. To imple- (a) Hypergraph (b) Bipartite representation ment our algorithms, we extend the Ligra graph processing Figure 1. An example hypergraph representing the groups framework to support hypergraphs, and our implementa- , , , , , , and , , and its bipartite repre- { 0 1 2} { 1 2 3} { 0 3} tions benet from graph optimizations including switching sentation. between sparse and dense traversals based on the frontier size, edge-aware parallelization, using buckets to prioritize processing of vertices, and compression. Our experiments represented as hyperedges, can contain an arbitrary number on a 72-core machine and show that our algorithms obtain of vertices. Hyperedges correspond to group relationships excellent parallel speedups, and are signicantly faster than among vertices (e.g., a community in a social network). An algorithms in existing hypergraph processing frameworks. example of a hypergraph is shown in Figure 1a. CCS Concepts • Computing methodologies → Paral- Hypergraphs have been shown to enable richer analy- lel algorithms; Shared memory algorithms. -
Networkx: Network Analysis with Python
NetworkX: Network Analysis with Python Salvatore Scellato Full tutorial presented at the XXX SunBelt Conference “NetworkX introduction: Hacking social networks using the Python programming language” by Aric Hagberg & Drew Conway Outline 1. Introduction to NetworkX 2. Getting started with Python and NetworkX 3. Basic network analysis 4. Writing your own code 5. You are ready for your project! 1. Introduction to NetworkX. Introduction to NetworkX - network analysis Vast amounts of network data are being generated and collected • Sociology: web pages, mobile phones, social networks • Technology: Internet routers, vehicular flows, power grids How can we analyze this networks? Introduction to NetworkX - Python awesomeness Introduction to NetworkX “Python package for the creation, manipulation and study of the structure, dynamics and functions of complex networks.” • Data structures for representing many types of networks, or graphs • Nodes can be any (hashable) Python object, edges can contain arbitrary data • Flexibility ideal for representing networks found in many different fields • Easy to install on multiple platforms • Online up-to-date documentation • First public release in April 2005 Introduction to NetworkX - design requirements • Tool to study the structure and dynamics of social, biological, and infrastructure networks • Ease-of-use and rapid development in a collaborative, multidisciplinary environment • Easy to learn, easy to teach • Open-source tool base that can easily grow in a multidisciplinary environment with non-expert users -
Fcastone - FCA file Format Conversion and Interoperability Software
FcaStone - FCA file format conversion and interoperability software Uta Priss Napier University, School of Computing, [email protected] www.upriss.org.uk Abstract. This paper presents FcaStone - a software for FCA file format con- version and interoperability. The paper both describes the features of FcaStone and discusses FCA interoperability issues (such as the specific difficulties en- countered when connecting FCA tools to other tools). The paper ends with a call to the FCA community to develop some sort of standard FCA Interchange For- mat, which could be used for data exchange between stand-alone applications and across the web. 1 Introduction FcaStone1 (named in analogy to ”Rosetta Stone”) is a command-line utility that con- verts between the file formats of commonly-used FCA2 tools (such as ToscanaJ, Con- Exp, Galicia, Colibri3) and between FCA formats and other graph and vector graph- ics formats. The main purpose of FcaStone is to improve the interoperability between FCA, graph editing and vector graphics software. Because it is a command-line tool, FcaStone can easily be incorporated into server-side web applications, which generate concept lattices on demand. FcaStone is open source software and available for down- load from Sourceforge. FcaStone is written in an interpreted language (Perl) and thus platform-independent. Installation on Linux and Apple OS X consists of copying the file to a suitable location. Installation on Windows has also been tested and is also fairly easy. The need for interoperability software was highlighted in discussions among ICCS participants in recent years. Several ICCS authors expressed disappointment with the lack of progress in conceptual structures (CS) research with respect to applications and software (Chein & Genest (2000); Keeler & Pfeiffer (2006)) and with respect to current web developments (Rudolph et al., 2007). -
Multilevel Hypergraph Partitioning with Vertex Weights Revisited
Multilevel Hypergraph Partitioning with Vertex Weights Revisited Tobias Heuer ! Karlsruhe Institute of Technology, Karlsruhe, Germany Nikolai Maas ! Karlsruhe Institute of Technology, Karlsruhe, Germany Sebastian Schlag ! Karlsruhe Institute of Technology, Karlsruhe, Germany Abstract The balanced hypergraph partitioning problem (HGP) is to partition the vertex set of a hypergraph into k disjoint blocks of bounded weight, while minimizing an objective function defined on the hyperedges. Whereas real-world applications often use vertex and edge weights to accurately model the underlying problem, the HGP research community commonly works with unweighted instances. In this paper, we argue that, in the presence of vertex weights, current balance constraint definitions either yield infeasible partitioning problems or allow unnecessarily large imbalances and propose a new definition that overcomes these problems. We show that state-of-the-art hypergraph partitioners often struggle considerably with weighted instances and tight balance constraints (even with our new balance definition). Thus, we present a recursive-bipartitioning technique that isable to reliably compute balanced (and hence feasible) solutions. The proposed method balances the partition by pre-assigning a small subset of the heaviest vertices to the two blocks of each bipartition (using an algorithm originally developed for the job scheduling problem) and optimizes the actual partitioning objective on the remaining vertices. We integrate our algorithm into the multilevel hypergraph -
On Decomposing a Hypergraph Into K Connected Sub-Hypergraphs
Egervary´ Research Group on Combinatorial Optimization Technical reportS TR-2001-02. Published by the Egrerv´aryResearch Group, P´azm´any P. s´et´any 1/C, H{1117, Budapest, Hungary. Web site: www.cs.elte.hu/egres . ISSN 1587{4451. On decomposing a hypergraph into k connected sub-hypergraphs Andr´asFrank, Tam´asKir´aly,and Matthias Kriesell February 2001 Revised July 2001 EGRES Technical Report No. 2001-02 1 On decomposing a hypergraph into k connected sub-hypergraphs Andr´asFrank?, Tam´asKir´aly??, and Matthias Kriesell??? Abstract By applying the matroid partition theorem of J. Edmonds [1] to a hyper- graphic generalization of graphic matroids, due to M. Lorea [3], we obtain a gen- eralization of Tutte's disjoint trees theorem for hypergraphs. As a corollary, we prove for positive integers k and q that every (kq)-edge-connected hypergraph of rank q can be decomposed into k connected sub-hypergraphs, a well-known result for q = 2. Another by-product is a connectivity-type sufficient condition for the existence of k edge-disjoint Steiner trees in a bipartite graph. Keywords: Hypergraph; Matroid; Steiner tree 1 Introduction An undirected graph G = (V; E) is called connected if there is an edge connecting X and V X for every nonempty, proper subset X of V . Connectivity of a graph is equivalent− to the existence of a spanning tree. As a connected graph on t nodes contains at least t 1 edges, one has the following alternative characterization of connectivity. − Proposition 1.1. A graph G = (V; E) is connected if and only if the number of edges connecting distinct classes of is at least t 1 for every partition := V1;V2;:::;Vt of V into non-empty subsets.P − P f g ?Department of Operations Research, E¨otv¨osUniversity, Kecskem´etiu. -
Hypergraph Packing and Sparse Bipartite Ramsey Numbers
Hypergraph packing and sparse bipartite Ramsey numbers David Conlon ∗ Abstract We prove that there exists a constant c such that, for any integer ∆, the Ramsey number of a bipartite graph on n vertices with maximum degree ∆ is less than 2c∆n. A probabilistic argument due to Graham, R¨odland Ruci´nskiimplies that this result is essentially sharp, up to the constant c in the exponent. Our proof hinges upon a quantitative form of a hypergraph packing result of R¨odl,Ruci´nskiand Taraz. 1 Introduction For a graph G, the Ramsey number r(G) is defined to be the smallest natural number n such that, in any two-colouring of the edges of Kn, there exists a monochromatic copy of G. That these numbers exist was proven by Ramsey [19] and rediscovered independently by Erd}osand Szekeres [10]. Whereas the original focus was on finding the Ramsey numbers of complete graphs, in which case it is known that t t p2 r(Kt) 4 ; ≤ ≤ the field has broadened considerably over the years. One of the most famous results in the area to date is the theorem, due to Chvat´al,R¨odl,Szemer´ediand Trotter [7], that if a graph G, on n vertices, has maximum degree ∆, then r(G) c(∆)n; ≤ where c(∆) is just some appropriate constant depending only on ∆. Their proof makes use of the regularity lemma and because of this the bound it gives on the constant c(∆) is (and is necessarily [11]) very bad. The situation was improved somewhat by Eaton [8], who proved, by using a variant of the regularity lemma, that the function c(∆) may be taken to be of the form 22c∆ . -
A DSL for Defining Instance Templates for the ASMIG System
A DSL for defining instance templates for the ASMIG system Andrii Kovalov Dissertation 2014 Erasmus Mundus MSc in Dependable Software Systems Department of Computer Science National University of Ireland, Maynooth Co. Kildare, Ireland A dissertation submitted in partial fulfilment of the requirements for the Erasmus Mundus MSc Dependable Software Systems Head of Department : Dr Adam Winstanley Supervisor : Dr James Power Date: June 2014 Abstract The area of our work is test data generation via automatic instantiation of software models. Model instantiation or model finding is a process of find- ing instances of software models. For example, if a model is represented as a UML class diagram, the instances of this model are UML object diagrams. Model instantiation has several applications: finding solutions to problems expressed as models, model testing and test data generation. There are sys- tems that automatically generate model instances, one of them is ASMIG (A Small Metamodel Instance Generator). This system is focused on a `problem solving' use case. The motivation of our work is to adapt ASMIG system for use as a test data generator and make the instance generation process more transparent for the user. In order to achieve this we provided a way for the user to interact with ASMIG internal data structure, the instance template graph via a specially designed graph definition domain-specific language. As a result, the user is able to configure the instance template in order to get plausible instances, which can be then used as test data. Although model finding is only suitable for obtaining test inputs, but not the expected test outputs, it can be applied effectively for smoke testing of systems that process complex hierarchic data structures such as programming language parsers. -
Comm 645 Handout – Nodexl Basics
COMM 645 HANDOUT – NODEXL BASICS NodeXL: Network Overview, Discovery and Exploration for Excel. Download from nodexl.codeplex.com Plugin for social media/Facebook import: socialnetimporter.codeplex.com Plugin for Microsoft Exchange import: exchangespigot.codeplex.com Plugin for Voson hyperlink network import: voson.anu.edu.au/node/13#VOSON-NodeXL Note that NodeXL requires MS Office 2007 or 2010. If your system does not support those (or you do not have them installed), try using one of the computers in the PhD office. Major sections within NodeXL: • Edges Tab: Edge list (Vertex 1 = source, Vertex 2 = destination) and attributes (Fig.1→1a) • Vertices Tab: Nodes and attribute (nodes can be imported from the edge list) (Fig.1→1b) • Groups Tab: Groups of nodes defined by attribute, clusters, or components (Fig.1→1c) • Groups Vertices Tab: Nodes belonging to each group (Fig.1→1d) • Overall Metrics Tab: Network and node measures & graphs (Fig.1→1e) Figure 1: The NodeXL Interface 3 6 8 2 7 9 13 14 5 12 4 10 11 1 1a 1b 1c 1d 1e Download more network handouts at www.kateto.net / www.ognyanova.net 1 After you install the NodeXL template, a new NodeXL tab will appear in your Excel interface. The following features will be available in it: Fig.1 → 1: Switch between different data tabs. The most important two tabs are "Edges" and "Vertices". Fig.1 → 2: Import data into NodeXL. The formats you can use include GraphML, UCINET DL files, and Pajek .net files, among others. You can also import data from social media: Flickr, YouTube, Twitter, Facebook (requires a plugin), or a hyperlink networks (requires a plugin). -
A Model-Driven Approach for Graph Visualization
A Model-Driven Approach for Graph Visualization Celal Çı ğır, Alptu ğ Dilek, Akif Burak Tosun Department of Computer Engineering, Bilkent University 06800, Bilkent, Ankara {cigir, alptug, tosun}@cs.bilkent.edu.tr Abstract part of the geometrical information and they should be adjusted either manually or automatically in order to produce an understandable and clear graph. This Graphs are data models, which are used in many areas operation is called “graph layout ”. Many complex graphs from networking to biology to computer science. There can be laid out in seconds using automatic graph layouts. are many commercial and non-commercial graph visualization tools. Creating a graph metamodel with Many different graph visualization tools are available graph visualization capability should provide either commercially or freely and they present a variety of interoperability between different graph visualization features. Among one of these, CHISIO [1] is general tools; moreover it should be the core to visualize graphs purpose graph visualization and editing tool for proper from different domains. A detailed and comprehensive creation, layout and modification of graphs. CHISIO research study is required to construct a fully model includes compound graph visualization support among with different styles of layouts that can also work on driven graph visualization software. However according compound graphs. Another example for graph to the study explained in this paper, MDSD steps are visualization software is Graphviz which consists of a successfully applied and interoperability is achieved graph description language named the DOT language and between CHISIO and Graphviz visualization tools. a set of tool that can generate and process DOT files [2] . -
A New Method and Format for Describing Canopen System Topology
iCC 2012 CAN in Automation A New Method and Format for Describing CANopen System Topology Matti Helminen, Jaakko Salonen, Heikki Saha*, Ossi Nykänen, Kari T. Koskinen, Pekka Ranta, Seppo Pohjolainen, Tampere University of Technology, *Sandvik Mining and Construction In this article, we present a new method for describing CANopen network topology. A new format using GraphML, an XML-based graph format, is introduced. By using a subset of GraphML along with CANopen-specific new elements and attributes, topology of single as well as multiple CANopen networks can be captured in a well established graph format with existing tool support. The new format is specified in a manner that allows CANopen design applications to adopt it while providing a mechanism for fallback in unsupported software. Methods for extending the format to contain other CAN- and CANopen-specific data as well as transforming the GraphML- based network structure to other formats are described. Finally, the implications of the introduced method and format are discussed. 1. Introduction and Background connection between the nodes as edges in a graph. However since the specific When designing mobile machines in structure within and between nodes is not practice, multiple CANopen networks may defined in actual design data, some need to be used. What may then become structure needs to be generated for the problematic is that the current CANopen purposes of visualization. This is design programs and specification support problematic since the visualized structure only description of individual CANopen may or may not correspond to the actual networks. Specificially, formats and structure of the network. For accurately applications for specifying topology representing CANopen network structures, between and within networks. -
An Exchange Format for Graph Transformation Systems
Electronic Notes in Theoretical Computer Science 127 (2005) 51–63 www.elsevier.com/locate/entcs A New Version of GTXL : An Exchange Format for Graph Transformation Systems Leen Lambers Institut f¨ur Softwaretechnik und Theoretische Informatik Technische Universit¨at Berlin Germany Abstract GTXL (Graph Transformation Exchange Language) is designed to support and stimulate develop- ers to provide their graph transformation-based tools with an exchange functionality regarding the integration with other tools. For this exchange XML was chosen as underlying technology. The exchange of graphs is facilitated by the exchange format GXL which is also XML-based. GTXL uses GXL to describe the graph parts of a graph transformation system. A first version of GTXL arose from the format discussion within the EU Working Group APPLIGRAPH. Trying to restim- ulate the discussion on a common exchange format for graph transformation systems, this paper presents a new version of GTXL. Three important changes have been made. At first, an integrated presentation of rules is introduced, secondly the expression of more general conditions is supported and finally the storage of the underlying semantics of a graph transformation system by means of special attributes is proposed. Keywords: exchange format, graph transformation system, graph transformation-based tools, XML 1 Introduction Graph transformation systems (GTSs) comprise graphs and rules changing these graphs. Comparing them with term rewrite systems, terms correspond to graphs and term rewrite rules to graph rewrite rules. Since graphs are widely used to model various data structures in computer science, graph trans- formation systems can be used to define various modifications of these data 1 Email: [email protected] 1571-0661/$ – see front matter © 2005 Elsevier B.V. -
An XML-Based Description of Structured Networks
Massimo Ancona, Walter Cazzola, Sara Drago, and Francesco Guido. An XML-Based Description of Structured Networks. In Proceedings of Interna- tional Conference Communications 2004, pages 401–406, Bucharest, Romania, June 2004. IEEE Press. An XML-Based Description of Structured Networks Massimo Ancona£ Walter Cazzola† Sara Drago£ Francesco Guido‡ £ DISI University of Genova, e-mail: fancona,[email protected] † DICo University of Milano, e-mail: [email protected] ‡ Marconi Selenia Communication, e-mail: [email protected] Abstract In this paper we present an XML-based formalism to describe hierarchically organized communication networks. After a short overview of existing graph description languages, we discuss the advantages and disadvantages of their application in network optimization. We conclude by extending one of these formalisms with features supporting the description of the relationship between the optimized logical layout of a network and its physical counterpart. Elements for describing traffic parameters are also given. 1 Introduction The problem of network design and optimization has a strategical importance especially for military networks. In this case, design for fault tolerance and security plays a role more and more crucial than the equivalent importance required for commercial and research networks. The reengineering of a large communication network is a complex problem, which consists of different aspects that can be strongly affected by the way of describing data. The plainest way to describe a communication network is to model the relationship among sites and links by means of a weighted undirected graph, but unless some more assumptions are taken, this approach can raise several problems. A first issue is encountered when an analysis and a visualization of the network has to be realized: practical networks include hundreds or often thousands of nodes and links, so that even a simple description and documentation of the network structure is hard to maintain and update.