/*-----------------------------------------------------------------------------
                                                                              
            S A S   S A M P L E   L I B R A R Y                               
                                                                              
      NAME: tunere02                                                          
     TITLE: Tuning a Defined Set of Options on Multiple Problems (tunere02)   
   PRODUCT: OR                                                                
    SYSTEM: ALL                                                               
      KEYS:                                                                   
     PROCS: OPTMILP, PRINT                                                    
      DATA:                                                                   
                                                                              
   SUPPORT:                             UPDATE:                               
       REF:                                                                   
      MISC: Example 2 from the Option Tuner documentation.                    
                                                                              
-----------------------------------------------------------------------------*/

/* define libname that locates problems to be tuned */
libname a '.';

/*
filename air04 "path-to-air04.mps file";
%mps2sasd(mpsfile=air04, outdata=a.air04);

filename air05 "path-to-air05.mps file";
%mps2sasd(mpsfile=air05, outdata=a.air05);
*/

data probs;
   input name $1-8;
   datalines;
a.air04
a.air05
;

data optvals;
   input option $1-10 values $12-28 initial $30-32;
   datalines;
cutclique   -1, 0, 2          -1
cutgomory                      1
heuristics
;

proc optmilp maxtime=300;
   tuner problems=probs  optionvalues=optvals  optionmode=user
         maxtime=1200 tunerout=out;
run;

title "Tuner Output";
proc print data=out(obs=16);
run;