Also, I don't know any place where Comet can be downloaded.

Comet (created and distributed by Dynadec) is a system for solving problem using:

- constraint-based local search
- "classic" constraint programming
- linear programming and (mixed) integer programming

* The distribution includes many examples and a great tutorial explaing Comet as well as the three paradigms which Comet uses: constraint programming, constraint-based local search and mathematical programming.

An earlier version of Comet, featuring constraint-based local search, is described in the great book Constraint-Based Local Search (ISBN 9780262220774) by Pascal Van Hentenryck and Laurent Michel, the main developers of Comet.

- 17_b.co: Model for 17x17x4 problem (see William Gasarch's The 17x17 challenge. Worth $289.00. This is not a joke.)
- 3_jugs.co: 3 jugs problem, MIP mode. Also see water_buckets1.co below.
- a_round_of_golf.co: A round of golf puzzle (Dell Logic Puzzles)
- added_corner.co: Added corner puzzle
- all_interval.co: All interval problem (series), (CSPLib problem 7)
- alldifferent_except_0.co: Global constraint all_different except 0
- among.co: Global constraint among
- among_seq.co: Global constraint among_seq
- assignment.co: Assignment problem (Winston, "Operations Research", page 393f)
- assignment2.co: Assignment problem, swimming team exam (Winston, "Operations Research", page 398)
- assignment3.co: Assignment problem, desert island example (Winston, "Operations Research", page 399, problem 3)
- assignment6.co: Assignment problem (GLPK)
- averbach_1.2.co: Example 1.2 in Averbach & Chein "Problem Solving Through Recreational Mathematics"
- averbach_1.3.co: Example 1.3 in Averbach & Chein "Problem Solving Through Recreational Mathematics"
- averbach_1.4.co: Example 1.4 in Averbach & Chein "Problem Solving Through Recreational Mathematics"
- bales_of_hay.co: Bales of hay puzzle, from The Math Less Traveled
- blending.co: Blending problem (OPL example)
- broken_weights.co: Broken weights problem
- building_a_house.co: Building a house (scheduling example from OPL)
- building_blocks.co: Building blocks (Dell logic puzzle)
- bus_schedule.co: Bus scheduling (Taha)
- calculs_d_enfer.co: Calculs d'enfer puzzle (from the NCL manual)
- car.co: Car sequencing (OPL)
- coins3.co: Minimum mumber of coins that allows one to pay exactly any amount smaller than one Euro (ECLiPSe)
- coins_grid.co: Placing coins on a grid (Tony Hurlimann)
- constraint_test.co: Example of how to write some simple "syntactical" user defined constraints (i.e. there is no special propagations etc): all_different_except_0, increasing, decreasing, toNum, and correspondence.

- country_cp.co: Simple map coloring problem.

- covering_opl.co: Set covering, selecting workers (from OPL example covering.mod)

- crew.co: Crew scheduling.

- crossfigure.co: Crossfigure problem (CSPLib problem 21)

- crossword.co: Crossword (standard CP problem)

- crypta.co: crypta, alphametic problem (standard Prolog benchmark)

- crypto.co: crypto, alphametic problem (standard Prolog benchmark), constraint programming model.

- cumulative.co: Global constraint cumulative

- cur_num.co: Curious Number (Dudeney)

- debruijn.co: de Bruijn sequences, both "classic" and "arbitrary"
- debruijn_gui.co: de Bruijn sequences, both "classic" and "arbitrary". As debruijn.co with animation of the solutions progress.
- diet.co: simple diet problem (operations research), using the linear programming module
- diet_gui.co: as diet.co with animation of the solution progress.
- discrete_tomography.co: Discrete tomography
- distribute.co: Global constraint distribute.
- divisible_by_9_through_1.co: divisible by 9 through 1 for a "truncated" number
- donald_gerald.co: Alphametic puzzle DONALD + GERALD = ROBERT
- einstein_opl.co: Einstein's puzzle. Comet variant of the OPL model presented in Daniel Selman's Einstein's Puzzle - Or, 'The Right Tool for the Job'
- extensional_support.co: Global constraint extensional support/conflict (a.k.a. in_relation, forbidden/allowed assignments etc)
- fill_in_the_squares.co: Fill in the squares (Brainjammer)
- fixed_charge.co: Fixed-charge problem (OPL example)
- fixed_charge2.co: Fixed-charge problem (OPL example), alternative way of using the tuple
- four_islands.co: Four islands puzzle (Dell Logic Puzzles)
- furniture_moving.co: Optimizing furniture moving, simple scheduling problem, using Schedule (Marriott and Stuckey)
- furniture_moving_cumulative.co: Optimizing furniture moving, simple scheduling problem, using cumulative constraint (Marriott and Stuckey)
- game_theory_taha.co: Game theory, zero sum game (Taha, Operations Research)
- global_contiguity.co: Global constraint global contiguity
- golomb_ruler.co: Golomb ruler (CSPLib problem 6)
- grocery.co: Grocery problem
- heterosquare_cp.co: Heterosquare problem (CP module)
- hidato.co: Hidato puzzle
- house2.co: House problem, scheduling problem (Van Hentenryck, OPL book)
- inverse.co: Global constraint inverse
- isbn.co: Some explorations of ISBN13
- kakuro.co: Kakuro grid puzzle.
- kenken.co: KenKen, a grid puzzle.
- kenken2.co: KenKen, a grid puzzle. A more general solution than kenken.co .
- killer_sudoku.co: Killer sudoku.
- knights_path.co: Knight's path (on a chessboard)
- labeled_dice.co: Labeled dice problem, from Jim Orlin "Colored letters, labeled dice: a logic puzzle"
- langford.co: Langford's number problem (CSPLib problem 24)
- least_diff.co: Least diff problem, an alphametic puzzle, minimize the difference ABCDE-FGHIJ where A..J is integers 0..9 (all different)
- least_diff_gui.co: As least_diff.co (see above) with an animation of the solutions as well as the search tree
- least_square.co: Least square problem
- lichtenstein_coloring.co: Coloring the communes of Lichtenstein
- magic1.co: Magic sequence, CSPLib problem 19 (Van Hentenryck, OPL book)
- magic2.co: Magic sequence, CSPLib problem 19 (Van Hentenryck, OPL book)
- magic_sequence.co: Magic sequence, CSPLib problem 19 (Van Hentenryck, OPL book)
- map.co: Map coloring problem (Van Hentenryck, OPL book)
- map_gui.co: Map coloring problem (Van Hentenryck, OPL book) with animation of the solution.
- max_flow_winston1.co: Maximum flow problem (Winston "Operations Research")
- minAssignment_test.co: Minimum assignment problem, using the builtin constraint minAssignment
- minesweeper.co: Minesweeper problem.

Problem files for the Minesweeper program.

Usage:`comet minesweeper.co problem file`

- Problem 0 from Gecode minesweeper.cc
- Problem 1 from Gecode minesweeper.cc
- Problem 2 from Gecode minesweeper.cc
- Problem 3 from Gecode minesweeper.cc
- Problem 4 from Gecode minesweeper.cc
- Problem 5 from Gecode minesweeper.cc
- Problem 6 from Gecode minesweeper.cc
- Problem 7 from Gecode minesweeper.cc
- Problem 8 from Gecode minesweeper.cc
- Problem 9 from Gecode minesweeper.cc
- From "Some Minesweeper Configurations",page 2
- From "Some Minesweeper Configurations",page 3
- From Richard Kaye: How Complicated is Minesweeper?, splitter (131072 solutions)
- From Richard Kaye: How Complicated is Minesweeper?, wire

- nonogram.co: Nonogram (paint by numbers).

nonogram_regular.co: Nonogram (paint by numbers), using my home-brewn regular constraint (much faster than nonogram.mzn).

nonogram_regular_builtin.co Nonogram (paint by numbers), using the built-in regular constraint and Automaton.

Problem files for the Nonogram models (to be`include`

ed):- nonogram_bear.co Bear
- nonogram_car.co Car
- nonogram_castle.co Castle
- nonogram_crocodile.co Crocodile
- nonogram_difficult.co Difficult (quite difficult)
- nonogram_dragonfly.co Dragonfly
- nonogram_gondola.co Gondola
- nonogram_hard.co Hard (not hard)
- nonogram_hen.co Hen
- nonogram_lambda.co Lambda
- nonogram_n4.co N4
- nonogram_n6.co N6
- nonogram_nonunique.co Non-unique
- nonogram_p199.co P199
- nonogram_p200.co P200
- nonogram_ps.co PS
- nonogram_soccer_player.co Soccer player
- nonogram_t2.co T2 (with "zero clue")

- nontransitive_dice.co: Nontransitive dice
- number_sqare.co: Finding a eight digit square which remains a square when 1 is concatenated in from of it. (Van Hentenryck, OPL book)
- organize_day.co: Organizing a day, simple scheduling problem
- p_median.co: P-median problem (from OPL)
- pair_divides_the_sum.co: Find a set of four distinct positive integers such that, for every pair of them, their difference divides their sum. (comp.lang.prolog, 2009028, Nick Wedd)
- pandigital_numbers.co: Pandigital numbers, in any base < ~ 12
- partition_function.co: Partitions a set of integers (represented as a boolean matrix) according to a function.
- pentominoes_model.co: Pentominoes, model (MiniZinc)
- pentominoes_1.co: Pentominoes, problem 1
- pentominoes_2.co: Pentominoes, problem 2
- pentominoes_3.co: Pentominoes, problem 3

- photo_problem.co: Photo problem
- pigeon_hole.co: Pigeon hole problem
- place_number_puzzle.co: Place number puzzle
- production.co: Production planning (from OPL)
- production2.co: Production planning, using tuple (from OPL)
- production3.co: Production planning, alternative way of using tuple (from OPL)
- quasigroup_completion.co: Quasigroup completion problem.

Problem files:

- queens8.co: 8-queens problem (Van Hentenryck, OPL book)
- queensn.co: n-queens problem (Van Hentenryck, OPL book)
- rabbits.co: Rabbits problem (Van Hentenryck, OPL book)
- regular.co: Global constraint regular
- rot13.co: Rot 13 (ceasar cipher)
- runs.co: Number of runs in a sequence
- sat.co: Satisfiability Problem (GLPK)
- send_more_money_any_base.co: SEND+MORE=MONEY in any base
- send_most_money.co: SEND+MOST=MONEY, finding the max value of MONEY.
- send_most_money2.co: SEND+MOST=MONEY, finding
**all**solutions of the max value for MONEY. - seseman.co: simple recreational mathematics puzzle. See the CGI-program Seseman convent problem
- set_covering.co: Set covering: placing of firestations (Winston "Operations Research")
- set_covering2.co: Set covering: security telephone on campus (Taha "Operations Research", example 9.1-2)
- set_covering3.co: Set covering: assigning senators to committees (Murty "Optimization Models for Decision Making")
- set_covering4.co: Set covering/partition problem (Lundgren, Rönnqvist, Värbrand "Optimeringslära", page 408)
- set_covering5.co: Set covering, work scheduling (Lundgren, Rönnqvist, Värbrand "Optimeringslära", page 410)
- set_covering_deployment.co: Set covering deployment
- set_covering_skiena.co: Set covering (Skiena)
- set_partition.co: Set partition problem (using boolean matrix as representation of the sets)
- ski_assignment.co: Ski assignment problem
- skyscraper.co: Skyscraper puzzle
- sliding_sum.co: Global constraint sliding sum
- social_golfer1.co: Social golfer problem (CSPLib problem 10)
- sonet_problem.co: SONET problem
- spreadsheet.co: Simple "spreadsheet" example (Apt)
- stable_marriage.co: Stable marriage problem (Van Hentenryck, OPL book)
- stable_marriage2.co: Stable marriage problem, example from MathWorld Stable Marriage Problem
- steiner_sets.co: Steiner triplets, using var sets (new in Comet version 2.0)
- steiner_triplets.co: Steiner triplets (using arrays of booleans to represent the sets)
- stigler.co: Original Stigler's 1939 diet problem (from GLPK). This is a MIP model.
- subset_sum.co: Subset sum problem (Murty)
- sudoku_gcc.co: Sudoku solver using global cardinality constraint.
- sudoku_generate.co: Simple generation of Sudoku puzzles (given the number of unknowns), a randomized approach.
- survo_puzzle.co: Survo puzzle
- temporal_reasoning.co: Temporal reasoning (Apt)
- the_family_puzzle.co: The family puzzle
- toNum.co: Demonstrates
`toNum`

for converting an array to number or vice versa - tourist_site_competition.co: Tourist site competition (Flener)
- traffic_lights.co: Traffic lights problem (CSPLib problem 16)
- transp1.co: Transportation problem (Van Hentenryck, OPL book)
- young_tableaux.co: Young tableaux and partitions
- volsay.co: Volsay problem (Van Hentenryck, OPL book)
- volsay2.co: Volsay problem, using an array (Van Hentenryck, OPL book)
- volsay3.co: Volsay problem, using array, and data in array/matrix (Van Hentenryck, OPL book)
- warehouse.co: Warehouse location problem (OPL example)
- water_buckets1.co: Water buckets problem, CP model. Also see 3_jugs.co above.
- who_killed_agatha.co: Who killed agatha? (The Dreadsbury Mansion Murder Mystery, an automated reasoning problem)
- word_design_dna1.co: Word design for DNA computing on surfaces (CSPLib 033)
- word_golf.co: Word golf (aka Word chain or Word ladder).

Data file for word_golf.co: word_golf_len3.co: 2044 3-letter words from`/usr/dict/words`

. - word_square1.co: Word square: square matrix cross words (fill the whole square with unique words). Data files: word_len3.co, word_len4.co, word_len5.co, word_len6.co .
- word_square2.co: Word square: square matrix cross words (fill the whole square with unique words). Reads from a word list file (
`/usr/dict/words`

). - xkcd.co: XKCD's knapsack problem. See the xkcd strip for the problem

Also see

* My Constraint Programming Blog, especially the Comet category

* My Constraint Programming page

* Common constraint programming problems

* My MiniZinc page

* My Zinc page

* My Choco page

* My JaCoP page

* My JaCoP/Scala page

* My Gecode/R page

* My Gecode page

* My ECLiPSe page

* My Tailor/Essence' page

* My SICStus Prolog page

* My Google CP Solver page

* My OscaR page

* My JSR-331 page

* My Numberjack page

* My AIMMS+CP page

* My B-Prolog page

* My Choco3 page

* My Picat page

Back to my homepage

Created by Hakan Kjellerstrand hakank@gmail.com