[rules-users] Knowing which constraints are broken for final best solution in drools-planner

maraoz manuelaraoz at gmail.com
Tue Apr 17 12:24:59 EDT 2012


Hi geoffrey, thanks for your reply.

I followed examples from the older versions (pre 5.4.0.beta2 i guess), using
the solvers WorkingMemory.

After the *solver.solve()* method returns, calling
*workingMemory.iterateObjects()* will return no objects of type
*IntConstraintOccurrence*. Is this expected? While the solver is solving, I
can obtain this objects and inpect the score inside the
*bestSolutionChanged* callback, but afterwards, I only get the problem facts
and my planning entities.

I'm really confused with what is happening as I don't fully understand how
the solver operates the working memory, but is it possible that after
solving the score isn't calculated any more, generating no new
*IntConstraintOccurrence* after solver has finished solving?

Thanks a bunch! 
Manuel


ps. to make myself clear, if I run *workingMemory.iterateObjects()* while
it's solving I get this types of objects:
ar.edu.itba.epa.core.domain.io.Materia
ar.edu.itba.epa.core.domain.solver.facts.ConflictoAlumnosMateria
ar.edu.itba.epa.core.domain.io.Horario
ar.edu.itba.epa.core.domain.solver.facts.CorrelatividadMateria
*org.drools.planner.core.score.constraint.IntConstraintOccurrence*
ar.edu.itba.epa.core.domain.Examen
ar.edu.itba.epa.core.domain.io.Aula

and afterwards I only get:
ar.edu.itba.epa.core.domain.io.Materia
ar.edu.itba.epa.core.domain.solver.facts.ConflictoAlumnosMateria
ar.edu.itba.epa.core.domain.io.Horario
ar.edu.itba.epa.core.domain.solver.facts.CorrelatividadMateria
ar.edu.itba.epa.core.domain.Examen
ar.edu.itba.epa.core.domain.io.Aula


--
View this message in context: http://drools.46999.n3.nabble.com/rules-users-Knowing-which-constraints-are-broken-for-final-best-solution-in-drools-planner-tp3843876p3917745.html
Sent from the Drools: User forum mailing list archive at Nabble.com.



More information about the rules-users mailing list