Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Philippe Codognet is active.

Publication


Featured researches published by Philippe Codognet.


Journal of Logic Programming | 1996

COMPILING CONSTRAINTS IN clp(FD)

Philippe Codognet; Daniel Diaz

We present the clp(FD) system: a Constraint Logic Programming language with finite domain constraints. We detail its implementation and present an abstract instruction set for the constraint solver that can be smoothly integrated into the WAM architecture. It is based on the use of a single primitive constraint X in r that embeds the core propagation mechanism. Complex user constraints such as linear equations or inequations are compiled into X in r expressions that encode the propagation scheme chosen to solve the constraint. The uniform treatment of a single primitive constraint leads to a better understanding of the overall constraint solving process and allows three main general optimizations that encompass many previous particular optimizations of “black-box” finite domain solvers. Implementation results show that this approach combines both simplicity and eciency. Our clp(FD) system is about four times faster than CHIP on average, with peak speedup reaching eight. We also show that, following the “glass-box” approach, clp(FD) can be naturally enhanced with various new constraints such as constructive disjunction, boolean constraints, non-linear constraints and symbolic constraints.


ACM Computing Surveys | 1994

Parallel logic programming systems

Jacques Chassin de Kergommeaux; Philippe Codognet

Parallelizing logic programming has attracted much interest in the research community, because of the intrinsic OR- and AND-parallelisms of logic programs. One research stream aims at transparent exploitation of parallelism in existing logic programming languages such as Prolog, while the family of concurrent logic languages develops language constructs allowing programmers to express the concurrency—that is, the communication and synchronization between parallel processes—within their algorithms. This article concentrates mainly on transparent exploitation of parallelism and surveys the most mature solutions to the problems to be solved in order to obtain efficient implementations. These solutions have been implemented, and the most efficient parallel logic programming systems reach effective speedups over state-of-the-art sequential Prolog implementations. The article also addresses current and prospective research issues in extending the applicability and the efficiency of existing systems, such as models merging the transparent parallelism and the concurrent logic languages approaches, combination of constraint logic programming with parallelism, and use of highly parallel architectures.


principles and practice of constraint programming | 1998

Compiling Semiring-Based Constraints with clp (FD, S)

Yan Georget; Philippe Codognet

In some recent works, a general framework for finite domains constraint satisfaction has been defined, where classical CSPs, fuzzy CSPs, weighted CSPs, partial CSPs and others can be easily cast. This framework, based on a semiring structure, allows, under certain conditions, to compute arc-consistency. Restricting to that case and integrating semiring-based constraint solving in the Constraint Logic Programming paradigm, we have implemented a generic language, clp(FD,S), for semiring-based constraint satisfaction. In this paper, we describe the kernel of the language: the SFD system and our implementation of clp(FD, S). We also give some performance results on various examples.


Journal of Automated Reasoning | 1996

A simple and efficient boolean solver for Constraint Logic Programming

Philippe Codognet; Daniel Diaz

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).


Constraints - An International Journal | 1999

Constraint Retraction in CLP(FD): Formal Framework andPerformance Results

Yan Georget; Philippe Codognet; Francesca Rossi

Constraint retraction can be described, in general, as the possibility of deleting a previously stated piece of information. This is obviously very convenient in many programming frameworks, especially in those that involve some level of interaction between the user and the system, or also in those concerning rescheduling or replanning. Nevertheless, constraint retraction is usually not provided in current constraint programming environments. This is mainly due to its high complexity and also to its non-monotonic nature, which would make most of such systems much more complex to reason with. In this paper we avoid these problems by considering a specific constraint programming framework, called clpFD, that is, constraint logic programming (CLP) over finite domain (FD) constraints. We propose an algorithm which deletes a constraint from a set of FD constraints, while maintaining partial arc-consistency, which is usual in this programming framework. What is crucial is that the retraction operation we propose is incremental, in that it follows the chain of dependencies among variables which are set by the nature of the FD constraints, and by doing so it updates only the part of the constraint set which is affected by the deletion. We also detail how constraint retraction can be incorporated in the FD constraint solver and we evaluate its behavior within the clpFD system. Experimental results on usual benchmarks, on classes of problems of increasing connectivity, and also on a real-life problem show that in almost all cases the use of our retraction algorithm provides great speed-up with respect to standard methods while not slowing down the clpFD system when no retraction is performed. This provides the system with an efficient way of retracting constraints while not changing its performance when the user does not want to use this new feature.


foundations of software technology and theoretical computer science | 1996

Constraint Reaction in FD

Philippe Codognet; Daniel Diaz; Francesca Rossi

The possibility of deleting a piece of information is very convenient in many programming frameworks. However, this feature is not available in constraint languages such as Constraint Logic Programming or Concurrent Constraint Programming, which allow only for a monotonic accumulation of constraints. This is mainly due to its high complexity and also to its non-monotonic nature, which would make such a system much more complex to reason with. In this paper we consider the CLP framework over FD (finite domain) constraints, and we propose an incremental algorithm which deletes a constraint from a set of FD constraints, while maintaining partial arc-consistency. The algorithm follows the chain of dependencies among variables which are set by the nature of the FD constraints, and by doing so it updates only the part of the constraint set which is affected by the deletion. This makes constraint deletion in FD a feasible task that can be efficiently implemented.


international symposium on programming language implementation and logic programming | 1994

clp(B): Combining Simplicity and Efficiency in Boolean Constraint Solving

Philippe Codognet; Daniel Diaz

We present the design and the implementation of clp(B): a boolean constraint solver in the Constraint Logic Programming paradigm. This solver is based on local propagation methods and follows the “glassbox” approach of compiling high-level constraints into primitive low-level ones. We detail its integration into the WAM showing that the necessary extension is truly minimal since only four new instructions are added. The resulting solver is around an order of magnitude faster than other existing boolean solvers.


LSCS | 2009

Parallel local search for solving Constraint Problems on the Cell Broadband Engine (Preliminary Results)

Salvator Abreu; Daniel Diaz; Philippe Codognet

We explore the use of the Cell Broadband Engine (Cell/BE for short) for combinatorial optimization applications: we present a parallel version of a constraint-based local search algorithm that has been implemented on a multiprocessor BladeCenter machine with twin Cell/BE processors (total of 16 SPUs per blade). This algorithm was chosen because it fits very well the Cell/BE architecture and requires neither shared memory nor communication between processors, while retaining a compact memory footprint. We study the performance on several large optimization benchmarks and show that this achieves mostly linear time speedups, even sometimes super-linear. This is possible because the parallel implementation might explore simultaneously different parts of the search space and therefore converge faster towards the best sub-space and thus towards a solution. Besides getting speedups, the resulting times exhibit a much smaller variance, which benefits applications where a timely reply is critical.


CCL '94 Proceedings of the First International Conference on Constraints in Computational Logics | 1994

Path Consistency in clp(FD)

Philippe Codognet; Giuseppe Nardiello

We consider methods for handling constraints over finite domains based on the notion of path consistency. We show that these methods can be easily integrated in the glassbox constraint-solver of the clp(FD) system. Besides the clp(FD) indexical constraints encoding (partial) arc-consistency methods, we introduce new primitive constraints, that we call m constraints, which encode path-consistency methods. We describe how to accommodate these new constraints in the clp(FD) extended WAM architecture.


international conference on tools with artificial intelligence | 1998

Encoding global constraints in semiring-based constraint solving

Yan Georget; Philippe Codognet

In recent work, a general framework for constraint satisfaction over finite domains has been proposed, based on the concept of semiring-valued constraints. Classical CSPs, fuzzy CSPs, and hierachical CSPs can be easily cast in this general framework. In this paper, we claim that translating any constraint problem into a semiring-based constraint problem makes it possible to express global information about the problem more easily, especially in the case of non-crisp or preference constraints. Applying this concept to the case of set-based semirings, we give a theoretical result and two practical applications developed using clp(FD, S), a full and efficient implementation of semiring-based constraint satisfaction in the CLP paradigm.

Collaboration


Dive into the Philippe Codognet's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Francesca Rossi

University of Montpellier

View shared research outputs
Top Co-Authors

Avatar

François Fages

École Normale Supérieure

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Francesca Rossi

University of Montpellier

View shared research outputs
Researchain Logo
Decentralizing Knowledge