Decision Optimization

Decision Optimization

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

 View Only
Expand all | Collapse all

tuple to array

ALEX FLEISCHER

ALEX FLEISCHERThu January 02, 2020 03:12 AM

  • 1.  tuple to array

    Posted Wed December 25, 2019 07:22 PM

    Originally posted by: abdulgani


    Hi all,

    Below is my code and my target is to convert vacations tuple to an int array such as [[1,0,1],[0,1,1]]  . I am quite new to here. could you please help me?

     

    .dat

    nurses = {<"Ann" 11 1 25> 
                    <"Dee" 3 3 21> 
                   };
             
    Weekdays = {"Monday" "Tuesday" "Wednesday"};

    mod.

    {string} Weekdays = ...;  

    tuple nurse {
      key string name;
      int seniority;
      int qualification;
      int payRate;
    }
     
    {nurse} nurses = ...;
     
    tuple vacation{
    key string nurse;
    key string weekday;
    int flag;
    }

    {vacation} vacations = {<"Ann","Monday",1>,<"Ann","Tuesday",0>,<"Ann","Wednesday",1>,<"Dee","Monday",0>,<"Dee","Tuesday",1>,<"Dee","Wednesday",1>};
     


    #DecisionOptimization
    #OPLusingCPLEXOptimizer


  • 2.  Re: tuple to array

    Posted Thu January 02, 2020 03:12 AM

    Hi

    .mod

    {string} Weekdays = ...;  

    tuple nurse {
      key string name;
      int seniority;
      int qualification;
      int payRate;
    }
     
    {nurse} nurses = ...;
     
    tuple vacation{
    key string nurse;
    key string weekday;
    int flag;
    }

    {vacation} vacations = {<"Ann","Monday",1>,<"Ann","Tuesday",0>,<"Ann","Wednesday",1>,<"Dee","Monday",0>,<"Dee","Tuesday",1>,<"Dee","Wednesday",1>};

    int boolVacationsArray[n in nurses][d in Weekdays]=item(vacations,<n.name,d>).flag;

    execute
    {
      writeln(boolVacationsArray);
    }

     

    .dat

     

    nurses = {<"Ann" 11 1 25>
                    <"Dee" 3 3 21>
                   };
             
    Weekdays = {"Monday" "Tuesday" "Wednesday"};

    gives

     

     [[1 0 1]
             [0 1 1]]

    regards

     

    PS:

     

    Many how to with OPL at https://www.linkedin.com/pulse/how-opl-alex-fleischer/


    #DecisionOptimization
    #OPLusingCPLEXOptimizer