When I try to do this:
X = {Search.base.best Script DistributedSorted Earlier}
I get error:
Sure, you pass too many arguments. Check the docs.
How do I code this?
DistributeSorted is a parameter to the script, not to the search engine.
The search script must be the same during the whole search, but you can
construct it dynamically when you pass it to the search engine (this is
called "compiling" the script in the tutorials):
fun {Compile Problem DistributionFct}
...
in
proc {$ Start}
...
{DistributionFct TasksOnWorkCenters Start Dur}
...
end
end
Script={Compile JobShopProblem DistributeSorted}
Why is it that you put a function like earlier and DistributeSorted as
an argument to search? Does earlier get invoked for every search or
only for the final solution?
"Earlier" is used to tell which solution is better (and, during
branch-and-bound search, it is even able to constrain a computation
branch to be "better" than the most recent result - there can be more
than one "active" computations at a time).
DistributeSorted is a procedure used inside your script.
"Script" itself is the script that the search engine executes.
Hope this helps,
Filip
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users