We study the problem of exploiting parallelism from search-based AI systems on distributed machines. We propose stack-splitting, a technique for implementing or-parallelism, which when coupled with appropriate schedul...
详细信息
We study the problem of exploiting parallelism from search-based AI systems on distributed machines. We propose stack-splitting, a technique for implementing or-parallelism, which when coupled with appropriate scheduling strategies leads to: (i) reduced communication during distributed execution; and, (ii) distribution of larger grain- sized work to processors. The modified technique can also be implemented on shared memory machines and should be quite competitive with existing methods. Indeed, an implementation has been carried out on shared memory machines, and the results are reported here.
The paper describes a general automated method for synthesizing the design of both the topology and parameter values for controllers. The automated method automatically makes decisions concerning the total number of p...
详细信息
The paper describes a general automated method for synthesizing the design of both the topology and parameter values for controllers. The automated method automatically makes decisions concerning the total number of processing blocks to be employed in the controller, the type of each block, the topological interconnections between the blocks, the values of all parameters for the blocks, and the existence, if any, of internal feedback between the blocks of the overall controller. Incorporation of time-domain, frequency-domain, and other constraints on the control or state variables (often analytically intractable using conventional methods) can be readily accommodated. The automatic method described in the paper (genetic programming) is applied to a problem of synthesizing the design of a robust controller for a plant with a second-order lag. A textbook PID compensator preceded by a lowpass pre-filter delivers credible performance on this problem. However, the automatically created controller employs a second derivative processing block (in addition to proportional, integrative, and derivative blocks and a pre-filter). It is better than twice as effective as the textbook controller as measured by the integral of the time-weighted absolute error, has only two-thirds of the rise time in response to the reference (command) input, and is 10 times better in terms of suppressing the effects of disturbance at the plant input.
This paper describes how genetic programming can be used to automate the synthesis of the design of both the topology and parameter values for controllers. The method described in this paper automatically makes decisi...
详细信息
This paper describes how genetic programming can be used to automate the synthesis of the design of both the topology and parameter values for controllers. The method described in this paper automatically makes decisions concerning the total number of processing blocks to be employed in the controller, the type of each block, the topological interconnections between the blocks, the values of all parameters for the blocks, and the existence, if any, of internal feedback between the blocks of the overall controller. This design process can readily combine optimization of performance (e.g., by a metric such as the integral of the time-weighted error) with time-domain constraints and frequency-domain constraints. Genetic programming is applied to two illustrative problems of controller synthesis: the design of a robust controller for a nonminimal-phase plant and the design of a robust controller for a three-lag plant. The PID compensator of Astrom and Hagglund (1995) for the three-lag plant delivers credible performance. The automatically created controller is better than 7.2 times as effective as the previous controller as measured by the integral of the time-weighted absolute error, has only 50% of the rise time in response to the reference input, has only 35% of the settling time, and is 92.7 dB better in terms of suppressing the effects of disturbance at the plant input.
In modern circuit design, the Shannon decomposition of switching functions is widely used. On the other hand, in information theory of telecommunication, the Shannon entropy used as a measure to represent the informat...
详细信息
In modern circuit design, the Shannon decomposition of switching functions is widely used. On the other hand, in information theory of telecommunication, the Shannon entropy used as a measure to represent the information in numerical values, is a key notion. In this paper, we relate these two concepts, belonging to different areas, into an approach to the minimisation of exclusive-or sum-of-products (AND/EXOR) expressions for switching functions. The Shannon decomposition, and the closely related Davio decomposition for AND/EXOR expressions are interpreted in terms of basic concepts in the information theory. Thanks to that, we have proposed an entropy based strategy for minimization of AND/EXOR expressions. We have provided a comparison and an experimental verification of this strategy with some known heuristic minimization strategies using benchmarks. In some cases, our program Info-EXOR produces extremely better results. Moreover, the information theory interpretation of classical decomposition of switching functions offers a new point of view to the existing design styles.
A new decision procedure for the existential fragment of ordering constraints expressed using the recursive path ordering is presented. This procedure is nondeterministic and checks whether a set of constraints is sol...
详细信息
Current interface descriptions are poor in describing components, because they only provide an external view on a component and they do not lay down how components interact with each other. Suggestions to improve comp...
详细信息
Whereas it is generally acknowledged that code tangling reduces the quality of software and that aspect-oriented programming (AOP) is a means of addressing this problem, there is — as yet — no clear definition or ch...
详细信息
In this paper we explain how recursion operators can be used to structure and reason about program semantics within a functional language. In particular, we show how the recursion operator fold can be used to structur...
ISBN:
(纸本)9781581130249
In this paper we explain how recursion operators can be used to structure and reason about program semantics within a functional language. In particular, we show how the recursion operator fold can be used to structure denotational semantics, how the dual recursion operator unfold can be used to structure operational semantics, and how algebraic properties of these operators can be used to reason about program semantics. The techniques are explained with the aid of two main examples, the first concerning arithmetic expressions, and the second concerning Milner's concurrent language CCS. The aim of the paper is to give functional programmers new insights into recursion operators, program semantics, and the relationships between them.
Global Instruction Schedulers can be classified as either structure or profile driven. Structure driven approaches attempt to find instruction level parallelism by redistributing instructions along all possible execut...
详细信息
ISBN:
(纸本)9780818685910
Global Instruction Schedulers can be classified as either structure or profile driven. Structure driven approaches attempt to find instruction level parallelism by redistributing instructions along all possible execution paths. When resources are limited, poor choices may penalize the frequently executed paths. By contrast, profile driven approaches use feedback information to identify frequently executed (hot) regions, and attempt to improve their performance. This may be at the expense of less frequently executed (cold) regions, for instance by inserting fixup code. The overall performance improves if the frequency information is accurate and there is a dominant trace in the program. If either of these conditions does not hold, performance may degrade. We present a novel algorithm that attempts to combine the individual merits of the above two approaches while avoiding some of their drawbacks. We have also incorporated several techniques which improve the global scheduling performance on out-of-order (OOO) processors. Our algorithm is integrated with a parametric resource model and can be applied both before and after register allocation. It has been implemented in the SGI MIPSpro compiler, and the results have been evaluated on the MIPS R8000 and R10000 processors.
A nested datatype, also known as a non-regular datatype, is a parametrised datatype whose declaration involves different instances of the accompanying type parameters. Nested datatypes have been mostly ignored in func...
详细信息
暂无评论