Dear all, Well, it seems that change "return true" into "return false" means that we do not restart when a solution is found. While the "if" condition is only do not post that no-good when a solution is found.
Zichen On Tue, Dec 16, 2014 at 11:31 PM, Zhu Zichen's cse <z...@cse.cuhk.edu.hk> wrote: > > Dear Christian, > > Oh, that's another problem. I redefine the master() function as described > at page 161, > if (cri.solution() == 0 ) > cri.nogoods().post(*this) > so that do not restart if a solution is found. The infinite loop still > there. The only way to stop it is to "return false" rather than "return > true". > > It seems the "if" condition is not useful. I am really confused about that. > > Zichen > > On Tue, Dec 16, 2014 at 11:22 PM, Christian Schulte <cschu...@kth.se> > wrote: > >> Hmmmm, I had a look and that should work. I will look into a little later >> (after Christmas). >> >> >> >> However: it will work when you do not restart on a solution. Then, the >> combination of all solution search together with restarts is not really >> that meaningful, is it? >> >> >> >> Cheers >> >> Christian >> >> >> >> -- >> >> Christian Schulte, Professor of Computer Science, KTH, >> www.gecode.org/~schulte/ >> >> >> >> *From:* ziche...@gmail.com [mailto:ziche...@gmail.com] *On Behalf Of *Zhu >> Zichen's cse >> *Sent:* Tuesday, December 16, 2014 4:14 PM >> *To:* cschu...@kth.se >> *Cc:* users@gecode.org >> *Subject:* Re: [gecode-users] A problem for restart >> >> >> >> Dear Christian, >> >> >> >> Here are the codes. Many thanks. >> >> >> >> Zichen >> >> >> >> On Tue, Dec 16, 2014 at 11:04 PM, Christian Schulte <cschu...@kth.se> >> wrote: >> >> Hi Zichen, >> >> >> >> MPG does not make a promise here: it says "the solution might not be >> found again" but it does not give you a guarantee. But for your example I >> would have to know how nqueen_rbs looks like. >> >> >> >> Cheers >> >> Christian >> >> >> >> -- >> >> Christian Schulte, Professor of Computer Science, KTH, >> www.gecode.org/~schulte/ >> >> >> >> *From:* users-boun...@gecode.org [mailto:users-boun...@gecode.org] *On >> Behalf Of *Zhu Zichen's cse >> *Sent:* Tuesday, December 16, 2014 3:43 PM >> *To:* users@gecode.org >> *Subject:* [gecode-users] A problem for restart >> >> >> >> Dear all, >> >> >> >> I met a problem when using ​restart in Gecode. >> >> >> >> I simply use restart to find all solutions for 4-Queens while use the >> same heuristic after each restart: >> >> ./nqueen_rbs -restart geometric -restart-scale 2 -restart-base 10 >> -nogoods 1 -nogoods-limit 128 4 >> >> >> >> But I got into an infinite loop which keeps printing the first solution. >> >> >> >> According to the newest version of document "MPG" (page 160), the >> master() function posts no-goods when the a solution is found. This means >> the same solution will not be found again. >> >> >> >> I rewrite the master() function by changing the last line "return true" >> into "return false", now all solutions are generated without trapped into a >> loop. >> >> >> >> I am wondering why the infinite loop happens and whether Gecode has truly >> recorded previous solutions as nogoods as the document says. >> >> >> >> Thanks for help. >> >> >> >> Zichen >> >> [image: Image removed by sender.] >> >> >> > >
_______________________________________________ Gecode users mailing list users@gecode.org https://www.gecode.org/mailman/listinfo/gecode-users