Topic
  • 2 replies
  • Latest Post - ‏2014-04-23T01:54:06Z by V4B5_HOCK_ANN_CHUA
V4B5_HOCK_ANN_CHUA
V4B5_HOCK_ANN_CHUA
2 Posts

Pinned topic ILOG CP goal in ILOG CP Optimizer (Java)

‏2014-04-22T13:16:59Z |

I have goal implemented in C++ ILOG CP. The goal tries to set the start time of a set of activities or ignore the start time if not possible. How can I achieve the same with ILOG CP Optimizer and with Java api. Do I add start time constraint to IloCP object for each IntervalVar and propogate one by one to see if it is possible to set the start time? Is there a better way to achieve the same? Thank you very much.

  • PhilippeLaborie
    PhilippeLaborie
    52 Posts

    Re: ILOG CP goal in ILOG CP Optimizer (Java)

    ‏2014-04-22T16:34:38Z  

    Hello,

    In general, the equivalent of C++ ILOG CP goals are C++ ILOG CP Optimizer goals and there are no search goals in Java.

    This being said, it depends what you want to do. Adding constraints in the model as you mention may be a possibility if your goal does not need to backtrack (otherwise, you will need to handle the reversibility yourself) and if you are working with a rather small model (otherwise, you may have performance issues). You may also consider using:

    - Starting points (if your goal is supposed to try to extract some information from an existing, possibly infeasible, schedule)

    - Search phases (if your goal is trying to structure the search by first trying to schedule a subset of activities, then another subset, etc...)

    - Conflict refiner (if your goal is trying to identify a small infeasible subset of the global problem)

    Philippe

     

  • V4B5_HOCK_ANN_CHUA
    V4B5_HOCK_ANN_CHUA
    2 Posts

    Re: ILOG CP goal in ILOG CP Optimizer (Java)

    ‏2014-04-23T01:54:06Z  

    Hello,

    In general, the equivalent of C++ ILOG CP goals are C++ ILOG CP Optimizer goals and there are no search goals in Java.

    This being said, it depends what you want to do. Adding constraints in the model as you mention may be a possibility if your goal does not need to backtrack (otherwise, you will need to handle the reversibility yourself) and if you are working with a rather small model (otherwise, you may have performance issues). You may also consider using:

    - Starting points (if your goal is supposed to try to extract some information from an existing, possibly infeasible, schedule)

    - Search phases (if your goal is trying to structure the search by first trying to schedule a subset of activities, then another subset, etc...)

    - Conflict refiner (if your goal is trying to identify a small infeasible subset of the global problem)

    Philippe

     

    Thank you Philippe for the prompt reply and good advice. It is good to know where to turn to (and get quick response) when required. Cheers.