Results 1  10
of
15
AutomataTheoretic Models of Mutation and Alignment
 In International Conference on Intelligent Systems in Molecular Biology
, 1995
"... Finitestate automata called transducers, which have both input and output, can be used to model simple mechanisms of biological mutation. We present a methodology whereby numerically weighted versions of such specifications can be mechanically adapted to create string edit machines that are essent ..."
Abstract

Cited by 16 (3 self)
 Add to MetaCart
Finitestate automata called transducers, which have both input and output, can be used to model simple mechanisms of biological mutation. We present a methodology whereby numerically weighted versions of such specifications can be mechanically adapted to create string edit machines that are essentially equivalent to recurrence relations of the sort that characterize dynamic programming alignment algorithms. Based on this, we have developed a visual programming system for designing new alignment algorithms in a rapidprototyping fashion. 1 Introduction Finitestate automata have an important place in computer science, often representing simple models of computation as the recognition or generation of strings of symbols. A wide variety of such automata have been intensively studied, including weighted automata which have numbers associated with transitions between states, and transducers which have both input and output. Allison and coworkers [2] have proposed the use of finitestat...
A Generic Program for Sequential Decision Processes
 Programming Languages: Implementations, Logics, and Programs
, 1995
"... This paper is an attempt to persuade you of my viewpoint by presenting a novel generic program for a certain class of optimisation problems, named sequential decision processes. This class was originally identified by Richard Bellman in his pioneering work on dynamic programming [4]. It is a perfect ..."
Abstract

Cited by 13 (2 self)
 Add to MetaCart
This paper is an attempt to persuade you of my viewpoint by presenting a novel generic program for a certain class of optimisation problems, named sequential decision processes. This class was originally identified by Richard Bellman in his pioneering work on dynamic programming [4]. It is a perfect example of a class of problems which are very much alike, but which has until now escaped solution by a single program. Those readers who have followed some of the work that Richard Bird and I have been doing over the last five years [6, 7] will recognise many individual examples: all of these have now been unified. The point of this observation is that even when you are on the lookout for generic programs, it can take a rather long time to discover them. The presentation below will follow that earlier work, by referring to the calculus of relations and the relational theory of data types. I shall however attempt to be light on the formalism, as I do not regard it as essential to the main thesis of this paper. Undoubtedly there are other (perhaps more convenient) notations in which the same ideas could be developed. This paper does assume some degree of familiarity with a lazy functional programming language such as Haskell, Hope, Miranda
A Relational Approach To Optimization Problems
, 1996
"... The main contribution of this thesis is a study of the dynamic programming and greedy strategies for solving combinatorial optimization problems. The study is carried out in the context of a calculus of relations, and generalises previous work by using a loop operator in the imperative programming s ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
The main contribution of this thesis is a study of the dynamic programming and greedy strategies for solving combinatorial optimization problems. The study is carried out in the context of a calculus of relations, and generalises previous work by using a loop operator in the imperative programming style for generating feasible solutions, rather than the fold and unfold operators of the functional programming style. The relationship between fold operators and loop operators is explored, and it is shown how to convert from the former to the latter. This fresh approach provides additional insights into the relationship between dynamic programming and greedy algorithms, and helps to unify previously distinct approaches to solving combinatorial optimization problems. Some of the solutions discovered are new and solve problems which had previously proved difficult. The material is illustrated with a selection of problems and solutions that is a mixture of old and new. Another contribution is the invention of a new calculus, called the graph calculus, which is a useful tool for reasoning in the relational calculus and other nonrelational calculi. The graph
Dynamic Programming as a Software Component
 Proceedings of CSCC
"... Abstract: Dynamic programming is usually regarded as a design technique, where each application is designed as an individual program. This contrasts with other techniques such as linear programming, where there exists a single generic program that solves all instances. From a software engineering p ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
Abstract: Dynamic programming is usually regarded as a design technique, where each application is designed as an individual program. This contrasts with other techniques such as linear programming, where there exists a single generic program that solves all instances. From a software engineering perspective, the lack of a generic solution to dynamic programming is somewhat unsatisfactory. It would be much preferable if dynamic programming could be understood as a software component, where the ideas common to all its applications are explicit in shared code. In this paper, we argue that such a component does indeed exist, at least for a large class of applications in which the decision process is a sequential scan of the input sequence. We also assess the suitability of C++ for expressing this type of generic program, and argue that the simplicity offered by lazy functional programming is preferable. In particular, functional programs can be manipulated as algebraic expressions. The paper does not present any novel results: it is an introduction to recent work on the formalisation of algorithmic paradigms in software engineering. KeyWords: Dynamic programming; sequential decision process; software component; functional programming; algebra of programming; program derivation. 1
A Polyhedral Approach to the Single Row Facility Layout Problem
, 2011
"... The Single Row Facility Layout Problem (SRFLP) is the ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
The Single Row Facility Layout Problem (SRFLP) is the
A Polyhedral Study of Triplet Formulation for Single Row Facility Layout Problem
"... The Single Row Facility Layout Problem (SRFLP) is the problem of arranging n departments with given lengths on a straight line so as to minimize the total weighted distance between all department pairs. We present a polyhedral study of the triplet formulation of the SRFLP introduced by Amaral [Discr ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
The Single Row Facility Layout Problem (SRFLP) is the problem of arranging n departments with given lengths on a straight line so as to minimize the total weighted distance between all department pairs. We present a polyhedral study of the triplet formulation of the SRFLP introduced by Amaral [Discrete Applied Mathematics 157(1)(2009)183190]. For any number of departments n, we prove that the dimension of the triplet polytope is n(n−1)(n−2)/3 (this is also true for the projections of this polytope presented by Amaral). We then prove that several valid inequalities presented by Amaral for this polytope are facetdefining. These results provide theoretical support for the fact that the linear program solved over these valid inequalities gives the optimal solution for all instances studied by Amaral.
The Application of Automated Reasoning to Formal Models of Combinatorial Optimization
 Applied Mathematics and Computation
"... Many formalisms have been proposed over the years to capture combinatorial optimization algorithms such as dynamic programming, branch and bound, and greedy. In 1989 Helman presented a common formalism that captures dynamic programming and branch and bound type algorithms. The formalism was late ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Many formalisms have been proposed over the years to capture combinatorial optimization algorithms such as dynamic programming, branch and bound, and greedy. In 1989 Helman presented a common formalism that captures dynamic programming and branch and bound type algorithms. The formalism was later extended to include greedy algorithms. In this paper, we describe the application of automated reasoning techniques to the domain of our model, in particular considering some representational issues and demonstrating that proofs about the model can be obtained by an automated reasoning program. The longterm objective of this research is to develop a methodology for using automated reasoning to establish new results within the theory, including the derivation of new lower bounds and the discovery (and verification) of new combinatorial search strategies. 1 Introduction Many formalisms have been proposed over the years to capture combinatorial optimization algorithms such as dynami...
Synthesising Graphics Card Programs from DSLs
"... Over the last five years, graphics cards have become a tempting target for scientific computing, thanks to unrivaled peak performance, often producing a runtime speedup of x10 to x25 over comparable CPU solutions. However, this increase can be difficult to achieve, and doing so often requires a fun ..."
Abstract
 Add to MetaCart
Over the last five years, graphics cards have become a tempting target for scientific computing, thanks to unrivaled peak performance, often producing a runtime speedup of x10 to x25 over comparable CPU solutions. However, this increase can be difficult to achieve, and doing so often requires a fundamental rethink. This is especially problematic in scientific computing, where experts do not want to learn yet another architecture. In this paper we develop a method for automatically parallelising recursive functions of the sort found in scientific papers. Using a static analysis of the function dependencies we identify sets — partitions — of independent elements, which we use to synthesise an efficient GPU implementation using polyhedral code generation techniques. We then augment our language with DSL extensions to support a wider variety of applications, and demonstrate the effectiveness of this with three case studies, showing significant performance improvement over equivalent CPU methods, and similar efficiency to handtuned GPU implementations.
A Computational Study and Survey of Methods for the SingleRow Facility Layout Problem
, 2012
"... The singlerow facility layout problem (SRFLP) is an NPhard combinatorial optimization problem that is concerned with the arrangement of n departments of given lengths on a line so as to minimize the weighted sum of the distances between department pairs. (SRFLP) is the onedimensional version of ..."
Abstract
 Add to MetaCart
The singlerow facility layout problem (SRFLP) is an NPhard combinatorial optimization problem that is concerned with the arrangement of n departments of given lengths on a line so as to minimize the weighted sum of the distances between department pairs. (SRFLP) is the onedimensional version of the facility layout problem that seeks to arrange rectangular facilities so as to minimize the overall interaction cost. This paper compares the different modelling approaches for (SRFLP) and applies a recent SDP approach for general quadratic ordering problems from Hungerländer and Rendl to (SRFLP). In particular, we report optimal solutions for several (SRFLP) instances from the literature with up to 42 departments that remained unsolved so far. Secondly we significantly reduce the best known gaps and running times for large instances with up to 100 departments.
THE COMPLEXITY OF SEARCHING SEVERAL CLASSES OF AND/OR GRAPHS
"... The complexity of searching for a minimum cost solution graph of an AND/OR graph is analyzed for the class of AND/OR graphs repreaentable by a context free grammar with coat functions; finding a minimum coat solution graph ia then equivalent to finding a lowest coat derivation. Several classes of se ..."
Abstract
 Add to MetaCart
The complexity of searching for a minimum cost solution graph of an AND/OR graph is analyzed for the class of AND/OR graphs repreaentable by a context free grammar with coat functions; finding a minimum coat solution graph ia then equivalent to finding a lowest coat derivation. Several classes of search problems are defined, based on properties of the cost functions and grammar. We show that certain of these classes have different, search complexities specifically, we show that there are distinct classes for which the complexity of finding a minimum cost solution graph is nonrecursive, exponential, NPcomplete, and Q(n 2), where n ia the size of the grammar representing the problem. The correspondence between problem structure and search complexity may serve as a guide for modeling real problems