Topological Sorting is a standard computation performed on finite partial order relations, for which efficient algorithms are well known.
This work is a study of using a depth-first search of a directed graph to implement topological sorting algorithms. A new algorithm is presented, along with a discussion of how it...
This paper describes a real time garbage collection algorithm. It allocates storage automatically from a heap, and does not require the programmer to give any indication that particular items are no longer useful or accessible. A garbage collection algorithm is considered to be real time if the amount of work...
Information derived from a Landsat Multispectral Scanner CMSS) scene can be used to assign individual pixels, each representing about one acre on the Earth's surface, to natural resource classes, A lineprinter can be used to generate a 1:24,000 scale map of the scene in which each symbol corresponds to a...
University Honors Program Senior Project.
Many times the study of the behavior of an algorithm can be inhibited by the inability to actually see exactly what the algorithm does. Static diagrams and verbal descriptions are often not enough to provide real insight into the behavior of an algorithm. It would...
Over the past few years Qualitative Reasoning about physical systems has emerged strongly as an important area in Artificial Intelligence. Many qualitative reasoning formalisms have been developed and applied to varied domains, namely, hydraulic systems, electrical systems, industrial control etc.
This paper examines Qualitative Process Theory [Forbus 84] formalism in...
The Large-Grain Data-Flow (LGDF) Machine is a tightly-coupled multi-processor consisting of several independent nodes, upon each of which may run one or more tasks. These tasks must be able to communicate and synchronize with each other. This document describes a message-passing system developed to meet these requirements.
The message-passing system...
Object oriented programming languages are noted for their ability to allow users to quickly construct large software systems. They achieve this ability by allowing the programmer to concentrate on what it is they want to do, ignoring details of how that functionality is achieved. Such characteristics should make the object...