Results 11 - 20
of
194
Programming finite-domain constraint propagators in action rules. Theory and Practice of Logic Programming 6
, 2006
"... In this paper, we propose a new language, called AR (Action Rules), and describe how various propagators for finite-domain constraints can be implemented in it. An action rule specifies a pattern for agents, an action that the agents can carry out, and an event pattern for events that can activate t ..."
Abstract
-
Cited by 28 (13 self)
- Add to MetaCart
(Show Context)
In this paper, we propose a new language, called AR (Action Rules), and describe how various propagators for finite-domain constraints can be implemented in it. An action rule specifies a pattern for agents, an action that the agents can carry out, and an event pattern for events that can activate the agents. AR combines the goal-oriented execution model of logic programming with the event-driven execution model. This hybrid execution model facilitates programming constraint propagators. A propagator for a constraint is an agent that maintains the consistency of the constraint and is activated by the updates of the domain variables in the constraint. AR has a much stronger descriptive power than indexicals, the language widely used in the current finite-domain constraint systems, and is flexible for implementing not only interval-consistency but also arc-consistency algorithms. As examples, we present a weak arc-consistency propagator for the all distinct constraint and a hybrid algorithm for n-ary linear equality constraints. B-Prolog has been extended to accommodate action rules. Benchmarking shows that B-Prolog as a CLP(FD) system significantly outperforms other CLP(FD) systems.
Speeding up constraint propagation
- In Wallace [14
, 2004
"... Abstract. This paper presents a model and implementation techniques for speeding up constraint propagation. Two fundamental approaches to improving constraint propagation are explored: keeping track of which propagators are at fixpoint, and choosing which propagator to apply next. We show how idempo ..."
Abstract
-
Cited by 28 (5 self)
- Add to MetaCart
(Show Context)
Abstract. This paper presents a model and implementation techniques for speeding up constraint propagation. Two fundamental approaches to improving constraint propagation are explored: keeping track of which propagators are at fixpoint, and choosing which propagator to apply next. We show how idempotence reasoning and events help track fixpoints more accurately. We improve these methods by using them dynamically (taking into account current domains to improve accuracy). We define priority-based approaches to choosing a next propagator and show that dynamic priorities can improve propagation. We illustrate that the use of multiple propagators for the same constraint can be advantageous with priorities, and introduce staged propagators which combine the effects of multiple propagators with priorities for greater efficiency. 1
Automated metamorphic testing
- In Proceedings of the 27th Annual International Computer Software and Applications Conference (COMPSAC 2003
"... Usual techniques for automatic test data generation are based on the assumption that a complete oracle will be available during the testing process. However, there are programs for which this assumption is unreasonable. Recently, Chen et al. [3, 4] proposed to overcome this obstacle by using known r ..."
Abstract
-
Cited by 25 (3 self)
- Add to MetaCart
(Show Context)
Usual techniques for automatic test data generation are based on the assumption that a complete oracle will be available during the testing process. However, there are programs for which this assumption is unreasonable. Recently, Chen et al. [3, 4] proposed to overcome this obstacle by using known relations over the input data and their unknown expected outputs to seek a subclass of faults inside the program. In this paper, we introduce an automatic testing framework able to check these so-called metamorphic relations. The framework makes use of Constraint Logic Programming techniques to find test data that violate a given metamorphic–relation. Circumstances where it can also prove that the program satisfies this relation are presented. The first experimental results we got with a prototype implementation build on the top of the test data generator INKA, show that this methodogy can be completely automated. 1.
Programming Constraint Services
, 2002
"... This thesis presents design, application, implementation, and evaluation of computation spaces as abstractions for programming constraint services at a high level. Spaces are seamlessly integrated into a concurrent programming language and make constraintbased computations compatible with concurrenc ..."
Abstract
-
Cited by 22 (1 self)
- Add to MetaCart
This thesis presents design, application, implementation, and evaluation of computation spaces as abstractions for programming constraint services at a high level. Spaces are seamlessly integrated into a concurrent programming language and make constraintbased computations compatible with concurrency through encapsulation. Spaces are applied
A new approach to modeling and solving minimal perturbation problems
- In Recent Advances in Constraints
, 2004
"... Abstract. Formulation of many real-life problems evolves when the problem is being solved. For example, a change in the environment might appear after the initial problem specification and this change must be reflected in the solution. Such changes complicate usage of a traditionally static constrai ..."
Abstract
-
Cited by 20 (4 self)
- Add to MetaCart
(Show Context)
Abstract. Formulation of many real-life problems evolves when the problem is being solved. For example, a change in the environment might appear after the initial problem specification and this change must be reflected in the solution. Such changes complicate usage of a traditionally static constraint satisfaction technology that requires the problem to be fully specified before the solving process starts. In this paper, we propose a new formal description of changes in the problem formulation called a minimal perturbation problem. This description focuses on the modification of the solution after a change in the problem specification. We also describe a new branch-and-bound like algorithm for solving such type of problems.
Dynamic Global Constraints In Backtracking Based Environments
- ANNALS OF OPERATIONS RESEARCH
, 2002
"... Global constraints provide strong filtering algorithms to reduce the search space when solving large combinatorial problems. In this paper we propose to make the global constraints dynamic, i.e., to allow extending the set of constrained variables on flow. We describe a generic dynamisation techniqu ..."
Abstract
-
Cited by 17 (4 self)
- Add to MetaCart
Global constraints provide strong filtering algorithms to reduce the search space when solving large combinatorial problems. In this paper we propose to make the global constraints dynamic, i.e., to allow extending the set of constrained variables on flow. We describe a generic dynamisation technique for an arbitrary monotonic global constraint and we compare it with the semantic-based dynamisation for the alldifferent constraint. At the end we sketch a dynamisation technique for non-monotonic global constraints. A comparison with existing methods to model dynamic problems is given as well.
Database repair by signed formulae
- In Seipel, D., & Turell-Torres, J. (Eds.), Proc. 3rd Int. Symp. on Foundations of Information and Knowledge Systems (FoIKS’04), No. 2942 in LNCS
, 2004
"... Abstract. We introduce a simple and practically efficient method for repairing inconsistent databases. The idea is to properly represent the underlying problem, and then use off-the-shelf applications for efficiently computing the corresponding solutions. Given a possibly inconsistent database, we r ..."
Abstract
-
Cited by 17 (5 self)
- Add to MetaCart
(Show Context)
Abstract. We introduce a simple and practically efficient method for repairing inconsistent databases. The idea is to properly represent the underlying problem, and then use off-the-shelf applications for efficiently computing the corresponding solutions. Given a possibly inconsistent database, we represent the possible ways to restore its consistency in terms of signed formulae. Then we show how the ‘signed theory ’ that is obtained can be used by a variety of computational models for processing quantified Boolean formulae, or by constraint logic program solvers, in order to rapidly and efficiently compute desired solutions, i.e., consistent repairs of the database. 1
Automatic Implication Checking for CHR Constraints
, 2005
"... Constraint Handling Rules (CHRs) are a high-level rule-based programming language commonly used to define constraint solvers. We present a method for automatic implication checking between constraints of CHR solvers. Supporting implication is important for implementing extensible solvers and reifica ..."
Abstract
-
Cited by 16 (13 self)
- Add to MetaCart
Constraint Handling Rules (CHRs) are a high-level rule-based programming language commonly used to define constraint solvers. We present a method for automatic implication checking between constraints of CHR solvers. Supporting implication is important for implementing extensible solvers and reification, and for building hierarchical CHR constraint solvers. Our method does not copy the entire constraint store, but performs the check in place using a trailing mechanism. The necessary code enhancements can be done by automatic program transformation based on the rules of the solver. We extend our method to work for hierarchically organized modular CHR solvers. We show the soundness of our method and its completeness for a restricted class of canonical solver as well as for specific existing non-canonical CHR solvers. We evaluate our trailing method experimentally by comparing with the copy approach: runtime is almost halved.
GraniteNights - A Multi-Agent Visit Scheduler Utilising Semantic Web Technology
, 2003
"... This paper describes a multi-agent system, GraniteNights, modelled on the Agentcities project "evening agent" scenario. GraniteNights allows a user to plan an evening's entertainment in the city of Aberdeen, Scotland. The application fuses agent and Web technology, being viewed as an ..."
Abstract
-
Cited by 16 (5 self)
- Add to MetaCart
This paper describes a multi-agent system, GraniteNights, modelled on the Agentcities project "evening agent" scenario. GraniteNights allows a user to plan an evening's entertainment in the city of Aberdeen, Scotland. The application fuses agent and Web technology, being viewed as an agent-based Web service. In particular, Semantic Web standards are used to a great extent in delivering the service. The paper argues that, in fact, the Semantic Web standards are more important for this type of application than the agent standards. A key feature of the application is component re-use: GraniteNights attempts to reuse without modification existing ontologies wherever possible; it also is comprised of a number of generic and thus wholly-reusable agents, including a user profiling agent and a constraint-based scheduler. The system is open in the sense that most of the individual agents can be invoked directly by external agent platforms, without going through the Web interface.
Path-oriented Random Testing
- in "Proceedings of the 1st ACM Int. Workshop on Random Testing (RT’06
, 2006
"... Test campaigns usually require only a restricted subset of paths in a program to be thoroughly tested. As random testing (RT) offers interesting fault-detection capacities at low cost, we face the problem of building a sequence of random test data that execute only a subset of paths in a program. We ..."
Abstract
-
Cited by 15 (3 self)
- Add to MetaCart
(Show Context)
Test campaigns usually require only a restricted subset of paths in a program to be thoroughly tested. As random testing (RT) offers interesting fault-detection capacities at low cost, we face the problem of building a sequence of random test data that execute only a subset of paths in a program. We address this problem with an original technique based on backward symbolic execution and constraint propagation to generate random test data based on an uniform distribution. Our approach derives path conditions and computes an over-approximation of their associated subdomain to find such a uniform sequence. The challenging problem consists in building efficiently a path-oriented random test data generator by minimizing the number of rejects within the generated random sequence. Our first experimental results, conducted over a few academic examples, clearly show a dramatic improvement of our approach over classical random testing. 1.