SUMMARY: This paper presents a methodological framework for the utilisation of our cinematic came... more SUMMARY: This paper presents a methodological framework for the utilisation of our cinematic camera control engine in the exploration and representation of architectural designs. In this paper, we report on a fully developed modification (mod) of a real-time engine (Unreal ...
In radio systems linear power amplifiers (class A, B or AB) are usually used as a solution for th... more In radio systems linear power amplifiers (class A, B or AB) are usually used as a solution for the power amplifier stage. These amplifiers have high linearity, but suffer from low efficiency when the transmitted signal has low peak-to-average power ratio. The Kahn envelope elimination and restoration (EER) technique is used to enhance efficiency of RF transmitters, by combining highly efficient, nonlinear RF amplifier (class D or E) with a highly efficient envelope amplifier in order to obtain linear and highly efficient RF amplifier. This paper presents a solution for the envelope amplifier based on a combination of multilevel converter and linear regulator. The proposed solution can reproduce any signal with maximal spectral component of 2 MHz and give instantaneous maximal power of 50 W. The efficiency measurements show that when the signals with low average value are transmitted, it has up to 15% higher efficiency than linear regulator that is used as a conventional solution. Additionally, the algorithm for selection of voltage levels for the multilevel converter is explained, as well.
Using a glass-box theory of nite domain constraints, FD, we show how the entailment of user-de ne... more Using a glass-box theory of nite domain constraints, FD, we show how the entailment of user-de ned constraints can be expressed by anti-monotone FD constraints. We also provide an algorithm for checking the entailment and consistency of FD constraints. FD is shown to be expressive enough to allow the de nition of arithmetical constraints, as well as non-trivial symbolic constraints, that are normally built in to CLP systems. In particular, we use conditional FD constraints, which exploit entailment checking, to de ne symbolic constraints. Thus, we claim that a glass-box system such as FD is expressive enough to capture the essence of nite domain constraint programming.
We describe in this paper the GNU-Prolog system, a free system consisting of a Prolog compiler an... more We describe in this paper the GNU-Prolog system, a free system consisting of a Prolog compiler and a constraint solver on nite domains. GNU-Prolog is based on a low-level mini-assembly platform-independent language that makes it possible for e cient compilation time, and allows to produce small stand alone executable les as the result of the compilation process. Interestingly, the Prolog part is compliant to the ISO standard, and the constraint part includes several extensions, such as an e cient handling of rei ed constraints. The overall system is e cient and comparable in performances with commercial systems, both for the Prolog and constraint parts.
We propose a generic, domain-independent local search method called adaptive search for solving C... more We propose a generic, domain-independent local search method called adaptive search for solving Constraint Satisfaction Problems (CSP). We design a new heuristics that takes advantage of the structure of the problem in terms of constraints and variables and can guide the search more precisely than a global cost function to optimize (such as for instance the number of violated constraints). We also use an adaptive memory in the spirit of Tabu Search in order to prevent stagnation in local minima and loops. This method is generic, can apply to a large class of constraints (e.g. linear and non-linear arithmetic constraints, symbolic constraints, etc) and naturally copes with over-constrained problems. Preliminary results on some classical CSP problems show very encouraging performances.
We study in this paper the use of consistency techniques and local propagation methods, originall... more 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).
We present the clp(FD) system: a Constraint Logic Programming language with finite domain constra... more 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 efficiency. 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. ¡ Address correspondence toPhilippe Codognet and Daniel Diaz, INRIA-Rocquencourt,
The possibility of deleting a piece of information is very convenient in many programming framewo... more 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.
In the last years, the application of local search techniques for constraint solving started to r... more In the last years, the application of local search techniques for constraint solving started to raise some interest in the Constraint Programming community, We proposed some years ago a domain-independent local search method called Adaptive Search for solving Constraint ...
In this paper we describe the design and the implementation of the GNU Prolog system. This system... more In this paper we describe the design and the implementation of the GNU Prolog system. This system draws on our previous experience of compiling Prolog to C in the wamcc system and of compiling finite domain constraints in the clp(FD) system. The compilation scheme has however been redesigned in order to overcome the drawbacks of compiling to C. In particular, GNU-Prolog is based on a low-level mini-assembly platform-independent language that makes it possible to avoid compiling C code, and thus drastically reduces compilation time. It also makes it possible to produce small stand-alone executable files as the result of the compilation process. Interestingly, GNU Prolog is now compliant to the ISO standard, includes several extensions (OS interface, sockets, global variables, etc) and integrates a powerful constraint solver over finite domains. The system is efficient and in terms of performance is comparable with commercial systems for both the Prolog and constraint aspects.
We present an abstract instruction set for a constraint solver over nite domains, which can be sm... more We present an abstract instruction set for a constraint solver over nite domains, which can be smoothly integrated in the WAM architecture. It is based on the use of a single primitive constraint X in r which embeds the core propagation mechanism. Complex user constraints such as ...
We present the wamcc system, a Prolog compiler that translates Prolog to C via the WAM. This appr... more We present the wamcc system, a Prolog compiler that translates Prolog to C via the WAM. This approach has some interesting consequences: simplicity, e ciency, portability, extensibility and modularity. Indeed the system does not incorporate complex optimizations but is as e ...
We present a boolean constraint logic language clp(B/FD) built upon a language over nite domains ... more We present a boolean constraint logic language clp(B/FD) built upon a language over nite domains clp(FD) which uses a local propagation 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 ...
In this paper, a Constraint Logic Programming (CLP) approach is used to solve an Air Traffic Flow... more In this paper, a Constraint Logic Programming (CLP) approach is used to solve an Air Traffic Flow Management (ATFM) problem, the aircraft departure slot allocation. Moreover, our purpose is to show that CLP, combining the declarativity of logic programming with the efficiency of constraint solving, is well suited to model many combinatorial optimization problems involved in the ATFM domain. clp(FD), a Constraint Logic Programming language with Finite Domain constraints has been chosen to implement our practical application.
SUMMARY: This paper presents a methodological framework for the utilisation of our cinematic came... more SUMMARY: This paper presents a methodological framework for the utilisation of our cinematic camera control engine in the exploration and representation of architectural designs. In this paper, we report on a fully developed modification (mod) of a real-time engine (Unreal ...
In radio systems linear power amplifiers (class A, B or AB) are usually used as a solution for th... more In radio systems linear power amplifiers (class A, B or AB) are usually used as a solution for the power amplifier stage. These amplifiers have high linearity, but suffer from low efficiency when the transmitted signal has low peak-to-average power ratio. The Kahn envelope elimination and restoration (EER) technique is used to enhance efficiency of RF transmitters, by combining highly efficient, nonlinear RF amplifier (class D or E) with a highly efficient envelope amplifier in order to obtain linear and highly efficient RF amplifier. This paper presents a solution for the envelope amplifier based on a combination of multilevel converter and linear regulator. The proposed solution can reproduce any signal with maximal spectral component of 2 MHz and give instantaneous maximal power of 50 W. The efficiency measurements show that when the signals with low average value are transmitted, it has up to 15% higher efficiency than linear regulator that is used as a conventional solution. Additionally, the algorithm for selection of voltage levels for the multilevel converter is explained, as well.
Using a glass-box theory of nite domain constraints, FD, we show how the entailment of user-de ne... more Using a glass-box theory of nite domain constraints, FD, we show how the entailment of user-de ned constraints can be expressed by anti-monotone FD constraints. We also provide an algorithm for checking the entailment and consistency of FD constraints. FD is shown to be expressive enough to allow the de nition of arithmetical constraints, as well as non-trivial symbolic constraints, that are normally built in to CLP systems. In particular, we use conditional FD constraints, which exploit entailment checking, to de ne symbolic constraints. Thus, we claim that a glass-box system such as FD is expressive enough to capture the essence of nite domain constraint programming.
We describe in this paper the GNU-Prolog system, a free system consisting of a Prolog compiler an... more We describe in this paper the GNU-Prolog system, a free system consisting of a Prolog compiler and a constraint solver on nite domains. GNU-Prolog is based on a low-level mini-assembly platform-independent language that makes it possible for e cient compilation time, and allows to produce small stand alone executable les as the result of the compilation process. Interestingly, the Prolog part is compliant to the ISO standard, and the constraint part includes several extensions, such as an e cient handling of rei ed constraints. The overall system is e cient and comparable in performances with commercial systems, both for the Prolog and constraint parts.
We propose a generic, domain-independent local search method called adaptive search for solving C... more We propose a generic, domain-independent local search method called adaptive search for solving Constraint Satisfaction Problems (CSP). We design a new heuristics that takes advantage of the structure of the problem in terms of constraints and variables and can guide the search more precisely than a global cost function to optimize (such as for instance the number of violated constraints). We also use an adaptive memory in the spirit of Tabu Search in order to prevent stagnation in local minima and loops. This method is generic, can apply to a large class of constraints (e.g. linear and non-linear arithmetic constraints, symbolic constraints, etc) and naturally copes with over-constrained problems. Preliminary results on some classical CSP problems show very encouraging performances.
We study in this paper the use of consistency techniques and local propagation methods, originall... more 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).
We present the clp(FD) system: a Constraint Logic Programming language with finite domain constra... more 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 efficiency. 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. ¡ Address correspondence toPhilippe Codognet and Daniel Diaz, INRIA-Rocquencourt,
The possibility of deleting a piece of information is very convenient in many programming framewo... more 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.
In the last years, the application of local search techniques for constraint solving started to r... more In the last years, the application of local search techniques for constraint solving started to raise some interest in the Constraint Programming community, We proposed some years ago a domain-independent local search method called Adaptive Search for solving Constraint ...
In this paper we describe the design and the implementation of the GNU Prolog system. This system... more In this paper we describe the design and the implementation of the GNU Prolog system. This system draws on our previous experience of compiling Prolog to C in the wamcc system and of compiling finite domain constraints in the clp(FD) system. The compilation scheme has however been redesigned in order to overcome the drawbacks of compiling to C. In particular, GNU-Prolog is based on a low-level mini-assembly platform-independent language that makes it possible to avoid compiling C code, and thus drastically reduces compilation time. It also makes it possible to produce small stand-alone executable files as the result of the compilation process. Interestingly, GNU Prolog is now compliant to the ISO standard, includes several extensions (OS interface, sockets, global variables, etc) and integrates a powerful constraint solver over finite domains. The system is efficient and in terms of performance is comparable with commercial systems for both the Prolog and constraint aspects.
We present an abstract instruction set for a constraint solver over nite domains, which can be sm... more We present an abstract instruction set for a constraint solver over nite domains, which can be smoothly integrated in the WAM architecture. It is based on the use of a single primitive constraint X in r which embeds the core propagation mechanism. Complex user constraints such as ...
We present the wamcc system, a Prolog compiler that translates Prolog to C via the WAM. This appr... more We present the wamcc system, a Prolog compiler that translates Prolog to C via the WAM. This approach has some interesting consequences: simplicity, e ciency, portability, extensibility and modularity. Indeed the system does not incorporate complex optimizations but is as e ...
We present a boolean constraint logic language clp(B/FD) built upon a language over nite domains ... more We present a boolean constraint logic language clp(B/FD) built upon a language over nite domains clp(FD) which uses a local propagation 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 ...
In this paper, a Constraint Logic Programming (CLP) approach is used to solve an Air Traffic Flow... more In this paper, a Constraint Logic Programming (CLP) approach is used to solve an Air Traffic Flow Management (ATFM) problem, the aircraft departure slot allocation. Moreover, our purpose is to show that CLP, combining the declarativity of logic programming with the efficiency of constraint solving, is well suited to model many combinatorial optimization problems involved in the ATFM domain. clp(FD), a Constraint Logic Programming language with Finite Domain constraints has been chosen to implement our practical application.
Uploads
Papers by Daniel Diaz