Simplifying TugGraph using zipping algorithms

Graphs are an invaluable modelling tool in many domains, but visualising large graphs in their entirety can be difficult. Hierarchical graph visualisation – recursively clustering a graph’s nodes to view it at a higher level of abstraction – has thus become popular. However, this can hide important...

Full description

Bibliographic Details
Main Authors: Golodetz, S, Arnab, A, Voiculescu, ID, Cameron, SA
Format: Journal article
Language:English
Published: Elsevier 2020
_version_ 1797100697764757504
author Golodetz, S
Arnab, A
Voiculescu, ID
Cameron, SA
author_facet Golodetz, S
Arnab, A
Voiculescu, ID
Cameron, SA
author_sort Golodetz, S
collection OXFORD
description Graphs are an invaluable modelling tool in many domains, but visualising large graphs in their entirety can be difficult. Hierarchical graph visualisation – recursively clustering a graph’s nodes to view it at a higher level of abstraction – has thus become popular. However, this can hide important information that a user needs to understand a graph’s topology, e.g. nodes’ neighbourhoods. TugGraph addressed this by ‘separating out’ a given node’s neighbours from their hierarchy ancestors to visualise them independently. Its original implementation was straightforward, but copied parts of the hierarchy, making it slow and memory-hungry. An optimised later version, which we refer to as FastTug, avoided this, but at a cost in clarity. Optimising TugGraph without sacrificing clarity is difficult because of the need to keep every hierarchy node connected, a common challenge for graph hierarchy editing algorithms. Recently, this problem has been addressed by ‘zipping’ algorithms, multi-level split/merge algorithms that preserve hierarchy node connectedness and can be built upon for higher-level editing. In this paper, we generalise the original unzipping algorithms to implement SimpleTug, a simple, modular version of TugGraph that is easy to understand and implement, and even faster and more memory-efficient than FastTug. We formally prove its equivalence to FastTug, and show how both can be parallelised. Using our millipede hierarchical image segmentation system, we show experimentally that both the serial and parallel versions of SimpleTug are around 25% faster than their FastTug counterparts, whilst using considerably less memory. Finally, we discuss the interesting theoretical connections between TugGraph and zipping, and suggest ideas for further work.
first_indexed 2024-03-07T05:41:17Z
format Journal article
id oxford-uuid:e5a82113-71d3-454a-bdc5-dbee400bcfee
institution University of Oxford
language English
last_indexed 2024-03-07T05:41:17Z
publishDate 2020
publisher Elsevier
record_format dspace
spelling oxford-uuid:e5a82113-71d3-454a-bdc5-dbee400bcfee2022-03-27T10:25:34ZSimplifying TugGraph using zipping algorithmsJournal articlehttp://purl.org/coar/resource_type/c_dcae04bcuuid:e5a82113-71d3-454a-bdc5-dbee400bcfeeEnglishSymplectic ElementsElsevier 2020Golodetz, SArnab, AVoiculescu, IDCameron, SAGraphs are an invaluable modelling tool in many domains, but visualising large graphs in their entirety can be difficult. Hierarchical graph visualisation – recursively clustering a graph’s nodes to view it at a higher level of abstraction – has thus become popular. However, this can hide important information that a user needs to understand a graph’s topology, e.g. nodes’ neighbourhoods. TugGraph addressed this by ‘separating out’ a given node’s neighbours from their hierarchy ancestors to visualise them independently. Its original implementation was straightforward, but copied parts of the hierarchy, making it slow and memory-hungry. An optimised later version, which we refer to as FastTug, avoided this, but at a cost in clarity. Optimising TugGraph without sacrificing clarity is difficult because of the need to keep every hierarchy node connected, a common challenge for graph hierarchy editing algorithms. Recently, this problem has been addressed by ‘zipping’ algorithms, multi-level split/merge algorithms that preserve hierarchy node connectedness and can be built upon for higher-level editing. In this paper, we generalise the original unzipping algorithms to implement SimpleTug, a simple, modular version of TugGraph that is easy to understand and implement, and even faster and more memory-efficient than FastTug. We formally prove its equivalence to FastTug, and show how both can be parallelised. Using our millipede hierarchical image segmentation system, we show experimentally that both the serial and parallel versions of SimpleTug are around 25% faster than their FastTug counterparts, whilst using considerably less memory. Finally, we discuss the interesting theoretical connections between TugGraph and zipping, and suggest ideas for further work.
spellingShingle Golodetz, S
Arnab, A
Voiculescu, ID
Cameron, SA
Simplifying TugGraph using zipping algorithms
title Simplifying TugGraph using zipping algorithms
title_full Simplifying TugGraph using zipping algorithms
title_fullStr Simplifying TugGraph using zipping algorithms
title_full_unstemmed Simplifying TugGraph using zipping algorithms
title_short Simplifying TugGraph using zipping algorithms
title_sort simplifying tuggraph using zipping algorithms
work_keys_str_mv AT golodetzs simplifyingtuggraphusingzippingalgorithms
AT arnaba simplifyingtuggraphusingzippingalgorithms
AT voiculescuid simplifyingtuggraphusingzippingalgorithms
AT cameronsa simplifyingtuggraphusingzippingalgorithms