[gecode-users] Counting clones

Christian Schulte cschulte at kth.se
Sun Jun 3 17:06:10 CEST 2012


Please read the respective sections in MPG, the story is very much
different. You might also read one of my earlier papers on this.

 

Christian

 

--

Christian Schulte, www.ict.kth.se/~cschulte/

 

From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On Behalf
Of Marco Correia
Sent: Friday, June 01, 2012 9:04 PM
To: 'gecode list'
Subject: Re: [gecode-users] Counting clones

 

Hi Christian,

Thanks for the reply, I think I got it. I was under the impression that
recomputation (and adaptive recomputation) where techniques for optimizing
runtime performance when compared with standard copy since recomputing could
perhaps be faster than copying for some cases. But now I see I was wrong and
that their purpose is only to save space. This means that setting c_d=1
should always provide faster runtime than any other method (assuming that
the problem at hand does not require huge amounts of memory). Am I getting
the right picture now, or am I oversimplifying?

Thanks!
Marco





 <mailto:cschulte at kth.se> Christian Schulte

June 1, 2012 7:41 PM

Hi Marco,
 
Well, the number of clones _is_ the same for any value of c-d or a-d! You
have to backtrack, so you have to make a clone! The difference is that you
clone different spaces.
 
Christian
 
--
Christian Schulte, www.ict.kth.se/~cschulte/
 

-----Original Message-----
From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On
Behalf Of Marco Correia
Sent: Friday, June 01, 2012 6:54 PM
To: 'gecode list'
Subject: [gecode-users] Counting clones
 
Hi,
 
I suspect the answer to the following question should be somewhere in the

MPG

document, but I was unable to find it - apologies if this is the case.
 
I am interested on obtaining the number of clones for a specific example

when

subject to different value for the c_d parameter in the context of a DFS

search. I

believe gecode used to report this value in the statistics, but now it

seems there

is a specific class CloneStatistics which should be updated as search

proceeds. I

fail to see how to pass an object of type CloneStatistics to the DFS

search

object. Also the
Space::clone() member function (which seems to be the only place where

this

object can be updated) is not virtual, and therefore cannot be intercepted

in my

subclass of Space (is this correct?). So I tried another approach, which

was

simply to count the number of times that my
copy() function gets called, which I thought should tell me the number of

clones.

Now I think I'm wrong since this number always reports the same number of
clones for different values of c_d.
 
Obviously I'm making some mistake. Any hints?
 
Thanks!
 
_______________________________________________
Gecode users mailing list
users at gecode.org
https://www.gecode.org/mailman/listinfo/gecode-users

 



 <mailto:marco.v.correia at gmail.com> Marco Correia

June 1, 2012 5:53 PM

Hi, 

I suspect the answer to the following question should be somewhere in the
MPG document, but I was unable to find it - apologies if this is the case. 

I am interested on obtaining the number of clones for a specific example
when subject to different value for the c_d parameter in the context of a
DFS search. I believe gecode used to report this value in the statistics,
but now it seems there is a specific class CloneStatistics which should be
updated as search proceeds. I fail to see how to pass an object of type
CloneStatistics to the DFS search object. Also the Space::clone() member
function (which seems to be the only place where this object can be updated)
is not virtual, and therefore cannot be intercepted in my subclass of Space
(is this correct?). So I tried another approach, which was simply to count
the number of times that my copy() function gets called, which I thought
should tell me the number of clones. Now I think I'm wrong since this number
always reports the same number of clones for different values of c_d. 

Obviously I'm making some mistake. Any hints? 

Thanks! 



 <mailto:marco.v.correia at gmail.com> Marco Correia

June 1, 2012 4:42 PM

Hi, 

I suspect the answer to the following question should be somewhere in the
MPG document, but I was unable to find it - apologies if this is the case. 

I am interested on obtaining the number of clones for a specific example
when subject to different value for the c_d parameter in the context of a
DFS search. I believe gecode used to report this value in the statistics,
but now it seems there is a specific class CloneStatistics which should be
updated as search proceeds. I fail to see how to pass an object of type
CloneStatistics to the DFS search object. Also the Space::clone() member
function (which seems to be the only place where this object can be updated)
is not virtual, and therefore cannot be intercepted in my subclass of Space
(is this correct?). So I tried another approach, which was simply to count
the number of times that my copy() function gets called, which I thought
should tell me the number of clones. Now I think I'm wrong since this number
always reports the same number of clones for different values of c_d. 

Obviously I'm making some mistake. Any hints? 

Thanks! 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20120603/b95dd18f/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 770 bytes
Desc: not available
URL: <http://www.gecode.org/pipermail/users/attachments/20120603/b95dd18f/attachment.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image002.jpg
Type: image/jpeg
Size: 1174 bytes
Desc: not available
URL: <http://www.gecode.org/pipermail/users/attachments/20120603/b95dd18f/attachment-0001.jpg>


More information about the users mailing list