In this article we try to illustrate that constraint logic programming (CLP) systems allow easy expression and solution of constrained decision problems. In order to do so, this paper proposes CLP solutions for two in...
详细信息
In this article we try to illustrate that constraint logic programming (CLP) systems allow easy expression and solution of constrained decision problems. In order to do so, this paper proposes CLP solutions for two industrial linear optimization problems respectively using the Prolog III and the CHIP language. The first problem, a mixed linear multicriteria selection problem, illustrates the general linear rational solver. In order to fix some integer variables a branch and bound rounding heuristic is formulated. The second problem, a linear integer multicriteria location problem, is only concerned with integer finite domain variables and is particularly adapted to the CHIP system that provides a computation domain handling such variables.
constraint logic programming has become a promising new technology for solving complex combinatorial problems. In this paper, we investigate how (constraint) logicprogramming can support the modelling part when solvi...
详细信息
constraint logic programming has become a promising new technology for solving complex combinatorial problems. In this paper, we investigate how (constraint) logicprogramming can support the modelling part when solving discrete optimisation problems. First, we show that the basic functionality of algebraic modelling languages can be realised very easily in a pure logicprogramming system like PROLOG and that, even without using constraints, various additional features are available. Then we focus on the constraint-solving facilities offered by constraint logic programming systems. In particular, we explain how the constraint solver of the constraint logic programming language CLP(PB) can be used in modelling 0-1 problems.
This paper represents an integration of Mixed Integer programming (MIP) and constraint logic programming (CLP) which, like MIP, tightens bounds rather than adding constraints during search. The integrated system combi...
详细信息
This paper represents an integration of Mixed Integer programming (MIP) and constraint logic programming (CLP) which, like MIP, tightens bounds rather than adding constraints during search. The integrated system combines components of the CLP system ECLiPSe [7] and the MIP system CPLEX [5], in which constraints can be handled by either one or both components. Our approach is introduced in three stages. Firstly, we present an automatic transformation which maps CLP programs onto such CLP programs that any disjunction is eliminated in favour of auxiliary binary variables. Secondly, we present improvements of this mapping by using a committed choice operator and translations of pre-defined non-linear constraints. Thirdly, we introduce a new hybrid algorithm which reduces the solution space of the problem progressively by calling finite domain propagation of ECLiPSe as well as dual simplex of CPLEX. The advantages of this integration are illustrated by efficiently solving difficult optimisation problems like the Hoist Scheduling Problem [23] and the Progressive Party Problem [27].
We introduce a knowledge representation language AC(C) extending the syntax and semantics of ASP and CR-Prolog, give some examples of its use, and present an algorithm, ACsolver, for computing answer sets of AC(C) pro...
详细信息
We introduce a knowledge representation language AC(C) extending the syntax and semantics of ASP and CR-Prolog, give some examples of its use, and present an algorithm, ACsolver, for computing answer sets of AC(C) programs. The algorithm does not require full grounding of a program and combines "classical" ASP solving methods with constraint logic programming techniques and CR-Prolog based abduction. The AC(C) based approach often allows to solve problems which are impossible to solve by more traditional ASP solving techniques. We believe that further investigation of the language and development of more efficient and reliable solvers for its programs can help to substantially expand the domain of applicability of the answer set programming paradigm.
We propose an agent-based freight brokering system that provides an intelligent logistics brokerage service focusing on the transport activity for the efficient allocation of transport resources (vehicles or trucks) t...
详细信息
We propose an agent-based freight brokering system that provides an intelligent logistics brokerage service focusing on the transport activity for the efficient allocation of transport resources (vehicles or trucks) to the transport applications. The freight broker has the role to coordinate transportation arrangements of transport customers with transport resource providers. In this paper we focus on the fundamental function of this business that aims to find available trucks and to define their feasible routes for transporting requested customer loads. Our main achievement is the proposal of a knowledge-based freight broker based on agents and constraintprogramming. We describe the multi-agent architecture and the interaction protocol of the freight broker. The brokering function is defined as a special type of vehicle routing with pickup and delivery problem. This function is achieved by proposing an optimization agent based on constraint logic programming. We present in detail our novel declarative optimization model, as well as the components of the optimization agent. This model was implemented and evaluated using the state-of-the-art ECLiPSe-CLP engine. The experimental results that we obtained for sample benchmark problems are promising and they support the effectiveness of our approach in a practical setting.
We study in this paper the use of consistency techniques and local propagation methods, originally developed for constraints over finite domains, for solving boolean constraints in constraint logic programming (CLP). ...
详细信息
We study in this paper the use of consistency techniques and local propagation methods, originally developed for constraints over finite domains, for solving boolean constraints in constraint logic programming (CLP). To this aim, we first present a boolean CLP language clp(B/FD) built upon a CLP language over finite domains clp(FD) which uses a propagation-based constraint solver. It is based on a single primitive constraint which allows the boolean solver to be encoded at a low level. The boolean solver obtained in this way is both very simple and very efficient: on average it is eight times faster than the CHIP propagation-based boolean solver, i.e. nearly an order of magnitude faster, and infinitely better than the CHIP boolean unification solver. It also performs on average several times faster than special-purpose stand-alone boolean solvers. We then present in a second time several simplifications of the above approach, leading to the design of a very simple and compact dedicated boolean solver. This solver can be implemented in a WAM-based logical engine with a minimal extension limited to four new abstract instructions. This clp(B) system provides a further factor two speedup w.r.t. clp(B/FD).
Model Driven Engineering promotes the use of models as the main artifacts in software and system development. Verification and validation of models are key activities to ensure the quality of the system under developm...
详细信息
Model Driven Engineering promotes the use of models as the main artifacts in software and system development. Verification and validation of models are key activities to ensure the quality of the system under development. This paper presents a framework to reason about the satisfiability of class models described using the Unified Modeling Language (UML). The proposed framework allows us to identify possible design flaws as early as possible in the software development cycle. More specifically, we focus on UML Class Diagrams annotated with Object constraint Language (OCL) invariants, which are considered to be the main artifacts in Object-Oriented analysis and design for representing the static structure of a system. We use the constraint logic programming (CLP) paradigm to reason about UML Class Diagrams modeling foundations. In particular, we use Formula as a model-finding and design space exploration tool. We also present an experimental Eclipse plug-in, which implements our UML model to Formula translation proposal following a Model Driven Architecture (MDA) approach. The proposed framework can be used to reason, validate, and verify UML Class Diagram software designs by checking correctness properties and generating model instances using the model exploration tool Formula. (C) 2018 Elsevier Ltd. All rights reserved.
Configuration and diagnosis problem-solvers are commonly championed as successes of applied artificial intelligence techniques. A common problem is that problem-solvers typically encode task-specific representation as...
详细信息
Configuration and diagnosis problem-solvers are commonly championed as successes of applied artificial intelligence techniques. A common problem is that problem-solvers typically encode task-specific representation assumptions and simplifications in their domain theories, hindering the reuse of the domain theories between the problem-solvers. While model-based reasoning techniques have been shown to provide an interesting approach to sharing component and device specifications, their respective mechanisations are generally too inefficient. We show how constraint logic programming languages provide a flexible environment in which constraint-based specifications can be effectively shared and efficiently mechanised by exploiting constraint solving and propagation techniques tightly integrated with the backtracking search mechanism of logicprogramming languages. A component specification language is presented and the mappings from the language to the constraint system and strategies for guiding the search are defined for the respective problem-solvers. (C) 1998 Elsevier Science Inc. All rights reserved.
This introduction to the constraint logic programming language CLP(R) uses applications to provide insight to the language's strengths. An overview of CLP(R) is followed by a discussion of three applications that ...
详细信息
This introduction to the constraint logic programming language CLP(R) uses applications to provide insight to the language's strengths. An overview of CLP(R) is followed by a discussion of three applications that illustrate the language's unifying treatment both of numeric and symbolic computing and of engineering analysis and synthesis problems. Another discussion dissects the interpreter's constraint solver and clarifies how a problem's search space can be restricted declaratively. The final example is an extended description of the construction of a network of interpreters, which can be used to distributively solve a set of linear equations. This extension requires no modification of the CLP(R) interpreter and points out the benefits of revisiting established algorithms vis-a-vis CLP(R).
We develop a denotational, fully abstract semantics for constraint logic programming (clp) with respect to successful and failed observables. The denotational approach turns out very useful for the definition of new o...
详细信息
We develop a denotational, fully abstract semantics for constraint logic programming (clp) with respect to successful and failed observables. The denotational approach turns out very useful for the definition of new operators on the language as the counterpart of some abstract operations on the denotational domain. In particular, by defining our domain as a cylindric Heyting algebra, we can exploit, to this aim, operations of both cylindric algebras (such as cylindrification), and Heyting algebras (such as implication and negation). The former allows us to generalize the clp language by introducing an explicit hiding operator;the latter allows us to define a notion of negation which extends the classical negation used in logicprogramming. In particular, we show that our notion subsumes both negation as failure and negation as instantiation.
暂无评论