My JaCoP page
JaCoP (Java Constraint Programming solver) is a constraint programming system in Java created by Radoslaw Szymanek and Krzysztof Kuchcinski. More information about the system is presentented at the Wiki.
Download
As of version 2.3, JaCoP is open source and can be fetched from Download JaCoP.
Documentation
JaCoP API
My JaCoP models
Below are some of my models for JaCoP version 2.
Explanation and references are in each specific file. Many of these models are translated from my MiniZinc models. Please note that some of the models use the helper class HakankUtil.java.
- CoinsGrid.java: Coins grid problem from Tony Hürlimann: "A coin puzzle - SVOR-contest 2007".
- CrossWord.java: Crossword (standard CP problem)
- DeBruijn.java: de Bruijn sequences, both "normal" and "arbitrary".
Usage: java DeBruijn base n (m)
where base is the base to work with, n is the "bit length" and m the optional length of the sequence (default length is base^n).
- DeBruijnIterate.java: generates de Bruijn sequences in smaller batches instead of all solutions. Note: This version use the new (as of 2008-08-19) search method IterateSolutionListener. (Thanks Radoslaw!)
Usage: java DeBruijnIterate base n (m) (solutions in each batch)
- Diet.java: Simple diet problem.
- FurnitureMoving.java: Simple task optimization using cumulative.
- HakankUtil.java: some utilities. Is needed for some of these models.
- LeastDiff.java: Least diff problem, an alphametic puzzle, minimize the difference ABCDE-FGHIJ where A..J is integers 0..9 (all different)
- MineSweeper.java: Minesweeper problem.
Problem files for the Minesweeper program.
Usage: java Minesweeper problem file
- QuasigroupCompletion.java: Quasigroup completion problem.
Problem files:
- Seseman.java: Seseman convent problem, a simple recreational mathematics puzzle.
- SurvoPuzzle.java: Survo puzzle.
Problem files:
- WhoKilledAgatha.java: Who killed agatha? (The Dreadsbury Mansion Murder Mystery, a automated reasoning problem).
- WhoKilledAgatha_element.java: Who killed agatha? (The Dreadsbury Mansion Murder Mystery, a automated reasoning problem). This version uses Element (with transposed matrices).
- WordSquare.java: Word square: fill a square matrix with words. Reads from a word list file (
/usr/dict/words).
- YoungTableuax.java: Young tableaux and partitions
Also see My Constraint Programming Blog, and
* MiniZinc page
* My Choco page
* My Gecode/R page
* My Comet page
* My Gecode page
* My ECLiPSe page
Back to my homepage
Created by Hakan Kjellerstrand hakank@bonetmail.com