Results 11  20
of
432
A Comparative Study of Language Support for Generic Programming
, 2003
"... Many modern programming languages support basic generic programming, sufficient to implement typesafe polymorphic containers. Some languages have moved beyond this basic support to a broader, more powerful interpretation of generic programming, and their extensions have proven valuable in practice. ..."
Abstract

Cited by 76 (14 self)
 Add to MetaCart
Many modern programming languages support basic generic programming, sufficient to implement typesafe polymorphic containers. Some languages have moved beyond this basic support to a broader, more powerful interpretation of generic programming, and their extensions have proven valuable in practice. This paper reports on a comprehensive comparison of generics in six programming languages: C , Standard ML, Haskell, Eiffel, Java (with its proposed generics extension), and Generic C#. By implementing a substantial example in each of these languages, we identify eight language features that support this broader view of generic programming. We find these features are necessary to avoid awkward designs, poor maintainability, unnecessary runtime checks, and painfully verbose code. As languages increasingly support generics, it is important that language designers understand the features necessary to provide powerful generics and that their absence causes serious difficulties for programmers.
Optimum communication spanning trees
 SIAM J. Comput
, 1974
"... Abstract. Given a set of nodes N (i 1, 2,..., n) which may represent cities and a set of requirements ria which may represent the number of telephone calls between N and N j, the problem is to build a spanning tree connecting these n nodes such that the total cost of communication of the spanning tr ..."
Abstract

Cited by 74 (1 self)
 Add to MetaCart
Abstract. Given a set of nodes N (i 1, 2,..., n) which may represent cities and a set of requirements ria which may represent the number of telephone calls between N and N j, the problem is to build a spanning tree connecting these n nodes such that the total cost of communication of the spanning tree is a minimum among all spanning trees. The cost of communication for a pair of nodes is r;a multiplied by the sum of the distances of arcs which form the unique path connecting Ni and N in the spanning tree. Summing over all () pairs of nodes, we have the total cost of communication of the spanning tree. Note that the problem is different from the minimum spanning tree problem solved by Kruskal and Prim. Key words, communication spanning trees, cuttree
Multicast Routing with EndtoEnd Delay and Delay Variation Constraints
 IEEE Journal on Selected Areas in Communications
, 1995
"... We study the problem of constructing multicast trees to meet the quality of service requirements of realtime, interactive applications operating in highspeed packetswitched environments. In particular, we assume that multicast communication depends on (a) bounded delay along the paths from the so ..."
Abstract

Cited by 70 (2 self)
 Add to MetaCart
We study the problem of constructing multicast trees to meet the quality of service requirements of realtime, interactive applications operating in highspeed packetswitched environments. In particular, we assume that multicast communication depends on (a) bounded delay along the paths from the source to each destination, and (b) bounded variation among the delays along these paths. We first establish that the problem of determining such a constrained tree is NPcomplete. We then derive heuristics that demonstrate good average case behavior in terms of the maximum interdestination delay variation of the final tree. In addition, our heuristics achieve their best performance under conditions typical of multicast scenarios in highspeed networks. We also show that it is possible to dynamically reorganize the initial tree in response to changes in the destination set, in a way that is minimally disruptive to the multicast session. Department of Computer Science North Carolina State Uni...
Cacheoblivious priority queue and graph algorithm applications
 In Proc. 34th Annual ACM Symposium on Theory of Computing
, 2002
"... In this paper we develop an optimal cacheoblivious priority queue data structure, supporting insertion, deletion, and deletemin operations in O ( 1 B logM/B N) amortized memory B transfers, where M and B are the memory and block transfer sizes of any two consecutive levels of a multilevel memory hi ..."
Abstract

Cited by 68 (10 self)
 Add to MetaCart
In this paper we develop an optimal cacheoblivious priority queue data structure, supporting insertion, deletion, and deletemin operations in O ( 1 B logM/B N) amortized memory B transfers, where M and B are the memory and block transfer sizes of any two consecutive levels of a multilevel memory hierarchy. In a cacheoblivious data structure, M and B are not used in the description of the structure. The bounds match the bounds of several previously developed externalmemory (cacheaware) priority queue data structures, which all rely crucially on knowledge about M and B. Priority queues are a critical component in many of the best known externalmemory graph algorithms, and using our cacheoblivious priority queue we develop several cacheoblivious graph algorithms.
Spanning Trees Short Or Small
 SIAM JOURNAL ON DISCRETE MATHEMATICS
"... We study the problem of finding small trees. Classical network design problems are considered with the additional constraint that only a specified number k of nodes are required to be connected in the solution. A prototypical example is the kMST problem in which we require a tree of minimum weight s ..."
Abstract

Cited by 65 (2 self)
 Add to MetaCart
We study the problem of finding small trees. Classical network design problems are considered with the additional constraint that only a specified number k of nodes are required to be connected in the solution. A prototypical example is the kMST problem in which we require a tree of minimum weight spanning at least k nodes in an edgeweighted graph. We show that the kMST problem is NPhard even for points in the Euclidean plane. We provide approximation algorithms with performance ratio 2 p k for the general edgeweighted case and O(k 1=4 ) for the case of points in the plane. Polynomialtime exact solutions are also presented for the class of treewidthbounded graphs which includes trees, seriesparallel graphs, and bounded bandwidth graphs, and for points on the boundary of a convex region in the Euclidean plane. We also investigate the problem of finding short trees, and more generally, that of finding networks with minimum diameter. A simple technique is used to prov...
Balancing Minimum Spanning and Shortest Path Trees
, 1993
"... Efficient algorithms are known for computing a minimum spann.ing tree, or a shortest path. tree (with a fixed vertex as the root). The weight of a shortest path tree can be much more than the weight of a minimum spa,nning tree. Conversely, the distance bet,ween the root, and any vertex in a minimum ..."
Abstract

Cited by 62 (1 self)
 Add to MetaCart
Efficient algorithms are known for computing a minimum spann.ing tree, or a shortest path. tree (with a fixed vertex as the root). The weight of a shortest path tree can be much more than the weight of a minimum spa,nning tree. Conversely, the distance bet,ween the root, and any vertex in a minimum spanning tree may be much more than the distance bet#ween the two vertices in the graph. Consider the problem of balancing between the two kinds of trees: Does every graph contain a tree that is “light ” (at most a constant times heavier than the minimum spanning t,ree), such that the distance from the root to any vertex in t,he tree is no more than a constant times the true distance? This paper answers the question in the affirmative. It is shown that there is a continuous tradeoff between the two parameters. For every y> 0, there is a tree in the graph whose total weight is at most 1 + $? times the weight of a minimum spanning tree, such that the di&nce in the tree between the root, and any vertex is at, most 1 + &y times the true distance. Efficient sequential and parallel algorithms achieving these factors are provided. The algorithms are shown to be optimal in two ways. First, it is shown that no algorithm can achieve better factors in all graphs, because there a.re graphs that do not have better trees. Second, it is shown that even on a pergraph basis, finding trees that achieve better factors is NPhard.
Algorithms to accelerate multiple regular expressions matching for deep packet inspection
 In Proceedings of the Annual Conference of the ACM Special Interest Group on Data Communication (SIGCOMM’06
, 2006
"... There is a growing demand for network devices capable of examining the content of data packets in order to improve network security and provide applicationspecific services. Most high performance systems that perform deep packet inspection implement simple string matching algorithms to match packet ..."
Abstract

Cited by 55 (1 self)
 Add to MetaCart
There is a growing demand for network devices capable of examining the content of data packets in order to improve network security and provide applicationspecific services. Most high performance systems that perform deep packet inspection implement simple string matching algorithms to match packets against a large, but finite set of strings. However, there is growing interest in the use of regular expressionbased pattern matching, since regular expressions offer superior expressive power and flexibility. Deterministic finite automata (DFA) representations are typically used to implement regular expressions. However, DFA representations of regular expression sets arising in network applications require large amounts of memory, limiting their practical application. In this paper, we introduce a new representation for regular
A SourceBased Algorithm For DelayConstrained MinimumCost Multicasting
, 1995
"... A new heuristic algorithm is presented for constructing minimumcost multicast trees with delay constraints. The new algorithm can set variable delay bounds on destinations and handles two variants of the network cost optimization goal: one minimizing the total cost (total bandwidth utilization) of ..."
Abstract

Cited by 54 (0 self)
 Add to MetaCart
A new heuristic algorithm is presented for constructing minimumcost multicast trees with delay constraints. The new algorithm can set variable delay bounds on destinations and handles two variants of the network cost optimization goal: one minimizing the total cost (total bandwidth utilization) of the tree, and another minimizing the maximal link cost (the most congested link). Instead of the singlepass tree construction approach used in most previous heuristics, the new algorithm is based on a feasible search optimization method which starts with the minimumdelay tree and monotonically decreases the cost by iterative improvement of the delaybounded tree. The optimality of the costs of the delaybounded trees obtained with the new algorithm is analyzed by simulation. Depending on how tight the delay bounds are, the costs of the multicast trees obtained with the new algorithm are shown to be very close to the costs of the trees obtained by the Kou, Markowsky and Berman's algorithm. ...
Many birds with one stone: Multiobjective approximation algorithms
, 1992
"... We study networkdesign problems with multiple design objectives. In particular, we look at two cost measures to be minimized simultaneously: the total cost of the network and the maximum degree of any node in the network. Our main result can be roughly stated as follows: given an integer b, we p ..."
Abstract

Cited by 53 (13 self)
 Add to MetaCart
We study networkdesign problems with multiple design objectives. In particular, we look at two cost measures to be minimized simultaneously: the total cost of the network and the maximum degree of any node in the network. Our main result can be roughly stated as follows: given an integer b, we present approximation algorithms for a variety of networkdesign problems on an n node graph in which the degree of the output network is O(b log( n b )) and the cost of this network is O(log n) times that of the minimumcost degreebbounded network. These algorithms can handle costs on nodes as well as edges. Moreover, we can construct such networks so as to satisfy a variety of connectivity specifications including spanning trees, Steiner trees and generalized Steiner forests. The performance guarantee on the cost of the output network is nearly bestpossible unless NP = ~ P . We also address the special case in which the costs obey the triangle inequality. In this case, we obtai...
AuctionBased MultiRobot Routing
, 2005
"... Recently auction methods have been investigated as effective, decentralized methods for multirobot coordination. Experimental research has shown great potential, but has not been complemented yet by theoretical analysis. In this paper we contribute a theoretical analysis of the performance of auc ..."
Abstract

Cited by 52 (9 self)
 Add to MetaCart
Recently auction methods have been investigated as effective, decentralized methods for multirobot coordination. Experimental research has shown great potential, but has not been complemented yet by theoretical analysis. In this paper we contribute a theoretical analysis of the performance of auction methods for multirobot routing. We suggest a generic framework for auctionbased multirobot routing and analyze a variety of bidding rules for different team objectives. This is the first time that auction methods are shown to offer theoretical guarantees for such a variety of bidding rules and team objectives.