Re: [eclipse-clp-users] Performance-related issues in heuristic optimization with ECLiPSe

From: Kish Shen <kisshen_at_cisco.com>
Date: Wed, 18 Jun 2008 12:25:23 +0100
Hi,

Just adding some ECLiPSe specific points:

Soheil Samii wrote:

> 3. The order of the constraints is important.
> 

As Marco said, the order of posting the constraints is probably not very 
  important. However, the order of propagation from the constraints can 
be important, because it can affect the amount of computation done 
during the propagation, but it is rather tricky to really understand and 
reason about this, and most systems do not provide the user with much 
control over the order of propagation anyway. ECLiPSe does provide some 
control over this with the priority system for execution, but it is a 
rather blunt tool: normally you will use the priority system to give 
constraints that have costly propagation low priority, so that it only 
execute after other `cheap' constraints have done their job.


> Regarding the cumulative/4 constraint: Is it better to use the version in 
> ic_cumulative or is it better to use the one in ic_edge_finder3? Which one is 
> best from the point of view of runtime?
>

The idea of providing the same constraints in the different libraries is 
to allow you to swap one library for another by just changing one line
(the line that loads in the library, e.g. :- lib(ic_edge_finder3)), so 
that you can see which library works best for you. One more point to 
add: I think the main algorithm for the edge-finders are implemented in 
C, while cummulative is implemented in ECLiPSe.

Cheers,

Kish
Received on Wed Jun 18 2008 - 04:26:19 CEST

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