The Comet programming language and system

11Citations
Citations of this article
8Readers
Mendeley users who have this article in their library.
Get full text

Abstract

COMET is a novel, object-oriented, programming language specifically designed to simplify the implementation of local search algorithms. Comet supports a constraint-based architecture for local search organized around two main components: a declarative component which models the application in terms of constraints and functions, and a search component which specifies the search heuristic and meta-heuristic. Constraints, which are a natural vehicle to express combinatorial optimization problems, are differentiable objects in COMET: They maintain a number of properties incrementally and they provide algorithms to evaluate the effect of various operations on these properties. The search component then uses these functionalities to guide the local search using multidimensional, possibly randomized, selectors and first-order control structures such as events, neighbors, and nondeterminism. As a result, COMET programs often feature models similar to those of constraint programming, although the underlying technology is fundamentally different in nature. In particular, COMET models are high-level, compositional, and modular. It is possible to add new constraints and to modify or remove existing ones, without having to worry about the global effect of these changes. COMET also separates the modeling and search components, allowing programmers to experiment with different search heuristics and meta-heuristics without affecting the problem modeling. COMET has been applied to many applications and is often competitive with tailored algorithms for complex applications. This system demonstration illustrates COMET on a variety of applications in resource allocation, facility location, and scheduling. It will cover both the sequential and parallel implementations and the COMET environment. © Springer-Verlag Berlin Heidelberg 2005.

Cite

CITATION STYLE

APA

Michel, L., & Van Hentenryck, P. (2005). The Comet programming language and system. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 3709 LNCS, p. 881). https://doi.org/10.1007/11564751_119

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free