## The Goal Programming Formulation

The Patchworks program uses a goal programming
formulation to simultaneously represent multiple objectives within the
planning process. A goal programming problem operates by trying to
minimize the difference between outcomes and target values for a series of
sub-objectives.

The difference between the outcome and the target is measured for each
planning period for each target. Outcomes that achieve or exceed target
levels are ignored. Each 'delta' between outcome and target can be scaled
and weighted as is appropriate for the particular problem. The overall
objective is to minimize the sum (over each sub-objective and each
planning period) of the scaled, weighted delta values.
The lower the summed delta values, the closer that the outcomes meet the
targets, and the better the solution.

It is easy to implement and assess multiple targets
(sub-objectives) using this formulation.
There is no requirement that the sub-objectives have the same units of
measure. This means that problems can be set up to jointly schedule to
achieve both harvest volume (m3/year), habitat retention (ha), and patch
size distributions (% area/size class/period).