/*----------------------------------------------------------------
                                                                 
            S A S   S A M P L E   L I B R A R Y                  
                                                                 
      NAME: optqpg01                                             
     TITLE: Getting Started Example (optqpg01)                   
   PRODUCT: OR                                                   
    SYSTEM: ALL                                                  
      KEYS: OR                                                   
     PROCS: OPTQP                                                
      DATA:                                                      
                                                                 
   SUPPORT:                             UPDATE:                  
       REF:                                                      
      MISC: Example from the Getting Started section of the      
            OPTQP chapter of Mathematical Programming.           
                                                                 
----------------------------------------------------------------*/


data gsdata;
   input field1 $ field2 $ field3 $ field4 field5 $ field6 @;
   datalines;
NAME     .      EXAMPLE    .             .         .
ROWS     .      .          .             .         .
N        OBJ    .          .             .         .
L        R1     .          .             .         .
G        R2     .          .             .         .
COLUMNS  .      .          .             .         .
.        X1     R1         1.0           R2        1.0
.        X1     OBJ        2.0           .         .
.        X2     R1        -1.0           R2        2.0
.        X2     OBJ        3.0           .         .
RHS      .      .          .             .         .
.        RHS    R1         1.0           .         .
.        RHS    R2         100           .         .
RANGES   .      .          .             .         .
BOUNDS   .      .          .             .         .
QUADOBJ  .      .          .             .         .
.        X1     X1         2.0           .         .
.        X1     X2         2.5           .         .
.        X2     X2         20            .         .
ENDATA   .      .          .             .         .
;



proc optqp data=gsdata
   primalout = gspout
   dualout   = gsdout;
run;


proc print data=gspout label;
run;