[gecode-users] Calling Space::status() within a Brancher::commit() call

Christian Schulte cschulte at kth.se
Mon Oct 12 15:39:10 CEST 2015


Hi Tommaso,

 

That is indeed not a very good idea as it basically would disable batch
recomputation in Gecode and hence will slow down the whole propagation
process considerably.

 

What you might want to do instead is put some state in the brancher that
tells the brancher that it is now generating one assignment out of a set of
assignments. This idea then is compatible with how recomputation is done in
Gecode.

 

For an example that has a slight similarity with what you describe, consider
the case study in MPG on bin packing: there the brancher also branches on
several values and variables simultaneously.

 

Hope that helps

 

 

Cheers

Christian

 

--

Christian Schulte, www.gecode.org/~schulte

Professor of Computer Science, KTH, cschulte at kth.se

Expert Researcher, SICS, cschulte at sics.se

 

From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On Behalf
Of tommaso.urli
Sent: Friday, October 9, 2015 07:18 AM
To: users at gecode.org
Subject: [gecode-users] Calling Space::status() within a Brancher::commit()
call

 

Hi all,

 

I am working on an incomplete (heuristic) brancher for a model. The brancher
focuses on feasibility: the goal is to finding a feasible solution quickly,
regardless of its cost, according to a problem-specific heuristic. In my
brancher I often assign several variables in the same branching step; I do
this because as soon as I consider the semantics of the variables, it makes
sense to group related decisions. However, since these variables can be
interconnected by constraints, I'd need to do a propagation step in order to
ensure that their domains are consistent between the assignments.

 

I am currently calling home->status() in the brancher's commit() method,
which does what I want, however I am not sure whether this is advisable in
general. I'd like some opinion from Christian or Guido regarding this.

 

Thanks,

 

---

Tommaso Urli, Researcher

Optimisation Research Group (ORG)

NICTA Canberra Research Lab (CRL)

7 London Circuit, Canberra ACT 2601

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20151012/edeb57ae/attachment.html>


More information about the users mailing list