J
Jaam
mees
s P
P.
. IIggnniizziioo
C
Caarrlloos
s R
Room
meerroo
Resou
Resource Mrce Managanagemenement Assot Associateciatess TTechnechnical Uical Univeniversitrsity of May of Madrid drid
Encyclopedia of Information Systems, Volume 2 Encyclopedia of Information Systems, Volume 2
Copyright 2003, Elsevier Science (USA). All rights reserved.
Copyright 2003, Elsevier Science (USA). All rights reserved.
489
489
I.
I. INTINTRODRODUCUCTIOTIONN II.
II. HISTHISTORICORICAL AL SKESKETCHTCH III.
III. THE MULTHE MULTIPLTIPLEX MODEX MODELEL IV
IV.. FORMS OFORMS OF THE AF THE ACHIEVEMCHIEVEMENT FUNCENT FUNCTIONTION V
V.. GENERAL FORGENERAL FORM OF THE MULM OF THE MULTIPLEX MTIPLEX MODELODEL
VI.
VI. THE MULTHE MULTIDITIDIMENMENSIONSIONAL DUALAL DUAL VII.
VII. ALGALGORITORITHMS FHMS FOR SOOR SOLUTILUTIONON VIII.
VIII. GOAL PROGOAL PROGRAMMINGRAMMING AND UTILG AND UTILITY OPTIMITY OPTIMIZAIZATIONTION IX
IX.. EXEXTETENSNSIOIONSNS X.
X. THTHE E FUFUTUTURERE
GLOSSARY
GLOSSARY
achievement function
achievement function The function that serves toThe function that serves to measure the achievement of the minimization of measure the achievement of the minimization of unwanted goal deviation variables in the goal unwanted goal deviation variables in the goal pro-gramming model.
gramming model. goal function
goal function A A mathematicamathematical l function function that that is is to to bebe achieved at a specified level (i.e., at a prespecified achieved at a specified level (i.e., at a prespecified “aspiration
“aspiration” ” level).level). goal program
goal program A A mathematical mathematical model, model, consisting consisting of of linear or nonlinear functions and continuous or linear or nonlinear functions and continuous or discrete variables, in which all
discrete variables, in which all functions have beenfunctions have been transformed into goals.
transformed into goals. multiplex
multiplex Originally this referred to the multiphaseOriginally this referred to the multiphase simplex
simplex algorithalgorithm employed tm employed to solve lino solve linear goalear goal programs. More recently it defines certain specific programs. More recently it defines certain specific models and methods employed in multiple- or models and methods employed in multiple- or single-object
single-objective ive optimization in general.optimization in general. negative deviation
negative deviation The amount of deviation for aThe amount of deviation for a given goal by which it is less than the aspiration given goal by which it is less than the aspiration level.
level. positive
positive deviationdeviation The amount of deviation for a givenThe amount of deviation for a given goal by which it exceeds the aspiration level. goal by which it exceeds the aspiration level. satisfice
satisfice An old Scottish word referring to the desire, An old Scottish word referring to the desire, in the real world, to find a practical solution to a in the real world, to find a practical solution to a given problem, rather than some utopian result for given problem, rather than some utopian result for an oversimplified model of the problem.
an oversimplified model of the problem.
GOAL PROGRAMMING,
GOAL PROGRAMMING, a powerful and effectivea powerful and effective methodology for the modeling, solution, and analysis methodology for the modeling, solution, and analysis of problems having multiple and conflicting goals of problems having multiple and conflicting goals
and objectives, has often been cited as being the and objectives, has often been cited as being the “workhorse” of multiple objective optimization (i.e., “workhorse” of multiple objective optimization (i.e., the solution to problems having multiple, conflicting the solution to problems having multiple, conflicting goals and objectives) as based on its extensive list of goals and objectives) as based on its extensive list of successful applications in actual practice. Here we successful applications in actual practice. Here we de-scribe the method and its history, cite its scribe the method and its history, cite its mathemati-cal models and algorithms, and chronicle its cal models and algorithms, and chronicle its evolu-tion from its original form into a potent methodology tion from its original form into a potent methodology that now incorporates techniques from artificial that now incorporates techniques from artificial in-telligence (particularly genetic algorithms and
telligence (particularly genetic algorithms and neuralneural networks). The article concludes with a discussion of networks). The article concludes with a discussion of recent extensions and a prediction of the role
recent extensions and a prediction of the role of goalof goal programming in real-world problem solving in the programming in real-world problem solving in the 21st century.
21st century.
I .
I . I N
I NT R
T RO D
O DU C
U CT I
T IO N
O N
A.
A. Def
Defini
initio
tions
ns and
and Ori
Origin
gin
Real-world decision problems—unl
Real-world decision problems—unlike those found ike those found inin textbooks—involve
textbooks—involve multiple,multiple,conflicting objectives andconflicting objectives and goals, subject to the satisfaction of various hard goals, subject to the satisfaction of various hard and and soft
soft constraintsconstraints. In . In short, and as the short, and as the experienced prac-experienced prac-titioner is well aware, problems that one encounters titioner is well aware, problems that one encounters outside
outside the classroom are invariably massive, messy,the classroom are invariably massive, messy, changeable, complex, and resist treatment via changeable, complex, and resist treatment via con- ventional
ventional approaches. approaches. Yet Yet the the vast vast majority majority of of tradi- tradi-tional approaches to such problems utilize tional approaches to such problems utilize conven-tional models and methods that idealistically and tional models and methods that idealistically and unrealistically (in most cases) presume the unrealistically (in most cases) presume the optimiza-tion of a single-objective subject to a set of rigid tion of a single-objective subject to a set of rigid
constraints. Goal programming was introduced in an attempt to eliminate or, at the least, mitigate this dis-quieting disconnect. Conceived and developed by Abraham Charnes and William Cooper, goal
pro-gramming was originally dubbed “constrained regres-sion.” Constrained regression, in turn, was and is a powerful nonparametric method for the development of regression functions (e.g., curve-fitting) subject to side constraints.
Charnes and Cooper first applied constrained re-gression in the 1950s to the analysis of executive com-pensation. Recognizing that the method could be ex-tended to a more general class of problems—that is, any quantifiable problem having multiple objectives and soft, as well as rigid constraints—Charnes and Cooper later renamed the method goal programming when describing it within their classic 1961 two-volume text Management Models and Industrial Applications of Linear Programming.
B. Philosophical Basis
The two philosophical concepts that serve to best dis-tinguish goal programming from conventional (i.e., single-objective) methods of optimization are the in-corporation of flexibility in constraint functions (as opposed to the rigid constraints of single-objective optimization) and the adherence to the philosophy of “satisficing” as opposed to optimization. Satisficing, in turn, is an old Scottish word that defines the desire to find a practical, real-world solution to a problem— rather than a utopian, optimal solution to a highly simplified (and very possibly oversimplified) model of that problem. The concept of satisficing, as opposed to optimization, was introduced by Herbert Simon in 1956.
As a consequence of the principle of satisficing, the “goodness” of any solution to a goal programming problem is represented by an achievement function, rather than the objective function of conventional op-timization. The goal programming achievement func-tion measures the degree of nonachievement of the problem goals. The specific way in which this nonachievement is measured characterizes the partic-ular subtype of goal programming approach that is being employed, and may be defined so as to include the achievement of commensurable as well as non-commensurable goals.
It should be emphasized that, because a goal pro-gramming problem is to be satisficed, it is possible that the solution derived may not fit, conveniently
and comfortably, into the concept of optimization or efficiency (i.e., nondominated solutions) as used by more conventional forms of mathematical modeling. This is because, in goal programming, we seek a use-ful, practical, implementable, and attainable solution rather than one satisfying the mathematician’s desire for global optimality. (However, if one wishes, it is rel-atively trivial to develop efficient, or nondominated solutions for any goal programming problem. That matter is briefly described in a section to follow.)
C. A Brief List of Applications
Goal programming’s label as the “workhorse” of multiple-objective optimization has been achieved by its successful solutions of important real-world prob-lems over a period of more than 50 years. Included among these applications are:
• The analysis of executive compensation for General Electric during the 1950s
• The design and deployment of the antennas for the Saturn II launch vehicle as employed in the Apollo manned moon-landing program
• The determination of a siting scheme for the Patriot Air Defense System
• Decisions within fisheries in the United Kingdom • A means to audit transactions within the financial
sector (e.g., for the Commercial Bank of Greece) • The design of acoustic arrays for U.S. Navy
torpedos
• As well as a host of problems in the general areas of agriculture, finance, engineering, energy, and resource allocation.
D. Overview of Material to Follow
In this article, the topic of goal programming is cov-ered in a brief but comprehensive manner. Sections to follow discuss the past, present, and future of goal programming as well as the models and algorithms for implementation. The reader having previous ex-posure to the original goal programming approach will (or should) immediately notice the many signifi-cant changes and extensions that occurred during the 1990s. As just one example, powerful and practical hy-brid goal programming and genetic algorithm mod-eling and solution methods will be discussed. Readers seeking more detailed explanations of any of the
ma-terial covered herein are referred to the Bibliography at the end of this article.
II. HISTORICAL SKETCH
As mentioned, goal programming was conceived by Abraham Charnes and William Cooper nearly a half century ago. The tool was extended and enhanced by their students and, later, by other investigators, most notably Ijiri, Jääskeläinen, Huss, Ignizio, Gass, Romero, Tamiz, and Jones.
In its original form, goal programming was strictly limited to linear multiple-objective problems. Ignizio, in the 1960s, extended the method to both nonlinear and integer models, developed the associated algorithms for these extensions, and successfully applied them to a number of important real-world problems, including, as previously mentioned, the design of the antenna systems for the Saturn II launch vehicle as employed in the Apollo manned moon-landing program. During that
same period, and in conjunction with Paul Huss, Ignizio developed a sequential algorithm that permits one to extend—with minimal modification—any single-objec-tive optimization software package to the solution of any class of goal programming models (the approach was also developed, independently, by Dauer and Kruger).
Later in that same decade, Ignizio developed the concept of the multidimensional dual, providing goal programming with an effective economic interpreta-tion of its results as well as a means to support sensi-tivity and postoptimality analysis. Huss and Ignizio’s contributions in engineering, coupled with the work of Charnes, Cooper, Ijiri, Jääskeläinen, Gass, Romero, Tamiz, Jones, Lee, Olson, and others in management science served to motivate the interest in multiple ob- jective optimization that continues today.
Goal programming is the most widely applied tool of multiple-objective optimization/multicriteria deci-sion making. However, today’s goal programming models, methods, and algorithms differ significantly from those employed even in the early 1990s. Goal programming, as discussed later, may be combined with various tools from the artificial intelligence sec-tor (most notably genetic algorithms and neural net- works) so as to provide an exceptionally robust and powerful means to model, solve, and analyze a host of real-world problems. In other words, today’s goal pro-gramming—while maintaining its role as the “work-horse” of multiple-objective decision analysis—is a much different tool than that described in most text-books, even those published relatively recently.
III. THE MULTIPLEX MODEL
A. Numerical Illustrations
Any single-objective problem, and most multiple-objective ones, can be placed into a model format that has been designated as the multiplex model, and then solved via the most appropriate version of a mul-tiplex (or sequential goal programming) algorithm. For example, consider a conventional (albeit simple) linear programming problem taking on the following traditional form:
Maximize z 10x 1 4x 2 (1)
Subject to: x 1 x 2 100 (2)
x 2 4 (3)
x 0 (4)
Ignoring the fact that this undemanding single-objective model can be solved by inspection, let us transform it into the multiplex form for the sake of il-lustration. To do so, we add a negative deviation vari-able to, and subtract a positive deviation varivari-able from, each constraint. In addition, we transform the maxi-mizing objective function into a minimaxi-mizing form by simply multiplying the original objective function by a negative one. The resultant model, in multiplex form, can be written:
Lexicographically minimize U
{(1 2), (10x 1 4x 2)} (5)
Satisfy: x 1 x 2 1 1 100 (6)
x 2 2 2 4 (7)
x , , 0 (8)
The new variables (i.e., the negative and positive de- viation variables, that have been added to the con-straints) indicate that a solution to the problem may result, for a given constraint i , in a negative deviation (i 0), or a positive deviation (i 0), or no devi-ation (i i 0). That is to say that we can under-achieve a goal (be it a hard or soft constraint), over-achieve it, or precisely satisfy it. In the multiplex formulation, the deviation variables that are to be minimized have been shown in boldface, as well as ap-pearing in the first (highest priority) term of the achievement function of function (5).
While this new formulation may appear unusual (at least to those schooled in traditional, single-objective optimization), it provides an accurate
representation of the linear programming problem orig-inally posed. To appreciate this, examine the achieve-ment function, as represented by formula (5).
The multiplex achievement function is a vector, rather than a scalar as in conventional single-objective optimization (e.g., linear programming). The terms in this vector are ordered according to priority. The first term [i.e.,1 2in function (5)] is reserved for the unwanted deviation variables for all rigid con-straints, or hard goals—restrictions that supposedly must be satisfied for the solution to be deemed feasi-ble. Any solution in which this first term takes on a value of zero is thus—in math programming terms— a feasible solution. In goal programming, such a so-lution is deemed “implementable,” inferring that it could actually be implemented in the real-world prob-lem under consideration.
Once the first term has been minimized, the next term (the second term, or 10x 1 4x 2 in this case) can be dealt with. The algorithm will seek a solution that minimizes the value of this second term, but this must be accomplished without degrading the value al- ready achieved in the higher priority term. And this is the manner in which one seeks the lexicographic minimum of an ordered vector.
Again, this formulation may appear unusual but it not only accurately represents the linear programming (LP) problem, it also indicates the way in which most commercial software actually solves LP models. Specifi-cally, LP problems are generally solved by the two-phase simplex algorithm, wherein the first phase attempts to find a feasible solution and the second seeks an optimal solution that does not degrade the feasibility achieved in phase 1. Multiplex algorithms simply extend this no-tion to any number of phases, according to the formu-lation employed to represent the given problem.
B. Multiplex Form of the
Goal Programming Problem
While any single-objective optimization problem can be represented in a manner similar to that described above, our interest lies in multiple-objective opti-mization and, more specifically, in goal programming (GP). Consequently, let us examine the multiplex model for a specific GP problem.
Consider the illustrative problem represented be-low, wherein there are two objective functions to be optimized, functions (9) and (10), and a set of con-straints to be satisfied. For purposes of discussion, we assume that the constraints of (11) through (13) are hard, or rigid.
Maximize z 1 3x 1 x 2
(profit per time period) (9) Maximize z 2 2x 1 3x 2
(market shares captured per time period) (10) Satisfy: 2x 1 x 2 50
(raw material limitations) (11) x 1 20
(market saturation level, product 1) (12) x 2 30
(market saturation level, product 2) (13)
x 0
(nonnegativity conditions) (14) If the reader cares to graph this problem, he or she will see that there is no way in which to optimize both objectives simultaneously—as is the case in virtually any nontrivial, real-world problem. However, the pur-pose of goal programming is to find a solution, or so-lutions, that simultaneously satisfice all objectives. But first these objectives must be transformed into goals. To transform an objective into a goal, one must assign some estimate (usually the decision maker’s prelimi-nary estimate) of the aspired level for that goal. Let’s assume that the aspiration level for profit [i.e., func-tion (9)] is 50 units while that of market shares [i.e., function (10)] is 80 units. Consequently the multi-plex model for the goal programming problem is shown below, wherein the two transformed objectives now appear as (soft) goals (19) and (20), respectively: Lexicographically minimize U
{(1 2 3), (4 5)} (15) Satisfy: 2x 1 x 2 1 1 50
(raw material limitations) (16) x 1 2 2 20
(market saturation level, product 1) (17) x 2 3 3 30
(market saturation level, product 2) (18) 3x 1 x 2 4 4 50
(profit goal) (19) 2x 1 3x 2 5 5 80
(market shares goal) (20)
x ,, 0
(nonnegativity conditions) (21) The multiplex model for the problem indicates—via the achievement function—that the first priority is to satisfy the hard goals of (16), (17), and (18). Note
that the nonnegativity conditions of (21) will be im-plicitly satisfied by the algorithm.
Once the deviation variables (i.e., 1 2 3) as-sociated with those hard goals have been minimized (albeit not necessarily to a value of zero), the associ-ated multiplex (or sequential GP) algorithm proceeds to minimize the unwanted deviations (i.e., 4 5) associated with the profit and market share goals, while not degrading the values of any higher ordered
achievement function terms.
Figure 1 serves to indicate the nature of the goal pro-gramming problem that now exists. Note that the solid lines represent the constraints, or hard goals, while the dashed lines indicate the original objectives—now trans-formed into soft goals. It is particularly important to note that those solutions satisficing this problem form a region, bounded by points A, B, C, and D, and including all points within and on the edges of the bounded re-gion. This contrasts with conventional optimization in which the optimal solution is most often a single point. The achievement functions for the linear pro-gramming and goal propro-gramming illustrations posed previously represent but two possibilities from a large and growing number of choices. We describe a few of the more common achievement functions in the next section.
IV. FORMS OF THE ACHIEVEMENT FUNCTION
The three earliest, and still most common forms of the Multiplex achievement function are listed here and discussed in turn:
1. Archimedean (also known as weighted goal programming)
2. Non-Archimedean (also known as lexicographic, or preemptive goal programming)
3. Chebyshev (also known as fuzzy programming).
A. Archimedean Goal Programming
The achievement function for an Archimedean GP model consists of exactly two terms. The first term al- ways contains all the unwanted deviation variables asso-ciated with the hard goals (rigid constraints) of the problem. The second term lists the unwanted deviation variables for all soft goals (flexible constraints), each weighted according to importance. Returning to our previous goal programming formulation, assume that the market shares goal [i.e., function (20)] is consid-ered, by the decision maker, to be twice as important as the profit goal. Consequently, the Archimedean form of the achievement function could be written as follows. Notice carefully that 5has now been weighted by 2: Lexicographically minimize U
{(1 2 3), (4 25)} (22) Note that, as long as the unwanted deviations are min-imized, we have achieved a satisficing solution. This may mean that we reach a satisficing solution, for our example, whether the profit achieved is 50 or more units. This infers a one-sided measure of achievement. If we wish to reward an overachievement of the profit, then either the model should be modified or we should employ one of the more recent developments in achievement function formatting. The latter mat-ter is discussed in a forthcoming section. For the mo-ment, however, our assumption is that we simply seek a solution to the achievement function given in Eq. (22), one that provides a satisficing result.
Realize that Archimedean, or weighted goal pro-gramming, makes sense only if you believe that nu-merical weights can be assigned to the nonachieve-ment of each soft goal. In many instances, goals are noncommensurable and thus other forms of the achievement function are more realistic. One of these is the non-Archimedean, or lexicographic achieve-ment function.
B. Non-Archimedean Goal Programming
The achievement function for a non-Archimedean GP model consists of two or more terms. As in the case of the Archimedean form, the first term always con-tains the unwanted deviation variables for all the hard goals. After that, the deviation variables for all soft
0 10 20 30 40 50 0 10 20 30 40 50 A B C D
goals are arranged according to priority—more specif-ically, a nonpreemptive priority.
To demonstrate, consider the problem previously posed as Archimedean GP. Assume that we are unable, or unwilling, to assign weights to the profit or market share goals. But we are convinced that the capture of market share is essential to the survival of the firm. It might then make sense to assign a higher priority to market share than to profit, resulting in the non- Archimedean achievement function given here:
Lexicographically minimize U
{(1 2 3), (5), (4)} (23) While the achievement function of Eq. (23) consists of but a single deviation variable for the second and third terms, the reader should understand that sev-eral deviation variables may appear in a given term— if you are able to weight each according to its per-ceived importance.
C. Chebyshev (Fuzzy) Goal Programming
There are numerous forms of Chebyshev, or fuzzy, goal programming but we restrict our coverage to just one in this subsection. The notion of Chebyshev GP is that the solution sought is the one that minimizes the maximum deviation from any single soft goal. Re-turning to our profit and market shares model, one possible transformation is as follows:
Minimize (24)
Satisfy: 2x 1 x 2 50
(raw material limitations) (25) x 1 20
(market saturation level, product 1) (26) x 2 30
(market saturation level, product 2) (27)
(U 1 z 1)/(U 1 L 1) (28)
(U 2 z 2)/(U 2 L 2) (29)
, x 0 (30)
where:
U k the best possible value for objective k (e.g.,
op-timize the problem without regard to any other ob- jectives but objective k )
L k the worst possible value for objective k (e.g.,
op-timize the problem without regard to objective k )
a dummy variable representing the worst devia-tion level
z k the value of the function representing the k th
ob- jective (e.g., z 1 3x 1 x 2 and z 2 2x 1 3x 2). Given the specific model of (24) through (30), the resulting Chebyshev formulation is simply:
Minimize
Satisfy: 2x 1 x 2 50
(raw material limitations) x 1 20
(market saturation level, product 1) x 2 30
(market saturation level, product 2)
(70 3x 1 x 2)/(70 60)
(110 2x 1 3x 2)/(110 70)
, x 0
This model may be easily transformed into the multi-plex form by means of adding the necessary deviation variables and forming the associated achievement function. However, it is clear that the Chebyshev model, as shown, is simply a single objective opti-mization problem in which we seek to minimize a sin-gle variable, . In other words, we seek to minimize the single worst deviation from any one of the prob-lem goals/constraints.
While the Archimedean, non-Archimedean, and Chebyshev forms of the achievement function are the most common, other, newer versions may offer cer-tain advantages. As mentioned, these newer forms of the achievement function are briefly described in a later section on extensions of GP.
V. GENERAL FORM OF THE MULTIPLEX MODEL
Whatever the form of the achievement function, the multiplex model takes on the following general form: Lexicographically minimize U
{c(1)T v , c(2)T v , ..., c(K )T v } (31)
Satisfy: F( v ) b (32)
v 0 (33)
where:
K the total number of terms (e.g., priority levels) in the achievement function
F( v ) the problem goals, of either linear or nonlin-ear form, and in which negative and positive devi-ation variables have been augmented
b the right-hand side vector
v the vector of all structural (e.g., x j ) and deviation
(i.e.,i and i ) variables
c(k )the vector of coefficients, or weights, of v in the k th term of the achievement function
c(K )T the transpose of c(k ).
We designate functions (31) through (33) as the primal form of the muliplex model. Starting with this primal form, we may easily derive the dual of any goal programming, or multiplex, model.
VI. THE MULTIDIMENSIONAL DUAL
The real power underlying conventional single-objective mathematical programming, particularly lin-ear programming, lies in the fact that there exists a dual for any conventional mathematical programming model. For example, the dual of a maximizing LP model, subject to type I () constraints, is a mini-mizing LP model, subject to type II () constraints. The property of duality allows one to exploit, for ex-ample, LP models so as to develop additional theories and algorithms, as well as provide a useful economic interpretation of the dual variables.
One of the alleged drawbacks of goal program-ming has been the “lack of a dual formulation.” It is difficult to understand why this myth has endured as the dual of goal programming problems was devel-oped, by Ignizio, in the early 1970s. It was later ex-tended to the more general multiplex model in the 1980s. However, space does not permit any exhaustive summary of the multidimensional dual (MDD) and thus we present only a brief description.
We listed the general form of the multiplex model in (31) through (33). Simply for sake of discussion, let’s examine the dual formulation of a strictly linear multi-plex model, taking on the primal form listed below: PRIMAL: Lexicographically minimize U
{c(1)T v , c(2)T v , ..., c(K )T v } (34)
Satisfy: Av b (35)
v 0 (36)
where:
K the total number of terms (e.g., priority levels) in the achievement function
v the vector of all structural (e.g., x j ) and deviation
(i.e.,i and i ) variables
c(k )the vector of coefficients, or weights, of v in the k th term of the achievement function
Av b are the linear constraints and goals of the problem, as transformed via the introduction of negative and positive deviation variables.
If you are familiar with single-objective optimization, you may recall that the dual of a linear programming model is still a linear programming model. However, in the case of a GP, or multiplex model, its dual—the mul-tidimensional dual—takes on the form of a model in which (1) the “constraints” have multiple, prioritized right-hand sides and (2) the “objective function” is in the form of a vector. More specifically, the general form of the multidimensional dual is given as:
DUAL:
Find Y so as to lexicographically maximize w bT Y
(37) Subject to: A T Y ⇐ c(1)
, c(2), ..., c(K )
(38) Y , the dual variables, are unrestricted
and multidimensional (39) Note that the symbol ⇐ indicates the lexicographic
na-ture of the inequalities involved (i.e., the left-hand side of each function is lexicographically less than or equal to the multiple right-hand sides). Physically, this means that we first seek a solution subject to the first column of right-hand side elements. Next, we find a solution sub- ject to the second column of right-hand side elements—
but one that cannot degrade the solution achieved for the previous column of right-hand side values. We con-tinue in this manner until a complete set of solutions has been obtained for all right-hand side values.
The transformation from primal to dual may be summarized as follows:
• A lexicographically minimized achievement function for the primal translates into a set of lexicographically ordered right-hand sides for the dual.
• If the primal is to be lexicographically minimized, the dual is to be lexicographically maximized. • For every priority level (achievement function
term) in the primal, there is an associated vector of dual variables in the dual.
• Each element of the primal achievement function corresponds to an element in the right-hand side of the dual.
• The technological coefficients of the dual are the transpose of the technological coefficients of the primal.
The development of the MDD for goal programming (or general multiplex) models leads immediately to
both a means for economic interpretation of the dual variable matrix as well as supporting algorithms for solution. A comprehensive summary of both aspects, as well as numerous illustrative numerical examples, are provided in the references.
VII. ALGORITHMS FOR SOLUTION
A. Original Approach
As noted, algorithms exist for the solution of goal programming (as well as any problem that can be placed into the multiplex format) problems in either the primal or dual form. The original emphasis of goal programming was, as discussed, on linear goal programs, and the GP algorithms derived then (by Charnes and Cooper, and their students) were “mul-tiphase” simplex algorithms. That is, they were based on a straightforward extension of the two-phase sim-plex algorithm.
B. Serial Algorithms: Basic Approach
Assuming that a serial algorithm (one in which only a single solution exists at a given time, as is the case with the well-known simplex algorithm for linear pro-gramming) is used to solve a goal programming prob-lem, the fundamental steps are as follows:
Step 1. Transform the problem into the multiplex format.
Step 2. Select a starting solution. [In the case of a lin-ear model, the starting solution is often the one in which all the structural variables (i.e., the x j ’s) are
set to zero.]
Step 3. Evaluate the present solution (i.e., determine the achievement function vector).
Step 4. Determine if a termination criterion has been satisfied. If so, stop the search process. If not, go to step 5. [Note that, in the case of linear models, the shadow prices (dual variable values) are used to de-termine if optimality has been reached.]
Step 5. Explore the local region about the present best solution to determine the best direction of move-ment. (For linear models, we move in the direction indicated by the best single shadow price.)
Step 6.Determine how far to move in the direction of best improvement, and then do so. (In linear mod-els, this is determined by the so-called “Theta” or “blocking variable” rule.)
Step 7. Repeat steps 3 through 6 until a termination rule is satisfied.
C. Parallel Algorithms: Basic Approach
The references provide details and illustrations of the use of such serial multiplex algorithms, for linear, nonlinear, and integer goal programming problems. However, with the advent of hybrid multiplex algo-rithms, the use of parallel algorithms is both possible and, in the minds of some, preferable.
A parallel algorithm follows somewhat the same steps as listed previously for serial algorithms. The pri-mary difference is that rather than employing a single solution point at each step, multiple points—or pop-ulations of solutions—exist at each iteration (or “gen-eration”) of the algorithm. There are two very im-portant advantages to the employment of parallel algorithms in goal programming. The first is that, if the algorithm is supported by parallel processors, the speed of convergence to the final solution is signifi-cantly increased. The second advantage is less well known, but quite likely even more significant. Specif-ically, it would appear from the evidence so far that solutions to certain types (more specifically, those em-ploying evolutionary operations) of parallel algo-rithms are far more stable, and less risky, than those derived by conventional means.
D. Hybrid Algorithm Employing
Genetic Algorithms
The basics of a hybrid goal programming/genetic al-gorithm for solving multiplex models are listed below. Such an approach has been found, in actual practice, to achieve exceptionally stable solutions—and do so rapidly. Furthermore, it is particularly amenable to parallel processing.
Step 1. Transform the problem into the multiplex format.
Step 2. Randomly select a population of trial solutions (typically 20 to a few hundred initial solutions will compose the first generation).
Step 3. Evaluate the present solutions (i.e., determine the achievement function vector for each member of the present population).
Step 4. Determine if a termination criterion has been satisfied. If so, stop the search process. If not, go to step 5.
Step 5. Utilize the genetic algorithm operations of se-lection, mating, reproduction, and mutation to de- velop the next generation of solutions (see the
ref-erences for details on genetic algorithms).
Step 6. Repeat steps 3 through 5 until a termination rule is satisfied.
The parallel algorithm developed via combining goal programming with genetic algorithms offers a conve-nient way in which to address any single or multiob- jective optimization problem, be they linear, nonlin-ear, or discrete in nature. The single disadvantage is that global optimality cannot be ensured.
VIII. GOAL PROGRAMMING
AND UTILITY OPTIMIZATION
Although goal programming is developed within a satisficing framework, its different variants can be in-terpreted from the point of view of utility theory as highlighted in this section. This type of analysis helps to clarify goal programming variant as well as to pro- vide the foundations of certain extensions of the
achievement function.
Let us start with lexicographic goal programming, where the noncompatibility between lexicographic or-derings and utility functions is well known. To properly assess the effect of this property on the pragmatic value of this approach, we must understand that the reason for this noncompatibility is exclusively due to the nonconti-nuity of preferences underlying lexicographic orderings. Therefore, a worthwhile matter of discussion would not be to argue against lexicographic goal program-ming because it implicitly assumes a noncontinuous system of preferences but to determine if the charac-teristics of the problem situation justify or not a system of continuous preferences. Hence, the possible prob-lem associated with the use of the lexicographic variant does not lie in its noncompatibility with utility func-tions, but in the careless use of this approach. In fact, in contexts where the decision maker’s preferences are clearly continuous, a model based on nonpreemptive weights should be used. Moreover, it is also important
to note that a large number of priority levels can lead to a solution where every goal, except those situated in the first two or three priority levels, is redundant. In this situation, the possible poor performance of the model is not due to the lack of utility meaning of the achievement function but to an excessive number of priority levels or to overly optimistic aspiration levels (i.e., close to the ideal values of the goals).
Regarding weighted (Archimedean) goal pro-gramming, we know that this option underlies the maximization of a separable and additive utility func-tion in the goals considered. Thus, the Archimedean solution provides the maximum aggregate achieve-ment among the goals considered. Consequently, it seems advisable to test the separability between at-tributes before the decision problem is modeled with the help of this variant.
Regarding Chebyshev goal programming, it is rec-ognized that to this variant underlies a utility function where the maximum (worst) deviation level is mini-mized. In other words, the Chebyshev option under-lies the optimization of a MINMAX utility function, for which the most balanced solution between the achievement of the different goals is achieved.
These insights are important for the appropriate selection of the goal programming variant. In fact, the appropriate variant should not be chosen in a mechanistic way but in accordance with the decision maker’s structure of preferences. These results also give theoretical support to the extensions of the achievement function to be commented on in the next section.
I X. E XT EN SI ON S
A. Transforming Satisficing
Solutions into Efficient Solutions
The satisficing logic underlying goal programming implies that its formulations may produce solutions that do not fit classic optimality requirements like ef-ficiency; that is, solutions for which at least the achieve-ment of one of the goals can be improved without de-grading the achievement of the others. However, if one wishes, it is very simple to force the goal pro-gramming approach to produce efficient solutions. To secure efficiency, it is enough to augment the achievement function of the multiplex formulation with an additional priority level where the sum of the wanted deviation variables is maximized.
For instance, in the example plotted in Fig. 1 the closed domain ABCD represents the set of satisficing solutions and the edge BD the set of satisficing and ef-ficient solutions. Thus, if the achievement function of the multiplex model (15) through (21) is augmented with the term (4 5) placed in a third priority
level, then the lexicographic process will produce so-lution point B, a point that is satisficing and efficient at the same time. Note that there are more refined methods capable of distinguishing the efficient goals from the inefficient ones, as well as simple techniques to restore the efficiency of the goals previously classi-fied as inefficient. Technical details about this type of procedure can be found in the Bibliography.
B. Extensions of the Achievement Function
According to the arguments developed in Section VIII, from a preferential point of view the weighted
and the Chebyshev goal programming solutions rep-resent two opposite poles. Thus, since the weighted option maximizes the aggregate achievement among the goals considered, then the results obtained with this option can be biased against the performance achieved by one particular goal. On the other hand, because of the preponderance of just one of the goals, the Chebyshev model can provide results with poor aggregate performance between different goals. The extreme character of both solutions can lead in some cases to possibly unacceptable solutions by the decision maker. A possible modeling solution for this type of problem consists of compromising the aggregate achievement of the Archimedean model with the MINMAX (balanced) character of the Chebyshev model. Thus, the example of the ear-lier section can be reformulated with the help of the following multiplex extended goal programming model:
Lexicographically minimize U
{(1 2 3), [(1 Z ) Z (4 5)]} (40) Satisfy: 2x 1 x 2 1 1 50
(raw material limitations) (41) x 1 2 2 20
(market saturation level, product 1) (42) x 2 3 3 30
(market saturation level, product 2) (43) 3x 1 x 2 4 4 50
(profit goal) (44) 2x 1 3x 2 5 5 80
(market shares goal) (45) (1 Z ) 4 0 (46) (1 Z ) 5 0 (47)
, x , , 0 (48)
where the parameter Z weights the importance at-tached to the minimization of the sum of unwanted deviation variables. For Z 0, we have a Chebyshev goal programming model. For Z 1 the result is a weighted goal programming model, and for other val-ues of parameter Z belonging to the interval (0, 1) in-termediate solutions between the solutions provided by the two goal programming options are considered. Hence, through variations in the value of parame-ter Z , compromises between the solution of the max-imum aggregate achievement and the MINMAX so-lution can be obtained. In this sense, this extended formulation allows for a combination of goal pro-gramming variants that, in some cases, can reflect a
decision maker’s actual preferences with more accu-racy than any single variant.
Other extensions of the achievement function have been derived taking into account that in all tradi-tional goal programming formulations there is the underlying assumption that any unwanted deviation with respect to its aspiration level is penalized ac-cording to a constant marginal penalty. In other words, any marginal change is of equal importance no matter how distant it is from the aspiration level. This type of formulation only allows for a linear rela-tionship between the value of the unwanted deviation and the penalty contribution. This corresponds to the case of the achievement functions underlying a weighted goal programming model or to each
prior-ity level of a lexicographic model.
This type of function has been termed a one-sided penalty function, when only one deviation variable is unwanted, or V-shaped penalty function when both deviation variables are unwanted. However, other penalty function structures have been used. Thus, we have the two-sided penalty functions when the deci-sion maker feels satisfied when the achievement of a given goal lies within a certain aspiration level inter- val, or the U-shaped penalty function if the marginal penalties increase monotonically with respect to the aspiration levels. Several authors have proposed im-provements and refinements to the goal program-ming model with penalty functions. Details about this type of modeling are described in the Bibliography.
C. Goal Programming and MCDM
Goal programming is but one of several approaches possible within the broader field of multiple criteria decision making (MCDM). It is a common practice within MCDM to present its different approaches in an independent, disjoint manner, giving the impres-sion that each approach is completely autonomous. However, this is not the case. In fact, significant simi-larities exist among most of the MCDM methods. In this sense, the multiplex approach presented in Sec-tion V is a good example of a goal programming structure encompassing several single- and multiple-objective optimization methods.
Furthermore, goal programming can provide a uni-fying basis for most MCDM models and methods. With this purpose, extended lexicographic goal program-ming has recently been proposed. To illustrate this concept, consider the representation provided in Eqs. (49) through (52):
Lexicographically minimize U
{1 1 1
i h 1(i i i i ) p , ..., j j
j
i h j
(i i i i ) p , ...,
Q Q Q
i h Q
(i i i i ) p } (49)
Satisfy: j (i i i i ) j 0
i h j j {1, ..., Q } (50)
f i (x) i i t i i {1, ..., q } (51)
, , 0 x F (52)
where p is a real number belonging to the interval [1,∞) or ∞. Parameters
i andi are the weights
re-flecting preferential and normalizing purposes attached to the negative and positive variables of the i th goal, re-spectively; j and j are control parameters; and h j
rep-resents the index set of goals placed in the j th priority level. The block of rigid constraints xF, can be
trans-ferred to an additional first priority level in order to for-mulate the model within a multiplex format.
If the above structure is considered the primary model,then it is easy to demonstrate that an important number of multiple-criteria methods are just secondary models of the extended lexicographic goal program-ming model. Thus, the following multicriteria meth-ods can be straightforwardly deduced just by applying different parameter specifications to the above model: 1. Conventional single-objective mathematical
programming model
2. Nonlinear and linear weighted goal programming 3. Lexicographic linear goal programming
4. Chebyshev goal programming 5. Reference point method
6. Compromise programming (L1 bound) and (L∞
bound or fuzzy programming with a linear membership function)
7. Interactive weighted Tchebycheff procedure. The use of goal programming as a unifying frame- work seems interesting at least for the following rea-sons. The extended lexicographic goal programming model stresses similarities between MCDM methods that can help reduce gaps between advocates of differ-ent approaches. Moreover, this unifying approach can become a useful teaching tool in the introduction of MCDM, thus avoiding the common presentation based upon a disjoint system of methods. Finally, the extended lexicographic goal programming approach allows us to
model decision-making problems for which a good rep-resentation of a decision maker’s preferences requires a mix of goal programming variants. In short, this type of general formulation can increase the enormous po-tential flexibility inherent to goal programming.
X . T HE F UT UR E
In the nearly half century since its development, goal programming has achieved and maintained its repu-tation as the workhorse of the multiple-objective op-timization field. This is due to a combination of sim-plicity of form and practicality of approach. The more recent extensions to the approach have, thankfully, not negatively impacted on these attributes.
We envision a future in which goal programming will continue to utilize methods from other sectors, particularly artificial intelligence. The most signifi-cant advances, from a strictly pragmatic perspective, involve combining goal programming with evolution-ary search methods, specifically genetic algorithms. Such extensions permit the rapid development of ex-ceptionally stable solutions—the type of solutions needed in most real-world situations.
SEE ALSO THE FOLLOWING ARTICLES
Decision Support Systems • Evolutionary Algorithms • Exec-utive Information Systems • Game Theory • Industry, Artifi-cial Intelligence in • Model Building Process • Neural Net- works • Object-Oriented Programming • Strategic Planning
for/of Information Systems • Uncertainty
BIBLIOGRAPHY
Charnes, A., and Cooper, W. W. (1961). Management models and industrial applications of linear programming, Vols. 1 and 2. New York: John Wiley.
Charnes, A., and Cooper, W. W. (1977). Goal programming and multiple objective optimization. Part I. European Journal of Operational Research, Vol. 1, 39–54.
Dauer, J. P., and Kruger, R. J. (1977). An iterative approach to goal programming. Operational Research Quarterly, Vol. 28, 671–681.
Gass, S. I. (1986). A process for determining priorities and weights for large- scale linear goal programming models. Journal of the Operational Research Society, Vol. 37, 779–784. Ignizio, J. P. (1963). S-II trajectory study and optimum antenna
placement, Report SID-63. Downey, CA: North American Aviation Corporation.
Ignizio, J. P. (1976). Goal programming and extensions. Lexington Series. Lexington, MA: D. C. Heath & Company.
Ignizio, J. P. (1985). Introduction to linear goal programming. Bev-erly Hills, CA: Sage Publishing.
Ignizio, J. P., and Cavalier, T. M. (1994). Linear programming. Upper Saddle River, NJ: Prentice Hall.
Markowski, C. A., and Ignizio, J. P. (1983). Theory and prop-erties of the lexicographic LGP dual. Large Scale Systems, Vol. 5, 115–121.
Romero, C. (1991). Handbook of critical issues in goal program- ming. Oxford, UK: Pergamon Press.
Romero, C. (2001). Extended lexicographic goal program-ming: A unifying approach. OMEGA, International Journal of Management Science, Vol. 29, 63–71.
Simon, H. A. (1956). Rational choice and the structure of the environment. Psychological Review, Vol. 63, 129–138.
Tamiz, M., and Jones, D. (1996). Goal programming and Pareto efficiency. Journal of Information and Optimization Sciences, Vol. 17, 291–307.
Tamiz, M., Jones, D. F., and Romero, C. (1998). Goal pro-gramming for decision making: An Overview of the current state-of-the-art. European Journal of Operational Research, Vol. 111, 569–581.
Vitoriano, B., and Romero, C. (1999). Extended interval goal programming. Journal of the Operational Research Society, Vol. 50, 1280–1283.