Decision Optimization

Decision Optimization

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


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  setup time matrix is a variable

    Posted 04/09/19 10:33 AM

    Originally posted by: hzwpku


    There are two operations. Each operation has a set of available machines. Each job has a type, but the type is a variable which is depended on the selected machines in the first operation. For example,

    there are five machines (A/B/C/D/E) for the first operation. If job select machine A, this job's type is A and so on. The setup time between two types in the second operation is given. How to deal with this problem where the setup time matrix is a variable?

     


    #DecisionOptimization
    #OPLusingCPOptimizer


  • 2.  Re: setup time matrix is a variable

    Posted 04/10/19 06:13 AM

    Hi,

    have you had a look at the example CPLEX_Studio129\opl\examples\opl\sched_setup

    ?

    You ll see how noOverlap works with a matrix

    regards


    #DecisionOptimization
    #OPLusingCPOptimizer


  • 3.  Re: setup time matrix is a variable

    Posted 04/10/19 07:42 AM

    Originally posted by: hzwpku


    Thanks for your reply.

     

    I have seen the example. But the problem is the job's type is a variable which is depended on the selected machines in the first operation.

    "noOverlap(s[m],tt[m],1)" don't work when tt[m] is a variable.


    #DecisionOptimization
    #OPLusingCPOptimizer


  • 4.  Re: setup time matrix is a variable

    Posted 04/10/19 10:19 AM

    and have you tried to use alternative to model the different machines ?

     


    #DecisionOptimization
    #OPLusingCPOptimizer


  • 5.  Re: setup time matrix is a variable

    Posted 04/11/19 02:41 AM

    Originally posted by: hzwpku


    In "noOverlap(s[m],tt[m],1)" , can  tt[m]  be a variable?


    #DecisionOptimization
    #OPLusingCPOptimizer


  • 6.  Re: setup time matrix is a variable



  • 7.  Re: setup time matrix is a variable

    Posted 05/02/19 10:07 AM

    Originally posted by: Filipe Costa


    Hi,

    If I understood your problem correctly, you can do something like this:

    {string} machines = {A,B,C,D,E};

    tuple Setup {
        string machine_origin;
        string machine_destination;
        int time;
    }

    {Setup} setup_times[m in machines]=...;

    tuple Setup_Indexed{
        int id1;
        int id2;
        int time;
    }

    {Setup_Indexed} setup_times_indexed[m in machines]={<ord(machines,m_dest),ord(machines,m_dest),time>|<m_or,m_dest,time> in setup_times[m]};

    Then when you declare your sequence variable:

    you must specify the types :

    types all(o in operations: ma.name==o.machine.name) ord(machines,o.machine.name); // ma -> all machines

    Then the noOverlap constraint should work.

    Regards

     

     


    #DecisionOptimization
    #OPLusingCPOptimizer