Re: [eclipse-clp-users] runtime error for a real-valued scheduling problem

From: Kish Shen <kisshen_at_cisco.com>
Date: Thu, 15 May 2008 14:40:58 +0100
Soheil Samii wrote:
> Hi!
>
> I would like to check whether there is someone who has experienced a similar 
> problem that I now describe:
>
> I have formulated a scheduling problem, which is a set of resource constraints 
> (using the built-in ic_cumulative) and some iequalities (using $=<). The 
> variables are supposed to be real values that satisfy all constraints. I have 
> not yet implemented an objective function, so for the moment it is a CSP.
>
> The CLP code (in the file scheduling.ecl) is attached at the end of this 
> email. When I run it, I get the following output from ECLiPSe:
>
>   
You are getting the errors you stated because ic_cumulative (and the 
stronger ic_edge_finder and ic_edge_finder3) works with integer finite 
domain variables (this is described in the manual). It probably should 
give more user friendly error messages than the one you see, though.

ic supports both integer and real values, but the constraints that can 
be applied to these values are different, and there are many more 
constraints for integer finite domain values. For scheduling problems as 
you described, you are almost certainly better off representing it as an 
integer finite domain problem -- if your problem involve real values, it 
may be best to approximate them using integers. You can scale the values 
in your problem so that fractional values in your original problem can 
be represented as integers.

By the way, generating an ECLiPSe program from C may not be the best 
approach -- it can be error-prone, and it is hard to be flexible in your 
coding. It may be better to generate the data you need for scheduling in 
C (e.g. in your case, some sort of specification of the tasks in your 
schedule), and send this data to ECLiPSe, either via a file, or through 
I/O if you are using an embedded ECLiPSe.

Cheers,

Kish
Received on Thu May 15 2008 - 06:41:31 CEST

This archive was generated by hypermail 2.2.0 : Thu Feb 02 2012 - 02:31:58 CET