Download - Goal Programming

Transcript

A PRESENTATION ON GOAL PROGRAMMING

PRESENTED BY:MANAN SHUKLA (2012pmm5265) CHARAN SINGH MEENA(2012pmm5004)

INTRODUCTION The conventional linear programming models are based on the optimization of

single objective function. However , there are situation where multiple (possibly conflicting) objectives may be more appropriate. For example, aspiring politician may promise to reduce the national debt and simultaneously offer income tax relief. In such situations it may be impossible to find a solution that optimizes the

conflicting objectives. This problem can be overcome by a technique known as GOAL PROGRAMMING in which we try to seek a COMPROMISE OR EFFICIENT SOLUTION based on the relative importance of each objective. Goal programming , a powerful and effective methodology for the modeling,

solution and analysis of problems have multiple and conflicting goals and objectives, has often been cited as being the WORKHORSE of multiple objective function

HISTORY AND PHILOSOPHY The roots of GP lie in a paper by Charnes et al. in 1955 in which they deal with executive compensation methods. Recognizing that the method could be extended to a more general class of problems- that is, any quantifiable problems having multiple objective and soft as well as rigid constraint Charnes and Cooper later renamed the method goal programming when describing their classic two volume text Management Models and Industrial Applications of Linear programming. The two philosophical concepts that serve to best distinguish goal programming from conventional (i.e. single objectives) methods of optimization are the incorporation of flexibility in in constraint function and the adherence to the philosophy of satisficing as opposed to optimization. As a consequence of the principle of satisficing, the goodness of any solution to a goal programming problem is represented by achievement function rather than objective function of conventional optimization

Differences Between GP and LPLinear programming LP Goal programming GP

Goal and objectivesTargets or constraints Objective functions

One primary- to be maximized or minimizedInflexible, no deviations are allowed Maximize (minimize) the value of the primary goal

All objectives are ranked each with a targetFlexible, deviations are acceptable, constraints can be relaxed Minimize the sum of the undesirable deviations (weighted by their relative importance) Satisfaction Inefficient, few computer packages Few, but increasing

Theory Computer programs Applications

Optimization Very efficient, many packages Many and varied

CONCEPT OF REAL AND GOAL CONSTRAINTS The real constraints are absolute restrictions on the decision variables, while the goal constraints are the conditions one would like to achieve but are not mandatory. For example- a real constraint is given by

x1 + x2 = 3requires all possible values of x1 + x2 to always equal to 3. As opposed to this, a goal requiring x1+ x2 =3 is not mandatory, and we can choose values of x1 + x2 3 as well as x1 + x2 3. In a goal constraints, positive and negative deviational variables are introduced as follows

x1 + x2 + d1- - d1+ = 3note that if d1- > 0, then x1 + x2 < 3 and if d1+ > 0 then x1 + x2 >3.

Formulation of GP Problems1. Deviations: the amount away from the desired standards or objectives: Overachievement (d+i 0) vs. Underachievement (d-i 0) Desirable vs. Undesirable Deviations: (depend on the objectives)

Max goals () - the more the better - d+i desirable. Min goals () - the less the better - d-i desirable. Exact goals (=) - exactly equal - both d+i and d-i undesirable.

In GP, the objective is to minimize the (weighted) sum of undesirable

deviations (all undesirable d+i and d-i 0 ). For each goal, at least, one of d+i and d-I must be equal to "0". Goals (), or the "surplus" for Max Goals ().

Positive desirable deviations are in fact the indication of "slack" for Min

Formulation of GP Problems2. Ranking Objectives: (Ordinal/Cardinal/Mix of Two) Ordinal: only indicate the importance of goals by ranking order (Pi) - ("Absolute Priorities"). Cardinal: express importance of goals by assigning scaled weights (Wi) - ("Relative Preference").Different objectives may be measured in different scales [($)(%)]. Equal weights can be used if all goals are viewed equal important.

AN EXAMPLE OF FORMULATION OF GP Consider a single point, single pass turning operation in metal cutting wherein an optimum set of cutting speed and feed rate is to be chosen which balances the conflict

between metal removal rate and tool life as well as being within the restriction of horse power , surface finish and other cutting conditions. In developing the mathematical model of this problem, the following constraints will be considered : Constraint 1: maximum permissible feed f f1 where f1 max. permissible feed and f is the given feed in inches per revolution. Constraint 2: maximum cutting speed v v1 where v1 = DN/12 D = mean work diameter in inches N = maximum spindle speed available on the machine, rpm.

vf p1(3300)/ctdc where , and ct are constants. The depth of cut in inches,dc, is fixed at a given value. For a given p1, ct , dc and the right hand side of above constraint is constant. Hence vf constant Constraint 4 : non-negativity restrictions on feed rate and speed v,f 0

in optimizing metal cutting there are a number of optimality criteria which can be considered. Suppose we consider the following objectives in our optimization:i. Maximize metal removal rate ii. Maximize tool life (TL)

The expression for metal removal rate (mrr) isMRR = 12vfdc cu in/min The tool life for a given depth is given as:

TL = A/v1/nf1/n1Now the management considers that a given single point , single pass turning operation will be operating at an acceptable efficiency level if the following goals are met: i. The MRR must be greater than or equal to a given rate M1 ii. The tool life (TL) must equal to T1(min) Let us take MRR goal first, 12vfdc + d1- - d1+ = M1 Where d1- represents the amount by which the MRR goal is underachieved, and d1+ represents any overachievement of the MRR goal. Similarly the TL goal can be expressed as A/v1/nf1/n1 + d2- - d2+ = T1

Since the objective is to have a metal removal rate of atleast M1, the objective function must be set up so that a high penalty will be assigned to the underachievement variable d1-. No penalty will be assigned to d1+. To achieve a tool life of T1 penalties must be assigned to both d2- and d2+ so that both of these are minimized. Accordingly, the goal programming objective function for this problem is: Minimize: Z = P1d1- + P2(d2- + d2+) where P1 and P2 are non-numerical preemptive priority factors such that

P1>>P2 (i.e. P1 is infinitely larger than P2)To express the problem as linear goal programming problem, M1 is replaced by M2, where M2 = M1/12dc

The goal is replaced by T2, whereT2 = A/T1 and then logarithms are taken of the goal and constraints.

Minimize: Z = P1d1- + P2 (d2- + d2+) Subjected to: log v + log f + d1- + d1+ = log M2 1/n log v + 1/n1 log f + d2- + d2+ = log T2 log f log f1 log v log v1 log v + log f log constant log v, log f, d1-, d1+, d2-, d2+ 0 (MRR goal) (TL goal) (f1 constraint) (v1 constraint) ( H.P. constraint)

Here it is important to note that the last three inequalities are real constraint on feed, speed and H.P that must be satisfied all times, whereas the equation for MRR and TL are simply goal constraint

TYPES OF GOAL PROGRAMMING MODEL There are mainly two types of goal programming which are most

commonly used : i. Archimedean or Weighted Goal Programming ii. Non-Archimedean or Lexicographic or Preemptive Goal programming) Here it is important to note that although numerous variant of the GP

model has been developed such as: Fuzzy GP introduced by Zimmermann, MINMAX GP introduced by Flavell, Interactive GP, Imprecise GP, constrained regression GP etc. but Tamiz in his work A Review of Goal Programming and its Application, Annals of Operations Research 58 (1993) 39-53 showed that Weighted GP and the Lexicographical GP are the most popular and used variant of GP model. Between LGP and WGP, LGP is more extensively used.

ARCHIMEDEAN OR WEIGHTED GOAL PROGRAMMING In the weighted goal programming, the single objective function is the

weighted sum of the functions representing the goals of the problem. The general form of weighted goal programming can be expressed as follows:Minimize: Z = Subject to: = + + - =(wi di +wi di )

+ di- - di+ = bi

for all i

xj, di-, di+ 0

for all i and j

The above equation represents the objective function, which minimizes

the weighted sum of the deviational variables and the goal constraints, relating the decision variables (xj) to the targets (bi).

If the relative weights (wi+ and wi-) can be specified by the management, then the goal programming problem reduces to simple linear program. Unfortunately, it is difficult or almost impossible in many cases to secure a numerical approximation to the weights. In reality, goals are usually incompatible (i.e. incommensurable) and some goals can be achieved only at the expense of some other goals and therefore goal programming uses ordinal ranking or preemptive priorities to the goals.

PREEMPTIVE GOAL PROGRAMMING Preemptive goal programming is used when there are such major differences in the importance of the goals that it is not feasible to assign meaningful weights

to these goals to measure their relative importance. Therefore, the goals are listed in the order of their importance. Preemptive GP then begins with by focusing solely on one of the goals, and so on through the rest of goals in order. Thus, while this approach is focusing on

one of the goals, it is preempting any consideration yet of less important goals. The objective function in preempting GP takes the following form:

=

(wi

+d + +w -d -) i i i

Where Pk represents priority k with the assumption that Pk is much larger

than Pk+1 and wik+ are the weights assigned to the ith deviational variables at priority k. in this manner, lower priority goals are considered only after attaining higher priority goals.

PARTITIONING ALGORITHM Goal programming problems can be solved efficiently by

the partitioning algorithm developed by Arthur and Ravindran. It is based on the fact that the definition of preemptive priorities implies that higher order goals must be optimized before lower goals are even considered Their procedure consists of solving a series of linear programming sub-problems by using the solution of the higher priority problem as the starting solution for the lower priority problem

Set K = 1

Are there real constraints? NO Read the objective function and the goal constraint for Pk. Select the initial basic feasible solution

Yes

Perform phase 1

K = K+1

Eliminate columns with positive relative cost coefficients

Is the solution optimal?Yes

NO

Perform simplex operation

YesDo alternate solutions exist? NO Calculate the achievements of the remaining goals and priorities Yes

Are there more priorities?

NO

Print optimal solution

Flowchart of the Partitioning Algorithm

Example: Suppose a company has two machines for manufacturing a

product. Machine 1 makes two units per hour, while machine 2 makes three units per hour. The company has an order for 80 units. Energy restrictions dictate that only one machine can operate at one time. The company has 40 hours of regular machining time, but overtime is available. It costs $4 to run machine 1 for one hour, while machine 2 costs $5 per hour. The companys goal in order of importance are to: 1. 2. 3. 4. Meet the demand of 80 units exactly. Limit the machine overtime to 10 hours. Use the 40 hours of normal machining time. Minimize cost

STEP 1: PROBLEM FORMULATION Let xj represent the number of hours machine j is operating, the goal programming model is: Minimize: Z = P1(d1- + d1+) + P2d3+ + P3(d2- + d2+) + P4d4+ Subject to: 2x1 + 3x2 + d1- - d1+ =80 x1 + x2 + d2- - d2+ =40 d2+ + d3- - d3+ = 10 4x1 + 5x2 + d4- - d4+ = 0 xi, di-, di+ 0 for all i where P1, P2, P3, P4 represent the preemptive priority factors such that P1 >> P2 >> P3 >> P4. Note that the target for cost is set at an unrealistic level of zero. Since the goal is to minimize d4+, this is equivalent to minimize the total production cost. (1) (2) (3) (4) (5)

In the above formulation eq. (4) do not conform to the general model given by other equations where no goal constraint involves a deviational variable defined earlier. However, if d2+>0, then d2- = 0 and from eq. (3) d2+ = x1 + x2 40 which when substituted into eq.(4) yields x1 + x2 + d3- - d3+ =50 thus, the problems fits the general model where each deviational variable appear in only one goal constraint, and has at most one positive weight in the objective function.

STEP 2: Applying partitioning algorithm The sub problem S1 for priority P1 to be solved initially is given below: S1: Minimize: Z = d1- + d1+ Subject to: 2x1 + 3x2 + d1- - d1+ = 80 x1, x2, d1-, d1+ 0

the solution to sub problem S1 by the simplex method is given in table (1). However, alternate optima exist to sub problem S1. Since the relative costs of d1- and d1+ are positive, they cannot enter the basis later; else they destroy the optimality achieved for priority 1. Hence, they eliminated from the tableau from further consideration

P1: cj cb 1 basis d1-

0 x1 2 -2 2/3 0

0 x2 3 -3 1 0

1 d11 0 1/3 1

1 d1+ -1 2 -1/3 1 b 80 Z1= 80 80/3 Z1 = 0

P1: cj zj 0 x2

P1: cj zj

Table 1 SOLUTION TO SUBPROBLEMS 1

We now add the goal constraint assigned to the second priority: x1 + x2 + d3- - d3+ = 50 (6)

since x2 is a basic variable in the present optimal tableau (table 1), we perform the row operation on the above equation to eliminate x2, and we get 1/3x1 + d3- - d3+ = 70/3 (7)

The above equation is now added to the present optimal tableau after deleting the corresponding to d1- and d1+. This is shown in table 2. The objective function of sub problem S2 is given as: Minimize: Z2 = d3+ Since the right hand side of the new goal constraint (6) remained non negative after the row reduction (7), d3- was entered as the basic variable in the new tableau. If on the other hand the right hand side had become negative, the row will be multiplied by -1 and d3+ would become new basic variable.

P2: cj cb Basis 0 0 x2 d3-

0 x1 2/3 1/3 0

0 x2 1 0 0

0 d30 1 0

1 b d3 + 0 -1 1 80/3 70/3 Z2 = 0

P2: cj - zj

TABLE 2: SOLUTION TO PROBLEM S2

Table 2 indicates that we have found an optimal solution to S2. Since alternate optimal solution exist, we add the goal constraint and objective corresponding to priority 3. We also eliminate the column corresponding to d3+. The goal constraint assigned to P3, given by x1 + x2 + d2- + d2+ =40 is added after eliminating x2. This is shown in table 3. Now x1 can enter the basis to improve priority 3 goal, while maintaining the levels achieved for priorities 1 and 2 is replaced by x1 and the next solution become optimal for sub problem S3. Moreover the solution obtained is unique. Hence it is not possible to improve the goal corresponding to priority 4 and we terminate the partitioning algorithm. It is only possible to substitute the values of decision variables (x1= 40 and x2 = 0) into the goal constraint for P4 to get d4+= 160. Thus, the cost goal is not achieved and the minimum cost of production is $160.

P3: cj cb 0 0 1 basis x2 d3d2P3: cj zj 0 0 0 x2 d3x1 P3: cj zj

0 x1 2/3 1/3 1/3 -1/3 0 0 1 0

0 x2 1 0 0 0 1 0 0 0

0 d30 1 0 0 0 1 0 0

1 d20 0 1 0 -2 -1 3 1

1 d2+ 0 0 -1 2 2 1 3 1 b 80/3 70/3 40/3 Z3 = 40/3 0 10 40 Z3 = 0

TABLE 3: SOLUTION TO PROBLEM S3

Example: Top Ad ,a new advertising agency with 10 employee, has received a contract to promote a new product . The agency can advertise by radio and television. The following table provide data about the number of people reached by each type of advertisement ,and the cost and labor requirements. Data/min advertisement Radio Television 4 8 8 24 1 2

Exposure (in millions of persons) Cost (in thousands of dollars) Assigned employees

The contract prohibits TopAd from using more then 6 minutes of radio advertisement . Additionally , radio and television advertisements need to reach at least 45 million people .TopAd has set a budget goal of $ 100,000 for the project . How many minutes of radio and television minutes should TopAd use?

Solution: Let x1& x2 be the minutes allocated to radio and television advertisements. The goal programming formation for the problem is given as Minimize G1= Due (Satisfy exposure goal) Minimize G2= Dob (Satisfy budget goal) respectively Due = amount by which the exposure goal is underachieved,

Doe = amount by which the exposure goal is overachieved,Dub = amount by which the budget goal is underachieved, Dob = amount by which the budget goal is overachieved, TopAds management assume that the exposure goal is twice as important as the budget goal . Minimize Z= 2G1+G2= 2Due + Dob

S.T.

4x1 + 8x2 + Due Doe = 458x1 +24x2 + Dub Dob = 100 x1 + 2x2 x1 10 6

(exposure goal)(budget goal) (Personnel limit) (Radio limit constraint)

x1, x2,Due, Doe , Dub , Dob 0 Remove inequality 4x1 + 8x2 + Due Doe = 45 (exposure goal) (budget goal)

8x1 +24x2 + Dub Dob = 100

x1 + 2x2 + S1x1 + S2

= 10=6

(Personnel limit)(Radio limit constraint)

x1, x2,Due, Doe , Dub , Dob , S1,S2 0

CjCSV 2 0 0 0 Zj Due X2 S1 S2

0X1 4/3 1/3 1/3 1 8/3

0X2 0 1 0 0 0

0S1 0 0 1 0 0

0S2 0 0 0 1 0

2Due 1 0 0 0 2

0Doe -1 0 0 0 -2

0Dub -1/3 1/24 -1/12 0 2/3

1Dob 1/3 -1/24 1/12 0 -2/3 b 35/3 25/6 5/3 6

35/4 25/2 5

C j -Zj

-8/3 0

0

0

0

2

-2/3

5/3

CjCS V 2 0 0 0 Zj C j -Z j Due X2 X1 S2

0X1 0 0 1 0 0 0

0X2 0 1 0 0 0 0

0S1 -4 -3 3 -2 -8 8

0S2 0 0 0 1 0 0

2Due 1 0 0 0 2 0

0Doe -1 0 0 0 -2 2

0Dub 0 1/8 -1/4 1/4 0 0

1Dob 0 -1/8 1/4 -1/4 0 1 b 5 2.5 5 6

The optimum solution is obtained as Z=10 x1 =5 minutes , x2 = 2.5 minutes , Due = 5 million persons All the remaining variables equal zero. The fact that the optimum value of Z is not zero indicates that at least one of the goals is not met. Specifically , Due = 5 means the exposure goal is missed by 5 million individuals. Conversely the budget goal is not violated because Dob =0.

ADVANTAGES The major advantages of goal programming is its

computation efficiency. It allow us to stay with in an efficient linear programming computation environment. The weight , priorities can change during the analysis as the decision makers knowledge of the decision problem change.

ACHIEVEMENTS OF GP IN PAST 50 YEARS Goal programmings label as the workhorse of multiple objective optimization has been achieved by its successful solutions of important real world problems over a period of more than 50 years. Included among these applications are:i.

ii.iii. iv. v. vi.

The analysis of executive compensation for General Electric during 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 mean to audit transaction within the financial sector (for the Commercial Bank of Greece) The design of acoustic arrays for U.S. Navy

APPLICATION OF GP Goal programming can be applied to a wide range of planning problems, in which the benefits are multi-dimensional and not directly comparable. A partial list of goal programming applications is given below: Manpower Planning Forest management

Land use planning Water resources Metal cutting Accounting Academic planning Portfolio selection Production planning and scheduling Quality Control

RECENT ADVANCES IN GOAL PROGRAMMING Interactive GP: The area of interactive algorithm has provided a major aid in

improving the flexibility of the GP model and allowing the decision makers to become involved in the solution process and thus find a set of target values and weights that produces the best solution according their preferences GP for infeasibility analysis: an interesting recent new area in which GP has been found to be of use is that of the analysis and resolution of infeasibility in linear programming. This concept is more fully developed and applied to modern day infeasibility analysis methods by Tamiz et al. GP and its interface with artificial intelligence: the use of GP for the analysis of and use in issues regarding the field of artificial intelligence provides another field for development for GP. Ignizio and Cavalier explain the rudiments of this new hybrid field Stochastic GP: the case where the parameters of the GP model(goal values, technical coefficients, achievement function weights) are not known with certainty is termed as stochastic GP. Liu presents a method for solving stochastic GP based on genetic algorithms. The area of stochastic GP is closely related to fuzzy set theory, hence the term fuzzy GP is used. Non-linear GP: GP is not limited to the linear case. There are some applications that utilises non-linear GP particularly in application area of engineering. A special case of non linear GP is a fractional GP, where the achieved value of the objective consists of linear function divided by another linear function

CONCLUSION GP is a pragmatic and flexible methodology especially

capable of addressing complex problems where several objectives as well as many variable and constraint are involved The choice of GP variant has generally been conducted in a mechanist way. However, the right variant should be chosen so as to be coherent with the decision makers structure of preferences The reliance on single GP variant is not justified. LGP models should not include an excessive number of priority levels because of problems with redundancy

REFERENCES Ravindran A., Philips D.T., Solberg J.J., Operations

Research Principles and Practice, Wiley, 2004 Taha Hamdy, Operations Research, Prentice Hall Publication, 2005 Tamiz M. and D.F Jones, Goal Programming for Decision Making: An Overview of the current State-ofthe-Art, European Journal of Operational Research, vol.111, 1998(569-581) James P. Ignizio, Carlos Romero, Goal Programming, Encyclopedia of Information Systems, Vol. 2, Elsevier Science (USA)

Any query ??