The Comet Programming Language and System

 

Comet Book










MIT Press

Amazon

 
 

Comet is an Award-winning tool for solving complex combinatorial optimization problems in areas such as resource allocation and scheduling. It may dramatically simplify the design and implementation of (stochastic) local search and constraint-programming algorithms, while preserving the efficiency of low-level, problem-specific, implementations. Comet is partly described in the book "Constraint-Based Local Search" published by MIT Press and is the research platform of the optimization laboratory at Brown university.

One of the main innovations of Comet is Constraint-based Local Search, a computational paradigm based on the idea of specifying local search algorithms as two components: a high-level model describing the applications in terms of constraints, constraint combinators, and objective functions; a search procedure expressed in terms of the model at a high abstraction level. Constraint-based local search makes it possible to build local search algorithms compositionally, to separate modeling from search, to promote reusability across many applications, and to exploit problem structure to achieve high performance.

Comet is an object-oriented language featuring both a constraint-based local search engine and a constraint-programming solver. The constraint-programming solver also views combinatorial optimization as the combination of model and search components. It provides the traditional expressivity of constraint programming with a very rich languages for expressing search algorithms.

Comet also features high-level abstractions for parallel and distributed computing, based on parallel loops, interruptions, and work stealing.