6173091
Automata-driven indexing of Prolog clauses
Indexing Prolog clauses is an important optimization step that reduces the number of clauses on which unification will be performed and can avoid the pushing of a choice point. It is quite desirable to increase the number of functors used in indexing as this can considerably reduce the size of the filtered set. However this can cause an enormous increase in running time if indexing is done naively. This paper describes a new technique for indexing that utilizes all the functors in a clause-head. More importantly, in spite of using all the functors, this technique is still able to quickly select relevant clause-heads at run time. This is made possible primarily by a finite-state automaton that guides the indexing process. The automaton is constructed at compile time by preprocessing all the clause-heads.
46377078
A Portable Method of Integrating SLG Resolution into Prolog Systems
8380823
Term Matching on Parallel Computers
Term matching is an important problem that arises very often in term rewriting and in functional and equational programming. In this paper, we present a new parallel algorithm for the term-matching problem on the EREW (Exclusive Read Exclusive Write) model of parallel computation. Our algorithm assumes a string representation of the two terms as its input. The string representation is first transformed into two labeled ordered trees and term matching is then performed on these two trees. If n is the length of the input terms then for any constant ∈, (0<#x2208;≤1) our algorithm uses O(n1−∈) processors and takes O(nelog n) time. If e=0 the same algorithm will run in O(log2n) time. The only other known parallel algorithm for this problem is due to Dwork, Kanellakis and Stockmeyer that requires O(n2) processors and takes either O(log n) or O(log2n) time. However, their algorithm uses the stronger CREW (Concurrent Read Exclusive Write) model of parallel computation and assumes a DAG (Directed Acyclic Graph) representation of the two terms as its input. The techniques used in our algorithm are novel and have wide applicability.
30893368
Nonlinear Pattern Matching in Trees
Tree pattern matching is a fundamental operation that is used in a number of programming tasks such as mechanical theorem proving, term rewriting, symbolic computation and nonprocedural programming languages. In this paper we present new sequential algorithms for nonlinear pattern matching in trees. Our algorithm improves upon known tree pattern matching algorithms in important aspects such as time performance, ease of integration with several reduction strategies and ability to avoid unnecessary computation steps on match attempts that fail. The expected time complexity of our algorithm is linear in the sum of the sizes of the two trees.
206085776
Parallel Tree Pattern Matching
Tree pattern matching is a fundamental operation that is used in a number of programming tasks such as code optimization in compilers, symbolic computation, automatic theorem proving and term rewriting. An important special case of this operation is linear tree pattern matching in which an instance of any variable in the pattern occurs at most once. In this paper we describe a new parallel algorithm for linear tree pattern matching using a parallel random access machine model.
5663050
Term Matching on Parallel Computers
Term matching is an important problem that arises very often in term rewriting and in functional and equational programming. We present a new parallel algorithm for the term-matching problem on the EREW (exclusive read, exclusive write) model of parallel computation. Our algorithm assumes a string representation of the two terms as its input. The string representation is first transformed into two labeled ordered trees, and term matching is then performed on these two trees. If n is the length of the input terms, then for any constant ϵ (0 < ϵ ≤ 1) our algorithm uses O(n1-ϵ) processors and takes O(nϵlogn) time. If ϵ = 0, the same algorithm will run in O(log2 n) time. The only other known parallel algorithm for this problem, due to Dwork, Kanellakis, and Stockmeyer, requires O(n2) processors and takes either O(logn) or O(log2n) time. However, their algorithm uses the stronger CREW (concurrent read, exclusive write) model of parallel computation and assumes a DAG (directed acyclic graph) representation of the two terms as its input. On the CRCW (concurrent read, concurrent write) model our algorithm requires n processors and O(log n) time.
61774575
A simple method to test the stability of 2-D recursive digital filters of second order
560868
An Optimal Algorithm for the Orienteering Tour Problem
Orienteering is a sport in which a competitor selects a path from a start to a destination, visiting control points along the path. Each control point has an associated score, and the travel between control points involves a certain cost. The problem is to select a set of control points to visit, so that the total score is maximized subject to a budget constraint on total cost. Several versions of this problem exist. In the version considered in this research, the start and the destination are the same, and the problem is to construct a subtour of the set of control points. The orienteering problem is a variant of the traveling salesman problem, and arises in vehicle routing and production scheduling situations. This problem has been shown to be NP-hard in the literature. We develop an optimal algorithm to solve this problem, using Lagrangean relaxation within a branch-and-bound framework. The Lagrangean relaxation is solved by a degree-constrained spanning tree procedure. Characteristics of the Lagrangea...
35337405
A dynamic learning model for on-line quality control using the TAGUCHI approach
Abstract An important philosophy of quality control due to Taguchi rests on the belief that, once quality is designed into the product and the process, very little inspection is necessary. Taguchi evaluates quality in terms of costs incurred, including inspection and adjustment costs apart from quality loss. Using these costs, he determines an optimal interval for periodic inspection of products. At each inspection, the first item on the process line is checked for defects. If no defects are found, the process is assumed to be under control. On the other hand, if the first item turns out to be defective, the process is immediately stopped and adjusted. The underlying assumption here is that, once a defect is observed, it is construed that the process has drifted and all subsequent items are defective. This article challenges the underlying assumption by recognizing that the observation of one defective item does not necessarily imply that the process is out of control. Noisy signals may occur as a result ...
10727206
A New Scheduling Algorithms For Real Time Tasks
The main objective of this paper is to develop the two different ways in which round robin architecture is modified and made suitable to be implemented in real time and embedded systems. The scheduling algorithm plays a significant role in the design of real time embedded systems. Simple round robin architecture is not efficient to be implemented in embedded systems because of higher context switch rate, larger waiting time and larger response time. Missing of deadlines will degrade the system performance in soft real time systems. The main objective of this paper is to develop the scheduling algorithm which removes the drawbacks in simple round robin architecture. A comparison with round robin architecture to the proposed architectures has been made. It is observed that the proposed architectures solves the problems encountered in round robin architecture in soft real time by decreasing the number of context switches waiting time and response time thereby increasing the system throughput.
316216
The Distribution Problem with Carrier Service: A Dual Based Penalty Approach
The distribution problem with carrier service is an important optimization problem that often arises in vehicle routing. The problem arises in the distribution of commodities from a central facility to a set of geographically distributed locations. Each location has a certain demand, the distribution vehicle has a load capacity, and the entire operation should be completed within a certain time. An outside carrier is available for direct service of locations from the central facility. The problem is to determine a feasible tour for the company vehicle and the locations to be served by the outside carrier such that the total cost of the operations is minimized. We model this problem and develop a solution technique using valid inequalities. A key feature of the solution approach is that it can easily be extended to solve similar problems with any type and number of side constraints as encountered in the current model. The algorithm has been extensively tested and computational results for problems having u...