Relabeling nodes according to the structure of the graph

Similar documents
BoxPlot++ Zeina Azmeh, Fady Hamoui, Marianne Huchard. To cite this version: HAL Id: lirmm

Multimedia CTI Services for Telecommunication Systems

Blind Browsing on Hand-Held Devices: Touching the Web... to Understand it Better

How to simulate a volume-controlled flooding with mathematical morphology operators?

DANCer: Dynamic Attributed Network with Community Structure Generator

Mokka, main guidelines and future

Fault-Tolerant Storage Servers for the Databases of Redundant Web Servers in a Computing Grid

Tacked Link List - An Improved Linked List for Advance Resource Reservation

Real-Time Collision Detection for Dynamic Virtual Environments

A Voronoi-Based Hybrid Meshing Method

Linux: Understanding Process-Level Power Consumption

Setup of epiphytic assistance systems with SEPIA

The optimal routing of augmented cubes.

Every 3-connected, essentially 11-connected line graph is hamiltonian

Study on Feebly Open Set with Respect to an Ideal Topological Spaces

Comparison of spatial indexes

FIT IoT-LAB: The Largest IoT Open Experimental Testbed

Taking Benefit from the User Density in Large Cities for Delivering SMS

LaHC at CLEF 2015 SBS Lab

A 64-Kbytes ITTAGE indirect branch predictor

Representation of Finite Games as Network Congestion Games

Self-optimisation using runtime code generation for Wireless Sensor Networks Internet-of-Things

Linked data from your pocket: The Android RDFContentProvider

Moveability and Collision Analysis for Fully-Parallel Manipulators

Prototype Selection Methods for On-line HWR

Scan chain encryption in Test Standards

X-Kaapi C programming interface

YAM++ : A multi-strategy based approach for Ontology matching task

Service Reconfiguration in the DANAH Assistive System

QuickRanking: Fast Algorithm For Sorting And Ranking Data

Catalogue of architectural patterns characterized by constraint components, Version 1.0

Very Tight Coupling between LTE and WiFi: a Practical Analysis

Branch-and-price algorithms for the Bi-Objective Vehicle Routing Problem with Time Windows

The Proportional Colouring Problem: Optimizing Buffers in Radio Mesh Networks

Quality of Service Enhancement by Using an Integer Bloom Filter Based Data Deduplication Mechanism in the Cloud Storage Environment

Traffic Grooming in Bidirectional WDM Ring Networks

Regularization parameter estimation for non-negative hyperspectral image deconvolution:supplementary material

Modelling approaches for anion-exclusion in compacted Na-bentonite

Comparator: A Tool for Quantifying Behavioural Compatibility

Reverse-engineering of UML 2.0 Sequence Diagrams from Execution Traces

Assisted Policy Management for SPARQL Endpoints Access Control

An FCA Framework for Knowledge Discovery in SPARQL Query Answers

The New Territory of Lightweight Security in a Cloud Computing Environment

HySCaS: Hybrid Stereoscopic Calibration Software

SDLS: a Matlab package for solving conic least-squares problems

Fuzzy sensor for the perception of colour

KeyGlasses : Semi-transparent keys to optimize text input on virtual keyboard

Malware models for network and service management

Natural Language Based User Interface for On-Demand Service Composition

The Connectivity Order of Links

Scalewelis: a Scalable Query-based Faceted Search System on Top of SPARQL Endpoints

Synthesis of fixed-point programs: the case of matrix multiplication

Stream Ciphers: A Practical Solution for Efficient Homomorphic-Ciphertext Compression

IntroClassJava: A Benchmark of 297 Small and Buggy Java Programs

Real-Time and Resilient Intrusion Detection: A Flow-Based Approach

Multi-atlas labeling with population-specific template and non-local patch-based label fusion

Efficient Gradient Method for Locally Optimizing the Periodic/Aperiodic Ambiguity Function

lambda-min Decoding Algorithm of Regular and Irregular LDPC Codes

Simulations of VANET Scenarios with OPNET and SUMO

Kernel perfect and critical kernel imperfect digraphs structure

An Experimental Assessment of the 2D Visibility Complex

SIM-Mee - Mobilizing your social network

NP versus PSPACE. Frank Vega. To cite this version: HAL Id: hal

Computing and maximizing the exact reliability of wireless backhaul networks

A million pixels, a million polygons: which is heavier?

Real-time FEM based control of soft surgical robots

A N-dimensional Stochastic Control Algorithm for Electricity Asset Management on PC cluster and Blue Gene Supercomputer

Improving figures using TikZ/PGF for LATEX: An Introduction

Application of RMAN Backup Technology in the Agricultural Products Wholesale Market System

Change Detection System for the Maintenance of Automated Testing

Robust IP and UDP-lite header recovery for packetized multimedia transmission

Efficient implementation of interval matrix multiplication

Teaching Encapsulation and Modularity in Object-Oriented Languages with Access Graphs

YANG-Based Configuration Modeling - The SecSIP IPS Case Study

BugMaps-Granger: A Tool for Causality Analysis between Source Code Metrics and Bugs

Deformetrica: a software for statistical analysis of anatomical shapes

An Efficient Numerical Inverse Scattering Algorithm for Generalized Zakharov-Shabat Equations with Two Potential Functions

Structuring the First Steps of Requirements Elicitation

Open Digital Forms. Hiep Le, Thomas Rebele, Fabian Suchanek. HAL Id: hal

A Generic Architecture of CCSDS Low Density Parity Check Decoder for Near-Earth Applications

XBenchMatch: a Benchmark for XML Schema Matching Tools

Avoiding double roundings in scaled Newton-Raphson division

ASAP.V2 and ASAP.V3: Sequential optimization of an Algorithm Selector and a Scheduler

From medical imaging to numerical simulations

Implementing an Automatic Functional Test Pattern Generation for Mixed-Signal Boards in a Maintenance Context

Modularity for Java and How OSGi Can Help

Induced minors and well-quasi-ordering

THE COVERING OF ANCHORED RECTANGLES UP TO FIVE POINTS

DSM GENERATION FROM STEREOSCOPIC IMAGERY FOR DAMAGE MAPPING, APPLICATION ON THE TOHOKU TSUNAMI

A Short SPAN+AVISPA Tutorial

Comparison of radiosity and ray-tracing methods for coupled rooms

Light field video dataset captured by a R8 Raytrix camera (with disparity maps)

Zigbee Wireless Sensor Network Nodes Deployment Strategy for Digital Agricultural Data Acquisition

Mapping classifications and linking related classes through SciGator, a DDC-based browsing library interface

A Practical Evaluation Method of Network Traffic Load for Capacity Planning

Emerging and scripted roles in computer-supported collaborative learning

MUTE: A Peer-to-Peer Web-based Real-time Collaborative Editor

THE KINEMATIC AND INERTIAL SOIL-PILE INTERACTIONS: CENTRIFUGE MODELLING

Syrtis: New Perspectives for Semantic Web Adoption

Spectral Active Clustering of Remote Sensing Images

Transcription:

Relabeling nodes according to the structure of the graph Ronan Hamon, Céline Robardet, Pierre Borgnat, Patrick Flandrin To cite this version: Ronan Hamon, Céline Robardet, Pierre Borgnat, Patrick Flandrin. Relabeling nodes according to the structure of the graph. 2013. <ensl-00878041> HAL Id: ensl-00878041 https://hal-ens-lyon.archives-ouvertes.fr/ensl-00878041 Submitted on 29 Oct 2013 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Relabeling nodes according to the structure of the graph. Ronan Hamon, Céline Robardet, Pierre Borgnat, Patrick Flandrin 1 Proposed method 1.1 Algorithm We propose to solve this problem thanks to a two-step algorithm. The first step is based on the depth-first search algorithm and enables us to obtain a collection of independent paths. From a starting node with minimal value of closeness centrality, the algorithm jumps from another node according to the neighborhood of the considered node. The neighborhood is computed such that a node already taken into account in a path is not included. If one or more of his neighbors have a degree equal to 1, that means the neighbor node is only linked to the considered node, the node is added to the path and another neighbor is considered. If all neighbors have a degree greater than 1, the next node is chosen taking the highest value of a criterion based on the Jaccard index between neighborhood of the considered node and each of its neighbors. This criterion determines which neighbors is the most similar to the current node in order to stay in the same part of the graph. The other neighbors are stacked in a pile and the algorithm repeats the same procedure from the chosen node. When no neighbors are available, the procedure stops and the path is closed. A new path is opened and starts from the last node put in the pile and so on. At the end of step 1, there is a collection of paths which are independent i.e. no vertex is in two different paths. The second step aims to aggregate these paths in order to minimize the cyclic bandwidth sum. The paths are considered following their decreasing lengths. The longest path is first considered and inserted into a empty list called labeling. The second longest path is then considered and inserted at all available indices in the labeling : for each insertion, a criterion based on the cyclic bandwidth sum is computed. The path is inserted definitively at the index which minimized this criterion. The algorithm goes on until the collection of paths is empty. 1

Algorithm 1 Minimization Cyclic Bandwidth Sum Require: G = (V, E) Ensure: π a one-to-one and onto mapping of V to {0... n 1}. L, labeling two piles. Paths a heap. 1: for all u V do 2: color[u] white 3: π[u] nil 4: end for 5: centrality Closeness Centrality(G) 6: for all Connected components C of G do 7: V C Vertices of C 8: for all u V C do 9: Heap Push(S, (centrality[u], u)) 11: while S is not empty do 12: u 0 Heap Pop(S) 13: if color[u 0 ] = white then 14: P Find best path(u 0, C, color, centrality) 15: Heap Insert(Paths, ( length(p ), P )) 16: end if 17: end while 18: while Paths is not empty do 19: path Max Heap Extract(Paths) 20: Insert path(labeling, path, C, color) 21: for all u path do 22: color[u] black 23: end for 24: end while 25: end for 26: for i [0,..., n 1] do 27: π[i] Index(labeling, i) 28: end for 2

Algorithm 2 Find best path(u 0, C, color, centrality) Ensure: P a pile. H a heap. 1: u u 0 2: while u -1 do 3: Push(P, u) 4: for all v adj[u] do 5: if color[v] = white then 6: if degree(v) = 1 then 7: Push(P, v) 8: color[v] gray 9: else 10: j Modified Index Jaccard(u, v) 11: c centrality[v] 12: Heap Insert(H, (v, c, j)) 13: end if 14: end if 15: end for 16: color[u] gray 17: if H not empty then 18: u Min Heap Extract(H) 19: else 20: u 1 21: end if 22: end while 23: return P Lines 8-17 concerns the step 1 of the algorithm whereas lines 18-25 concerns the step 2. Algorithm 3 Modified Index Jaccard(u, v) Ensure: nb u, nb v two piles. 1: for all w adj[u] do 2: if color[w] = white then 3: nb u, w 4: end if 5: end for 6: for all w adj[v] do 7: if color[w] = white then 8: nb v, w 9: end if 11: return #(nb u nb w) #(nb u nb w) 3

Algorithm 4 Insert path(labeling, path, C, color) 1: best index 0 2: best cbs Criterion(labeling, path, C, color) 3: for all i ]0,..., length(labeling)] do 4: cbs Criterion(Insert(labeling, path, i), path, color) 5: if cbs < best cbs then 6: best index i 7: best cbs cbs 8: end if 9: end for 10: return labeling INSERT(labeling, path, best index) Algorithm 5 Criterion(labeling, path, C, color) 1: CBS 0 2: n #V 3: for all u path do 4: for all v adj[u] do 5: if color[v] = black then 6: label u Index(labeling, u) 7: label v Index(labeling, v) 8: CBS CBS + min ( label u label v, n label u label v ) 9: end if 11: end for 12: return cbs 4