Pattern Separation via Mathematical Programming Pattern Separation via Mathematical Programming