In this paper, rule-based programming is explored in the field of automated generation of chemical reaction mechanisms. We explore a class of graphs and a graph rewriting relation where vertices are preserved and only...
详细信息
In this paper, rule-based programming is explored in the field of automated generation of chemical reaction mechanisms. We explore a class of graphs and a graph rewriting relation where vertices are preserved and only edges are changed. We show how to represent cyclic labeled graphs by decorated labeled trees or forests, then how to transform trees into terms. A graph rewriting relation is defined, then simulated by a tree rewriting relation, which can be in turn simulated by a rewriting relation on equivalence classes of terms. As a consequence, this kind of graph rewriting can be implemented using term rewriting. This study is motivated by the design of the GasEl system for the generation of kinetics reactions mechanisms. In GasEl, chemical reactions correspond to graph rewrite rules and are implemented by conditional rewriting rules in ELAN. The control of their application is done through the ELAN strategy language.
This paper presents a Genetic Algorithm for Production Systems Optimization (GAPSO). The GAPSO finds an ordering of Condition Elements (CEs) in the rules of a Production System (PS) that results in a (near) optimal PS...
详细信息
This paper presents a Genetic Algorithm for Production Systems Optimization (GAPSO). The GAPSO finds an ordering of Condition Elements (CEs) in the rules of a Production System (PS) that results in a (near) optimal PS with respect to execution time. Finding such an ordering can be difficult since there is often a large number of ways to order CEs in the rules of a PS. Additionally, existing heuristics to order CEs in many cases conflict with each other. The GAPSO is applicable to PSs in general and no assumptions are made about the matching algorithm or the interpreter that executes the PS. The results of applying the GAPSO to some example PSs are presented. In all examples, the GAPSO found an optimal ordering of CEs in a small number of iterations.
We are interested in evolution scenarios for language-based functionality. We identify different dimensions along which such functionality can evolve, including the following: (i) coding style;(ii) coding details;(iii...
详细信息
We are interested in evolution scenarios for language-based functionality. We identify different dimensions along which such functionality can evolve, including the following: (i) coding style;(ii) coding details;(iii) data model;(iv) crosscutting concerns;and (v) patches. We focus at language interpreters as examples of language-based functionality, but similar scenarios exist for type checkers, static analyses, program transformations, and other sorts of language-based functionality. Our experiences are based on using rule-based programming (with Prolog) for the implementation of language-based functionality, while evolutionary transformations of the functionality are perceived as meta-programs.
With the proliferation of Web services, scientific applications are more and more designed as temporal compositions of services, commonly referred to as workflows. To address this paradigm shift, different workflow ma...
详细信息
With the proliferation of Web services, scientific applications are more and more designed as temporal compositions of services, commonly referred to as workflows. To address this paradigm shift, different workflow management systems have been proposed. While their efficiency has been established over centralized static systems, it is questionable over decentralized failure-prone platforms. Scientific applications recently started to be deployed over large distributed computing platforms, leading to new issues, like elasticity, i.e., the possibility to dynamically refine, at runtime, the amount of resources dedicated to an application. This raised again the demand for new programming models, able to express autonomic self-coordination of services in a dynamic platform. Nature-inspired, rule-based computing models recently gained a lot of attention in this context. They are able to naturally express parallelism, distribution, and autonomic adaptation. While their high expressiveness and adequacy for this context has been established, such models severely suffer from a lack of proof of concepts. In this paper, we concretely show how to leverage such models in this context. We focus on the design, the implementation and the experimental validation of a chemistry-inspired scientific workflow management system. (C) 2013 Elsevier B.V. All rights reserved.
This paper is an introduction to rule-based programming in Maude. We illustrate in particular the use of operator attributes to structure the state of a system, and the difference between equations and rules. We use w...
详细信息
This paper is an introduction to rule-based programming in Maude. We illustrate in particular the use of operator attributes to structure the state of a system, and the difference between equations and rules. We use well-known mathematical games and puzzles for our examples illustrating the expressive power of Maude.
This paper presents a rule-based algorithm for performing order-sorted E-unification using an unsorted E-unification decision procedure under assumptions about E that are commonly satisfied in practice. We have implem...
详细信息
This paper presents a rule-based algorithm for performing order-sorted E-unification using an unsorted E-unification decision procedure under assumptions about E that are commonly satisfied in practice. We have implemented this algorithm in Maude for use with the Maude-NRL protocol analyzer and have used CiME for unsorted E-unification for E any set of AC and ACU axioms. In many examples of interest, using order-sorted unification over unsorted unification is able to reduce the total number of unifiers considered, and dramatically improve the performance of the Maude-NRL tool.
We work through a sequence of evolution scenarios for language-based functionality implemented as rule-based programs. We identify and illustrate different dimensions along which such functionality can evolve, includi...
详细信息
We work through a sequence of evolution scenarios for language-based functionality implemented as rule-based programs. We identify and illustrate different dimensions along which such functionality can evolve, including the following: (i) coding style;(ii) coding details;(iii) data model;(iv) crosscutting concerns;and (v) patches. We focus at language interpreters as examples of language-based functionality, but similar scenarios exist for type checkers, static analyses, program transformations, and other sorts of language-based functionality. We opt for Prolog as the rule-based programming language used for the implementation of language-based functionality. We employ the Prolog-basedrule Evolution Kit (REK) for the operationalisation of the evolution scenarios by means of evolutionary transformations. We compile a list of exercises that are meant to help with the digestion of the scenarios and with the further exploration of the overall subject.
A general approach to implement propagation and simplification of constraints consists of applying rules over these constraints. However, a difficulty that arises frequently when writing a constraint solver is to dete...
详细信息
A general approach to implement propagation and simplification of constraints consists of applying rules over these constraints. However, a difficulty that arises frequently when writing a constraint solver is to determine the constraint propagation algorithm. In previous work, different methods for automatic generation of rule-based solvers for constraints defined over finite domains have been proposed 1,2,3,4 . In this paper, we present a method for generating rule-based solvers for constraint predicates defined by means of a constraint logic program, even when the constraint domain is infinite.
In this paper, we are interested in the runtime complexity of programs based on multiset rewriting. The motivation behind this work is the study of the complexity of chemistry inspired programming models, which recent...
详细信息
In this paper, we are interested in the runtime complexity of programs based on multiset rewriting. The motivation behind this work is the study of the complexity of chemistry inspired programming models, which recently regained momentum due to their adequacy to large autonomous systems. In these models, data are most of the time left unstructured in a container, formally, a multiset. The program to be applied to this multiset is specified as a set of conditioned rules rewriting the multiset. At run time, these rewrite operations are applied concurrently, until no rule can be applied anymore (the set of elements they need cannot be found in the multiset anymore). A limitation of these models stand in their complexity: each computation step may require a complexity in O(n(k)) where n denotes the number of elements in the multiset, and k is the size of the subset of elements method to trigger a given rule. By analogy with chemistry, such elements can be called reactants. In this paper, we explore the possibility of improving the complexity of searching reactants through a static analysis of the rules' condition. In particular, we give a characterisation of this complexity, by analogy to the subgraph isomorphism problem. Given a rule R, we define its rank rk(R) and its calibre C(R), allowing us to exhibit an algorithm with a complexity in O(n(rk)(R)+C(R)) for searching reactants, while showing that rk(R) + C(R) <= k and that rk(R) + C(R) < k most of the time.
In natural situations, movements are often directed toward locations different from that of the evoking sensory stimulus. Movement goals must then be inferred from the sensory cue based on rules. When there is uncerta...
详细信息
In natural situations, movements are often directed toward locations different from that of the evoking sensory stimulus. Movement goals must then be inferred from the sensory cue based on rules. When there is uncertainty about the rule that applies for a given cue, planning a movement involves both 'Choosing the relevant rule and computing the movement goal based on that rule. Under these conditions, it is not clear whether primates compute multiple movement goals based on all possible rules before choosing an action, or whether they first choose a rule and then only represent the movement goal associated with that rule. Supporting the former hypothesis, we show that neurons in the frontoparietal reach areas of monkeys simultaneously represent two different rule-based movement goals, which are biased by the monkeys' choice preferences. Apparently, primates choose between multiple behavioral options by weighing against each other the movement goals associated with each option.
暂无评论