Dear Ashis,
Oz' constraint model is based on copying -- simplified, whenever a
constraint solver makes a decision (a distribution step) then it
copies everything known about the problem at this time during search
(space copy). Your memory consumption is very likely caused by this
copying: the memory consumption depends on the size of your data, and
the size of the search space (how often it is copied). As I said,
this is a bit simplified, but I hope you get the idea.
There are different ways to reduce the amount of memory required. The
best way is to optimise your distribution strategy: if you reduce the
search tree then you also reduce the memory consumption. Further, you
can trade memory for computation time using recomputation.
The best source for further information on this matter is Christian
Schulte's book, but also the Constraint Programming Tutorial will help.
Best
Torsten
On Jun 17, 2009, at 9:25 PM, Maity, Ashis K wrote:
Hi,
One of my constraint definitions in a scheduling problem is using
extensive memory and computation time (please see attached). We
call it
UsageConsraint. The basic idea is something like this -- a resource
should not spend more than a certain amount of time in a time period
(i.e., a pilot will not fly more than 8 hrs in a 24 hr window). Can
anybody quickly browse the code and see if there are some big pitfalls
that are causing so much resource usage? For this constraint Oz engine
is using as much as 2 GB of memory for 100 tasks with 50 or so
resources
and I need to run this for 1000 tasks or more. Any help is much
appreciated.
proc {ApplyConstraint RU Task PeriodStart PeriodEnd Duration
ConstraintResourceId}
{FD.impl
(RU.id =: ConstraintResourceId)
({FD.exor
{FD.conj
(
{FD.conj
(Task.start >=: PeriodStart)
(Task.start <: PeriodEnd)
}
)
(Duration \=: 0)
}
{FD.conj
(
{FD.nega
{FD.conj
(Task.start >=: PeriodStart)
(Task.start <: PeriodEnd)
}
}
)
(Duration =: 0)
}
})
1
}
End
Thanks,
--
Torsten Anders
Interdisciplinary Centre for Computer Music Research
University of Plymouth
Office: +44-1752-586219
Private: +44-1752-558917
http://strasheela.sourceforge.net
http://www.torsten-anders.de
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users