[gecode-users] Custom constraint to external progam
Mikael Zayenz Lagerkvist
zayenz at gmail.com
Thu Nov 13 12:05:07 CET 2008
Hi,
There are no examples currently in Gecode that implement custom propagators.
There is an old post in the mailinglist with a custom
propagator-example [1]. Note that there is a bug in the logic, the
line
GECODE_ME_CHECK(x1.inter_r(home, u12, false));
should be
GECODE_ME_CHECK(x0.inter_r(home, u12, false));
I missed that on a variable-renaming before posting it.
Hope that helps,
Mikael
[1] http://article.gmane.org/gmane.comp.lib.gecode.user/1276/
On Thu, Nov 13, 2008 at 11:51 AM, Pedro Salgueiro <pds at di.uevora.pt> wrote:
> Ok, I think thats what I want to do.
>
> Is there any examples in Gecode that implement a custom propagator?
>
> Pedro Salgueiro
>
> On Thu, 2008-11-13 at 11:10 +0100, Mauricio Toro wrote:
>> Hello,
>>
>>
>> I made something similar once.
>> My approach was writting a propagator
>> that waits until cvars[0] and cvars[1]
>> are assigned. Once they are assigned
>> it calls run_something.
>>
>>
>> I hope that helps,
>>
>>
>> Mauricio
>>
>> 2008/11/13 Pedro Salgueiro <pds at di.uevora.pt>
>> Hi!
>>
>> I have been experimenting Gecode for a while, and now I want
>> to make
>> something wich I don't know if its possible:
>>
>> I want to create a new "custom" constraint that allows to
>> relate/constraint a variable with a function that receives two
>> other
>> gecode variables as parameters. This function will be
>> something
>> completely external to gecode, and evan c++, so, by the the
>> this
>> function is called the gecode variables that are used on it
>> should
>> already have some values assigned to it.
>>
>> Here's how it would look:
>>
>> post(this, cvars[0] < 5)
>> post(this, cvars[1] < cvars[0] + 2)
>> post(this, new_constraint(cvars[2], run_something(cvars[0],
>> cvars[1])
>>
>> In this example, we could just assume that the
>> "new_constraint" is used
>> to make sure that cvars[2] "<"
>> run_something(cvars[0],cvars[1]).
>>
>> Is this possible to do? If so, where should I start?
>>
>> Thank you all
>> Pedro Salgueiro
>>
>>
>> _______________________________________________
>> Gecode users mailing list
>> users at gecode.org
>> https://www.gecode.org/mailman/listinfo/gecode-users
>>
>>
>>
>> --
>> Mauricio Toro Bermudez
>> Estudiante de Ingeniería de Sistemas
>> Pontificia Universidad Javeriana, Colombia
>>
>> Stagiare à l'Ircam
>> 1, place Igor-Stravinsky 75004 Paris,
>> France de 2008 à 2009
>>
>
>
> _______________________________________________
> Gecode users mailing list
> users at gecode.org
> https://www.gecode.org/mailman/listinfo/gecode-users
>
--
Mikael Zayenz Lagerkvist, http://www.ict.kth.se/~zayenz/
More information about the gecode-users
mailing list