¡Esta es una revisión vieja del documento!

Mozart Constraint Subsystem


The main goal of this project is to integrate Gecode as the Mozart constraint services provider, namely, to replace the Mozart constraint layer with Gecode and take advantage of its advanced features like batch recomputation.

Current State

We are currently working on make it work with several guidelines in mind:

  • A clear design
  • Efficience

Involved Organizations

  • Université catholique de Louvain
  • Pontificia Universidad Javeriana
  • Universidad del Valle


This version of Mozart is maintained as a branch of the Mozart repository. You can check it out the sources by doing:

git clone git://github.com/ggutierrez/mozart2-vm.git

Compiling on Linux

git clone git://github.com/ggutierrez/mozart2-vm.git
cd mozart2-vm
git checkout css
mkdir build && cd build
cmake -DBUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/path/to/installation/dir ..

This Mozart virtual machine depends on Gecode 3.7.3 in order to work. If you already have the Gecode library statically compilled, then you can avoid its compilation by adding the installation dir to cmake.

cmake -DBUILD_TYPE=Debug -DGECODE_INSTALL_DIR=/path/to/gecode/installation ..

Main Developers

  • Juan Francisco Diaz: juanfco.diaz at correounivalle.edu.co
  • Camilo Rueda: camilo.rueda at gmail.com
  • Gustavo Gutiérrez: ggutierrez at cic.javerianacali.edu.co
  • Gustavo A. Gómez: farhat at cic.javerianacali.edu.co
  • Alejandro Cardona: carealejo at gmail.com
  • Daniel Montenegro: dmontenegro92 at gmail.com
  • Carlos Martinez: camarti at gmail.com
  • Miguel Angel Villanueva: miavisa at gmail.com
  • Andrés Mauricio Tabares: amautave at gmail.com
  • Andrés F. Barco: anfelbar at javerianacali.edu.co


You can find weekly reports in google-drive: Css Reports


Goal Member Todo Status
Interface with gecode spaces (Gecode::space) ggutierrez done
Interface ConstraintVars ggutierrez done
Interface IntVarLike ggutierrez done
Finite domain variable implementation FDB module (Gecode::IntVar) ggutierrez inf, sup, is, int, dom, list, tuple, record, decl, value, reflect.min, reflect.max, reflect.mid, reflect.nextLarger, reflect.nextSmaller, reflect.size, reflect.domList, reflect.dom, reflect.nbSuspsin progress
Finite domain propagator implementation FDP module carealejo, ggfarhat, dmontenegro watch.min, watch.max, watch.size, sum, sumC, sumCN, sumAC, sumACN, sumD, sumCD, distinct, distinctB, distinctD, distinctOffset, distinct2, atMost, atLeast, exactly, element, conj, disj, exor, nega, impl, equi, reified.int, reified.dom, reified.sum, reified.sumC, reified.sumCN, reified.sumAC, reified.sumACN, reified.distance, reified.card, plus, plusD, minus, minusD, times, timesD, power, divI, modI, divD, modD, max, min, distance, less, lesseq, greater, greatereq, disjoint, disjointC, tasksOverlap in progress
Garbage Collection implementation anfelbar in progress
Finite domain distributor implementation amautave FD.distribute, FD.choose, FD.assign in progress
Search engine implementation miavisa in progress
Explorer implementation (Gecode::Gist) miavisa, … wait
Interface SetVarLike null wait
Finite sets variable implementation FSB module (Gecode::SetVar) null wait
Finite sets propagator implementation FSP module null wait
Finite sets distributor implementation null wait
Interface BoolVarLike null wait
Boolean variable implementation BDB module (Gecode::BoolVar) null wait
Boolean propagator implementation BDP module null wait
Boolean distributor implementation null wait


  • Mozart2Css Design document
  • Mozart2Css implementation document
  • Mozart2Css code documentation (What format? doxygen, SGML, rest?)


grupos/avispa/mozart2_css.1361203161.txt.gz · Última modificación: 2013/02/18 10:59 por abarco
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki