## Getting Started Example (dcmpg03)

```
/***************************************************************/
/*                                                             */
/*          S A S   S A M P L E   L I B R A R Y                */
/*                                                             */
/*    NAME: dcmpg03                                            */
/*   TITLE: Getting Started Example (dcmpg03)                  */
/* PRODUCT: OR                                                 */
/*  SYSTEM: ALL                                                */
/*    KEYS: OR                                                 */
/*   PROCS: OPTMODEL                                           */
/*    DATA:                                                    */
/*                                                             */
/* SUPPORT:                             UPDATE:                */
/*     REF:                                                    */
/*    MISC: Example 3 from the Special Case of Identical Blocks*/
/*          section of the Decomposition Algorithm chapter of  */
/*          Mathematical Programming.                          */
/*                                                             */
/***************************************************************/

proc optmodel;
var x{i in 1..3, j in 1..2} binary;

max f =    x[1,1] + 2*x[2,1] +   x[3,1] +
x[1,2] + 2*x[2,2] +   x[3,2];

con m1:    x[1,1] +   x[1,2]             =  1;
con m2:    x[2,1] +   x[2,2]             =  1;
con s1:  5*x[1,1] + 7*x[2,1] + 4*x[3,1] <= 11;
con s2:  5*x[1,2] + 7*x[2,2] + 4*x[3,2] <= 11;

s1.block = 0;
s2.block = 1;

solve with milp / presolver=none decomp=(logfreq=1);
print x;
quit;

```