Decision Optimization

Decision Optimization

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

 View Only
Expand all | Collapse all

Optimize resource scheduling and material supply constraint

  • 1.  Optimize resource scheduling and material supply constraint

    Posted Sun August 26, 2018 09:53 AM

    Originally posted by: Stan_Yin


    I am trying a model for production scheduling. May CP optimize scheduling with constraints of capacity and material? The constraints of capacity have a production line,  tool, setup sequence, and working hours. The constraints of material have different usage of each work order on  different production line. A work order consumes material at production start, production line and tool must be ready.


    #ConstraintProgramming-General
    #DecisionOptimization


  • 2.  Re: Optimize resource scheduling and material supply constraint

    Posted Sun August 26, 2018 02:11 PM

    Originally posted by: Petr Vilím


    Hello,

    yes, CP Optimizer is a good fit for this kind of problems. There are interval variables to model tasks and concepts such as "cumul" to model capacity usage over time (and limit the capacity), state functions to model different states of a tool and transition times between them, noOverlap to model tasks that couldn't overlap (possibly again with transition times), forbidden times (e.g. forbidExtent) to model working hours etc.

    I suggest to have a look on the main concept of CP Optimizer here (they are independent of the programming language):

    https://www.ibm.com/support/knowledgecenter/SSSA5P_12.8.0/ilog.odms.ide.help/refcppopl/html/introduction.html

    Petr


    #ConstraintProgramming-General
    #DecisionOptimization


  • 3.  Re: Optimize resource scheduling and material supply constraint

    Posted Sun August 26, 2018 08:41 PM

    Originally posted by: Stan_Yin


    Hi Petr,

     

    CP's functions of resource optimization may fit the modeling requirement. May I know the CP's funtions of material optimization? While CP determines startOf of interval decision variable, may CP check the material supply availability?

     

    Stan

     


    #ConstraintProgramming-General
    #DecisionOptimization


  • 4.  Re: Optimize resource scheduling and material supply constraint

    Posted Tue August 28, 2018 12:16 PM

    Originally posted by: ChrisBr


    Hello Stan,
    I'm not sure to understand your question.
    Anyway, I suggest you to have a look at the cumul-functions and especially at stepAtStart which might be related to your needs.
    You'll find an example of use in sched_cumul delivered sample (here in OPL, but  available with other APIs).
    I hope this helps (at least a little).
    Chris.


    #ConstraintProgramming-General
    #DecisionOptimization


  • 5.  Re: Optimize resource scheduling and material supply constraint

    Posted Tue August 28, 2018 03:03 PM

    Originally posted by: Petr Vilím


    If I understand correctly, you're asking whether aside the dates CP Optimizer is also able to decide amount of material (as a decision variable) and check its availability.

    Cumul functions can model an amount of material over time (hence the name "function" - the amount of material e.g. in a given storage is a function of time that needs to be decided). The modeling language allows to easily constrain the cumul function to always be within some range (to model e.g. maximum capacity of a storage or the fact that the amount can never go below zero). Tasks may simply consume or produce some amount of material and this way modify the cumul function. Moreover the amount of material the task consumes or produce can be a decision variable (pulse, stepAtStart or stepAtEnd with a range instead of constant value), CP Optimizer then also have to fix this variable (accessible through heightAtStart, heightAtEnd).

    Petr


    #ConstraintProgramming-General
    #DecisionOptimization


  • 6.  Re: Optimize resource scheduling and material supply constraint

    Posted Wed August 29, 2018 07:31 AM

    Originally posted by: Stan_Yin


    Hi Chirs & Petr,

    I tried cumul function. It is a solution to model material available constraint.

    I don't have idea to model alternative material by cumul function. For example, product-A consumes alternative material-1 or material-2. Product-B uses alternative material-1 or material-3.

     

    Stan


    #ConstraintProgramming-General
    #DecisionOptimization


  • 7.  Re: Optimize resource scheduling and material supply constraint

    Posted Wed August 29, 2018 08:38 AM

    Originally posted by: Petr Vilím


    Hello Stan,

    this kind of alternatives could be modeled using optional interval variables and constraint "alternative". In particular, suppose that task A consumes either 5 units of material 1 or 3 units of material 2. Then we need three interval variables:

    1. Interval variable "A" for the task itself. Not optional (task must be performed).
    2. Interval variable A1 for the case A is using material 1. This interval variable must be optional (in the end A could use material 2 instead).
    3. Interval variable A2 for the case A is using material 2. Again, it must be optional.

    Those three variables then can be linked using constraint alternative(A, [A1, A2]). This way exactly one of the options A1 and A2 will be present and A will be synchronized with the present option. Intervals A1 and A2 could be then constrained independently. For example A1 can modify cumul "material1" using stepAtStart(A1, 5) and A2 can modify cumul "material2" using stepAtStart(A2, 3). Of course A1 and A2 could also have different length, require different predecessors, different working hours (e.g. forbidExtent) and so on. But all constraints that are common for A1 and A2 should be posted directly on A (not twice on A1 and A2) otherwise there is a risk of loosing propagation power.

    Petr

    Petr


    #ConstraintProgramming-General
    #DecisionOptimization