Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
Expand all | Collapse all

Interval Variable Modelling Choice - Pulse Function With Unknown Duration vs Two Step Functions

  • 1.  Interval Variable Modelling Choice - Pulse Function With Unknown Duration vs Two Step Functions

    Posted 04/10/17 07:52 PM

    Originally posted by: stevedwards


    Hi everyone,

    I have a question regarding a modelling decision using interval variables.

    Currently I have two interval variables, say 'u' and 'v'. All units of a production-consumption resource are consumed at the start of 'u' and then released at the end of 'v'. Currently I'm modelling this using two step functions for the cumul expression; one at the beginning of 'u' and the other at the end of 'v'. This production-consumption resource is used frequently so I want to tell the solver that it should be trying to keep the distance between 'u' and 'v' as short as possible - however for other practical reasons I don't want to introduce an artificial time-lag constraint between u and v. 

    Would the default solver operate any differently if instead I model this using an additional interval variable 'w', where I constrain the start of 'w' to the start of 'u', the end of 'w' to the end of 'v', and then model the resource usage as a pulse function on 'w'? As far as I can see this is an equivalent expression of constraints. I'm just thinking whether the default solver would have more luck minimizing the duration of 'w', than trying to minimize the time between two seperate variables, 'u' and 'v'.

    Hope that makes sense. 

    Best Regards,

    Steve

     

     

     


    #CPOptimizer
    #DecisionOptimization


  • 2.  Re: Interval Variable Modelling Choice - Pulse Function With Unknown Duration vs Two Step Functions

    Posted 04/18/17 03:03 AM

    Originally posted by: Petr Vilím


    Hello Steve,

    my guess is that the model with the additional interval variable 'w' will be better. The two models are indeed equivalent in the sense that they have the same set of solutions. However with the interval variable 'w' and pulse function the solver may better understand the structure of the problem and it may also propagate more. Propagation algorithm for cumulative function does not analyze precedences between interval variables, so it does not see that start of 'u' must be before end of 'v'. With 'w' the propagation may be stronger, especially if the cumulative resource is quite disjunctive (only few pulses can overlap).

    My recommendation is to try the new model and compare them on multiple instances of data. Or, if you don't have multiple instances, compare try multiple runs with different RandomSeed parameter. Comparison based on just one run is not reliable.

     

    Best regards, Petr


    #CPOptimizer
    #DecisionOptimization


  • 3.  Re: Interval Variable Modelling Choice - Pulse Function With Unknown Duration vs Two Step Functions

    Posted 09/18/17 09:32 PM

    Originally posted by: stevedwards


    Hi Petr,

    Yep I think you're right. I have tried both scenarios and the method you suggested seems to be marginally better on average.

    Cheers,

    Steve


    #CPOptimizer
    #DecisionOptimization