Dear Jonathan,

I don't think such a predefined way exists. (Otherwise somebody would
probably have answered to your previous requests.)

However, it is possible to implement your own search strategies in Oz.
I have never done that, but two possible starting points are:
http://www.mozart-oz.org/papers/abstracts/Engines.html
http://www.mozart-oz.org/mogul/doc/tack/iozsef/iozsef.html

You could also try to check the number of failed spaces in your
ordering predicate and fail if too many spaces  were created:

---------------------------
declare
proc {Script Root}
   X={FD.int 1#1000}
   Y={FD.int 1#1000}
in
   Y =: 1000 - X*X - 2*Y
   Root = X#Y
   {FD.distribute ff Root}
end

fun {CreateOrder MaxSpaces}
   OldSpaces = {Property.get 'spaces.failed'}
in
   proc {$ Old New}
      if {Property.get 'spaces.failed'} < OldSpaces + MaxSpaces then
         Old.1 + Old.2 <: New.1 + New.2
      else
         fail
      end
   end
end

Time0 = {Property.get 'time.user'}
{System.printInfo "with max 100 spaces: "} {Show {SearchBest Script
{CreateOrder 100}}}
Time1 = {Property.get 'time.user'}
{System.showInfo "time ellapsed: "#Time1-Time0}
{System.printInfo "with max 1000 spaces: "} {Show {SearchBest Script
{CreateOrder 1000}}}
Time2 = {Property.get 'time.user'}
{System.showInfo "time ellapsed: "#Time2-Time1}

---------------------------

This 'solution' has a BIG PROBLEM, though.
If other searches are running in parallel, the space counting will go
wrong and the search will stop too soon.

Cheers,
    Wolfgang


On 1/1/10, Jonathan Vivanco Navarro <[email protected]> wrote:
>
> Dears
>
> I would like to know if there is a predefined or automatic way, that allow me 
> stop the "explorebest" and "Search.best" given a number of spaces generated.
>
> e.g.:
>
>
> proc {TSP_Orden2 Old New}
>
>    (Old.costo_total >: New.costo_total)
>
> end
>
> {ExploreBest TSP TSP_Orden}
>
> Stop the searches when find an optimal amount certain (e.g.:20).
>
>  Thanks is advance
>
>
> Sincererely.
>
>
> Jonathan
>
> _________________________________________________________________________________
>  mozart-users mailing list                               
> [email protected]
> http://www.mozart-oz.org/mailman/listinfo/mozart-users
>
_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to