372 research outputs found
An O(n^{2.75}) algorithm for online topological ordering
We present a simple algorithm which maintains the topological order of a
directed acyclic graph with n nodes under an online edge insertion sequence in
O(n^{2.75}) time, independent of the number of edges m inserted. For dense
DAGs, this is an improvement over the previous best result of O(min(m^{3/2}
log(n), m^{3/2} + n^2 log(n)) by Katriel and Bodlaender. We also provide an
empirical comparison of our algorithm with other algorithms for online
topological sorting. Our implementation outperforms them on certain hard
instances while it is still competitive on random edge insertion sequences
leading to complete DAGs.Comment: 20 pages, long version of SWAT'06 pape
Obstacle-Avoiding Rectilinear Steiner Minimal Tree Construction
Obstacle-avoiding rectilinear Steiner minimal tree (OARSMT) construction
is becoming one of the most sought after problems in modern design
flow. In this thesis we present an algorithm to route a
multi-terminal net in the presence of obstacles. Ours is a top down
approach which includes partitioning the initial solution into
subproblems and using obstacle aware version of Fast Lookup Table based Wirelength Estimation (OA-FLUTE) at a lower level to generate an OAST followed by recombining them with some backend refinement. To construct an initial connectivity graph we use a novel obstacle-avoiding
spanning graph (OASG) algorithm which is a generalization of Zhou\u27s
spanning graph algorithm without obstacle presented in ASPDAC 2001. The runtime complexity of our algorithm is O(n log n)
Learning to Prune Instances of Steiner Tree Problem in Graphs
We consider the Steiner tree problem on graphs where we are given a set of
nodes and the goal is to find a tree sub-graph of minimum weight that contains
all nodes in the given set, potentially including additional nodes. This is a
classical NP-hard combinatorial optimisation problem. In recent years, a
machine learning framework called learning-to-prune has been successfully used
for solving a diverse range of combinatorial optimisation problems. In this
paper, we use this learning framework on the Steiner tree problem and show that
even on this problem, the learning-to-prune framework results in computing
near-optimal solutions at a fraction of the time required by commercial ILP
solvers. Our results underscore the potential of the learning-to-prune
framework in solving various combinatorial optimisation problems
Empirical Evaluation of the Parallel Distribution Sweeping Framework on Multicore Architectures
In this paper, we perform an empirical evaluation of the Parallel External
Memory (PEM) model in the context of geometric problems. In particular, we
implement the parallel distribution sweeping framework of Ajwani, Sitchinava
and Zeh to solve batched 1-dimensional stabbing max problem. While modern
processors consist of sophisticated memory systems (multiple levels of caches,
set associativity, TLB, prefetching), we empirically show that algorithms
designed in simple models, that focus on minimizing the I/O transfers between
shared memory and single level cache, can lead to efficient software on current
multicore architectures. Our implementation exhibits significantly fewer
accesses to slow DRAM and, therefore, outperforms traditional approaches based
on plane sweep and two-way divide and conquer.Comment: Longer version of ESA'13 pape
Any-k: Anytime Top-k Tree Pattern Retrieval in Labeled Graphs
Many problems in areas as diverse as recommendation systems, social network
analysis, semantic search, and distributed root cause analysis can be modeled
as pattern search on labeled graphs (also called "heterogeneous information
networks" or HINs). Given a large graph and a query pattern with node and edge
label constraints, a fundamental challenge is to nd the top-k matches ac-
cording to a ranking function over edge and node weights. For users, it is di
cult to select value k . We therefore propose the novel notion of an any-k
ranking algorithm: for a given time budget, re- turn as many of the top-ranked
results as possible. Then, given additional time, produce the next lower-ranked
results quickly as well. It can be stopped anytime, but may have to continues
until all results are returned. This paper focuses on acyclic patterns over
arbitrary labeled graphs. We are interested in practical algorithms that
effectively exploit (1) properties of heterogeneous networks, in particular
selective constraints on labels, and (2) that the users often explore only a
fraction of the top-ranked results. Our solution, KARPET, carefully integrates
aggressive pruning that leverages the acyclic nature of the query, and
incremental guided search. It enables us to prove strong non-trivial time and
space guarantees, which is generally considered very hard for this type of
graph search problem. Through experimental studies we show that KARPET achieves
running times in the order of milliseconds for tree patterns on large networks
with millions of nodes and edges.Comment: To appear in WWW 201
Survey of Trending Techniques for Detection of Emerging Topics in Computer Science within Social Media
With the advent of Internet there has been a significant and exponential growth in information available to users. The availability of resources like smart mobile phone, low cost data plans and improvement in mobile communication infrastructure has further increased the reach and availability of information. The Internet allowed creation of websites and applications that significantly kept on adding data. The data generated through these websites can be structured (relational database), unstructured (digital images, video, audio files) or semi-structured (word document). The growth of Internet and WWW services gave user a liberty to create his own data, which then can be shared with the world. The development of User-Generated Content (UGC) [2] such as blogs, wikis, forums, tweets, discussions, posts, chats, podcasts, advertisements and other form of media led to the shift of information exchange from media conglomerates to individual user. With this huge amount of data, we address the problem of trending the emerging topics. Identify trending of these emerging topics allows us to know the probable trend of computer science research topics or other relevant research topics in future
- …