December 1980 - Vol. 23 No. 12
Features
Computer programs for detecting and correcting spelling errors
With the increase in word and text processing computer systems, programs which check and correct spelling will become more and more common. Peterson investigates the basic structure of several such existing programs and their approaches to solving the problems which arise when this type of program is created. The basic framework and background necessary to write a spelling checker or corrector are provided.
Learning and reasoning by analogy
We use analogy when we say something is a Cinderella story and when we learn about resistors by thinking about water pipes. We also use analogy when we learn subjects like economics, medicine, and law. This paper presents a theory of analogy and describes an implemented system that embodies the theory. The specific competence to be understood is that of using analogies to do certain kinds of learning and reasoning. Learning takes place when analogy is used to generate a constraint description in one domain, given a constraint description in another, as when we learn Ohm's law by way of knowledge about water pipes. Reasoning takes place when analogy is used to answer questions about one situation, given another situation that is supposed to be a precedent, as when we answer questions about Hamlet by way of knowledge about Macbeth.
Deletion in two-dimensional quad trees
An algorithm for deletion in two-dimensional quad trees that handles the problem in a manner analogous to deletion in binary search trees is presented. The algorithm is compared with a proposed method for deletion which reinserts all of the nodes in the subtrees of the deleted node. The objective of the new algorithm is to reduce the number of nodes that need to be reinserted. Analysis for complete quad trees shows that the number of nodes requiring reinsertion is reduced to as low as 2/9 of that required by the old algorithm. Simulation tests verify this result. Reduction of the number of insertions has a similar effect on the number of comparison operations. In addition, the total path length (and balance) of the resulting tree is observed to remain constant or increase slightly when the new algorithm for deletion is used, whereas use of the old algorithm results in a significant increase in the total path length for large trees.
Measured performance of an Ethernet local network
The Ethernet communications network is a broadcast, multiaccess system for local computer networking, using the techniques of carrier sense and collision detection. Recently we have measured the actual performance and error characteristics of an existing Ethernet installation which provides communications services to over 120 directly connected hosts.
This paper is a report on some of those measurements—characterizing “typical” traffic characteristics in this environment and demonstrating that the system works very well. About 300 million bytes traverse the network daily; under normal load, latency and error rates are extremely low and there are very few collisions. Under extremely heavy load—artificially generated—the system shows stable behavior, and channel utilization approaches 98 percent, as predicted.