4,826 research outputs found
On Graph Crossing Number and Edge Planarization
Given an n-vertex graph G, a drawing of G in the plane is a mapping of its
vertices into points of the plane, and its edges into continuous curves,
connecting the images of their endpoints. A crossing in such a drawing is a
point where two such curves intersect. In the Minimum Crossing Number problem,
the goal is to find a drawing of G with minimum number of crossings. The value
of the optimal solution, denoted by OPT, is called the graph's crossing number.
This is a very basic problem in topological graph theory, that has received a
significant amount of attention, but is still poorly understood
algorithmically. The best currently known efficient algorithm produces drawings
with crossings on bounded-degree graphs, while only a
constant factor hardness of approximation is known. A closely related problem
is Minimum Edge Planarization, in which the goal is to remove a
minimum-cardinality subset of edges from G, such that the remaining graph is
planar. Our main technical result establishes the following connection between
the two problems: if we are given a solution of cost k to the Minimum Edge
Planarization problem on graph G, then we can efficiently find a drawing of G
with at most \poly(d)\cdot k\cdot (k+OPT) crossings, where is the maximum
degree in G. This result implies an O(n\cdot \poly(d)\cdot
\log^{3/2}n)-approximation for Minimum Crossing Number, as well as improved
algorithms for special cases of the problem, such as, for example, k-apex and
bounded-genus graphs
Graph Spectral Image Processing
Recent advent of graph signal processing (GSP) has spurred intensive studies
of signals that live naturally on irregular data kernels described by graphs
(e.g., social networks, wireless sensor networks). Though a digital image
contains pixels that reside on a regularly sampled 2D grid, if one can design
an appropriate underlying graph connecting pixels with weights that reflect the
image structure, then one can interpret the image (or image patch) as a signal
on a graph, and apply GSP tools for processing and analysis of the signal in
graph spectral domain. In this article, we overview recent graph spectral
techniques in GSP specifically for image / video processing. The topics covered
include image compression, image restoration, image filtering and image
segmentation
The streaming -mismatch problem
We consider the streaming complexity of a fundamental task in approximate
pattern matching: the -mismatch problem. It asks to compute Hamming
distances between a pattern of length and all length- substrings of a
text for which the Hamming distance does not exceed a given threshold . In
our problem formulation, we report not only the Hamming distance but also, on
demand, the full \emph{mismatch information}, that is the list of mismatched
pairs of symbols and their indices. The twin challenges of streaming pattern
matching derive from the need both to achieve small working space and also to
guarantee that every arriving input symbol is processed quickly.
We present a streaming algorithm for the -mismatch problem which uses
bits of space and spends \ourcomplexity time on
each symbol of the input stream, which consists of the pattern followed by the
text. The running time almost matches the classic offline solution and the
space usage is within a logarithmic factor of optimal.
Our new algorithm therefore effectively resolves and also extends an open
problem first posed in FOCS'09. En route to this solution, we also give a
deterministic -bit encoding of all
the alignments with Hamming distance at most of a length- pattern within
a text of length . This secondary result provides an optimal solution to
a natural communication complexity problem which may be of independent
interest.Comment: 27 page
Using shared-data localization to reduce the cost of inspector-execution in unified-parallel-C programs
Programs written in the Unified Parallel C (UPC) language can access any location of the entire local and remote address space via read/write operations. However, UPC programs that contain fine-grained shared accesses can exhibit performance degradation. One solution is to use the inspector-executor technique to coalesce fine-grained shared accesses to larger remote access operations. A straightforward implementation of the inspector executor transformation results in excessive instrumentation that hinders performance.; This paper addresses this issue and introduces various techniques that aim at reducing the generated instrumentation code: a shared-data localization transformation based on Constant-Stride Linear Memory Descriptors (CSLMADs) [S. Aarseth, Gravitational N-Body Simulations: Tools and Algorithms, Cambridge Monographs on Mathematical Physics, Cambridge University Press, 2003.], the inlining of data locality checks and the usage of an index vector to aggregate the data. Finally, the paper introduces a lightweight loop code motion transformation to privatize shared scalars that were propagated through the loop body.; A performance evaluation, using up to 2048 cores of a POWER 775, explores the impact of each optimization and characterizes the overheads of UPC programs. It also shows that the presented optimizations increase performance of UPC programs up to 1.8 x their UPC hand-optimized counterpart for applications with regular accesses and up to 6.3 x for applications with irregular accesses.Peer ReviewedPostprint (author's final draft
- …