The data used for the construction of genome maps is imperfect, therefore the mapping of a physically linear structure must take place in a very uneven feature space. As the number of genes to be ordered grows, it appears to be impractical to use exhaustive search techniques to find the...
Although much effort has been invested to build applications that support group work, collaborative applications have not found easy success. The cost of adopting and maintaining collaborative applications has prevented their widespread use, especially among small distributed groups. Application developers have had difficulties recognizing the extra effort required by groups...
This paper describes the design and performance of a distributed, multi-tier architecture for scientific information management and data exploration. A novel aspect of this framework is its integration of Java IDL, the CORBA distributed object computing middleware with JavaBeans, the Java Component model to provide a flexible, interactive framework for...
This paper investigates the feasibility of compiling the functionality of a decision
theoretic problem solving engine into a set of rules or functionally similar construct.
The decision theoretic engine runs in exponential time, while the rule set runs in
linear time at worst. The main question that will determine the...
This report addresses the design and implementation of an internet-based grading tool for the "Translators" course. The motivation is to avoid exposing the instructor's Java byte-code to possible reverse-engineering tools and enable students to submit their homework virtually from any machine across the internet. This tool is intended to replace...
Development of graphical user interface (GUI) applications is difficult since the process can be both complicated and tedious. We propose a solution directed at reducing programming time and effort required to build a GUI application. Our solution is based on the Petri Network, the Oregon SpeedCode Universe (OSU) Application Framework,...
Various ecological and hydrological models require estimates of the amount and spatial distribution of monthly and annual precipitation. PRISM is an analytical model that distributes point measurements of monthly, seasonal and annual precipitation to a geographic grid. In order to use this model effectively, good graphical user interfaces were needed....
Polyhedra are geometric representations of linear systems of equations and
inequalities. Since polyhedra are used to represent the iteration domains of nested
loop programs, procedures for operating on polyhedra can be used for doing loop
transformations and other program restructuring transformations which are needed
in parallelizing compilers. Thus a need...
Cryptographic systems are used for secure communications in the government, in industry, and by individuals. Many cryptographic systems base their security on our inability to factor quickly. For this reason, in the last few decades several fast factoring algorithms have been developed. The Quadratic Sieve is one of the best...
The project aims at building an application that would simulate a transparency that can either be overlaid on top of the graphical display of another application or used as a stand-alone by accepting input from a keyboard or a mouse to enhance a presentation. The project provides an environment to...
Oregon Speedcode Universe (OSU) is an excellent environment for producing rapid prototypes -- unfortunately, it has no facilities for producing animated sequences. Should we make animation sequences inside OSU or import them? Interactive or not? Given the event-driven nature of Macintosh applications, how do we integrate an on-going event like...
How might capabilities for algorithm animation be seamlessly integrated into a programming language that is both visual and declarative? Until now, visual programming language researchers have not attempted to answer that question, making the fruits of algorithm animation available only to users of textual programming languages. Users of visual programming...
Preparing code for parallelization is one of the most time consuming programming tasks; approximately 24% of the program development activity is spend in this phase. In message passing systems, this is usually achieved by the addition of run-time message-passing library calls. The primitives provided by different message-passing libraries are similar,...
This paper describes the results of a research project to design new graphical user interlace to an existing applications software product, using the techniques of user-centered design. The project began with a literature review to determine the currently accepted methodology in the area of user-centered design, with emphasis on the...
Generalized Radial Basis Functions were used to construct networks
that learn input-output mappings from given data. They are
developed out of a theoretical framework for approximation based
on regularization techniques and represent a class of three-layer
networks similar to backpropagation networks with one hidden
layer.
A network using Gaussian base...
This project is an interactive environment which allows the user to explore various sound generation techniques. The three methods of sound generation used are (1) FM synthesis, (2) Additive synthesis, and (3) Karplus/Strong synthesis of plucked strings. The project also provides the capability to display the generated sound waveforms and...
Although standard tools have been used for lexical and syntactic analysis since the late 1970's, no
standard tools exist for the remaining parts of a compiler. Part of the reason for this de ciency is due to
the di culty of producing elegant tools capable of handling the large amount...
In a typical method of database design, ER diagrams are used to represent the conceptual schema of the database. Use-cases are now widely used to capture requirements in designing the basic architecture of an object-oriented system. Use-cases are highly effective in designing forms required for data insertion, retrieval, update, and...
Parallel computing on heterogeneous workstation clusters has proved to be a very efficient use of available resources, increasing their overall utilization. However, for it to be a viable alternative to expensive, dedicated parallel machines, a number of key issues need to be resolved. One of the major challenges of heterogeneous...
Capacity Planning is a gradually recognized need in UNIX environments. However, the effort to address this problem has been more or less event driven and is often discarded after crises are over. The main cause to this situation is that the tools to support the CP function in UNIX environments...
An important problem in molecular biology is to predict the secondary
structure of proteins from their primary structure. The primary structure of a
protein is the sequence of amino acid residues. The secondary structure is an
abstract description of the shape of the folded protein, with regions identified
as alpha...
We describe a set of data flow techniques and code transformations that translate a single instruction stream, multiple data stream (SIMD) Dataparallel C program into a semantically equivalent single program, multiple data stream (SPMD) C program suitable for execution on shared memory multiprocessor computers, such as the Sequent Balance and...
There are three families of exact methods used for probabilistic inference in
belief nets. It is necessary to compare them and analyze the advantages and
the disadvantages of each algorithm, and know the time cost of making
inferences in a given belief network. This paper discusses the factors that
influence...
Supervised learning programs, such as decision tree learners and neural networks, often must learn Boolean functions. The concept being learned may not easily be expressed in terms of the atomic features given. Constructive induction automatically produces higher level features (combinations of the atomic features), which can improve learning performance. The...
Culprit Tracking is a technique to make lazy evaluation in a programming language even lazier. We sought to develop such a technique after noting poorly-distributed performance characteristics of graphical user interfaces (GUIs) programmed in lazy languages. A characteristic aspect of GUI programs is the intensive screen I/O. These programs are...
Visualization is a useful method to teach classes in algorithms and data structures. Many animation systems of algorithms and data structures have been implemented. In these systems, students can set initial conditions, run algorithms and view the result graphically. In this project, a small visualization tool library is implemented using...
Debanoir is a distributed, collaborative editor for building Bayesian networks. It is composed of a front-end editor client and back-end server programs. The editor client is a Java applet that can be invoked from any Internet browser that supports Java. The server, as of now, runs on the machine from...
We describe a CASE tool for designing hard real-time applications, called HaRTS. The design tool supports a hierarchical design diagram which combines the control and data flow of a hard real-time application. The design hierarchy separates a design into self-contained subdesigns. Yet, the design can be flatten to give you...
Application supporting a Graphical User Interface (GUI) are difficult to create. Their inherent complexity, their interdependence with many other disciplines, and the inadequacy of the existing tools leave the programmer with too much to do. In particular, almost no help is provided to create application-specific code. Some visual formalisms such...
A Kalman filter was developed to recover information on short period variations of ocean circulation from the satellite altimeter signals for the North Pacific Ocean. The ocean circulation at each grid point is specified by three variables: sea level height h, zonal velocity u, and meridional velocity v. In our...
The problem addressed in this paper is that of usability of the Petri Net Editor used to create applications in the Objex framework. This editor puts a lot of burden on the user, in that the user needs to remember all the GUI resources previously created for the application, has...
With the strong shift toward network-centric cluster-computing workload management has become increasingly important in both industrial and academic environments. To fully harness the distributed computing resources of the 32 PC's in our department, I developed a workload monitoring system together with a few utilities for users to submit either sequential...
A graph may he drawn in many different ways. We investigate how to draw a graph nicely, in the sense of being visually pleasing. We discuss the history of this field, and look at several algorithms for drawing graphs.
For planar graphs this problem has been algorithmically solved: that is,...
While much work has been done in estimating software reliability, little attention is paid to predict reliability as early as at the design time. In this report, we present our initial research results of building an early stage software reliability prediction model.
In Part I, we will first investigate and...
Index size savings from three techniques are measured. The three techniques are: 1) eliminating common, low information words found in a "stop list" (such as: of, the, at, etc.), 2) truncating terms by eliminating word stems (such as: -s, -ed, -ing, etc.), and 3) simple data compression. Savings are measured...
One current research goal of Artificial Intelligence and Machine Learning is to build learning systems that robustly improve their planning performance with experience [Tade91]. This work concentrates on learning decomposition rules, i.e., learning rules that guide the planning process by determining the order in which operators are to be applied...
Software development has been characterized by severe schedule slippage, cost overrun and the inability of the developer to estimate with acceptable accuracy the resources and schedule required early in the requirements analysis and functional design phase when critical investment decisions must be made. This estimation difficulty has emerged as one...
Exception handling is a general purpose tool found in many modern programming language, but most work to date is based on textual languages. We present an approach to exception handling in a new context, the visual programming language Forms/3. The visual nature of Forms/3 supports an effective approach to exception...
To be competitive in the development and production of complex electronic systems, a company must constantly scrutinize its manufacturing processes to find ways to reduce costs and increase productivity. One of the more costly problems is the inability to troubleshoot and repair faulty circuit boards on the spot. Rather, they...
The goal of Inductive Learning is to produce general rules from a set of seen examples, which can then be applied to other unseen examples. ID3 is an inductive learning algorithm that can be used for the classification task. The input to the algorithm is a set of tuples of...
Hewlett-Packard (HP) is one of the world's largest computer companies and the foremost producer of test and measurement instruments. In Corvallis, Oregon, HP manufactures several precision products on high speed, automated assembly lines. The alignment process of a cap to a base part is one of the essential processes in...
The majority of database users interact with database systems by manipulating forms. This paper discusses the fundamental mechanisms underlying forms and considers how these mechanisms affect the behavior of forms. We then review the forms supported by commercial products. None of the packages reviewed provide all of the features that...
Forms are the most common means of interacting with databases. Database develop1;11ent products offer differing capabilities for creating forms. We will compare the form design features available using 4th Dimension and Oracle database products. These two products have the most complete set of features compared to other micro computer database...
Porting a graphical user interface application from one to another window system is usually very costly because it requires a thorough knowledge of the provided application frameworks or toolkits on each system. And the learning curve for graphical user interface application frameworks or toolkits is usually very steep.
The solution...
In this paper we describe a fuzzy logic based control system implemented on a PC architecture. The rule based inference engine of this expert system is easily configured through an ascii text file and is demonstrated to be capable of controlling various simulations, including an inverted pendulum. The controller is...
Until now, attempts to extend the one-way constraint evaluation model of the spreadsheet paradigm to support complex objects, such as colored circles or user-defined types, have led to approaches featuring either a direct way of creating objects graphically or strong compatibility with the spreadsheet paradigm, but not both. This inability...
Oregon SpeedCode Universe (OSU) is a rapid prototyping system which automates the production of applications from a description of the user interface. GraphLab is a domain-specific tool which deals with several major problems concerning OSU: (1) limited functionality, that is, lacking graphical capabilities in generated applications, (2) indirect approach to...
Application programming has become increasingly difficult because of the high demands of creating a Graphical User Interface. One solution to this problem is to provide an object oriented application framework which provides much of the functionality of the GUI in a reusable library. However, application frameworks do not provide reusable...