ppxscal/embedding_network huggingface dataset:
SIMPLIcity: a region-based retrieval system for picture libraries and biomedical image databases
Authors: James Z. Wang
Venue: Proceedings of the eighth ACM international conference on Multimedia (2000)

In this demonstration, we present SIMPLIcity, an image retrieval system for picture libraries and biomedical image databases. The system uses a wavelet-based approach for feature extraction, real-time region segmentation, the Integration Region Matching (IRM) metric, and image classification methods. Tested on large-scale picture libraries and a database of pathology images, the system has demonstrated accurate and fast retrieval. It also exceptionally robust to image alterations.
Recent improvements in MADCAP
Authors: Mark B. Wells
Venue: Communications of the ACM (1963)

MADCAP is a programming language admitting subscripts, superscripts and certain forms of displayed formulas. The basic implementation of this language was described in a previous paper [MADCAP: A scientific compiler for a displayed formula textbook language, Comm. ACM 4 (Jan. 61), 31-36]. This paper discusses recent improvements in the language in three areas: complex display, logical control, and subprogramming. In the area of complex display, the most prominent improvements are a notation for integration and for the binomial coefficients. In the area of logical control the chief new feature is a notation for variably nested looping. The discussion of subprogramming is focused on MADCAP's notation for and use of &ldquo;procedures.&rdquo;
Anomalies in parallel branch-and-bound algorithms
Authors: Ten-Hwang Lai, Sartaj Sahni
Venue: Communications of the ACM (1984)

We consider the effects of parallelizing branch-and-bound algorithms by expanding several live nodes simultaneously. It is shown that it is quite possible for a parallel branch-and-bound algorithm using n2 processors to take more time than one using n1 processors, even though n1 < n2. Furthermore, it is also possible to achieve speed-ups that are in excess of the ratio n2/n1. Experimental results with the 0/1-Knapsack and Traveling Salesman problems are also presented.
COKO III: the Cooper-Koz chess program
Authors: Edward W. Kozdrowicki, Dennis W. Cooper
Venue: Communications of the ACM (1973)

OKO III is a chess player written entirely in Fortran. On the IBM 360-65, COKO III plays a minimal chess game at the rate of .2 sec cpu time per move, with a level close to lower chess club play. A selective tree searching procedure controlled by tactical chess logistics allows a deployment of multiple minimal game calculations to achieve some optimal move selection. The tree searching algorithms are the heart of COKO's effectiveness, yet they are conceptually simple. In addition, an interesting phenomenon called a tree searching catastrophe has plagued COKO's entire development just as it troubles a human player. Standard exponential growth is curbed to a large extent by the definition and trimming of the Fisher set. A clear distinction between tree pruning and selective tree searching is also made. Representation of the chess environment is described along with a strategical preanalysis procedure that maps the Lasker regions. Specific chess algorithms are described which could be used as a command structure by anyone desiring to do some chess program experimentation. A comparison is made of some mysterious actions of human players and COKO III.
Some factors affecting program repair maintenance: an empirical study
Authors: Iris Vessey, Ron Weber
Venue: Communications of the ACM (1983)

An empirical study of 447 operational commercial and clerical Cobol programs in one Australian organization and two U.S. organizations was carried out to determine whether program complexity, programming style, programmer quality, and the number of times a program was released affected program repair maintenance. In the Australian organization only program complexity and programming style were statistically significant. In the two U.S. organizations only the number of times a program was released was statistically significant. For all organizations repair maintenance constituted a minor problem: over 90 percent of the programs studied had undergone less than three repair maintenance activities during their lifetime.
Approximation algorithms for TSP with neighborhoods in the plane
Authors: Adrian Dumitrescu, Joseph S. B. Mitchell
Venue: Proceedings of the twelfth annual ACM-SIAM symposium on Discrete algorithms (2001)

In the Euclidean TSP with neighborhoods (TSPN), we are given a collection of n regions (neighborhoods) and we seek a shortest tour that visits each region. As a generalization of the classical Euclidean TSP, TSPN is also NP-hard. In this paper, we present new approximation results for the TSPN, including (1) a constant-factor approximation algorithm for the case of arbitrary connected neighborhoods having comparable diameters; and (2) a PTAS for the important special case of disjoint unit disk neighborhoods (or nearly disjoint, nearly-unit disks). Our methods also yield improved approximation ratios for various special classes of neighborhoods, which have previously been studied. Further, we give a linear-time &Ogr;(1)-approximation algorithm for the case of neighborhoods that are (infinite) straight lines.
On multiprogramming, machine coding, and computer organization
Authors: Niklaus Wirth
Venue: Communications of the ACM (1969)

The author feels that the interrupt feature which is available in most modern computers is a potent source of programming pitfalls and errors, and that it therefore may heavily contribute to the unreliability of programs making use of it. A programming scheme is presented which avoids the concept of the interrupt and permits the specification of concurrent (or pseudoconcurrent) activities in a supposedly more perspicuous manner. It is intended to serve as a basis for the construction of operating systems, which are prime examples of programs with concurrent activities. The scheme includes a set of basic instructions for the generation, termination, and synchronization of parallel processes. A set of routines representing these instructions and thereby simulating a hypothetical machine organization has been implemented and tested on the IBM System/360. Two programs using these instructions, written in PL360, are presented.
Breadth-first numbering: lessons from a small exercise in algorithm design
Authors: Chris Okasaki
Venue: Proceedings of the fifth ACM SIGPLAN international conference on Functional programming (2000)

Every programmer has blind spots. Breadth-first numbering is an interesting toy problem that exposes a blind spot common to many---perhaps most---functional programmers.
Geographical analysis in SAP business information warehouse
Authors: Karim Mohraz
Venue: Proceedings of the 8th ACM international symposium on Advances in geographic information systems (2000)

The visualization of business data in a geographic context supports the decision making process by showing how e.g. sales data relates to other data. Tasks like market penetration analysis can be &ldquo;visually&rdquo; tackled by combining enterprise and market data on a map. In this paper it is shown how maps can be linked to the data queried from SAP's Business Information Warehouse (BW), in order to benefit from geographic analysis. BW provides a seamless integration of its unique GIS Tool called Business Explorer Map (BEx Map), in such a way that any report containing geographic data, can be displayed on a map. BEx Map provides an easy way of navigating (zoom in, geographic drill-down, slice dice) through BW reports, enabling all end-users to interactively analyze the BW report data.
Stream communication between real-time tasks in a high-performance multiprocessor
Authors: J. A. J. Leijten, J. L. van Meerbergen, A. H. Timmer, J. A. G. Jess
Venue: Proceedings of the conference on Design, automation and test in Europe (1998)

The demands in terms of processing performance, communication bandwidth and real-time throughput of many multimedia applications are much higher than today's processing architectures can deliver. The Prophid heterogeneous multiprocessor architecture template aims to bridge this gap. The template contains a general purpose processor connected to a central bus, as well as several high-performance application domain specific processors. A high-throughput communication network is used to meet the high bandwidth requirements between these processors. In this network multiple time-division-multiplexed data streams are transferred over several parallel physical channels. This paper presents a method for guaranteeing the throughput for hard-real-time streams in such a network. At compile time sufficient bandwidth is assigned to these streams. The assignment can be determined in polynomial time. Remaining bandwidth is assigned to soft-real-time streams at run time. We thus achieve efficient stream communication with guaranteed performance.
An event-driven compiling technique
Authors: J. P. Banâtre, J. P. Routeau, L. Trilling
Venue: Communications of the ACM (1979)

Due to the linear structure of source text, difficulties may arise in a one-pass compilation process. These difficulties occur when an entity cannot be processed because of a forward reference to information only obtainable from subsequent entities. Classic solutions ask for data structures appropriate for each case. A technique is presented here which uses instead control structures, namely events and processes. The work of the compiler-writer becomes easier both conceptually and in practice because he can forget these problems at the outset and he avoids special processing for each problem. This technique has been applied to the construction of an Algol 68 compiler. Three examples from that implementation are described and discussed here.
Laser optical disk: the coming revolution in on-line storage
Authors: Larry Fujitani
Venue: Communications of the ACM (1984)

Commercially available only recently, the optical disk drive uses a laser beam to burn impressions onto a plastic disk. Employing a highly focused beam rather than a diffuse magnetic field to write, the laser optical disk drive yields storage densities up to 10 times those of magnetic disks.
Towards an error free plagarism detection process
Authors: Thomas Lancaster, Fintan Culwin
Venue: Proceedings of the 6th annual conference on Innovation and technology in computer science education (2001)

For decades many computing departments have deployed systems for the detection of plagiarised student source code submissions. Automated systems to detect free-text student plagiarism are just becoming available and the experience of computing educators is valuable for their successful deployment.This paper describes a Four-Stage Plagiarism Detection Process that attempts to ensure no suspicious similarity is missed and that no student is unfairly accused of plagiarism. Required characteristics of an effective similarity detection engine are proposed and an investigation of a simple engine is described. An innovative prototype tool designed to decrease the workload of tutors investigating undue similarity is also presented.
Viewpoint Estimation in Three-Dimensional Images Taken with Perspective Range Sensors
Authors: José M. Sanchiz, Robert Burns Fisher
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (2000)

We present a method for estimating the viewpoint from which a 3D image has been taken using a central-projection range sensor. We assume we have the 3D coordinates of the points, organized with a known topology, but considerable noise is present in the data. At points in the scene where there are surface discontinuities, we estimate step rays through a linear interpolation. The viewpoint is found as the point of minimum distance to the set of step rays. To cope with noise, we define an unbiased distance measure. The minimization of the sum of distances provides the viewpoint. We present results of several experiments carried out with 3D images of an old church.
An energy consumption model for performance analysis of routing protocols for mobile ad hoc networks
Authors: Laura Marie Feeney
Venue: Mobile Networks and Applications (2001)

A mobile ad hoc network (or manet) is a group of mobile, wireless nodes which cooperatively form a network independent of any fixed infrastructure or centralized administration. In particular, a manet has no base stations: a node communicates directly with nodes within wireless range and indirectly with all other nodes using a dynamically-computed, multi-hop route via the other nodes of the manet. Simulation and experimental results are combined to show that energy and bandwidth are substantively different metrics and that resource utilization in manet routing protocols is not fully addressed by bandwidth-centric analysis. This report presents a model for evaluating the energy consumption behavior of a mobile ad hoc network. The model was used to examine the energy consumption of two well-known manet routing protocols. Energy-aware performance analysis is shown to provide new insights into costly protocol behaviors and suggests opportunities for improvement at the protocol and link layers.
A framework to support teaching in distributed systems
Authors: C. Burger, K. Rothermel
Venue: Journal on Educational Resources in Computing (JERIC) (2001)

Computer networks and distribute systems are characterized by highly dynamic, concurrent, and complex processes. Thus, training in this area requires great effort from both teachers and learners. Teachers are disatisfied with available methods for presentation, explanation, and exercises, and they are looking for better methods to support learners. We have developed and architecture called Highly interactive simulation of algorithms and Protocols (HiSAP), consisting of a framework to build simulations and generate applets from formally specified algorithms or protocols. By modifying this specification and observing the resulting behavior, teaching and learning in a constructive manner is enabled. The framework is open to plug-in tools to show various aspects of HiSAP's behavior. We present the results of some experiments with HiSAP at three different lectures for graduate students of distributed systems and computer networks.
A note on compiling fixed point binary multiplications
Authors: H. Tim Gladwin
Venue: Communications of the ACM (1971)

An algorithm is developed for compiling, as a sequence of shifts, additions, and subtractions, many fixed point binary multiplications involving a constant. The most significant characteristics of the algorithm are the simplicity of the test which determines if the algorithm should be applied and the degree to which it &ldquo;suggests&rdquo; efficient object code.
Enabling next generation streaming media networks (keynote session)
Authors: Eric A. Brewer
Venue: Proceedings of the eighth ACM international conference on Multimedia (2000)

The proliferation of broadband access, enhancements in production and encoding technologies and increasing consumer demand for rich, high bandwidth content are fueling the need for reliable and cost-effective streaming media delivery networks that ensure a high quality end-user experience. These networks provide a scalable infrastructure for both live and on-demand streaming media. In his keynote, Dr. Brewer will address specific IP infrastructure needs for streaming media delivery; the importance of caching, multicast and bandwidth provisioning; enhancing media delivery with network edge services; and putting it all together to create a high-performance, reliable streaming media delivery network.
Hardware estimation of a process' primary memory requirements
Authors: David K. Gifford
Venue: Communications of the ACM (1977)

A minor hardware extension the Honeywell 6180 processor is demonstrated to allow the primary memory requirements of a process in Multics to be approximated. The additional hardware required for this estimate to be computed consists of a program accessible register containing the miss rate of the associative memory used for page table words. This primary memory requirement estimate was employed in an experimental version of Multics to control the level of multiprogramming in the system and to bill for memory usage. The resulting system's tuning parameters display configuration insensitivity, and it is conjectured that the system would also track shifts in the referencing characteristics of its workload and keep the system in tune.
TENEX, a paged time sharing system for the PDP - 10
Authors: Daniel G. Bobrow, Jerry D. Burchfiel, Daniel L. Murphy, Raymond S. Tomlinson
Venue: Communications of the ACM (1972)

TENEX is a new time sharing system implemented on a DEC PDP-10 augmented by special paging hardware developed at BBN. This report specifies a set of goals which are important for any time sharing system. It describes how the TENEX design and implementation achieve these goals. These include specifications for a powerful multiprocess large memory virtual machine, intimate terminal interaction, comprehensive uniform file and I/O capabilities, and clean flexible system structure. Although the implementation described here required some compromise to achieve a system operational within six months of hardware checkout, TENEX has met its major goals and provided reliable service at several sites and through the ARPA network.
An Introduction to MSERV
Authors: Joshua Drake
Venue: Linux Journal (2001)

Drake explains how MSERV can end musical dictatorship.
Do it by the numbers&mdash;digital shorthand
Authors: R. W. Bemer
Venue: Communications of the ACM (1960)

Present communications systems transmit single characters in groups of coded pulses between simple terminal equipments. Since English words form only a sparse set of all possible alphabetic combinations, present methods are inefficient when computer systems are substituted for these terminals. Using numeric representations of entire words or common phrases (rather than character-by-character representations) requires approximately one-third of present transmission time. This saving is reflected in overall costs. Other benefits accrue in code and language translation schemes. Provision is made for transmission of purely numeric and/or binary streams, and for single character-transmission of non-dictionary words such as the names of people of places.
FOCUS microcomputer number system
Authors: Albert D. Edgar, Samuel C. Lee
Venue: Communications of the ACM (1979)

FOCUS is a number system and supporting computational algorithms especially useful for microcomputer control and other signal processing applications. FOCUS has the wide-ranging character of floating-point numbers with a uniformity of state distributions that give FOCUS better than a twofold accuracy advantage over an equal word length floating-point system. FOCUS computations are typically five times faster than single precision fixed-point or integer arithmetic for a mixture of operations, comparable in speed with hardware arithmetic for many applications. Algorithms for 8-bit and 16-bit implementations of FOCUS are included.
Efficient perspective-accurate silhouette computation and applications
Authors: Mihai Pop, Christian Duncan, Gill Barequet, Michael Goodrich, Wenjing Huang, Subodh Kumar
Venue: Proceedings of the seventeenth annual symposium on Computational geometry (2001)

Silhouettes are perceptually and geometrically salient features of geo metric models. Hence a number of graphics and visualization applications need to find them to aid further processing. The efficient computation of silhouettes, especially in the context of perspective projection, is known to be difficult. This paper presents a novel efficient and practical algorithm to compute silhouettes from a sequence of viewpoints under perspective projection. Parallel projection is a special case of this algorithm. Our approach is based on a point-plane duality in three dimensions, which allows an efficient computation of the \emph{changes} in the silhouette of a polygonal model between consecutive frames. In addition, we present several applications of our technique to problems from computer graphics and medical visualization. We also provide experimental data that show the efficiency of our approach. million vertices on an SGI Onyx workstation.
STHoles: a multidimensional workload-aware histogram
Authors: Nicolas Bruno, Surajit Chaudhuri, Luis Gravano
Venue: ACM SIGMOD Record (2001)

Attributes of a relation are not typically independent. Multidimensional histograms can be an effective tool for accurate multiattribute query selectivity estimation. In this paper, we introduce STHoles, a &ldquo;workload-aware&rdquo; histogram that allows bucket nesting to capture data regions with reasonably uniform tuple density. STHoles histograms are built without examining the data sets, but rather by just analyzing query results. Buckets are allocated where needed the most as indicated by the workload, which leads to accurate query selectivity estimations. Our extensive experiments demonstrate that STHoles histograms consistently produce good selectivity estimates across synthetic and real-world data sets and across query workloads, and, in many cases, outperform the best multidimensional histogram techniques that require access to and processing of the full data sets during histogram construction.
String processing techniques
Authors: Stuart E. Madnick
Venue: Communications of the ACM (1967)

The internal organization of string processing systems is discussed. Six techniques for data structures are presented and evaluated on the basis of: (1) creation of strings; (2) examination of strings; and (3) alteration of strings. Speed of operation, storage requirements, effect on paging, and programmer convenience are also considered. One of the techniques, single-word linked blocks, is used in an example demonstrating an implementation of a SNOBOL string processing language on an IBM System/360.
An abstract Monte-Carlo method for the analysis of probabilistic programs
Authors: David Monniaux
Venue: ACM SIGPLAN Notices (2001)

We introduce a new method, combination of random testing and abstract interpretation, for the analysis of programs featuring both probabilistic and non-probabilistic nondeterminism. After introducing "ordinary" testing, we show how to combine testing and abstract interpretation and give formulas linking the precision of the results to the number of iterations. We then discuss complexity and optimization issues and end with some experimental results.
Short proofs are narrow&mdash;resolution made simple
Authors: Eli Ben-Sasson Avi Wigderson
Venue: Journal of the ACM (JACM) (2001)

The widthof a Resolution proof is defined to be the maximal number of literals in any clause of the proof. In this paper, we relate proof width to proof length (=size), in both general Resolution, and its tree-like variant. The following consequences of these relations reveal width as a crucial &ldquo;resource&rdquo; of Resolution proofs. In one direction, the relations allow us to give simple, unified proofs for almost all known exponential lower bounds on size of resolution proofs, as well as several interesting new ones. They all follow from width lower bounds, and we show how these follow from natural expansion property of clauses of the input tautology. In the other direction, the width-size relations naturally suggest a simple dynamic programming procedure for automated theorem proving&mdash;one which simply searches for small width proofs. This relation guarantees that the runnuing time (and thus the size of the produced proof) is at most quasi-polynomial in the smallest tree-like proof. This algorithm is never much worse than any of the recursive automated provers (such as DLL) used in practice. In contrast, we present a family of tautologies on which it is exponentially faster.