Preemptive Goal Programming Using Objective Functions
Suppose that we have a set of objective functions and knowing which are the most important. As in the pre–emptive case with constraints, goals are ranked from most to least important. Initially we find the optimal value of the first goal. Once we have found this value we turn this objective function into a constraint such that its value does not differ from its optimal value by more than a certain amount. This can be a fixed amount (or absolute deviation) or a percentage of (or relative deviation from) the optimal value found before. Now we optimize the next goal (the second most important objective function) and so on.
For example, suppose we have the following problem:
Sense | D/P | Deviation | ||||
---|---|---|---|---|---|---|
goal 1 (OBJ1): | 5x + 2y | – | 20 | max | P | 10 |
goal 2 (OBJ2): | –3x + 15y | – | 48 | min | D | 4 |
goal 3 (OBJ3): | 1.5x + 21y | – | 3.8 | max | P | 20 |
LIMIT: | 42x + 13y | ≤ | 100 |
For each goal the sense of the optimization (max or min) and the percentage (P) or absolute (D) deviation must be specified. For OBJ1 and OBJ3 a percentage deviation of 10% and 20%, respectively, have been specified, whilst for OBJ2 an absolute deviation of 4 units has been specified.
We start by maximizing the first objective function, finding that the optimal value is –4.615385. As a 10% deviation has been specified, we change this objective function into the following constraint:
5x + 2y – 20 | ≥ | –4.615385 – 0.14615385 |
Now that we know that for any solution the value for the former objective function must be within 10% of the best possible value, we minimize the next most important objective function (OBJ2) and find the optimal value to be 51.133603. Goal 2 (OBJ2) may then be changed into a constraint such that:
–3x + 15y – 48 | ≤ | 51.133603 + 4 |
and in this way we ensure that for any solution, the value of this objective function will not be greater than the best possible minimum value plus 4 units.
Finally we have to maximize OBJ3. An optimal value of 141.943995 will be obtained. Since a 20% allowable deviation has been specified, this objective function may be changed into the following constraint:
1.5x + 21y – 3.8 | ≥ | 141.943995 – 0.2141.943995 |
The solution of this problem is x=0.238062 and y=6.923186.
© 2001-2020 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.