[gecode-users] View selection approach in Gecode

Christian Schulte schulte at imit.kth.se
Tue Feb 14 09:47:18 CET 2006


Very simple, indeed: Remember, this is an abstraction. The abstraction works
very well for the 20+ branchings in Gecode. However, if you want a different
abstraction, do that: just inherit from branching.

The reason why the loop (which is quite smart as it remembers already
assigned views as well as handles tie breaking) is not exposed is because it
is not needed: all the branchings we ship can be express4ed just by view
comparison.

Christian

--
Christian Schulte, http://www.imit.kth.se/~schulte/ 

-----Original Message-----
From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On Behalf
Of Lars Otten
Sent: Tuesday, February 14, 2006 12:45 AM
To: users at gecode.org
Subject: [gecode-users] View selection approach in Gecode


Hi everyone,

I've started looking into random view selection for branching and hence
examined the way the next view to be branched on is selected in Gecode.
After comprehending the source code (kernel/branching.icc and int/branch*) I
can't help wondering why it's done the way it currently is.

To be specific: Why did you choose this 'incremental' approach, handing one
view after another to the view selection class instance, instead of just
passing the ViewArray right from the start? The latter would be comparable
to the value selection process, where the whole view is passed and not one
value after another...

As I see it, I can just modify this scheme (or rather add my own next to it)
since this 'incremental' approach won't work for my purposes; nevertheless I
think I'm missing something here and I'd like to understand your design
before I start implementing my random view selection so I can avoid
potential pitfalls...

Thanks in advance (once more),
/Lars


_______________________________________________
Gecode users mailing list
users at gecode.org https://www.gecode.org/mailman/listinfo/gecode-users





More information about the gecode-users mailing list